ember-sortable 5.1.2 → 5.2.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/{addon-main.js → addon-main.cjs} +2 -0
- package/declarations/modifiers/sortable-group.d.ts +326 -0
- package/declarations/modifiers/sortable-group.d.ts.map +1 -0
- package/declarations/modifiers/sortable-handle.d.ts +24 -0
- package/declarations/modifiers/sortable-handle.d.ts.map +1 -0
- package/declarations/modifiers/sortable-item.d.ts +346 -0
- package/declarations/modifiers/sortable-item.d.ts.map +1 -0
- package/declarations/services/ember-sortable-internal-state.d.ts +58 -0
- package/declarations/services/ember-sortable-internal-state.d.ts.map +1 -0
- package/declarations/system/scroll-container.d.ts +18 -0
- package/declarations/system/scroll-container.d.ts.map +1 -0
- package/declarations/system/scroll-parent.d.ts +2 -0
- package/declarations/system/scroll-parent.d.ts.map +1 -0
- package/declarations/template-registry.d.ts +9 -0
- package/declarations/template-registry.d.ts.map +1 -0
- package/declarations/test-support/helpers/drag.d.ts +37 -0
- package/declarations/test-support/helpers/drag.d.ts.map +1 -0
- package/declarations/test-support/helpers/reorder.d.ts +25 -0
- package/declarations/test-support/helpers/reorder.d.ts.map +1 -0
- package/declarations/test-support/index.d.ts +5 -0
- package/declarations/test-support/index.d.ts.map +1 -0
- package/declarations/test-support/utils/keyboard.d.ts +17 -0
- package/declarations/test-support/utils/keyboard.d.ts.map +1 -0
- package/declarations/test-support/utils/offset.d.ts +11 -0
- package/declarations/test-support/utils/offset.d.ts.map +1 -0
- package/declarations/utils/constant.d.ts +11 -0
- package/declarations/utils/constant.d.ts.map +1 -0
- package/declarations/utils/coordinate.d.ts +17 -0
- package/declarations/utils/coordinate.d.ts.map +1 -0
- package/declarations/utils/css-calculation.d.ts +13 -0
- package/declarations/utils/css-calculation.d.ts.map +1 -0
- package/declarations/utils/defaults.d.ts +23 -0
- package/declarations/utils/defaults.d.ts.map +1 -0
- package/declarations/utils/keyboard.d.ts +17 -0
- package/declarations/utils/keyboard.d.ts.map +1 -0
- package/dist/{_rollupPluginBabelHelpers-543b1c36.js → _rollupPluginBabelHelpers-a7bede49.js} +2 -2
- package/dist/_rollupPluginBabelHelpers-a7bede49.js.map +1 -0
- package/dist/modifiers/sortable-group.js +63 -30
- package/dist/modifiers/sortable-group.js.map +1 -1
- package/dist/modifiers/sortable-handle.js +4 -4
- package/dist/modifiers/sortable-handle.js.map +1 -1
- package/dist/modifiers/sortable-item.js +187 -80
- package/dist/modifiers/sortable-item.js.map +1 -1
- package/dist/services/ember-sortable-internal-state.js +11 -5
- package/dist/services/ember-sortable-internal-state.js.map +1 -1
- package/dist/test-support/helpers/drag.js +4 -1
- package/dist/test-support/helpers/drag.js.map +1 -1
- package/dist/test-support/helpers/reorder.js +12 -2
- package/dist/test-support/helpers/reorder.js.map +1 -1
- package/dist/test-support/utils/keyboard.js.map +1 -1
- package/dist/test-support/utils/offset.js.map +1 -1
- package/dist/utils/constant.js.map +1 -1
- package/dist/utils/coordinate.js +4 -4
- package/dist/utils/coordinate.js.map +1 -1
- package/dist/utils/css-calculation.js +4 -4
- package/dist/utils/css-calculation.js.map +1 -1
- package/dist/utils/defaults.js.map +1 -1
- package/dist/utils/keyboard.js.map +1 -1
- package/package.json +103 -29
- package/dist/_rollupPluginBabelHelpers-543b1c36.js.map +0 -1
- package/dist/system/scroll-container.js +0 -54
- package/dist/system/scroll-container.js.map +0 -1
- package/dist/system/scroll-parent.js +0 -35
- package/dist/system/scroll-parent.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.js","sources":["../../src/utils/keyboard.
|
|
1
|
+
{"version":3,"file":"keyboard.js","sources":["../../src/utils/keyboard.ts"],"sourcesContent":["const ENTER_KEY = 'Enter';\nconst ESCAPE_KEY = 'Escape';\nconst SPACE_KEY = 'Space';\nconst ARROW_KEYS = {\n LEFT: 'ArrowLeft',\n UP: 'ArrowUp',\n RIGHT: 'ArrowRight',\n DOWN: 'ArrowDown',\n};\nexport const ENTER_KEY_CODE = 13;\nexport const ESCAPE_KEY_CODE = 27;\nexport const SPACE_KEY_CODE = 32;\nexport const ARROW_KEY_CODES = {\n LEFT: 37,\n UP: 38,\n RIGHT: 39,\n DOWN: 40,\n};\n\nfunction createKeyTest(key: string, keyCode: number): (event: KeyboardEvent) => boolean {\n return function isKey(event: KeyboardEvent): boolean {\n return event.key === key || event.keyCode === keyCode;\n };\n}\n\nexport const isEnterKey = createKeyTest(ENTER_KEY, ENTER_KEY_CODE);\nexport const isEscapeKey = createKeyTest(ESCAPE_KEY, ESCAPE_KEY_CODE);\nexport const isSpaceKey = createKeyTest(SPACE_KEY, SPACE_KEY_CODE);\nexport const isLeftArrowKey = createKeyTest(ARROW_KEYS.LEFT, ARROW_KEY_CODES.LEFT);\nexport const isUpArrowKey = createKeyTest(ARROW_KEYS.UP, ARROW_KEY_CODES.UP);\nexport const isRightArrowKey = createKeyTest(ARROW_KEYS.RIGHT, ARROW_KEY_CODES.RIGHT);\nexport const isDownArrowKey = createKeyTest(ARROW_KEYS.DOWN, ARROW_KEY_CODES.DOWN);\n"],"names":["ENTER_KEY","ESCAPE_KEY","SPACE_KEY","ARROW_KEYS","LEFT","UP","RIGHT","DOWN","ENTER_KEY_CODE","ESCAPE_KEY_CODE","SPACE_KEY_CODE","ARROW_KEY_CODES","createKeyTest","key","keyCode","isKey","event","isEnterKey","isEscapeKey","isSpaceKey","isLeftArrowKey","isUpArrowKey","isRightArrowKey","isDownArrowKey"],"mappings":"AAAA,MAAMA,SAAS,GAAG,OAAO,CAAA;AACzB,MAAMC,UAAU,GAAG,QAAQ,CAAA;AAC3B,MAAMC,SAAS,GAAG,OAAO,CAAA;AACzB,MAAMC,UAAU,GAAG;AACjBC,EAAAA,IAAI,EAAE,WAAW;AACjBC,EAAAA,EAAE,EAAE,SAAS;AACbC,EAAAA,KAAK,EAAE,YAAY;AACnBC,EAAAA,IAAI,EAAE,WAAA;AACR,CAAC,CAAA;AACM,MAAMC,cAAc,GAAG,GAAE;AACzB,MAAMC,eAAe,GAAG,GAAE;AAC1B,MAAMC,cAAc,GAAG,GAAE;AACzB,MAAMC,eAAe,GAAG;AAC7BP,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,EAAE,EAAE,EAAE;AACNC,EAAAA,KAAK,EAAE,EAAE;AACTC,EAAAA,IAAI,EAAE,EAAA;AACR,EAAC;AAED,SAASK,aAAaA,CAACC,GAAW,EAAEC,OAAe,EAAqC;AACtF,EAAA,OAAO,SAASC,KAAKA,CAACC,KAAoB,EAAW;IACnD,OAAOA,KAAK,CAACH,GAAG,KAAKA,GAAG,IAAIG,KAAK,CAACF,OAAO,KAAKA,OAAO,CAAA;GACtD,CAAA;AACH,CAAA;AAEO,MAAMG,UAAU,GAAGL,aAAa,CAACZ,SAAS,EAAEQ,cAAc,EAAC;AAC3D,MAAMU,WAAW,GAAGN,aAAa,CAACX,UAAU,EAAEQ,eAAe,EAAC;AAC9D,MAAMU,UAAU,GAAGP,aAAa,CAACV,SAAS,EAAEQ,cAAc,EAAC;AACrDU,MAAAA,cAAc,GAAGR,aAAa,CAACT,UAAU,CAACC,IAAI,EAAEO,eAAe,CAACP,IAAI,EAAC;AACrEiB,MAAAA,YAAY,GAAGT,aAAa,CAACT,UAAU,CAACE,EAAE,EAAEM,eAAe,CAACN,EAAE,EAAC;AAC/DiB,MAAAA,eAAe,GAAGV,aAAa,CAACT,UAAU,CAACG,KAAK,EAAEK,eAAe,CAACL,KAAK,EAAC;AACxEiB,MAAAA,cAAc,GAAGX,aAAa,CAACT,UAAU,CAACI,IAAI,EAAEI,eAAe,CAACJ,IAAI;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ember-sortable",
|
|
3
|
-
"version": "5.1
|
|
3
|
+
"version": "5.2.1",
|
|
4
4
|
"description": "Sortable UI primitives for Ember.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ember-addon",
|
|
@@ -14,15 +14,39 @@
|
|
|
14
14
|
"test": "tests"
|
|
15
15
|
},
|
|
16
16
|
"exports": {
|
|
17
|
-
".":
|
|
17
|
+
".": {
|
|
18
|
+
"types": "./declarations/index.d.ts",
|
|
19
|
+
"default": "./dist/index.js"
|
|
20
|
+
},
|
|
21
|
+
"./*": {
|
|
22
|
+
"types": "./declarations/*.d.ts",
|
|
23
|
+
"default": "./dist/*.js"
|
|
24
|
+
},
|
|
18
25
|
"./_app_/*": "./dist/_app_/*.js",
|
|
19
|
-
"./modifiers/*":
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
26
|
+
"./modifiers/*": {
|
|
27
|
+
"types": "./declarations/modifiers/*.d.ts",
|
|
28
|
+
"default": "./dist/modifiers/*.js"
|
|
29
|
+
},
|
|
30
|
+
"./services/*": {
|
|
31
|
+
"types": "./declarations/services/*.d.ts",
|
|
32
|
+
"default": "./dist/services/*.js"
|
|
33
|
+
},
|
|
34
|
+
"./test-support": {
|
|
35
|
+
"types": "./declarations/test-support/index.d.ts",
|
|
36
|
+
"default": "./dist/test-support/index.js"
|
|
37
|
+
},
|
|
38
|
+
"./addon-main.js": "./addon-main.cjs"
|
|
39
|
+
},
|
|
40
|
+
"typesVersions": {
|
|
41
|
+
"*": {
|
|
42
|
+
"*": [
|
|
43
|
+
"declarations/*"
|
|
44
|
+
]
|
|
45
|
+
}
|
|
23
46
|
},
|
|
24
47
|
"files": [
|
|
25
|
-
"addon-main.
|
|
48
|
+
"addon-main.cjs",
|
|
49
|
+
"declarations",
|
|
26
50
|
"dist"
|
|
27
51
|
],
|
|
28
52
|
"peerDependencies": {
|
|
@@ -32,25 +56,67 @@
|
|
|
32
56
|
"ember-source": "^3.28.0 || >= 4.0.0"
|
|
33
57
|
},
|
|
34
58
|
"dependencies": {
|
|
35
|
-
"@embroider/addon-shim": "^1.8.
|
|
59
|
+
"@embroider/addon-shim": "^1.8.9",
|
|
60
|
+
"@embroider/macros": "^1.16.6",
|
|
61
|
+
"@glimmer/env": "^0.1.7",
|
|
62
|
+
"rsvp": "^4.8.5"
|
|
36
63
|
},
|
|
37
64
|
"devDependencies": {
|
|
38
|
-
"@babel/core": "^7.
|
|
39
|
-
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
40
|
-
"@babel/plugin-proposal-decorators": "^7.20.7",
|
|
41
|
-
"@embroider/addon-dev": "^3.0.0",
|
|
42
|
-
"@rollup/plugin-babel": "^6.0.3",
|
|
65
|
+
"@babel/core": "^7.25.2",
|
|
43
66
|
"@babel/eslint-parser": "^7.11.0",
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
67
|
+
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
68
|
+
"@babel/plugin-proposal-decorators": "^7.24.7",
|
|
69
|
+
"@babel/plugin-transform-typescript": "^7.25.2",
|
|
70
|
+
"@ember/test-helpers": "^4.0.4",
|
|
71
|
+
"@ember/test-waiters": "^3.1.0",
|
|
72
|
+
"@embroider/addon-dev": "^5.0.0",
|
|
73
|
+
"@glimmer/component": "^1.1.2",
|
|
74
|
+
"@glint/core": "^1.4.0",
|
|
75
|
+
"@glint/environment-ember-loose": "^1.4.0",
|
|
76
|
+
"@glint/environment-ember-template-imports": "^1.4.0",
|
|
77
|
+
"@glint/template": "^1.4.0",
|
|
78
|
+
"@rollup/plugin-babel": "^6.0.4",
|
|
79
|
+
"@tsconfig/ember": "^3.0.8",
|
|
80
|
+
"@types/ember": "^4.0.11",
|
|
81
|
+
"@types/ember__application": "^4.0.11",
|
|
82
|
+
"@types/ember__array": "^4.0.10",
|
|
83
|
+
"@types/ember__component": "^4.0.22",
|
|
84
|
+
"@types/ember__controller": "^4.0.12",
|
|
85
|
+
"@types/ember__debug": "^4.0.8",
|
|
86
|
+
"@types/ember__engine": "^4.0.11",
|
|
87
|
+
"@types/ember__error": "^4.0.6",
|
|
88
|
+
"@types/ember__helper": "^4.0.8",
|
|
89
|
+
"@types/ember__modifier": "^4.0.9",
|
|
90
|
+
"@types/ember__object": "^4.0.12",
|
|
91
|
+
"@types/ember__owner": "^4.0.9",
|
|
92
|
+
"@types/ember__polyfills": "^4.0.6",
|
|
93
|
+
"@types/ember__routing": "^4.0.22",
|
|
94
|
+
"@types/ember__runloop": "^4.0.10",
|
|
95
|
+
"@types/ember__service": "^4.0.9",
|
|
96
|
+
"@types/ember__string": "^3.16.3",
|
|
97
|
+
"@types/ember__template": "^4.0.7",
|
|
98
|
+
"@types/ember__test": "^4.0.6",
|
|
99
|
+
"@types/ember__utils": "^4.0.7",
|
|
100
|
+
"@types/ember__destroyable": "^4.0.5",
|
|
101
|
+
"@types/rsvp": "^4.0.9",
|
|
102
|
+
"@typescript-eslint/eslint-plugin": "^8.3.0",
|
|
103
|
+
"@typescript-eslint/parser": "^8.3.0",
|
|
104
|
+
"babel-plugin-ember-template-compilation": "^2.2.5",
|
|
105
|
+
"concurrently": "^9.0.1",
|
|
106
|
+
"ember-modifier": "^4.2.0",
|
|
107
|
+
"ember-template-lint": "^6.0.0",
|
|
108
|
+
"eslint": "^8.57.0",
|
|
109
|
+
"eslint-config-prettier": "^9.1.0",
|
|
110
|
+
"eslint-plugin-ember": "^12.2.0",
|
|
111
|
+
"eslint-plugin-import": "^2.30.0",
|
|
112
|
+
"eslint-plugin-n": "^17.10.3",
|
|
113
|
+
"eslint-plugin-prettier": "^5.2.1",
|
|
114
|
+
"eslint-plugin-qunit": "^8.1.2",
|
|
115
|
+
"prettier": "^3.3.3",
|
|
116
|
+
"rollup": "^3.29.5",
|
|
117
|
+
"rollup-plugin-copy": "^3.5.0",
|
|
118
|
+
"typescript": "^5.6.2",
|
|
119
|
+
"webpack": "^5.94.0"
|
|
54
120
|
},
|
|
55
121
|
"engines": {
|
|
56
122
|
"node": "14.* || >= 16"
|
|
@@ -62,9 +128,9 @@
|
|
|
62
128
|
"edition": "octane"
|
|
63
129
|
},
|
|
64
130
|
"ember-addon": {
|
|
65
|
-
"main": "addon-main.js",
|
|
66
|
-
"type": "addon",
|
|
67
131
|
"version": 2,
|
|
132
|
+
"type": "addon",
|
|
133
|
+
"main": "addon-main.cjs",
|
|
68
134
|
"demoURL": "https://ember-sortable.netlify.app/",
|
|
69
135
|
"app-js": {
|
|
70
136
|
"./modifiers/sortable-group.js": "./dist/_app_/modifiers/sortable-group.js",
|
|
@@ -77,11 +143,19 @@
|
|
|
77
143
|
"extends": "../package.json"
|
|
78
144
|
},
|
|
79
145
|
"scripts": {
|
|
80
|
-
"build": "
|
|
81
|
-
"
|
|
146
|
+
"build": "concurrently 'pnpm:build:*'",
|
|
147
|
+
"build:js": "rollup --config",
|
|
148
|
+
"build:types": "glint --declaration",
|
|
149
|
+
"lint": "concurrently 'pnpm:lint:*(!fix)' --names 'lint:'",
|
|
150
|
+
"lint:fix": "concurrently 'pnpm:lint:*:fix' --names 'fix:'",
|
|
151
|
+
"lint:hbs": "ember-template-lint . --no-error-on-unmatched-pattern",
|
|
152
|
+
"lint:hbs:fix": "ember-template-lint . --fix --no-error-on-unmatched-pattern",
|
|
82
153
|
"lint:js": "eslint . --cache",
|
|
83
154
|
"lint:js:fix": "eslint . --fix",
|
|
84
|
-
"
|
|
85
|
-
"
|
|
155
|
+
"lint:types": "glint",
|
|
156
|
+
"start": "concurrently 'pnpm:start:*'",
|
|
157
|
+
"start:js": "rollup --config --watch --no-watch.clearScreen",
|
|
158
|
+
"start:types": "glint --declaration --watch",
|
|
159
|
+
"test": "echo 'A v2 addon does not have tests, run tests in test-app'"
|
|
86
160
|
}
|
|
87
161
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_rollupPluginBabelHelpers-543b1c36.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
class ScrollContainer {
|
|
2
|
-
constructor(element) {
|
|
3
|
-
this.isWindow = element === document;
|
|
4
|
-
this.element = this.isWindow ? document.documentElement : element;
|
|
5
|
-
if (this.isWindow) {
|
|
6
|
-
this.top = 0;
|
|
7
|
-
this.left = 0;
|
|
8
|
-
this.width = document.documentElement.clientWidth;
|
|
9
|
-
this.height = document.documentElement.clientHeight;
|
|
10
|
-
} else {
|
|
11
|
-
// Absolute position in document
|
|
12
|
-
let {
|
|
13
|
-
top,
|
|
14
|
-
left
|
|
15
|
-
} = this.element.getBoundingClientRect();
|
|
16
|
-
this.top = top;
|
|
17
|
-
this.left = left;
|
|
18
|
-
// Viewport size of the container element
|
|
19
|
-
this.width = parseFloat(getComputedStyle(this.element).width);
|
|
20
|
-
this.height = parseFloat(getComputedStyle(this.element).height);
|
|
21
|
-
}
|
|
22
|
-
// Total size of the container element (including scrollable part)
|
|
23
|
-
this.scrollWidth = this.element.scrollWidth;
|
|
24
|
-
this.scrollHeight = this.element.scrollHeight;
|
|
25
|
-
// Max scroll pos
|
|
26
|
-
this.maxScrollTop = this.scrollHeight - this.height;
|
|
27
|
-
this.maxScrollLeft = this.scrollWidth - this.width;
|
|
28
|
-
}
|
|
29
|
-
get bottom() {
|
|
30
|
-
return this.top + this.height;
|
|
31
|
-
}
|
|
32
|
-
get right() {
|
|
33
|
-
return this.left + this.width;
|
|
34
|
-
}
|
|
35
|
-
scrollTop(value) {
|
|
36
|
-
if (value) {
|
|
37
|
-
value = Math.max(0, Math.min(this.maxScrollTop, value));
|
|
38
|
-
this.element.scrollTop = value;
|
|
39
|
-
return value;
|
|
40
|
-
}
|
|
41
|
-
return this.element.scrollTop;
|
|
42
|
-
}
|
|
43
|
-
scrollLeft(value) {
|
|
44
|
-
if (value) {
|
|
45
|
-
value = Math.max(0, Math.min(this.maxScrollLeft, value));
|
|
46
|
-
this.element.scrollLeft = value;
|
|
47
|
-
return value;
|
|
48
|
-
}
|
|
49
|
-
return this.element.scrollLeft;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export { ScrollContainer as default };
|
|
54
|
-
//# sourceMappingURL=scroll-container.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-container.js","sources":["../../src/system/scroll-container.js"],"sourcesContent":["export default class ScrollContainer {\n constructor(element) {\n this.isWindow = element === document;\n this.element = this.isWindow ? document.documentElement : element;\n\n if (this.isWindow) {\n this.top = 0;\n this.left = 0;\n this.width = document.documentElement.clientWidth;\n this.height = document.documentElement.clientHeight;\n } else {\n // Absolute position in document\n let { top, left } = this.element.getBoundingClientRect();\n this.top = top;\n this.left = left;\n // Viewport size of the container element\n this.width = parseFloat(getComputedStyle(this.element).width);\n this.height = parseFloat(getComputedStyle(this.element).height);\n }\n // Total size of the container element (including scrollable part)\n this.scrollWidth = this.element.scrollWidth;\n this.scrollHeight = this.element.scrollHeight;\n // Max scroll pos\n this.maxScrollTop = this.scrollHeight - this.height;\n this.maxScrollLeft = this.scrollWidth - this.width;\n }\n\n get bottom() {\n return this.top + this.height;\n }\n\n get right() {\n return this.left + this.width;\n }\n\n scrollTop(value) {\n if (value) {\n value = Math.max(0, Math.min(this.maxScrollTop, value));\n this.element.scrollTop = value;\n return value;\n }\n return this.element.scrollTop;\n }\n\n scrollLeft(value) {\n if (value) {\n value = Math.max(0, Math.min(this.maxScrollLeft, value));\n this.element.scrollLeft = value;\n return value;\n }\n return this.element.scrollLeft;\n }\n}\n"],"names":["ScrollContainer","constructor","element","isWindow","document","documentElement","top","left","width","clientWidth","height","clientHeight","getBoundingClientRect","parseFloat","getComputedStyle","scrollWidth","scrollHeight","maxScrollTop","maxScrollLeft","bottom","right","scrollTop","value","Math","max","min","scrollLeft"],"mappings":"AAAe,MAAMA,eAAe,CAAC;EACnCC,WAAWA,CAACC,OAAO,EAAE;AACnB,IAAA,IAAI,CAACC,QAAQ,GAAGD,OAAO,KAAKE,QAAQ,CAAA;IACpC,IAAI,CAACF,OAAO,GAAG,IAAI,CAACC,QAAQ,GAAGC,QAAQ,CAACC,eAAe,GAAGH,OAAO,CAAA;IAEjE,IAAI,IAAI,CAACC,QAAQ,EAAE;MACjB,IAAI,CAACG,GAAG,GAAG,CAAC,CAAA;MACZ,IAAI,CAACC,IAAI,GAAG,CAAC,CAAA;AACb,MAAA,IAAI,CAACC,KAAK,GAAGJ,QAAQ,CAACC,eAAe,CAACI,WAAW,CAAA;AACjD,MAAA,IAAI,CAACC,MAAM,GAAGN,QAAQ,CAACC,eAAe,CAACM,YAAY,CAAA;AACrD,KAAC,MAAM;AACL;MACA,IAAI;QAAEL,GAAG;AAAEC,QAAAA,IAAAA;AAAK,OAAC,GAAG,IAAI,CAACL,OAAO,CAACU,qBAAqB,EAAE,CAAA;MACxD,IAAI,CAACN,GAAG,GAAGA,GAAG,CAAA;MACd,IAAI,CAACC,IAAI,GAAGA,IAAI,CAAA;AAChB;AACA,MAAA,IAAI,CAACC,KAAK,GAAGK,UAAU,CAACC,gBAAgB,CAAC,IAAI,CAACZ,OAAO,CAAC,CAACM,KAAK,CAAC,CAAA;AAC7D,MAAA,IAAI,CAACE,MAAM,GAAGG,UAAU,CAACC,gBAAgB,CAAC,IAAI,CAACZ,OAAO,CAAC,CAACQ,MAAM,CAAC,CAAA;AACjE,KAAA;AACA;AACA,IAAA,IAAI,CAACK,WAAW,GAAG,IAAI,CAACb,OAAO,CAACa,WAAW,CAAA;AAC3C,IAAA,IAAI,CAACC,YAAY,GAAG,IAAI,CAACd,OAAO,CAACc,YAAY,CAAA;AAC7C;IACA,IAAI,CAACC,YAAY,GAAG,IAAI,CAACD,YAAY,GAAG,IAAI,CAACN,MAAM,CAAA;IACnD,IAAI,CAACQ,aAAa,GAAG,IAAI,CAACH,WAAW,GAAG,IAAI,CAACP,KAAK,CAAA;AACpD,GAAA;EAEA,IAAIW,MAAMA,GAAG;AACX,IAAA,OAAO,IAAI,CAACb,GAAG,GAAG,IAAI,CAACI,MAAM,CAAA;AAC/B,GAAA;EAEA,IAAIU,KAAKA,GAAG;AACV,IAAA,OAAO,IAAI,CAACb,IAAI,GAAG,IAAI,CAACC,KAAK,CAAA;AAC/B,GAAA;EAEAa,SAASA,CAACC,KAAK,EAAE;AACf,IAAA,IAAIA,KAAK,EAAE;AACTA,MAAAA,KAAK,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,IAAI,CAACR,YAAY,EAAEK,KAAK,CAAC,CAAC,CAAA;AACvD,MAAA,IAAI,CAACpB,OAAO,CAACmB,SAAS,GAAGC,KAAK,CAAA;AAC9B,MAAA,OAAOA,KAAK,CAAA;AACd,KAAA;AACA,IAAA,OAAO,IAAI,CAACpB,OAAO,CAACmB,SAAS,CAAA;AAC/B,GAAA;EAEAK,UAAUA,CAACJ,KAAK,EAAE;AAChB,IAAA,IAAIA,KAAK,EAAE;AACTA,MAAAA,KAAK,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,IAAI,CAACP,aAAa,EAAEI,KAAK,CAAC,CAAC,CAAA;AACxD,MAAA,IAAI,CAACpB,OAAO,CAACwB,UAAU,GAAGJ,KAAK,CAAA;AAC/B,MAAA,OAAOA,KAAK,CAAA;AACd,KAAA;AACA,IAAA,OAAO,IAAI,CAACpB,OAAO,CAACwB,UAAU,CAAA;AAChC,GAAA;AACF;;;;"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
function getParentElements(element) {
|
|
2
|
-
const parentsArray = [];
|
|
3
|
-
if (!element) {
|
|
4
|
-
return parentsArray;
|
|
5
|
-
}
|
|
6
|
-
let currentParent = element.parentElement;
|
|
7
|
-
while (currentParent !== null) {
|
|
8
|
-
parentsArray.push(currentParent);
|
|
9
|
-
currentParent = currentParent.parentElement;
|
|
10
|
-
}
|
|
11
|
-
return parentsArray;
|
|
12
|
-
}
|
|
13
|
-
function scrollParent (element) {
|
|
14
|
-
let position = getComputedStyle(element).position;
|
|
15
|
-
let excludeStaticParent = position === 'absolute';
|
|
16
|
-
let scrollParent = getParentElements(element).filter(function (parent) {
|
|
17
|
-
let parentElemStyles = getComputedStyle(parent);
|
|
18
|
-
if (excludeStaticParent && parentElemStyles.position === 'static') {
|
|
19
|
-
return false;
|
|
20
|
-
}
|
|
21
|
-
let {
|
|
22
|
-
overflow,
|
|
23
|
-
overflowX,
|
|
24
|
-
overflowY
|
|
25
|
-
} = parentElemStyles;
|
|
26
|
-
return /(auto|scroll)/.test(overflow + overflowX + overflowY);
|
|
27
|
-
})[0];
|
|
28
|
-
if (!scrollParent || scrollParent === document.body) {
|
|
29
|
-
scrollParent = document;
|
|
30
|
-
}
|
|
31
|
-
return position === 'fixed' || scrollParent;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export { scrollParent as default };
|
|
35
|
-
//# sourceMappingURL=scroll-parent.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scroll-parent.js","sources":["../../src/system/scroll-parent.js"],"sourcesContent":["function getParentElements(element) {\n const parentsArray = [];\n\n if (!element) {\n return parentsArray;\n }\n\n let currentParent = element.parentElement;\n\n while (currentParent !== null) {\n parentsArray.push(currentParent);\n currentParent = currentParent.parentElement;\n }\n return parentsArray;\n}\n\nexport default function (element) {\n let position = getComputedStyle(element).position;\n let excludeStaticParent = position === 'absolute';\n let scrollParent = getParentElements(element).filter(function (parent) {\n let parentElemStyles = getComputedStyle(parent);\n if (excludeStaticParent && parentElemStyles.position === 'static') {\n return false;\n }\n let { overflow, overflowX, overflowY } = parentElemStyles;\n return /(auto|scroll)/.test(overflow + overflowX + overflowY);\n })[0];\n\n if (!scrollParent || scrollParent === document.body) {\n scrollParent = document;\n }\n return position === 'fixed' || scrollParent;\n}\n"],"names":["getParentElements","element","parentsArray","currentParent","parentElement","push","position","getComputedStyle","excludeStaticParent","scrollParent","filter","parent","parentElemStyles","overflow","overflowX","overflowY","test","document","body"],"mappings":"AAAA,SAASA,iBAAiBA,CAACC,OAAO,EAAE;EAClC,MAAMC,YAAY,GAAG,EAAE,CAAA;EAEvB,IAAI,CAACD,OAAO,EAAE;AACZ,IAAA,OAAOC,YAAY,CAAA;AACrB,GAAA;AAEA,EAAA,IAAIC,aAAa,GAAGF,OAAO,CAACG,aAAa,CAAA;EAEzC,OAAOD,aAAa,KAAK,IAAI,EAAE;AAC7BD,IAAAA,YAAY,CAACG,IAAI,CAACF,aAAa,CAAC,CAAA;IAChCA,aAAa,GAAGA,aAAa,CAACC,aAAa,CAAA;AAC7C,GAAA;AACA,EAAA,OAAOF,YAAY,CAAA;AACrB,CAAA;AAEe,qBAAA,EAAUD,OAAO,EAAE;AAChC,EAAA,IAAIK,QAAQ,GAAGC,gBAAgB,CAACN,OAAO,CAAC,CAACK,QAAQ,CAAA;AACjD,EAAA,IAAIE,mBAAmB,GAAGF,QAAQ,KAAK,UAAU,CAAA;EACjD,IAAIG,YAAY,GAAGT,iBAAiB,CAACC,OAAO,CAAC,CAACS,MAAM,CAAC,UAAUC,MAAM,EAAE;AACrE,IAAA,IAAIC,gBAAgB,GAAGL,gBAAgB,CAACI,MAAM,CAAC,CAAA;AAC/C,IAAA,IAAIH,mBAAmB,IAAII,gBAAgB,CAACN,QAAQ,KAAK,QAAQ,EAAE;AACjE,MAAA,OAAO,KAAK,CAAA;AACd,KAAA;IACA,IAAI;MAAEO,QAAQ;MAAEC,SAAS;AAAEC,MAAAA,SAAAA;AAAU,KAAC,GAAGH,gBAAgB,CAAA;IACzD,OAAO,eAAe,CAACI,IAAI,CAACH,QAAQ,GAAGC,SAAS,GAAGC,SAAS,CAAC,CAAA;GAC9D,CAAC,CAAC,CAAC,CAAC,CAAA;EAEL,IAAI,CAACN,YAAY,IAAIA,YAAY,KAAKQ,QAAQ,CAACC,IAAI,EAAE;AACnDT,IAAAA,YAAY,GAAGQ,QAAQ,CAAA;AACzB,GAAA;AACA,EAAA,OAAOX,QAAQ,KAAK,OAAO,IAAIG,YAAY,CAAA;AAC7C;;;;"}
|