@schukai/monster 3.80.3 → 3.80.5

Sign up to get free protection for your applications and to get access to all the features.
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.3"}
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 {string} lookup Load options from server per url
367
- * @property {boolean} lookup.url=null Load options from server per url
368
- * @property {boolean} lookup.individually=false Load options individually
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 {Boolean} filter.defaultValue=* Default filter value, if the filter is empty
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
- const lazyLoadFlag = self.getOption("features.lazyLoad");
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
- if (url instanceof URL) {
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
- }).run();
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.call(
851
- self,
852
- url,
853
- selection.map((s) => s?.["value"]),
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 (this.getOption("options").length === 0) {
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
- if (this.getOption("filter.mode") === FILTER_MODE_DISABLED) {
1280
- this.setOption(
1281
- "messages.emptyOptions",
1282
- this.getOption("labels.no-options-available"),
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 (this.getOption("filter.mode") !== FILTER_MODE_REMOTE) {
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 (!(this[inlineFilterElementSymbol] instanceof HTMLElement)) {
1551
+ if (
1552
+ !(this[inlineFilterElementSymbol] instanceof HTMLElement) &&
1553
+ !(this[popperFilterElementSymbol] instanceof HTMLElement)
1554
+ ) {
1527
1555
  return;
1528
1556
  }
1529
1557
 
1530
- const optionUrl = this.getOption("url");
1531
- if (!optionUrl) {
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
- return filterFromRemoteByValue.call(
1541
- this,
1542
- optionUrl,
1543
- this[inlineFilterElementSymbol].value,
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
- const filterValue = encodeURI(value);
1553
- let url = optionUrl;
1554
- if (filterValue.length > 0) {
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
- this.fetch(url)
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
- }).run();
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
- this.getOption("filter.mode") !== FILTER_MODE_REMOTE
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: getSelectionLabel.call(this, selection[i].value),
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 = new Formatter({ filter: this.getOption("filter.defaultValue") }).format(
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
  );