Skip to content

v5.0.0

Compare
Choose a tag to compare
@ala-n ala-n released this 17 Jan 01:49
· 116 commits to main since this release

5.0.0 (2025-01-17)

Note: 5.0.0 stable release is equal to 5.0.0-beta.45

⚠ BREAKING CHANGES

  • Drop IE11 support (6d376ee)

  • Drop Edge old versions (<14) support (b577fd1)

  • Exclude duplicated exports of esl-utils/decorators from outer moules (f6c84af)

  • esl-utils: TOUCH_EVENTS from device-detector module retired, DeviceDetector is deprecated (e9ed603)

  • esl-tooltip: disable-arrow attribute removed from ESLTooltip component

  • esl-popup: 'autofocus' no longer available for popup, use 'a11y' modes instead

  • esl-share: ESLSharePopup no longer inherits ESLTooltip, ESLPopup

  • esl-tooltip: hasFocusLoop no longer available use a11y instead

  • esl-footnotes: tooltip-shown readonly attribute(prop) replaced with active (from ESLBaseTrigger)

  • esl-image: legacy implementation of esl-image no longer distributes aspect-ratio styles

  • esl-utils: Rect utility object now immutable from TS perspective

  • esl-utils: both DeviceDetector.TOUCH_EVENTS and TOUCH_EVENTS are retired from device-detector module.
    Please also note that the DeviceDetector class is also deprecated.

  • esl-media: load-cls-target, load-cls-accepted and load-cls-declined use load-condition-class and load-condition-class-target instead

  • esl-media: disabled no longer supported use lazy="manual" instead

  • prop, attr, boolAttr, jsonAttr, listen no longer available in esl-base-element and esl-mixin-element exports

  • esl-utils: createZIndexIframe and is-fixes module no longer available due to drop of IE11 support

  • esl-utils: hasEventListener no longer accepts min number value use this.getEventListeners(type).length to make extended checks

  • esl-utils: dispatchEvent does not accepts target argument

  • ESLEventUtils.descriptors alias of ESLEventUtils.getAutoDescriptors is no longer supported

  • EventUtils alias of ESLEventUtils is no longer supported

  • esl-media-quey module no longer supports addListener and removeListener shorthand

  • SynteticEventTarget no longer supports addListener and removeListener shorthand

  • 'fallback-duration' is no longer in the JSX shape of ESLPanel and ESLPanelGroup

  • ToggleableActionParams alias of ESLToggleableActionParams is no longer supported

  • TraversingQuery alias of ESLTraversingQuery is no longer supported

  • RTLUtils retired use separate methods instead

  • TraversingUtils retired use separate methods instead

  • deepCompare alias of isEqual is no longer supported

  • generateUId alias of randUID no longer supported

  • ESL UI site renderer and ESL polyfills no longer support Edge old versions and ES6 polyfils.

  • ESL UI site renderer and ESL polyfills no longer support IE11 and ES5 target.

