Disable script-based lazy load at Blazy UI > No JavaScript > Lazy load.
Disable Lightbox option. Ignore if you are sure no enabled lightbox.
Both already turned off, Views Ajax is required.
I am basically wondered why blazy/observer is still loaded 🤔 Couldn't figure out yet whats causing it. But anyway, the effort here is probably not in proportion to the return.
Yes, fine, depending on your needs and Core Web Vitals challenge awareness, it is very well facilitated. It is not overhead when you are actually using Blazy features. That is the point of contribs, to fill in the room left open by core.
Sure (: But this is about optimizing our default project configuration, and I would prefer to 'opt in' to the required features for individual projects rather than doing this 'clean-up' (not only for Blazy) for each project. This doesn't mean disabling everything blindly. As I said, we use native lazy loading by default and, luckily, don't need to support IE11 anymore.
And to be clear, I don't want to demonize Blazy or anything like that. I am very grateful for Blazy and Slick. We have been using both modules for many years.
Thank you so much for your help! I will add information here if I find out what causes the 'unnecessary' libraries to be loaded.
Oh man, I completely forgot about the Blazy UI settings page -_- My bad, sorry.
So now we have reduced the amount of scripts by around 50%, that's great, thank you!
The dblazy scripts are required for Slick:
<script src="/modules/contrib/blazy/js/dblazy.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/plugin/blazy.once.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/plugin/blazy.sanitizer.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/plugin/blazy.dom.min.js?t4fk1i"></script>But I am not sure about the rest, is there anything left we can easily remove? If not, I will turn on aggregation and we are done here 😅
<script src="/modules/contrib/blazy/js/base/blazy.base.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/plugin/blazy.dataset.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/plugin/blazy.viewport.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/plugin/blazy.xlazy.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/plugin/blazy.observer.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/base/blazy.drupal.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/blazy.compat.min.js?t4fk1i"></script>
<script src="/modules/contrib/blazy/js/base/io/bio.ajax.min.js?t4fk1i"></script>
Since we have switched to native (image) lazy loading, we mostly need Blazy as a dependency of Slick, so we aim to reduce the overhead as much as possible by default.
thomas.frobieter → created an issue. See original summary → .
Confirming RTBC. Can we merge this and maybe tag a new release maybe? The last is from Feb 2025 :/
Some unrelated PHP Unit tests are failing. However, its merged. I'll create new release.
We don't use the block management page as much as we used to. We use Paragraphs (including Block-Reference-Paragraphs) much more frequently.
I still think it's a good idea for sites with many block configurations, but others might also use Paragraphs or the Layout Builder instead.
I am therefore happy to close this thread if nobody else is interested!
I can confirm the preprocess: false fix works! Thanks!! +1 for the suggestions.
Example usage: Use the 'before-show' step event to trigger the required clicks to make anything visible (e.g. a submenu trail or an expandable element) before the tip is shown on something inside this originally hidden element.
@thomas.frobieter and me in the issue summary meant thomas.frobieter and anybody, since this offer was posted by anybody. 😉
Right :D Thank you both!
I encountered a similar issue. We also have a separate 'field_caption' field on 'Media Image', and this field is n/a in the 'PhotoSwipe-Caption' dropdown menu. Using the token [media:field_caption] does not work either.
The formatter is Photoswipe Responsive.
If we stick with Vidstack, this issue will need further work (see GitHub issue).
It's pointless passing our custom options to data-controls because it only accepts TRUE or FALSE. The media player web component either has or does not have data-controls, but it never prints any value in this data attribute.
Furthermore, it seems that we cannot add any classes to the media player element itself. Therefore, we are also unable to add formatter classes for our custom control behaviour. The attributes/classes set in buildThemeAttributes() are only added to the original elements (video/iframe). The supported attributes are passed to the Vidstack media player component.
Therefore, if we proceed, we need to figure out how to set custom classes on the media player or add a custom wrapper where we can safely add our custom classes.
Done. I'll create a new release.
It seems that GIN (or the core dialog.js) already prevents scrolling when the dialogue is open. Therefore, this fix is no longer required.
I will remove the Javascript file and the corresponding CSS code.
@phjou Bump (: Please add me to the maintainers.
Works well, thx!
Originally it is:
<div class="entity-submenu">
</div>
"row gy-equal-x" comes from our template override.
thomas.frobieter → created an issue.
Okay, the form actions are docked on the regular entity browser forms. Not the multistep forms, as this require additional work.
Thoughts on the multistep forms:
- The selected item list shouldn't be docked because the docked section can become very tall. If it should be docked, it needs to be collapsible (collapsed by default) maybe with a counter of the selected items, so that the user can see that the selection has succeeded. Alternative ideas: Display the selected items either above the item list or as a collapsible sidebar (in this case, the modal would need to be wider)
- The 'Use selected' and 'Hide selected' buttons should be located in the same form actions wrapper as the 'Select entities' button, so that we have one single docked bar.
thomas.frobieter → made their first commit to this issue’s fork.
thomas.frobieter → made their first commit to this issue’s fork.
Sounds good. +1 RTBC.
thomas.frobieter → created an issue.
This would be so much more useful if it also worked with the "Remote video" media type.
Indeed, but that's up to the library :/
I have created an Github Issue: https://github.com/dimsemenov/photoswipe-video-plugin/issues/10
Demo: https://codepen.io/makshh/pen/ONMVMm
https://github.com/dimsemenov/photoswipe-video-plugin
@Anybody is there any interest in this? It's been a few months since i initially submitted this.
Definitely! We would suggest labeling the submodules as “experimental” for the time being and including them in the next release.
RTBC from my side. Seems to work pretty well with the patch.
I set this to 'needs work' because the tests still need to be added?
I can also add you as maintainer if you want to?
@phjou That would be great, thank you!
thomas.frobieter → created an issue.
thomas.frobieter → made their first commit to this issue’s fork.
We no longer support Layout Builder.
@phjou We could take care of the coding. Are you available to create a new release afterwards?
I can no longer see any problems, it works perfectly again!
We discussed this briefly internally, and due to the SDC dependency, a submodule is probably the best solution.
thomas.frobieter → created an issue.
Okay, now empty groups are also hidden in the display configuration, so this fix needs to be modified.
Okay all done and tested.
micon_linkit and micon_linkit_attributes are form field widgets, not display formatters. So, as far as I can see, this is the only formatter with this logic.
Okay I got the cause, but this needs a backend programmer.
Inside the foreach I printed:
kint($title);
kint($item);
kint($item->title);
Result:
So from my point of view it needs to be something like this:
if ($title && !empty($item['#title'])) {
$item['#title'] = $this->token->replace($item['#title'], [$entity_type => $entity]);
} elseif ($title) {
$item['#title'] = $this->token->replace($title, [$entity_type => $entity]);
}
thomas.frobieter → created an issue.
thomas.frobieter → created an issue.
trackleft2 → credited thomas.frobieter → .
Okay, this was simply a outdated CSS file path in the libraries file. Fixed → .
The output is correct now: the empty fieldsets have gone, and the tabs still work fine in default/full view mode.
thomas.frobieter → created an issue.
thomas.frobieter → created an issue.
This is probably no longer relevant with the switch to XB. However, we might need something similar for XB blocks.
The pages are back online — thanks a lot (:
thomas.frobieter → created an issue.
thomas.frobieter → created an issue.
thomas.frobieter → created an issue.
Okay, there is a possible solution in
🐛
Inconsistent `attributes` handling
Active
:
https://www.drupal.org/project/radix/issues/3482516#comment-15838105
🐛
Inconsistent `attributes` handling
Active
Changes were made, but then removed in later iterations? https://git.drupalcode.org/project/radix/-/commit/ae826d7d29215d9d00fe3619d8af2c50da8407e4#cadf8086764711dda116d902e75dc698eaa4ed1e
Possibly a duplicate of 📌 Feedbacks about SDC components Active .
thomas.frobieter → created an issue.
thomas.frobieter → created an issue.
Okay, something is wrong with the PHP tests, but this is not related to this issue. Fixed.
Done! I'm waiting for the pipeline to create a new release.
thomas.frobieter → created an issue.
@jfeltkamp We recently switched from Klaro back to Cookies and as I was about to make some minor adjustments to the design, I noticed that the old class names are still present in 2.0.0-alpha4, while it looks correct in the svelte source file (TheBanner.svelte).
Any ideas?
vs.
Unable to merge. Not sure what the problem is.
Fixed
thomas.frobieter → created an issue.
thomas.frobieter → created an issue.
To add my results from 🐛 Webform Dialog Modal triggered with a link doesn't work on touch device Active : Instead relying on old mouse events, consider to use 'pointerup' and 'click' (while click is only required to apply preventDefault()).
Here is a Pen to test the events: https://codepen.io/thomas-frobieter/pen/qEdNoEr
@anybody It seems that I can't merge because of the phpunit pipeline issue
Fixed in dev, I'll create a new release.
thomas.frobieter → created an issue.
Can someone with a Apple touch device please test the 'pointerup click' button? => https://codepen.io/thomas-frobieter/full/qEdNoEr
I have tried on the iOS Simulator and it seems to work well.
If the real device test also works well, I will create a follow up issue.
@thomas.frobieter On an Iphone SE2 18.3.2, Safari:
'pointerup' does not trigger the modal but opens the link
'touchend click' does open the modal when the finger is lifted, which does not really improve the situation much
That's strange. Safari 13.1/13.2 should support pointerup. I think we should debug this, as the pointer event sounds like the cleanest solution to me.