@eccenca/gui-elements 23.7.0-rc.2 → 23.7.0-rc.3
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/CHANGELOG.md +1 -1
- package/dist/cjs/components/MultiSelect/MultiSelect.js +5 -33
- package/dist/cjs/components/MultiSelect/MultiSelect.js.map +1 -1
- package/dist/cjs/components/Sticky/StickyTarget.js +46 -5
- package/dist/cjs/components/Sticky/StickyTarget.js.map +1 -1
- package/dist/esm/components/MultiSelect/MultiSelect.js +5 -33
- package/dist/esm/components/MultiSelect/MultiSelect.js.map +1 -1
- package/dist/esm/components/Sticky/StickyTarget.js +46 -5
- package/dist/esm/components/Sticky/StickyTarget.js.map +1 -1
- package/dist/types/cmem/ActivityControl/ActivityControlTypes.d.ts +1 -0
- package/dist/types/components/MultiSelect/MultiSelect.d.ts +14 -9
- package/dist/types/components/Sticky/StickyTarget.d.ts +14 -3
- package/package.json +1 -1
- package/src/cmem/ActivityControl/ActivityControlTypes.ts +2 -0
- package/src/components/MultiSelect/MultiSelect.tsx +25 -43
- package/src/components/MultiSuggestField/MultiSuggestField.stories.tsx +1 -2
- package/src/components/MultiSuggestField/tests/MultiSuggestField.test.tsx +90 -6
- package/src/components/Sticky/StickyTarget.tsx +63 -7
- package/src/components/Sticky/sticky.scss +71 -12
- package/src/components/TextField/textfield.scss +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -27,7 +27,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p
|
|
|
27
27
|
### Fixed
|
|
28
28
|
|
|
29
29
|
- `<MultiSuggestField />`
|
|
30
|
-
-
|
|
30
|
+
- Updated the interface with the ability to use either `selectedItems` or `prePopulateWithItems` properties, which is more logical.
|
|
31
31
|
- Fixed deferred `selectedItems` setting.
|
|
32
32
|
- `<StickyNoteModal/>`
|
|
33
33
|
- static test id `data-test-id="sticky-note-modal"` will be removed with next major version
|
|
@@ -61,7 +61,7 @@ function MultiSelect(_a) {
|
|
|
61
61
|
const [externalItems, setExternalItems] = react_1.default.useState([...items]);
|
|
62
62
|
// All options (created and passed) that match the query
|
|
63
63
|
const [filteredItems, setFilteredItems] = react_1.default.useState([]);
|
|
64
|
-
// All options (created and passed) selected by a user
|
|
64
|
+
// All options (created and passed) selected by a user
|
|
65
65
|
const [selectedItems, setSelectedItems] = react_1.default.useState(() => prePopulateWithItems ? [...items] : externalSelectedItems ? [...externalSelectedItems] : []);
|
|
66
66
|
//currently focused element in popover list
|
|
67
67
|
const [focusedItem, setFocusedItem] = react_1.default.useState(null);
|
|
@@ -85,9 +85,6 @@ function MultiSelect(_a) {
|
|
|
85
85
|
default:
|
|
86
86
|
break;
|
|
87
87
|
}
|
|
88
|
-
// If the component is contolled from outside, we don't need to store selected state within the component
|
|
89
|
-
// when user selects or removes selection - options will be set in a parent component
|
|
90
|
-
const isControlled = !!(externalSelectedItems && onSelection);
|
|
91
88
|
/** Update external items when they change
|
|
92
89
|
* e.g for auto-complete when query change
|
|
93
90
|
*/
|
|
@@ -96,15 +93,13 @@ function MultiSelect(_a) {
|
|
|
96
93
|
setFilteredItems([...items, ...createdItems.current]);
|
|
97
94
|
}, [items.map((item) => itemId(item)).join("|")]);
|
|
98
95
|
react_1.default.useEffect(() => {
|
|
99
|
-
|
|
100
|
-
onSelection &&
|
|
96
|
+
onSelection &&
|
|
101
97
|
onSelection({
|
|
102
98
|
newlySelected: selectedItems.slice(-1)[0],
|
|
103
99
|
createdItems: createdItems.current,
|
|
104
100
|
selectedItems,
|
|
105
101
|
});
|
|
106
102
|
}, [
|
|
107
|
-
isControlled,
|
|
108
103
|
onSelection,
|
|
109
104
|
selectedItems.map((item) => itemId(item)).join("|"),
|
|
110
105
|
createdItems.current.map((item) => itemId(item)).join("|"),
|
|
@@ -117,7 +112,7 @@ function MultiSelect(_a) {
|
|
|
117
112
|
return;
|
|
118
113
|
}
|
|
119
114
|
setSelectedItems(externalSelectedItems);
|
|
120
|
-
}, [externalSelectedItems]);
|
|
115
|
+
}, [externalSelectedItems === null || externalSelectedItems === void 0 ? void 0 : externalSelectedItems.map((item) => itemId(item)).join("|")]);
|
|
121
116
|
/**
|
|
122
117
|
* using the equality prop specified checks if an item has already been selected
|
|
123
118
|
* @param matcher
|
|
@@ -132,15 +127,7 @@ function MultiSelect(_a) {
|
|
|
132
127
|
*/
|
|
133
128
|
const removeItemSelection = (matcher) => {
|
|
134
129
|
const filteredItems = selectedItems.filter((item) => itemId(item) !== matcher);
|
|
135
|
-
|
|
136
|
-
onSelection({
|
|
137
|
-
createdItems: createdItems.current,
|
|
138
|
-
selectedItems: filteredItems,
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
else {
|
|
142
|
-
setSelectedItems(filteredItems);
|
|
143
|
-
}
|
|
130
|
+
setSelectedItems(filteredItems);
|
|
144
131
|
};
|
|
145
132
|
/**
|
|
146
133
|
* selects and deselects an item from selection list
|
|
@@ -152,13 +139,6 @@ function MultiSelect(_a) {
|
|
|
152
139
|
if (itemHasBeenSelectedAlready(itemId(item))) {
|
|
153
140
|
removeItemSelection(itemId(item));
|
|
154
141
|
}
|
|
155
|
-
else if (isControlled) {
|
|
156
|
-
onSelection({
|
|
157
|
-
newlySelected: item,
|
|
158
|
-
createdItems: createdItems.current,
|
|
159
|
-
selectedItems: [...selectedItems, item],
|
|
160
|
-
});
|
|
161
|
-
}
|
|
162
142
|
else {
|
|
163
143
|
setSelectedItems((items) => [...items, item]);
|
|
164
144
|
}
|
|
@@ -221,15 +201,7 @@ function MultiSelect(_a) {
|
|
|
221
201
|
*/
|
|
222
202
|
const handleClear = () => {
|
|
223
203
|
requestState.current.query = "";
|
|
224
|
-
|
|
225
|
-
onSelection({
|
|
226
|
-
selectedItems: [],
|
|
227
|
-
createdItems: createdItems.current,
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
else {
|
|
231
|
-
setSelectedItems([]);
|
|
232
|
-
}
|
|
204
|
+
setSelectedItems([]);
|
|
233
205
|
setFilteredItems([...externalItems, ...createdItems.current]);
|
|
234
206
|
};
|
|
235
207
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.js","sourceRoot":"","sources":["../../../../src/components/MultiSelect/MultiSelect.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAsC;AACtC,4CAAyG;AACzG,gDAI6B;AAE7B,gEAAmE;AACnE,6DAAsE;AAGtE,yCAA8G;AAqH9G;;;;;;GAMG;AACH,SAAgB,WAAW,CAAI,EA4BT;QA5BS,EAC3B,KAAK,EACL,aAAa,EAAE,qBAAqB,EACpC,oBAAoB,EACpB,MAAM,EACN,SAAS,EACT,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,SAAS,GAAG,IAAI,EAChB,YAAY,GAAG,aAAa,EAC5B,mBAAmB,GAAG,cAAc,EACpC,cAAc,GAAG,aAAa,EAC9B,eAAe,EACf,cAAc,EACd,eAAe,EACf,eAAe,EACf,QAAQ,EACR,sBAAsB,EACtB,YAAY,GAAG,CAAC,EAChB,qBAAqB,GAAG,KAAK,EAC7B,SAAS,EACT,cAAc,EAAE,UAAU,EAC1B,aAAa,EAAE,UAAU,EACzB,YAAY,OAEM,EADf,qBAAqB,cA3BG,8bA4B9B,CAD2B;IAExB,4BAA4B;IAC5B,MAAM,YAAY,GAAG,IAAA,cAAM,EAAM,EAAE,CAAC,CAAC;IACrC,gDAAgD;IAChD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAC1E,wDAAwD;IACxD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAM,EAAE,CAAC,CAAC;IAClE,wFAAwF;IACxF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAM,GAAG,EAAE,CAC/D,oBAAoB,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAC9F,CAAC;IAEF,2CAA2C;IAC3C,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAW,IAAI,CAAC,CAAC;IACrE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,eAAK,CAAC,MAAM,CAAmB,IAAI,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,IAAA,cAAM,EAGxB,EAAE,CAAC,CAAC;IAEP,IAAI,MAAM,CAAC;IACX,QAAQ,IAAI,EAAE;QACV,KAAK,eAAe;YAChB,MAAM,GAAG,aAAe,CAAC,OAAO,CAAC;YACjC,MAAM;QACV,KAAK,eAAe;YAChB,MAAM,GAAG,aAAe,CAAC,OAAO,CAAC;YACjC,MAAM;QACV,KAAK,eAAe;YAChB,MAAM,GAAG,aAAe,CAAC,OAAO,CAAC;YACjC,MAAM;QACV,KAAK,cAAc;YACf,MAAM,GAAG,aAAe,CAAC,MAAM,CAAC;YAChC,MAAM;QACV;YACI,MAAM;KACb;IAED,yGAAyG;IACzG,qFAAqF;IACrF,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,qBAAqB,IAAI,WAAW,CAAC,CAAC;IAE9D;;OAEG;IACH,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxB,gBAAgB,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAElD,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,CAAC,YAAY;YACT,WAAW;YACX,WAAW,CAAC;gBACR,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,EAAE,YAAY,CAAC,OAAO;gBAClC,aAAa;aAChB,CAAC,CAAC;IACX,CAAC,EAAE;QACC,YAAY;QACZ,WAAW;QACX,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACnD,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;KAC7D,CAAC,CAAC;IAEH;;OAEG;IACH,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,CAAC,qBAAqB,EAAE;YACxB,OAAO;SACV;QAED,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAC5C,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAE5B;;;;OAIG;IACH,MAAM,0BAA0B,GAAG,CAAC,OAAe,EAAE,EAAE;QACnD,OAAO,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;IACpE,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE;QAC5C,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;QAE/E,IAAI,YAAY,EAAE;YACd,WAAW,CAAC;gBACR,YAAY,EAAE,YAAY,CAAC,OAAO;gBAClC,aAAa,EAAE,aAAa;aAC/B,CAAC,CAAC;SACN;aAAM;YACH,gBAAgB,CAAC,aAAa,CAAC,CAAC;SACnC;IACL,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,YAAY,GAAG,CAAC,IAAO,EAAE,EAAE;;QAC7B,IAAI,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE;YAC1C,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SACrC;aAAM,IAAI,YAAY,EAAE;YACrB,WAAW,CAAC;gBACR,aAAa,EAAE,IAAI;gBACnB,YAAY,EAAE,YAAY,CAAC,OAAO;gBAClC,aAAa,EAAE,CAAC,GAAG,aAAa,EAAE,IAAI,CAAC;aAC1C,CAAC,CAAC;SACN;aAAM;YACH,gBAAgB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;SACjD;QAED,IAAI,qBAAqB,EAAE;YACvB,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YAChC,MAAA,QAAQ,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;SAC7B;aAAM;YACH,MAAA,QAAQ,CAAC,OAAO,0CAAE,MAAM,EAAE,CAAC;SAC9B;IACL,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;QACpC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,KAAK,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE;YACtD,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;YACnC,IAAI,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE;gBAChC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aAChD;YACD,MAAM,EAAE,GAAG,GAAS,EAAE;gBAClB,cAAc,CAAC,IAAI,CAAC,CAAC;gBACrB,gBAAgB,CAAC,EAAE,CAAC,CAAC;gBACrB,MAAM,eAAe,GAAG,gBAAgB,IAAI,CAAC,MAAM,gBAAgB,CAAC,IAAA,+BAAiB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/F,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE;oBACtC,+BAA+B;oBAC/B,MAAM,cAAc,GAAG,CAAC,GAAG,CAAC,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,aAAa,CAAC,CAAC,CAAC;oBAC/D,gBAAgB,CACZ,CAAC,GAAG,cAAc,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACzD,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAC9D,CACJ,CAAC;oBACF,cAAc,CAAC,KAAK,CAAC,CAAC;iBACzB;YACL,CAAC,CAAA,CAAC;YACF,YAAY,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,YAAY,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/G;aAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACtB,4EAA4E;YAC5E,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YAChC,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,aAAa,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;SACvE;IACL,CAAC,CAAC;IAEF,mDAAmD;IACnD,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,EAAE;QACrC,OAAO,8BAAC,mBAAW,IAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,GAAI,CAAC;IAClF,CAAC,CAAC;IAEF;;OAEG;IACH,MAAM,cAAc,GAAG,CAAC,IAAO,EAAE,EAAE,WAAW,EAAE,SAAS,EAA8B,EAAE,EAAE;QACvF,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;YAC7B,OAAO,IAAI,CAAC;SACf;QACD,IAAI,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE;YAC1E,KAAK,IAAI,cAAc,CAAC;SAC3B;QACD,OAAO,CACH,8BAAC,gBAAQ,IACL,MAAM,EAAE,SAAS,CAAC,MAAM,EACxB,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EACjB,IAAI,EAAE,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,EACpF,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAC3B,oBAAoB,EAAE,KAAK,GAC7B,CACL,CAAC;IACN,CAAC,CAAC;IAEF;;OAEG;IACH,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAEhC,IAAI,YAAY,EAAE;YACd,WAAW,CAAC;gBACR,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,YAAY,CAAC,OAAO;aACrC,CAAC,CAAC;SACN;aAAM;YACH,gBAAgB,CAAC,EAAE,CAAC,CAAC;SACxB;QAED,gBAAgB,CAAC,CAAC,GAAG,aAAa,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,8BAA8B,GAAG,CAAC,MAAuB,EAAE,KAAa,EAAE,EAAE;QAC9E,gBAAgB,CAAC,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC,CAAC;IAEF;;OAEG;IACH,MAAM,aAAa,GAAG,CAAC,KAAa,EAAK,EAAE;QACvC,MAAM,OAAO,GAAG,sBAAuB,CAAC,KAAK,CAAC,CAAC;QAC/C,eAAe;QACf,YAAY,CAAC,OAAO,GAAG,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1D,gBAAgB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QACjD,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACnB,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,aAAa,GAAG,CAAC,KAAuC,EAAE,EAAE;;QAC9D,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,sBAAsB,EAAE;YAC1G,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC7C;QACD,MAAA,QAAQ,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;IAC9B,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,eAAe,GAAG,CAAC,KAAuC,EAAE,EAAE;QAChE,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE;YACrD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAClG,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YAChC,UAAU,CAAC,GAAG,EAAE,WAAC,OAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAA,EAAA,CAAC,CAAC;SAC/C;IACL,CAAC,CAAC;IAEF;;;;;;OAMG;IACH,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,MAAe,EAAE,WAAiD,EAAE,EAAE;QAC1G,IAAI,CAAC,sBAAsB;YAAE,OAAO,SAAS,CAAC;QAC9C,MAAM,YAAY,GAAG,CAAC,CAAgC,EAAE,EAAE;YACtD,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,WAAW,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC;QACF,OAAO,CACH,8BAAC,gBAAQ,IACL,EAAE,EAAE,UAAU,EACd,IAAI,EAAC,mBAAmB,EACxB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,EACV,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,8BAAC,oBAAY,QAAE,GAAG,mBAAmB,KAAK,KAAK,GAAG,CAAgB,GAC1E,CACL,CAAC;IACN,CAAC,CAAC;IAEF,6DAA6D;IAC7D,MAAM,WAAW,GACb,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACvB,8BAAC,kBAAU,IACP,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,iBAAiB,kBACT,iBAAiB,CAAC,+EAA+E;UAC9G,OAAO,EAAE,WAAW,GACtB,CACL,CAAC,CAAC,CAAC,SAAS,CAAC;IAElB,MAAM,YAAY,GAAG,WAAW;QAC5B,CAAC,CAAC;YACI,YAAY,EAAE,8BAAC,eAAO,IAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAI;SAC9D;QACH,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,kBAAkB,GAAG,CACvB,8BAAC,oBAAoB,kBACjB,WAAW,EACP,CAAC,qBAAqB,CAAC,WAAW,IAAI,sBAAsB;YACxD,CAAC,CAAC,qDAAqD;YACvD,CAAC,CAAC,SAAS,IAEf,qBAAqB,IACzB,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,EACjC,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,aAAa,EACpB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,cAAc,EAC5B,UAAU,EAAE,CAAC,CAAI,EAAE,CAAI,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EACnD,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,8BAAC,gBAAQ,IAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,GAAI,EAC3D,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EACtC,qBAAqB,EAAE,eAAe,EACtC,kBAAkB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,EAC9D,IAAI,EAAE,SAAS,EACf,sBAAsB,EAAE,sBAAsB,EAC9C,QAAQ,EAAE,QAAQ,EAClB,aAAa,gCACT,UAAU,EAAE,gBACR,EAAE,EAAE,MAAM,EACV,YAAY,EAAE,KAAK,EACnB,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,EACpE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,IAChE,UAAU,CAC+B,EAChD,SAAS,EAAE,GAAG,uBAAM,cAAc,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACvE,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,QAAQ,EAClB,MAAM,EACN,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,8BAA8B,EACxC,YAAY,EAAE,CACV,8DACK,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI;gBACnB,qBAAqB,CAAC,aAAa,KAAK,IAAI,IAAI,CAC7C,8BAAC,kBAAU,IACP,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,mBAAmB,kBACX,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,iBACjD,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,GAC/D,CACL,CACF,CACN,EACD,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAC3B,QAAQ,IACL,aAAa,GACb,YAAY,GAEnB,kBAAkB,EAAE;YAChB,SAAS,EAAE,GAAG,uBAAM,sBAAsB;SAC7C,EACD,YAAY,kBACR,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,cAAc,EACzB,gBAAgB,EAAE,SAAS,IACxB,mBAAmB,GAE1B,mBAAmB,EACf;YACI,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,SAAS;YAClE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS;SACZ,IAE9D,CACL,CAAC;IAEF,OAAO,YAAY,IAAI,UAAU,IAAI,UAAU,CAAC,CAAC,CAAC,CAC9C,qDACI,SAAS,EAAE,GAAG,uBAAM,uBAAuB,IACvC,CAAC,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CAAC,EACpB,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,GAE5D,kBAAkB,CACjB,CACT,CAAC,CAAC,CAAC,CACA,8DAAG,kBAAkB,CAAI,CAC5B,CAAC;AACN,CAAC;AAzZD,kCAyZC;AAED,kBAAkB;AAClB;;;;KAIK;AAEL,mFAAmF;AACnF,+BAA+B;AAC/B,WAAW,CAAC,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC;AAEjD,kBAAe,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"MultiSelect.js","sourceRoot":"","sources":["../../../../src/components/MultiSelect/MultiSelect.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAsC;AACtC,4CAAyG;AACzG,gDAI6B;AAE7B,gEAAmE;AACnE,6DAAsE;AAGtE,yCAA8G;AA+H9G;;;;;;GAMG;AACH,SAAgB,WAAW,CAAI,EA4BT;QA5BS,EAC3B,KAAK,EACL,aAAa,EAAE,qBAAqB,EACpC,oBAAoB,EACpB,MAAM,EACN,SAAS,EACT,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,SAAS,GAAG,IAAI,EAChB,YAAY,GAAG,aAAa,EAC5B,mBAAmB,GAAG,cAAc,EACpC,cAAc,GAAG,aAAa,EAC9B,eAAe,EACf,cAAc,EACd,eAAe,EACf,eAAe,EACf,QAAQ,EACR,sBAAsB,EACtB,YAAY,GAAG,CAAC,EAChB,qBAAqB,GAAG,KAAK,EAC7B,SAAS,EACT,cAAc,EAAE,UAAU,EAC1B,aAAa,EAAE,UAAU,EACzB,YAAY,OAEM,EADf,qBAAqB,cA3BG,8bA4B9B,CAD2B;IAExB,4BAA4B;IAC5B,MAAM,YAAY,GAAG,IAAA,cAAM,EAAM,EAAE,CAAC,CAAC;IACrC,gDAAgD;IAChD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAC1E,wDAAwD;IACxD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAM,EAAE,CAAC,CAAC;IAClE,sDAAsD;IACtD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAM,GAAG,EAAE,CAC/D,oBAAoB,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAC9F,CAAC;IAEF,2CAA2C;IAC3C,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAW,IAAI,CAAC,CAAC;IACrE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,eAAK,CAAC,MAAM,CAAmB,IAAI,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,IAAA,cAAM,EAGxB,EAAE,CAAC,CAAC;IAEP,IAAI,MAAM,CAAC;IACX,QAAQ,IAAI,EAAE;QACV,KAAK,eAAe;YAChB,MAAM,GAAG,aAAe,CAAC,OAAO,CAAC;YACjC,MAAM;QACV,KAAK,eAAe;YAChB,MAAM,GAAG,aAAe,CAAC,OAAO,CAAC;YACjC,MAAM;QACV,KAAK,eAAe;YAChB,MAAM,GAAG,aAAe,CAAC,OAAO,CAAC;YACjC,MAAM;QACV,KAAK,cAAc;YACf,MAAM,GAAG,aAAe,CAAC,MAAM,CAAC;YAChC,MAAM;QACV;YACI,MAAM;KACb;IAED;;OAEG;IACH,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxB,gBAAgB,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAElD,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,WAAW;YACP,WAAW,CAAC;gBACR,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,YAAY,EAAE,YAAY,CAAC,OAAO;gBAClC,aAAa;aAChB,CAAC,CAAC;IACX,CAAC,EAAE;QACC,WAAW;QACX,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACnD,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;KAC7D,CAAC,CAAC;IAEH;;OAEG;IACH,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,CAAC,qBAAqB,EAAE;YACxB,OAAO;SACV;QAED,gBAAgB,CAAC,qBAAqB,CAAC,CAAC;IAC5C,CAAC,EAAE,CAAC,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEnE;;;;OAIG;IACH,MAAM,0BAA0B,GAAG,CAAC,OAAe,EAAE,EAAE;QACnD,OAAO,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;IACpE,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE;QAC5C,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;QAC/E,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,YAAY,GAAG,CAAC,IAAO,EAAE,EAAE;;QAC7B,IAAI,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE;YAC1C,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;SACrC;aAAM;YACH,gBAAgB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;SACjD;QAED,IAAI,qBAAqB,EAAE;YACvB,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YAChC,MAAA,QAAQ,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;SAC7B;aAAM;YACH,MAAA,QAAQ,CAAC,OAAO,0CAAE,MAAM,EAAE,CAAC;SAC9B;IACL,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;QACpC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,KAAK,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE;YACtD,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;YACnC,IAAI,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE;gBAChC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aAChD;YACD,MAAM,EAAE,GAAG,GAAS,EAAE;gBAClB,cAAc,CAAC,IAAI,CAAC,CAAC;gBACrB,gBAAgB,CAAC,EAAE,CAAC,CAAC;gBACrB,MAAM,eAAe,GAAG,gBAAgB,IAAI,CAAC,MAAM,gBAAgB,CAAC,IAAA,+BAAiB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/F,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE;oBACtC,+BAA+B;oBAC/B,MAAM,cAAc,GAAG,CAAC,GAAG,CAAC,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,aAAa,CAAC,CAAC,CAAC;oBAC/D,gBAAgB,CACZ,CAAC,GAAG,cAAc,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACzD,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAC9D,CACJ,CAAC;oBACF,cAAc,CAAC,KAAK,CAAC,CAAC;iBACzB;YACL,CAAC,CAAA,CAAC;YACF,YAAY,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,YAAY,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/G;aAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACtB,4EAA4E;YAC5E,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YAChC,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,aAAa,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;SACvE;IACL,CAAC,CAAC;IAEF,mDAAmD;IACnD,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,EAAE;QACrC,OAAO,8BAAC,mBAAW,IAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,GAAI,CAAC;IAClF,CAAC,CAAC;IAEF;;OAEG;IACH,MAAM,cAAc,GAAG,CAAC,IAAO,EAAE,EAAE,WAAW,EAAE,SAAS,EAA8B,EAAE,EAAE;QACvF,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE;YAC7B,OAAO,IAAI,CAAC;SACf;QACD,IAAI,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE;YAC1E,KAAK,IAAI,cAAc,CAAC;SAC3B;QACD,OAAO,CACH,8BAAC,gBAAQ,IACL,MAAM,EAAE,SAAS,CAAC,MAAM,EACxB,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EACjB,IAAI,EAAE,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,EACpF,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAC3B,oBAAoB,EAAE,KAAK,GAC7B,CACL,CAAC;IACN,CAAC,CAAC;IAEF;;OAEG;IACH,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAEhC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACrB,gBAAgB,CAAC,CAAC,GAAG,aAAa,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,8BAA8B,GAAG,CAAC,MAAuB,EAAE,KAAa,EAAE,EAAE;QAC9E,gBAAgB,CAAC,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC,CAAC;IAEF;;OAEG;IACH,MAAM,aAAa,GAAG,CAAC,KAAa,EAAK,EAAE;QACvC,MAAM,OAAO,GAAG,sBAAuB,CAAC,KAAK,CAAC,CAAC;QAC/C,eAAe;QACf,YAAY,CAAC,OAAO,GAAG,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1D,gBAAgB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QACjD,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACnB,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,aAAa,GAAG,CAAC,KAAuC,EAAE,EAAE;;QAC9D,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,sBAAsB,EAAE;YAC1G,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC7C;QACD,MAAA,QAAQ,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;IAC9B,CAAC,CAAC;IAEF;;;;OAIG;IACH,MAAM,eAAe,GAAG,CAAC,KAAuC,EAAE,EAAE;QAChE,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE;YACrD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAClG,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YAChC,UAAU,CAAC,GAAG,EAAE,WAAC,OAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAA,EAAA,CAAC,CAAC;SAC/C;IACL,CAAC,CAAC;IAEF;;;;;;OAMG;IACH,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,MAAe,EAAE,WAAiD,EAAE,EAAE;QAC1G,IAAI,CAAC,sBAAsB;YAAE,OAAO,SAAS,CAAC;QAC9C,MAAM,YAAY,GAAG,CAAC,CAAgC,EAAE,EAAE;YACtD,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,WAAW,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC;QACF,OAAO,CACH,8BAAC,gBAAQ,IACL,EAAE,EAAE,UAAU,EACd,IAAI,EAAC,mBAAmB,EACxB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,KAAK,EACV,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,8BAAC,oBAAY,QAAE,GAAG,mBAAmB,KAAK,KAAK,GAAG,CAAgB,GAC1E,CACL,CAAC;IACN,CAAC,CAAC;IAEF,6DAA6D;IAC7D,MAAM,WAAW,GACb,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACvB,8BAAC,kBAAU,IACP,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,iBAAiB,kBACT,iBAAiB,CAAC,+EAA+E;UAC9G,OAAO,EAAE,WAAW,GACtB,CACL,CAAC,CAAC,CAAC,SAAS,CAAC;IAElB,MAAM,YAAY,GAAG,WAAW;QAC5B,CAAC,CAAC;YACI,YAAY,EAAE,8BAAC,eAAO,IAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAI;SAC9D;QACH,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,kBAAkB,GAAG,CACvB,8BAAC,oBAAoB,kBACjB,WAAW,EACP,CAAC,qBAAqB,CAAC,WAAW,IAAI,sBAAsB;YACxD,CAAC,CAAC,qDAAqD;YACvD,CAAC,CAAC,SAAS,IAEf,qBAAqB,IACzB,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,EACjC,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,aAAa,EACpB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,cAAc,EAC5B,UAAU,EAAE,CAAC,CAAI,EAAE,CAAI,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EACnD,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,8BAAC,gBAAQ,IAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,GAAI,EAC3D,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EACtC,qBAAqB,EAAE,eAAe,EACtC,kBAAkB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,EAC9D,IAAI,EAAE,SAAS,EACf,sBAAsB,EAAE,sBAAsB,EAC9C,QAAQ,EAAE,QAAQ,EAClB,aAAa,gCACT,UAAU,EAAE,gBACR,EAAE,EAAE,MAAM,EACV,YAAY,EAAE,KAAK,EACnB,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,EACpE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,IAChE,UAAU,CAC+B,EAChD,SAAS,EAAE,GAAG,uBAAM,cAAc,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACvE,IAAI,EAAE,SAAS,EACf,QAAQ,EAAE,QAAQ,EAClB,MAAM,EACN,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,8BAA8B,EACxC,YAAY,EAAE,CACV,8DACK,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI;gBACnB,qBAAqB,CAAC,aAAa,KAAK,IAAI,IAAI,CAC7C,8BAAC,kBAAU,IACP,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,mBAAmB,kBACX,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,iBACjD,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,GAC/D,CACL,CACF,CACN,EACD,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAC3B,QAAQ,IACL,aAAa,GACb,YAAY,GAEnB,kBAAkB,EAAE;YAChB,SAAS,EAAE,GAAG,uBAAM,sBAAsB;SAC7C,EACD,YAAY,kBACR,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,cAAc,EACzB,gBAAgB,EAAE,SAAS,IACxB,mBAAmB,GAE1B,mBAAmB,EACf;YACI,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,SAAS;YAClE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS;SACZ,IAE9D,CACL,CAAC;IAEF,OAAO,YAAY,IAAI,UAAU,IAAI,UAAU,CAAC,CAAC,CAAC,CAC9C,qDACI,SAAS,EAAE,GAAG,uBAAM,uBAAuB,IACvC,CAAC,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CAAC,EACpB,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,GAE5D,kBAAkB,CACjB,CACT,CAAC,CAAC,CAAC,CACA,8DAAG,kBAAkB,CAAI,CAC5B,CAAC;AACN,CAAC;AA7XD,kCA6XC;AAED,kBAAkB;AAClB;;;;KAIK;AAEL,mFAAmF;AACnF,+BAA+B;AAC/B,WAAW,CAAC,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC;AAEjD,kBAAe,WAAW,CAAC"}
|
|
@@ -23,14 +23,19 @@ const constants_1 = require("../../configuration/constants");
|
|
|
23
23
|
* The content then offset relative to its nearest scrolling ancestor and containing block (nearest block-level ancestor).
|
|
24
24
|
*/
|
|
25
25
|
const StickyTarget = (_a) => {
|
|
26
|
-
var { className, to = "top", local = false, background = "transparent",
|
|
26
|
+
var { className, to = "top", local = false, offset, background = "transparent", fillMainGap, fillSecondaryGap, style, getConnectedElement } = _a, otherDivProps = __rest(_a, ["className", "to", "local", "offset", "background", "fillMainGap", "fillSecondaryGap", "style", "getConnectedElement"]);
|
|
27
27
|
const stickyTargetRef = react_1.default.useRef(null);
|
|
28
28
|
let offsetStyle = {};
|
|
29
29
|
if (typeof offset !== "undefined") {
|
|
30
30
|
offsetStyle = Object.assign(Object.assign({}, style), { "--eccgui-sticky-target-localoffset": offset });
|
|
31
31
|
}
|
|
32
|
-
let connectedOffset = 0;
|
|
33
32
|
react_1.default.useEffect(() => {
|
|
33
|
+
let removeEventForConnectedOffset = () => {
|
|
34
|
+
/* no event need to be removed */
|
|
35
|
+
};
|
|
36
|
+
let removeEventForStickynessCheck = () => {
|
|
37
|
+
/* no event need to be removed */
|
|
38
|
+
};
|
|
34
39
|
/**
|
|
35
40
|
* If the target should be sticky to a defined element then:
|
|
36
41
|
* * check for the element and its scroll parent
|
|
@@ -44,6 +49,7 @@ const StickyTarget = (_a) => {
|
|
|
44
49
|
if (scrollParent || scrollParentFallback) {
|
|
45
50
|
const updateTargetOffset = () => {
|
|
46
51
|
var _a;
|
|
52
|
+
let connectedOffset = 0;
|
|
47
53
|
const scrollParentPosition = (scrollParent || scrollParentFallback).getBoundingClientRect();
|
|
48
54
|
const stickyConnectionPosition = stickyConnection.getBoundingClientRect();
|
|
49
55
|
if (to === "top") {
|
|
@@ -66,18 +72,53 @@ const StickyTarget = (_a) => {
|
|
|
66
72
|
updateTargetOffset();
|
|
67
73
|
};
|
|
68
74
|
eventListeningTarget.addEventListener("scroll", eventListeningMethod);
|
|
69
|
-
|
|
75
|
+
removeEventForConnectedOffset = () => {
|
|
70
76
|
eventListeningTarget.removeEventListener("scroll", eventListeningMethod);
|
|
71
77
|
};
|
|
72
78
|
}
|
|
73
79
|
}
|
|
74
80
|
}
|
|
75
|
-
|
|
76
|
-
|
|
81
|
+
/**
|
|
82
|
+
* Check if sticky target element is currently in sticky mode.
|
|
83
|
+
* sticky mode = current position === defined sticky position
|
|
84
|
+
*/
|
|
85
|
+
if (stickyTargetRef && (fillMainGap || fillSecondaryGap)) {
|
|
86
|
+
const stickyTarget = stickyTargetRef.current;
|
|
87
|
+
const scrollParent = common_1.utils.getScrollParent(stickyTarget);
|
|
88
|
+
const checkStickyness = () => {
|
|
89
|
+
const definedPosition = parseInt(window.getComputedStyle(stickyTarget)[to], 10);
|
|
90
|
+
const scrollParentPosition = scrollParent ? scrollParent.getBoundingClientRect()[to] : 0;
|
|
91
|
+
const currentPosition = (to === "top" ? 1 : -1) * (stickyTarget.getBoundingClientRect()[to] - scrollParentPosition);
|
|
92
|
+
// check stickyness in a small position range (not exact value) because of float values
|
|
93
|
+
const isSticky = currentPosition <= definedPosition + 1 && currentPosition >= definedPosition - 1;
|
|
94
|
+
if (isSticky && !stickyTarget.classList.contains(`${constants_1.CLASSPREFIX}-sticky__target--issticky`)) {
|
|
95
|
+
stickyTarget.classList.add(`${constants_1.CLASSPREFIX}-sticky__target--issticky`);
|
|
96
|
+
}
|
|
97
|
+
if (!isSticky && stickyTarget.classList.contains(`${constants_1.CLASSPREFIX}-sticky__target--issticky`)) {
|
|
98
|
+
stickyTarget.classList.remove(`${constants_1.CLASSPREFIX}-sticky__target--issticky`);
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
checkStickyness();
|
|
102
|
+
const eventListeningTarget = scrollParent || window;
|
|
103
|
+
const eventListeningMethod = (_event) => {
|
|
104
|
+
checkStickyness();
|
|
105
|
+
};
|
|
106
|
+
eventListeningTarget.addEventListener("scroll", eventListeningMethod);
|
|
107
|
+
removeEventForStickynessCheck = () => {
|
|
108
|
+
eventListeningTarget.removeEventListener("scroll", eventListeningMethod);
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
return () => {
|
|
112
|
+
removeEventForConnectedOffset();
|
|
113
|
+
removeEventForStickynessCheck();
|
|
114
|
+
};
|
|
115
|
+
}, [getConnectedElement, stickyTargetRef, to, fillMainGap, fillSecondaryGap]);
|
|
77
116
|
return (react_1.default.createElement("div", Object.assign({ ref: stickyTargetRef, className: `${constants_1.CLASSPREFIX}-sticky__target` +
|
|
78
117
|
(to ? ` ${constants_1.CLASSPREFIX}-sticky__target--${to}` : "") +
|
|
79
118
|
(local ? ` ${constants_1.CLASSPREFIX}-sticky__target--localscrollarea` : "") +
|
|
80
119
|
(background ? ` ${constants_1.CLASSPREFIX}-sticky__target--bg-${background}` : "") +
|
|
120
|
+
(fillMainGap ? ` ${constants_1.CLASSPREFIX}-sticky__target--maingapfill-${fillMainGap}` : "") +
|
|
121
|
+
(fillSecondaryGap ? ` ${constants_1.CLASSPREFIX}-sticky__target--secondarygapfill-${fillSecondaryGap}` : "") +
|
|
81
122
|
(className ? ` ${className}` : ""), style: offset ? offsetStyle : style }, otherDivProps)));
|
|
82
123
|
};
|
|
83
124
|
exports.StickyTarget = StickyTarget;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StickyTarget.js","sourceRoot":"","sources":["../../../../src/components/Sticky/StickyTarget.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAA6C;AAE7C,0CAAsC;AACtC,6DAAsE;
|
|
1
|
+
{"version":3,"file":"StickyTarget.js","sourceRoot":"","sources":["../../../../src/components/Sticky/StickyTarget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -103,7 +103,7 @@ export function MultiSelect(_a) {
|
|
|
103
103
|
var _h = __read(React.useState(__spreadArray([], __read(items), false)), 2), externalItems = _h[0], setExternalItems = _h[1];
|
|
104
104
|
// All options (created and passed) that match the query
|
|
105
105
|
var _j = __read(React.useState([]), 2), filteredItems = _j[0], setFilteredItems = _j[1];
|
|
106
|
-
// All options (created and passed) selected by a user
|
|
106
|
+
// All options (created and passed) selected by a user
|
|
107
107
|
var _k = __read(React.useState(function () {
|
|
108
108
|
return prePopulateWithItems ? __spreadArray([], __read(items), false) : externalSelectedItems ? __spreadArray([], __read(externalSelectedItems), false) : [];
|
|
109
109
|
}), 2), selectedItems = _k[0], setSelectedItems = _k[1];
|
|
@@ -129,9 +129,6 @@ export function MultiSelect(_a) {
|
|
|
129
129
|
default:
|
|
130
130
|
break;
|
|
131
131
|
}
|
|
132
|
-
// If the component is contolled from outside, we don't need to store selected state within the component
|
|
133
|
-
// when user selects or removes selection - options will be set in a parent component
|
|
134
|
-
var isControlled = !!(externalSelectedItems && onSelection);
|
|
135
132
|
/** Update external items when they change
|
|
136
133
|
* e.g for auto-complete when query change
|
|
137
134
|
*/
|
|
@@ -140,15 +137,13 @@ export function MultiSelect(_a) {
|
|
|
140
137
|
setFilteredItems(__spreadArray(__spreadArray([], __read(items), false), __read(createdItems.current), false));
|
|
141
138
|
}, [items.map(function (item) { return itemId(item); }).join("|")]);
|
|
142
139
|
React.useEffect(function () {
|
|
143
|
-
|
|
144
|
-
onSelection &&
|
|
140
|
+
onSelection &&
|
|
145
141
|
onSelection({
|
|
146
142
|
newlySelected: selectedItems.slice(-1)[0],
|
|
147
143
|
createdItems: createdItems.current,
|
|
148
144
|
selectedItems: selectedItems,
|
|
149
145
|
});
|
|
150
146
|
}, [
|
|
151
|
-
isControlled,
|
|
152
147
|
onSelection,
|
|
153
148
|
selectedItems.map(function (item) { return itemId(item); }).join("|"),
|
|
154
149
|
createdItems.current.map(function (item) { return itemId(item); }).join("|"),
|
|
@@ -161,7 +156,7 @@ export function MultiSelect(_a) {
|
|
|
161
156
|
return;
|
|
162
157
|
}
|
|
163
158
|
setSelectedItems(externalSelectedItems);
|
|
164
|
-
}, [externalSelectedItems]);
|
|
159
|
+
}, [externalSelectedItems === null || externalSelectedItems === void 0 ? void 0 : externalSelectedItems.map(function (item) { return itemId(item); }).join("|")]);
|
|
165
160
|
/**
|
|
166
161
|
* using the equality prop specified checks if an item has already been selected
|
|
167
162
|
* @param matcher
|
|
@@ -176,15 +171,7 @@ export function MultiSelect(_a) {
|
|
|
176
171
|
*/
|
|
177
172
|
var removeItemSelection = function (matcher) {
|
|
178
173
|
var filteredItems = selectedItems.filter(function (item) { return itemId(item) !== matcher; });
|
|
179
|
-
|
|
180
|
-
onSelection({
|
|
181
|
-
createdItems: createdItems.current,
|
|
182
|
-
selectedItems: filteredItems,
|
|
183
|
-
});
|
|
184
|
-
}
|
|
185
|
-
else {
|
|
186
|
-
setSelectedItems(filteredItems);
|
|
187
|
-
}
|
|
174
|
+
setSelectedItems(filteredItems);
|
|
188
175
|
};
|
|
189
176
|
/**
|
|
190
177
|
* selects and deselects an item from selection list
|
|
@@ -196,13 +183,6 @@ export function MultiSelect(_a) {
|
|
|
196
183
|
if (itemHasBeenSelectedAlready(itemId(item))) {
|
|
197
184
|
removeItemSelection(itemId(item));
|
|
198
185
|
}
|
|
199
|
-
else if (isControlled) {
|
|
200
|
-
onSelection({
|
|
201
|
-
newlySelected: item,
|
|
202
|
-
createdItems: createdItems.current,
|
|
203
|
-
selectedItems: __spreadArray(__spreadArray([], __read(selectedItems), false), [item], false),
|
|
204
|
-
});
|
|
205
|
-
}
|
|
206
186
|
else {
|
|
207
187
|
setSelectedItems(function (items) { return __spreadArray(__spreadArray([], __read(items), false), [item], false); });
|
|
208
188
|
}
|
|
@@ -281,15 +261,7 @@ export function MultiSelect(_a) {
|
|
|
281
261
|
*/
|
|
282
262
|
var handleClear = function () {
|
|
283
263
|
requestState.current.query = "";
|
|
284
|
-
|
|
285
|
-
onSelection({
|
|
286
|
-
selectedItems: [],
|
|
287
|
-
createdItems: createdItems.current,
|
|
288
|
-
});
|
|
289
|
-
}
|
|
290
|
-
else {
|
|
291
|
-
setSelectedItems([]);
|
|
292
|
-
}
|
|
264
|
+
setSelectedItems([]);
|
|
293
265
|
setFilteredItems(__spreadArray(__spreadArray([], __read(externalItems), false), __read(createdItems.current), false));
|
|
294
266
|
};
|
|
295
267
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.js","sourceRoot":"","sources":["../../../../src/components/MultiSelect/MultiSelect.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MultiSelect.js","sourceRoot":"","sources":["../../../../src/components/MultiSelect/MultiSelect.tsx"],"names":[],"mappings":"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"}
|
|
@@ -28,14 +28,19 @@ import { CLASSPREFIX as eccgui } from "../../configuration/constants.js";
|
|
|
28
28
|
* The content then offset relative to its nearest scrolling ancestor and containing block (nearest block-level ancestor).
|
|
29
29
|
*/
|
|
30
30
|
export var StickyTarget = function (_a) {
|
|
31
|
-
var className = _a.className, _b = _a.to, to = _b === void 0 ? "top" : _b, _c = _a.local, local = _c === void 0 ? false : _c, _d = _a.background, background = _d === void 0 ? "transparent" : _d,
|
|
31
|
+
var className = _a.className, _b = _a.to, to = _b === void 0 ? "top" : _b, _c = _a.local, local = _c === void 0 ? false : _c, offset = _a.offset, _d = _a.background, background = _d === void 0 ? "transparent" : _d, fillMainGap = _a.fillMainGap, fillSecondaryGap = _a.fillSecondaryGap, style = _a.style, getConnectedElement = _a.getConnectedElement, otherDivProps = __rest(_a, ["className", "to", "local", "offset", "background", "fillMainGap", "fillSecondaryGap", "style", "getConnectedElement"]);
|
|
32
32
|
var stickyTargetRef = React.useRef(null);
|
|
33
33
|
var offsetStyle = {};
|
|
34
34
|
if (typeof offset !== "undefined") {
|
|
35
35
|
offsetStyle = __assign(__assign({}, style), { "--eccgui-sticky-target-localoffset": offset });
|
|
36
36
|
}
|
|
37
|
-
var connectedOffset = 0;
|
|
38
37
|
React.useEffect(function () {
|
|
38
|
+
var removeEventForConnectedOffset = function () {
|
|
39
|
+
/* no event need to be removed */
|
|
40
|
+
};
|
|
41
|
+
var removeEventForStickynessCheck = function () {
|
|
42
|
+
/* no event need to be removed */
|
|
43
|
+
};
|
|
39
44
|
/**
|
|
40
45
|
* If the target should be sticky to a defined element then:
|
|
41
46
|
* * check for the element and its scroll parent
|
|
@@ -49,6 +54,7 @@ export var StickyTarget = function (_a) {
|
|
|
49
54
|
if (scrollParent_1 || scrollParentFallback_1) {
|
|
50
55
|
var updateTargetOffset_1 = function () {
|
|
51
56
|
var _a;
|
|
57
|
+
var connectedOffset = 0;
|
|
52
58
|
var scrollParentPosition = (scrollParent_1 || scrollParentFallback_1).getBoundingClientRect();
|
|
53
59
|
var stickyConnectionPosition = stickyConnection_1.getBoundingClientRect();
|
|
54
60
|
if (to === "top") {
|
|
@@ -71,18 +77,53 @@ export var StickyTarget = function (_a) {
|
|
|
71
77
|
updateTargetOffset_1();
|
|
72
78
|
};
|
|
73
79
|
eventListeningTarget_1.addEventListener("scroll", eventListeningMethod_1);
|
|
74
|
-
|
|
80
|
+
removeEventForConnectedOffset = function () {
|
|
75
81
|
eventListeningTarget_1.removeEventListener("scroll", eventListeningMethod_1);
|
|
76
82
|
};
|
|
77
83
|
}
|
|
78
84
|
}
|
|
79
85
|
}
|
|
80
|
-
|
|
81
|
-
|
|
86
|
+
/**
|
|
87
|
+
* Check if sticky target element is currently in sticky mode.
|
|
88
|
+
* sticky mode = current position === defined sticky position
|
|
89
|
+
*/
|
|
90
|
+
if (stickyTargetRef && (fillMainGap || fillSecondaryGap)) {
|
|
91
|
+
var stickyTarget_1 = stickyTargetRef.current;
|
|
92
|
+
var scrollParent_2 = utils.getScrollParent(stickyTarget_1);
|
|
93
|
+
var checkStickyness_1 = function () {
|
|
94
|
+
var definedPosition = parseInt(window.getComputedStyle(stickyTarget_1)[to], 10);
|
|
95
|
+
var scrollParentPosition = scrollParent_2 ? scrollParent_2.getBoundingClientRect()[to] : 0;
|
|
96
|
+
var currentPosition = (to === "top" ? 1 : -1) * (stickyTarget_1.getBoundingClientRect()[to] - scrollParentPosition);
|
|
97
|
+
// check stickyness in a small position range (not exact value) because of float values
|
|
98
|
+
var isSticky = currentPosition <= definedPosition + 1 && currentPosition >= definedPosition - 1;
|
|
99
|
+
if (isSticky && !stickyTarget_1.classList.contains("".concat(eccgui, "-sticky__target--issticky"))) {
|
|
100
|
+
stickyTarget_1.classList.add("".concat(eccgui, "-sticky__target--issticky"));
|
|
101
|
+
}
|
|
102
|
+
if (!isSticky && stickyTarget_1.classList.contains("".concat(eccgui, "-sticky__target--issticky"))) {
|
|
103
|
+
stickyTarget_1.classList.remove("".concat(eccgui, "-sticky__target--issticky"));
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
checkStickyness_1();
|
|
107
|
+
var eventListeningTarget_2 = scrollParent_2 || window;
|
|
108
|
+
var eventListeningMethod_2 = function (_event) {
|
|
109
|
+
checkStickyness_1();
|
|
110
|
+
};
|
|
111
|
+
eventListeningTarget_2.addEventListener("scroll", eventListeningMethod_2);
|
|
112
|
+
removeEventForStickynessCheck = function () {
|
|
113
|
+
eventListeningTarget_2.removeEventListener("scroll", eventListeningMethod_2);
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
return function () {
|
|
117
|
+
removeEventForConnectedOffset();
|
|
118
|
+
removeEventForStickynessCheck();
|
|
119
|
+
};
|
|
120
|
+
}, [getConnectedElement, stickyTargetRef, to, fillMainGap, fillSecondaryGap]);
|
|
82
121
|
return (React.createElement("div", __assign({ ref: stickyTargetRef, className: "".concat(eccgui, "-sticky__target") +
|
|
83
122
|
(to ? " ".concat(eccgui, "-sticky__target--").concat(to) : "") +
|
|
84
123
|
(local ? " ".concat(eccgui, "-sticky__target--localscrollarea") : "") +
|
|
85
124
|
(background ? " ".concat(eccgui, "-sticky__target--bg-").concat(background) : "") +
|
|
125
|
+
(fillMainGap ? " ".concat(eccgui, "-sticky__target--maingapfill-").concat(fillMainGap) : "") +
|
|
126
|
+
(fillSecondaryGap ? " ".concat(eccgui, "-sticky__target--secondarygapfill-").concat(fillSecondaryGap) : "") +
|
|
86
127
|
(className ? " ".concat(className) : ""), style: offset ? offsetStyle : style }, otherDivProps)));
|
|
87
128
|
};
|
|
88
129
|
export default StickyTarget;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StickyTarget.js","sourceRoot":"","sources":["../../../../src/components/Sticky/StickyTarget.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"StickyTarget.js","sourceRoot":"","sources":["../../../../src/components/Sticky/StickyTarget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,11 +9,7 @@ export interface MultiSelectSelectionProps<T> {
|
|
|
9
9
|
createdItems: Partial<T>[];
|
|
10
10
|
}
|
|
11
11
|
export declare type SelectedParamsType<T> = MultiSelectSelectionProps<T>;
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Predefined selected values
|
|
15
|
-
*/
|
|
16
|
-
selectedItems?: T[];
|
|
12
|
+
interface MultiSelectCommonProps<T> extends TestableComponent, Pick<BlueprintMultiSelectProps<T>, "items" | "placeholder" | "openOnKeyDown"> {
|
|
17
13
|
/**
|
|
18
14
|
* Additional class name, space separated.
|
|
19
15
|
*/
|
|
@@ -27,10 +23,6 @@ export interface MultiSelectProps<T> extends TestableComponent, Pick<BlueprintMu
|
|
|
27
23
|
* this would be used in the item selection list as well as the multi-select input
|
|
28
24
|
*/
|
|
29
25
|
itemLabel: (item: T) => string;
|
|
30
|
-
/**
|
|
31
|
-
* When set to true will set the multi-select value with all the items provided
|
|
32
|
-
*/
|
|
33
|
-
prePopulateWithItems?: boolean;
|
|
34
26
|
/**
|
|
35
27
|
* function handler that would be called anytime an item is selected/deselected or an item is created/removed
|
|
36
28
|
*/
|
|
@@ -107,6 +99,19 @@ export interface MultiSelectProps<T> extends TestableComponent, Pick<BlueprintMu
|
|
|
107
99
|
*/
|
|
108
100
|
wrapperProps?: React.HTMLAttributes<HTMLDivElement>;
|
|
109
101
|
}
|
|
102
|
+
export declare type MultiSelectProps<T> = MultiSelectCommonProps<T> & ({
|
|
103
|
+
/**
|
|
104
|
+
* Predefined selected values
|
|
105
|
+
*/
|
|
106
|
+
selectedItems?: T[];
|
|
107
|
+
prePopulateWithItems?: never;
|
|
108
|
+
} | {
|
|
109
|
+
selectedItems?: never;
|
|
110
|
+
/**
|
|
111
|
+
* When set to true will set the multi-select value with all the items provided
|
|
112
|
+
*/
|
|
113
|
+
prePopulateWithItems?: boolean;
|
|
114
|
+
});
|
|
110
115
|
/**
|
|
111
116
|
* **Element is deprecated for the current type of usage.**
|
|
112
117
|
* Use `MultiSuggestField` as replacement.
|
|
@@ -9,15 +9,26 @@ export interface StickyTargetProps extends React.HTMLAttributes<HTMLDivElement>
|
|
|
9
9
|
* The application header is not taken into offset calculation
|
|
10
10
|
*/
|
|
11
11
|
local?: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Set additional distance to original sticky position.
|
|
14
|
+
*/
|
|
15
|
+
offset?: `${number}${string}`;
|
|
12
16
|
/**
|
|
13
17
|
* Set the background color used for the sticky area.
|
|
14
18
|
* As it can overlay other content readability could be harmed if the overlayed content is shining through.
|
|
15
19
|
*/
|
|
16
20
|
background?: "card" | "application" | "transparent";
|
|
17
21
|
/**
|
|
18
|
-
*
|
|
22
|
+
* In some situations there could be a gap between sticky target area and the border of the related scroll area.
|
|
23
|
+
* The main gap is the gap towards the direction of the sticky behaviour, specified by `to`.
|
|
24
|
+
* You can fill this gap with a gradient or full background color.
|
|
19
25
|
*/
|
|
20
|
-
|
|
26
|
+
fillMainGap?: "full" | "gradient";
|
|
27
|
+
/**
|
|
28
|
+
* The secondary gap is the gap against the direction of the sticky behaviour.
|
|
29
|
+
* So in case of `to="top"` this is rendered on the bottom of the sticky area.
|
|
30
|
+
*/
|
|
31
|
+
fillSecondaryGap?: "full" | "gradient";
|
|
21
32
|
/**
|
|
22
33
|
* Callback that returns an DOM element.
|
|
23
34
|
* The position of `StickyTarget` is then calculated relative to that element.
|
|
@@ -28,5 +39,5 @@ export interface StickyTargetProps extends React.HTMLAttributes<HTMLDivElement>
|
|
|
28
39
|
* Element wraps the content that need to be displayed sticky.
|
|
29
40
|
* The content then offset relative to its nearest scrolling ancestor and containing block (nearest block-level ancestor).
|
|
30
41
|
*/
|
|
31
|
-
export declare const StickyTarget: ({ className, to, local, background,
|
|
42
|
+
export declare const StickyTarget: ({ className, to, local, offset, background, fillMainGap, fillSecondaryGap, style, getConnectedElement, ...otherDivProps }: StickyTargetProps) => React.JSX.Element;
|
|
32
43
|
export default StickyTarget;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eccenca/gui-elements",
|
|
3
3
|
"description": "GUI elements based on other libraries, usable in React application, written in Typescript.",
|
|
4
|
-
"version": "23.7.0-rc.
|
|
4
|
+
"version": "23.7.0-rc.3",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://github.com/eccenca/gui-elements",
|
|
7
7
|
"bugs": "https://github.com/eccenca/gui-elements/issues",
|
|
@@ -16,6 +16,8 @@ export interface IActivityStatus {
|
|
|
16
16
|
statusName: "Waiting" | "Finished" | "Idle" | "Running" | "Canceling";
|
|
17
17
|
// A number between 0 and 100
|
|
18
18
|
progress: number;
|
|
19
|
+
// timestamp for last update
|
|
20
|
+
lastUpdateTime:string;
|
|
19
21
|
// More information corresponding to the status
|
|
20
22
|
message: string;
|
|
21
23
|
// If the activity has been cancelled
|
|
@@ -21,14 +21,9 @@ export interface MultiSelectSelectionProps<T> {
|
|
|
21
21
|
// @deprecated use `MultiSelectSelectionProps<T>`
|
|
22
22
|
export type SelectedParamsType<T> = MultiSelectSelectionProps<T>;
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
interface MultiSelectCommonProps<T>
|
|
25
25
|
extends TestableComponent,
|
|
26
26
|
Pick<BlueprintMultiSelectProps<T>, "items" | "placeholder" | "openOnKeyDown"> {
|
|
27
|
-
/**
|
|
28
|
-
* Predefined selected values
|
|
29
|
-
*/
|
|
30
|
-
|
|
31
|
-
selectedItems?: T[];
|
|
32
27
|
/**
|
|
33
28
|
* Additional class name, space separated.
|
|
34
29
|
*/
|
|
@@ -42,10 +37,7 @@ export interface MultiSelectProps<T>
|
|
|
42
37
|
* this would be used in the item selection list as well as the multi-select input
|
|
43
38
|
*/
|
|
44
39
|
itemLabel: (item: T) => string;
|
|
45
|
-
|
|
46
|
-
* When set to true will set the multi-select value with all the items provided
|
|
47
|
-
*/
|
|
48
|
-
prePopulateWithItems?: boolean;
|
|
40
|
+
|
|
49
41
|
/**
|
|
50
42
|
* function handler that would be called anytime an item is selected/deselected or an item is created/removed
|
|
51
43
|
*/
|
|
@@ -127,6 +119,24 @@ export interface MultiSelectProps<T>
|
|
|
127
119
|
wrapperProps?: React.HTMLAttributes<HTMLDivElement>;
|
|
128
120
|
}
|
|
129
121
|
|
|
122
|
+
export type MultiSelectProps<T> = MultiSelectCommonProps<T> &
|
|
123
|
+
(
|
|
124
|
+
| {
|
|
125
|
+
/**
|
|
126
|
+
* Predefined selected values
|
|
127
|
+
*/
|
|
128
|
+
selectedItems?: T[];
|
|
129
|
+
prePopulateWithItems?: never;
|
|
130
|
+
}
|
|
131
|
+
| {
|
|
132
|
+
selectedItems?: never;
|
|
133
|
+
/**
|
|
134
|
+
* When set to true will set the multi-select value with all the items provided
|
|
135
|
+
*/
|
|
136
|
+
prePopulateWithItems?: boolean;
|
|
137
|
+
}
|
|
138
|
+
);
|
|
139
|
+
|
|
130
140
|
/**
|
|
131
141
|
* **Element is deprecated for the current type of usage.**
|
|
132
142
|
* Use `MultiSuggestField` as replacement.
|
|
@@ -169,7 +179,7 @@ export function MultiSelect<T>({
|
|
|
169
179
|
const [externalItems, setExternalItems] = React.useState<T[]>([...items]);
|
|
170
180
|
// All options (created and passed) that match the query
|
|
171
181
|
const [filteredItems, setFilteredItems] = React.useState<T[]>([]);
|
|
172
|
-
// All options (created and passed) selected by a user
|
|
182
|
+
// All options (created and passed) selected by a user
|
|
173
183
|
const [selectedItems, setSelectedItems] = React.useState<T[]>(() =>
|
|
174
184
|
prePopulateWithItems ? [...items] : externalSelectedItems ? [...externalSelectedItems] : []
|
|
175
185
|
);
|
|
@@ -201,10 +211,6 @@ export function MultiSelect<T>({
|
|
|
201
211
|
break;
|
|
202
212
|
}
|
|
203
213
|
|
|
204
|
-
// If the component is contolled from outside, we don't need to store selected state within the component
|
|
205
|
-
// when user selects or removes selection - options will be set in a parent component
|
|
206
|
-
const isControlled = !!(externalSelectedItems && onSelection);
|
|
207
|
-
|
|
208
214
|
/** Update external items when they change
|
|
209
215
|
* e.g for auto-complete when query change
|
|
210
216
|
*/
|
|
@@ -214,15 +220,13 @@ export function MultiSelect<T>({
|
|
|
214
220
|
}, [items.map((item) => itemId(item)).join("|")]);
|
|
215
221
|
|
|
216
222
|
React.useEffect(() => {
|
|
217
|
-
|
|
218
|
-
onSelection &&
|
|
223
|
+
onSelection &&
|
|
219
224
|
onSelection({
|
|
220
225
|
newlySelected: selectedItems.slice(-1)[0],
|
|
221
226
|
createdItems: createdItems.current,
|
|
222
227
|
selectedItems,
|
|
223
228
|
});
|
|
224
229
|
}, [
|
|
225
|
-
isControlled,
|
|
226
230
|
onSelection,
|
|
227
231
|
selectedItems.map((item) => itemId(item)).join("|"),
|
|
228
232
|
createdItems.current.map((item) => itemId(item)).join("|"),
|
|
@@ -237,7 +241,7 @@ export function MultiSelect<T>({
|
|
|
237
241
|
}
|
|
238
242
|
|
|
239
243
|
setSelectedItems(externalSelectedItems);
|
|
240
|
-
}, [externalSelectedItems]);
|
|
244
|
+
}, [externalSelectedItems?.map((item) => itemId(item)).join("|")]);
|
|
241
245
|
|
|
242
246
|
/**
|
|
243
247
|
* using the equality prop specified checks if an item has already been selected
|
|
@@ -254,15 +258,7 @@ export function MultiSelect<T>({
|
|
|
254
258
|
*/
|
|
255
259
|
const removeItemSelection = (matcher: string) => {
|
|
256
260
|
const filteredItems = selectedItems.filter((item) => itemId(item) !== matcher);
|
|
257
|
-
|
|
258
|
-
if (isControlled) {
|
|
259
|
-
onSelection({
|
|
260
|
-
createdItems: createdItems.current,
|
|
261
|
-
selectedItems: filteredItems,
|
|
262
|
-
});
|
|
263
|
-
} else {
|
|
264
|
-
setSelectedItems(filteredItems);
|
|
265
|
-
}
|
|
261
|
+
setSelectedItems(filteredItems);
|
|
266
262
|
};
|
|
267
263
|
|
|
268
264
|
/**
|
|
@@ -273,12 +269,6 @@ export function MultiSelect<T>({
|
|
|
273
269
|
const onItemSelect = (item: T) => {
|
|
274
270
|
if (itemHasBeenSelectedAlready(itemId(item))) {
|
|
275
271
|
removeItemSelection(itemId(item));
|
|
276
|
-
} else if (isControlled) {
|
|
277
|
-
onSelection({
|
|
278
|
-
newlySelected: item,
|
|
279
|
-
createdItems: createdItems.current,
|
|
280
|
-
selectedItems: [...selectedItems, item],
|
|
281
|
-
});
|
|
282
272
|
} else {
|
|
283
273
|
setSelectedItems((items) => [...items, item]);
|
|
284
274
|
}
|
|
@@ -358,15 +348,7 @@ export function MultiSelect<T>({
|
|
|
358
348
|
const handleClear = () => {
|
|
359
349
|
requestState.current.query = "";
|
|
360
350
|
|
|
361
|
-
|
|
362
|
-
onSelection({
|
|
363
|
-
selectedItems: [],
|
|
364
|
-
createdItems: createdItems.current,
|
|
365
|
-
});
|
|
366
|
-
} else {
|
|
367
|
-
setSelectedItems([]);
|
|
368
|
-
}
|
|
369
|
-
|
|
351
|
+
setSelectedItems([]);
|
|
370
352
|
setFilteredItems([...externalItems, ...createdItems.current]);
|
|
371
353
|
};
|
|
372
354
|
|
|
@@ -125,7 +125,7 @@ uncontrolledNewItemCreation.args = {
|
|
|
125
125
|
};
|
|
126
126
|
|
|
127
127
|
const CreationTemplate: StoryFn = () => {
|
|
128
|
-
const [selectedValues, setSelectedValues] = useState<string[]>([]);
|
|
128
|
+
const [selectedValues, setSelectedValues] = useState<string[]>(["foo"]);
|
|
129
129
|
|
|
130
130
|
const items = useMemo<string[]>(() => ["foo", "bar", "baz"], []);
|
|
131
131
|
|
|
@@ -145,7 +145,6 @@ const CreationTemplate: StoryFn = () => {
|
|
|
145
145
|
itemId={identity}
|
|
146
146
|
itemLabel={identity}
|
|
147
147
|
createNewItemFromQuery={identity}
|
|
148
|
-
prePopulateWithItems
|
|
149
148
|
/>
|
|
150
149
|
);
|
|
151
150
|
};
|
|
@@ -47,7 +47,7 @@ export const TestComponent = (): JSX.Element => {
|
|
|
47
47
|
};
|
|
48
48
|
|
|
49
49
|
describe("MultiSuggestField", () => {
|
|
50
|
-
describe("uncontrolled", () => {
|
|
50
|
+
describe("uncontrolled (when only selectedItems or onSelect is provided)", () => {
|
|
51
51
|
it("should render default input", () => {
|
|
52
52
|
const { container } = render(<MultiSuggestField {...Default.args} />);
|
|
53
53
|
const [input] = container.getElementsByClassName("eccgui-multiselect");
|
|
@@ -262,7 +262,7 @@ describe("MultiSuggestField", () => {
|
|
|
262
262
|
});
|
|
263
263
|
});
|
|
264
264
|
|
|
265
|
-
describe("controlled", () => {
|
|
265
|
+
describe("controlled (when both selectedItems and onSelect are provided)", () => {
|
|
266
266
|
it("should render default selected items", async () => {
|
|
267
267
|
const onSelection = jest.fn();
|
|
268
268
|
|
|
@@ -287,7 +287,12 @@ describe("MultiSuggestField", () => {
|
|
|
287
287
|
});
|
|
288
288
|
|
|
289
289
|
const { container } = render(
|
|
290
|
-
<MultiSuggestField
|
|
290
|
+
<MultiSuggestField
|
|
291
|
+
{...dropdownOnFocus.args}
|
|
292
|
+
items={items}
|
|
293
|
+
selectedItems={[]}
|
|
294
|
+
onSelection={onSelection}
|
|
295
|
+
/>
|
|
291
296
|
);
|
|
292
297
|
|
|
293
298
|
const [inputContainer] = container.getElementsByClassName("eccgui-multiselect");
|
|
@@ -355,7 +360,6 @@ describe("MultiSuggestField", () => {
|
|
|
355
360
|
newlySelected: items[0],
|
|
356
361
|
selectedItems: [items[0]],
|
|
357
362
|
};
|
|
358
|
-
expect(onSelection).toHaveBeenCalledTimes(1);
|
|
359
363
|
expect(onSelection).toHaveBeenCalledWith(expectedObject);
|
|
360
364
|
});
|
|
361
365
|
|
|
@@ -381,7 +385,6 @@ describe("MultiSuggestField", () => {
|
|
|
381
385
|
selectedItems: [...selectedItems, items[0]],
|
|
382
386
|
};
|
|
383
387
|
|
|
384
|
-
expect(onSelection).toHaveBeenCalledTimes(2);
|
|
385
388
|
expect(onSelection).toHaveBeenCalledWith(expectedObject);
|
|
386
389
|
});
|
|
387
390
|
|
|
@@ -399,9 +402,90 @@ describe("MultiSuggestField", () => {
|
|
|
399
402
|
selectedItems: [],
|
|
400
403
|
};
|
|
401
404
|
|
|
402
|
-
expect(onSelection).toHaveBeenCalledTimes(3);
|
|
403
405
|
expect(onSelection).toHaveBeenCalledWith(expectedObject);
|
|
404
406
|
});
|
|
405
407
|
});
|
|
408
|
+
|
|
409
|
+
it("should set prePopulateWithItems as selected values and override passed values", async () => {
|
|
410
|
+
const onSelection = jest.fn((values) => {
|
|
411
|
+
// eslint-disable-next-line no-console
|
|
412
|
+
console.log("Mocked onSelection function values: ", values);
|
|
413
|
+
});
|
|
414
|
+
|
|
415
|
+
const items = dropdownOnFocus.args.items;
|
|
416
|
+
|
|
417
|
+
const args = { ...dropdownOnFocus.args, onSelection: onSelection };
|
|
418
|
+
|
|
419
|
+
const { container } = render(
|
|
420
|
+
<MultiSuggestField {...args} data-test-id="multi-suggest-field" prePopulateWithItems />
|
|
421
|
+
);
|
|
422
|
+
|
|
423
|
+
await waitFor(() => {
|
|
424
|
+
const expectedObject = {
|
|
425
|
+
createdItems: [],
|
|
426
|
+
newlySelected: items.at(-1),
|
|
427
|
+
selectedItems: items,
|
|
428
|
+
};
|
|
429
|
+
expect(onSelection).toHaveBeenCalledWith(expectedObject);
|
|
430
|
+
});
|
|
431
|
+
|
|
432
|
+
const tags = container.querySelectorAll("span[data-tag-index]");
|
|
433
|
+
|
|
434
|
+
expect(tags.length).toBe(items.length);
|
|
435
|
+
});
|
|
436
|
+
|
|
437
|
+
it("should correctly deselect all tags from input", async () => {
|
|
438
|
+
const onSelection = jest.fn((values) => {
|
|
439
|
+
// eslint-disable-next-line no-console
|
|
440
|
+
console.log("Mocked onSelection function values 111: ", values);
|
|
441
|
+
});
|
|
442
|
+
|
|
443
|
+
const items = predefinedNotControlledValues.args.items;
|
|
444
|
+
|
|
445
|
+
const args = { ...predefinedNotControlledValues.args, selectedItems: undefined, onSelection: onSelection };
|
|
446
|
+
|
|
447
|
+
const { container } = render(
|
|
448
|
+
<MultiSuggestField {...args} data-test-id="multi-suggest-field" prePopulateWithItems />
|
|
449
|
+
);
|
|
450
|
+
|
|
451
|
+
await waitFor(() => {
|
|
452
|
+
const expectedObject = {
|
|
453
|
+
createdItems: [],
|
|
454
|
+
newlySelected: items.at(-1),
|
|
455
|
+
selectedItems: items,
|
|
456
|
+
};
|
|
457
|
+
expect(onSelection).toHaveBeenCalledWith(expectedObject);
|
|
458
|
+
});
|
|
459
|
+
|
|
460
|
+
let tags = container.querySelectorAll("span[data-tag-index]");
|
|
461
|
+
expect(tags.length).toBe(items.length);
|
|
462
|
+
|
|
463
|
+
for (let i = 0; i < items.length; i += 1) {
|
|
464
|
+
const tag = tags[0];
|
|
465
|
+
expect(tag.querySelector("span")).toHaveTextContent(items[i].testLabel);
|
|
466
|
+
|
|
467
|
+
const removeTagButton = tag.querySelector("button");
|
|
468
|
+
expect(removeTagButton).toBeTruthy();
|
|
469
|
+
|
|
470
|
+
fireEvent.click(removeTagButton!);
|
|
471
|
+
|
|
472
|
+
await waitFor(() => {
|
|
473
|
+
const selected = items.slice(i + 1);
|
|
474
|
+
|
|
475
|
+
const expectedObject = {
|
|
476
|
+
createdItems: [],
|
|
477
|
+
newlySelected: selected.at(-1),
|
|
478
|
+
selectedItems: selected,
|
|
479
|
+
};
|
|
480
|
+
|
|
481
|
+
expect(onSelection).toHaveBeenCalledWith(expectedObject);
|
|
482
|
+
});
|
|
483
|
+
|
|
484
|
+
tags = container.querySelectorAll("span[data-tag-index]");
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
const tagsAfterRemove = container.querySelectorAll("span[data-tag-index]");
|
|
488
|
+
expect(tagsAfterRemove.length).toBe(0);
|
|
489
|
+
});
|
|
406
490
|
});
|
|
407
491
|
});
|
|
@@ -13,15 +13,26 @@ export interface StickyTargetProps extends React.HTMLAttributes<HTMLDivElement>
|
|
|
13
13
|
* The application header is not taken into offset calculation
|
|
14
14
|
*/
|
|
15
15
|
local?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Set additional distance to original sticky position.
|
|
18
|
+
*/
|
|
19
|
+
offset?: `${number}${string}`;
|
|
16
20
|
/**
|
|
17
21
|
* Set the background color used for the sticky area.
|
|
18
22
|
* As it can overlay other content readability could be harmed if the overlayed content is shining through.
|
|
19
23
|
*/
|
|
20
24
|
background?: "card" | "application" | "transparent";
|
|
21
25
|
/**
|
|
22
|
-
*
|
|
26
|
+
* In some situations there could be a gap between sticky target area and the border of the related scroll area.
|
|
27
|
+
* The main gap is the gap towards the direction of the sticky behaviour, specified by `to`.
|
|
28
|
+
* You can fill this gap with a gradient or full background color.
|
|
23
29
|
*/
|
|
24
|
-
|
|
30
|
+
fillMainGap?: "full" | "gradient";
|
|
31
|
+
/**
|
|
32
|
+
* The secondary gap is the gap against the direction of the sticky behaviour.
|
|
33
|
+
* So in case of `to="top"` this is rendered on the bottom of the sticky area.
|
|
34
|
+
*/
|
|
35
|
+
fillSecondaryGap?: "full" | "gradient";
|
|
25
36
|
/**
|
|
26
37
|
* Callback that returns an DOM element.
|
|
27
38
|
* The position of `StickyTarget` is then calculated relative to that element.
|
|
@@ -37,8 +48,10 @@ export const StickyTarget = ({
|
|
|
37
48
|
className,
|
|
38
49
|
to = "top",
|
|
39
50
|
local = false,
|
|
40
|
-
background = "transparent",
|
|
41
51
|
offset,
|
|
52
|
+
background = "transparent",
|
|
53
|
+
fillMainGap,
|
|
54
|
+
fillSecondaryGap,
|
|
42
55
|
style,
|
|
43
56
|
getConnectedElement,
|
|
44
57
|
...otherDivProps
|
|
@@ -50,8 +63,13 @@ export const StickyTarget = ({
|
|
|
50
63
|
offsetStyle = { ...style, "--eccgui-sticky-target-localoffset": offset } as CSSProperties;
|
|
51
64
|
}
|
|
52
65
|
|
|
53
|
-
let connectedOffset = 0;
|
|
54
66
|
React.useEffect(() => {
|
|
67
|
+
let removeEventForConnectedOffset = () => {
|
|
68
|
+
/* no event need to be removed */
|
|
69
|
+
};
|
|
70
|
+
let removeEventForStickynessCheck = () => {
|
|
71
|
+
/* no event need to be removed */
|
|
72
|
+
};
|
|
55
73
|
/**
|
|
56
74
|
* If the target should be sticky to a defined element then:
|
|
57
75
|
* * check for the element and its scroll parent
|
|
@@ -64,6 +82,7 @@ export const StickyTarget = ({
|
|
|
64
82
|
const scrollParentFallback = !scrollParent ? document.documentElement : false;
|
|
65
83
|
if (scrollParent || scrollParentFallback) {
|
|
66
84
|
const updateTargetOffset = () => {
|
|
85
|
+
let connectedOffset = 0;
|
|
67
86
|
const scrollParentPosition = (
|
|
68
87
|
(scrollParent || scrollParentFallback) as HTMLElement
|
|
69
88
|
).getBoundingClientRect();
|
|
@@ -85,20 +104,55 @@ export const StickyTarget = ({
|
|
|
85
104
|
`${connectedOffset}px`
|
|
86
105
|
);
|
|
87
106
|
};
|
|
107
|
+
|
|
88
108
|
updateTargetOffset();
|
|
89
109
|
const eventListeningTarget = scrollParent || window;
|
|
90
110
|
const eventListeningMethod = (_event: Event) => {
|
|
91
111
|
updateTargetOffset();
|
|
92
112
|
};
|
|
93
113
|
eventListeningTarget.addEventListener("scroll", eventListeningMethod);
|
|
94
|
-
|
|
114
|
+
removeEventForConnectedOffset = () => {
|
|
95
115
|
eventListeningTarget.removeEventListener("scroll", eventListeningMethod);
|
|
96
116
|
};
|
|
97
117
|
}
|
|
98
118
|
}
|
|
99
119
|
}
|
|
100
|
-
|
|
101
|
-
|
|
120
|
+
/**
|
|
121
|
+
* Check if sticky target element is currently in sticky mode.
|
|
122
|
+
* sticky mode = current position === defined sticky position
|
|
123
|
+
*/
|
|
124
|
+
if (stickyTargetRef && (fillMainGap || fillSecondaryGap)) {
|
|
125
|
+
const stickyTarget = stickyTargetRef.current as Element;
|
|
126
|
+
const scrollParent = utils.getScrollParent(stickyTarget);
|
|
127
|
+
const checkStickyness = () => {
|
|
128
|
+
const definedPosition = parseInt(window.getComputedStyle(stickyTarget)[to], 10);
|
|
129
|
+
const scrollParentPosition = scrollParent ? scrollParent.getBoundingClientRect()[to] : 0;
|
|
130
|
+
const currentPosition =
|
|
131
|
+
(to === "top" ? 1 : -1) * (stickyTarget.getBoundingClientRect()[to] - scrollParentPosition);
|
|
132
|
+
// check stickyness in a small position range (not exact value) because of float values
|
|
133
|
+
const isSticky = currentPosition <= definedPosition + 1 && currentPosition >= definedPosition - 1;
|
|
134
|
+
if (isSticky && !stickyTarget.classList.contains(`${eccgui}-sticky__target--issticky`)) {
|
|
135
|
+
stickyTarget.classList.add(`${eccgui}-sticky__target--issticky`);
|
|
136
|
+
}
|
|
137
|
+
if (!isSticky && stickyTarget.classList.contains(`${eccgui}-sticky__target--issticky`)) {
|
|
138
|
+
stickyTarget.classList.remove(`${eccgui}-sticky__target--issticky`);
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
checkStickyness();
|
|
142
|
+
const eventListeningTarget = scrollParent || window;
|
|
143
|
+
const eventListeningMethod = (_event: Event) => {
|
|
144
|
+
checkStickyness();
|
|
145
|
+
};
|
|
146
|
+
eventListeningTarget.addEventListener("scroll", eventListeningMethod);
|
|
147
|
+
removeEventForStickynessCheck = () => {
|
|
148
|
+
eventListeningTarget.removeEventListener("scroll", eventListeningMethod);
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
return () => {
|
|
152
|
+
removeEventForConnectedOffset();
|
|
153
|
+
removeEventForStickynessCheck();
|
|
154
|
+
};
|
|
155
|
+
}, [getConnectedElement, stickyTargetRef, to, fillMainGap, fillSecondaryGap]);
|
|
102
156
|
|
|
103
157
|
return (
|
|
104
158
|
<div
|
|
@@ -108,6 +162,8 @@ export const StickyTarget = ({
|
|
|
108
162
|
(to ? ` ${eccgui}-sticky__target--${to}` : "") +
|
|
109
163
|
(local ? ` ${eccgui}-sticky__target--localscrollarea` : "") +
|
|
110
164
|
(background ? ` ${eccgui}-sticky__target--bg-${background}` : "") +
|
|
165
|
+
(fillMainGap ? ` ${eccgui}-sticky__target--maingapfill-${fillMainGap}` : "") +
|
|
166
|
+
(fillSecondaryGap ? ` ${eccgui}-sticky__target--secondarygapfill-${fillSecondaryGap}` : "") +
|
|
111
167
|
(className ? ` ${className}` : "")
|
|
112
168
|
}
|
|
113
169
|
style={offset ? offsetStyle : style}
|
|
@@ -5,11 +5,14 @@
|
|
|
5
5
|
.#{$eccgui}-sticky__target {
|
|
6
6
|
position: sticky;
|
|
7
7
|
z-index: 1;
|
|
8
|
+
background-color: var(--eccgui-sticky-target-bgcolor, transparent);
|
|
8
9
|
|
|
9
10
|
--eccgui-sticky-target-applicationoffset: 0px;
|
|
11
|
+
--eccgui-sticky-target-maingap: 0px;
|
|
10
12
|
|
|
11
13
|
.#{$eccgui}-application__content &:not(.#{$eccgui}-sticky__target--localscrollarea) {
|
|
12
|
-
--eccgui-sticky-target-applicationoffset: $eccgui-size-block-whitespace;
|
|
14
|
+
--eccgui-sticky-target-applicationoffset: #{$eccgui-size-block-whitespace};
|
|
15
|
+
--eccgui-sticky-target-maingap: #{$eccgui-size-block-whitespace};
|
|
13
16
|
}
|
|
14
17
|
|
|
15
18
|
.#{$eccgui}-application__header
|
|
@@ -17,53 +20,109 @@
|
|
|
17
20
|
&:not(.#{$eccgui}-sticky__target--localscrollarea) {
|
|
18
21
|
--eccgui-sticky-target-applicationoffset: calc(#{mini-units(8)} + #{$eccgui-size-block-whitespace});
|
|
19
22
|
}
|
|
23
|
+
|
|
24
|
+
&[class*="#{$eccgui}-sticky__target--maingapfill"]:before,
|
|
25
|
+
&[class*="#{$eccgui}-sticky__target--secondarygapfill"]:after {
|
|
26
|
+
position: absolute;
|
|
27
|
+
left: 0;
|
|
28
|
+
width: 100%;
|
|
29
|
+
height: calc(var(--eccgui-sticky-target-maingap) + var(--eccgui-sticky-target-localoffset, 0px));
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&[class*="#{$eccgui}-sticky__target--secondarygapfill"]:after {
|
|
33
|
+
height: $eccgui-size-block-whitespace * 0.5;
|
|
34
|
+
}
|
|
20
35
|
}
|
|
21
36
|
|
|
22
37
|
.#{$eccgui}-sticky__target--top {
|
|
23
38
|
top: calc(var(--eccgui-sticky-target-applicationoffset) + var(--eccgui-sticky-target-localoffset, 0px));
|
|
39
|
+
|
|
40
|
+
&[class*="#{$eccgui}-sticky__target--maingapfill"]:before {
|
|
41
|
+
bottom: 100%;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
&[class*="#{$eccgui}-sticky__target--secondarygapfill"]:after {
|
|
45
|
+
top: 100%;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
&.#{$eccgui}-sticky__target--maingapfill-gradient:before {
|
|
49
|
+
background: linear-gradient(transparent, 10%, var(--eccgui-sticky-target-bgcolor, transparent));
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
&.#{$eccgui}-sticky__target--secondarygapfill-gradient:after {
|
|
53
|
+
background: linear-gradient(var(--eccgui-sticky-target-bgcolor, transparent), transparent);
|
|
54
|
+
}
|
|
24
55
|
}
|
|
25
56
|
|
|
26
57
|
.#{$eccgui}-sticky__target--bottom {
|
|
27
58
|
--eccgui-sticky-target-applicationoffset: 0px;
|
|
28
59
|
|
|
29
60
|
bottom: calc(var(--eccgui-sticky-target-applicationoffset) + var(--eccgui-sticky-target-localoffset, 0px));
|
|
61
|
+
|
|
62
|
+
&[class*="#{$eccgui}-sticky__target--maingapfill"]:before {
|
|
63
|
+
top: 100%;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&[class*="#{$eccgui}-sticky__target--secondarygapfill"]:after {
|
|
67
|
+
bottom: 100%;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
&.#{$eccgui}-sticky__target--maingapfill-gradient:before {
|
|
71
|
+
background: linear-gradient(var(--eccgui-sticky-target-bgcolor, 90%, transparent), transparent);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
&.#{$eccgui}-sticky__target--secondarygapfill-gradient:after {
|
|
75
|
+
background: linear-gradient(transparent, var(--eccgui-sticky-target-bgcolor, transparent));
|
|
76
|
+
}
|
|
30
77
|
}
|
|
31
78
|
|
|
32
79
|
.#{$eccgui}-sticky__target--bg-card {
|
|
33
|
-
|
|
80
|
+
--eccgui-sticky-target-bgcolor: #{$card-background-color};
|
|
34
81
|
|
|
35
82
|
.#{$eccgui}-card.#{$eccgui}-intent--primary & {
|
|
36
|
-
|
|
83
|
+
--eccgui-sticky-target-bgcolor: #{color.mix($eccgui-color-primary, $card-background-color, 5%)};
|
|
37
84
|
}
|
|
38
85
|
.#{$eccgui}-card.#{$eccgui}-intent--accent & {
|
|
39
|
-
|
|
86
|
+
--eccgui-sticky-target-bgcolor: #{color.mix($eccgui-color-accent, $card-background-color, 10%)};
|
|
40
87
|
}
|
|
41
88
|
.#{$eccgui}-card.#{$eccgui}-intent--success & {
|
|
42
|
-
|
|
89
|
+
--eccgui-sticky-target-bgcolor: #{$eccgui-color-success-background};
|
|
43
90
|
}
|
|
44
91
|
.#{$eccgui}-card.#{$eccgui}-intent--info & {
|
|
45
|
-
|
|
92
|
+
--eccgui-sticky-target-bgcolor: #{$eccgui-color-info-background};
|
|
46
93
|
}
|
|
47
94
|
.#{$eccgui}-card.#{$eccgui}-intent--warning & {
|
|
48
|
-
|
|
95
|
+
--eccgui-sticky-target-bgcolor: #{$eccgui-color-warning-background};
|
|
49
96
|
}
|
|
50
97
|
.#{$eccgui}-card.#{$eccgui}-intent--danger & {
|
|
51
|
-
|
|
98
|
+
--eccgui-sticky-target-bgcolor: #{$eccgui-color-danger-background};
|
|
52
99
|
}
|
|
53
100
|
|
|
54
101
|
.#{$eccgui}-card.#{$ns}-interactive:hover & {
|
|
55
|
-
|
|
102
|
+
--eccgui-sticky-target-bgcolor: #{$button-background-color-hover};
|
|
56
103
|
}
|
|
57
104
|
|
|
58
105
|
.#{$eccgui}-card.#{$ns}-selected & {
|
|
59
|
-
|
|
106
|
+
--eccgui-sticky-target-bgcolor: #{$card-selected-background-color};
|
|
60
107
|
}
|
|
61
108
|
|
|
62
109
|
.#{$eccgui}-card--elevated & {
|
|
63
|
-
|
|
110
|
+
--eccgui-sticky-target-bgcolor: #{$button-background-color-active};
|
|
64
111
|
}
|
|
65
112
|
}
|
|
66
113
|
|
|
67
114
|
.#{$eccgui}-sticky__target--bg-application {
|
|
68
|
-
|
|
115
|
+
--eccgui-sticky-target-bgcolor: #{$eccgui-color-application-background};
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.#{$eccgui}-sticky__target--issticky {
|
|
119
|
+
&[class*="#{$eccgui}-sticky__target--maingapfill"]:before,
|
|
120
|
+
&[class*="#{$eccgui}-sticky__target--secondarygapfill"]:after {
|
|
121
|
+
content: "";
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.#{$eccgui}-sticky__target--maingapfill-full:before,
|
|
126
|
+
.#{$eccgui}-sticky__target--secondarygapfill-full:after {
|
|
127
|
+
background: var(--eccgui-sticky-target-bgcolor, transparent);
|
|
69
128
|
}
|
|
@@ -37,6 +37,9 @@ $input-button-height-small: math.div($eccgui-size-textfield-height-small, $eccgu
|
|
|
37
37
|
// fixes
|
|
38
38
|
|
|
39
39
|
.#{$ns}-input-group {
|
|
40
|
+
// fix for z-index rule of input group left icon
|
|
41
|
+
z-index: 0;
|
|
42
|
+
|
|
40
43
|
// fix for correct fill/fullWidth option
|
|
41
44
|
display: inline-block;
|
|
42
45
|
&.#{$ns}-fill {
|