@studiometa/js-toolkit 2.5.0 → 2.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Base/index.cjs +56 -62
- package/Base/index.cjs.map +7 -0
- package/Base/index.d.ts +5 -5
- package/Base/index.js +63 -69
- package/Base/index.js.map +7 -0
- package/Base/managers/AbstractManager.cjs +8 -12
- package/Base/managers/AbstractManager.cjs.map +7 -0
- package/Base/managers/AbstractManager.d.ts +11 -21
- package/Base/managers/AbstractManager.js +7 -12
- package/Base/managers/AbstractManager.js.map +7 -0
- package/Base/managers/ChildrenManager.cjs +6 -20
- package/Base/managers/ChildrenManager.cjs.map +7 -0
- package/Base/managers/ChildrenManager.d.ts +2 -2
- package/Base/managers/ChildrenManager.js +5 -14
- package/Base/managers/ChildrenManager.js.map +7 -0
- package/Base/managers/EventsManager.cjs +60 -64
- package/Base/managers/EventsManager.cjs.map +7 -0
- package/Base/managers/EventsManager.d.ts +2 -2
- package/Base/managers/EventsManager.js +59 -64
- package/Base/managers/EventsManager.js.map +7 -0
- package/Base/managers/OptionsManager.cjs +14 -22
- package/Base/managers/OptionsManager.cjs.map +7 -0
- package/Base/managers/OptionsManager.d.ts +42 -55
- package/Base/managers/OptionsManager.js +12 -21
- package/Base/managers/OptionsManager.js.map +7 -0
- package/Base/managers/RefsManager.cjs +11 -16
- package/Base/managers/RefsManager.cjs.map +7 -0
- package/Base/managers/RefsManager.d.ts +3 -11
- package/Base/managers/RefsManager.js +9 -8
- package/Base/managers/RefsManager.js.map +7 -0
- package/Base/managers/ResponsiveOptionsManager.cjs +4 -9
- package/Base/managers/ResponsiveOptionsManager.cjs.map +7 -0
- package/Base/managers/ResponsiveOptionsManager.d.ts +8 -4
- package/Base/managers/ResponsiveOptionsManager.js +3 -2
- package/Base/managers/ResponsiveOptionsManager.js.map +7 -0
- package/Base/managers/ServicesManager.cjs +21 -45
- package/Base/managers/ServicesManager.cjs.map +7 -0
- package/Base/managers/ServicesManager.d.ts +33 -58
- package/Base/managers/ServicesManager.js +13 -32
- package/Base/managers/ServicesManager.js.map +7 -0
- package/Base/types.cjs +1 -0
- package/Base/types.cjs.map +7 -0
- package/Base/types.js +1 -0
- package/Base/types.js.map +7 -0
- package/Base/utils.cjs +1 -0
- package/Base/utils.cjs.map +7 -0
- package/Base/utils.js +1 -0
- package/Base/utils.js.map +7 -0
- package/decorators/index.cjs +1 -0
- package/decorators/index.cjs.map +7 -0
- package/decorators/index.js +1 -0
- package/decorators/index.js.map +7 -0
- package/decorators/withBreakpointManager.cjs +1 -0
- package/decorators/withBreakpointManager.cjs.map +7 -0
- package/decorators/withBreakpointManager.js +1 -0
- package/decorators/withBreakpointManager.js.map +7 -0
- package/decorators/withBreakpointObserver.cjs +10 -15
- package/decorators/withBreakpointObserver.cjs.map +7 -0
- package/decorators/withBreakpointObserver.js +10 -16
- package/decorators/withBreakpointObserver.js.map +7 -0
- package/decorators/withDrag.cjs +5 -9
- package/decorators/withDrag.cjs.map +7 -0
- package/decorators/withDrag.js +5 -10
- package/decorators/withDrag.js.map +7 -0
- package/decorators/withExtraConfig.cjs +2 -6
- package/decorators/withExtraConfig.cjs.map +7 -0
- package/decorators/withExtraConfig.js +2 -7
- package/decorators/withExtraConfig.js.map +7 -0
- package/decorators/withFreezedOptions.cjs +2 -9
- package/decorators/withFreezedOptions.cjs.map +7 -0
- package/decorators/withFreezedOptions.js +2 -10
- package/decorators/withFreezedOptions.js.map +7 -0
- package/decorators/withIntersectionObserver.cjs +11 -16
- package/decorators/withIntersectionObserver.cjs.map +7 -0
- package/decorators/withIntersectionObserver.js +11 -17
- package/decorators/withIntersectionObserver.js.map +7 -0
- package/decorators/withMountWhenInView.cjs +11 -16
- package/decorators/withMountWhenInView.cjs.map +7 -0
- package/decorators/withMountWhenInView.js +11 -17
- package/decorators/withMountWhenInView.js.map +7 -0
- package/decorators/withResponsiveOptions.cjs +3 -8
- package/decorators/withResponsiveOptions.cjs.map +7 -0
- package/decorators/withResponsiveOptions.js +2 -1
- package/decorators/withResponsiveOptions.js.map +7 -0
- package/decorators/withScrolledInView.cjs +45 -50
- package/decorators/withScrolledInView.cjs.map +7 -0
- package/decorators/withScrolledInView.js +45 -51
- package/decorators/withScrolledInView.js.map +7 -0
- package/decorators/withVue2.cjs +9 -15
- package/decorators/withVue2.cjs.map +7 -0
- package/decorators/withVue2.js +9 -16
- package/decorators/withVue2.js.map +7 -0
- package/helpers/createApp.cjs +1 -0
- package/helpers/createApp.cjs.map +7 -0
- package/helpers/createApp.js +1 -0
- package/helpers/createApp.js.map +7 -0
- package/helpers/getClosestParent.cjs +1 -0
- package/helpers/getClosestParent.cjs.map +7 -0
- package/helpers/getClosestParent.js +1 -0
- package/helpers/getClosestParent.js.map +7 -0
- package/helpers/getDirectChildren.cjs +1 -0
- package/helpers/getDirectChildren.cjs.map +7 -0
- package/helpers/getDirectChildren.js +1 -0
- package/helpers/getDirectChildren.js.map +7 -0
- package/helpers/getInstanceFromElement.cjs +1 -0
- package/helpers/getInstanceFromElement.cjs.map +7 -0
- package/helpers/getInstanceFromElement.js +1 -0
- package/helpers/getInstanceFromElement.js.map +7 -0
- package/helpers/importOnInteraction.cjs +2 -1
- package/helpers/importOnInteraction.cjs.map +7 -0
- package/helpers/importOnInteraction.js +2 -1
- package/helpers/importOnInteraction.js.map +7 -0
- package/helpers/importWhenIdle.cjs +1 -0
- package/helpers/importWhenIdle.cjs.map +7 -0
- package/helpers/importWhenIdle.js +1 -0
- package/helpers/importWhenIdle.js.map +7 -0
- package/helpers/importWhenVisible.cjs +2 -1
- package/helpers/importWhenVisible.cjs.map +7 -0
- package/helpers/importWhenVisible.js +2 -1
- package/helpers/importWhenVisible.js.map +7 -0
- package/helpers/index.cjs +1 -0
- package/helpers/index.cjs.map +7 -0
- package/helpers/index.js +1 -0
- package/helpers/index.js.map +7 -0
- package/helpers/utils.cjs +1 -0
- package/helpers/utils.cjs.map +7 -0
- package/helpers/utils.js +1 -0
- package/helpers/utils.js.map +7 -0
- package/index.cjs +1 -0
- package/index.cjs.map +7 -0
- package/index.js +1 -0
- package/index.js.map +7 -0
- package/package.json +1 -1
- package/services/drag.cjs +1 -0
- package/services/drag.cjs.map +7 -0
- package/services/drag.js +1 -0
- package/services/drag.js.map +7 -0
- package/services/index.cjs +1 -0
- package/services/index.cjs.map +7 -0
- package/services/index.js +1 -0
- package/services/index.js.map +7 -0
- package/services/key.cjs +2 -1
- package/services/key.cjs.map +7 -0
- package/services/key.js +2 -1
- package/services/key.js.map +7 -0
- package/services/load.cjs +1 -0
- package/services/load.cjs.map +7 -0
- package/services/load.js +1 -0
- package/services/load.js.map +7 -0
- package/services/pointer.cjs +3 -3
- package/services/pointer.cjs.map +7 -0
- package/services/pointer.js +3 -3
- package/services/pointer.js.map +7 -0
- package/services/raf.cjs +1 -0
- package/services/raf.cjs.map +7 -0
- package/services/raf.js +1 -0
- package/services/raf.js.map +7 -0
- package/services/resize.cjs +1 -0
- package/services/resize.cjs.map +7 -0
- package/services/resize.js +1 -0
- package/services/resize.js.map +7 -0
- package/services/scroll.cjs +1 -0
- package/services/scroll.cjs.map +7 -0
- package/services/scroll.js +1 -0
- package/services/scroll.js.map +7 -0
- package/services/service.cjs +1 -0
- package/services/service.cjs.map +7 -0
- package/services/service.js +1 -0
- package/services/service.js.map +7 -0
- package/utils/collide/boundingRectToCircle.cjs +1 -0
- package/utils/collide/boundingRectToCircle.cjs.map +7 -0
- package/utils/collide/boundingRectToCircle.js +1 -0
- package/utils/collide/boundingRectToCircle.js.map +7 -0
- package/utils/collide/collideCircleCircle.cjs +1 -0
- package/utils/collide/collideCircleCircle.cjs.map +7 -0
- package/utils/collide/collideCircleCircle.js +1 -0
- package/utils/collide/collideCircleCircle.js.map +7 -0
- package/utils/collide/collideCircleRect.cjs +1 -0
- package/utils/collide/collideCircleRect.cjs.map +7 -0
- package/utils/collide/collideCircleRect.js +1 -0
- package/utils/collide/collideCircleRect.js.map +7 -0
- package/utils/collide/collidePointCircle.cjs +1 -0
- package/utils/collide/collidePointCircle.cjs.map +7 -0
- package/utils/collide/collidePointCircle.js +1 -0
- package/utils/collide/collidePointCircle.js.map +7 -0
- package/utils/collide/collidePointRect.cjs +1 -0
- package/utils/collide/collidePointRect.cjs.map +7 -0
- package/utils/collide/collidePointRect.js +1 -0
- package/utils/collide/collidePointRect.js.map +7 -0
- package/utils/collide/collideRectRect.cjs +1 -0
- package/utils/collide/collideRectRect.cjs.map +7 -0
- package/utils/collide/collideRectRect.js +1 -0
- package/utils/collide/collideRectRect.js.map +7 -0
- package/utils/collide/index.cjs +1 -0
- package/utils/collide/index.cjs.map +7 -0
- package/utils/collide/index.js +1 -0
- package/utils/collide/index.js.map +7 -0
- package/utils/css/animate.cjs +38 -14
- package/utils/css/animate.cjs.map +7 -0
- package/utils/css/animate.d.ts +4 -24
- package/utils/css/animate.js +38 -14
- package/utils/css/animate.js.map +7 -0
- package/utils/css/classes.cjs +7 -3
- package/utils/css/classes.cjs.map +7 -0
- package/utils/css/classes.d.ts +6 -6
- package/utils/css/classes.js +7 -3
- package/utils/css/classes.js.map +7 -0
- package/utils/css/getOffsetSizes.cjs +1 -0
- package/utils/css/getOffsetSizes.cjs.map +7 -0
- package/utils/css/getOffsetSizes.js +1 -0
- package/utils/css/getOffsetSizes.js.map +7 -0
- package/utils/css/index.cjs +2 -1
- package/utils/css/index.cjs.map +7 -0
- package/utils/css/index.d.ts +7 -7
- package/utils/css/index.js +1 -0
- package/utils/css/index.js.map +7 -0
- package/utils/css/matrix.cjs +2 -2
- package/utils/css/matrix.cjs.map +7 -0
- package/utils/css/matrix.js +2 -2
- package/utils/css/matrix.js.map +7 -0
- package/utils/css/styles.cjs +12 -8
- package/utils/css/styles.cjs.map +7 -0
- package/utils/css/styles.d.ts +4 -4
- package/utils/css/styles.js +12 -8
- package/utils/css/styles.js.map +7 -0
- package/utils/css/transform.cjs +7 -4
- package/utils/css/transform.cjs.map +7 -0
- package/utils/css/transform.d.ts +2 -2
- package/utils/css/transform.js +7 -4
- package/utils/css/transform.js.map +7 -0
- package/utils/css/transition.cjs +10 -8
- package/utils/css/transition.cjs.map +7 -0
- package/utils/css/transition.d.ts +5 -8
- package/utils/css/transition.js +10 -9
- package/utils/css/transition.js.map +7 -0
- package/utils/css/utils.cjs +32 -0
- package/utils/css/utils.cjs.map +7 -0
- package/utils/css/utils.d.ts +1 -0
- package/utils/css/utils.js +10 -0
- package/utils/css/utils.js.map +7 -0
- package/utils/debounce.cjs +1 -0
- package/utils/debounce.cjs.map +7 -0
- package/utils/debounce.js +1 -0
- package/utils/debounce.js.map +7 -0
- package/utils/focusTrap.cjs +1 -0
- package/utils/focusTrap.cjs.map +7 -0
- package/utils/focusTrap.js +1 -0
- package/utils/focusTrap.js.map +7 -0
- package/utils/has.cjs +1 -0
- package/utils/has.cjs.map +7 -0
- package/utils/has.js +1 -0
- package/utils/has.js.map +7 -0
- package/utils/history.cjs +1 -0
- package/utils/history.cjs.map +7 -0
- package/utils/history.js +1 -0
- package/utils/history.js.map +7 -0
- package/utils/index.cjs +2 -1
- package/utils/index.cjs.map +7 -0
- package/utils/index.d.ts +19 -19
- package/utils/index.js +1 -0
- package/utils/index.js.map +7 -0
- package/utils/is.cjs +1 -0
- package/utils/is.cjs.map +7 -0
- package/utils/is.js +1 -0
- package/utils/is.js.map +7 -0
- package/utils/keyCodes.cjs +1 -0
- package/utils/keyCodes.cjs.map +7 -0
- package/utils/keyCodes.js +1 -0
- package/utils/keyCodes.js.map +7 -0
- package/utils/math/clamp.cjs +1 -0
- package/utils/math/clamp.cjs.map +7 -0
- package/utils/math/clamp.js +1 -0
- package/utils/math/clamp.js.map +7 -0
- package/utils/math/clamp01.cjs +1 -0
- package/utils/math/clamp01.cjs.map +7 -0
- package/utils/math/clamp01.js +1 -0
- package/utils/math/clamp01.js.map +7 -0
- package/utils/math/createEases.cjs +1 -0
- package/utils/math/createEases.cjs.map +7 -0
- package/utils/math/createEases.js +1 -0
- package/utils/math/createEases.js.map +7 -0
- package/utils/math/damp.cjs +1 -0
- package/utils/math/damp.cjs.map +7 -0
- package/utils/math/damp.js +1 -0
- package/utils/math/damp.js.map +7 -0
- package/utils/math/ease.cjs +1 -0
- package/utils/math/ease.cjs.map +7 -0
- package/utils/math/ease.js +1 -0
- package/utils/math/ease.js.map +7 -0
- package/utils/math/index.cjs +1 -0
- package/utils/math/index.cjs.map +7 -0
- package/utils/math/index.js +1 -0
- package/utils/math/index.js.map +7 -0
- package/utils/math/inertiaFinalValue.cjs +1 -0
- package/utils/math/inertiaFinalValue.cjs.map +7 -0
- package/utils/math/inertiaFinalValue.js +1 -0
- package/utils/math/inertiaFinalValue.js.map +7 -0
- package/utils/math/lerp.cjs +1 -0
- package/utils/math/lerp.cjs.map +7 -0
- package/utils/math/lerp.js +1 -0
- package/utils/math/lerp.js.map +7 -0
- package/utils/math/map.cjs +1 -0
- package/utils/math/map.cjs.map +7 -0
- package/utils/math/map.js +1 -0
- package/utils/math/map.js.map +7 -0
- package/utils/math/round.cjs +1 -0
- package/utils/math/round.cjs.map +7 -0
- package/utils/math/round.js +1 -0
- package/utils/math/round.js.map +7 -0
- package/utils/memoize.cjs +1 -0
- package/utils/memoize.cjs.map +7 -0
- package/utils/memoize.js +1 -0
- package/utils/memoize.js.map +7 -0
- package/utils/nextFrame.cjs +1 -0
- package/utils/nextFrame.cjs.map +7 -0
- package/utils/nextFrame.js +1 -0
- package/utils/nextFrame.js.map +7 -0
- package/utils/nextMicrotask.cjs +1 -0
- package/utils/nextMicrotask.cjs.map +7 -0
- package/utils/nextMicrotask.js +1 -0
- package/utils/nextMicrotask.js.map +7 -0
- package/utils/nextTick.cjs +1 -0
- package/utils/nextTick.cjs.map +7 -0
- package/utils/nextTick.js +1 -0
- package/utils/nextTick.js.map +7 -0
- package/utils/noop.cjs +1 -0
- package/utils/noop.cjs.map +7 -0
- package/utils/noop.js +1 -0
- package/utils/noop.js.map +7 -0
- package/utils/object/autoBind.cjs +1 -0
- package/utils/object/autoBind.cjs.map +7 -0
- package/utils/object/autoBind.js +1 -0
- package/utils/object/autoBind.js.map +7 -0
- package/utils/object/getAllProperties.cjs +1 -0
- package/utils/object/getAllProperties.cjs.map +7 -0
- package/utils/object/getAllProperties.js +1 -0
- package/utils/object/getAllProperties.js.map +7 -0
- package/utils/object/index.cjs +1 -0
- package/utils/object/index.cjs.map +7 -0
- package/utils/object/index.js +1 -0
- package/utils/object/index.js.map +7 -0
- package/utils/scheduler.cjs +1 -0
- package/utils/scheduler.cjs.map +7 -0
- package/utils/scheduler.js +1 -0
- package/utils/scheduler.js.map +7 -0
- package/utils/scrollTo.cjs +1 -0
- package/utils/scrollTo.cjs.map +7 -0
- package/utils/scrollTo.js +1 -0
- package/utils/scrollTo.js.map +7 -0
- package/utils/string/index.cjs +1 -0
- package/utils/string/index.cjs.map +7 -0
- package/utils/string/index.js +1 -0
- package/utils/string/index.js.map +7 -0
- package/utils/string/withLeadingCharacters.cjs +1 -0
- package/utils/string/withLeadingCharacters.cjs.map +7 -0
- package/utils/string/withLeadingCharacters.js +1 -0
- package/utils/string/withLeadingCharacters.js.map +7 -0
- package/utils/string/withLeadingSlash.cjs +1 -0
- package/utils/string/withLeadingSlash.cjs.map +7 -0
- package/utils/string/withLeadingSlash.js +1 -0
- package/utils/string/withLeadingSlash.js.map +7 -0
- package/utils/string/withTrailingCharacters.cjs +1 -0
- package/utils/string/withTrailingCharacters.cjs.map +7 -0
- package/utils/string/withTrailingCharacters.js +1 -0
- package/utils/string/withTrailingCharacters.js.map +7 -0
- package/utils/string/withTrailingSlash.cjs +1 -0
- package/utils/string/withTrailingSlash.cjs.map +7 -0
- package/utils/string/withTrailingSlash.js +1 -0
- package/utils/string/withTrailingSlash.js.map +7 -0
- package/utils/string/withoutLeadingCharacters.cjs +1 -0
- package/utils/string/withoutLeadingCharacters.cjs.map +7 -0
- package/utils/string/withoutLeadingCharacters.js +1 -0
- package/utils/string/withoutLeadingCharacters.js.map +7 -0
- package/utils/string/withoutLeadingCharactersRecursive.cjs +1 -0
- package/utils/string/withoutLeadingCharactersRecursive.cjs.map +7 -0
- package/utils/string/withoutLeadingCharactersRecursive.js +1 -0
- package/utils/string/withoutLeadingCharactersRecursive.js.map +7 -0
- package/utils/string/withoutLeadingSlash.cjs +1 -0
- package/utils/string/withoutLeadingSlash.cjs.map +7 -0
- package/utils/string/withoutLeadingSlash.js +1 -0
- package/utils/string/withoutLeadingSlash.js.map +7 -0
- package/utils/string/withoutTrailingCharacters.cjs +1 -0
- package/utils/string/withoutTrailingCharacters.cjs.map +7 -0
- package/utils/string/withoutTrailingCharacters.js +1 -0
- package/utils/string/withoutTrailingCharacters.js.map +7 -0
- package/utils/string/withoutTrailingCharactersRecursive.cjs +1 -0
- package/utils/string/withoutTrailingCharactersRecursive.cjs.map +7 -0
- package/utils/string/withoutTrailingCharactersRecursive.js +1 -0
- package/utils/string/withoutTrailingCharactersRecursive.js.map +7 -0
- package/utils/string/withoutTrailingSlash.cjs +1 -0
- package/utils/string/withoutTrailingSlash.cjs.map +7 -0
- package/utils/string/withoutTrailingSlash.js +1 -0
- package/utils/string/withoutTrailingSlash.js.map +7 -0
- package/utils/throttle.cjs +1 -0
- package/utils/throttle.cjs.map +7 -0
- package/utils/throttle.js +1 -0
- package/utils/throttle.js.map +7 -0
- package/utils/tween.cjs +2 -2
- package/utils/tween.cjs.map +7 -0
- package/utils/tween.js +2 -2
- package/utils/tween.js.map +7 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/js-toolkit/Base/managers/ResponsiveOptionsManager.ts"],
|
|
4
|
+
"sourcesContent": ["import { OptionsManager, __getPropertyName } from './OptionsManager.js';\nimport type { OptionObject } from './OptionsManager.js';\nimport { useResize } from '../../services/index.js';\nimport { isDev } from '../../utils/index.js';\n\nexport type ResponsiveOptionObject = OptionObject & { responsive?: boolean };\n\n/**\n * Get the currently active responsive name of an option.\n *\n * @param {ResponsiveOptionsManager} that\n * @param {string} name The default name of the option.\n * @returns {string} The responsive name if one matches the current breakpoint, the default name otherwise.\n */\nfunction __getResponsiveName(that: ResponsiveOptionsManager, name: string) {\n const { breakpoint } = useResize().props();\n\n if (!breakpoint) {\n return name;\n }\n\n let responsiveName = name;\n const propertyName = __getPropertyName(name);\n const regex = new RegExp(`${propertyName}:(.+)$`);\n\n Object.keys(that.__element.dataset)\n .filter((optionName) => regex.test(optionName))\n .forEach((optionName) => {\n const [, breakpoints] = optionName.match(regex);\n const isInBreakpoint = breakpoints.split(':').includes(breakpoint);\n if (isInBreakpoint) {\n responsiveName = optionName.replace(/^option/, '');\n }\n });\n\n return responsiveName;\n}\n\n/**\n * Class options to manage options as data attributes on an HTML element.\n */\nexport class ResponsiveOptionsManager extends OptionsManager {\n /**\n * Get an option value.\n *\n * @param {string} name The option name.\n * @param {ResponsiveOptionObject} config The option configuration.\n * @returns {any}\n */\n get(name: string, config: ResponsiveOptionObject) {\n if (!config.responsive) {\n return super.get(name, config);\n }\n\n return super.get(__getResponsiveName(this, name), config);\n }\n\n /**\n * Set an option value.\n *\n * @param {string} name The option name.\n * @param {any} value The new value.\n * @param {ResponsiveOptionObject} config The option configuration.\n */\n set(name: string, value: unknown, config: ResponsiveOptionObject) {\n if (!config.responsive) {\n super.set(name, value, config);\n return;\n }\n\n if (isDev) {\n console.warn(`[${this.__config.name}]`, 'Responsive options are read-only.');\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,gBAAgB,yBAAyB;AAElD,SAAS,iBAAiB;AAC1B,SAAS,aAAa;AAWtB,SAAS,oBAAoB,MAAgC,MAAc;AACzE,QAAM,EAAE,WAAW,IAAI,UAAU,EAAE,MAAM;AAEzC,MAAI,CAAC,YAAY;AACf,WAAO;AAAA,EACT;AAEA,MAAI,iBAAiB;AACrB,QAAM,eAAe,kBAAkB,IAAI;AAC3C,QAAM,QAAQ,IAAI,OAAO,GAAG,oBAAoB;AAEhD,SAAO,KAAK,KAAK,UAAU,OAAO,EAC/B,OAAO,CAAC,eAAe,MAAM,KAAK,UAAU,CAAC,EAC7C,QAAQ,CAAC,eAAe;AACvB,UAAM,CAAC,EAAE,WAAW,IAAI,WAAW,MAAM,KAAK;AAC9C,UAAM,iBAAiB,YAAY,MAAM,GAAG,EAAE,SAAS,UAAU;AACjE,QAAI,gBAAgB;AAClB,uBAAiB,WAAW,QAAQ,WAAW,EAAE;AAAA,IACnD;AAAA,EACF,CAAC;AAEH,SAAO;AACT;AAKO,MAAM,iCAAiC,eAAe;AAAA,EAQ3D,IAAI,MAAc,QAAgC;AAChD,QAAI,CAAC,OAAO,YAAY;AACtB,aAAO,MAAM,IAAI,MAAM,MAAM;AAAA,IAC/B;AAEA,WAAO,MAAM,IAAI,oBAAoB,MAAM,IAAI,GAAG,MAAM;AAAA,EAC1D;AAAA,EASA,IAAI,MAAc,OAAgB,QAAgC;AAChE,QAAI,CAAC,OAAO,YAAY;AACtB,YAAM,IAAI,MAAM,OAAO,MAAM;AAC7B;AAAA,IACF;AAEA,QAAI,OAAO;AACT,cAAQ,KAAK,IAAI,KAAK,SAAS,SAAS,mCAAmC;AAAA,IAC7E;AAAA,EACF;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
1
|
var __defProp = Object.defineProperty;
|
|
3
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
5
|
var __export = (target, all) => {
|
|
9
6
|
for (var name in all)
|
|
10
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -17,44 +14,28 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
14
|
}
|
|
18
15
|
return to;
|
|
19
16
|
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
22
|
-
mod
|
|
23
|
-
));
|
|
24
17
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
-
var __publicField = (obj, key, value) => {
|
|
26
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
27
|
-
return value;
|
|
28
|
-
};
|
|
29
18
|
|
|
30
|
-
// packages/js-toolkit/Base/managers/ServicesManager.
|
|
19
|
+
// packages/js-toolkit/Base/managers/ServicesManager.ts
|
|
31
20
|
var ServicesManager_exports = {};
|
|
32
21
|
__export(ServicesManager_exports, {
|
|
33
|
-
|
|
22
|
+
ServicesManager: () => ServicesManager
|
|
34
23
|
});
|
|
35
24
|
module.exports = __toCommonJS(ServicesManager_exports);
|
|
36
|
-
var
|
|
37
|
-
var
|
|
38
|
-
var import_resize = __toESM(require("../../services/resize.cjs"), 1);
|
|
39
|
-
var import_scroll = __toESM(require("../../services/scroll.cjs"), 1);
|
|
40
|
-
var import_key = __toESM(require("../../services/key.cjs"), 1);
|
|
41
|
-
var import_load = __toESM(require("../../services/load.cjs"), 1);
|
|
42
|
-
var import_AbstractManager = __toESM(require("./AbstractManager.cjs"), 1);
|
|
25
|
+
var import_services = require("../../services/index.cjs");
|
|
26
|
+
var import_AbstractManager = require("./AbstractManager.cjs");
|
|
43
27
|
var import_utils = require("../../utils/index.cjs");
|
|
44
28
|
var SERVICES_MAP = {
|
|
45
|
-
scrolled:
|
|
46
|
-
resized:
|
|
47
|
-
ticked:
|
|
48
|
-
moved:
|
|
49
|
-
keyed:
|
|
50
|
-
loaded:
|
|
29
|
+
scrolled: import_services.useScroll,
|
|
30
|
+
resized: import_services.useResize,
|
|
31
|
+
ticked: import_services.useRaf,
|
|
32
|
+
moved: import_services.usePointer,
|
|
33
|
+
keyed: import_services.useKey,
|
|
34
|
+
loaded: import_services.useLoad
|
|
51
35
|
};
|
|
52
36
|
var SERVICE_NAMES = Object.keys(SERVICES_MAP);
|
|
53
|
-
var ServicesManager = class extends import_AbstractManager.
|
|
54
|
-
|
|
55
|
-
super(...arguments);
|
|
56
|
-
__publicField(this, "__customServices", {});
|
|
57
|
-
}
|
|
37
|
+
var ServicesManager = class extends import_AbstractManager.AbstractManager {
|
|
38
|
+
__customServices = {};
|
|
58
39
|
get __services() {
|
|
59
40
|
return {
|
|
60
41
|
...this.__customServices,
|
|
@@ -78,25 +59,19 @@ var ServicesManager = class extends import_AbstractManager.default {
|
|
|
78
59
|
if (!((0, import_utils.isFunction)(this.__base[service]) || this.__base.__hasEvent(service)) || !this.__services[service]) {
|
|
79
60
|
return import_utils.noop;
|
|
80
61
|
}
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
}
|
|
86
|
-
add(this.__base.$id, serviceHandler);
|
|
62
|
+
const serviceInstance = this.__services[service]();
|
|
63
|
+
serviceInstance.add(this.__base.$id, (...args) => {
|
|
64
|
+
this.__base.__callMethod(service, ...args);
|
|
65
|
+
});
|
|
87
66
|
return this.disable.bind(this, service);
|
|
88
67
|
}
|
|
89
68
|
enableAll() {
|
|
90
|
-
return Object.keys(this.__services).map(
|
|
91
|
-
(serviceName) => this.enable(serviceName)
|
|
92
|
-
);
|
|
69
|
+
return Object.keys(this.__services).map((serviceName) => this.enable(serviceName));
|
|
93
70
|
}
|
|
94
71
|
disableAll() {
|
|
95
|
-
Object.keys(this.__services).forEach(
|
|
96
|
-
(serviceName)
|
|
97
|
-
|
|
98
|
-
}
|
|
99
|
-
);
|
|
72
|
+
Object.keys(this.__services).forEach((serviceName) => {
|
|
73
|
+
this.disable(serviceName);
|
|
74
|
+
});
|
|
100
75
|
}
|
|
101
76
|
disable(service) {
|
|
102
77
|
if (!this.__services[service]) {
|
|
@@ -135,3 +110,4 @@ var ServicesManager = class extends import_AbstractManager.default {
|
|
|
135
110
|
}
|
|
136
111
|
};
|
|
137
112
|
if (module.exports.default) module.exports = module.exports.default;
|
|
113
|
+
//# sourceMappingURL=ServicesManager.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/js-toolkit/Base/managers/ServicesManager.ts"],
|
|
4
|
+
"sourcesContent": ["import { usePointer, useRaf, useResize, useScroll, useKey, useLoad } from '../../services/index.js';\nimport type {\n PointerServiceInterface,\n RafServiceInterface,\n ResizeServiceInterface,\n ScrollServiceInterface,\n KeyServiceInterface,\n LoadServiceInterface,\n ServiceInterface,\n} from '../../services/index.js';\nimport { AbstractManager } from './AbstractManager.js';\nimport { noop, isFunction, isDefined, isDev } from '../../utils/index.js';\n\nconst SERVICES_MAP = {\n scrolled: useScroll,\n resized: useResize,\n ticked: useRaf,\n moved: usePointer,\n keyed: useKey,\n loaded: useLoad,\n};\n\nconst SERVICE_NAMES = Object.keys(SERVICES_MAP);\n\ntype Services = {\n scrolled: ScrollServiceInterface;\n resized: ResizeServiceInterface;\n ticked: RafServiceInterface;\n moved: PointerServiceInterface;\n keyed: KeyServiceInterface;\n loaded: LoadServiceInterface;\n} & Record<string, ServiceInterface<unknown>>;\n\ntype ServiceNames = keyof Services;\n\n/**\n * Services management for the Base class.\n *\n * @todo Add support for disabled services on mount when the method is defined.\n */\nexport class ServicesManager extends AbstractManager {\n /**\n * Holder for custom services.\n */\n __customServices: Record<string, <T>() => ServiceInterface<T>> = {};\n\n /**\n * Get registered services.\n */\n get __services() {\n return {\n ...this.__customServices,\n ...SERVICES_MAP,\n };\n }\n\n /**\n * Test if the given service is registered.\n */\n has(service: ServiceNames | string): boolean {\n if (\n !(\n (isFunction(this.__base[service]) ||\n // @ts-ignore\n this.__base.__hasEvent(service)) &&\n this.__services[service]\n )\n ) {\n return false;\n }\n\n const { has } = this.__services[service]();\n return has(this.__base.$id);\n }\n\n /**\n * Get a service props by name.\n */\n get<S extends ServiceNames | string>(service: S): ReturnType<Services[S]['props']> {\n // @ts-ignore\n return this.__services[service]().props();\n }\n\n /**\n * Init the given service and bind it to the given instance.\n *\n * @param {ServiceNames} service The name of the service.\n * @returns {() => void} A function to unbind the service.\n */\n enable(service: ServiceNames): () => void {\n if (this.has(service)) {\n return this.disable.bind(this, service);\n }\n\n if (\n // @ts-ignore\n !(isFunction(this.__base[service]) || this.__base.__hasEvent(service)) ||\n !this.__services[service]\n ) {\n return noop;\n }\n const serviceInstance = this.__services[service]();\n\n serviceInstance.add(this.__base.$id, (...args) => {\n this.__base.__callMethod(service, ...args);\n });\n\n return this.disable.bind(this, service);\n }\n\n /**\n * Enable all services and return methods to disable them.\n */\n enableAll() {\n return Object.keys(this.__services).map((serviceName) => this.enable(serviceName));\n }\n\n /**\n * Disable all services.\n *\n * @returns {void}\n */\n disableAll() {\n Object.keys(this.__services).forEach((serviceName) => {\n this.disable(serviceName);\n });\n }\n\n /**\n * Disable a service.\n */\n disable(service: ServiceNames) {\n if (!this.__services[service]) {\n return;\n }\n\n const { remove } = this.__services[service]();\n remove(this.__base.$id);\n }\n\n /**\n * Toggle a service.\n */\n toggle(service: ServiceNames, force?: boolean) {\n if (isDefined(force)) {\n if (force && !this.has(service)) {\n this.enable(service);\n }\n\n if (!force && this.has(service)) {\n this.disable(service);\n }\n } else if (this.has(service)) {\n this.disable(service);\n } else {\n this.enable(service);\n }\n }\n\n /**\n * Register a new service to be enabled/disabled.\n *\n * @param {string} name\n * The name of the service hook.\n * @param {<T>(...args:unknown[]) => ServiceInterface<T>} useFunction\n * The `use...` function for the service.\n */\n register(name: string, useFunction: <T>(...args: unknown[]) => ServiceInterface<T>) {\n this.__customServices[name] = useFunction;\n this.__base.__addEmits(name);\n }\n\n /**\n * Unregister a new service to be enabled disabled.\n *\n * @param {string} name\n * The name of the service hook.\n */\n unregister(name: string) {\n if (SERVICE_NAMES.includes(name)) {\n if (isDev) {\n throw new Error(`[ServicesManager] The \\`${name}\\` core service can not be unregistered.`);\n }\n return;\n }\n\n this.__base.__removeEmits(name);\n delete this.__customServices[name];\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA0E;AAU1E,6BAAgC;AAChC,mBAAmD;AAEnD,IAAM,eAAe;AAAA,EACnB,UAAU;AAAA,EACV,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,OAAO;AAAA,EACP,QAAQ;AACV;AAEA,IAAM,gBAAgB,OAAO,KAAK,YAAY;AAkBvC,IAAM,kBAAN,cAA8B,uCAAgB;AAAA,EAInD,mBAAiE,CAAC;AAAA,EAKlE,IAAI,aAAa;AACf,WAAO;AAAA,MACL,GAAG,KAAK;AAAA,MACR,GAAG;AAAA,IACL;AAAA,EACF;AAAA,EAKA,IAAI,SAAyC;AAC3C,QACE,OACG,yBAAW,KAAK,OAAO,QAAQ,KAE9B,KAAK,OAAO,WAAW,OAAO,MAChC,KAAK,WAAW,WAElB;AACA,aAAO;AAAA,IACT;AAEA,UAAM,EAAE,IAAI,IAAI,KAAK,WAAW,SAAS;AACzC,WAAO,IAAI,KAAK,OAAO,GAAG;AAAA,EAC5B;AAAA,EAKA,IAAqC,SAA8C;AAEjF,WAAO,KAAK,WAAW,SAAS,EAAE,MAAM;AAAA,EAC1C;AAAA,EAQA,OAAO,SAAmC;AACxC,QAAI,KAAK,IAAI,OAAO,GAAG;AACrB,aAAO,KAAK,QAAQ,KAAK,MAAM,OAAO;AAAA,IACxC;AAEA,QAEE,MAAE,yBAAW,KAAK,OAAO,QAAQ,KAAK,KAAK,OAAO,WAAW,OAAO,MACpE,CAAC,KAAK,WAAW,UACjB;AACA,aAAO;AAAA,IACT;AACA,UAAM,kBAAkB,KAAK,WAAW,SAAS;AAEjD,oBAAgB,IAAI,KAAK,OAAO,KAAK,IAAI,SAAS;AAChD,WAAK,OAAO,aAAa,SAAS,GAAG,IAAI;AAAA,IAC3C,CAAC;AAED,WAAO,KAAK,QAAQ,KAAK,MAAM,OAAO;AAAA,EACxC;AAAA,EAKA,YAAY;AACV,WAAO,OAAO,KAAK,KAAK,UAAU,EAAE,IAAI,CAAC,gBAAgB,KAAK,OAAO,WAAW,CAAC;AAAA,EACnF;AAAA,EAOA,aAAa;AACX,WAAO,KAAK,KAAK,UAAU,EAAE,QAAQ,CAAC,gBAAgB;AACpD,WAAK,QAAQ,WAAW;AAAA,IAC1B,CAAC;AAAA,EACH;AAAA,EAKA,QAAQ,SAAuB;AAC7B,QAAI,CAAC,KAAK,WAAW,UAAU;AAC7B;AAAA,IACF;AAEA,UAAM,EAAE,OAAO,IAAI,KAAK,WAAW,SAAS;AAC5C,WAAO,KAAK,OAAO,GAAG;AAAA,EACxB;AAAA,EAKA,OAAO,SAAuB,OAAiB;AAC7C,YAAI,wBAAU,KAAK,GAAG;AACpB,UAAI,SAAS,CAAC,KAAK,IAAI,OAAO,GAAG;AAC/B,aAAK,OAAO,OAAO;AAAA,MACrB;AAEA,UAAI,CAAC,SAAS,KAAK,IAAI,OAAO,GAAG;AAC/B,aAAK,QAAQ,OAAO;AAAA,MACtB;AAAA,IACF,WAAW,KAAK,IAAI,OAAO,GAAG;AAC5B,WAAK,QAAQ,OAAO;AAAA,IACtB,OAAO;AACL,WAAK,OAAO,OAAO;AAAA,IACrB;AAAA,EACF;AAAA,EAUA,SAAS,MAAc,aAA6D;AAClF,SAAK,iBAAiB,QAAQ;AAC9B,SAAK,OAAO,WAAW,IAAI;AAAA,EAC7B;AAAA,EAQA,WAAW,MAAc;AACvB,QAAI,cAAc,SAAS,IAAI,GAAG;AAChC,UAAI,oBAAO;AACT,cAAM,IAAI,MAAM,2BAA2B,8CAA8C;AAAA,MAC3F;AACA;AAAA,IACF;AAEA,SAAK,OAAO,cAAc,IAAI;AAC9B,WAAO,KAAK,iBAAiB;AAAA,EAC/B;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,47 +1,55 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { usePointer, useRaf, useResize, useScroll, useKey, useLoad } from '../../services/index.js';
|
|
2
|
+
import type { PointerServiceInterface, RafServiceInterface, ResizeServiceInterface, ScrollServiceInterface, KeyServiceInterface, LoadServiceInterface, ServiceInterface } from '../../services/index.js';
|
|
3
|
+
import { AbstractManager } from './AbstractManager.js';
|
|
4
|
+
declare type Services = {
|
|
5
|
+
scrolled: ScrollServiceInterface;
|
|
6
|
+
resized: ResizeServiceInterface;
|
|
7
|
+
ticked: RafServiceInterface;
|
|
8
|
+
moved: PointerServiceInterface;
|
|
9
|
+
keyed: KeyServiceInterface;
|
|
10
|
+
loaded: LoadServiceInterface;
|
|
11
|
+
} & Record<string, ServiceInterface<unknown>>;
|
|
12
|
+
declare type ServiceNames = keyof Services;
|
|
5
13
|
/**
|
|
6
14
|
* Services management for the Base class.
|
|
7
15
|
*
|
|
8
16
|
* @todo Add support for disabled services on mount when the method is defined.
|
|
9
17
|
*/
|
|
10
|
-
export
|
|
18
|
+
export declare class ServicesManager extends AbstractManager {
|
|
11
19
|
/**
|
|
12
|
-
*
|
|
20
|
+
* Holder for custom services.
|
|
13
21
|
*/
|
|
14
|
-
__customServices: Record<string, () =>
|
|
22
|
+
__customServices: Record<string, <T>() => ServiceInterface<T>>;
|
|
15
23
|
/**
|
|
16
|
-
*
|
|
24
|
+
* Get registered services.
|
|
17
25
|
*/
|
|
18
|
-
get __services():
|
|
26
|
+
get __services(): {
|
|
27
|
+
scrolled: typeof useScroll;
|
|
28
|
+
resized: typeof useResize;
|
|
29
|
+
ticked: typeof useRaf;
|
|
30
|
+
moved: typeof usePointer;
|
|
31
|
+
keyed: typeof useKey;
|
|
32
|
+
loaded: typeof useLoad;
|
|
33
|
+
};
|
|
19
34
|
/**
|
|
20
35
|
* Test if the given service is registered.
|
|
21
|
-
*
|
|
22
|
-
* @param {ServiceName} service The name of the service.
|
|
23
|
-
* @returns {boolean}
|
|
24
36
|
*/
|
|
25
|
-
has(service:
|
|
37
|
+
has(service: ServiceNames | string): boolean;
|
|
26
38
|
/**
|
|
27
39
|
* Get a service props by name.
|
|
28
|
-
* @param {ServiceName} service The name of the service.
|
|
29
|
-
* @returns {ReturnType<ServiceInterface['props']>}
|
|
30
40
|
*/
|
|
31
|
-
get(service:
|
|
41
|
+
get<S extends ServiceNames | string>(service: S): ReturnType<Services[S]['props']>;
|
|
32
42
|
/**
|
|
33
43
|
* Init the given service and bind it to the given instance.
|
|
34
44
|
*
|
|
35
|
-
* @param {
|
|
45
|
+
* @param {ServiceNames} service The name of the service.
|
|
36
46
|
* @returns {() => void} A function to unbind the service.
|
|
37
47
|
*/
|
|
38
|
-
enable(service:
|
|
48
|
+
enable(service: ServiceNames): () => void;
|
|
39
49
|
/**
|
|
40
50
|
* Enable all services and return methods to disable them.
|
|
41
|
-
*
|
|
42
|
-
* @returns {Function[]}
|
|
43
51
|
*/
|
|
44
|
-
enableAll():
|
|
52
|
+
enableAll(): (() => void)[];
|
|
45
53
|
/**
|
|
46
54
|
* Disable all services.
|
|
47
55
|
*
|
|
@@ -50,27 +58,21 @@ export default class ServicesManager extends AbstractManager {
|
|
|
50
58
|
disableAll(): void;
|
|
51
59
|
/**
|
|
52
60
|
* Disable a service.
|
|
53
|
-
*
|
|
54
|
-
* @param {string} service The name of the service.
|
|
55
|
-
* @returns {void}
|
|
56
61
|
*/
|
|
57
|
-
disable(service:
|
|
62
|
+
disable(service: ServiceNames): void;
|
|
58
63
|
/**
|
|
59
64
|
* Toggle a service.
|
|
60
|
-
* @param {string} service The name of the service.
|
|
61
|
-
* @param {boolean} [force] The state to force.
|
|
62
|
-
* @returns {void}
|
|
63
65
|
*/
|
|
64
|
-
toggle(service:
|
|
66
|
+
toggle(service: ServiceNames, force?: boolean): void;
|
|
65
67
|
/**
|
|
66
68
|
* Register a new service to be enabled/disabled.
|
|
67
69
|
*
|
|
68
70
|
* @param {string} name
|
|
69
71
|
* The name of the service hook.
|
|
70
|
-
* @param {() => ServiceInterface} useFunction
|
|
72
|
+
* @param {<T>(...args:unknown[]) => ServiceInterface<T>} useFunction
|
|
71
73
|
* The `use...` function for the service.
|
|
72
74
|
*/
|
|
73
|
-
register(name: string, useFunction: () =>
|
|
75
|
+
register(name: string, useFunction: <T>(...args: unknown[]) => ServiceInterface<T>): void;
|
|
74
76
|
/**
|
|
75
77
|
* Unregister a new service to be enabled disabled.
|
|
76
78
|
*
|
|
@@ -79,31 +81,4 @@ export default class ServicesManager extends AbstractManager {
|
|
|
79
81
|
*/
|
|
80
82
|
unregister(name: string): void;
|
|
81
83
|
}
|
|
82
|
-
export type Base = import('../index').Base;
|
|
83
|
-
export type BaseConstructor = import('../index').BaseConstructor;
|
|
84
|
-
export type ServiceInterface = import('../../services').ServiceInterface<any>;
|
|
85
|
-
export type Services = typeof SERVICES_MAP & Record<string, () => import("../../services").ServiceInterface<any>>;
|
|
86
|
-
export type ServiceName = keyof {
|
|
87
|
-
scrolled: typeof useScroll;
|
|
88
|
-
resized: typeof useResize;
|
|
89
|
-
ticked: typeof useRaf;
|
|
90
|
-
moved: typeof usePointer;
|
|
91
|
-
keyed: typeof useKey;
|
|
92
|
-
loaded: typeof useLoad;
|
|
93
|
-
} | string;
|
|
94
|
-
import AbstractManager from "./AbstractManager.js";
|
|
95
|
-
declare namespace SERVICES_MAP {
|
|
96
|
-
export { useScroll as scrolled };
|
|
97
|
-
export { useResize as resized };
|
|
98
|
-
export { useRaf as ticked };
|
|
99
|
-
export { usePointer as moved };
|
|
100
|
-
export { useKey as keyed };
|
|
101
|
-
export { useLoad as loaded };
|
|
102
|
-
}
|
|
103
|
-
import useScroll from "../../services/scroll.js";
|
|
104
|
-
import useResize from "../../services/resize.js";
|
|
105
|
-
import useRaf from "../../services/raf.js";
|
|
106
|
-
import usePointer from "../../services/pointer.js";
|
|
107
|
-
import useKey from "../../services/key.js";
|
|
108
|
-
import useLoad from "../../services/load.js";
|
|
109
84
|
export {};
|
|
@@ -1,16 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var __publicField = (obj, key, value) => {
|
|
4
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
-
return value;
|
|
6
|
-
};
|
|
7
|
-
import usePointer from "../../services/pointer.js";
|
|
8
|
-
import useRaf from "../../services/raf.js";
|
|
9
|
-
import useResize from "../../services/resize.js";
|
|
10
|
-
import useScroll from "../../services/scroll.js";
|
|
11
|
-
import useKey from "../../services/key.js";
|
|
12
|
-
import useLoad from "../../services/load.js";
|
|
13
|
-
import AbstractManager from "./AbstractManager.js";
|
|
1
|
+
import { usePointer, useRaf, useResize, useScroll, useKey, useLoad } from "../../services/index.js";
|
|
2
|
+
import { AbstractManager } from "./AbstractManager.js";
|
|
14
3
|
import { noop, isFunction, isDefined, isDev } from "../../utils/index.js";
|
|
15
4
|
const SERVICES_MAP = {
|
|
16
5
|
scrolled: useScroll,
|
|
@@ -22,10 +11,7 @@ const SERVICES_MAP = {
|
|
|
22
11
|
};
|
|
23
12
|
const SERVICE_NAMES = Object.keys(SERVICES_MAP);
|
|
24
13
|
class ServicesManager extends AbstractManager {
|
|
25
|
-
|
|
26
|
-
super(...arguments);
|
|
27
|
-
__publicField(this, "__customServices", {});
|
|
28
|
-
}
|
|
14
|
+
__customServices = {};
|
|
29
15
|
get __services() {
|
|
30
16
|
return {
|
|
31
17
|
...this.__customServices,
|
|
@@ -49,25 +35,19 @@ class ServicesManager extends AbstractManager {
|
|
|
49
35
|
if (!(isFunction(this.__base[service]) || this.__base.__hasEvent(service)) || !this.__services[service]) {
|
|
50
36
|
return noop;
|
|
51
37
|
}
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
add(this.__base.$id, serviceHandler);
|
|
38
|
+
const serviceInstance = this.__services[service]();
|
|
39
|
+
serviceInstance.add(this.__base.$id, (...args) => {
|
|
40
|
+
this.__base.__callMethod(service, ...args);
|
|
41
|
+
});
|
|
58
42
|
return this.disable.bind(this, service);
|
|
59
43
|
}
|
|
60
44
|
enableAll() {
|
|
61
|
-
return Object.keys(this.__services).map(
|
|
62
|
-
(serviceName) => this.enable(serviceName)
|
|
63
|
-
);
|
|
45
|
+
return Object.keys(this.__services).map((serviceName) => this.enable(serviceName));
|
|
64
46
|
}
|
|
65
47
|
disableAll() {
|
|
66
|
-
Object.keys(this.__services).forEach(
|
|
67
|
-
(serviceName)
|
|
68
|
-
|
|
69
|
-
}
|
|
70
|
-
);
|
|
48
|
+
Object.keys(this.__services).forEach((serviceName) => {
|
|
49
|
+
this.disable(serviceName);
|
|
50
|
+
});
|
|
71
51
|
}
|
|
72
52
|
disable(service) {
|
|
73
53
|
if (!this.__services[service]) {
|
|
@@ -106,5 +86,6 @@ class ServicesManager extends AbstractManager {
|
|
|
106
86
|
}
|
|
107
87
|
}
|
|
108
88
|
export {
|
|
109
|
-
ServicesManager
|
|
89
|
+
ServicesManager
|
|
110
90
|
};
|
|
91
|
+
//# sourceMappingURL=ServicesManager.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/js-toolkit/Base/managers/ServicesManager.ts"],
|
|
4
|
+
"sourcesContent": ["import { usePointer, useRaf, useResize, useScroll, useKey, useLoad } from '../../services/index.js';\nimport type {\n PointerServiceInterface,\n RafServiceInterface,\n ResizeServiceInterface,\n ScrollServiceInterface,\n KeyServiceInterface,\n LoadServiceInterface,\n ServiceInterface,\n} from '../../services/index.js';\nimport { AbstractManager } from './AbstractManager.js';\nimport { noop, isFunction, isDefined, isDev } from '../../utils/index.js';\n\nconst SERVICES_MAP = {\n scrolled: useScroll,\n resized: useResize,\n ticked: useRaf,\n moved: usePointer,\n keyed: useKey,\n loaded: useLoad,\n};\n\nconst SERVICE_NAMES = Object.keys(SERVICES_MAP);\n\ntype Services = {\n scrolled: ScrollServiceInterface;\n resized: ResizeServiceInterface;\n ticked: RafServiceInterface;\n moved: PointerServiceInterface;\n keyed: KeyServiceInterface;\n loaded: LoadServiceInterface;\n} & Record<string, ServiceInterface<unknown>>;\n\ntype ServiceNames = keyof Services;\n\n/**\n * Services management for the Base class.\n *\n * @todo Add support for disabled services on mount when the method is defined.\n */\nexport class ServicesManager extends AbstractManager {\n /**\n * Holder for custom services.\n */\n __customServices: Record<string, <T>() => ServiceInterface<T>> = {};\n\n /**\n * Get registered services.\n */\n get __services() {\n return {\n ...this.__customServices,\n ...SERVICES_MAP,\n };\n }\n\n /**\n * Test if the given service is registered.\n */\n has(service: ServiceNames | string): boolean {\n if (\n !(\n (isFunction(this.__base[service]) ||\n // @ts-ignore\n this.__base.__hasEvent(service)) &&\n this.__services[service]\n )\n ) {\n return false;\n }\n\n const { has } = this.__services[service]();\n return has(this.__base.$id);\n }\n\n /**\n * Get a service props by name.\n */\n get<S extends ServiceNames | string>(service: S): ReturnType<Services[S]['props']> {\n // @ts-ignore\n return this.__services[service]().props();\n }\n\n /**\n * Init the given service and bind it to the given instance.\n *\n * @param {ServiceNames} service The name of the service.\n * @returns {() => void} A function to unbind the service.\n */\n enable(service: ServiceNames): () => void {\n if (this.has(service)) {\n return this.disable.bind(this, service);\n }\n\n if (\n // @ts-ignore\n !(isFunction(this.__base[service]) || this.__base.__hasEvent(service)) ||\n !this.__services[service]\n ) {\n return noop;\n }\n const serviceInstance = this.__services[service]();\n\n serviceInstance.add(this.__base.$id, (...args) => {\n this.__base.__callMethod(service, ...args);\n });\n\n return this.disable.bind(this, service);\n }\n\n /**\n * Enable all services and return methods to disable them.\n */\n enableAll() {\n return Object.keys(this.__services).map((serviceName) => this.enable(serviceName));\n }\n\n /**\n * Disable all services.\n *\n * @returns {void}\n */\n disableAll() {\n Object.keys(this.__services).forEach((serviceName) => {\n this.disable(serviceName);\n });\n }\n\n /**\n * Disable a service.\n */\n disable(service: ServiceNames) {\n if (!this.__services[service]) {\n return;\n }\n\n const { remove } = this.__services[service]();\n remove(this.__base.$id);\n }\n\n /**\n * Toggle a service.\n */\n toggle(service: ServiceNames, force?: boolean) {\n if (isDefined(force)) {\n if (force && !this.has(service)) {\n this.enable(service);\n }\n\n if (!force && this.has(service)) {\n this.disable(service);\n }\n } else if (this.has(service)) {\n this.disable(service);\n } else {\n this.enable(service);\n }\n }\n\n /**\n * Register a new service to be enabled/disabled.\n *\n * @param {string} name\n * The name of the service hook.\n * @param {<T>(...args:unknown[]) => ServiceInterface<T>} useFunction\n * The `use...` function for the service.\n */\n register(name: string, useFunction: <T>(...args: unknown[]) => ServiceInterface<T>) {\n this.__customServices[name] = useFunction;\n this.__base.__addEmits(name);\n }\n\n /**\n * Unregister a new service to be enabled disabled.\n *\n * @param {string} name\n * The name of the service hook.\n */\n unregister(name: string) {\n if (SERVICE_NAMES.includes(name)) {\n if (isDev) {\n throw new Error(`[ServicesManager] The \\`${name}\\` core service can not be unregistered.`);\n }\n return;\n }\n\n this.__base.__removeEmits(name);\n delete this.__customServices[name];\n }\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,YAAY,QAAQ,WAAW,WAAW,QAAQ,eAAe;AAU1E,SAAS,uBAAuB;AAChC,SAAS,MAAM,YAAY,WAAW,aAAa;AAEnD,MAAM,eAAe;AAAA,EACnB,UAAU;AAAA,EACV,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,OAAO;AAAA,EACP,QAAQ;AACV;AAEA,MAAM,gBAAgB,OAAO,KAAK,YAAY;AAkBvC,MAAM,wBAAwB,gBAAgB;AAAA,EAInD,mBAAiE,CAAC;AAAA,EAKlE,IAAI,aAAa;AACf,WAAO;AAAA,MACL,GAAG,KAAK;AAAA,MACR,GAAG;AAAA,IACL;AAAA,EACF;AAAA,EAKA,IAAI,SAAyC;AAC3C,QACE,GACG,WAAW,KAAK,OAAO,QAAQ,KAE9B,KAAK,OAAO,WAAW,OAAO,MAChC,KAAK,WAAW,WAElB;AACA,aAAO;AAAA,IACT;AAEA,UAAM,EAAE,IAAI,IAAI,KAAK,WAAW,SAAS;AACzC,WAAO,IAAI,KAAK,OAAO,GAAG;AAAA,EAC5B;AAAA,EAKA,IAAqC,SAA8C;AAEjF,WAAO,KAAK,WAAW,SAAS,EAAE,MAAM;AAAA,EAC1C;AAAA,EAQA,OAAO,SAAmC;AACxC,QAAI,KAAK,IAAI,OAAO,GAAG;AACrB,aAAO,KAAK,QAAQ,KAAK,MAAM,OAAO;AAAA,IACxC;AAEA,QAEE,EAAE,WAAW,KAAK,OAAO,QAAQ,KAAK,KAAK,OAAO,WAAW,OAAO,MACpE,CAAC,KAAK,WAAW,UACjB;AACA,aAAO;AAAA,IACT;AACA,UAAM,kBAAkB,KAAK,WAAW,SAAS;AAEjD,oBAAgB,IAAI,KAAK,OAAO,KAAK,IAAI,SAAS;AAChD,WAAK,OAAO,aAAa,SAAS,GAAG,IAAI;AAAA,IAC3C,CAAC;AAED,WAAO,KAAK,QAAQ,KAAK,MAAM,OAAO;AAAA,EACxC;AAAA,EAKA,YAAY;AACV,WAAO,OAAO,KAAK,KAAK,UAAU,EAAE,IAAI,CAAC,gBAAgB,KAAK,OAAO,WAAW,CAAC;AAAA,EACnF;AAAA,EAOA,aAAa;AACX,WAAO,KAAK,KAAK,UAAU,EAAE,QAAQ,CAAC,gBAAgB;AACpD,WAAK,QAAQ,WAAW;AAAA,IAC1B,CAAC;AAAA,EACH;AAAA,EAKA,QAAQ,SAAuB;AAC7B,QAAI,CAAC,KAAK,WAAW,UAAU;AAC7B;AAAA,IACF;AAEA,UAAM,EAAE,OAAO,IAAI,KAAK,WAAW,SAAS;AAC5C,WAAO,KAAK,OAAO,GAAG;AAAA,EACxB;AAAA,EAKA,OAAO,SAAuB,OAAiB;AAC7C,QAAI,UAAU,KAAK,GAAG;AACpB,UAAI,SAAS,CAAC,KAAK,IAAI,OAAO,GAAG;AAC/B,aAAK,OAAO,OAAO;AAAA,MACrB;AAEA,UAAI,CAAC,SAAS,KAAK,IAAI,OAAO,GAAG;AAC/B,aAAK,QAAQ,OAAO;AAAA,MACtB;AAAA,IACF,WAAW,KAAK,IAAI,OAAO,GAAG;AAC5B,WAAK,QAAQ,OAAO;AAAA,IACtB,OAAO;AACL,WAAK,OAAO,OAAO;AAAA,IACrB;AAAA,EACF;AAAA,EAUA,SAAS,MAAc,aAA6D;AAClF,SAAK,iBAAiB,QAAQ;AAC9B,SAAK,OAAO,WAAW,IAAI;AAAA,EAC7B;AAAA,EAQA,WAAW,MAAc;AACvB,QAAI,cAAc,SAAS,IAAI,GAAG;AAChC,UAAI,OAAO;AACT,cAAM,IAAI,MAAM,2BAA2B,8CAA8C;AAAA,MAC3F;AACA;AAAA,IACF;AAEA,SAAK,OAAO,cAAc,IAAI;AAC9B,WAAO,KAAK,iBAAiB;AAAA,EAC/B;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/Base/types.cjs
CHANGED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/js-toolkit/Base/types.ts"],
|
|
4
|
+
"sourcesContent": ["import type { Base, BaseProps } from './index.js';\nimport type {\n KeyServiceProps,\n LoadServiceProps,\n PointerServiceProps,\n RafServiceProps,\n ResizeServiceProps,\n ScrollServiceProps,\n} from '../services/index.js';\n\nexport interface BaseInterface {\n /**\n * Mounted hook.\n */\n mounted?(): void;\n /**\n * Updated hook.\n */\n updated?(): void;\n /**\n * Destroyed hook.\n */\n destroyed?(): void;\n /**\n * Terminated hook.\n */\n terminated?(): void;\n /**\n * Key service, executed when a keyboard key is pressed or released.\n */\n keyed?(props: KeyServiceProps): void;\n /**\n * Load service, executed when the window `load` event is fired.\n */\n loaded?(props: LoadServiceProps): void;\n /**\n * Pointer service, executed when the pointer is moving, pressed or released.\n */\n moved?(props: PointerServiceProps): void;\n /**\n * Raf service, executed on each rendered frame.\n */\n ticked?(props: RafServiceProps): void;\n /**\n * Resize service, executed when the window is resized.\n */\n resized?(props: ResizeServiceProps): void;\n /**\n * Scroll service, executed when the document is scrolled.\n */\n scrolled?(props: ScrollServiceProps): void;\n}\n\nexport type BaseDecorator<S extends BaseInterface, T extends Base, U extends BaseProps = BaseProps> = {\n new <W extends BaseProps = BaseProps>(...args: unknown[]): S & T & Base<W & U>;\n} & Partial<Pick<T, keyof T>> & Pick<typeof Base, keyof typeof Base>;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/Base/types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=types.js.map
|
package/Base/utils.cjs
CHANGED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/js-toolkit/Base/utils.ts"],
|
|
4
|
+
"sourcesContent": ["import { isArray, isDefined, isDev } from '../utils/index.js';\nimport type { Base, BaseConfig } from './index.js';\n\n/**\n * Get a list of elements based on the name of a component.\n *\n * @param {string} nameOrSelector\n * The name or selector to used for this component.\n * @param {HTMLElement|Document} element\n * The root element on which to query the selector, defaults to `document`.\n * @returns {Array<HTMLElement>}\n * A list of elements on which the component should be mounted.\n */\nexport function getComponentElements(nameOrSelector:string, element:HTMLElement | Document = document):HTMLElement[] {\n const selector = `[data-component=\"${nameOrSelector}\"]`;\n let elements = [];\n\n try {\n elements = Array.from(element.querySelectorAll(selector));\n // eslint-disable-next-line no-empty\n } catch {}\n\n // If no child component found with the default selector, try a classic DOM selector\n if (elements.length === 0) {\n elements = Array.from(element.querySelectorAll(nameOrSelector));\n }\n\n return elements;\n}\n\n/**\n * Test if an event is defined in the given config.\n */\nexport function eventIsDefinedInConfig(event:string, config: BaseConfig):boolean {\n return isArray(config.emits) && config.emits.includes(event);\n}\n\n/**\n * Test if an event can be used on the given element.\n */\nexport function eventIsNative(event:string, element:HTMLElement):boolean {\n return isDefined(element[`on${event}`]);\n}\n\n/**\n * Get the target of a given event.\n */\nexport function getEventTarget(instance:Base, event:string, config:BaseConfig):Base | Base['$el'] {\n if (eventIsDefinedInConfig(event, config)) {\n return instance;\n }\n\n if (eventIsNative(event, instance.$el)) {\n return instance.$el;\n }\n\n if (isDev) {\n console.warn(\n `[${config.name}]`,\n `The \"${event}\" event is missing from the configuration and is not a native`,\n `event for the root element of type \\`${instance.$el.constructor.name}\\`.`,\n );\n }\n\n return instance;\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA0C;AAanC,SAAS,qBAAqB,gBAAuB,UAAiC,UAAwB;AACnH,QAAM,WAAW,oBAAoB;AACrC,MAAI,WAAW,CAAC;AAEhB,MAAI;AACF,eAAW,MAAM,KAAK,QAAQ,iBAAiB,QAAQ,CAAC;AAAA,EAE1D,QAAE;AAAA,EAAO;AAGT,MAAI,SAAS,WAAW,GAAG;AACzB,eAAW,MAAM,KAAK,QAAQ,iBAAiB,cAAc,CAAC;AAAA,EAChE;AAEA,SAAO;AACT;AAKO,SAAS,uBAAuB,OAAc,QAA4B;AAC/E,aAAO,sBAAQ,OAAO,KAAK,KAAK,OAAO,MAAM,SAAS,KAAK;AAC7D;AAKO,SAAS,cAAc,OAAc,SAA6B;AACvE,aAAO,wBAAU,QAAQ,KAAK,QAAQ;AACxC;AAKO,SAAS,eAAe,UAAe,OAAc,QAAsC;AAChG,MAAI,uBAAuB,OAAO,MAAM,GAAG;AACzC,WAAO;AAAA,EACT;AAEA,MAAI,cAAc,OAAO,SAAS,GAAG,GAAG;AACtC,WAAO,SAAS;AAAA,EAClB;AAEA,MAAI,oBAAO;AACT,YAAQ;AAAA,MACN,IAAI,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,wCAAwC,SAAS,IAAI,YAAY;AAAA,IACnE;AAAA,EACF;AAEA,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/Base/utils.js
CHANGED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/js-toolkit/Base/utils.ts"],
|
|
4
|
+
"sourcesContent": ["import { isArray, isDefined, isDev } from '../utils/index.js';\nimport type { Base, BaseConfig } from './index.js';\n\n/**\n * Get a list of elements based on the name of a component.\n *\n * @param {string} nameOrSelector\n * The name or selector to used for this component.\n * @param {HTMLElement|Document} element\n * The root element on which to query the selector, defaults to `document`.\n * @returns {Array<HTMLElement>}\n * A list of elements on which the component should be mounted.\n */\nexport function getComponentElements(nameOrSelector:string, element:HTMLElement | Document = document):HTMLElement[] {\n const selector = `[data-component=\"${nameOrSelector}\"]`;\n let elements = [];\n\n try {\n elements = Array.from(element.querySelectorAll(selector));\n // eslint-disable-next-line no-empty\n } catch {}\n\n // If no child component found with the default selector, try a classic DOM selector\n if (elements.length === 0) {\n elements = Array.from(element.querySelectorAll(nameOrSelector));\n }\n\n return elements;\n}\n\n/**\n * Test if an event is defined in the given config.\n */\nexport function eventIsDefinedInConfig(event:string, config: BaseConfig):boolean {\n return isArray(config.emits) && config.emits.includes(event);\n}\n\n/**\n * Test if an event can be used on the given element.\n */\nexport function eventIsNative(event:string, element:HTMLElement):boolean {\n return isDefined(element[`on${event}`]);\n}\n\n/**\n * Get the target of a given event.\n */\nexport function getEventTarget(instance:Base, event:string, config:BaseConfig):Base | Base['$el'] {\n if (eventIsDefinedInConfig(event, config)) {\n return instance;\n }\n\n if (eventIsNative(event, instance.$el)) {\n return instance.$el;\n }\n\n if (isDev) {\n console.warn(\n `[${config.name}]`,\n `The \"${event}\" event is missing from the configuration and is not a native`,\n `event for the root element of type \\`${instance.$el.constructor.name}\\`.`,\n );\n }\n\n return instance;\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,SAAS,WAAW,aAAa;AAanC,SAAS,qBAAqB,gBAAuB,UAAiC,UAAwB;AACnH,QAAM,WAAW,oBAAoB;AACrC,MAAI,WAAW,CAAC;AAEhB,MAAI;AACF,eAAW,MAAM,KAAK,QAAQ,iBAAiB,QAAQ,CAAC;AAAA,EAE1D,QAAE;AAAA,EAAO;AAGT,MAAI,SAAS,WAAW,GAAG;AACzB,eAAW,MAAM,KAAK,QAAQ,iBAAiB,cAAc,CAAC;AAAA,EAChE;AAEA,SAAO;AACT;AAKO,SAAS,uBAAuB,OAAc,QAA4B;AAC/E,SAAO,QAAQ,OAAO,KAAK,KAAK,OAAO,MAAM,SAAS,KAAK;AAC7D;AAKO,SAAS,cAAc,OAAc,SAA6B;AACvE,SAAO,UAAU,QAAQ,KAAK,QAAQ;AACxC;AAKO,SAAS,eAAe,UAAe,OAAc,QAAsC;AAChG,MAAI,uBAAuB,OAAO,MAAM,GAAG;AACzC,WAAO;AAAA,EACT;AAEA,MAAI,cAAc,OAAO,SAAS,GAAG,GAAG;AACtC,WAAO,SAAS;AAAA,EAClB;AAEA,MAAI,OAAO;AACT,YAAQ;AAAA,MACN,IAAI,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,wCAAwC,SAAS,IAAI,YAAY;AAAA,IACnE;AAAA,EACF;AAEA,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/decorators/index.cjs
CHANGED
|
@@ -27,3 +27,4 @@ __reExport(decorators_exports, require("./withResponsiveOptions.cjs"), module.ex
|
|
|
27
27
|
__reExport(decorators_exports, require("./withScrolledInView.cjs"), module.exports);
|
|
28
28
|
__reExport(decorators_exports, require("./withVue2.cjs"), module.exports);
|
|
29
29
|
if (module.exports.default) module.exports = module.exports.default;
|
|
30
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/js-toolkit/decorators/index.ts"],
|
|
4
|
+
"sourcesContent": ["export * from './withBreakpointManager.js';\nexport * from './withBreakpointObserver.js';\nexport * from './withDrag.js';\nexport * from './withExtraConfig.js';\nexport * from './withFreezedOptions.js';\nexport * from './withIntersectionObserver.js';\nexport * from './withMountWhenInView.js';\nexport * from './withResponsiveOptions.js';\nexport * from './withScrolledInView.js';\nexport * from './withVue2.js';\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,+BAAc,wCAAd;AACA,+BAAc,yCADd;AAEA,+BAAc,2BAFd;AAGA,+BAAc,kCAHd;AAIA,+BAAc,qCAJd;AAKA,+BAAc,2CALd;AAMA,+BAAc,sCANd;AAOA,+BAAc,wCAPd;AAQA,+BAAc,qCARd;AASA,+BAAc,2BATd;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/decorators/index.js
CHANGED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/js-toolkit/decorators/index.ts"],
|
|
4
|
+
"sourcesContent": ["export * from './withBreakpointManager.js';\nexport * from './withBreakpointObserver.js';\nexport * from './withDrag.js';\nexport * from './withExtraConfig.js';\nexport * from './withFreezedOptions.js';\nexport * from './withIntersectionObserver.js';\nexport * from './withMountWhenInView.js';\nexport * from './withResponsiveOptions.js';\nexport * from './withScrolledInView.js';\nexport * from './withVue2.js';\n"],
|
|
5
|
+
"mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/js-toolkit/decorators/withBreakpointManager.ts"],
|
|
4
|
+
"sourcesContent": ["import type { BaseDecorator, BaseInterface } from '../Base/types.js';\nimport type { Base, BaseConstructor, BaseProps } from '../Base/index.js';\nimport { useResize } from '../services/index.js';\nimport { isDev, isArray } from '../utils/index.js';\n\n/**\n * Test the breakpoins of the given Base instance and return the hook to call.\n */\nfunction testBreakpoints(breakpoints: Array<[string[], Base]>) {\n const { breakpoint } = useResize().props();\n breakpoints.forEach(([breakpointKeys, instance]) => {\n if (breakpointKeys.includes(breakpoint) && !instance.$isMounted) {\n setTimeout(() => instance.$mount(), 0);\n } else if (!breakpointKeys.includes(breakpoint) && instance.$isMounted) {\n instance.$destroy();\n }\n });\n}\n\n/**\n * Prepare the components.\n */\nfunction mountComponents(\n instance: Base,\n breakpoints: Array<[string, BaseConstructor]>,\n): Array<[string[], Base]> {\n return breakpoints.map(([bk, ComponentClass]) => {\n const child = new ComponentClass(instance.$el);\n Object.defineProperty(child, '$parent', { get: () => instance.$parent });\n return [bk.split(' '), child];\n });\n}\n\n/**\n * A cache object to hold each Base sub-instances.\n */\nconst instances:WeakMap<Base, Array<[string[], Base]>> = new WeakMap();\n\n/**\n * BreakpointManager class.\n */\nexport function withBreakpointManager<S extends Base>(\n BaseClass: typeof Base,\n breakpoints: Array<[string, BaseConstructor<Base>]>,\n): BaseDecorator<BaseInterface, S> {\n if (!isArray(breakpoints)) {\n if (isDev) {\n throw new Error('[withBreakpointManager] The `breakpoints` parameter must be an array.');\n }\n\n // @ts-ignore\n return BaseClass;\n }\n\n if (breakpoints.length < 2) {\n if (isDev) {\n throw new Error('[withBreakpointManager] You must define at least 2 breakpoints.');\n }\n\n // @ts-ignore\n return BaseClass;\n }\n\n const { add, props } = useResize();\n\n // Do nothing if no breakpoint has been defined.\n // @see https://js-toolkit.meta.fr/services/resize.html#breakpoint\n if (!props().breakpoint) {\n if (isDev) {\n throw new Error('The `BreakpointManager` class requires breakpoints to be defined.');\n }\n\n // @ts-ignore\n return BaseClass;\n }\n\n /**\n * Class.\n */\n class WithBreakpointManager<\n T extends BaseProps = BaseProps,\n > extends BaseClass<T> {\n /**\n * Watch for the document resize to test the breakpoints.\n */\n constructor(element: HTMLElement) {\n super(element);\n\n if (!instances.has(this)) {\n instances.set(this, mountComponents(this, breakpoints));\n }\n\n add(`BreakpointManager-${this.$id}`, () => {\n testBreakpoints(instances.get(this));\n });\n }\n\n /**\n * Override the default $mount method to prevent component's from being\n * mounted when they should not.\n */\n $mount(): this {\n super.$mount();\n\n testBreakpoints(instances.get(this));\n\n return this;\n }\n\n /**\n * Destroy all instances when the main one is destroyed.\n */\n $destroy():this {\n if (isArray(instances.get(this))) {\n instances.get(this).forEach(([, instance]) => {\n instance.$destroy();\n });\n }\n\n return super.$destroy();\n }\n }\n\n // @ts-ignore\n return WithBreakpointManager;\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,sBAA0B;AAC1B,mBAA+B;AAK/B,SAAS,gBAAgB,aAAsC;AAC7D,QAAM,EAAE,WAAW,QAAI,2BAAU,EAAE,MAAM;AACzC,cAAY,QAAQ,CAAC,CAAC,gBAAgB,QAAQ,MAAM;AAClD,QAAI,eAAe,SAAS,UAAU,KAAK,CAAC,SAAS,YAAY;AAC/D,iBAAW,MAAM,SAAS,OAAO,GAAG,CAAC;AAAA,IACvC,WAAW,CAAC,eAAe,SAAS,UAAU,KAAK,SAAS,YAAY;AACtE,eAAS,SAAS;AAAA,IACpB;AAAA,EACF,CAAC;AACH;AAKA,SAAS,gBACP,UACA,aACyB;AACzB,SAAO,YAAY,IAAI,CAAC,CAAC,IAAI,cAAc,MAAM;AAC/C,UAAM,QAAQ,IAAI,eAAe,SAAS,GAAG;AAC7C,WAAO,eAAe,OAAO,WAAW,EAAE,KAAK,MAAM,SAAS,QAAQ,CAAC;AACvE,WAAO,CAAC,GAAG,MAAM,GAAG,GAAG,KAAK;AAAA,EAC9B,CAAC;AACH;AAKA,IAAM,YAAmD,oBAAI,QAAQ;AAK9D,SAAS,sBACd,WACA,aACiC;AACjC,MAAI,KAAC,sBAAQ,WAAW,GAAG;AACzB,QAAI,oBAAO;AACT,YAAM,IAAI,MAAM,uEAAuE;AAAA,IACzF;AAGA,WAAO;AAAA,EACT;AAEA,MAAI,YAAY,SAAS,GAAG;AAC1B,QAAI,oBAAO;AACT,YAAM,IAAI,MAAM,iEAAiE;AAAA,IACnF;AAGA,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,KAAK,MAAM,QAAI,2BAAU;AAIjC,MAAI,CAAC,MAAM,EAAE,YAAY;AACvB,QAAI,oBAAO;AACT,YAAM,IAAI,MAAM,mEAAmE;AAAA,IACrF;AAGA,WAAO;AAAA,EACT;AAKA,QAAM,8BAEI,UAAa;AAAA,IAIrB,YAAY,SAAsB;AAChC,YAAM,OAAO;AAEb,UAAI,CAAC,UAAU,IAAI,IAAI,GAAG;AACxB,kBAAU,IAAI,MAAM,gBAAgB,MAAM,WAAW,CAAC;AAAA,MACxD;AAEA,UAAI,qBAAqB,KAAK,OAAO,MAAM;AACzC,wBAAgB,UAAU,IAAI,IAAI,CAAC;AAAA,MACrC,CAAC;AAAA,IACH;AAAA,IAMA,SAAe;AACb,YAAM,OAAO;AAEb,sBAAgB,UAAU,IAAI,IAAI,CAAC;AAEnC,aAAO;AAAA,IACT;AAAA,IAKA,WAAgB;AACd,cAAI,sBAAQ,UAAU,IAAI,IAAI,CAAC,GAAG;AAChC,kBAAU,IAAI,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,MAAM;AAC5C,mBAAS,SAAS;AAAA,QACpB,CAAC;AAAA,MACH;AAEA,aAAO,MAAM,SAAS;AAAA,IACxB;AAAA,EACF;AAGA,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/js-toolkit/decorators/withBreakpointManager.ts"],
|
|
4
|
+
"sourcesContent": ["import type { BaseDecorator, BaseInterface } from '../Base/types.js';\nimport type { Base, BaseConstructor, BaseProps } from '../Base/index.js';\nimport { useResize } from '../services/index.js';\nimport { isDev, isArray } from '../utils/index.js';\n\n/**\n * Test the breakpoins of the given Base instance and return the hook to call.\n */\nfunction testBreakpoints(breakpoints: Array<[string[], Base]>) {\n const { breakpoint } = useResize().props();\n breakpoints.forEach(([breakpointKeys, instance]) => {\n if (breakpointKeys.includes(breakpoint) && !instance.$isMounted) {\n setTimeout(() => instance.$mount(), 0);\n } else if (!breakpointKeys.includes(breakpoint) && instance.$isMounted) {\n instance.$destroy();\n }\n });\n}\n\n/**\n * Prepare the components.\n */\nfunction mountComponents(\n instance: Base,\n breakpoints: Array<[string, BaseConstructor]>,\n): Array<[string[], Base]> {\n return breakpoints.map(([bk, ComponentClass]) => {\n const child = new ComponentClass(instance.$el);\n Object.defineProperty(child, '$parent', { get: () => instance.$parent });\n return [bk.split(' '), child];\n });\n}\n\n/**\n * A cache object to hold each Base sub-instances.\n */\nconst instances:WeakMap<Base, Array<[string[], Base]>> = new WeakMap();\n\n/**\n * BreakpointManager class.\n */\nexport function withBreakpointManager<S extends Base>(\n BaseClass: typeof Base,\n breakpoints: Array<[string, BaseConstructor<Base>]>,\n): BaseDecorator<BaseInterface, S> {\n if (!isArray(breakpoints)) {\n if (isDev) {\n throw new Error('[withBreakpointManager] The `breakpoints` parameter must be an array.');\n }\n\n // @ts-ignore\n return BaseClass;\n }\n\n if (breakpoints.length < 2) {\n if (isDev) {\n throw new Error('[withBreakpointManager] You must define at least 2 breakpoints.');\n }\n\n // @ts-ignore\n return BaseClass;\n }\n\n const { add, props } = useResize();\n\n // Do nothing if no breakpoint has been defined.\n // @see https://js-toolkit.meta.fr/services/resize.html#breakpoint\n if (!props().breakpoint) {\n if (isDev) {\n throw new Error('The `BreakpointManager` class requires breakpoints to be defined.');\n }\n\n // @ts-ignore\n return BaseClass;\n }\n\n /**\n * Class.\n */\n class WithBreakpointManager<\n T extends BaseProps = BaseProps,\n > extends BaseClass<T> {\n /**\n * Watch for the document resize to test the breakpoints.\n */\n constructor(element: HTMLElement) {\n super(element);\n\n if (!instances.has(this)) {\n instances.set(this, mountComponents(this, breakpoints));\n }\n\n add(`BreakpointManager-${this.$id}`, () => {\n testBreakpoints(instances.get(this));\n });\n }\n\n /**\n * Override the default $mount method to prevent component's from being\n * mounted when they should not.\n */\n $mount(): this {\n super.$mount();\n\n testBreakpoints(instances.get(this));\n\n return this;\n }\n\n /**\n * Destroy all instances when the main one is destroyed.\n */\n $destroy():this {\n if (isArray(instances.get(this))) {\n instances.get(this).forEach(([, instance]) => {\n instance.$destroy();\n });\n }\n\n return super.$destroy();\n }\n }\n\n // @ts-ignore\n return WithBreakpointManager;\n}\n"],
|
|
5
|
+
"mappings": "AAEA,SAAS,iBAAiB;AAC1B,SAAS,OAAO,eAAe;AAK/B,SAAS,gBAAgB,aAAsC;AAC7D,QAAM,EAAE,WAAW,IAAI,UAAU,EAAE,MAAM;AACzC,cAAY,QAAQ,CAAC,CAAC,gBAAgB,QAAQ,MAAM;AAClD,QAAI,eAAe,SAAS,UAAU,KAAK,CAAC,SAAS,YAAY;AAC/D,iBAAW,MAAM,SAAS,OAAO,GAAG,CAAC;AAAA,IACvC,WAAW,CAAC,eAAe,SAAS,UAAU,KAAK,SAAS,YAAY;AACtE,eAAS,SAAS;AAAA,IACpB;AAAA,EACF,CAAC;AACH;AAKA,SAAS,gBACP,UACA,aACyB;AACzB,SAAO,YAAY,IAAI,CAAC,CAAC,IAAI,cAAc,MAAM;AAC/C,UAAM,QAAQ,IAAI,eAAe,SAAS,GAAG;AAC7C,WAAO,eAAe,OAAO,WAAW,EAAE,KAAK,MAAM,SAAS,QAAQ,CAAC;AACvE,WAAO,CAAC,GAAG,MAAM,GAAG,GAAG,KAAK;AAAA,EAC9B,CAAC;AACH;AAKA,MAAM,YAAmD,oBAAI,QAAQ;AAK9D,SAAS,sBACd,WACA,aACiC;AACjC,MAAI,CAAC,QAAQ,WAAW,GAAG;AACzB,QAAI,OAAO;AACT,YAAM,IAAI,MAAM,uEAAuE;AAAA,IACzF;AAGA,WAAO;AAAA,EACT;AAEA,MAAI,YAAY,SAAS,GAAG;AAC1B,QAAI,OAAO;AACT,YAAM,IAAI,MAAM,iEAAiE;AAAA,IACnF;AAGA,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,KAAK,MAAM,IAAI,UAAU;AAIjC,MAAI,CAAC,MAAM,EAAE,YAAY;AACvB,QAAI,OAAO;AACT,YAAM,IAAI,MAAM,mEAAmE;AAAA,IACrF;AAGA,WAAO;AAAA,EACT;AAKA,QAAM,8BAEI,UAAa;AAAA,IAIrB,YAAY,SAAsB;AAChC,YAAM,OAAO;AAEb,UAAI,CAAC,UAAU,IAAI,IAAI,GAAG;AACxB,kBAAU,IAAI,MAAM,gBAAgB,MAAM,WAAW,CAAC;AAAA,MACxD;AAEA,UAAI,qBAAqB,KAAK,OAAO,MAAM;AACzC,wBAAgB,UAAU,IAAI,IAAI,CAAC;AAAA,MACrC,CAAC;AAAA,IACH;AAAA,IAMA,SAAe;AACb,YAAM,OAAO;AAEb,sBAAgB,UAAU,IAAI,IAAI,CAAC;AAEnC,aAAO;AAAA,IACT;AAAA,IAKA,WAAgB;AACd,UAAI,QAAQ,UAAU,IAAI,IAAI,CAAC,GAAG;AAChC,kBAAU,IAAI,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,MAAM;AAC5C,mBAAS,SAAS;AAAA,QACpB,CAAC;AAAA,MACH;AAEA,aAAO,MAAM,SAAS;AAAA,IACxB;AAAA,EACF;AAGA,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
5
|
var __export = (target, all) => {
|
|
7
6
|
for (var name in all)
|
|
8
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -16,10 +15,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
15
|
return to;
|
|
17
16
|
};
|
|
18
17
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var __publicField = (obj, key, value) => {
|
|
20
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
21
|
-
return value;
|
|
22
|
-
};
|
|
23
18
|
|
|
24
19
|
// packages/js-toolkit/decorators/withBreakpointObserver.ts
|
|
25
20
|
var withBreakpointObserver_exports = {};
|
|
@@ -67,8 +62,16 @@ function addToResize(key, instance) {
|
|
|
67
62
|
}
|
|
68
63
|
}
|
|
69
64
|
function withBreakpointObserver(BaseClass) {
|
|
70
|
-
var _a;
|
|
71
65
|
class WithBreakpointObserver extends BaseClass {
|
|
66
|
+
static config = {
|
|
67
|
+
...BaseClass.config,
|
|
68
|
+
name: `${BaseClass.config.name}WithBreakpointObserver`,
|
|
69
|
+
options: {
|
|
70
|
+
...BaseClass.config?.options || {},
|
|
71
|
+
activeBreakpoints: String,
|
|
72
|
+
inactiveBreakpoints: String
|
|
73
|
+
}
|
|
74
|
+
};
|
|
72
75
|
constructor(element) {
|
|
73
76
|
super(element);
|
|
74
77
|
const { remove, props } = (0, import_services.useResize)();
|
|
@@ -109,15 +112,7 @@ function withBreakpointObserver(BaseClass) {
|
|
|
109
112
|
return this;
|
|
110
113
|
}
|
|
111
114
|
}
|
|
112
|
-
__publicField(WithBreakpointObserver, "config", {
|
|
113
|
-
...BaseClass.config,
|
|
114
|
-
name: `${BaseClass.config.name}WithBreakpointObserver`,
|
|
115
|
-
options: {
|
|
116
|
-
...((_a = BaseClass.config) == null ? void 0 : _a.options) || {},
|
|
117
|
-
activeBreakpoints: String,
|
|
118
|
-
inactiveBreakpoints: String
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
115
|
return WithBreakpointObserver;
|
|
122
116
|
}
|
|
123
117
|
if (module.exports.default) module.exports = module.exports.default;
|
|
118
|
+
//# sourceMappingURL=withBreakpointObserver.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../packages/js-toolkit/decorators/withBreakpointObserver.ts"],
|
|
4
|
+
"sourcesContent": ["import type { BaseDecorator, BaseInterface } from '../Base/types.js';\nimport type { Base, BaseProps, BaseConfig } from '../Base/index.js';\nimport { useResize } from '../services/index.js';\nimport { isDev } from '../utils/index.js';\n\nexport interface WithBreakpointObserverProps extends BaseProps {\n $options: {\n activeBreakpoints?: string;\n inactiveBreakpoints?: string;\n };\n}\n\nexport interface WithBreakpointObserverInterface extends BaseInterface {\n $mount():this;\n}\n\n/**\n * Test the breakpoins of the given Base instance and return the hook to call.\n *\n * @param {Base<WithBreakpointObserverProps>} instance The component's instance.\n * @param {string} [breakpoint] The breakpoint to test.\n * @returns {string} The action to trigger.\n */\nfunction testBreakpoints(\n instance: Base<WithBreakpointObserverProps>,\n breakpoint: string = useResize().props().breakpoint,\n): string {\n const { activeBreakpoints, inactiveBreakpoints } = instance.$options;\n const isInActiveBreakpoint =\n activeBreakpoints && activeBreakpoints.split(' ').includes(breakpoint);\n const isInInactiveBreakpoint =\n inactiveBreakpoints && inactiveBreakpoints.split(' ').includes(breakpoint);\n\n if (\n (activeBreakpoints && isInActiveBreakpoint) ||\n (inactiveBreakpoints && !isInInactiveBreakpoint)\n ) {\n return '$mount';\n }\n\n return '$destroy';\n}\n\n/**\n * Test if the given instance is configured for breakpoints.\n * @param {Base<WithBreakpointObserverProps>} instance A Base class instance.\n * @returns {boolean} True if configured correctly, false otherwise.\n */\nfunction hasBreakpointConfiguration(instance: Base<WithBreakpointObserverProps>): boolean {\n const { activeBreakpoints, inactiveBreakpoints } = instance.$options;\n return Boolean(activeBreakpoints || inactiveBreakpoints);\n}\n\n/**\n * Test if the given instance has a conflicting configuration for breakpoints.\n * @param {Base<WithBreakpointObserverProps>} instance A Base class instance.\n * @returns {void}\n */\nfunction testConflictingBreakpointConfiguration(\n instance: Base<WithBreakpointObserverProps>,\n): void {\n const { activeBreakpoints, inactiveBreakpoints, name } = instance.$options;\n if (activeBreakpoints && inactiveBreakpoints) {\n throw new Error(\n `[${name}] Incorrect configuration: the \\`activeBreakpoints\\` and \\`inactiveBreakpoints\\` are not compatible.`,\n );\n }\n}\n\n/**\n * Add the current instance to the resize service.\n * @param {string} key The key for the resize service callback.\n * @param {Base} instance The instance to observe.\n */\nfunction addToResize(key, instance) {\n if (isDev) {\n testConflictingBreakpointConfiguration(instance);\n }\n\n const { add, has } = useResize();\n\n if (!has(key)) {\n add(key, ({ breakpoint }) => {\n const action = testBreakpoints(instance, breakpoint);\n\n // Always destroy before mounting\n if (action === '$destroy' && instance.$isMounted) {\n instance[action]();\n } else if (action === '$mount' && !instance.$isMounted) {\n setTimeout(() => instance[action](), 0);\n }\n });\n }\n}\n\n/**\n * BreakpointObserver class.\n */\nexport function withBreakpointObserver<S extends Base>(\n BaseClass: typeof Base,\n): BaseDecorator<WithBreakpointObserverInterface, S, WithBreakpointObserverProps> {\n /**\n * Class.\n */\n class WithBreakpointObserver<T extends BaseProps = BaseProps> extends BaseClass<\n T & WithBreakpointObserverProps\n > {\n /**\n * Config.\n */\n static config:BaseConfig = {\n ...BaseClass.config,\n name: `${BaseClass.config.name}WithBreakpointObserver`,\n options: {\n ...(BaseClass.config?.options || {}),\n activeBreakpoints: String,\n inactiveBreakpoints: String,\n },\n };\n\n /**\n * Watch for the document resize to test the breakpoints.\n */\n constructor(element:HTMLElement) {\n super(element);\n\n const { remove, props } = useResize();\n const { name } = this.$options;\n\n // Do nothing if no breakpoint has been defined.\n // @see https://js-toolkit.meta.fr/services/resize.html#breakpoint\n if (!props().breakpoint) {\n if (isDev) {\n throw new Error(\n `[${name}] The \\`BreakpointObserver\\` class requires breakpoints to be defined.`,\n );\n }\n return;\n }\n\n const key = `BreakpointObserver-${this.$id}`;\n\n // Watch change on the `data-options` attribute to emit the `set:options` event.\n const mutationObserver = new MutationObserver(([mutation]) => {\n if (\n mutation.type === 'attributes' &&\n (mutation.attributeName === 'data-options' ||\n mutation.attributeName.startsWith('data-option-'))\n ) {\n // Stop here silently when no breakpoint configuration given.\n if (!hasBreakpointConfiguration(this)) {\n this.$mount();\n remove(key);\n return;\n }\n\n addToResize(key, this);\n }\n });\n mutationObserver.observe(this.$el, { attributes: true });\n\n // Stop here silently when no breakpoint configuration given.\n if (!hasBreakpointConfiguration(this)) {\n return;\n }\n\n addToResize(key, this);\n }\n\n /**\n * Override the default $mount method to prevent component's from being\n * mounted when they should not.\n */\n $mount():this {\n // Execute normal behavior when no breakpoint configuration given.\n if (!hasBreakpointConfiguration(this)) {\n return super.$mount();\n }\n\n const action = testBreakpoints(this);\n if (action === '$mount') {\n return super.$mount();\n }\n\n return this;\n }\n }\n\n // @ts-ignore\n return WithBreakpointObserver;\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,sBAA0B;AAC1B,mBAAsB;AAoBtB,SAAS,gBACP,UACA,iBAAqB,2BAAU,EAAE,MAAM,EAAE,YACjC;AACR,QAAM,EAAE,mBAAmB,oBAAoB,IAAI,SAAS;AAC5D,QAAM,uBACJ,qBAAqB,kBAAkB,MAAM,GAAG,EAAE,SAAS,UAAU;AACvE,QAAM,yBACJ,uBAAuB,oBAAoB,MAAM,GAAG,EAAE,SAAS,UAAU;AAE3E,MACG,qBAAqB,wBACrB,uBAAuB,CAAC,wBACzB;AACA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAOA,SAAS,2BAA2B,UAAsD;AACxF,QAAM,EAAE,mBAAmB,oBAAoB,IAAI,SAAS;AAC5D,SAAO,QAAQ,qBAAqB,mBAAmB;AACzD;AAOA,SAAS,uCACP,UACM;AACN,QAAM,EAAE,mBAAmB,qBAAqB,KAAK,IAAI,SAAS;AAClE,MAAI,qBAAqB,qBAAqB;AAC5C,UAAM,IAAI;AAAA,MACR,IAAI;AAAA,IACN;AAAA,EACF;AACF;AAOA,SAAS,YAAY,KAAK,UAAU;AAClC,MAAI,oBAAO;AACT,2CAAuC,QAAQ;AAAA,EACjD;AAEA,QAAM,EAAE,KAAK,IAAI,QAAI,2BAAU;AAE/B,MAAI,CAAC,IAAI,GAAG,GAAG;AACb,QAAI,KAAK,CAAC,EAAE,WAAW,MAAM;AAC3B,YAAM,SAAS,gBAAgB,UAAU,UAAU;AAGnD,UAAI,WAAW,cAAc,SAAS,YAAY;AAChD,iBAAS,QAAQ;AAAA,MACnB,WAAW,WAAW,YAAY,CAAC,SAAS,YAAY;AACtD,mBAAW,MAAM,SAAS,QAAQ,GAAG,CAAC;AAAA,MACxC;AAAA,IACF,CAAC;AAAA,EACH;AACF;AAKO,SAAS,uBACd,WACgF;AAIhF,QAAM,+BAAgE,UAEpE;AAAA,IAIA,OAAO,SAAoB;AAAA,MACzB,GAAG,UAAU;AAAA,MACb,MAAM,GAAG,UAAU,OAAO;AAAA,MAC1B,SAAS;AAAA,QACP,GAAI,UAAU,QAAQ,WAAW,CAAC;AAAA,QAClC,mBAAmB;AAAA,QACnB,qBAAqB;AAAA,MACvB;AAAA,IACF;AAAA,IAKA,YAAY,SAAqB;AAC/B,YAAM,OAAO;AAEb,YAAM,EAAE,QAAQ,MAAM,QAAI,2BAAU;AACpC,YAAM,EAAE,KAAK,IAAI,KAAK;AAItB,UAAI,CAAC,MAAM,EAAE,YAAY;AACvB,YAAI,oBAAO;AACT,gBAAM,IAAI;AAAA,YACR,IAAI;AAAA,UACN;AAAA,QACF;AACA;AAAA,MACF;AAEA,YAAM,MAAM,sBAAsB,KAAK;AAGvC,YAAM,mBAAmB,IAAI,iBAAiB,CAAC,CAAC,QAAQ,MAAM;AAC5D,YACE,SAAS,SAAS,iBACjB,SAAS,kBAAkB,kBAC1B,SAAS,cAAc,WAAW,cAAc,IAClD;AAEA,cAAI,CAAC,2BAA2B,IAAI,GAAG;AACrC,iBAAK,OAAO;AACZ,mBAAO,GAAG;AACV;AAAA,UACF;AAEA,sBAAY,KAAK,IAAI;AAAA,QACvB;AAAA,MACF,CAAC;AACD,uBAAiB,QAAQ,KAAK,KAAK,EAAE,YAAY,KAAK,CAAC;AAGvD,UAAI,CAAC,2BAA2B,IAAI,GAAG;AACrC;AAAA,MACF;AAEA,kBAAY,KAAK,IAAI;AAAA,IACvB;AAAA,IAMA,SAAc;AAEZ,UAAI,CAAC,2BAA2B,IAAI,GAAG;AACrC,eAAO,MAAM,OAAO;AAAA,MACtB;AAEA,YAAM,SAAS,gBAAgB,IAAI;AACnC,UAAI,WAAW,UAAU;AACvB,eAAO,MAAM,OAAO;AAAA,MACtB;AAEA,aAAO;AAAA,IACT;AAAA,EACF;AAGA,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|