UNPKG

@exadel/esl

Version:

Exadel Smart Library (ESL) is the lightweight custom elements library that provide a set of super-flexible components

626 lines (389 loc) 44.5 kB
## 6.1.0 (2026-05-13) ### 🚀 Features - **eslint-config:** introduce `no-implicit-this` rule for a strict set of eslint-config-esl ([a9570137f](https://github.com/exadel-inc/esl/commit/a9570137f)) - **esl-utils:** rework and extend ESL build-in `sanitize` utility ([dfaf8606d](https://github.com/exadel-inc/esl/commit/dfaf8606d)) - **esl-carousel:** replace `no-inert` hard hook with a proper functional focus-policy feature ([a4035e1d0](https://github.com/exadel-inc/esl/commit/a4035e1d0)) - **esl-utils:** rework `sanitize` API to allow passing DOM Element ([60f1db5a0](https://github.com/exadel-inc/esl/commit/60f1db5a0)) ### 🩹 Fixes - **esl-carousel:** fix JSX shape to allow children ([25b0e9067](https://github.com/exadel-inc/esl/commit/25b0e9067)) - **esl-utils:** fix unexpected parse logic for `none` time values ([a747474b3](https://github.com/exadel-inc/esl/commit/a747474b3)) - align core function typings with strictFunctionTypes ([46ff2285b](https://github.com/exadel-inc/esl/commit/46ff2285b)) - support strictFunctionTypes in listen typings ([0b0669b25](https://github.com/exadel-inc/esl/commit/0b0669b25)) ### 💅 Refactors - **esl-utils:** update @attr decorator parser type to support safe and nullable overloads ([44f255856](https://github.com/exadel-inc/esl/commit/44f255856)) - **esl-utils:** merge ExtractEventType into ESLEventType ([125fe3495](https://github.com/exadel-inc/esl/commit/125fe3495)) - **esl-utils:** simplify ExtractEventType by removing redundant Extract and collapsing identical fallback branches ([803cb0507](https://github.com/exadel-inc/esl/commit/803cb0507)) # 6.0.0 (2026-04-28) ### 🚀 Features - **ui-playground:** public release 6.0.0 for `@exadel/ui-playground` ([d58239631](https://github.com/exadel-inc/esl/commit/d58239631)) - **esl-anchornav:** add validation and possibility to reject anchor data in getDataFrom method ([fa7a7438a](https://github.com/exadel-inc/esl/commit/fa7a7438a)) - **site:** add new skills page with copy-to-clipboard functionality ([71be30cbc](https://github.com/exadel-inc/esl/commit/71be30cbc)) - **esl-anchornav:** add empty class marker functionality, improve documentation ([6f67338a7](https://github.com/exadel-inc/esl/commit/6f67338a7)) - **esl-anchornav:** add abstract data support for anchor info ([e1ddf7518](https://github.com/exadel-inc/esl/commit/e1ddf7518)) - **esl-anchornav:** add empty attribute support ([c96a6b994](https://github.com/exadel-inc/esl/commit/c96a6b994)) - **esl-anchornav:** add out of the box support for nested navfix default styles ([a287ad803](https://github.com/exadel-inc/esl/commit/a287ad803)) - **esl-utils:** add htmlToElement utility method ([1fc11d4e5](https://github.com/exadel-inc/esl/commit/1fc11d4e5)) - ⚠️ **esl-anchornav:** enhance anchor nav API with explicit `anchor-selector` attribute and findAnchors hock with ESLTraversingQuery support ([433994fee](https://github.com/exadel-inc/esl/commit/433994fee)) - add base elements `$$find` and `$$findAll` methods ([be350d73b](https://github.com/exadel-inc/esl/commit/be350d73b)) - **esl-toggleable:** make outside action delay configurable for ESLToggleableManager using prop ESLToggleable.prototype.OUTSIDE_ACTION_DELAY ([2d83a8185](https://github.com/exadel-inc/esl/commit/2d83a8185)) - **e2e:** legacy `snapshot-tests` module removed in flavor of new `esl-website-e2e` playwright based module ([58dbb5760](https://github.com/exadel-inc/esl/commit/58dbb5760)) - **e2e:** initial reimplementation of e2e tests on playwright - new module @exadel/esl-website-e2e created ([f7f39dacc](https://github.com/exadel-inc/esl/commit/f7f39dacc)) - **stylelint-config:** @exadel/stylelint-config-esl migrated to stylelint@17 ([b9864f39a](https://github.com/exadel-inc/esl/commit/b9864f39a)) - **esl-media:** add support extended format for start-time ([e79797c0f](https://github.com/exadel-inc/esl/commit/e79797c0f)) - **esl-line-clamp:** introduce `esl-line-clamp-alt` and `esl-line-clamp-toggler` ([4b74bec4e](https://github.com/exadel-inc/esl/commit/4b74bec4e)) - **esl-incremental-scroll:** add incremental scroll utility ([ccd318697](https://github.com/exadel-inc/esl/commit/ccd318697)) - **esl-media:** update 'esl-media-control' mixin value parser to use 'parseObjectSafe' ([92eaf0a7f](https://github.com/exadel-inc/esl/commit/92eaf0a7f)) - **esl-drag-to-scroll:** update mixin value parser to use 'parseObjectSafe' ([601807ebe](https://github.com/exadel-inc/esl/commit/601807ebe)) - **esl-carousel:** update carousel API configurations to rely on `parseObjectSafe` ([f2dbb7a90](https://github.com/exadel-inc/esl/commit/f2dbb7a90)) - ⚠️ **esl-utils:** replace `ESLMediaRuleList.OBJECT_PARSER` with a parseObjectSafe reference ([0df811e55](https://github.com/exadel-inc/esl/commit/0df811e55)) - ⚠️ **esl-utils:** migrate `@jsonAttr` decorator to use `parseObject` under the hood ([07bd83667](https://github.com/exadel-inc/esl/commit/07bd83667)) - **esl-utils:** add `parseObjectSafe` wrapper of `parseObject` with fallback value for parse error ([afe489518](https://github.com/exadel-inc/esl/commit/afe489518)) - **esl-utils:** `parseObject` safe utility added to replace unsafe evaluate method, and unlock short syntax in future ([d14480435](https://github.com/exadel-inc/esl/commit/d14480435)) - **esl-popup:** rework of popup alignment attributes BREAKING CHANGES: `margin-arrow` attribute replaced with `margin-tether` and 'offset-arrow' attribute replaced with `alignment-tether` ([4a2c69239](https://github.com/exadel-inc/esl/commit/4a2c69239)) ### 🩹 Fixes - ⚠️ **esl-toggleable:** fix ESLToggleableManager interface ([910b5fc2c](https://github.com/exadel-inc/esl/commit/910b5fc2c)) - **esl-line-clamp:** fix clamped attribute logic and add tolerance factor ([123f39f71](https://github.com/exadel-inc/esl/commit/123f39f71)) - **esl-carousel:** fix css renderers to support viewport-in animations on the slides ([e56214c3b](https://github.com/exadel-inc/esl/commit/e56214c3b)) - **esl-carousel:** add vertical orientation support for css-slide renderer ([923155343](https://github.com/exadel-inc/esl/commit/923155343)) - **esl-footnotes:** refine initialization on esl-note-ignore when connecting or disconnecting ([d93bf0871](https://github.com/exadel-inc/esl/commit/d93bf0871)) - **esl-footnotes:** add dynamic updates for esl-note-ignore mixin via lifecycle hooks ([ea040c1c4](https://github.com/exadel-inc/esl/commit/ea040c1c4)) - **esl-line-clamp:** fix resubscribing after media query change ([e3cc705b1](https://github.com/exadel-inc/esl/commit/e3cc705b1)) - **esl-utils:** incorrect log messages upon fallback parser usage ([0d7e91fc8](https://github.com/exadel-inc/esl/commit/0d7e91fc8)) ### 💅 Refactors - **esl-anchornav:** small improvement for event broadcasting ([e1f3a28d6](https://github.com/exadel-inc/esl/commit/e1f3a28d6)) - **esl-anchornav:** refactor anchor collection ([8439cfed4](https://github.com/exadel-inc/esl/commit/8439cfed4)) - **esl-image:** officially deprecate `ESLImage` ([4555b6d71](https://github.com/exadel-inc/esl/commit/4555b6d71)) - simplify internal ESL code using ootb find api ([b25c545fc](https://github.com/exadel-inc/esl/commit/b25c545fc)) - **esl-utils:** fix eslint warning for unused variable output ([b62c4d03c](https://github.com/exadel-inc/esl/commit/b62c4d03c)) - **e2e:** add basic summary reporter based on previous implementation by alesun <alesun@exadel.com> ([65fabc7cb](https://github.com/exadel-inc/esl/commit/65fabc7cb)) - ⚠️ **esl-footnote:** `ESLNoteIgnore.noteSelector` replaced with restrictive `ESLNoteIgnore.noteTag` ([b78e75d39](https://github.com/exadel-inc/esl/commit/b78e75d39)) - **esl-footnotes:** refine updateIgnoredQuery() implementation ([930f9cdf2](https://github.com/exadel-inc/esl/commit/930f9cdf2)) - move test helpers from src/esl-utils/test to src/test ([1327931f6](https://github.com/exadel-inc/esl/commit/1327931f6)) - **esl-utils:** fix lint warnings for TSDoc and str.match usage ([fd2a94d79](https://github.com/exadel-inc/esl/commit/fd2a94d79)) - ⚠️ remove deprecated properties and methods across ESL ([e36e19f56](https://github.com/exadel-inc/esl/commit/e36e19f56)) - ⚠️ **esl-utils:** remove deprecated 'evaluate' utility (resolves CWE-95 / CWE-94) ([17f101eb0](https://github.com/exadel-inc/esl/commit/17f101eb0)) - **esl-popup:** split calcPopupPositionByMinorAxis to several methods ([c67e0cafe](https://github.com/exadel-inc/esl/commit/c67e0cafe)) ### Documentation updates - small update in contributor table ([89fd070d4](https://github.com/exadel-inc/esl/commit/89fd070d4)) - update AGENTS.md with more direct instruction to investigate existing code ([94bc9e1e9](https://github.com/exadel-inc/esl/commit/94bc9e1e9)) - rework and optimize AGENTS.md file ([740f4834c](https://github.com/exadel-inc/esl/commit/740f4834c)) - rework basic skills ([6f660c9e3](https://github.com/exadel-inc/esl/commit/6f660c9e3)) - overall updates in AGENTS.md and skills site page ([210a73660](https://github.com/exadel-inc/esl/commit/210a73660)) - add AI skills documentation and skills for base custom tag and attribute ([00778fdbc](https://github.com/exadel-inc/esl/commit/00778fdbc)) - add AGENTS.md for ESL codebase guide ([b7348c46b](https://github.com/exadel-inc/esl/commit/b7348c46b)) - apply suggestions for TSDoc from code review ([af1905e14](https://github.com/exadel-inc/esl/commit/af1905e14)) - **esl-line-clamp:** provide examples for `ESLLineClampAlt` and `ESLLineClampToggler` ([09b1aa5f7](https://github.com/exadel-inc/esl/commit/09b1aa5f7)) - **esl-incremental-scroll:** add README for incremental scroll ([ea9cb3656](https://github.com/exadel-inc/esl/commit/ea9cb3656)) - **esl-popup:** update README with new alignment attributes ([f3accbe92](https://github.com/exadel-inc/esl/commit/f3accbe92)) ### ⚠️ Breaking Changes - **esl-toggleable:** fix ESLToggleableManager interface ([910b5fc2c](https://github.com/exadel-inc/esl/commit/910b5fc2c)) `ESLToggleableManager` instance renamed to `ESLToggleableManagerDefault` Co-authored-by: alesun <alesun@exadel.com> - **esl-anchornav:** enhance anchor nav API with explicit `anchor-selector` attribute and findAnchors hock with ESLTraversingQuery support ([433994fee](https://github.com/exadel-inc/esl/commit/433994fee)) prototype prop `ANCHOR_SELECTOR` removed in flavor of `anchor-selector` attribute - **esl-footnote:** `ESLNoteIgnore.noteSelector` replaced with restrictive `ESLNoteIgnore.noteTag` ([b78e75d39](https://github.com/exadel-inc/esl/commit/b78e75d39)) `ESLNoteIgnore.noteSelector` property reamed to `noteTag`, with restriction to use tags only - remove deprecated properties and methods across ESL ([e36e19f56](https://github.com/exadel-inc/esl/commit/e36e19f56)) `ESLAlert.defaultConfig` removed (use `ESLAlert.DEFAULT_PARAMS` instead) BREAKING CHANGE: `ESLIntersectionEvent.type`, `ESLElementResizeEvent.type`, `ESLSwipeGestureEvent.type` and `ESLWheelEvent.type` removed BREAKING CHANGE: `ESLEventUtils.getAutoDescriptors` removed (use `ESLEventUtils.descriptors(host, {auto: true})` instead) BREAKING CHANGE: `ESLEnvShortcuts` alias for `ESLMediaShortcuts` removed BREAKING CHANGE: `ESLMediaShortcuts.add` and `ESLMediaShortcuts.set` removed (use `ESLMediaShortcuts.set` instead) BREAKING CHANGE: `PromiseUtils` removed, use individual methods instead BREAKING CHANGE: `RTLScroll`, `ScrollType`, `testRTLScrollType` removed (IE, Edge < 14 are no longer in support list) BREAKING CHANGE: `isBot` check removed (no longer works) BREAKING CHANGE: `DeviceDetector` removed, use individual checks instead BREAKING CHANGE: `flat` removed, use ootb `Array.prototype.flat` BREAKING CHANGE: `UID`, `ArrayUtils`, `ObjectUtils`, `FormatUtils`, `FunctionUtils` removed, use individual methods of the modules - **esl-utils:** remove deprecated 'evaluate' utility (resolves CWE-95 / CWE-94) ([17f101eb0](https://github.com/exadel-inc/esl/commit/17f101eb0)) the `evaluate` utility no longer available, use `parseObject` or `JSON.parse` instead for object parers - **esl-utils:** replace `ESLMediaRuleList.OBJECT_PARSER` with a parseObjectSafe reference ([0df811e55](https://github.com/exadel-inc/esl/commit/0df811e55)) the `ESLMediaRuleList.OBJECT_PARSER` no longer support calculations or references inside values (these were never officially supported). If you need dynamic behavior, use custom parsers instead. - **esl-utils:** migrate `@jsonAttr` decorator to use `parseObject` under the hood ([07bd83667](https://github.com/exadel-inc/esl/commit/07bd83667)) `@jsonAttr`-based attributes no longer support calculations or references inside values (these were never officially supported). If you need dynamic behavior, make sure to override component config resolvers. ## 6.0.0-beta.8 (2026-04-27) ### 🩹 Fixes - ⚠️ **esl-toggleable:** fix ESLToggleableManager interface ([910b5fc2c](https://github.com/exadel-inc/esl/commit/910b5fc2c)) ### ⚠️ Breaking Changes - **esl-toggleable:** fix ESLToggleableManager interface ([910b5fc2c](https://github.com/exadel-inc/esl/commit/910b5fc2c)) `ESLToggleableManager` instance renamed to `ESLToggleableManagerDefault` Co-authored-by: alesun <alesun@exadel.com> ## 6.0.0-beta.7 (2026-04-21) ### 🩹 Fixes - **esl-line-clamp:** fix clamped attribute logic and add tolerance factor ([123f39f71](https://github.com/exadel-inc/esl/commit/123f39f71)) ## 6.0.0-beta.6 (2026-04-16) ### 🚀 Features - **esl-anchornav:** add empty class marker functionality, improve documentation ([6f67338a7](https://github.com/exadel-inc/esl/commit/6f67338a7)) - **esl-anchornav:** add abstract data support for anchor info ([e1ddf7518](https://github.com/exadel-inc/esl/commit/e1ddf7518)) - **esl-anchornav:** add empty attribute support ([c96a6b994](https://github.com/exadel-inc/esl/commit/c96a6b994)) - **esl-anchornav:** add out of the box support for nested navfix default styles ([a287ad803](https://github.com/exadel-inc/esl/commit/a287ad803)) - **esl-utils:** add htmlToElement utility method ([1fc11d4e5](https://github.com/exadel-inc/esl/commit/1fc11d4e5)) - ⚠️ **esl-anchornav:** enhance anchor nav API with explicit `anchor-selector` attribute and findAnchors hock with ESLTraversingQuery support ([433994fee](https://github.com/exadel-inc/esl/commit/433994fee)) - add base elements `$$find` and `$$findAll` methods ([be350d73b](https://github.com/exadel-inc/esl/commit/be350d73b)) - **esl-toggleable:** make outside action delay configurable for ESLToggleableManager using prop ESLToggleable.prototype.OUTSIDE_ACTION_DELAY ([2d83a8185](https://github.com/exadel-inc/esl/commit/2d83a8185)) - **e2e:** legacy `snapshot-tests` module removed in flavor of new `esl-website-e2e` playwright based module ([58dbb5760](https://github.com/exadel-inc/esl/commit/58dbb5760)) - **e2e:** initial reimplementation of e2e tests on playwright - new module @exadel/esl-website-e2e created ([f7f39dacc](https://github.com/exadel-inc/esl/commit/f7f39dacc)) ### 🩹 Fixes - **esl-carousel:** fix css renderers to support viewport-in animations on the slides ([e56214c3b](https://github.com/exadel-inc/esl/commit/e56214c3b)) - **esl-carousel:** add vertical orientation support for css-slide renderer ([923155343](https://github.com/exadel-inc/esl/commit/923155343)) ### 💅 Refactors - **esl-anchornav:** small improvement for event broadcasting ([e1f3a28d6](https://github.com/exadel-inc/esl/commit/e1f3a28d6)) - **esl-anchornav:** refactor anchor collection ([8439cfed4](https://github.com/exadel-inc/esl/commit/8439cfed4)) - **esl-image:** officially deprecate `ESLImage` ([4555b6d71](https://github.com/exadel-inc/esl/commit/4555b6d71)) - simplify internal ESL code using ootb find api ([b25c545fc](https://github.com/exadel-inc/esl/commit/b25c545fc)) - **esl-utils:** fix eslint warning for unused variable output ([b62c4d03c](https://github.com/exadel-inc/esl/commit/b62c4d03c)) - **e2e:** add basic summary reporter based on previous implementation by alesun <alesun@exadel.com> ([65fabc7cb](https://github.com/exadel-inc/esl/commit/65fabc7cb)) - move test helpers from src/esl-utils/test to src/test ([1327931f6](https://github.com/exadel-inc/esl/commit/1327931f6)) ### Documentation updates - apply suggestions for TSDoc from code review ([af1905e14](https://github.com/exadel-inc/esl/commit/af1905e14)) ### ⚠️ Breaking Changes - **esl-anchornav:** enhance anchor nav API with explicit `anchor-selector` attribute and findAnchors hock with ESLTraversingQuery support ([433994fee](https://github.com/exadel-inc/esl/commit/433994fee)) prototype prop `ANCHOR_SELECTOR` removed in flavor of `anchor-selector` attribute ## 6.0.0-beta.5 (2026-01-22) ### 🩹 Fixes - **esl-footnotes:** refine initialization on esl-note-ignore when connecting or disconnecting ([d93bf0871](https://github.com/exadel-inc/esl/commit/d93bf0871)) ### 💅 Refactors - ⚠️ **esl-footnote:** `ESLNoteIgnore.noteSelector` replaced with restrictive `ESLNoteIgnore.noteTag` ([b78e75d39](https://github.com/exadel-inc/esl/commit/b78e75d39)) - **esl-footnotes:** refine updateIgnoredQuery() implementation ([930f9cdf2](https://github.com/exadel-inc/esl/commit/930f9cdf2)) ### ⚠️ Breaking Changes - **esl-footnote:** `ESLNoteIgnore.noteSelector` replaced with restrictive `ESLNoteIgnore.noteTag` ([b78e75d39](https://github.com/exadel-inc/esl/commit/b78e75d39)) `ESLNoteIgnore.noteSelector` property reamed to `noteTag`, with restriction to use tags only ## 6.0.0-beta.4 (2026-01-20) ### 🚀 Features - **stylelint-config:** @exadel/stylelint-config-esl migrated to stylelint@17 ([b9864f39a](https://github.com/exadel-inc/esl/commit/b9864f39a)) ### 🩹 Fixes - **esl-footnotes:** add dynamic updates for esl-note-ignore mixin via lifecycle hooks ([ea040c1c4](https://github.com/exadel-inc/esl/commit/ea040c1c4)) ### 💅 Refactors - **esl-utils:** fix lint warnings for TSDoc and str.match usage ([fd2a94d79](https://github.com/exadel-inc/esl/commit/fd2a94d79)) ## 6.0.0-beta.3 (2026-01-14) ### 🚀 Features - **esl-media:** add support extended format for start-time ([e79797c0f](https://github.com/exadel-inc/esl/commit/e79797c0f)) - **esl-line-clamp:** introduce `esl-line-clamp-alt` and `esl-line-clamp-toggler` ([4b74bec4e](https://github.com/exadel-inc/esl/commit/4b74bec4e)) - **esl-incremental-scroll:** add incremental scroll utility ([ccd318697](https://github.com/exadel-inc/esl/commit/ccd318697)) ### 🩹 Fixes - **esl-line-clamp:** fix resubscribing after media query change ([e3cc705b1](https://github.com/exadel-inc/esl/commit/e3cc705b1)) ### Documentation updates - **esl-line-clamp:** provide examples for `ESLLineClampAlt` and `ESLLineClampToggler` ([09b1aa5f7](https://github.com/exadel-inc/esl/commit/09b1aa5f7)) - **esl-incremental-scroll:** add README for incremental scroll ([ea9cb3656](https://github.com/exadel-inc/esl/commit/ea9cb3656)) ## 6.0.0-beta.2 (2025-11-03) ### 🩹 Fixes - **esl-utils:** incorrect log messages upon fallback parser usage ([0d7e91fc8](https://github.com/exadel-inc/esl/commit/0d7e91fc8)) ## 6.0.0-beta.1 (2025-10-22) ### 🚀 Features - **esl-carousel:** add esl carousel info element helper ([f162d2a5a](https://github.com/exadel-inc/esl/commit/f162d2a5a)) - **esl-carousel:** add ability to check if the passed target is current + `current` marker support for esl-carousel-nav mixin ([57bb690c1](https://github.com/exadel-inc/esl/commit/57bb690c1)) ### 🩹 Fixes - **esl-popup:** fix race condition in ESLPopup when rapidly toggling state ([6816150fd](https://github.com/exadel-inc/esl/commit/6816150fd)) ### 💅 Refactors - **eslint-config:** has embedded support of esl/custom linting ([1417150d8](https://github.com/exadel-inc/esl/commit/1417150d8)) ## 5.15.0 (2025-10-22) ### 🚀 Features - **esl-carousel:** add esl carousel info element helper ([f162d2a5a](https://github.com/exadel-inc/esl/commit/f162d2a5a)) - **esl-carousel:** add ability to check if the passed target is current + `current` marker support for esl-carousel-nav mixin ([57bb690c1](https://github.com/exadel-inc/esl/commit/57bb690c1)) ### 🩹 Fixes - **esl-popup:** fix race condition in ESLPopup when rapidly toggling state ([6816150fd](https://github.com/exadel-inc/esl/commit/6816150fd)) ## 6.0.0-beta.0 (2025-09-29) ### 🚀 Features - **esl-media:** update 'esl-media-control' mixin value parser to use 'parseObjectSafe' ([92eaf0a7f](https://github.com/exadel-inc/esl/commit/92eaf0a7f)) - **esl-drag-to-scroll:** update mixin value parser to use 'parseObjectSafe' ([601807ebe](https://github.com/exadel-inc/esl/commit/601807ebe)) - **esl-carousel:** update carousel API configurations to rely on `parseObjectSafe` ([f2dbb7a90](https://github.com/exadel-inc/esl/commit/f2dbb7a90)) - ⚠️ **esl-utils:** replace `ESLMediaRuleList.OBJECT_PARSER` with a parseObjectSafe reference ([0df811e55](https://github.com/exadel-inc/esl/commit/0df811e55)) - ⚠️ **esl-utils:** migrate `@jsonAttr` decorator to use `parseObject` under the hood ([07bd83667](https://github.com/exadel-inc/esl/commit/07bd83667)) - **esl-utils:** add `parseObjectSafe` wrapper of `parseObject` with fallback value for parse error ([afe489518](https://github.com/exadel-inc/esl/commit/afe489518)) - **esl-utils:** `parseObject` safe utility added to replace unsafe evaluate method, and unlock short syntax in future ([d14480435](https://github.com/exadel-inc/esl/commit/d14480435)) - **esl-popup:** rework of popup alignment attributes BREAKING CHANGES: `margin-arrow` attribute replaced with `margin-tether` and 'offset-arrow' attribute replaced with `alignment-tether` ([4a2c69239](https://github.com/exadel-inc/esl/commit/4a2c69239)) ### 💅 Refactors - ⚠️ remove deprecated properties and methods across ESL ([e36e19f56](https://github.com/exadel-inc/esl/commit/e36e19f56)) - ⚠️ **esl-utils:** remove deprecated 'evaluate' utility (resolves CWE-95 / CWE-94) ([17f101eb0](https://github.com/exadel-inc/esl/commit/17f101eb0)) - **esl-popup:** split calcPopupPositionByMinorAxis to several methods ([c67e0cafe](https://github.com/exadel-inc/esl/commit/c67e0cafe)) ### Documentation updates - **esl-utils:** update cumulative docs ([8ddf9d90e](https://github.com/exadel-inc/esl/commit/8ddf9d90e)) - **esl-utils:** add `@jsonAttr` decorator draft documentation ([c445edd61](https://github.com/exadel-inc/esl/commit/c445edd61)) - **esl-utils:** add `@listen` decorator documentation ([4f0e0eb15](https://github.com/exadel-inc/esl/commit/4f0e0eb15)) - **esl-utils:** add `@boolAttr` decorator documentation ([50be80d0c](https://github.com/exadel-inc/esl/commit/50be80d0c)) - **esl-utils:** add `@prop` decorator documentation ([ce08e6c28](https://github.com/exadel-inc/esl/commit/ce08e6c28)) - **esl-utils:** add `@decorate` decorator documentation ([be705918a](https://github.com/exadel-inc/esl/commit/be705918a)) - **esl-utils:** add `@ready` decorator documentation ([9c6bf404d](https://github.com/exadel-inc/esl/commit/9c6bf404d)) - **esl-utils:** add `@memoize` decorator documentation ([622d27c4b](https://github.com/exadel-inc/esl/commit/622d27c4b)) - **esl-utils:** add `@bind` decorator documentation ([f5e2a75cb](https://github.com/exadel-inc/esl/commit/f5e2a75cb)) - **esl-utils:** add `@safe` decorator documentation ([4e4c73551](https://github.com/exadel-inc/esl/commit/4e4c73551)) - **esl-popup:** update README with new alignment attributes ([f3accbe92](https://github.com/exadel-inc/esl/commit/f3accbe92)) ### ⚠️ Breaking Changes - `ESLAlert.defaultConfig` removed (use `ESLAlert.DEFAULT_PARAMS` instead) - **esl-utils:** the `evaluate` utility no longer available, use `parseObject` or `JSON.parse` instead for object parers - **esl-utils:** the `ESLMediaRuleList.OBJECT_PARSER` no longer support calculations or references inside values (these were never officially supported). If you need dynamic behavior, use custom parsers instead. - **esl-utils:** `@jsonAttr`-based attributes no longer support calculations or references inside values (these were never officially supported). If you need dynamic behavior, make sure to override component config resolvers. ## 5.14.0 (2025-09-30) ### 🚀 Features - **esl-carousel:** introduce capabilities to provide custom autoplay restrictions. Resolves #3349 ([#3349](https://github.com/exadel-inc/esl/issues/3349)) - introduce ESLIntrinsicElements ESL custom tag jsx declaration interface ([8b053737b](https://github.com/exadel-inc/esl/commit/8b053737b)) ### 🩹 Fixes - **esl-utils:** handle empty eventName in dispatch function ([8821c837a](https://github.com/exadel-inc/esl/commit/8821c837a)) - **esl-trigger:** update esl-base-trigger and it's instances to dispatch `esl:change:action` ([e1b84e326](https://github.com/exadel-inc/esl/commit/e1b84e326)) ### 💅 Refactors - **eslint-config:** has embedded support of esl/custom linting ([1417150d8](https://github.com/exadel-inc/esl/commit/1417150d8)) - rename some Shape types declarations for consistency ([6e709d0d6](https://github.com/exadel-inc/esl/commit/6e709d0d6)) - introduce global ESLIntrinsicElements interface ([fe64e7871](https://github.com/exadel-inc/esl/commit/fe64e7871)) - **ui-playground:** migrate UIP project to latest (8) JSX-DOM ([5275cb787](https://github.com/exadel-inc/esl/commit/5275cb787)) - **site:** add playground description ([e83a7eb79](https://github.com/exadel-inc/esl/commit/e83a7eb79)) - **site:** playground navigation ([772859d85](https://github.com/exadel-inc/esl/commit/772859d85)) - **site:** drop changes not related to playground readme ([c1a0a222e](https://github.com/exadel-inc/esl/commit/c1a0a222e)) - **site:** add playground section ([dbaf99955](https://github.com/exadel-inc/esl/commit/dbaf99955)) ### Documentation updates - **esl-utils:** update cumulative docs ([8ddf9d90e](https://github.com/exadel-inc/esl/commit/8ddf9d90e)) - **esl-utils:** add `@jsonAttr` decorator draft documentation ([c445edd61](https://github.com/exadel-inc/esl/commit/c445edd61)) - **esl-utils:** add `@listen` decorator documentation ([4f0e0eb15](https://github.com/exadel-inc/esl/commit/4f0e0eb15)) - **esl-utils:** add `@boolAttr` decorator documentation ([50be80d0c](https://github.com/exadel-inc/esl/commit/50be80d0c)) - **esl-utils:** add `@prop` decorator documentation ([ce08e6c28](https://github.com/exadel-inc/esl/commit/ce08e6c28)) - **esl-utils:** add `@decorate` decorator documentation ([be705918a](https://github.com/exadel-inc/esl/commit/be705918a)) - **esl-utils:** add `@ready` decorator documentation ([9c6bf404d](https://github.com/exadel-inc/esl/commit/9c6bf404d)) - **esl-utils:** add `@memoize` decorator documentation ([622d27c4b](https://github.com/exadel-inc/esl/commit/622d27c4b)) - **esl-utils:** add `@bind` decorator documentation ([f5e2a75cb](https://github.com/exadel-inc/esl/commit/f5e2a75cb)) - **esl-utils:** add `@safe` decorator documentation ([4e4c73551](https://github.com/exadel-inc/esl/commit/4e4c73551)) - add detailed TSX support guide ([dee009e76](https://github.com/exadel-inc/esl/commit/dee009e76)) ## 5.14.0-beta.0 (2025-09-19) ### 🚀 Features - **esl-carousel:** introduce capabilities to provide custom autoplay restrictions. Resolves #3349 ([#3349](https://github.com/exadel-inc/esl/issues/3349)) - introduce ESLIntrinsicElements ESL custom tag jsx declaration interface ([8b053737b](https://github.com/exadel-inc/esl/commit/8b053737b)) ### 🩹 Fixes - **esl-utils:** handle empty eventName in dispatch function ([8821c837a](https://github.com/exadel-inc/esl/commit/8821c837a)) - **esl-trigger:** update esl-base-trigger and it's instances to dispatch `esl:change:action` ([e1b84e326](https://github.com/exadel-inc/esl/commit/e1b84e326)) ### 💅 Refactors - rename some Shape types declarations for consistency ([6e709d0d6](https://github.com/exadel-inc/esl/commit/6e709d0d6)) - introduce global ESLIntrinsicElements interface ([fe64e7871](https://github.com/exadel-inc/esl/commit/fe64e7871)) - **ui-playground:** migrate UIP project to latest (8) JSX-DOM ([5275cb787](https://github.com/exadel-inc/esl/commit/5275cb787)) - **site:** add playground description ([e83a7eb79](https://github.com/exadel-inc/esl/commit/e83a7eb79)) - **site:** playground navigation ([772859d85](https://github.com/exadel-inc/esl/commit/772859d85)) - **site:** drop changes not related to playground readme ([c1a0a222e](https://github.com/exadel-inc/esl/commit/c1a0a222e)) - **site:** add playground section ([dbaf99955](https://github.com/exadel-inc/esl/commit/dbaf99955)) ### Documentation updates - add detailed TSX support guide ([dee009e76](https://github.com/exadel-inc/esl/commit/dee009e76)) ## 5.13.0 (2025-09-05) ### 🚀 Features - **esl-carousel:** add ability to define interaction scope, fix initial checks to prevent autoplay on hover/focus after state change ([a5c1953ff](https://github.com/exadel-inc/esl/commit/a5c1953ff)) - **esl-utils:** add `@safe` decorator for error handling with fallback support ([f9754b7c8](https://github.com/exadel-inc/esl/commit/f9754b7c8)) - **esl-media-query:** add an empty ruleset `ESLMediaRuleList.EMPTY`, update error message and type for `parse` and `parseTuple` ([94e82f2c6](https://github.com/exadel-inc/esl/commit/94e82f2c6)) - **esl-event-listener:** introduce `TypedTarget` interface ([f1be1b8fc](https://github.com/exadel-inc/esl/commit/f1be1b8fc)) - **esl-event-listener:** strict types for typed EventTargets ([6035e28f7](https://github.com/exadel-inc/esl/commit/6035e28f7)) - **esl-event-listener:** strict types for SyntheticEventTarget ([fa0cd867d](https://github.com/exadel-inc/esl/commit/fa0cd867d)) - **esl-event-listener:** implement correct multi-event support with restrictive EventTarget ([563f53b9d](https://github.com/exadel-inc/esl/commit/563f53b9d)) ### 🩹 Fixes - **esl-event-listener:** fix `ESLEventListener.subscribe` types to correctly differentiate criteria from handler instance ([efa047e3e](https://github.com/exadel-inc/esl/commit/efa047e3e)) ### 💅 Refactors - **esl-carousel:** esl-carousel-autoplay internal API and state machine completely reworked ([2b8b7a4f3](https://github.com/exadel-inc/esl/commit/2b8b7a4f3)) - **esl-carousel:** improve error handling for media query based params ([a83e7ff36](https://github.com/exadel-inc/esl/commit/a83e7ff36)) - **esl-line-clamp:** improve error handling for media query based params ([0fbccdd1a](https://github.com/exadel-inc/esl/commit/0fbccdd1a)) ## 5.12.0 (2025-08-29) ### 🚀 Features - **esl-line-clamp:** add an attribute to specify mask to use tuple string of values ([995b25cf4](https://github.com/exadel-inc/esl/commit/995b25cf4)) - **esl-utils:** `parseTime` will treat `none` as 0 (exclusion) ([e90035d65](https://github.com/exadel-inc/esl/commit/e90035d65)) - **esl-carousel:** rework esl-carousel-autoplay plugin to support pause on slides marked with 0 duration; turn autoplay to inactive state if the navigation command is not possible for current carousel state ([0356225b0](https://github.com/exadel-inc/esl/commit/0356225b0)) - **esl-toggleable:** add high priority for focusable elements with the autofocus attribute ([2e84cd4f7](https://github.com/exadel-inc/esl/commit/2e84cd4f7)) - **esl-animate:** added CSS variable for transition timing/function ([989374a41](https://github.com/exadel-inc/esl/commit/989374a41)) - **esl-line-clamp:** add auto mode for esl-line-clamp mixin ([cdd46db03](https://github.com/exadel-inc/esl/commit/cdd46db03)) ### 🩹 Fixes - **esl-utils:** add tests and validation to prevent prototype pollution (CWE-1321) for `set` and `setByPath` utils ([bee0378e1](https://github.com/exadel-inc/esl/commit/bee0378e1)) - **esl-line-clamp:** fix styles of esl-line-clamp mixin ([2e5796321](https://github.com/exadel-inc/esl/commit/2e5796321)) - `esl` package should contain actual version info in global scope ([23fb7686f](https://github.com/exadel-inc/esl/commit/23fb7686f)) ### 💅 Refactors - **esl-carousel:** fix typos in JSDocs ([199b8ad63](https://github.com/exadel-inc/esl/commit/199b8ad63)) - **esl-toggleable:** change the way of detecting auto-focusable element ([87daaa878](https://github.com/exadel-inc/esl/commit/87daaa878)) ### Documentation updates - **esl-line-clamp:** fix typo and inconsistencies ([6a4743e40](https://github.com/exadel-inc/esl/commit/6a4743e40)) - **esl-carousel:** update esl-carousel-autoplay documentation ([ea9e882cb](https://github.com/exadel-inc/esl/commit/ea9e882cb)) - **esl-line-clamp:** update README ([cadfb7a79](https://github.com/exadel-inc/esl/commit/cadfb7a79)) - **esl-line-clamp:** update README with auto mode ([3cf1b1fdd](https://github.com/exadel-inc/esl/commit/3cf1b1fdd)) ## 5.11.0 (2025-08-15) ### 🚀 Features - **esl-carousel:** add ability to define esl-carousel-autoplay plugin timeout per slide ([#3255](https://github.com/exadel-inc/esl/issues/3255)) - **ui-playground:** squashed ui-playground repository version https://github.com/exadel-inc/ui-playground.git ([c5856a4f0](https://github.com/exadel-inc/esl/commit/c5856a4f0)) ### 🩹 Fixes - **esl-carousel:** do not debug-log slide move if slide is actually just added ([dfbf1aab6](https://github.com/exadel-inc/esl/commit/dfbf1aab6)) ### 💅 Refactors - **esl-carousel:** cosmetic rename `direction` utility to `dir` to less mess-up with same property ([e4442690f](https://github.com/exadel-inc/esl/commit/e4442690f)) - **esl-event-listener:** declare type per custom event instance ([fa8de0086](https://github.com/exadel-inc/esl/commit/fa8de0086)) ### Documentation updates - fix qlty (coverage, maintainability) badges ([5700cd927](https://github.com/exadel-inc/esl/commit/5700cd927)) - **esl-carousel:** small improvements in documentation for `esl-carousel-autoplay-progress` ([562a4e7ce](https://github.com/exadel-inc/esl/commit/562a4e7ce)) ## 5.10.0 (2025-07-28) ### 🚀 Features - **esl-line-clamp:** introduce esl-line-clamp mixin to limit text content in the block ([fef05f07b](https://github.com/exadel-inc/esl/commit/fef05f07b)) - **deps:** bump @stylistic/stylelint-plugin from 3.1.3 to 4.0.0; the plugin now requires stylelint version 16.22.0 or higher. ([#3261](https://github.com/exadel-inc/esl/pull/3261)) - **esl-utils:** introduce common TS type utils file ([c962eb353](https://github.com/exadel-inc/esl/commit/c962eb353)) - **esl-event-listener:** introduce improve ESLEventUtils event type handling ([de4217fb1](https://github.com/exadel-inc/esl/commit/de4217fb1)) ### 🩹 Fixes - **esl-carousel:** fix wheel event handling (wheel ignores next slide direction) ([#3260](https://github.com/exadel-inc/esl/issues/3260)) - **esl-event-listener:** fix missing event type definitions for custom event targets ([bd5c8ba16](https://github.com/exadel-inc/esl/commit/bd5c8ba16)) # Change Log All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. ## [5.9.1](https://github.com/exadel-inc/esl/compare/v5.9.0...v5.9.1) (2025-07-22) ### Bug Fixes * **esl-media:** fix user detection to treat stop by ending as system command ([ad6ee44](https://github.com/exadel-inc/esl/commit/ad6ee44f340228a704baba1e01cd435067ae87a3)) # [5.9.0](https://github.com/exadel-inc/esl/compare/v5.8.1...v5.9.0) (2025-07-10) ### Bug Fixes * **esl-carousel:** fix missing activators for build-in plugins ([f133dbe](https://github.com/exadel-inc/esl/commit/f133dbebe0c1182c434461b2aab088fd8e86e9a2)) * **esl-media:** fix ESLMedia play-in-viewport observes viewport intersection ratio threshold incorrectly ([1df78c6](https://github.com/exadel-inc/esl/commit/1df78c6d57a4cd1f5ca0eeb0902b4ac2efd2e53d)) * **esl-popup:** fix ESLPopup is still visible when the trigger is outside the viewport ([e17823e](https://github.com/exadel-inc/esl/commit/e17823e23987048db72cae21f4426cdf92e84402)) * **esl-toggleable:** fix a11y warning of trying to focus hidden element (happens due to collision issue of focus & task queries) ([f41bd46](https://github.com/exadel-inc/esl/commit/f41bd469620f3603c702ad61fc2ad1b59d74b1bb)) ### Features * **esl-carousel:** add out of the box viewport visibility control for ESL Carousel autoplay plugin ([f7a9feb](https://github.com/exadel-inc/esl/commit/f7a9feb1ec504e86c7cd958ced5ac6cee5f0dca1)), closes [#3190](https://github.com/exadel-inc/esl/issues/3190) * **esl-carousel:** extended esl-carousel-wheel implementation ([f48eda4](https://github.com/exadel-inc/esl/commit/f48eda48f9b604bdac1ed03056b02aa6a82b9595)) * **esl-carousel:** implement updated `esl-carousel-relate-to` plugin that follows specification and expected flow ([0a23b82](https://github.com/exadel-inc/esl/commit/0a23b82f39f816007878a4215da5b33e0d9f362f)) * **esl-carousel:** introduce non-bubbling move event for esl-carousel ([37480c9](https://github.com/exadel-inc/esl/commit/37480c9de016a6b9e4babcd8ec1272b1d1839052)) * **esl-carousel:** major rework state API to use `ESLCarouselRenderer` instance ([9849a1f](https://github.com/exadel-inc/esl/commit/9849a1f19c5879bb5d53b7c4b00c8dc40c3cba53)) * **esl-carousel:** move stage offset to public ESL Carousel navigation API ([d4ce7b6](https://github.com/exadel-inc/esl/commit/d4ce7b64e4589ce6f36aa47f747183dca3604547)) * **esl-carousel:** update carousel nav syntax according spec (more clear behaviour) ([a7b9f08](https://github.com/exadel-inc/esl/commit/a7b9f08143a25818ff9f83796003a977c960066f)) * **esl-carousel:** update index processing to use 1-based indexing for prefixed requests, add correct out of bounds/invalid requests handling ([8421f90](https://github.com/exadel-inc/esl/commit/8421f90699af6ab7aa2bf943c39eb5c6ceb153e6)) * **esl-media:** extend `play-in-viewport` by two options ([28081f5](https://github.com/exadel-inc/esl/commit/28081f5dfd1ce9fd0616135ef8f4af4d5b77f14a)) * **esl-trigger:** esl-base-trigger based elements now stops handled `click` and `keydown` events bubbling by default ([1618a5f](https://github.com/exadel-inc/esl/commit/1618a5f261e573615f041d9475ec608aa85044cf)) ## [5.8.1](https://github.com/exadel-inc/esl/compare/v5.8.0...v5.8.1) (2025-06-26) ### Bug Fixes * **esl-mixin-element:** fix ESLMixinRegistry instance duplicate due to creation in separate context ([52f661e](https://github.com/exadel-inc/esl/commit/52f661e5bfbe1089d17ff61ecce89f977f312f98)) # [5.8.0](https://github.com/exadel-inc/esl/compare/v5.7.1...v5.8.0) (2025-06-16) ### Bug Fixes * **esl-carousel:** fix `esl-carousel-relate-to` plugin to correctly handle proactive action (including updated events API) ([b189b01](https://github.com/exadel-inc/esl/commit/b189b01f9462d78cd18e281f268b8389cc6b4837)) * **esl-carousel:** fix carousel renderer flow to prevent pre-active markers before lock check + logic generalization ([b658df5](https://github.com/exadel-inc/esl/commit/b658df56b2e879e41b8f3cd87da8d1883a0d79f3)) ### Features * add `ESL.version` to "open" mode of ESL package ([588d837](https://github.com/exadel-inc/esl/commit/588d837f20f1b33873e99fe6159bb846809aaa6a)) * **esl-carousel:** rework events API to have both proactive and final event being dispatched during move/commit operations; `pre-active` slides now processed equal during move operation for renderers; `pre-active` marker can not be applied to `active` slide ([4477cce](https://github.com/exadel-inc/esl/commit/4477cce7e36f1a97623e0a3357293e977bf3c9f9)) * **esl-carousel:** support for proactive `container-class` handling using 'esl-carousel-class-behavior' plugin ([152a9fe](https://github.com/exadel-inc/esl/commit/152a9fe909a398f268dc5de8c6bd136ae7733d30)) * **esl-tab:** default `no-target` attribute styles to hide inactive tab ([1198795](https://github.com/exadel-inc/esl/commit/1198795c6697e3c3303bf17dd483c725d0b3e6e9)) * **esl-trigger:** `no-target` attribute support out of the box, no console warning (default 'disabled' styles) ([fc78f25](https://github.com/exadel-inc/esl/commit/fc78f250562b27604623c4a65237dc5571958806)) ## [5.7.1](https://github.com/exadel-inc/esl/compare/v5.7.0...v5.7.1) (2025-06-10) ### Bug Fixes * **esl-media-query:** fix singleton storage for ESLMediaShortcuts + add shortcut name validation ([76dbf6e](https://github.com/exadel-inc/esl/commit/76dbf6e7463978895c0a5481a80e3416190b088a)) * fix all private symbols across library to be multi-bundeled-prof ([c072818](https://github.com/exadel-inc/esl/commit/c07281805d42d53ecca4b57cc0c9adc137ecc488)) # [5.7.0](https://github.com/exadel-inc/esl/compare/v5.6.0...v5.7.0) (2025-06-09) ### Bug Fixes * **esl-carousel:** fix incorrect `canNavigate` behaviour for undefined direction navigation (equal distance for both direction to reach the target slide) ([34a70fa](https://github.com/exadel-inc/esl/commit/34a70fab80f92d1f8572bbf219d5546d7164ceb8)) * **esl-carousel:** improve collision handling, introduce special type of Error - ESLCarouselNavRejection it represents renderer rejection but not produce noisy log in console ([b02207a](https://github.com/exadel-inc/esl/commit/b02207a001a7f83cb60bf6dca9bc8bbc6e803f63)) ### Features * **esl-media-query:** new ESLMediaShortcuts introduced (instead of ESLEnvShortcuts) with support for dynamic media conditions ([369cc7c](https://github.com/exadel-inc/esl/commit/369cc7c583436c4f0588f2df3e909e94691aa3db)) # [5.6.0](https://github.com/exadel-inc/esl/compare/v5.5.0...v5.6.0) (2025-06-03) ### Features * **esl-carousel:** rework default process of esl-carousel CSS renderer to use auto-height ([f856548](https://github.com/exadel-inc/esl/commit/f8565488406891c618730d054098cfde86ed68d9)) # [5.5.0](https://github.com/exadel-inc/esl/compare/v5.4.0...v5.5.0) (2025-06-02) ### Bug Fixes * **esl-animate:** fix esl-animate does not work with repeat + ratio 1 ([3ff2221](https://github.com/exadel-inc/esl/commit/3ff222138ed3baaecf54ffe191920c416c3e8f9b)) * **esl-carousel:** clear error response and validation for `goTo` carousel method ([6b1a20d](https://github.com/exadel-inc/esl/commit/6b1a20d82bcee879e309cb95d071ea1c3bc64c1a)) * **esl-carousel:** fix carousel plugin attribute parsing (affects autoplay and wheel plugins) ([6437eaf](https://github.com/exadel-inc/esl/commit/6437eaf5925f9923950e3aaf5cab461093005f11)) * **esl-carousel:** optimize carousel plugins config memoizing flow (affects touch, wheel, autoplay) ([a548d87](https://github.com/exadel-inc/esl/commit/a548d87fbf835a229b69a67158ed6e31c256a534)) * **esl-utils:** simplify `parseTime` method, allow to pass number type ([162ba65](https://github.com/exadel-inc/esl/commit/162ba658b89f024d243f3bf98ef29cae588f81ec)) ### Features * **esl-carousel:** `esl-carousel-autoplay` plugin full support ([e32fce8](https://github.com/exadel-inc/esl/commit/e32fce8b6f0315fdaa6804e3238db010906f4fa2)) * **esl-carousel:** CSS renderer base implementation ([0a825fa](https://github.com/exadel-inc/esl/commit/0a825fa0f5a444f629fa8240ac4cfa91fc542dc7)) * **esl-carousel:** introduce CSS based carousel animation time ([6667d87](https://github.com/exadel-inc/esl/commit/6667d87a897230f755dd534d622df8022e600398)) * **esl-carousel:** introduce separate CSS based renderers (slide and fade one) ([6f9eb35](https://github.com/exadel-inc/esl/commit/6f9eb35ee73e6ca4eb30e67f0ad571ad9305e132)) # [5.4.0](https://github.com/exadel-inc/esl/compare/v5.3.2...v5.4.0) (2025-04-28) **Note:** Version bump only for package @exadel/esl ## [5.3.2](https://github.com/exadel-inc/esl/compare/v5.3.1...v5.3.2) (2025-04-09) **Note:** Version bump only for package @exadel/esl ## [5.3.1](https://github.com/exadel-inc/esl/compare/v5.3.0...v5.3.1) (2025-03-26) ### Bug Fixes * fix missing README file ([a827954](https://github.com/exadel-inc/esl/commit/a8279548cb159ebe78b33742d02f8aacf9ec77fc)) # [5.3.0](https://github.com/exadel-inc/esl/compare/v5.2.0...v5.3.0) (2025-03-26) ### Bug Fixes * **esl-utils:** deprecate `isBot` utility and remove 'bot' shortcut from ESLMediaQuery support ([#3012](https://github.com/exadel-inc/esl/issues/3012)) ([6fd7732](https://github.com/exadel-inc/esl/commit/6fd7732a6fc4ffc3e9c2a037ed1d9f280c3a7e3a)), closes [#2996](https://github.com/exadel-inc/esl/issues/2996) ### Features * ESL repository migrated to classic monorepo structure; all processes now managed trough lerna ([f242051](https://github.com/exadel-inc/esl/commit/f242051df0dcc5a3562007cadf98c85344ed7eeb))