react-core-ts 1.3.50 → 1.3.53
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.
|
@@ -85,28 +85,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
85
85
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
86
86
|
var react_1 = __importStar(require("react"));
|
|
87
87
|
var react_dom_1 = __importDefault(require("react-dom"));
|
|
88
|
+
var DropdownList_1 = __importDefault(require("./components/DropdownList"));
|
|
88
89
|
var InputActions_1 = __importDefault(require("./components/InputActions"));
|
|
89
90
|
var TreeNode_1 = __importDefault(require("./components/TreeNode"));
|
|
90
91
|
var autosuggestions_1 = require("./utilities/autosuggestions");
|
|
91
92
|
var convertFlatArraytoTreeStructure_1 = require("./utilities/convertFlatArraytoTreeStructure");
|
|
92
|
-
var debounce_1 = require("./utilities/debounce");
|
|
93
93
|
var deepEqual_1 = require("./utilities/deepEqual");
|
|
94
94
|
var expandableTootltip_1 = __importDefault(require("./utilities/expandableTootltip"));
|
|
95
95
|
var icons_1 = require("./utilities/icons");
|
|
96
96
|
var AutoCompleteWithTreeStructure = (0, react_1.forwardRef)(function (_a, ref) {
|
|
97
97
|
var label = _a.label, onChange = _a.onChange, _b = _a.getData, getData = _b === void 0 ? function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
98
98
|
return [2 /*return*/, []];
|
|
99
|
-
}); }); } : _b, _c = _a.data, data = _c === void 0 ? [] : _c, errors = _a.errors, _d = _a.required, required = _d === void 0 ? false : _d, name = _a.name, _e = _a.fullWidth, fullWidth = _e === void 0 ? false : _e, placeholder = _a.placeholder, id = _a.id, _f = _a.type, type = _f === void 0 ? 'custom_select' : _f, _g = _a.selectedItems, propsSeelctedItems = _g === void 0 ? [] : _g, _h = _a.readOnly, readOnly = _h === void 0 ? false : _h, _j = _a.disabled, disabled = _j === void 0 ? false : _j, value = _a.value, _k = _a.isMultiple, isMultiple = _k === void 0 ? false : _k, _l = _a.desc, desc = _l === void 0 ? 'name' : _l, _m = _a.descId, descId = _m === void 0 ? 'id' : _m, singleSelect = _a.singleSelect, className = _a.className, _o = _a.async, async = _o === void 0 ? false : _o, paginationEnabled = _a.paginationEnabled, initialLoad = _a.initialLoad, actionLabel = _a.actionLabel, handleAction = _a.handleAction, nextBlock = _a.nextBlock, notDataMessage = _a.notDataMessage, onFocus = _a.onFocus, _p = _a.expandable, expandable = _p === void 0 ? false : _p, _q = _a.textCount, textCount = _q === void 0 ? 10 : _q, _r = _a.itemCount, itemCount = _r === void 0 ? 1 : _r, scrollRef = _a.scrollRef, _s = _a.isTreeDropdown, isTreeDropdown = _s === void 0 ? true : _s, _t = _a.flatArray, flatArray = _t === void 0 ? false : _t, _u = _a.parentField, parentField = _u === void 0 ? 'parentId' : _u, errorFlag = _a.errorFlag, handleUpdateParent = _a.handleUpdateParent;
|
|
99
|
+
}); }); } : _b, _c = _a.data, data = _c === void 0 ? [] : _c, errors = _a.errors, _d = _a.required, required = _d === void 0 ? false : _d, name = _a.name, _e = _a.fullWidth, fullWidth = _e === void 0 ? false : _e, placeholder = _a.placeholder, id = _a.id, _f = _a.type, type = _f === void 0 ? 'custom_select' : _f, _g = _a.selectedItems, propsSeelctedItems = _g === void 0 ? [] : _g, _h = _a.readOnly, readOnly = _h === void 0 ? false : _h, _j = _a.disabled, disabled = _j === void 0 ? false : _j, value = _a.value, _k = _a.isMultiple, isMultiple = _k === void 0 ? false : _k, _l = _a.desc, desc = _l === void 0 ? 'name' : _l, _m = _a.descId, descId = _m === void 0 ? 'id' : _m, singleSelect = _a.singleSelect, className = _a.className, _o = _a.async, async = _o === void 0 ? false : _o, paginationEnabled = _a.paginationEnabled, initialLoad = _a.initialLoad, actionLabel = _a.actionLabel, handleAction = _a.handleAction, nextBlock = _a.nextBlock, notDataMessage = _a.notDataMessage, onFocus = _a.onFocus, _p = _a.expandable, expandable = _p === void 0 ? false : _p, _q = _a.textCount, textCount = _q === void 0 ? 10 : _q, _r = _a.itemCount, itemCount = _r === void 0 ? 1 : _r, scrollRef = _a.scrollRef, _s = _a.isTreeDropdown, isTreeDropdown = _s === void 0 ? true : _s, _t = _a.flatArray, flatArray = _t === void 0 ? false : _t, _u = _a.parentField, parentField = _u === void 0 ? 'parentId' : _u, errorFlag = _a.errorFlag, handleUpdateParent = _a.handleUpdateParent, _v = _a.isSeachable, isSeachable = _v === void 0 ? false : _v;
|
|
100
100
|
var dropdownRef = (0, react_1.useRef)(null);
|
|
101
101
|
// State Hooks Section
|
|
102
|
-
var
|
|
103
|
-
var
|
|
104
|
-
var
|
|
105
|
-
var
|
|
106
|
-
var
|
|
107
|
-
var
|
|
102
|
+
var _w = (0, react_1.useState)(true), isInitialRender = _w[0], setIsInitialRender = _w[1];
|
|
103
|
+
var _x = (0, react_1.useState)(value), inputValue = _x[0], setInputValue = _x[1];
|
|
104
|
+
var _y = (0, react_1.useState)(''), searchValue = _y[0], setSearchValue = _y[1];
|
|
105
|
+
var _z = (0, react_1.useState)(1), nextPage = _z[0], setNextPage = _z[1];
|
|
106
|
+
var _0 = (0, react_1.useState)(false), dropOpen = _0[0], setDropOpen = _0[1];
|
|
107
|
+
var _1 = (0, react_1.useState)([]), selectedItems = _1[0], setSelectedItems = _1[1];
|
|
108
108
|
// API call for suggestions through a custom hook
|
|
109
|
-
var
|
|
109
|
+
var _2 = (0, react_1.useState)(data), dropDownData = _2[0], setDropDownData = _2[1];
|
|
110
110
|
var inputRef = (0, react_1.useRef)(null);
|
|
111
111
|
var dropRef = (0, react_1.useRef)(null);
|
|
112
112
|
var dropLevelRef = (0, react_1.useRef)('bottom');
|
|
@@ -121,11 +121,11 @@ var AutoCompleteWithTreeStructure = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
121
121
|
}
|
|
122
122
|
}, [data, dropOpen]);
|
|
123
123
|
(0, react_1.useImperativeHandle)(ref, function () { return inputRef.current; });
|
|
124
|
-
var
|
|
124
|
+
var _3 = (0, react_1.useState)({
|
|
125
125
|
top: 0,
|
|
126
126
|
left: 0,
|
|
127
127
|
width: 200,
|
|
128
|
-
}), dropdownStyle =
|
|
128
|
+
}), dropdownStyle = _3[0], setDropdownStyle = _3[1];
|
|
129
129
|
var adjustDropdownPosition = function () {
|
|
130
130
|
if (dropdownRef.current) {
|
|
131
131
|
var inputRect = dropdownRef.current.getBoundingClientRect();
|
|
@@ -158,15 +158,9 @@ var AutoCompleteWithTreeStructure = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
158
158
|
window.removeEventListener('resize', adjustDropdownPosition);
|
|
159
159
|
};
|
|
160
160
|
}, [dropOpen, selectedItems]);
|
|
161
|
-
var
|
|
161
|
+
var _4 = (0, autosuggestions_1.useSuggestions)(getData, data, dropOpen, async, paginationEnabled, initialLoad, inputValue, isMultiple, setNextPage, selectedItems
|
|
162
162
|
// nextBlock
|
|
163
|
-
), suggestions =
|
|
164
|
-
// Adding debounce to avoid making API calls on every keystroke
|
|
165
|
-
var handleChangeWithDebounce = (0, debounce_1.debounce)(function (value) {
|
|
166
|
-
if ((type === 'auto_complete' || type === 'auto_suggestion') && async) {
|
|
167
|
-
handlePickSuggestions(value, 1);
|
|
168
|
-
}
|
|
169
|
-
}, 1000);
|
|
163
|
+
), suggestions = _4.suggestions, isLoading = _4.isLoading, handlePickSuggestions = _4.handlePickSuggestions;
|
|
170
164
|
var isSelected = function (item, selectedItems) {
|
|
171
165
|
if (Array.isArray(selectedItems)) {
|
|
172
166
|
return selectedItems.some(function (selectedItem) {
|
|
@@ -190,7 +184,7 @@ var AutoCompleteWithTreeStructure = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
190
184
|
var value = e.target.value;
|
|
191
185
|
setDropOpen(true);
|
|
192
186
|
setSearchValue(value);
|
|
193
|
-
handleChangeWithDebounce(value);
|
|
187
|
+
// handleChangeWithDebounce(value);
|
|
194
188
|
if (!value) {
|
|
195
189
|
setInputValue('');
|
|
196
190
|
// onChange({ [descId]: '', [desc]: '' });
|
|
@@ -200,7 +194,7 @@ var AutoCompleteWithTreeStructure = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
200
194
|
var value = e.target.value;
|
|
201
195
|
setDropOpen(true);
|
|
202
196
|
setSearchValue(value);
|
|
203
|
-
|
|
197
|
+
searchPortsFlat(value);
|
|
204
198
|
};
|
|
205
199
|
var handleBlur = function () {
|
|
206
200
|
setTimeout(function () {
|
|
@@ -306,26 +300,6 @@ var AutoCompleteWithTreeStructure = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
306
300
|
var newTreeData;
|
|
307
301
|
var checkedNodes = []; // Array to store the entire checked node objects
|
|
308
302
|
if (isMultiple) {
|
|
309
|
-
// Multi-select logic: update only the clicked node
|
|
310
|
-
// newTreeData = updateTreeNode(dropDownData, id, (node) => {
|
|
311
|
-
// node.checked = checked;
|
|
312
|
-
// // Update the checked nodes array
|
|
313
|
-
// if (checked) {
|
|
314
|
-
// checkedNodes.push(node); // Add the entire node if checked
|
|
315
|
-
// } else {
|
|
316
|
-
// // Remove the node from the array if unchecked
|
|
317
|
-
// checkedNodes = checkedNodes.filter(
|
|
318
|
-
// (checkedNode) => checkedNode[descId] !== node[descId]
|
|
319
|
-
// );
|
|
320
|
-
// }
|
|
321
|
-
// });
|
|
322
|
-
// // Find all checked nodes in the newTreeData (in case you need all checked nodes at any point)
|
|
323
|
-
// checkedNodes = [];
|
|
324
|
-
// newTreeData.forEach((node) => {
|
|
325
|
-
// getCheckedNodes(node, checkedNodes); // Recursively collect checked nodes
|
|
326
|
-
// });
|
|
327
|
-
// setSelectedItems(checkedNodes);
|
|
328
|
-
// onChange(checkedNodes);
|
|
329
303
|
var selectedData = __spreadArray([], selectedItems, true);
|
|
330
304
|
if (checked) {
|
|
331
305
|
selectedData.push(dataItem);
|
|
@@ -394,13 +368,65 @@ var AutoCompleteWithTreeStructure = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
394
368
|
return renderTree(childNode, index);
|
|
395
369
|
})) }), node[descId]) })));
|
|
396
370
|
};
|
|
397
|
-
var
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
371
|
+
var _5 = (0, react_1.useState)([]), filteredData = _5[0], setFilteredData = _5[1];
|
|
372
|
+
var searchPortsFlat = function (query) {
|
|
373
|
+
var lowerQuery = query.toLowerCase();
|
|
374
|
+
var result = [];
|
|
375
|
+
var searchRecursive = function (port) {
|
|
376
|
+
var _a;
|
|
377
|
+
var _b;
|
|
378
|
+
if (port[desc].toLowerCase().includes(lowerQuery)) {
|
|
379
|
+
result.push((_a = {},
|
|
380
|
+
_a[descId] = port[descId],
|
|
381
|
+
_a[desc] = port[desc],
|
|
382
|
+
_a.parentId = port.parentId,
|
|
383
|
+
_a));
|
|
384
|
+
}
|
|
385
|
+
(_b = port.children) === null || _b === void 0 ? void 0 : _b.forEach(searchRecursive);
|
|
386
|
+
};
|
|
387
|
+
dropDownData.forEach(searchRecursive);
|
|
388
|
+
result;
|
|
389
|
+
setFilteredData(result);
|
|
390
|
+
};
|
|
391
|
+
var handleSuggestionClick = (0, react_1.useCallback)(function (suggestion) {
|
|
392
|
+
if (isMultiple) {
|
|
393
|
+
setSelectedItems(function (prev) {
|
|
394
|
+
var isAdded = prev.some(function (item) { return item[descId] === suggestion[descId]; });
|
|
395
|
+
if (isAdded) {
|
|
396
|
+
return prev.filter(function (item) { return item[descId] !== suggestion[descId]; });
|
|
397
|
+
}
|
|
398
|
+
else {
|
|
399
|
+
return __spreadArray(__spreadArray([], prev, true), [suggestion], false);
|
|
400
|
+
}
|
|
401
|
+
});
|
|
401
402
|
}
|
|
402
403
|
else {
|
|
403
|
-
|
|
404
|
+
setInputValue(suggestion[desc]);
|
|
405
|
+
setSearchValue('');
|
|
406
|
+
onChange(suggestion);
|
|
407
|
+
setDropOpen(false);
|
|
408
|
+
}
|
|
409
|
+
}, []);
|
|
410
|
+
var handleMultiSelect = function (e, suggestion) {
|
|
411
|
+
var checked = e.target.checked;
|
|
412
|
+
if (isMultiple) {
|
|
413
|
+
if (checked) {
|
|
414
|
+
setSelectedItems(function (prev) { return __spreadArray(__spreadArray([], prev, true), [suggestion], false); });
|
|
415
|
+
}
|
|
416
|
+
else {
|
|
417
|
+
setSelectedItems(function (prev) {
|
|
418
|
+
return prev.filter(function (item, i) { return item[descId] !== suggestion[descId]; });
|
|
419
|
+
});
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
else {
|
|
423
|
+
if (checked) {
|
|
424
|
+
setInputValue(suggestion[desc]);
|
|
425
|
+
onChange(suggestion);
|
|
426
|
+
}
|
|
427
|
+
else {
|
|
428
|
+
setInputValue('');
|
|
429
|
+
}
|
|
404
430
|
}
|
|
405
431
|
};
|
|
406
432
|
return ((0, jsx_runtime_1.jsxs)("div", __assign({ className: fullWidth ? 'fullWidth' : 'autoWidth', ref: dropdownRef }, { children: [label && ((0, jsx_runtime_1.jsxs)("div", __assign({ style: {
|
|
@@ -420,15 +446,15 @@ var AutoCompleteWithTreeStructure = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
420
446
|
? searchValue
|
|
421
447
|
: placeholder !== null && placeholder !== void 0 ? placeholder : '', onClick: function () { return onInputFocus(); } }, { children: (0, jsx_runtime_1.jsx)("input", { id: id, ref: inputRef, type: "text", value: type === 'auto_suggestion' && !expandable
|
|
422
448
|
? inputValue
|
|
423
|
-
:
|
|
449
|
+
: inputValue, onChange: handleChange,
|
|
424
450
|
// onBlur={handleBlur}
|
|
425
451
|
onFocus: onFocus, onClick: function () { return handleOnClick(); }, className: generateClassName(), placeholder: (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length) > 0 ? '' : placeholder !== null && placeholder !== void 0 ? placeholder : '', readOnly: readOnly ||
|
|
426
452
|
type === 'custom_select' ||
|
|
427
453
|
(type == 'auto_suggestion' && !expandable), disabled: disabled, "data-testid": "custom-autocomplete" }) })), (0, jsx_runtime_1.jsx)(InputActions_1.default, { inputValue: inputValue, searchValue: searchValue, dropOpen: dropOpen, handleDropOpen: handleDropOpen, handleDropClose: handleDropClose, disabled: disabled, readOnly: readOnly, error: errorFlag, expandable: expandable, handleClear: handleClear }), dropOpen &&
|
|
428
|
-
react_dom_1.default.createPortal((0, jsx_runtime_1.jsxs)("ul", __assign({ ref: dropRef, style: __assign(__assign({}, dropdownStyle), { minHeight: 192 }), className: "qbs-autocomplete-suggestions " }, { children: [
|
|
454
|
+
react_dom_1.default.createPortal((0, jsx_runtime_1.jsxs)("ul", __assign({ ref: dropRef, style: __assign(__assign({}, dropdownStyle), { minHeight: 192 }), className: "qbs-autocomplete-suggestions " }, { children: [isSeachable && ((0, jsx_runtime_1.jsxs)("div", __assign({ style: { position: 'relative' }, className: "react-core-ts-search-container" }, { children: [(0, jsx_runtime_1.jsx)("span", __assign({ className: "dropdown-search-icon" }, { children: (0, jsx_runtime_1.jsx)(icons_1.Search, {}) })), (0, jsx_runtime_1.jsx)("input", { className: "dropdown-search-input", onChange: handleSuggestionChange, value: searchValue, placeholder: "Search" })] }))), (0, jsx_runtime_1.jsx)("div", __assign({ style: {
|
|
429
455
|
gap: isTreeDropdown ? '8px' : '0',
|
|
430
456
|
minHeight: isTreeDropdown ? '184px' : '0',
|
|
431
|
-
}, className: "qbs-autocomplete-suggestions-sub padding-class " }, { children: (dropDownData === null || dropDownData === void 0 ? void 0 : dropDownData.length) > 0 ? (dropDownData.map(function (suggestion, idx) {
|
|
457
|
+
}, className: "qbs-autocomplete-suggestions-sub padding-class " }, { children: searchValue ? (filteredData.map(function (suggestion, idx) { return ((0, jsx_runtime_1.jsx)(DropdownList_1.default, { idx: idx, suggestion: suggestion, isSelected: isSelected, handleSuggestionClick: handleSuggestionClick, handleMultiSelect: handleMultiSelect, selected: selected, isMultiple: isMultiple, singleSelect: singleSelect, desc: desc }, suggestion[descId])); })) : (dropDownData === null || dropDownData === void 0 ? void 0 : dropDownData.length) > 0 ? (dropDownData.map(function (suggestion, idx) {
|
|
432
458
|
var _a;
|
|
433
459
|
return ((0, jsx_runtime_1.jsx)(TreeNode_1.default, __assign({ node: suggestion, isSelected: isSelected,
|
|
434
460
|
// handleMultiSelect={handleMultiSelect}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoCompleteWithTreeStructure.js","sourceRoot":"","sources":["../src/AutoCompleteWithTreeStructure.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AutoCompleteWithTreeStructure.js","sourceRoot":"","sources":["../src/AutoCompleteWithTreeStructure.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAOe;AACf,wDAAiC;AAGjC,2EAAqD;AACrD,2EAAqD;AACrD,mEAA6C;AAC7C,+DAA6D;AAC7D,+FAAwE;AACxE,mDAAkD;AAClD,sFAAoE;AACpE,2CAAoD;AAKpD,IAAM,6BAA6B,GAAG,IAAA,kBAAU,EAI9C,UACE,EAuCC,EACD,GAAG;QAvCD,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,eAAwB,EAAxB,OAAO,mBAAG;QAAY,sBAAA,EAAE,EAAA;aAAA,KAAA,EACxB,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EACT,MAAM,YAAA,EACN,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,IAAI,UAAA,EACJ,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,WAAW,iBAAA,EACX,EAAE,QAAA,EACF,YAAsB,EAAtB,IAAI,mBAAG,eAAe,KAAA,EACtB,qBAAsC,EAAvB,kBAAkB,mBAAG,EAAE,KAAA,EACtC,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,KAAK,WAAA,EACL,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,YAAa,EAAb,IAAI,mBAAG,MAAM,KAAA,EACb,cAAa,EAAb,MAAM,mBAAG,IAAI,KAAA,EACb,YAAY,kBAAA,EACZ,SAAS,eAAA,EACT,aAAa,EAAb,KAAK,mBAAG,KAAK,KAAA,EACb,iBAAiB,uBAAA,EACjB,WAAW,iBAAA,EACX,WAAW,iBAAA,EACX,YAAY,kBAAA,EACZ,SAAS,eAAA,EACT,cAAc,oBAAA,EACd,OAAO,aAAA,EACP,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA,EACd,iBAAa,EAAb,SAAS,mBAAG,CAAC,KAAA,EACb,SAAS,eAAA,EACT,sBAAqB,EAArB,cAAc,mBAAG,IAAI,KAAA,EACrB,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,mBAAwB,EAAxB,WAAW,mBAAG,UAAU,KAAA,EACxB,SAAS,eAAA,EACT,kBAAkB,wBAAA,EAClB,mBAAmB,EAAnB,WAAW,mBAAG,KAAK,KAAA;IAIrB,IAAM,WAAW,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IACjD,sBAAsB;IAChB,IAAA,KAAwC,IAAA,gBAAQ,EAAC,IAAI,CAAC,EAArD,eAAe,QAAA,EAAE,kBAAkB,QAAkB,CAAC;IAEvD,IAAA,KAA8B,IAAA,gBAAQ,EAAS,KAAK,CAAC,EAApD,UAAU,QAAA,EAAE,aAAa,QAA2B,CAAC;IACtD,IAAA,KAAgC,IAAA,gBAAQ,EAAS,EAAE,CAAC,EAAnD,WAAW,QAAA,EAAE,cAAc,QAAwB,CAAC;IACrD,IAAA,KAA0B,IAAA,gBAAQ,EAAqB,CAAC,CAAC,EAAxD,QAAQ,QAAA,EAAE,WAAW,QAAmC,CAAC;IAC1D,IAAA,KAA0B,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAAjD,QAAQ,QAAA,EAAE,WAAW,QAA4B,CAAC;IACnD,IAAA,KAAoC,IAAA,gBAAQ,EAAe,EAAE,CAAC,EAA7D,aAAa,QAAA,EAAE,gBAAgB,QAA8B,CAAC;IACrE,iDAAiD;IAC3C,IAAA,KAAkC,IAAA,gBAAQ,EAAe,IAAI,CAAC,EAA7D,YAAY,QAAA,EAAE,eAAe,QAAgC,CAAC;IACrE,IAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAC;IAC9B,IAAM,OAAO,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAC;IAC7B,IAAM,YAAY,GAAG,IAAA,cAAM,EAAS,QAAQ,CAAC,CAAC;IAC9C,IAAA,iBAAS,EAAC;QACR,IAAI,IAAI,EAAE;YACR,IAAI,SAAS,EAAE;gBACb,eAAe,CAAC,IAAA,2CAAS,EAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;aACvD;iBAAM;gBACL,eAAe,CAAC,IAAI,CAAC,CAAC;aACvB;SACF;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IACrB,IAAA,2BAAmB,EAAC,GAAG,EAAE,cAAM,OAAA,QAAQ,CAAC,OAAO,EAAhB,CAAgB,CAAC,CAAC;IAE3C,IAAA,KAAoC,IAAA,gBAAQ,EAAC;QACjD,GAAG,EAAE,CAAC;QACN,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,GAAG;KACX,CAAC,EAJK,aAAa,QAAA,EAAE,gBAAgB,QAIpC,CAAC;IAEH,IAAM,sBAAsB,GAAG;QAC7B,IAAI,WAAW,CAAC,OAAO,EAAE;YACvB,IAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC9D,IAAM,gBAAgB,GAAG;gBACvB,IAAI,EAAE,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO;gBACrC,KAAK,EAAE,SAAS,CAAC,KAAK;gBACtB,GAAG,EAAE,CAAC;aACP,CAAC;YACF,iEAAiE;YACjE,IAAM,UAAU,GAAG,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC;YACzD,IAAM,UAAU,GAAG,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC;YAElD,IAAM,cAAc,GAAG,GAAG,CAAC,CAAC,sDAAsD;YAClF,IAAI,UAAU,IAAI,cAAc,EAAE;gBAChC,gBAAgB,CAAC,GAAG;oBAClB,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC;gBACpD,YAAY,CAAC,OAAO,GAAG,QAAQ,CAAC;aACjC;iBAAM;gBACL,gBAAgB,CAAC,GAAG;oBAClB,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,GAAG,cAAc,GAAG,EAAE,CAAC;gBACvD,YAAY,CAAC,OAAO,GAAG,KAAK,CAAC;aAC9B;YAED,gBAAgB,cACX,gBAAgB,EACnB,CAAC;SACJ;IACH,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC;QACR,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;QAC1D,sBAAsB,EAAE,CAAC;QAEzB,OAAO;YACL,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;QAC/D,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAExB,IAAA,KAAoD,IAAA,gCAAc,EACtE,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,UAAU,EACV,WAAW,EACX,aAAa;IACb,YAAY;KACb,EAZO,WAAW,iBAAA,EAAE,SAAS,eAAA,EAAE,qBAAqB,2BAYpD,CAAC;IAEF,IAAM,UAAU,GAAG,UACjB,IAAgB,EAChB,aAAoC;QAEpC,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YAChC,OAAO,aAAa,CAAC,IAAI,CACvB,UAAC,YAAY;gBACX,OAAA,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC;oBACjC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC;YADrC,CACqC,CACxC,CAAC;SACH;aAAM;YACL,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,aAAa,CAAC;SACrC;IACH,CAAC,CAAC;IACF,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,IAAA,qBAAS,EAAC,aAAa,EAAE,kBAAkB,CAAC;YAC/C,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IACzC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACzB,8DAA8D;IAC9D,IAAA,iBAAS,EAAC;QACR,aAAa,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,IAAM,YAAY,GAAG,UAAC,CAAsC;QAClD,IAAA,KAAK,GAAK,CAAC,CAAC,MAAM,MAAb,CAAc;QAC3B,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,mCAAmC;QACnC,IAAI,CAAC,KAAK,EAAE;YACV,aAAa,CAAC,EAAE,CAAC,CAAC;YAClB,0CAA0C;SAC3C;IACH,CAAC,CAAC;IACF,IAAM,sBAAsB,GAAG,UAAC,CAAsC;QAC5D,IAAA,KAAK,GAAK,CAAC,CAAC,MAAM,MAAb,CAAc;QAC3B,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,IAAM,UAAU,GAAG;QACjB,UAAU,CAAC;YACT,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG;;QAClB,IAAI,WAAW,EAAE;YACf,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,WAAW,CAAC,KAAK,CAAC,CAAC;SACpB;aAAM;YACL,aAAa,CAAC,EAAE,CAAC,CAAC;YAClB,QAAQ,WAAG,GAAC,MAAM,IAAG,EAAE,EAAE,GAAC,IAAI,IAAG,EAAE,MAAG,CAAC;YACvC,WAAW,CAAC,KAAK,CAAC,CAAC;SACpB;IACH,CAAC,CAAC;IACF,IAAA,iBAAS,EAAC;QACR,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAG,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,IAAM,iBAAiB,GAAG,IAAA,mBAAW,EAAC;QACpC,OAAO,gCAAyB,SAAS,cACvC,MAAM,KAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAA,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,cAC9D,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC;IACvC,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAEnB,IAAM,wBAAwB,GAAG,UAAC,KAAa;QAC7C,gBAAgB,CAAC,UAAC,IAAI;YACpB,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,KAAK,KAAK,EAAX,CAAW,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,IAAA,iBAAS,EAAC;QACR,IAAI,eAAe,EAAE;YACnB,kBAAkB,CAAC,KAAK,CAAC,CAAC;SAC3B;aAAM;YACL,QAAQ,CAAC,aAAa,CAAC,CAAC;SACzB;IACH,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,IAAA,iBAAS,EAAC;QACR,IAAM,kBAAkB,GAAG,UAAC,KAAU;;YACpC,IACE,OAAO,CAAC,OAAO;gBACf,KAAK,CAAC,MAAM,YAAY,IAAI;gBAC5B,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gBACvC,CAAA,MAAA,KAAK,CAAC,MAAM,0CAAE,EAAE,MAAK,iBAAiB,EACtC;gBACA,UAAU,CAAC;oBACT,WAAW,CAAC,KAAK,CAAC,CAAC;oBACnB,cAAc,CAAC,EAAE,CAAC,CAAC;gBACrB,CAAC,EAAE,GAAG,CAAC,CAAC;aACT;QACH,CAAC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,kBAAyB,CAAC,CAAC;QAClE,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,kBAAyB,CAAC,CAAC;QAE7D,IAAM,cAAc,GAAG,QAAQ,CAAC,gBAAgB,CAC9C,4EAA4E,CAC7E,CAAC;QACF,cAAc,CAAC,OAAO,CAAC,UAAC,GAAG;YACzB,OAAA,GAAG,CAAC,gBAAgB,CAAC,QAAQ,EAAE,kBAAyB,CAAC;QAAzD,CAAyD,CAC1D,CAAC;QACF,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,EAAE;YAChE,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,kBAAyB,CAAC,CAAC;SACzE;QAED,OAAO;YACL,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,kBAAyB,CAAC,CAAC;YACrE,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,kBAAyB,CAAC,CAAC;YAChE,cAAc,CAAC,OAAO,CAAC,UAAC,GAAG;gBACzB,OAAA,GAAG,CAAC,mBAAmB,CAAC,QAAQ,EAAE,kBAAyB,CAAC;YAA5D,CAA4D,CAC7D,CAAC;YACF,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,EAAE;gBAChE,SAAS,CAAC,OAAO,CAAC,mBAAmB,CACnC,QAAQ,EACR,kBAAyB,CAC1B,CAAC;aACH;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,uDAAuD;IACvD,IAAM,QAAQ,GAAQ,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;IAE9D,IAAM,aAAa,GAAG;QACpB,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClD,CAAC,CAAC;IACF,IAAM,YAAY,GAAG;QACnB,IAAI,QAAQ,CAAC,OAAO;YAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC/C,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,IAAM,cAAc,GAClB,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,IAAG,SAAS;QAC/B,CAAC,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CACT,KAAK,CAAC,SAAS,EAChB,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,CAAC,EAAV,CAAU,EACxB,IAAI,CAAC,IAAI,CAAC;QACf,CAAC,CAAC,EAAE,CAAC;IAET,IAAM,cAAc,GAAG,UAAC,CAAM;QAC5B,IAAI,CAAC,QAAQ;YAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,IAAM,eAAe,GAAG,UAAC,CAAM;QAC7B,IAAI,QAAQ;YAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC;IACF,IAAM,YAAY,GAAG,UAAC,EAAU;QAC9B,IAAM,WAAW,GAAG,cAAc,CAAC,YAAY,EAAE,EAAE,EAAE,UAAC,IAAI;YACxD,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,eAAe,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,IAAM,aAAa,GAAG,UAAC,KAAY;QACjC,OAAO,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,uBACtB,IAAI,KACP,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,IAClE,EAJyB,CAIzB,CAAC,CAAC;IACN,CAAC,CAAC;IACF,8DAA8D;IAC9D,IAAM,UAAU,GAAG,UAAC,EAAU,EAAE,OAAgB,EAAE,QAAa;QAC7D,IAAI,WAAW,CAAC;QAChB,IAAI,YAAY,GAAU,EAAE,CAAC,CAAC,iDAAiD;QAE/E,IAAI,UAAU,EAAE;YACd,IAAI,YAAY,qBAAO,aAAa,OAAC,CAAC;YACtC,IAAI,OAAO,EAAE;gBACX,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC7B;iBAAM;gBACL,YAAY,GAAG,YAAY,CAAC,MAAM,CAChC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAzC,CAAyC,CAC5D,CAAC;aACH;YACD,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAC/B,QAAQ,CAAC,YAAY,CAAC,CAAC;SACxB;aAAM;YACL,IAAI,CAAC,OAAO,EAAE;gBACZ,aAAa,CAAC,EAAE,CAAC,CAAC;gBAClB,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;aAChC;YACD,8EAA8E;YAC9E,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,UAAC,IAAI;gBAClC,OAAA,cAAc,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC;YAAjC,CAAiC,CAClC,CAAC;SACH;IACH,CAAC,CAAC;IACF,IAAM,eAAe,GAAG,UAAC,IAAS,EAAE,YAAmB;QACrD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,8BAA8B;SACxD;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAC,KAAU;gBAC/B,OAAA,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC;YAApC,CAAoC,CACrC,CAAC;SACH;IACH,CAAC,CAAC;IAEF,qDAAqD;IACrD,IAAM,cAAc,GAAG,UACrB,KAAY,EACZ,EAAU,EACV,QAA6B;QAE7B,OAAO,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI;YACpB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE;gBACvB,QAAQ,CAAC,IAAI,CAAC,CAAC;aAChB;YAED,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;aAC7D;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,sEAAsE;IACtE,IAAM,cAAc,GAAG,UAAC,IAAS,EAAE,EAAU,EAAE,OAAgB;QAC7D,kEAAkE;QAClE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;QACrD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,WAAW,CAAC,KAAK,CAAC,CAAC;SACpB;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,KAAU;gBAC3C,OAAA,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC;YAAlC,CAAkC,CACnC,CAAC;SACH;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACF,IAAM,UAAU,GAAG,UAAC,IAAS,EAAE,KAAa;;QAC1C,OAAO,CACL,yCAAK,SAAS,EAAC,+BAA+B,gBAC5C,uBAAC,kBAAQ,aAEP,IAAI,EAAE,IAAI;gBACV,wCAAwC;gBACxC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,EACjB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,gBAEzB,IAAI,CAAC,QAAQ;qBACZ,MAAA,IAAI,CAAC,QAAQ,0CAAE,GAAG,CAAC,UAAC,SAAc,EAAE,KAAa;wBAC/C,OAAA,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;oBAA5B,CAA4B,CAC7B,CAAA,KAhBE,IAAI,CAAC,MAAM,CAAC,CAiBR,IACP,CACP,CAAC;IACJ,CAAC,CAAC;IACI,IAAA,KAAkC,IAAA,gBAAQ,EAAC,EAAE,CAAC,EAA7C,YAAY,QAAA,EAAE,eAAe,QAAgB,CAAC;IACrD,IAAM,eAAe,GAAG,UAAC,KAAa;QACpC,IAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACvC,IAAM,MAAM,GAAU,EAAE,CAAC;QAEzB,IAAM,eAAe,GAAG,UAAC,IAAS;;;YAChC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;gBACjD,MAAM,CAAC,IAAI;oBACT,GAAC,MAAM,IAAG,IAAI,CAAC,MAAM,CAAC;oBACtB,GAAC,IAAI,IAAG,IAAI,CAAC,IAAI,CAAC;oBAClB,WAAQ,GAAE,IAAI,CAAC,QAAQ;wBACvB,CAAC;aACJ;YACD,MAAA,IAAI,CAAC,QAAQ,0CAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QAC1C,CAAC,CAAC;QAEF,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACtC,MAAM,CAAC;QACP,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,IAAM,qBAAqB,GAAG,IAAA,mBAAW,EAAC,UAAC,UAAsB;QAC/D,IAAI,UAAU,EAAE;YACd,gBAAgB,CAAC,UAAC,IAAI;gBACpB,IAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CACvB,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,CAAC,EAAnC,CAAmC,CAC9C,CAAC;gBACF,IAAI,OAAO,EAAE;oBACX,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,CAAC,EAAnC,CAAmC,CAAC,CAAC;iBACnE;qBAAM;oBACL,uCAAW,IAAI,UAAE,UAAU,UAAE;iBAC9B;YACH,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAChC,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,QAAQ,CAAC,UAAU,CAAC,CAAC;YACrB,WAAW,CAAC,KAAK,CAAC,CAAC;SACpB;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,IAAM,iBAAiB,GAAG,UAAC,CAAM,EAAE,UAAsB;QAC/C,IAAA,OAAO,GAAK,CAAC,CAAC,MAAM,QAAb,CAAc;QAC7B,IAAI,UAAU,EAAE;YACd,IAAI,OAAO,EAAE;gBACX,gBAAgB,CAAC,UAAC,IAAI,IAAK,uCAAI,IAAI,UAAE,UAAU,WAApB,CAAqB,CAAC,CAAC;aACnD;iBAAM;gBACL,gBAAgB,CAAC,UAAC,IAAI;oBACpB,OAAO,IAAI,CAAC,MAAM,CAChB,UAAC,IAAI,EAAE,CAAC,IAAK,OAAA,IAAI,CAAC,MAAM,CAAC,KAAK,UAAU,CAAC,MAAM,CAAC,EAAnC,CAAmC,CACjD,CAAC;gBACJ,CAAC,CAAC,CAAC;aACJ;SACF;aAAM;YACL,IAAI,OAAO,EAAE;gBACX,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;gBAChC,QAAQ,CAAC,UAAU,CAAC,CAAC;aACtB;iBAAM;gBACL,aAAa,CAAC,EAAE,CAAC,CAAC;aACnB;SACF;IACH,CAAC,CAAC;IAEF,OAAO,CACL,0CAAK,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,WAAW,iBACpE,KAAK,IAAI,CACR,0CACE,KAAK,EAAE;oBACL,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,MAAM;oBACf,cAAc,EAAE,eAAe;iBAChC,iBAED,4CAAO,SAAS,EAAE,mBAAmB,iBAClC,KAAK,EACL,QAAQ,IAAI,0CAAM,SAAS,EAAC,YAAY,wBAAU,KAC7C,EACR,0CAAM,OAAO,EAAE,cAAM,OAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,EAAI,EAAhB,CAAgB,EAAE,SAAS,EAAE,cAAc,gBAC7D,WAAW,IACP,KACH,CACP,EAGD,0CACE,SAAS,EAAE,UACT,UAAU,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC,eAAe,CACpE,EACF,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAE9B,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,IAAG,CAAC,IAAI,CAC5B,6DACG,aAAa;iCACX,KAAK,CACJ,CAAC,EACD,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,IAAG,SAAS;gCAC/B,CAAC,CAAC,SAAS;gCACX,CAAC,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,CAC1B;iCACA,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;;gCAAK,OAAA,CACpB,yCAAiB,SAAS,EAAC,0BAA0B,gBACnD,uBAAC,4BAAO,aACN,KAAK,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,IAAI,CAAC,EACnB,OAAO,EAAE,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,IAAI,CAAC,0CAAE,MAAM,IAAG,SAAS,gBAEzC,0CAAmB,SAAS,EAAC,eAAe,iBACzC,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,IAAI,CAAC,0CAAE,MAAM,IAAG,SAAS;oDAC/B,CAAC,CAAC,UAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,QAAK;oDAC9C,CAAC,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,IAAI,CAAC,EAEhB,4CACE,OAAO,EAAE,cAAM,OAAA,wBAAwB,CAAC,KAAK,CAAC,EAA/B,CAA+B,EAC9C,SAAS,EAAC,iBAAiB,gBACf,iBAAU,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,IAAI,CAAC,CAAE,uBAG7B,MAXD,IAAI,CAAC,EAAE,CAYX,IACE,KAlBF,KAAK,CAmBT,CACP,CAAA;6BAAA,CAAC,EACH,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,IAAG,SAAS,IAAI,CACpC,yCAAK,SAAS,EAAC,0BAA0B,gBACvC,uBAAC,4BAAO,aAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,gBAC3C,0CAAK,SAAS,EAAC,oBAAoB,sBAC/B,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,IAAG,SAAS,cAC/B,IACE,IACN,CACP,IACA,CACJ,EAED,yCACE,SAAS,EAAE,mCACT,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAC/B,gBAEA,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,IAAG,CAAC,IAAI,WAAW;4BACtC,CAAC,CAAC,WAAW;4BACb,CAAC,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,EAEvB,OAAO,EAAE,cAAM,OAAA,YAAY,EAAE,EAAd,CAAc,gBAE7B,kCACE,EAAE,EAAE,EAAE,EACN,GAAG,EAAE,QAAQ,EACb,IAAI,EAAC,MAAM,EACX,KAAK,EACH,IAAI,KAAK,iBAAiB,IAAI,CAAC,UAAU;gCACvC,CAAC,CAAC,UAAU;gCACZ,CAAC,CAAC,UAAU,EAEhB,QAAQ,EAAE,YAAY;4BACtB,sBAAsB;4BACtB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,cAAM,OAAA,aAAa,EAAE,EAAf,CAAe,EAC9B,SAAS,EAAE,iBAAiB,EAAE,EAC9B,WAAW,EAAE,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,IAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,EAC/D,QAAQ,EACN,QAAQ;gCACR,IAAI,KAAK,eAAe;gCACxB,CAAC,IAAI,IAAI,iBAAiB,IAAI,CAAC,UAAU,CAAC,EAE5C,QAAQ,EAAE,QAAQ,iBACN,qBAAqB,GACjC,IACE,EAIN,uBAAC,sBAAY,IACX,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,GACxB,EAKD,QAAQ;wBACP,mBAAQ,CAAC,YAAY,CACnB,yCACE,GAAG,EAAE,OAAO,EACZ,KAAK,wBAAO,aAAa,KAAE,SAAS,EAAE,GAAG,KACzC,SAAS,EAAE,+BAA+B,iBAEzC,WAAW,IAAI,CACd,0CACE,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,EAC/B,SAAS,EAAC,gCAAgC,iBAE1C,0CAAM,SAAS,EAAC,sBAAsB,gBACpC,uBAAC,cAAM,KAAG,IACL,EACP,kCACE,SAAS,EAAC,uBAAuB,EACjC,QAAQ,EAAE,sBAAsB,EAChC,KAAK,EAAE,WAAW,EAClB,WAAW,EAAC,QAAQ,GACpB,KACE,CACP,EAED,yCACE,KAAK,EAAE;wCACL,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG;wCACjC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;qCAC1C,EACD,SAAS,EAAE,iDAAiD,gBAE3D,WAAW,CAAC,CAAC,CAAC,CACb,YAAY,CAAC,GAAG,CAAC,UAAC,UAAsB,EAAE,GAAW,IAAK,OAAA,CACxD,uBAAC,sBAAY,IACX,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,EACtB,qBAAqB,EAAE,qBAAqB,EAC5C,iBAAiB,EAAE,iBAAiB,EACpC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,IAAI,IACL,UAAU,CAAC,MAAM,CAAC,CACvB,CACH,EAbyD,CAazD,CAAC,CACH,CAAC,CAAC,CAAC,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,CAAC,CAAC,CAAC,CAC7B,YAAY,CAAC,GAAG,CAAC,UAAC,UAAe,EAAE,GAAW;;wCAAK,OAAA,CACjD,uBAAC,kBAAQ,aAEP,IAAI,EAAE,UAAU,EAChB,UAAU,EAAE,UAAU;4CACtB,wCAAwC;4CACxC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,EACvB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,gBAEzB,UAAU,CAAC,QAAQ;iDAClB,MAAA,UAAU,CAAC,QAAQ,0CAAE,GAAG,CACtB,UAAC,SAAc,EAAE,KAAa;oDAC5B,OAAA,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;gDAA5B,CAA4B,CAC/B,CAAA,KAjBE,UAAU,CAAC,MAAM,CAAC,CAkBd,CACZ,CAAA;qCAAA,CAAC,CACH,CAAC,CAAC,CAAC,CACF,2DACG,SAAS,CAAC,CAAC,CAAC,CACX,yCACE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAEpD,2CACE,uBAAC,eAAO,KAAG,GACN,IACH,CACP,CAAC,CAAC,CAAC,CACF,wCACE,SAAS,EAAC,2BAA2B,EACrC,OAAO,EAAE,UAAU,gBAElB,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,kBAAkB,IAClC,CACN,GACA,CACJ,IACG,KACH,EACL,QAAQ,CAAC,IAAI,CACd,KACC,KAYF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,kBAAe,eAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC"}
|
package/dist/commontypes.d.ts
CHANGED
package/docs/App.tsx
CHANGED
|
@@ -139,9 +139,9 @@ export default function App() {
|
|
|
139
139
|
type="custom_select"
|
|
140
140
|
// async
|
|
141
141
|
desc="name"
|
|
142
|
-
isMultiple={
|
|
142
|
+
isMultiple={true}
|
|
143
143
|
flatArray={true}
|
|
144
|
-
singleSelect={
|
|
144
|
+
singleSelect={false}
|
|
145
145
|
expandable={true}
|
|
146
146
|
isTreeDropdown={true}
|
|
147
147
|
descId="id"
|
package/package.json
CHANGED
|
@@ -9,11 +9,11 @@ import React, {
|
|
|
9
9
|
import ReactDOM from 'react-dom';
|
|
10
10
|
|
|
11
11
|
import { AutoSuggestionInputProps } from './commontypes';
|
|
12
|
+
import DropdownList from './components/DropdownList';
|
|
12
13
|
import InputActions from './components/InputActions';
|
|
13
14
|
import TreeNode from './components/TreeNode';
|
|
14
15
|
import { useSuggestions } from './utilities/autosuggestions';
|
|
15
16
|
import { buildTree } from './utilities/convertFlatArraytoTreeStructure';
|
|
16
|
-
import { debounce } from './utilities/debounce';
|
|
17
17
|
import { deepEqual } from './utilities/deepEqual';
|
|
18
18
|
import { default as Tooltip } from './utilities/expandableTootltip';
|
|
19
19
|
import { Search, Spinner } from './utilities/icons';
|
|
@@ -64,6 +64,7 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
64
64
|
parentField = 'parentId',
|
|
65
65
|
errorFlag,
|
|
66
66
|
handleUpdateParent,
|
|
67
|
+
isSeachable = false,
|
|
67
68
|
},
|
|
68
69
|
ref
|
|
69
70
|
) => {
|
|
@@ -150,12 +151,6 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
150
151
|
// nextBlock
|
|
151
152
|
);
|
|
152
153
|
|
|
153
|
-
// Adding debounce to avoid making API calls on every keystroke
|
|
154
|
-
const handleChangeWithDebounce = debounce((value) => {
|
|
155
|
-
if ((type === 'auto_complete' || type === 'auto_suggestion') && async) {
|
|
156
|
-
handlePickSuggestions(value, 1);
|
|
157
|
-
}
|
|
158
|
-
}, 1000);
|
|
159
154
|
const isSelected = (
|
|
160
155
|
item: ValueProps,
|
|
161
156
|
selectedItems: ValueProps[] | string
|
|
@@ -183,7 +178,7 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
183
178
|
const { value } = e.target;
|
|
184
179
|
setDropOpen(true);
|
|
185
180
|
setSearchValue(value);
|
|
186
|
-
handleChangeWithDebounce(value);
|
|
181
|
+
// handleChangeWithDebounce(value);
|
|
187
182
|
if (!value) {
|
|
188
183
|
setInputValue('');
|
|
189
184
|
// onChange({ [descId]: '', [desc]: '' });
|
|
@@ -193,7 +188,7 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
193
188
|
const { value } = e.target;
|
|
194
189
|
setDropOpen(true);
|
|
195
190
|
setSearchValue(value);
|
|
196
|
-
|
|
191
|
+
searchPortsFlat(value);
|
|
197
192
|
};
|
|
198
193
|
|
|
199
194
|
const handleBlur = () => {
|
|
@@ -323,28 +318,6 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
323
318
|
let checkedNodes: any[] = []; // Array to store the entire checked node objects
|
|
324
319
|
|
|
325
320
|
if (isMultiple) {
|
|
326
|
-
// Multi-select logic: update only the clicked node
|
|
327
|
-
// newTreeData = updateTreeNode(dropDownData, id, (node) => {
|
|
328
|
-
// node.checked = checked;
|
|
329
|
-
|
|
330
|
-
// // Update the checked nodes array
|
|
331
|
-
// if (checked) {
|
|
332
|
-
// checkedNodes.push(node); // Add the entire node if checked
|
|
333
|
-
// } else {
|
|
334
|
-
// // Remove the node from the array if unchecked
|
|
335
|
-
// checkedNodes = checkedNodes.filter(
|
|
336
|
-
// (checkedNode) => checkedNode[descId] !== node[descId]
|
|
337
|
-
// );
|
|
338
|
-
// }
|
|
339
|
-
// });
|
|
340
|
-
|
|
341
|
-
// // Find all checked nodes in the newTreeData (in case you need all checked nodes at any point)
|
|
342
|
-
// checkedNodes = [];
|
|
343
|
-
// newTreeData.forEach((node) => {
|
|
344
|
-
// getCheckedNodes(node, checkedNodes); // Recursively collect checked nodes
|
|
345
|
-
// });
|
|
346
|
-
// setSelectedItems(checkedNodes);
|
|
347
|
-
// onChange(checkedNodes);
|
|
348
321
|
let selectedData = [...selectedItems];
|
|
349
322
|
if (checked) {
|
|
350
323
|
selectedData.push(dataItem);
|
|
@@ -438,17 +411,68 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
438
411
|
</div>
|
|
439
412
|
);
|
|
440
413
|
};
|
|
414
|
+
const [filteredData, setFilteredData] = useState([]);
|
|
415
|
+
const searchPortsFlat = (query: string) => {
|
|
416
|
+
const lowerQuery = query.toLowerCase();
|
|
417
|
+
const result: any[] = [];
|
|
418
|
+
|
|
419
|
+
const searchRecursive = (port: any) => {
|
|
420
|
+
if (port[desc].toLowerCase().includes(lowerQuery)) {
|
|
421
|
+
result.push({
|
|
422
|
+
[descId]: port[descId],
|
|
423
|
+
[desc]: port[desc],
|
|
424
|
+
parentId: port.parentId,
|
|
425
|
+
});
|
|
426
|
+
}
|
|
427
|
+
port.children?.forEach(searchRecursive);
|
|
428
|
+
};
|
|
429
|
+
|
|
430
|
+
dropDownData.forEach(searchRecursive);
|
|
431
|
+
result;
|
|
432
|
+
setFilteredData(result);
|
|
433
|
+
};
|
|
441
434
|
|
|
442
|
-
const
|
|
443
|
-
if (
|
|
444
|
-
(
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
435
|
+
const handleSuggestionClick = useCallback((suggestion: ValueProps) => {
|
|
436
|
+
if (isMultiple) {
|
|
437
|
+
setSelectedItems((prev) => {
|
|
438
|
+
const isAdded = prev.some(
|
|
439
|
+
(item) => item[descId] === suggestion[descId]
|
|
440
|
+
);
|
|
441
|
+
if (isAdded) {
|
|
442
|
+
return prev.filter((item) => item[descId] !== suggestion[descId]);
|
|
443
|
+
} else {
|
|
444
|
+
return [...prev, suggestion];
|
|
445
|
+
}
|
|
446
|
+
});
|
|
448
447
|
} else {
|
|
449
|
-
|
|
448
|
+
setInputValue(suggestion[desc]);
|
|
449
|
+
setSearchValue('');
|
|
450
|
+
onChange(suggestion);
|
|
451
|
+
setDropOpen(false);
|
|
452
|
+
}
|
|
453
|
+
}, []);
|
|
454
|
+
const handleMultiSelect = (e: any, suggestion: ValueProps) => {
|
|
455
|
+
const { checked } = e.target;
|
|
456
|
+
if (isMultiple) {
|
|
457
|
+
if (checked) {
|
|
458
|
+
setSelectedItems((prev) => [...prev, suggestion]);
|
|
459
|
+
} else {
|
|
460
|
+
setSelectedItems((prev) => {
|
|
461
|
+
return prev.filter(
|
|
462
|
+
(item, i) => item[descId] !== suggestion[descId]
|
|
463
|
+
);
|
|
464
|
+
});
|
|
465
|
+
}
|
|
466
|
+
} else {
|
|
467
|
+
if (checked) {
|
|
468
|
+
setInputValue(suggestion[desc]);
|
|
469
|
+
onChange(suggestion);
|
|
470
|
+
} else {
|
|
471
|
+
setInputValue('');
|
|
472
|
+
}
|
|
450
473
|
}
|
|
451
474
|
};
|
|
475
|
+
|
|
452
476
|
return (
|
|
453
477
|
<div className={fullWidth ? 'fullWidth' : 'autoWidth'} ref={dropdownRef}>
|
|
454
478
|
{label && (
|
|
@@ -537,7 +561,7 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
537
561
|
value={
|
|
538
562
|
type === 'auto_suggestion' && !expandable
|
|
539
563
|
? inputValue
|
|
540
|
-
:
|
|
564
|
+
: inputValue
|
|
541
565
|
}
|
|
542
566
|
onChange={handleChange}
|
|
543
567
|
// onBlur={handleBlur}
|
|
@@ -580,7 +604,7 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
580
604
|
style={{ ...dropdownStyle, minHeight: 192 }}
|
|
581
605
|
className={`qbs-autocomplete-suggestions `}
|
|
582
606
|
>
|
|
583
|
-
{
|
|
607
|
+
{isSeachable && (
|
|
584
608
|
<div
|
|
585
609
|
style={{ position: 'relative' }}
|
|
586
610
|
className="react-core-ts-search-container"
|
|
@@ -604,7 +628,22 @@ const AutoCompleteWithTreeStructure = forwardRef<
|
|
|
604
628
|
}}
|
|
605
629
|
className={`qbs-autocomplete-suggestions-sub padding-class `}
|
|
606
630
|
>
|
|
607
|
-
{
|
|
631
|
+
{searchValue ? (
|
|
632
|
+
filteredData.map((suggestion: ValueProps, idx: number) => (
|
|
633
|
+
<DropdownList
|
|
634
|
+
idx={idx}
|
|
635
|
+
suggestion={suggestion}
|
|
636
|
+
isSelected={isSelected}
|
|
637
|
+
handleSuggestionClick={handleSuggestionClick}
|
|
638
|
+
handleMultiSelect={handleMultiSelect}
|
|
639
|
+
selected={selected}
|
|
640
|
+
isMultiple={isMultiple}
|
|
641
|
+
singleSelect={singleSelect}
|
|
642
|
+
desc={desc}
|
|
643
|
+
key={suggestion[descId]}
|
|
644
|
+
/>
|
|
645
|
+
))
|
|
646
|
+
) : dropDownData?.length > 0 ? (
|
|
608
647
|
dropDownData.map((suggestion: any, idx: number) => (
|
|
609
648
|
<TreeNode
|
|
610
649
|
key={suggestion[descId]}
|
package/src/commontypes.ts
CHANGED
|
@@ -64,6 +64,7 @@ export interface AutoSuggestionInputProps {
|
|
|
64
64
|
selectedLabel?: string; // Able to change the "Item selected" label
|
|
65
65
|
viewMode?: boolean; // show only selected items
|
|
66
66
|
handleUpdateParent?: (val: boolean, level?: string) => void;
|
|
67
|
+
isSeachable?: boolean; // show search input
|
|
67
68
|
}
|
|
68
69
|
export interface IconsProps {
|
|
69
70
|
name: any;
|