Releases: Patternslib/Patterns
Release 9.9.0-alpha.5
9.9.0-alpha.5 (2023-04-21)
Bug Fixes
- pat collapsible: Adapt to changed pat-scroll. (7211616)
Breaking Changes
-
pat scroll: Simplify pattern and remove obsolete functionality. (b62e6e0)
Since pat-navigation now supports marking navigation and content items
with CSS classes based on their scroll position this functionality is
removed from pat-scroll. You can still use pat-scroll in combination
with pat-scroll-marker to achieve the same functionality like before.
Also the jQuery based scroll animation is removed as smooth scrolling is
supported by CSS since long.
Maintenance
Release 9.9.0-alpha.4
9.9.0-alpha.4 (2023-04-19)
Bug Fixes
-
pat navigation: Change default scroll-trigger-selector to "a[href^='#'].scroll-trigger". (efc5826)
In the alpha.3 release it was "a[href^='#'].scroll-marker" where it
should have been "a[href^='#'].scroll-trigger". This is fixed now.
Release 9.9.0-alpha.3
9.9.0-alpha.3 (2023-04-19)
Features
-
core utils: Add is_option_truthy to check Pattern options for a truthy value. (6a6e9fa)
A values "undefined", "null", "false", "none" or "" are considered falsy
and can be used to disable some functionality. Other values including
"0" are considered to be true. -
core utils: parseLength: handle unitless lengths as pixels. (15090e3)
-
pat navigation: Implement scroll-trigger-selector option. (818c68d)
Define the CSS selector which is used to find navigation links with hash
URLs. The default is "a[href^='#'].scroll-marker" which would find all anchor
elements which href starts with a "#" sign and have the class
scroll-marker.
The restriction on scroll-marker allows for other hash-urls in the same
navigation - e.g. a pat-tooltip which references a local content.
If you set it to "none" the scroll marker functionality is not activated. -
pat scroll-marker: Implement selector option. (678aee5)
Define the CSS selector which is used to find navigation links with hash
URLs. The default is "a[href^='#']" which would find all anchor elements
which href starts with a "#" sign.
Bug Fixes
-
pat navigation: Allow "none" to be a valid option for scroll-item-visibility. (456e05a)
-
pat navigation: Rename scroll-marker- options to scroll-item. (a40fc0f)
Implement review comments.
This is not listed as "breaking" change because this change on the
scroll-marker feature happens within the alpha phase.
- pat scroll-marker: Allow "none" to be a valid option for visibility. (e506ed2)
Release 9.9.0-alpha.2
9.9.0-alpha.2 (2023-04-18)
Features
-
core dom: Add escape_css_id method. (5aa7a52)
Get an escaped CSS selector for a given id string.
id selectors should - but don't have to - start with a letter.
If the id starts with a number or a dash, it should be escaped.
This method does that for you.
Bug Fixes
Release 9.9.0-alpha.1
9.9.0-alpha.1 (2023-04-17)
Bug Fixes
-
pat scroll-marker: Do not break if no scroll-marker observables have been found. (be6723f)
-
pat scroll-marker: Use the correct scroll container. (ccc3ddc)
The scroll container was potentially wrong and is a parent of the
hash-link target contents and not a parent of the navigation where
pat-scroll-container (or pat-navigation) are defined upon.
Maintenance
Release 9.9.0-alpha.0
9.9.0-alpha.0 (2023-04-17)
Features
-
core basepattern: Allow to specify parser options on the pattern. (eb66159)
-
core basepattern: Throw pre-init.PATTERNNAME.patterns event. (cacb743)
Throw a bubbling pre-init.PATTERNNAME.patterns event before initializing
the event for new class-based patterns. -
core base: Throw pre-init.PATTERNNAME.patterns event. (e9a8f2f)
Throw a bubbling pre-init.PATTERNNAME.patterns event before initializing
the event for old prototype based patterns. -
core dom: Add get_scroll_x and get_scroll_y helper methods to get the horizontal/vertical scrolling position. (a3ecf93)
-
core dom: Implement get_visible_ratio to calculate the visible ratio between an element and a container. (622d5e2)
-
core utils: add parseLength method for parsing px and % lengths. (95c16b8)
-
core utils: Add threshold_list helper for intersection observers. (52d9ecf)
-
core utils: debouncer - Add postpone option for callback to be run after all debounce calls or in between. (12c980b)
If "postpone" is set to "true" (the default and previous behavior) the
callback will only be called after no more debouncer calls are done for
the given timeout.
If "postpone" is set to "false" the callback will be run after the
timeout has passed and calls to "debouncer" in between are ignored. -
pat navigation: Add scroll-marker functionality. (fb8eb82)
The pattern now sets current and in-view classes on the navigation and
the content when scrolling to hash-link targets. -
pat scroll-marker: Add pattern to set navigation classes based on the scroll position. (6483649)
The new scroll-marker pattern allows you to set classes on the
navigation and content elements for hash-links. If a content section
with a hash id and a corresponding navigation link with the same
hash-url is visible, the navigation and content section are marked with
CSS classes.
Maintenance
-
pat inject: Use dom.find_scroll_container instead jQuery :scrollable selector. (14af661)
-
pat navigation: Don't do option grouping. There will some options be added where grouping get's in the way. (3c55864)
-
pat navigation: Switch to class based pattern. (5b0fc43)
-
pat scroll-box: Cleanup code. (148f79a)
-
pat scroll-box: Use dom.scroll_y instead of own implementation. (e5a4b24)
-
pat scroll: Code cleanup. (a66a9f8)
-
pat-inject: Remove obsolete hooks option. (411653d)
The hooks option allowed to throw custom events after successful
injection. It was a multi-value argument but only allowed "raptor" as
value. Raptor was a WYSIWYG editor which has not been further developed
since 10 years and which we're not supporting anymore since quite some
time. Thus this option could be safely removed and this change is not a
breaking change.
If you need to react on events, see the documented event list in
pat-inject's documentation.
-
pat-inject: Remove obsolete raptor-ui trigger. (ae01e20)
Remove the ".raptor-ui .ui-button.pat-inject" trigger selector which was
for raptor WYSIWYG HTML editor support. This editor isn't actively
developed since almost 9 years and not supported anymore. This is not a
breaking change. -
Upgrade dependencies. (15b6adb)
-
Upgrade luxon to 3.3.0. (b19f1e5)
The Module federation warning "Unable to find required version" is fixed
since webpack v5.78.0 for modules which do package.json
self-referencing.
Ref:
Release 9.8.3
Release 9.8.3-alpha.2
Release 9.8.3-alpha.1
9.8.3-alpha.1 (2023-03-09)
Bug Fixes
- core events: await_pattern_init - check for event coming from correct element. (a532ebf)Check if the init/not-init events were thrown from the Pattern's own
element. When a child element did an unsuccessful Pattern init (rejected
because already initialized) and at the same time the parent element also tried
to initialized the same Pattern await_pattern_init could fail. The not-init
event bubbled up which was incorrectly catched by await_pattern_init on the
parent element.
Maintenance
Release 9.8.3-alpha.0
9.8.3-alpha.0 (2023-03-06)
Bug Fixes
- pat auto submit: Fix cloned elements not submitted when their input changes. (f36c69b)