@schukai/monster 3.80.3 → 3.80.5
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 +17 -0
- package/package.json +1 -1
- package/source/components/form/select.mjs +210 -141
- package/source/components/form/style/select.pcss +3 -1
- package/source/components/form/stylesheet/select.mjs +1 -1
- package/source/types/version.mjs +1 -1
- package/test/cases/monster.mjs +1 -1
- package/test/web/test.html +2 -2
- package/test/web/tests.js +519 -594
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,23 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
+
## [3.80.5] - 2024-10-12
|
|
6
|
+
|
|
7
|
+
### Bug Fixes
|
|
8
|
+
|
|
9
|
+
- code optimisation and better error handling [#251](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/251)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## [3.80.4] - 2024-10-12
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
- defaultValue is now zero [#251](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/251)
|
|
18
|
+
- optimize slect remote filter function [#251](https://gitlab.schukai.com/oss/libraries/javascript/monster/issues/251)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
5
22
|
## [3.80.3] - 2024-10-11
|
|
6
23
|
|
|
7
24
|
### Bug Fixes
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"author":"schukai GmbH","dependencies":{"@floating-ui/dom":"^1.6.11","@popperjs/core":"^2.11.8"},"description":"Monster is a simple library for creating fast, robust and lightweight websites.","homepage":"https://monsterjs.org/","keywords":["framework","web","dom","css","sass","mobile-first","app","front-end","templates","schukai","core","shopcloud","alvine","monster","buildmap","stack","observer","observable","uuid","node","nodelist","css-in-js","logger","log","theme"],"license":"AGPL 3.0","main":"source/monster.mjs","module":"source/monster.mjs","name":"@schukai/monster","repository":{"type":"git","url":"https://gitlab.schukai.com/oss/libraries/javascript/monster.git"},"type":"module","version":"3.80.
|
|
1
|
+
{"author":"schukai GmbH","dependencies":{"@floating-ui/dom":"^1.6.11","@popperjs/core":"^2.11.8"},"description":"Monster is a simple library for creating fast, robust and lightweight websites.","homepage":"https://monsterjs.org/","keywords":["framework","web","dom","css","sass","mobile-first","app","front-end","templates","schukai","core","shopcloud","alvine","monster","buildmap","stack","observer","observable","uuid","node","nodelist","css-in-js","logger","log","theme"],"license":"AGPL 3.0","main":"source/monster.mjs","module":"source/monster.mjs","name":"@schukai/monster","repository":{"type":"git","url":"https://gitlab.schukai.com/oss/libraries/javascript/monster.git"},"type":"module","version":"3.80.5"}
|
|
@@ -229,6 +229,12 @@ const statusOrRemoveBadgesElementSymbol = Symbol("statusOrRemoveBadgesElement");
|
|
|
229
229
|
*/
|
|
230
230
|
const areOptionsAvailableAndInitSymbol = Symbol("@@areOptionsAvailableAndInit");
|
|
231
231
|
|
|
232
|
+
/**
|
|
233
|
+
* @private
|
|
234
|
+
* @type {symbol}
|
|
235
|
+
*/
|
|
236
|
+
const disabledRequestMarker = Symbol("@@disabledRequestMarker");
|
|
237
|
+
|
|
232
238
|
/**
|
|
233
239
|
* @private
|
|
234
240
|
* @type {number}
|
|
@@ -276,7 +282,10 @@ const FILTER_POSITION_INLINE = "inline";
|
|
|
276
282
|
*
|
|
277
283
|
* @example /examples/components/form/select-with-options Select with options
|
|
278
284
|
* @example /examples/components/form/select-multiple Multiple selection
|
|
285
|
+
* @example /examples/components/form/select-filter Filter
|
|
286
|
+
* @example /examples/components/form/select-fetch Fetch options
|
|
279
287
|
* @example /examples/components/form/select-lazy Lazy load
|
|
288
|
+
* @example /examples/components/form/select-remote-filter Remote filter
|
|
280
289
|
*
|
|
281
290
|
* @copyright schukai GmbH
|
|
282
291
|
* @summary A beautiful select control that can make your life easier and also looks good.
|
|
@@ -363,9 +372,9 @@ class Select extends CustomControl {
|
|
|
363
372
|
* @property {string} type=radio Multiple (checkbox) or single selection (radio)
|
|
364
373
|
* @property {string} name=(random id) Name of the form field
|
|
365
374
|
* @property {string} url Load options from server per url
|
|
366
|
-
* @property {
|
|
367
|
-
* @property {
|
|
368
|
-
* @property {boolean} lookup.
|
|
375
|
+
* @property {object} lookup Load options from server per url
|
|
376
|
+
* @property {string} lookup.url=null Load options from server per url
|
|
377
|
+
* @property {boolean} lookup.grouping=false Load all selected options from server per url at once (true) or one by one (false)
|
|
369
378
|
* @property {Object} fetch Fetch [see Using Fetch mozilla.org](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch)
|
|
370
379
|
* @property {String} fetch.redirect=error
|
|
371
380
|
* @property {String} fetch.method=GET
|
|
@@ -380,13 +389,13 @@ class Select extends CustomControl {
|
|
|
380
389
|
* @property {Object} features List with features
|
|
381
390
|
* @property {Boolean} features.clearAll=true Display of a delete button to delete the entire selection
|
|
382
391
|
* @property {Boolean} features.clear=true Display of a delete key for deleting the specific selection
|
|
383
|
-
* @property {Boolean} features.lazyLoad=false Load options when first opening the dropdown
|
|
392
|
+
* @property {Boolean} features.lazyLoad=false Load options when first opening the dropdown. (Hint; lazylLoad is not supported with remote filter)
|
|
384
393
|
* @property {Boolean} features.closeOnSelect=false Close the dropdown when an option is selected (since 3.54.0)
|
|
385
394
|
* @property {Boolean} features.emptyValueIfNoOptions=false If no options are available, the selection is set to an empty array
|
|
386
395
|
* @property {Boolean} features.storeFetchedData=false Store fetched data in the object
|
|
387
396
|
* @property {Boolean} features.useStrictValueComparison=true Use strict value comparison for the selection
|
|
388
|
-
* @property {
|
|
389
|
-
* @property {Boolean} filter.mode=options Filter mode, values: options, remote, disabled
|
|
397
|
+
* @property {string} filter.defaultValue=null Default filter value, if the filter is empty, if the default value is null, then no request is made
|
|
398
|
+
* @property {Boolean} filter.mode=options Filter mode, values: options, remote, disabled (Hint; lazylLoad is not supported with remote filter, if you use remote filter, the lazyLoad is disabled)
|
|
390
399
|
* @property {Object} templates Template definitions
|
|
391
400
|
* @property {string} templates.main Main template
|
|
392
401
|
* @property {string} templateMapping Mapping of the template placeholders
|
|
@@ -459,7 +468,7 @@ class Select extends CustomControl {
|
|
|
459
468
|
},
|
|
460
469
|
},
|
|
461
470
|
filter: {
|
|
462
|
-
defaultValue:
|
|
471
|
+
defaultValue: null,
|
|
463
472
|
mode: FILTER_MODE_DISABLED,
|
|
464
473
|
position: FILTER_POSITION_INLINE,
|
|
465
474
|
marker: {
|
|
@@ -507,7 +516,20 @@ class Select extends CustomControl {
|
|
|
507
516
|
initControlReferences.call(self);
|
|
508
517
|
initEventHandler.call(self);
|
|
509
518
|
|
|
510
|
-
|
|
519
|
+
let lazyLoadFlag = self.getOption("features.lazyLoad", false);
|
|
520
|
+
let remoteFilterFlag = getFilterMode.call(this) === FILTER_MODE_REMOTE;
|
|
521
|
+
|
|
522
|
+
if (getFilterMode.call(this) === FILTER_MODE_REMOTE) {
|
|
523
|
+
self.getOption("features.lazyLoad", false);
|
|
524
|
+
if (lazyLoadFlag === true) {
|
|
525
|
+
addAttributeToken(
|
|
526
|
+
this,
|
|
527
|
+
ATTRIBUTE_ERRORMESSAGE,
|
|
528
|
+
"lazyLoad is not supported with remote filter",
|
|
529
|
+
);
|
|
530
|
+
lazyLoadFlag = false;
|
|
531
|
+
}
|
|
532
|
+
}
|
|
511
533
|
|
|
512
534
|
if (self.hasAttribute("value")) {
|
|
513
535
|
new Processing(10, () => {
|
|
@@ -520,7 +542,7 @@ class Select extends CustomControl {
|
|
|
520
542
|
}
|
|
521
543
|
|
|
522
544
|
if (self.getOption("url") !== null) {
|
|
523
|
-
if (lazyLoadFlag) {
|
|
545
|
+
if (lazyLoadFlag || remoteFilterFlag) {
|
|
524
546
|
lookupSelection.call(self);
|
|
525
547
|
} else {
|
|
526
548
|
self.fetch().catch((e) => {
|
|
@@ -624,80 +646,7 @@ class Select extends CustomControl {
|
|
|
624
646
|
* @return {Promise}
|
|
625
647
|
*/
|
|
626
648
|
fetch(url) {
|
|
627
|
-
|
|
628
|
-
url = url.toString();
|
|
629
|
-
}
|
|
630
|
-
|
|
631
|
-
if (url !== undefined && url !== null) {
|
|
632
|
-
url = validateString(url);
|
|
633
|
-
} else {
|
|
634
|
-
url = this.getOption("url");
|
|
635
|
-
if (url === null) {
|
|
636
|
-
return Promise.reject(new Error("No url defined"));
|
|
637
|
-
}
|
|
638
|
-
}
|
|
639
|
-
|
|
640
|
-
hide.call(this);
|
|
641
|
-
|
|
642
|
-
return new Promise((resolve, reject) => {
|
|
643
|
-
setStatusOrRemoveBadges.call(this, "loading");
|
|
644
|
-
|
|
645
|
-
new Processing(10, () => {
|
|
646
|
-
this.setOption("options", []);
|
|
647
|
-
|
|
648
|
-
fetchData
|
|
649
|
-
.call(this, url)
|
|
650
|
-
.then((map) => {
|
|
651
|
-
if (
|
|
652
|
-
isObject(map) ||
|
|
653
|
-
isArray(map) ||
|
|
654
|
-
map instanceof Set ||
|
|
655
|
-
map instanceof Map
|
|
656
|
-
) {
|
|
657
|
-
try {
|
|
658
|
-
this.importOptions(map);
|
|
659
|
-
} catch (e) {
|
|
660
|
-
setStatusOrRemoveBadges.call(this, "error");
|
|
661
|
-
reject(e);
|
|
662
|
-
return;
|
|
663
|
-
}
|
|
664
|
-
|
|
665
|
-
this[lastFetchedDataSymbol] = map;
|
|
666
|
-
|
|
667
|
-
let result;
|
|
668
|
-
const selection = this.getOption("selection");
|
|
669
|
-
let newValue = [];
|
|
670
|
-
if (selection) {
|
|
671
|
-
newValue = selection;
|
|
672
|
-
} else if (this.hasAttribute("value")) {
|
|
673
|
-
newValue = this.getAttribute("value");
|
|
674
|
-
}
|
|
675
|
-
|
|
676
|
-
result = setSelection.call(this, newValue);
|
|
677
|
-
requestAnimationFrame(() => {
|
|
678
|
-
checkOptionState.call(this);
|
|
679
|
-
setStatusOrRemoveBadges.call(this, "closed");
|
|
680
|
-
resolve(result);
|
|
681
|
-
});
|
|
682
|
-
|
|
683
|
-
return;
|
|
684
|
-
}
|
|
685
|
-
|
|
686
|
-
setStatusOrRemoveBadges.call(this, "error");
|
|
687
|
-
reject(new Error("invalid response"));
|
|
688
|
-
})
|
|
689
|
-
.catch((e) => {
|
|
690
|
-
setStatusOrRemoveBadges.call(this, "error");
|
|
691
|
-
reject(e);
|
|
692
|
-
});
|
|
693
|
-
})
|
|
694
|
-
.run()
|
|
695
|
-
.catch((e) => {
|
|
696
|
-
setStatusOrRemoveBadges.call(this, "error");
|
|
697
|
-
addAttributeToken(this, ATTRIBUTE_ERRORMESSAGE, e.message);
|
|
698
|
-
reject(e);
|
|
699
|
-
});
|
|
700
|
-
});
|
|
649
|
+
return fetchIt.call(this, url);
|
|
701
650
|
}
|
|
702
651
|
|
|
703
652
|
/**
|
|
@@ -719,7 +668,11 @@ class Select extends CustomControl {
|
|
|
719
668
|
new Processing(() => {
|
|
720
669
|
gatherState.call(this);
|
|
721
670
|
focusFilter.call(this);
|
|
722
|
-
})
|
|
671
|
+
})
|
|
672
|
+
.run()
|
|
673
|
+
.catch((e) => {
|
|
674
|
+
addAttributeToken(this, ATTRIBUTE_ERRORMESSAGE, `${e}`);
|
|
675
|
+
});
|
|
723
676
|
}
|
|
724
677
|
|
|
725
678
|
/**
|
|
@@ -772,6 +725,7 @@ class Select extends CustomControl {
|
|
|
772
725
|
const map = buildMap(data, selector, labelTemplate, valueTemplate, filter);
|
|
773
726
|
|
|
774
727
|
const options = [];
|
|
728
|
+
|
|
775
729
|
if (!isIterable(map)) {
|
|
776
730
|
throw new Error("map is not iterable");
|
|
777
731
|
}
|
|
@@ -823,6 +777,9 @@ class Select extends CustomControl {
|
|
|
823
777
|
}
|
|
824
778
|
}
|
|
825
779
|
|
|
780
|
+
/**
|
|
781
|
+
* @private
|
|
782
|
+
*/
|
|
826
783
|
function lookupSelection() {
|
|
827
784
|
const self = this;
|
|
828
785
|
|
|
@@ -847,22 +804,102 @@ function lookupSelection() {
|
|
|
847
804
|
}
|
|
848
805
|
|
|
849
806
|
if (this.getOption("lookup.grouping") === true) {
|
|
850
|
-
filterFromRemoteByValue
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
807
|
+
filterFromRemoteByValue
|
|
808
|
+
.call(
|
|
809
|
+
self,
|
|
810
|
+
url,
|
|
811
|
+
selection.map((s) => s?.["value"]),
|
|
812
|
+
)
|
|
813
|
+
.catch((e) => {
|
|
814
|
+
addAttributeToken(self, ATTRIBUTE_ERRORMESSAGE, `${e}`);
|
|
815
|
+
});
|
|
855
816
|
return;
|
|
856
817
|
}
|
|
857
818
|
|
|
858
819
|
for (const s of selection) {
|
|
859
820
|
if (s?.["value"]) {
|
|
860
|
-
filterFromRemoteByValue.call(self, url, s?.["value"])
|
|
821
|
+
filterFromRemoteByValue.call(self, url, s?.["value"]).catch((e) => {
|
|
822
|
+
addAttributeToken(self, ATTRIBUTE_ERRORMESSAGE, `${e}`);
|
|
823
|
+
});
|
|
861
824
|
}
|
|
862
825
|
}
|
|
863
826
|
}, 100);
|
|
864
827
|
}
|
|
865
828
|
|
|
829
|
+
function fetchIt(url, controlOptions) {
|
|
830
|
+
if (url instanceof URL) {
|
|
831
|
+
url = url.toString();
|
|
832
|
+
}
|
|
833
|
+
|
|
834
|
+
if (url !== undefined && url !== null) {
|
|
835
|
+
url = validateString(url);
|
|
836
|
+
} else {
|
|
837
|
+
url = this.getOption("url");
|
|
838
|
+
if (url === null) {
|
|
839
|
+
return Promise.reject(new Error("No url defined"));
|
|
840
|
+
}
|
|
841
|
+
}
|
|
842
|
+
|
|
843
|
+
return new Promise((resolve, reject) => {
|
|
844
|
+
setStatusOrRemoveBadges.call(this, "loading");
|
|
845
|
+
|
|
846
|
+
new Processing(10, () => {
|
|
847
|
+
fetchData
|
|
848
|
+
.call(this, url)
|
|
849
|
+
.then((map) => {
|
|
850
|
+
if (
|
|
851
|
+
isObject(map) ||
|
|
852
|
+
isArray(map) ||
|
|
853
|
+
map instanceof Set ||
|
|
854
|
+
map instanceof Map
|
|
855
|
+
) {
|
|
856
|
+
try {
|
|
857
|
+
this.importOptions(map);
|
|
858
|
+
} catch (e) {
|
|
859
|
+
setStatusOrRemoveBadges.call(this, "error");
|
|
860
|
+
reject(e);
|
|
861
|
+
return;
|
|
862
|
+
}
|
|
863
|
+
|
|
864
|
+
this[lastFetchedDataSymbol] = map;
|
|
865
|
+
|
|
866
|
+
let result;
|
|
867
|
+
const selection = this.getOption("selection");
|
|
868
|
+
let newValue = [];
|
|
869
|
+
if (selection) {
|
|
870
|
+
newValue = selection;
|
|
871
|
+
} else if (this.hasAttribute("value")) {
|
|
872
|
+
newValue = this.getAttribute("value");
|
|
873
|
+
}
|
|
874
|
+
|
|
875
|
+
result = setSelection.call(this, newValue);
|
|
876
|
+
requestAnimationFrame(() => {
|
|
877
|
+
checkOptionState.call(this);
|
|
878
|
+
setStatusOrRemoveBadges.call(this, "closed");
|
|
879
|
+
updatePopper.call(this);
|
|
880
|
+
resolve(result);
|
|
881
|
+
});
|
|
882
|
+
|
|
883
|
+
return;
|
|
884
|
+
}
|
|
885
|
+
|
|
886
|
+
setStatusOrRemoveBadges.call(this, "error");
|
|
887
|
+
reject(new Error("invalid response"));
|
|
888
|
+
})
|
|
889
|
+
.catch((e) => {
|
|
890
|
+
setStatusOrRemoveBadges.call(this, "error");
|
|
891
|
+
reject(e);
|
|
892
|
+
});
|
|
893
|
+
})
|
|
894
|
+
.run()
|
|
895
|
+
.catch((e) => {
|
|
896
|
+
setStatusOrRemoveBadges.call(this, "error");
|
|
897
|
+
addAttributeToken(this, ATTRIBUTE_ERRORMESSAGE, e.message);
|
|
898
|
+
reject(e);
|
|
899
|
+
});
|
|
900
|
+
});
|
|
901
|
+
}
|
|
902
|
+
|
|
866
903
|
/**
|
|
867
904
|
* This attribute can be used to pass a URL to this select.
|
|
868
905
|
*
|
|
@@ -1270,23 +1307,16 @@ function calcAndSetOptionsDimension() {
|
|
|
1270
1307
|
}
|
|
1271
1308
|
|
|
1272
1309
|
if (visible === 0) {
|
|
1273
|
-
if (
|
|
1310
|
+
if (getFilterMode.call(this) === FILTER_MODE_DISABLED) {
|
|
1274
1311
|
this.setOption(
|
|
1275
1312
|
"messages.emptyOptions",
|
|
1276
1313
|
this.getOption("labels.no-options-available"),
|
|
1277
1314
|
);
|
|
1278
1315
|
} else {
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
);
|
|
1284
|
-
} else {
|
|
1285
|
-
this.setOption(
|
|
1286
|
-
"messages.emptyOptions",
|
|
1287
|
-
this.getOption("labels.no-options-found"),
|
|
1288
|
-
);
|
|
1289
|
-
}
|
|
1316
|
+
this.setOption(
|
|
1317
|
+
"messages.emptyOptions",
|
|
1318
|
+
this.getOption("labels.no-options-found"),
|
|
1319
|
+
);
|
|
1290
1320
|
}
|
|
1291
1321
|
this[noOptionsAvailableElementSymbol].classList.remove("d-none");
|
|
1292
1322
|
} else {
|
|
@@ -1481,11 +1511,6 @@ function handleFilterKeyboardEvents(event) {
|
|
|
1481
1511
|
}
|
|
1482
1512
|
}
|
|
1483
1513
|
|
|
1484
|
-
/**
|
|
1485
|
-
*
|
|
1486
|
-
|
|
1487
|
-
*/
|
|
1488
|
-
|
|
1489
1514
|
/**
|
|
1490
1515
|
* Method handleFilterKeyEvents is used to handle filter key events.
|
|
1491
1516
|
* Debounce is used to prevent multiple calls.
|
|
@@ -1507,7 +1532,7 @@ function handleFilterKeyEvents() {
|
|
|
1507
1532
|
}
|
|
1508
1533
|
|
|
1509
1534
|
this[keyFilterEventSymbol] = new DeadMansSwitch(200, () => {
|
|
1510
|
-
if (
|
|
1535
|
+
if (getFilterMode.call(this) !== FILTER_MODE_REMOTE) {
|
|
1511
1536
|
filterOptions.call(this);
|
|
1512
1537
|
} else {
|
|
1513
1538
|
filterFromRemote.call(this).catch((e) => {
|
|
@@ -1523,12 +1548,17 @@ function handleFilterKeyEvents() {
|
|
|
1523
1548
|
* @private
|
|
1524
1549
|
*/
|
|
1525
1550
|
function filterFromRemote() {
|
|
1526
|
-
if (
|
|
1551
|
+
if (
|
|
1552
|
+
!(this[inlineFilterElementSymbol] instanceof HTMLElement) &&
|
|
1553
|
+
!(this[popperFilterElementSymbol] instanceof HTMLElement)
|
|
1554
|
+
) {
|
|
1527
1555
|
return;
|
|
1528
1556
|
}
|
|
1529
1557
|
|
|
1530
|
-
|
|
1531
|
-
|
|
1558
|
+
show.call(this);
|
|
1559
|
+
|
|
1560
|
+
const url = this.getOption("url");
|
|
1561
|
+
if (!url) {
|
|
1532
1562
|
addAttributeToken(
|
|
1533
1563
|
this,
|
|
1534
1564
|
ATTRIBUTE_ERRORMESSAGE,
|
|
@@ -1537,47 +1567,79 @@ function filterFromRemote() {
|
|
|
1537
1567
|
return;
|
|
1538
1568
|
}
|
|
1539
1569
|
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1570
|
+
let filterValue;
|
|
1571
|
+
|
|
1572
|
+
switch (this.getOption("filter.position")) {
|
|
1573
|
+
case FILTER_POSITION_INLINE:
|
|
1574
|
+
if (this[inlineFilterElementSymbol] instanceof HTMLElement) {
|
|
1575
|
+
filterValue = this[inlineFilterElementSymbol].value.toLowerCase();
|
|
1576
|
+
}
|
|
1577
|
+
|
|
1578
|
+
break;
|
|
1579
|
+
case FILTER_POSITION_POPPER:
|
|
1580
|
+
default:
|
|
1581
|
+
if (this[popperFilterElementSymbol] instanceof HTMLInputElement) {
|
|
1582
|
+
filterValue = this[popperFilterElementSymbol].value.toLowerCase();
|
|
1583
|
+
}
|
|
1584
|
+
}
|
|
1585
|
+
|
|
1586
|
+
return filterFromRemoteByValue.call(this, url, filterValue);
|
|
1587
|
+
}
|
|
1588
|
+
|
|
1589
|
+
function formatURL(url, value) {
|
|
1590
|
+
if (value === undefined || value === null || value === "") {
|
|
1591
|
+
value = this.getOption("filter.defaultValue");
|
|
1592
|
+
if (value === undefined || value === null || value === "") {
|
|
1593
|
+
value = disabledRequestMarker.toString();
|
|
1594
|
+
}
|
|
1595
|
+
}
|
|
1596
|
+
|
|
1597
|
+
const formatter = new Formatter({ filter: encodeURI(value) });
|
|
1598
|
+
const openMarker = this.getOption("filter.marker.open");
|
|
1599
|
+
let closeMarker = this.getOption("filter.marker.close");
|
|
1600
|
+
if (!closeMarker) {
|
|
1601
|
+
closeMarker = openMarker;
|
|
1602
|
+
}
|
|
1603
|
+
|
|
1604
|
+
if (openMarker && closeMarker) {
|
|
1605
|
+
formatter.setMarker(openMarker, closeMarker);
|
|
1606
|
+
}
|
|
1607
|
+
|
|
1608
|
+
return formatter.format(url);
|
|
1545
1609
|
}
|
|
1546
1610
|
|
|
1547
1611
|
/**
|
|
1548
1612
|
* @private
|
|
1613
|
+
* @param optionUrl
|
|
1614
|
+
* @param value
|
|
1615
|
+
* @returns {Promise<unknown>}
|
|
1549
1616
|
*/
|
|
1550
1617
|
function filterFromRemoteByValue(optionUrl, value) {
|
|
1551
1618
|
return new Processing(() => {
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
const formatter = new Formatter({ filter: filterValue });
|
|
1556
|
-
const openMarker = this.getOption("filter.marker.open");
|
|
1557
|
-
let closeMarker = this.getOption("filter.marker.close");
|
|
1558
|
-
if (!closeMarker) {
|
|
1559
|
-
closeMarker = openMarker;
|
|
1560
|
-
}
|
|
1561
|
-
|
|
1562
|
-
if (openMarker && closeMarker) {
|
|
1563
|
-
formatter.setMarker(openMarker, closeMarker);
|
|
1564
|
-
}
|
|
1565
|
-
|
|
1566
|
-
url = formatter.format(optionUrl);
|
|
1619
|
+
let url = formatURL.call(this, optionUrl, value);
|
|
1620
|
+
if (url.indexOf(disabledRequestMarker.toString()) !== -1) {
|
|
1621
|
+
return;
|
|
1567
1622
|
}
|
|
1568
1623
|
|
|
1569
|
-
|
|
1624
|
+
fetchIt
|
|
1625
|
+
.call(this, url, {
|
|
1626
|
+
disableHiding: true,
|
|
1627
|
+
})
|
|
1570
1628
|
.then(() => {
|
|
1571
1629
|
checkOptionState.call(this);
|
|
1630
|
+
show.call(this);
|
|
1572
1631
|
})
|
|
1573
1632
|
.catch((e) => {
|
|
1574
1633
|
throw e;
|
|
1575
1634
|
});
|
|
1576
|
-
})
|
|
1635
|
+
})
|
|
1636
|
+
.run()
|
|
1637
|
+
.catch((e) => {
|
|
1638
|
+
throw e;
|
|
1639
|
+
});
|
|
1577
1640
|
}
|
|
1578
1641
|
|
|
1579
1642
|
/**
|
|
1580
|
-
*
|
|
1581
1643
|
* @param {Event} event
|
|
1582
1644
|
* @private
|
|
1583
1645
|
*/
|
|
@@ -1700,7 +1762,7 @@ function focusInlineFilter(focusOptions) {
|
|
|
1700
1762
|
const options = this.getOption("options");
|
|
1701
1763
|
if (
|
|
1702
1764
|
(!isArray(options) || options.length === 0) &&
|
|
1703
|
-
|
|
1765
|
+
getFilterMode.call(this) !== FILTER_MODE_REMOTE
|
|
1704
1766
|
) {
|
|
1705
1767
|
return;
|
|
1706
1768
|
}
|
|
@@ -1827,7 +1889,7 @@ function areOptionsAvailableAndInit() {
|
|
|
1827
1889
|
) {
|
|
1828
1890
|
setStatusOrRemoveBadges.call(this, "empty");
|
|
1829
1891
|
|
|
1830
|
-
hide.call(this);
|
|
1892
|
+
// hide.call(this);
|
|
1831
1893
|
|
|
1832
1894
|
let msg = this.getOption("labels.no-options-available");
|
|
1833
1895
|
|
|
@@ -2016,8 +2078,13 @@ function setSelection(selection) {
|
|
|
2016
2078
|
validateArray(selection);
|
|
2017
2079
|
|
|
2018
2080
|
for (let i = 0; i < selection.length; i++) {
|
|
2081
|
+
var l = getSelectionLabel.call(this, selection[i].value);
|
|
2082
|
+
if (l === selection[i].value) {
|
|
2083
|
+
l = selection[i].label;
|
|
2084
|
+
}
|
|
2085
|
+
|
|
2019
2086
|
selection[i] = {
|
|
2020
|
-
label:
|
|
2087
|
+
label: l,
|
|
2021
2088
|
value: selection[i].value,
|
|
2022
2089
|
};
|
|
2023
2090
|
}
|
|
@@ -2092,9 +2159,7 @@ function fetchData(url) {
|
|
|
2092
2159
|
delayWatch = true;
|
|
2093
2160
|
});
|
|
2094
2161
|
|
|
2095
|
-
url =
|
|
2096
|
-
url,
|
|
2097
|
-
);
|
|
2162
|
+
url = formatURL.call(this, url);
|
|
2098
2163
|
|
|
2099
2164
|
self[isLoadingSymbol] = true;
|
|
2100
2165
|
const global = getGlobal();
|
|
@@ -2176,8 +2241,12 @@ function show() {
|
|
|
2176
2241
|
return;
|
|
2177
2242
|
}
|
|
2178
2243
|
|
|
2244
|
+
const hasPopperFilterFlag =
|
|
2245
|
+
this.getOption("filter.position") === FILTER_POSITION_POPPER &&
|
|
2246
|
+
getFilterMode.call(this) !== FILTER_MODE_DISABLED;
|
|
2247
|
+
|
|
2179
2248
|
const options = getOptionElements.call(this);
|
|
2180
|
-
if (options.length === 0) {
|
|
2249
|
+
if (options.length === 0 && hasPopperFilterFlag === false) {
|
|
2181
2250
|
return;
|
|
2182
2251
|
}
|
|
2183
2252
|
|
|
@@ -262,7 +262,9 @@ div[data-monster-role=selection] {
|
|
|
262
262
|
}
|
|
263
263
|
|
|
264
264
|
[data-monster-role="no-options"] {
|
|
265
|
-
margin: 1.1em 0 0 1.1em;
|
|
265
|
+
margin: 1.1em 0 0 1.1em;
|
|
266
|
+
padding: 0.3em 0.8em;
|
|
267
|
+
border-radius: 0.2em;
|
|
266
268
|
color: var(--monster-color-warning-4);
|
|
267
269
|
background-color: var(--monster-bg-color-warning-4);
|
|
268
270
|
}
|
|
@@ -25,7 +25,7 @@ try {
|
|
|
25
25
|
SelectStyleSheet.insertRule(
|
|
26
26
|
`
|
|
27
27
|
@layer select {
|
|
28
|
-
.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.grid{display:grid}.inline-grid{display:inline-grid}.flex{display:flex}.inline-flex{display:inline-flex}.hidden,.hide,.none{display:none}.visible{visibility:visible}.invisible{visibility:hidden}.monster-border-primary-1,.monster-border-primary-2,.monster-border-primary-3,.monster-border-primary-4{border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width)}.monster-border-0{border-radius:0;border-style:none;border-width:0}.monster-border-primary-1{border-color:var(--monster-bg-color-primary-1)}.monster-border-primary-2{border-color:var(--monster-bg-color-primary-2)}.monster-border-primary-3{border-color:var(--monster-bg-color-primary-3)}.monster-border-primary-4{border-color:var(--monster-bg-color-primary-4)}.monster-border-secondary-1,.monster-border-secondary-2,.monster-border-secondary-3,.monster-border-secondary-4{border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width)}.monster-border-secondary-1{border-color:var(--monster-bg-color-secondary-1)}.monster-border-secondary-2{border-color:var(--monster-bg-color-secondary-2)}.monster-border-secondary-3{border-color:var(--monster-bg-color-secondary-3)}.monster-border-secondary-4{border-color:var(--monster-bg-color-secondary-4)}.monster-border-tertiary-1,.monster-border-tertiary-2,.monster-border-tertiary-3,.monster-border-tertiary-4{border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width)}.monster-border-tertiary-1{border-color:var(--monster-bg-color-tertiary-1)}.monster-border-tertiary-2{border-color:var(--monster-bg-color-tertiary-2)}.monster-border-tertiary-3{border-color:var(--monster-bg-color-tertiary-3)}.monster-border-tertiary-4{border-color:var(--monster-bg-color-tertiary-4)}[data-monster-role=control]{width:100%}[data-monster-role=control].flex{align-items:center;display:flex;flex-direction:row}:host{box-sizing:border-box;display:block}.monster-badge-primary{padding:.25em .4em}.monster-badge-primary,.monster-badge-primary-pill{background-color:var(--monster-bg-color-primary-4);border-radius:.25rem;color:var(--monster-color-primary-4);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-primary-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-secondary{padding:.25em .4em}.monster-badge-secondary,.monster-badge-secondary-pill{background-color:var(--monster-bg-color-secondary-3);border-radius:.25rem;color:var(--monster-color-secondary-3);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-secondary-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-tertiary{padding:.25em .4em}.monster-badge-tertiary,.monster-badge-tertiary-pill{background-color:var(--monster-bg-color-tertiary-3);border-radius:.25rem;color:var(--monster-color-tertiary-3);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-tertiary-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-destructive{padding:.25em .4em}.monster-badge-destructive,.monster-badge-destructive-pill{background-color:var(--monster-bg-color-destructive-1);border-radius:.25rem;color:var(--monster-color-destructive-1);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-destructive-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-success{padding:.25em .4em}.monster-badge-success,.monster-badge-success-pill{background-color:var(--monster-bg-color-success-1);border-radius:.25rem;color:var(--monster-color-success-1);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-success-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-warning{padding:.25em .4em}.monster-badge-warning,.monster-badge-warning-pill{background-color:var(--monster-bg-color-warning-1);border-radius:.25rem;color:var(--monster-color-warning-1);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-warning-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-error{padding:.25em .4em}.monster-badge-error,.monster-badge-error-pill{background-color:var(--monster-bg-color-error-1);border-radius:.25rem;color:var(--monster-color-error-1);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-error-pill{border-radius:10rem;padding:.25em .6em}div[data-monster-role=popper]{align-content:center;background:var(--monster-bg-color-primary-1);border-color:var(--monster-bg-color-primary-4);border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width);box-shadow:var(--monster-box-shadow-1);box-sizing:border-box;color:var(--monster-color-primary-1);display:none;justify-content:space-between;left:0;padding:1.1em;position:absolute;top:0;width:-moz-max-content;width:max-content;z-index:var(--monster-z-index-modal)}div[data-monster-role=popper] div[data-monster-role=arrow]{background:var(--monster-bg-color-primary-1);height:calc(max(var(--monster-popper-witharrrow-distance), -1 * var(--monster-popper-witharrrow-distance))*2);pointer-events:none;position:absolute;width:calc(max(var(--monster-popper-witharrrow-distance), -1 * var(--monster-popper-witharrrow-distance))*2);z-index:-1}[data-monster-role=container]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:4 0 90%;min-height:1.4em;overflow:auto;scrollbar-color:var(--monster-color-primary-1) var(--monster-color-primary-3);scrollbar-width:thin;width:100%}.d-none{display:none!important}div[data-monster-role=control]{display:flex;height:100%;position:relative}[data-monster-role=container].open{-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z'/%3E%3C/svg%3E\")}[data-monster-role=container].clear,[data-monster-role=container].open{background-color:var(--monster-bg-color-primary-2);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:.8em;mask-size:.8em}[data-monster-role=container].clear{-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\")}[data-monster-role=control]{accent-color:var(--monster-color-secondary-2);background-color:var(--monster-bg-color-primary-1);border-color:var(--monster-theme-control-border-color);-o-border-image:initial;border-image:initial;border-radius:var(--monster-theme-control-border-radius);border-style:var(--monster-theme-control-border-style);border-width:var(--monster-theme-control-border-width);box-sizing:border-box;color:var(--monster-color-primary-1);display:flex;font-family:inherit;font-size:100%;margin:0;outline:none;padding:.4rem .6rem;width:-webkit-fill-available;width:-moz-available;width:fill-available}@media (prefers-color-scheme:light){[data-monster-role=control]{background-color:var(--monster-bg-color-primary-1);border-color:var(--monster-bg-color-primary-3);color:var(--monster-color-primary-1)}[data-monster-role=control]:focus{outline:1px dashed var(--monster-color-selection-4);outline-offset:2px}}[data-monster-role=control]:hover{box-shadow:var(--monster-box-shadow-2);transition:background .8s,color .25s .0833333333s}div[data-monster-role=selection]{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:5px;justify-content:flex-start;margin:5px}[data-monster-role=option-control]{margin-right:8px}[data-monster-role=badge]{display:inline-flex}[data-monster-role=badge-label]{align-content:center;align-items:center;display:flex;flex-direction:row;gap:7px;justify-content:space-between}[data-monster-role=filter],[data-monster-role=popper-filter]{display:flex;flex-grow:200;order:99999999;visibility:hidden}[data-monster-role=filter].active{background-color:var(--monster-bg-color-primary-2);border:0;border-color:var(--monster-bg-color-primary-3);border-bottom:1px solid var(--monster-bg-color-primary-3);color:var(--monster-color-primary-2);min-width:40%;outline:none;visibility:visible}.active[data-monster-role=filter][name=popper-filter]{height:1.5em;margin:2.5em;padding:2px;width:calc(100% - var(--monster-border-width)*2)}.option-filter-control{align-items:center;background-color:var(--monster-bg-color-primary-2);display:flex;height:2.5em;margin:-1.1em -1.1em .3em}[data-monster-role=remove-badge]{background-color:var(--monster-bg-color-primary-2);height:16px;margin-left:5px;-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");order:2}[data-monster-role=remove-badge],[data-monster-role=status-or-remove-badges]{-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:.8em;mask-size:.8em;min-height:16px;width:16px}[data-monster-role=status-or-remove-badges]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\")}.open[data-monster-role=status-or-remove-badges]{background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z'/%3E%3C/svg%3E\")}.empty[data-monster-role=status-or-remove-badges]{background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-dash-circle'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-dash-circle'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8'/%3E%3C/svg%3E\")}.clear[data-monster-role=status-or-remove-badges]{background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\")}.error[data-monster-role=status-or-remove-badges]{background-color:var(--monster-bg-color-error-1);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z'/%3E%3C/svg%3E\")}.loading[data-monster-role=status-or-remove-badges]{animation-duration:1s;animation-iteration-count:infinite;animation-name:activity;animation-timing-function:cubic-bezier(0,0,.2,1);background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='activity'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='activity'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3C/svg%3E\")}@keyframes activity{0%{transform:scale(1)}50%{transform:scale(.1)}to{transform:scale(1)}}[data-monster-role=options]{box-sizing:border-box;display:flex;flex-direction:column;flex-grow:1;scrollbar-color:var(--monster-color-primary-1) var(--monster-color-primary-3);scrollbar-width:thin}[data-monster-role=option]{align-items:center;box-sizing:border-box;display:flex;padding:6px 5px}[data-monster-role=option] label{align-items:center;display:flex;flex-direction:row;justify-content:flex-start;width:100%}[data-monster-role=option] label>div{align-items:center;display:flex;flex-direction:row;justify-content:space-between;outline:none;width:100%}[data-monster-role=no-options]{background-color:var(--monster-bg-color-warning-4);color:var(--monster-color-warning-4);margin:1.1em 0 0 1.1em}.selected{background-color:var(--monster-bg-color-primary-2);color:var(--monster-color-primary-2)}[data-monster-role=option][data-monster-filtered=true],[data-monster-role=option][data-monster-visibility=hidden]{display:none}[data-monster-role=option][data-monster-focused=true]{outline:1px dashed var(--monster-color-selection-2);outline-offset:-2px}[data-monster-role=option]>input:focus,[data-monster-role=option]>label:focus{outline:none}
|
|
28
|
+
.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.grid{display:grid}.inline-grid{display:inline-grid}.flex{display:flex}.inline-flex{display:inline-flex}.hidden,.hide,.none{display:none}.visible{visibility:visible}.invisible{visibility:hidden}.monster-border-primary-1,.monster-border-primary-2,.monster-border-primary-3,.monster-border-primary-4{border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width)}.monster-border-0{border-radius:0;border-style:none;border-width:0}.monster-border-primary-1{border-color:var(--monster-bg-color-primary-1)}.monster-border-primary-2{border-color:var(--monster-bg-color-primary-2)}.monster-border-primary-3{border-color:var(--monster-bg-color-primary-3)}.monster-border-primary-4{border-color:var(--monster-bg-color-primary-4)}.monster-border-secondary-1,.monster-border-secondary-2,.monster-border-secondary-3,.monster-border-secondary-4{border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width)}.monster-border-secondary-1{border-color:var(--monster-bg-color-secondary-1)}.monster-border-secondary-2{border-color:var(--monster-bg-color-secondary-2)}.monster-border-secondary-3{border-color:var(--monster-bg-color-secondary-3)}.monster-border-secondary-4{border-color:var(--monster-bg-color-secondary-4)}.monster-border-tertiary-1,.monster-border-tertiary-2,.monster-border-tertiary-3,.monster-border-tertiary-4{border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width)}.monster-border-tertiary-1{border-color:var(--monster-bg-color-tertiary-1)}.monster-border-tertiary-2{border-color:var(--monster-bg-color-tertiary-2)}.monster-border-tertiary-3{border-color:var(--monster-bg-color-tertiary-3)}.monster-border-tertiary-4{border-color:var(--monster-bg-color-tertiary-4)}[data-monster-role=control]{width:100%}[data-monster-role=control].flex{align-items:center;display:flex;flex-direction:row}:host{box-sizing:border-box;display:block}.monster-badge-primary{padding:.25em .4em}.monster-badge-primary,.monster-badge-primary-pill{background-color:var(--monster-bg-color-primary-4);border-radius:.25rem;color:var(--monster-color-primary-4);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-primary-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-secondary{padding:.25em .4em}.monster-badge-secondary,.monster-badge-secondary-pill{background-color:var(--monster-bg-color-secondary-3);border-radius:.25rem;color:var(--monster-color-secondary-3);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-secondary-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-tertiary{padding:.25em .4em}.monster-badge-tertiary,.monster-badge-tertiary-pill{background-color:var(--monster-bg-color-tertiary-3);border-radius:.25rem;color:var(--monster-color-tertiary-3);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-tertiary-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-destructive{padding:.25em .4em}.monster-badge-destructive,.monster-badge-destructive-pill{background-color:var(--monster-bg-color-destructive-1);border-radius:.25rem;color:var(--monster-color-destructive-1);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-destructive-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-success{padding:.25em .4em}.monster-badge-success,.monster-badge-success-pill{background-color:var(--monster-bg-color-success-1);border-radius:.25rem;color:var(--monster-color-success-1);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-success-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-warning{padding:.25em .4em}.monster-badge-warning,.monster-badge-warning-pill{background-color:var(--monster-bg-color-warning-1);border-radius:.25rem;color:var(--monster-color-warning-1);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-warning-pill{border-radius:10rem;padding:.25em .6em}.monster-badge-error{padding:.25em .4em}.monster-badge-error,.monster-badge-error-pill{background-color:var(--monster-bg-color-error-1);border-radius:.25rem;color:var(--monster-color-error-1);display:inline-block;font-size:75%;font-weight:700;line-height:1;text-align:center;text-decoration:none;vertical-align:baseline;white-space:nowrap}.monster-badge-error-pill{border-radius:10rem;padding:.25em .6em}div[data-monster-role=popper]{align-content:center;background:var(--monster-bg-color-primary-1);border-color:var(--monster-bg-color-primary-4);border-radius:var(--monster-border-radius);border-style:var(--monster-border-style);border-width:var(--monster-border-width);box-shadow:var(--monster-box-shadow-1);box-sizing:border-box;color:var(--monster-color-primary-1);display:none;justify-content:space-between;left:0;padding:1.1em;position:absolute;top:0;width:-moz-max-content;width:max-content;z-index:var(--monster-z-index-modal)}div[data-monster-role=popper] div[data-monster-role=arrow]{background:var(--monster-bg-color-primary-1);height:calc(max(var(--monster-popper-witharrrow-distance), -1 * var(--monster-popper-witharrrow-distance))*2);pointer-events:none;position:absolute;width:calc(max(var(--monster-popper-witharrrow-distance), -1 * var(--monster-popper-witharrrow-distance))*2);z-index:-1}[data-monster-role=container]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:4 0 90%;min-height:1.4em;overflow:auto;scrollbar-color:var(--monster-color-primary-1) var(--monster-color-primary-3);scrollbar-width:thin;width:100%}.d-none{display:none!important}div[data-monster-role=control]{display:flex;height:100%;position:relative}[data-monster-role=container].open{-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z'/%3E%3C/svg%3E\")}[data-monster-role=container].clear,[data-monster-role=container].open{background-color:var(--monster-bg-color-primary-2);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:.8em;mask-size:.8em}[data-monster-role=container].clear{-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\")}[data-monster-role=control]{accent-color:var(--monster-color-secondary-2);background-color:var(--monster-bg-color-primary-1);border-color:var(--monster-theme-control-border-color);-o-border-image:initial;border-image:initial;border-radius:var(--monster-theme-control-border-radius);border-style:var(--monster-theme-control-border-style);border-width:var(--monster-theme-control-border-width);box-sizing:border-box;color:var(--monster-color-primary-1);display:flex;font-family:inherit;font-size:100%;margin:0;outline:none;padding:.4rem .6rem;width:-webkit-fill-available;width:-moz-available;width:fill-available}@media (prefers-color-scheme:light){[data-monster-role=control]{background-color:var(--monster-bg-color-primary-1);border-color:var(--monster-bg-color-primary-3);color:var(--monster-color-primary-1)}[data-monster-role=control]:focus{outline:1px dashed var(--monster-color-selection-4);outline-offset:2px}}[data-monster-role=control]:hover{box-shadow:var(--monster-box-shadow-2);transition:background .8s,color .25s .0833333333s}div[data-monster-role=selection]{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:5px;justify-content:flex-start;margin:5px}[data-monster-role=option-control]{margin-right:8px}[data-monster-role=badge]{display:inline-flex}[data-monster-role=badge-label]{align-content:center;align-items:center;display:flex;flex-direction:row;gap:7px;justify-content:space-between}[data-monster-role=filter],[data-monster-role=popper-filter]{display:flex;flex-grow:200;order:99999999;visibility:hidden}[data-monster-role=filter].active{background-color:var(--monster-bg-color-primary-2);border:0;border-color:var(--monster-bg-color-primary-3);border-bottom:1px solid var(--monster-bg-color-primary-3);color:var(--monster-color-primary-2);min-width:40%;outline:none;visibility:visible}.active[data-monster-role=filter][name=popper-filter]{height:1.5em;margin:2.5em;padding:2px;width:calc(100% - var(--monster-border-width)*2)}.option-filter-control{align-items:center;background-color:var(--monster-bg-color-primary-2);display:flex;height:2.5em;margin:-1.1em -1.1em .3em}[data-monster-role=remove-badge]{background-color:var(--monster-bg-color-primary-2);height:16px;margin-left:5px;-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");order:2}[data-monster-role=remove-badge],[data-monster-role=status-or-remove-badges]{-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:.8em;mask-size:.8em;min-height:16px;width:16px}[data-monster-role=status-or-remove-badges]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\")}.open[data-monster-role=status-or-remove-badges]{background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708z'/%3E%3C/svg%3E\")}.empty[data-monster-role=status-or-remove-badges]{background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-dash-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-dash-circle' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8'/%3E%3C/svg%3E\")}.clear[data-monster-role=status-or-remove-badges]{background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E\")}.error[data-monster-role=status-or-remove-badges]{background-color:var(--monster-bg-color-error-1);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z'/%3E%3C/svg%3E\")}.loading[data-monster-role=status-or-remove-badges]{animation-duration:1s;animation-iteration-count:infinite;animation-name:activity;animation-timing-function:cubic-bezier(0,0,.2,1);background-color:var(--monster-bg-color-primary-4);-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='activity' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='activity' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3C/svg%3E\")}@keyframes activity{0%{transform:scale(1)}50%{transform:scale(.1)}to{transform:scale(1)}}[data-monster-role=options]{box-sizing:border-box;display:flex;flex-direction:column;flex-grow:1;scrollbar-color:var(--monster-color-primary-1) var(--monster-color-primary-3);scrollbar-width:thin}[data-monster-role=option]{align-items:center;box-sizing:border-box;display:flex;padding:6px 5px}[data-monster-role=option] label{align-items:center;display:flex;flex-direction:row;justify-content:flex-start;width:100%}[data-monster-role=option] label>div{align-items:center;display:flex;flex-direction:row;justify-content:space-between;outline:none;width:100%}[data-monster-role=no-options]{background-color:var(--monster-bg-color-warning-4);color:var(--monster-color-warning-4);margin:1.1em 0 0 1.1em}.selected{background-color:var(--monster-bg-color-primary-2);color:var(--monster-color-primary-2)}[data-monster-role=option][data-monster-filtered=true],[data-monster-role=option][data-monster-visibility=hidden]{display:none}[data-monster-role=option][data-monster-focused=true]{outline:1px dashed var(--monster-color-selection-2);outline-offset:-2px}[data-monster-role=option]>input:focus,[data-monster-role=option]>label:focus{outline:none}
|
|
29
29
|
}`,
|
|
30
30
|
0,
|
|
31
31
|
);
|