@studiometa/js-toolkit 1.7.2 → 2.0.0-alpha.10
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.d.ts +217 -0
- package/Base/index.js +237 -0
- package/Base/managers/ChildrenManager.d.ts +108 -0
- package/Base/managers/ChildrenManager.js +124 -0
- package/Base/managers/EventsManager.d.ts +190 -0
- package/Base/managers/EventsManager.js +195 -0
- package/Base/managers/OptionsManager.d.ts +120 -0
- package/Base/managers/OptionsManager.js +180 -0
- package/Base/managers/RefsManager.d.ts +84 -0
- package/Base/managers/RefsManager.js +83 -0
- package/{abstracts/Base/classes/Services.d.ts → Base/managers/ServicesManager.d.ts} +22 -7
- package/Base/managers/ServicesManager.js +115 -0
- package/{abstracts/Base → Base}/utils.d.ts +0 -30
- package/Base/utils.js +43 -0
- package/README.md +12 -70
- package/decorators/index.js +1 -2
- package/decorators/withBreakpointManager.d.ts +5 -5
- package/decorators/withBreakpointManager.js +41 -79
- package/decorators/withBreakpointObserver.d.ts +4 -4
- package/decorators/withBreakpointObserver.js +54 -77
- package/decorators/withDrag.d.ts +6 -6
- package/decorators/withDrag.js +17 -41
- package/decorators/withExtraConfig.d.ts +6 -6
- package/decorators/withExtraConfig.js +2 -24
- package/decorators/withIntersectionObserver.d.ts +4 -4
- package/decorators/withIntersectionObserver.js +17 -60
- package/decorators/withMountWhenInView.d.ts +8 -8
- package/decorators/withMountWhenInView.js +23 -51
- package/helpers/createApp.d.ts +4 -4
- package/helpers/createApp.js +10 -12
- package/helpers/importOnInteraction.d.ts +6 -6
- package/helpers/importOnInteraction.js +7 -8
- package/helpers/importWhenIdle.d.ts +4 -4
- package/helpers/importWhenIdle.js +7 -8
- package/helpers/importWhenVisible.d.ts +6 -6
- package/helpers/importWhenVisible.js +9 -16
- package/helpers/index.d.ts +1 -3
- package/helpers/index.js +1 -4
- package/helpers/utils.js +2 -3
- package/index.d.ts +19 -5
- package/index.js +5 -6
- package/index.modern.js +1 -3230
- package/index.umd.js +1 -3586
- package/package.json +3 -6
- package/{abstracts → services}/Service.d.ts +0 -0
- package/services/Service.js +63 -0
- package/services/drag.js +144 -180
- package/services/index.js +1 -2
- package/services/key.js +56 -98
- package/services/load.d.ts +1 -1
- package/services/load.js +22 -51
- package/services/pointer.js +118 -157
- package/services/raf.js +37 -65
- package/services/resize.js +46 -98
- package/services/scroll.js +81 -120
- package/utils/collide/boundingRectToCircle.js +7 -6
- package/utils/collide/collideCircleCircle.js +1 -2
- package/utils/collide/collideCircleRect.js +1 -2
- package/utils/collide/collidePointCircle.js +1 -2
- package/utils/collide/collidePointRect.js +1 -2
- package/utils/collide/collideRectRect.js +1 -2
- package/utils/collide/index.js +1 -2
- package/utils/css/classes.js +2 -3
- package/utils/css/index.js +1 -2
- package/utils/css/matrix.js +1 -2
- package/utils/css/styles.js +3 -8
- package/utils/css/transition.js +67 -140
- package/utils/debounce.js +3 -4
- package/utils/focusTrap.js +4 -5
- package/utils/history.js +12 -19
- package/utils/index.d.ts +2 -1
- package/utils/index.js +2 -2
- package/utils/keyCodes.js +1 -2
- package/utils/math/clamp.js +1 -2
- package/utils/math/clamp01.js +1 -2
- package/utils/math/damp.js +1 -2
- package/utils/math/index.js +1 -2
- package/utils/math/inertiaFinalValue.js +1 -2
- package/utils/math/lerp.js +1 -2
- package/utils/math/map.js +1 -2
- package/utils/math/round.js +1 -2
- package/utils/memoize.d.ts +30 -0
- package/utils/memoize.js +30 -0
- package/utils/nextFrame.js +4 -9
- package/utils/object/autoBind.js +11 -19
- package/utils/object/getAllProperties.d.ts +6 -3
- package/utils/object/getAllProperties.js +10 -8
- package/utils/object/index.js +1 -2
- package/utils/object/isObject.js +2 -4
- package/utils/string/index.js +1 -2
- package/utils/string/withLeadingCharacters.js +1 -2
- package/utils/string/withLeadingSlash.js +1 -2
- package/utils/string/withTrailingCharacters.js +1 -2
- package/utils/string/withTrailingSlash.js +1 -2
- package/utils/string/withoutLeadingCharacters.js +1 -2
- package/utils/string/withoutLeadingCharactersRecursive.js +1 -2
- package/utils/string/withoutLeadingSlash.js +1 -2
- package/utils/string/withoutTrailingCharacters.js +1 -2
- package/utils/string/withoutTrailingCharactersRecursive.js +1 -2
- package/utils/string/withoutTrailingSlash.js +1 -2
- package/utils/throttle.js +2 -3
- package/abstracts/Base/children.d.ts +0 -16
- package/abstracts/Base/children.js +0 -66
- package/abstracts/Base/children.js.map +0 -1
- package/abstracts/Base/classes/Options.d.ts +0 -37
- package/abstracts/Base/classes/Options.js +0 -182
- package/abstracts/Base/classes/Options.js.map +0 -1
- package/abstracts/Base/classes/Services.js +0 -120
- package/abstracts/Base/classes/Services.js.map +0 -1
- package/abstracts/Base/components.d.ts +0 -22
- package/abstracts/Base/components.js +0 -67
- package/abstracts/Base/components.js.map +0 -1
- package/abstracts/Base/events.d.ts +0 -8
- package/abstracts/Base/events.js +0 -185
- package/abstracts/Base/events.js.map +0 -1
- package/abstracts/Base/index.d.ts +0 -176
- package/abstracts/Base/index.js +0 -215
- package/abstracts/Base/index.js.map +0 -1
- package/abstracts/Base/options.d.ts +0 -17
- package/abstracts/Base/options.js +0 -112
- package/abstracts/Base/options.js.map +0 -1
- package/abstracts/Base/refs.d.ts +0 -30
- package/abstracts/Base/refs.js +0 -60
- package/abstracts/Base/refs.js.map +0 -1
- package/abstracts/Base/utils.js +0 -102
- package/abstracts/Base/utils.js.map +0 -1
- package/abstracts/EventManager.d.ts +0 -41
- package/abstracts/EventManager.js +0 -88
- package/abstracts/EventManager.js.map +0 -1
- package/abstracts/Service.js +0 -82
- package/abstracts/Service.js.map +0 -1
- package/abstracts/index.d.ts +0 -4
- package/abstracts/index.js +0 -5
- package/abstracts/index.js.map +0 -1
- package/components/Accordion/Accordion.d.ts +0 -83
- package/components/Accordion/Accordion.js +0 -121
- package/components/Accordion/Accordion.js.map +0 -1
- package/components/Accordion/AccordionItem.d.ts +0 -122
- package/components/Accordion/AccordionItem.js +0 -327
- package/components/Accordion/AccordionItem.js.map +0 -1
- package/components/Accordion/index.d.ts +0 -27
- package/components/Accordion/index.js +0 -39
- package/components/Accordion/index.js.map +0 -1
- package/components/Cursor.d.ts +0 -138
- package/components/Cursor.js +0 -167
- package/components/Cursor.js.map +0 -1
- package/components/Draggable.d.ts +0 -49
- package/components/Draggable.js +0 -77
- package/components/Draggable.js.map +0 -1
- package/components/Modal.d.ts +0 -158
- package/components/Modal.js +0 -270
- package/components/Modal.js.map +0 -1
- package/components/Tabs.d.ts +0 -108
- package/components/Tabs.js +0 -195
- package/components/Tabs.js.map +0 -1
- package/components/index.d.ts +0 -6
- package/components/index.js +0 -7
- package/components/index.js.map +0 -1
- package/decorators/index.js.map +0 -1
- package/decorators/withBreakpointManager.js.map +0 -1
- package/decorators/withBreakpointObserver.js.map +0 -1
- package/decorators/withDrag.js.map +0 -1
- package/decorators/withExtraConfig.js.map +0 -1
- package/decorators/withIntersectionObserver.js.map +0 -1
- package/decorators/withMountWhenInView.js.map +0 -1
- package/full.d.ts +0 -10
- package/full.js +0 -12
- package/full.js.map +0 -1
- package/full.modern.js +0 -7523
- package/full.modern.js.map +0 -1
- package/full.umd.js +0 -8277
- package/full.umd.js.map +0 -1
- package/helpers/createApp.js.map +0 -1
- package/helpers/createBase.d.ts +0 -7
- package/helpers/createBase.js +0 -7
- package/helpers/createBase.js.map +0 -1
- package/helpers/defineComponent.d.ts +0 -11
- package/helpers/defineComponent.js +0 -68
- package/helpers/defineComponent.js.map +0 -1
- package/helpers/importOnInteraction.js.map +0 -1
- package/helpers/importWhenIdle.js.map +0 -1
- package/helpers/importWhenVisible.js.map +0 -1
- package/helpers/index.js.map +0 -1
- package/helpers/utils.js.map +0 -1
- package/index.js.map +0 -1
- package/index.modern.js.map +0 -1
- package/index.umd.js.map +0 -1
- package/services/drag.js.map +0 -1
- package/services/index.js.map +0 -1
- package/services/key.js.map +0 -1
- package/services/load.js.map +0 -1
- package/services/pointer.js.map +0 -1
- package/services/raf.js.map +0 -1
- package/services/resize.js.map +0 -1
- package/services/scroll.js.map +0 -1
- package/utils/collide/boundingRectToCircle.js.map +0 -1
- package/utils/collide/collideCircleCircle.js.map +0 -1
- package/utils/collide/collideCircleRect.js.map +0 -1
- package/utils/collide/collidePointCircle.js.map +0 -1
- package/utils/collide/collidePointRect.js.map +0 -1
- package/utils/collide/collideRectRect.js.map +0 -1
- package/utils/collide/index.js.map +0 -1
- package/utils/css/classes.js.map +0 -1
- package/utils/css/index.js.map +0 -1
- package/utils/css/matrix.js.map +0 -1
- package/utils/css/styles.js.map +0 -1
- package/utils/css/transition.js.map +0 -1
- package/utils/debounce.js.map +0 -1
- package/utils/focusTrap.js.map +0 -1
- package/utils/history.js.map +0 -1
- package/utils/index.js.map +0 -1
- package/utils/keyCodes.js.map +0 -1
- package/utils/math/clamp.js.map +0 -1
- package/utils/math/clamp01.js.map +0 -1
- package/utils/math/damp.js.map +0 -1
- package/utils/math/index.js.map +0 -1
- package/utils/math/inertiaFinalValue.js.map +0 -1
- package/utils/math/lerp.js.map +0 -1
- package/utils/math/map.js.map +0 -1
- package/utils/math/round.js.map +0 -1
- package/utils/nextFrame.js.map +0 -1
- package/utils/object/autoBind.js.map +0 -1
- package/utils/object/getAllProperties.js.map +0 -1
- package/utils/object/index.js.map +0 -1
- package/utils/object/isObject.js.map +0 -1
- package/utils/string/index.js.map +0 -1
- package/utils/string/withLeadingCharacters.js.map +0 -1
- package/utils/string/withLeadingSlash.js.map +0 -1
- package/utils/string/withTrailingCharacters.js.map +0 -1
- package/utils/string/withTrailingSlash.js.map +0 -1
- package/utils/string/withoutLeadingCharacters.js.map +0 -1
- package/utils/string/withoutLeadingCharactersRecursive.js.map +0 -1
- package/utils/string/withoutLeadingSlash.js.map +0 -1
- package/utils/string/withoutTrailingCharacters.js.map +0 -1
- package/utils/string/withoutTrailingCharactersRecursive.js.map +0 -1
- package/utils/string/withoutTrailingSlash.js.map +0 -1
- package/utils/throttle.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/js-toolkit/components/Accordion/AccordionItem.js"],"names":["deepmerge","Base","Accordion","styles","transition","AccordionItem","$parent","$options","item","Object","entries","forEach","key","value","type","config","options","Array","$refs","btn","setAttribute","$id","contentId","content","isOpen","updateAttributes","add","container","visibility","height","otherStyles","refs","filter","refName","open","closed","to","remove","close","$log","$emit","Promise","all","from","active","offsetHeight","then","position","resolve","map","name","Boolean","default"],"mappings":"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","sourcesContent":["import deepmerge from 'deepmerge';\nimport Base from '../../abstracts/Base/index.js';\nimport Accordion from './Accordion.js';\nimport * as styles from '../../utils/css/styles.js';\nimport transition from '../../utils/css/transition.js';\n\n/**\n * @typedef {import('../../abstracts/Base').BaseOptions} BaseOptions\n * @typedef {import('./Accordion.js').AccordionInterface} AccordionInterface\n */\n\n/**\n * @typedef {Object} AccordionItemRefs\n * @property {HTMLElement} btn\n * @property {HTMLElement} content\n * @property {HTMLElement} container\n */\n\n/**\n * @typedef {Object} StylesOption\n * @property {String|CssStyleObject} open\n * @property {String|CssStyleObject} active\n * @property {String|CssStyleObject} closed\n */\n\n/**\n * @typedef {import('../../utils/css/styles.js').CssStyleObject} CssStyleObject\n * @typedef {Partial<Record<'open'|'active'|'closed', string|CssStyleObject>>} AccordionItemStates\n * @typedef {Partial<Record<keyof AccordionItemRefs, AccordionItemStates>>} AccordionItemStylesOption\n */\n\n/**\n * @typedef {Object} AccordionItemOptions\n * @property {Boolean} isOpen\n * @property {AccordionItemStylesOption} styles\n */\n\n/**\n * @typedef {Object} AccordionItemPrivateInterface\n * @property {AccordionItemOptions} $options\n * @property {AccordionItemRefs} $refs\n * @property {Accordion & AccordionInterface} $parent\n */\n\n/**\n * @typedef {AccordionItem & AccordionItemPrivateInterface} AccordionItemInterface\n */\n\n/**\n * AccordionItem class.\n */\nexport default class AccordionItem extends Base {\n /**\n * AccordionItem config\n * @return {Object}\n */\n static config = {\n name: 'AccordionItem',\n refs: ['btn', 'content', 'container'],\n options: {\n isOpen: Boolean,\n styles: {\n type: Object,\n /**\n * @return {AccordionItemStylesOption}\n */\n default: () => ({\n container: {\n open: '',\n active: '',\n closed: '',\n },\n }),\n },\n },\n };\n\n /**\n * Add aria-attributes on mounted.\n * @this {AccordionItemInterface}\n */\n mounted() {\n if (this.$parent && this.$parent instanceof Accordion && this.$parent.$options.item) {\n Object.entries(this.$parent.$options.item).forEach(([key, value]) => {\n if (key in this.$options) {\n const type = AccordionItem.config.options[key].type || AccordionItem.config.options[key];\n if (type === Array || type === Object) {\n this.$options[key] = deepmerge(this.$options[key], /** @type {any} */ (value));\n } else {\n this.$options[key] = value;\n }\n }\n });\n }\n\n this.$refs.btn.setAttribute('id', this.$id);\n this.$refs.btn.setAttribute('aria-controls', this.contentId);\n this.$refs.content.setAttribute('aria-labelledby', this.$id);\n this.$refs.content.setAttribute('id', this.contentId);\n\n const { isOpen } = this.$options;\n this.updateAttributes(isOpen);\n\n if (!isOpen) {\n styles.add(this.$refs.container, { visibility: 'invisible', height: '0' });\n }\n\n // Update refs styles on mount\n const { container, ...otherStyles } = this.$options.styles;\n /** @type {AccordionItemRefs} */\n const refs = this.$refs;\n Object.entries(otherStyles)\n .filter(([refName]) => refs[refName])\n .forEach(([refName, { open, closed } = { open: '', closed: '' }]) => {\n transition(refs[refName], { to: isOpen ? open : closed }, 'keep');\n });\n }\n\n /**\n * Remove styles on destroy.\n * @this {AccordionItemInterface}\n */\n destroyed() {\n styles.remove(this.$refs.container, { visibility: '', height: '' });\n }\n\n /**\n * Handler for the click event on the `btn` ref.\n * @this {AccordionItemInterface}\n */\n onBtnClick() {\n if (this.$options.isOpen) {\n this.close();\n } else {\n this.open();\n }\n }\n\n /**\n * Get the content ID.\n * @return {String}\n */\n get contentId() {\n return `content-${this.$id}`;\n }\n\n /**\n * Update the refs' attributes according to the given type.\n *\n * @this {AccordionItemInterface}\n * @param {Boolean} isOpen The state of the item.\n */\n updateAttributes(isOpen) {\n this.$refs.content.setAttribute('aria-hidden', isOpen ? 'false' : 'true');\n this.$refs.btn.setAttribute('aria-expanded', isOpen ? 'true' : 'false');\n }\n\n /**\n * Open an item.\n * @this {AccordionItemInterface}\n */\n async open() {\n if (this.$options.isOpen) {\n return;\n }\n\n this.$log('open');\n this.$emit('open');\n\n this.$options.isOpen = true;\n this.updateAttributes(this.$options.isOpen);\n\n styles.remove(this.$refs.container, { visibility: 'invisible' });\n const { container, ...otherStyles } = this.$options.styles;\n\n /** @type {AccordionItemRefs} */\n const refs = this.$refs;\n\n await Promise.all([\n transition(refs.container, {\n from: { height: 0 },\n active: container.active,\n to: { height: `${refs.content.offsetHeight}px` },\n }).then(() => {\n // Remove style only if the item has not been closed before the end\n if (this.$options.isOpen) {\n styles.remove(refs.content, { position: 'absolute' });\n }\n\n return Promise.resolve();\n }),\n ...Object.entries(otherStyles)\n .filter(([refName]) => refs[refName])\n .map(([refName, { open, active, closed } = { open: '', active: '', closed: '' }]) =>\n transition(\n refs[refName],\n {\n from: closed,\n active,\n to: open,\n },\n 'keep'\n )\n ),\n ]);\n }\n\n /**\n * Close an item.\n * @this {AccordionItemInterface}\n */\n async close() {\n if (!this.$options.isOpen) {\n return;\n }\n\n this.$log('close');\n this.$emit('close');\n\n this.$options.isOpen = false;\n\n const height = this.$refs.container.offsetHeight;\n styles.add(this.$refs.content, { position: 'absolute' });\n const { container, ...otherStyles } = this.$options.styles;\n\n /** @type {AccordionItemRefs} */\n const refs = this.$refs;\n\n await Promise.all([\n transition(refs.container, {\n from: { height: `${height}px` },\n active: container.active,\n to: { height: '0' },\n }).then(() => {\n // Add end styles only if the item has not been re-opened before the end\n if (!this.$options.isOpen) {\n styles.add(refs.container, { height: '0', visibility: 'invisible' });\n this.updateAttributes(this.$options.isOpen);\n }\n return Promise.resolve();\n }),\n ...Object.entries(otherStyles)\n .filter(([refName]) => refs[refName])\n .map(([refName, { open, active, closed } = { open: '', active: '', closed: '' }]) =>\n transition(\n refs[refName],\n {\n from: open,\n active,\n to: closed,\n },\n 'keep'\n )\n ),\n ]);\n }\n}\n"],"file":"AccordionItem.js"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export default Accordion;
|
|
2
|
-
export type AccordionInterface = import('./Accordion.js').AccordionInterface;
|
|
3
|
-
export type AccordionItemInterface = import('./AccordionItem.js').AccordionItemInterface;
|
|
4
|
-
/**
|
|
5
|
-
* @typedef {import('./Accordion.js').AccordionInterface} AccordionInterface
|
|
6
|
-
* @typedef {import('./AccordionItem.js').AccordionItemInterface} AccordionItemInterface
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Accordion class.
|
|
10
|
-
*/
|
|
11
|
-
declare class Accordion extends AccordionCore {
|
|
12
|
-
static config: {
|
|
13
|
-
components: {
|
|
14
|
-
AccordionItem: typeof AccordionItem;
|
|
15
|
-
};
|
|
16
|
-
name: string;
|
|
17
|
-
options: {
|
|
18
|
-
autoclose: BooleanConstructor;
|
|
19
|
-
item: {
|
|
20
|
-
type: ObjectConstructor;
|
|
21
|
-
default: () => Partial<import("./AccordionItem.js").AccordionItemOptions>;
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
import AccordionCore from "./Accordion.js";
|
|
27
|
-
import AccordionItem from "./AccordionItem.js";
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
3
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
4
|
-
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
5
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
6
|
-
|
|
7
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
8
|
-
|
|
9
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
10
|
-
|
|
11
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
12
|
-
|
|
13
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
14
|
-
|
|
15
|
-
import AccordionCore from './Accordion.js';
|
|
16
|
-
import AccordionItem from './AccordionItem.js';
|
|
17
|
-
|
|
18
|
-
var Accordion = function (_AccordionCore) {
|
|
19
|
-
_inherits(Accordion, _AccordionCore);
|
|
20
|
-
|
|
21
|
-
var _super = _createSuper(Accordion);
|
|
22
|
-
|
|
23
|
-
function Accordion() {
|
|
24
|
-
_classCallCheck(this, Accordion);
|
|
25
|
-
|
|
26
|
-
return _super.apply(this, arguments);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
return Accordion;
|
|
30
|
-
}(AccordionCore);
|
|
31
|
-
|
|
32
|
-
_defineProperty(Accordion, "config", _objectSpread(_objectSpread({}, AccordionCore.config), {}, {
|
|
33
|
-
components: {
|
|
34
|
-
AccordionItem: AccordionItem
|
|
35
|
-
}
|
|
36
|
-
}));
|
|
37
|
-
|
|
38
|
-
export default Accordion;
|
|
39
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/js-toolkit/components/Accordion/index.js"],"names":["AccordionCore","AccordionItem","Accordion","config","components"],"mappings":";;;;;;;;;;;;;;AAAA,OAAOA,aAAP,MAA0B,gBAA1B;AACA,OAAOC,aAAP,MAA0B,oBAA1B;;IAUMC,S;;;;;;;;;;;;EAAkBF,a;;gBAAlBE,S,4CAECF,aAAa,CAACG,M;AACjBC,EAAAA,UAAU,EAAE;AACVH,IAAAA,aAAa,EAAbA;AADU;;;AAMhB,eAAeC,SAAf","sourcesContent":["import AccordionCore from './Accordion.js';\nimport AccordionItem from './AccordionItem.js';\n\n/**\n * @typedef {import('./Accordion.js').AccordionInterface} AccordionInterface\n * @typedef {import('./AccordionItem.js').AccordionItemInterface} AccordionItemInterface\n */\n\n/**\n * Accordion class.\n */\nclass Accordion extends AccordionCore {\n static config = {\n ...AccordionCore.config,\n components: {\n AccordionItem,\n },\n };\n}\n\nexport default Accordion;\n"],"file":"index.js"}
|
package/components/Cursor.d.ts
DELETED
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @typedef {import('../services/pointer').PointerServiceProps} PointerServiceProps
|
|
3
|
-
* @typedef {import('../abstracts/Base').BaseOptions} BaseOptions
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* @typedef {Object} CursorOptions
|
|
7
|
-
* @property {string} growSelectors
|
|
8
|
-
* @property {string} shrinkSelectors
|
|
9
|
-
* @property {number} growTo
|
|
10
|
-
* @property {number} shrinkTo
|
|
11
|
-
* @property {number} translateDampFactor
|
|
12
|
-
* @property {number} growDampFactor
|
|
13
|
-
* @property {number} shrinkDampFactor
|
|
14
|
-
*/
|
|
15
|
-
/**
|
|
16
|
-
* @typedef {Object} CursorPrivateInterface
|
|
17
|
-
* @property {BaseOptions & CursorOptions} $options
|
|
18
|
-
*/
|
|
19
|
-
/**
|
|
20
|
-
* @typedef {Cursor & CursorPrivateInterface} CursorInterface
|
|
21
|
-
*/
|
|
22
|
-
/**
|
|
23
|
-
* Custom cursor component.
|
|
24
|
-
*/
|
|
25
|
-
export default class Cursor extends Base {
|
|
26
|
-
/**
|
|
27
|
-
* Class config.
|
|
28
|
-
*/
|
|
29
|
-
static config: {
|
|
30
|
-
name: string;
|
|
31
|
-
options: {
|
|
32
|
-
growSelectors: {
|
|
33
|
-
type: StringConstructor;
|
|
34
|
-
default: string;
|
|
35
|
-
};
|
|
36
|
-
shrinkSelectors: {
|
|
37
|
-
type: StringConstructor;
|
|
38
|
-
default: string;
|
|
39
|
-
};
|
|
40
|
-
growTo: {
|
|
41
|
-
type: NumberConstructor;
|
|
42
|
-
default: number;
|
|
43
|
-
};
|
|
44
|
-
shrinkTo: {
|
|
45
|
-
type: NumberConstructor;
|
|
46
|
-
default: number;
|
|
47
|
-
};
|
|
48
|
-
translateDampFactor: {
|
|
49
|
-
type: NumberConstructor;
|
|
50
|
-
default: number;
|
|
51
|
-
};
|
|
52
|
-
growDampFactor: {
|
|
53
|
-
type: NumberConstructor;
|
|
54
|
-
default: number;
|
|
55
|
-
};
|
|
56
|
-
shrinkDampFactor: {
|
|
57
|
-
type: NumberConstructor;
|
|
58
|
-
default: number;
|
|
59
|
-
};
|
|
60
|
-
};
|
|
61
|
-
};
|
|
62
|
-
/**
|
|
63
|
-
* @type {Number}
|
|
64
|
-
*/
|
|
65
|
-
x: number;
|
|
66
|
-
/**
|
|
67
|
-
* @type {Number}
|
|
68
|
-
*/
|
|
69
|
-
y: number;
|
|
70
|
-
/**
|
|
71
|
-
* @type {Number}
|
|
72
|
-
*/
|
|
73
|
-
scale: number;
|
|
74
|
-
/**
|
|
75
|
-
* @type {Number}
|
|
76
|
-
*/
|
|
77
|
-
pointerX: number;
|
|
78
|
-
/**
|
|
79
|
-
* @type {Number}
|
|
80
|
-
*/
|
|
81
|
-
pointerY: number;
|
|
82
|
-
/**
|
|
83
|
-
* @type {Number}
|
|
84
|
-
*/
|
|
85
|
-
pointerScale: number;
|
|
86
|
-
/**
|
|
87
|
-
* Mounted hook.
|
|
88
|
-
* @return {void}
|
|
89
|
-
*/
|
|
90
|
-
mounted(): void;
|
|
91
|
-
/**
|
|
92
|
-
* Moved hook.
|
|
93
|
-
*
|
|
94
|
-
* @this {CursorInterface}
|
|
95
|
-
*
|
|
96
|
-
* @param {PointerServiceProps} options
|
|
97
|
-
* @return {void}
|
|
98
|
-
*/
|
|
99
|
-
moved({ event, x, y, isDown }: PointerServiceProps): void;
|
|
100
|
-
/**
|
|
101
|
-
* RequestAnimationFrame hook.
|
|
102
|
-
*
|
|
103
|
-
* @this {CursorInterface}
|
|
104
|
-
*
|
|
105
|
-
* @return {void}
|
|
106
|
-
*/
|
|
107
|
-
ticked(): void;
|
|
108
|
-
/**
|
|
109
|
-
* Render the cursor.
|
|
110
|
-
*
|
|
111
|
-
* @param {Object} options
|
|
112
|
-
* @param {Number} options.x
|
|
113
|
-
* @param {Number} options.y
|
|
114
|
-
* @param {Number} options.scale
|
|
115
|
-
* @return {void}
|
|
116
|
-
*/
|
|
117
|
-
render({ x, y, scale }: {
|
|
118
|
-
x: number;
|
|
119
|
-
y: number;
|
|
120
|
-
scale: number;
|
|
121
|
-
}): void;
|
|
122
|
-
}
|
|
123
|
-
export type PointerServiceProps = import('../services/pointer').PointerServiceProps;
|
|
124
|
-
export type BaseOptions = import('../abstracts/Base').BaseOptions;
|
|
125
|
-
export type CursorOptions = {
|
|
126
|
-
growSelectors: string;
|
|
127
|
-
shrinkSelectors: string;
|
|
128
|
-
growTo: number;
|
|
129
|
-
shrinkTo: number;
|
|
130
|
-
translateDampFactor: number;
|
|
131
|
-
growDampFactor: number;
|
|
132
|
-
shrinkDampFactor: number;
|
|
133
|
-
};
|
|
134
|
-
export type CursorPrivateInterface = {
|
|
135
|
-
$options: BaseOptions & CursorOptions;
|
|
136
|
-
};
|
|
137
|
-
export type CursorInterface = Cursor & CursorPrivateInterface;
|
|
138
|
-
import Base from "../abstracts/Base/index.js";
|
package/components/Cursor.js
DELETED
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
-
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
4
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
5
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
6
|
-
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
7
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
8
|
-
|
|
9
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
10
|
-
|
|
11
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
12
|
-
|
|
13
|
-
import Base from '../abstracts/Base/index.js';
|
|
14
|
-
import damp from '../utils/math/damp.js';
|
|
15
|
-
import matrix from '../utils/css/matrix.js';
|
|
16
|
-
|
|
17
|
-
var Cursor = function (_Base) {
|
|
18
|
-
_inherits(Cursor, _Base);
|
|
19
|
-
|
|
20
|
-
var _super = _createSuper(Cursor);
|
|
21
|
-
|
|
22
|
-
function Cursor() {
|
|
23
|
-
var _this;
|
|
24
|
-
|
|
25
|
-
_classCallCheck(this, Cursor);
|
|
26
|
-
|
|
27
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
28
|
-
args[_key] = arguments[_key];
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
32
|
-
|
|
33
|
-
_defineProperty(_assertThisInitialized(_this), "x", 0);
|
|
34
|
-
|
|
35
|
-
_defineProperty(_assertThisInitialized(_this), "y", 0);
|
|
36
|
-
|
|
37
|
-
_defineProperty(_assertThisInitialized(_this), "scale", 0);
|
|
38
|
-
|
|
39
|
-
_defineProperty(_assertThisInitialized(_this), "pointerX", 0);
|
|
40
|
-
|
|
41
|
-
_defineProperty(_assertThisInitialized(_this), "pointerY", 0);
|
|
42
|
-
|
|
43
|
-
_defineProperty(_assertThisInitialized(_this), "pointerScale", 0);
|
|
44
|
-
|
|
45
|
-
return _this;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
_createClass(Cursor, [{
|
|
49
|
-
key: "mounted",
|
|
50
|
-
value: function mounted() {
|
|
51
|
-
this.x = 0;
|
|
52
|
-
this.y = 0;
|
|
53
|
-
this.scale = 0;
|
|
54
|
-
this.pointerX = 0;
|
|
55
|
-
this.pointerY = 0;
|
|
56
|
-
this.pointerScale = 0;
|
|
57
|
-
this.render({
|
|
58
|
-
x: this.x,
|
|
59
|
-
y: this.y,
|
|
60
|
-
scale: this.scale
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
}, {
|
|
64
|
-
key: "moved",
|
|
65
|
-
value: function moved(_ref) {
|
|
66
|
-
var event = _ref.event,
|
|
67
|
-
x = _ref.x,
|
|
68
|
-
y = _ref.y,
|
|
69
|
-
isDown = _ref.isDown;
|
|
70
|
-
|
|
71
|
-
if (!this.$services.has('ticked')) {
|
|
72
|
-
this.$services.enable('ticked');
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
this.pointerX = x;
|
|
76
|
-
this.pointerY = y;
|
|
77
|
-
var scale = 1;
|
|
78
|
-
|
|
79
|
-
if (!event) {
|
|
80
|
-
this.pointerScale = scale;
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
var shouldGrow = event.target instanceof Element && event.target.matches(this.$options.growSelectors) || false;
|
|
85
|
-
var shouldReduce = isDown || event.target instanceof Element && event.target.matches(this.$options.shrinkSelectors) || false;
|
|
86
|
-
|
|
87
|
-
if (shouldGrow) {
|
|
88
|
-
scale = this.$options.growTo;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
if (shouldReduce) {
|
|
92
|
-
scale = this.$options.shrinkTo;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
this.pointerScale = scale;
|
|
96
|
-
}
|
|
97
|
-
}, {
|
|
98
|
-
key: "ticked",
|
|
99
|
-
value: function ticked() {
|
|
100
|
-
this.x = damp(this.pointerX, this.x, this.$options.translateDampFactor);
|
|
101
|
-
this.y = damp(this.pointerY, this.y, this.$options.translateDampFactor);
|
|
102
|
-
this.scale = damp(this.pointerScale, this.scale, this.pointerScale < this.scale ? this.$options.shrinkDampFactor : this.$options.growDampFactor);
|
|
103
|
-
this.render({
|
|
104
|
-
x: this.x,
|
|
105
|
-
y: this.y,
|
|
106
|
-
scale: this.scale
|
|
107
|
-
});
|
|
108
|
-
|
|
109
|
-
if (this.x === this.pointerX && this.y === this.pointerY && this.scale === this.pointerScale) {
|
|
110
|
-
this.$services.disable('ticked');
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}, {
|
|
114
|
-
key: "render",
|
|
115
|
-
value: function render(_ref2) {
|
|
116
|
-
var x = _ref2.x,
|
|
117
|
-
y = _ref2.y,
|
|
118
|
-
scale = _ref2.scale;
|
|
119
|
-
var transform = matrix({
|
|
120
|
-
translateX: x,
|
|
121
|
-
translateY: y,
|
|
122
|
-
scaleX: scale,
|
|
123
|
-
scaleY: scale
|
|
124
|
-
});
|
|
125
|
-
this.$el.style.transform = "translateZ(0) ".concat(transform);
|
|
126
|
-
}
|
|
127
|
-
}]);
|
|
128
|
-
|
|
129
|
-
return Cursor;
|
|
130
|
-
}(Base);
|
|
131
|
-
|
|
132
|
-
_defineProperty(Cursor, "config", {
|
|
133
|
-
name: 'Cursor',
|
|
134
|
-
options: {
|
|
135
|
-
growSelectors: {
|
|
136
|
-
type: String,
|
|
137
|
-
default: 'a, a *, button, button *, [data-cursor-grow], [data-cursor-grow] *'
|
|
138
|
-
},
|
|
139
|
-
shrinkSelectors: {
|
|
140
|
-
type: String,
|
|
141
|
-
default: '[data-cursor-shrink], [data-cursor-shrink] *'
|
|
142
|
-
},
|
|
143
|
-
growTo: {
|
|
144
|
-
type: Number,
|
|
145
|
-
default: 2
|
|
146
|
-
},
|
|
147
|
-
shrinkTo: {
|
|
148
|
-
type: Number,
|
|
149
|
-
default: 0.5
|
|
150
|
-
},
|
|
151
|
-
translateDampFactor: {
|
|
152
|
-
type: Number,
|
|
153
|
-
default: 0.25
|
|
154
|
-
},
|
|
155
|
-
growDampFactor: {
|
|
156
|
-
type: Number,
|
|
157
|
-
default: 0.25
|
|
158
|
-
},
|
|
159
|
-
shrinkDampFactor: {
|
|
160
|
-
type: Number,
|
|
161
|
-
default: 0.25
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
});
|
|
165
|
-
|
|
166
|
-
export { Cursor as default };
|
|
167
|
-
//# sourceMappingURL=Cursor.js.map
|
package/components/Cursor.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../packages/js-toolkit/components/Cursor.js"],"names":["Base","damp","matrix","Cursor","x","y","scale","pointerX","pointerY","pointerScale","render","event","isDown","$services","has","enable","shouldGrow","target","Element","matches","$options","growSelectors","shouldReduce","shrinkSelectors","growTo","shrinkTo","translateDampFactor","shrinkDampFactor","growDampFactor","disable","transform","translateX","translateY","scaleX","scaleY","$el","style","name","options","type","String","default","Number"],"mappings":"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","sourcesContent":["import Base from '../abstracts/Base/index.js';\nimport damp from '../utils/math/damp.js';\nimport matrix from '../utils/css/matrix.js';\n\n/**\n * @typedef {import('../services/pointer').PointerServiceProps} PointerServiceProps\n * @typedef {import('../abstracts/Base').BaseOptions} BaseOptions\n */\n\n/**\n * @typedef {Object} CursorOptions\n * @property {string} growSelectors\n * @property {string} shrinkSelectors\n * @property {number} growTo\n * @property {number} shrinkTo\n * @property {number} translateDampFactor\n * @property {number} growDampFactor\n * @property {number} shrinkDampFactor\n */\n\n/**\n * @typedef {Object} CursorPrivateInterface\n * @property {BaseOptions & CursorOptions} $options\n */\n\n/**\n * @typedef {Cursor & CursorPrivateInterface} CursorInterface\n */\n\n/**\n * Custom cursor component.\n */\nexport default class Cursor extends Base {\n /**\n * Class config.\n */\n static config = {\n name: 'Cursor',\n options: {\n growSelectors: {\n type: String,\n default: 'a, a *, button, button *, [data-cursor-grow], [data-cursor-grow] *',\n },\n shrinkSelectors: {\n type: String,\n default: '[data-cursor-shrink], [data-cursor-shrink] *',\n },\n growTo: {\n type: Number,\n default: 2,\n },\n shrinkTo: {\n type: Number,\n default: 0.5,\n },\n translateDampFactor: {\n type: Number,\n default: 0.25,\n },\n growDampFactor: {\n type: Number,\n default: 0.25,\n },\n shrinkDampFactor: {\n type: Number,\n default: 0.25,\n },\n },\n };\n\n /**\n * @type {Number}\n */\n x = 0;\n\n /**\n * @type {Number}\n */\n y = 0;\n\n /**\n * @type {Number}\n */\n scale = 0;\n\n /**\n * @type {Number}\n */\n pointerX = 0;\n\n /**\n * @type {Number}\n */\n pointerY = 0;\n\n /**\n * @type {Number}\n */\n pointerScale = 0;\n\n /**\n * Mounted hook.\n * @return {void}\n */\n mounted() {\n this.x = 0;\n this.y = 0;\n this.scale = 0;\n this.pointerX = 0;\n this.pointerY = 0;\n this.pointerScale = 0;\n this.render({ x: this.x, y: this.y, scale: this.scale });\n }\n\n /**\n * Moved hook.\n *\n * @this {CursorInterface}\n *\n * @param {PointerServiceProps} options\n * @return {void}\n */\n moved({ event, x, y, isDown }) {\n if (!this.$services.has('ticked')) {\n this.$services.enable('ticked');\n }\n\n this.pointerX = x;\n this.pointerY = y;\n\n let scale = 1;\n\n if (!event) {\n this.pointerScale = scale;\n return;\n }\n\n const shouldGrow =\n (event.target instanceof Element && event.target.matches(this.$options.growSelectors)) ||\n false;\n const shouldReduce =\n isDown ||\n (event.target instanceof Element && event.target.matches(this.$options.shrinkSelectors)) ||\n false;\n\n if (shouldGrow) {\n scale = this.$options.growTo;\n }\n\n if (shouldReduce) {\n scale = this.$options.shrinkTo;\n }\n\n this.pointerScale = scale;\n }\n\n /**\n * RequestAnimationFrame hook.\n *\n * @this {CursorInterface}\n *\n * @return {void}\n */\n ticked() {\n this.x = damp(this.pointerX, this.x, this.$options.translateDampFactor);\n this.y = damp(this.pointerY, this.y, this.$options.translateDampFactor);\n this.scale = damp(\n this.pointerScale,\n this.scale,\n this.pointerScale < this.scale ? this.$options.shrinkDampFactor : this.$options.growDampFactor\n );\n\n this.render({ x: this.x, y: this.y, scale: this.scale });\n\n if (this.x === this.pointerX && this.y === this.pointerY && this.scale === this.pointerScale) {\n this.$services.disable('ticked');\n }\n }\n\n /**\n * Render the cursor.\n *\n * @param {Object} options\n * @param {Number} options.x\n * @param {Number} options.y\n * @param {Number} options.scale\n * @return {void}\n */\n render({ x, y, scale }) {\n const transform = matrix({\n translateX: x,\n translateY: y,\n scaleX: scale,\n scaleY: scale,\n });\n this.$el.style.transform = `translateZ(0) ${transform}`;\n }\n}\n"],"file":"Cursor.js"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @typedef {import('stylefire').Styler} Styler
|
|
3
|
-
* @typedef {import('../services/drag.js').DragServiceProps} DragServiceProps
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* @typedef {Draggable} DraggableInterface
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Draggable class.
|
|
10
|
-
*
|
|
11
|
-
* @link https://jsfiddle.net/soulwire/znj683b9/
|
|
12
|
-
*/
|
|
13
|
-
export default class Draggable extends Base {
|
|
14
|
-
static config: {
|
|
15
|
-
name: string;
|
|
16
|
-
};
|
|
17
|
-
/**
|
|
18
|
-
* The origin of the element.
|
|
19
|
-
* @type {{ x: number, y: number }}
|
|
20
|
-
*/
|
|
21
|
-
elementOrigin: {
|
|
22
|
-
x: number;
|
|
23
|
-
y: number;
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* The element styler for performant style update.
|
|
27
|
-
* @type {Styler}
|
|
28
|
-
*/
|
|
29
|
-
styler: Styler;
|
|
30
|
-
/**
|
|
31
|
-
* Mounted hook.
|
|
32
|
-
* @return {void}
|
|
33
|
-
*/
|
|
34
|
-
mounted(): void;
|
|
35
|
-
/**
|
|
36
|
-
* Destroyed hook.
|
|
37
|
-
* @return {void}
|
|
38
|
-
*/
|
|
39
|
-
destroyed(): void;
|
|
40
|
-
/**
|
|
41
|
-
* Drag service hook.
|
|
42
|
-
* @param {DragServiceProps} props
|
|
43
|
-
*/
|
|
44
|
-
dragged(props: DragServiceProps): void;
|
|
45
|
-
}
|
|
46
|
-
export type Styler = import('stylefire').Styler;
|
|
47
|
-
export type DragServiceProps = import('../services/drag.js').DragServiceProps;
|
|
48
|
-
export type DraggableInterface = Draggable;
|
|
49
|
-
import Base from "../abstracts/Base/index.js";
|
package/components/Draggable.js
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
-
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
4
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
5
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
6
|
-
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
7
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
8
|
-
|
|
9
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
10
|
-
|
|
11
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
12
|
-
|
|
13
|
-
import styler from 'stylefire';
|
|
14
|
-
import Base from '../abstracts/Base/index.js';
|
|
15
|
-
import withDrag from '../decorators/withDrag.js';
|
|
16
|
-
|
|
17
|
-
var Draggable = function (_withDrag) {
|
|
18
|
-
_inherits(Draggable, _withDrag);
|
|
19
|
-
|
|
20
|
-
var _super = _createSuper(Draggable);
|
|
21
|
-
|
|
22
|
-
function Draggable() {
|
|
23
|
-
var _this;
|
|
24
|
-
|
|
25
|
-
_classCallCheck(this, Draggable);
|
|
26
|
-
|
|
27
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
28
|
-
args[_key] = arguments[_key];
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
32
|
-
|
|
33
|
-
_defineProperty(_assertThisInitialized(_this), "elementOrigin", {
|
|
34
|
-
x: 0,
|
|
35
|
-
y: 0
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
_defineProperty(_assertThisInitialized(_this), "styler", void 0);
|
|
39
|
-
|
|
40
|
-
return _this;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
_createClass(Draggable, [{
|
|
44
|
-
key: "mounted",
|
|
45
|
-
value: function mounted() {
|
|
46
|
-
this.styler = styler(this.$el);
|
|
47
|
-
}
|
|
48
|
-
}, {
|
|
49
|
-
key: "destroyed",
|
|
50
|
-
value: function destroyed() {
|
|
51
|
-
this.styler = undefined;
|
|
52
|
-
}
|
|
53
|
-
}, {
|
|
54
|
-
key: "dragged",
|
|
55
|
-
value: function dragged(props) {
|
|
56
|
-
if (props.mode === 'start') {
|
|
57
|
-
this.elementOrigin.x = this.styler.get('x');
|
|
58
|
-
this.elementOrigin.y = this.styler.get('y');
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
this.styler.set({
|
|
63
|
-
x: this.elementOrigin.x + props.x - props.origin.x,
|
|
64
|
-
y: this.elementOrigin.y + props.y - props.origin.y
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
}]);
|
|
68
|
-
|
|
69
|
-
return Draggable;
|
|
70
|
-
}(withDrag(Base));
|
|
71
|
-
|
|
72
|
-
_defineProperty(Draggable, "config", {
|
|
73
|
-
name: 'DraggableElement'
|
|
74
|
-
});
|
|
75
|
-
|
|
76
|
-
export { Draggable as default };
|
|
77
|
-
//# sourceMappingURL=Draggable.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../packages/js-toolkit/components/Draggable.js"],"names":["styler","Base","withDrag","Draggable","x","y","$el","undefined","props","mode","elementOrigin","get","set","origin","name"],"mappings":";;;;;;;;;;;;AAAA,OAAOA,MAAP,MAAmB,WAAnB;AACA,OAAOC,IAAP,MAAiB,4BAAjB;AACA,OAAOC,QAAP,MAAqB,2BAArB;;IAgBqBC,S;;;;;;;;;;;;;;;;oEASH;AACdC,MAAAA,CAAC,EAAE,CADW;AAEdC,MAAAA,CAAC,EAAE;AAFW,K;;;;;;;;;WAehB,mBAAU;AACR,WAAKL,MAAL,GAAcA,MAAM,CAAC,KAAKM,GAAN,CAApB;AACD;;;WAMD,qBAAY;AACV,WAAKN,MAAL,GAAcO,SAAd;AACD;;;WAMD,iBAAQC,KAAR,EAAe;AACb,UAAIA,KAAK,CAACC,IAAN,KAAe,OAAnB,EAA4B;AAC1B,aAAKC,aAAL,CAAmBN,CAAnB,GAAuB,KAAKJ,MAAL,CAAYW,GAAZ,CAAgB,GAAhB,CAAvB;AACA,aAAKD,aAAL,CAAmBL,CAAnB,GAAuB,KAAKL,MAAL,CAAYW,GAAZ,CAAgB,GAAhB,CAAvB;AACA;AACD;;AAED,WAAKX,MAAL,CAAYY,GAAZ,CAAgB;AACdR,QAAAA,CAAC,EAAE,KAAKM,aAAL,CAAmBN,CAAnB,GAAuBI,KAAK,CAACJ,CAA7B,GAAiCI,KAAK,CAACK,MAAN,CAAaT,CADnC;AAEdC,QAAAA,CAAC,EAAE,KAAKK,aAAL,CAAmBL,CAAnB,GAAuBG,KAAK,CAACH,CAA7B,GAAiCG,KAAK,CAACK,MAAN,CAAaR;AAFnC,OAAhB;AAID;;;;EAnDoCH,QAAQ,CAACD,IAAD,C;;gBAA1BE,S,YACH;AACdW,EAAAA,IAAI,EAAE;AADQ,C;;SADGX,S","sourcesContent":["import styler from 'stylefire';\nimport Base from '../abstracts/Base/index.js';\nimport withDrag from '../decorators/withDrag.js';\n\n/**\n * @typedef {import('stylefire').Styler} Styler\n * @typedef {import('../services/drag.js').DragServiceProps} DragServiceProps\n */\n\n/**\n * @typedef {Draggable} DraggableInterface\n */\n\n/**\n * Draggable class.\n *\n * @link https://jsfiddle.net/soulwire/znj683b9/\n */\nexport default class Draggable extends withDrag(Base) {\n static config = {\n name: 'DraggableElement',\n };\n\n /**\n * The origin of the element.\n * @type {{ x: number, y: number }}\n */\n elementOrigin = {\n x: 0,\n y: 0,\n };\n\n /**\n * The element styler for performant style update.\n * @type {Styler}\n */\n styler;\n\n /**\n * Mounted hook.\n * @return {void}\n */\n mounted() {\n this.styler = styler(this.$el);\n }\n\n /**\n * Destroyed hook.\n * @return {void}\n */\n destroyed() {\n this.styler = undefined;\n }\n\n /**\n * Drag service hook.\n * @param {DragServiceProps} props\n */\n dragged(props) {\n if (props.mode === 'start') {\n this.elementOrigin.x = this.styler.get('x');\n this.elementOrigin.y = this.styler.get('y');\n return;\n }\n\n this.styler.set({\n x: this.elementOrigin.x + props.x - props.origin.x,\n y: this.elementOrigin.y + props.y - props.origin.y,\n });\n }\n}\n"],"file":"Draggable.js"}
|