Features

  • attr: add provider to default value in attr (e482aaf)
  • esl-anchornav: create esl-anchornav component to provide anchor navigation (cf79db8)
  • esl-anchornav: create esl-anchornav-sticked mixin to provide sticked behaviour (d28d430)
  • esl-carousel: new esl-carousel component introduced according to spec #1282 (5b6fc64)
  • esl-carousel: ESLCarouselTouchMixin plugin is ready for usage with both: drag and touch support (480bac1)
  • esl-carousel: add esl-carousel mouse wheel control support mixin (748390c)
  • esl-carousel: add grid renderer with capability to render multi row (column) carousel (a54a1ab)
  • esl-carousel: add centered renderer (dd26e7e)
  • esl-carousel: complete support of the navigation plugins for ESLCarousel (19bd241)
  • esl-carousel: Default Renderer: the reordering algorithm improved to respect slides semantical order an available limit of slides (b2efe6f)
  • esl-carousel: support for autoplay mixin plugin for ESLCarousel component (1deea71)
  • esl-carousel: support for relation mixin plugin for ESLCarousel component (77cbbd9)
  • esl-drag-to-scroll: create mixin to enable drag-to-scroll functionality (1ff5242)
  • esl-event-listener: add isVertical property to ESLSwipeGestureEvent (019715c)
  • esl-event-listener: add ability to ESLWheelTarget to ignore income wheel events by predicate (af47dbb)
  • esl-event-listener: add ability to prevent default wheel action trough ESLWheelTarget (0e1f192)
  • esl-event-listener: add support for criteria-based subscriptions (b571d88)
  • esl-event-listener: ootb ability to skip custom longwheel and swipe events in case of content scrolling (#2098) (ecc849f), closes #2085
  • esl-event-listener: update listener internal mechanics to store and collect descriptors (with ability to filter them) (48bf06a)
  • esl-footnotes: claenup readonly API of esl-note (cb43086)
  • esl-footnotes: migrate esl-note to esl-base-trigger (d2e0dbb)
  • esl-image-utils: create esl-img-container mixin to provide img container functionality (5b4761a)
  • esl-image-utils: helper container classes for native img / picture containers (16fc5cb)
  • esl-media-query: ingore tuple values if query syntax passed (1899484)
  • esl-media: fill-mode option updated to render through aspect-ratio and wide marker (49fd5b6)
  • esl-popup: add offset-trigger attribute (d4161f1)
  • esl-popup: add position-origin attribute (6be5133)
  • esl-popup: get rid from all focus management code (11b10ea)
  • esl-popup: rework esl-popup styles to use CSS variables (cd781b9)
  • esl-share: separate ESLSharePopup implementation from ESLTooltip (b5260b9)
  • esl-toggleable: _onOutsideAction no longer part of ESLToggleable instance, now it's ESLToggleableManager responsibility (573eece)
  • esl-toggleable: add out of the box ESLToggleable focus manager, see a11y(c954d72)
  • esl-toggleable: rework ESLToggleableManger to produce FocusIn outside event actions trough main flow + fix initial focus task (23ed309)
  • esl-toggleable: true related opening chain check support for toggleables (72b849e)
  • esl-tooltip: get rid from inner hasFocusLoop and custom focus manager, now utilizes ESLToggleable features (6ef1f2e)
  • esl-tooltip: remove disable-arrow attribute (adbeb5d)
  • esl-utils: isReducedMotion detection result constant created (2f3dd13)
  • esl-utils: safeContains traverse utility (7ca4f8b)
  • esl-utils: add parseTime alternative, less restrictive to passed format (05e5963)
  • esl-utils: add ability to resize Rect instance (1a4aa60)
  • esl-utils: add extended handleFocusFlow keyboard based focus manager (376f388)
  • esl-utils: create utility to get element that is viewport for specified element (63d869b)
  • esl-utils: extend attr decorator with inherit option to take over the value of declared attribute (b29acde)
  • esl-utils: extend params for the getKeyboardFocusableElements with full VisibilityOptions (16b04ff)
  • esl-utils: introduce promisifyTransition utility (9dbabfc)
  • esl-utils: made Rect class immutable (923c70a)
  • esl-utils: utility to postpone execution to microtask (2a4c8c5)
  • eslint-config: introducing shared eslint-config for esl projects (internal use only for now) (ca5f454)
  • lint: adapt eslint plugin to be used with ESLint 9 (93c90d2)

Bug Fixes

  • esl-base-element: fix subscription for component that currently out of DOM (a2526c9)
  • esl-event-listener: fix missing signature for $$on method of base component (7197e30)
  • esl-event-listener: fix support for any object-like host (9ca6aa4)
  • esl-footnotes: drop extra margins for esl-carousel-slides container (be4e9b0)
  • esl-footnotes: fix default display block for esl-footnote tag (beba690)
  • esl-footnotes: fix improper note highlighting (c7c3d1c)
  • esl-media: fix conflict of alignment classes, move definition to the main mixin (55589f2)
  • esl-media: make esl-media unfocusable according to focusable attribute, provide default based on controls option (#2829) (44be58d)
  • esl-mixin-element: fix ESLMixin broken order when mixins modify DOM when connected (36352d9)
  • esl-popup: fix incorrect behavior of popup for fit-major and fit-minor modes (f26f907)
  • esl-share: fix inner ESLToggleableActionParams instances type (ea8dd94)
  • esl-share: fix merging of additional(nested) params when ESLShareConfig.update method is called (a1b1942)
  • esl-share: rename copy action alertText param to copyAlertMsg (3ba61ac)
  • esl-share: simplify code and remove overrides (according to esl-popup base state) (04d6a63)
  • esl-toggleable: ESLToggleable should ignore activator direct events (9a8d545)
  • esl-toggleable: fix focus should return to activator (3033b33)
  • esl-toggleable: focus management reworked to use scopes. Introduced ESLToggleableFocusManager (fbac20e)
  • esl-toggleable: inner activator leads to infinite loop while getting toggleables chain (b8c40dc)
  • esl-tooltip: fix tooltip arrow disappearing (780b295)
  • esl-tooltip: simplify code and remove overrides (according to esl-popup base state) (699ac7f)
  • esl-utils: createZIndexIframe retired (ad678cb)
  • esl-utils: SyntheticEventTarget optimizations (a4c9b8d)
  • esl-utils: clean IE11 micro-optimizations (7ed8830)
  • esl-utils: fix event cancellation handling (dffbc53)
  • esl-utils: fix getting viewport sizes (c17d2e3)
  • esl-utils: fix types for unwrap array utility (a4b432a)
  • esl-utils: fix visibility and a11y checks for getKeyboardFocusableElements (e078c78)
  • esl-utils: simplified flat array utility (788a782)
  • esl-utils: simplified union utility (043fe45)
  • esl-utils: simplified uniq array utility (45f282f)
  • eslint-config: update file lines limit to 500 LOC (f0825ff)
  • eslint-plugin: remove 4 version checks due to stable 5.0.0 release; fix unexpected version note message (2312443)
  • eslint: fix peerDependency constraint (20b5d9d)
  • lint: fix Literal import processing & update eslint 9.11.1 (3345564)