@antimatter-audio/antimatter-ui 16.0.0 → 16.1.0

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/dist/index.js CHANGED
@@ -34,7 +34,7 @@ function styleInject(css, ref) {
34
34
  }
35
35
  }
36
36
 
37
- var css_248z$j = "@theme static {\n /* Default theme colors */\n --color-brand: #bb68d9;\n --color-brand-900: #1b181c;\n /* --color-brand-900: #443342; */\n --color-brand-700: #932eb8;\n --color-brand-600: #ac47d1;\n --color-brand-400: #d199e6;\n --color-brand-300: #f3d4f4;\n --color-brand-secondary: #18d6d6;\n --color-alert: #8a0101;\n --color-text: #bab6cf;\n --color-gray-100: #c7c3de;\n --color-gray-200: #9a96ab;\n --color-gray-300: #838091;\n --color-gray-400: #595763;\n --color-gray-500: #4c4a54;\n --color-gray-600: #2e2c33;\n --color-gray-700: #1e1d21;\n --color-gray-800: #101012;\n --color-gray-900: #09090a;\n\n /* Main section theme colors */\n --color-GreenScreen-100: #1b4b3d;\n --color-GreenScreen-200: #29705b;\n --color-GreenScreen-300: #369679;\n --color-GreenScreen-400: #44bb97;\n --color-GreenScreen-500: #61c6a7;\n --color-GreenScreen-600: #7cd0b7;\n --color-GreenScreen-700: #a1ddcb;\n --color-GreenScreen-1000: #c7ebe0;\n\n --color-AmberScreen-100: #371815;\n --color-AmberScreen-200: #5c2824;\n --color-AmberScreen-300: #813932;\n --color-AmberScreen-400: #a54940;\n --color-AmberScreen-500: #bd5e56;\n --color-AmberScreen-600: #c6746c;\n --color-AmberScreen-700: #d49691;\n --color-AmberScreen-1000: #e2b9b6;\n\n --color-BlackScreen-100: #000000;\n --color-BlackScreen-200: #0b0b0f;\n --color-BlackScreen-300: #16161d;\n --color-BlackScreen-400: #21212c;\n --color-BlackScreen-500: #2c2c3a;\n --color-BlackScreen-600: #373749;\n --color-BlackScreen-700: #424257;\n --color-BlackScreen-1000: #4d4d66;\n\n --color-GreenAccent-100: #082b20;\n --color-GreenAccent-200: #105640;\n --color-GreenAccent-300: #188160;\n --color-GreenAccent-400: #21ab7f;\n --color-GreenAccent-500: #27ca96;\n --color-GreenAccent-600: #3edaa9;\n --color-GreenAccent-700: #69e2bc;\n --color-GreenAccent-1000: #94ebcf;\n\n --color-YellowAccent-100: #ad6a05;\n --color-YellowAccent-200: #df8807;\n --color-YellowAccent-300: #f8a220;\n --color-YellowAccent-400: #fab752;\n --color-YellowAccent-500: #faba58;\n --color-YellowAccent-600: #fac16b;\n --color-YellowAccent-700: #fbcb83;\n --color-YellowAccent-1000: #fcd69c;\n\n --color-RedAccent-100: #260d10;\n --color-RedAccent-200: #391318;\n --color-RedAccent-300: #4d191f;\n --color-RedAccent-400: #602027;\n --color-RedAccent-500: #73262f;\n --color-RedAccent-600: #862d37;\n --color-RedAccent-700: #99333f;\n --color-RedAccent-1000: #bf404f;\n\n --spacing-none: 0px;\n --spacing-xs: 2px;\n --spacing-sm: 4px;\n --spacing-ms: 6px;\n --spacing-md: 8px;\n --spacing-ml: 12px;\n --spacing-lg: 16px;\n --spacing-xl: 20px;\n --m-none: 0px;\n --m-xs: 2px;\n --m-sm: 4px;\n --m-ms: 6px;\n --m-md: 8px;\n --m-ml: 12px;\n --m-lg: 16px;\n --m-xl: 20px;\n --mt-none: 0px;\n --mt-xs: 2px;\n --mt-sm: 4px;\n --mt-ms: 6px;\n --mt-md: 8px;\n --mt-ml: 12px;\n --mt-lg: 16px;\n --mt-xl: 20px;\n --mr-none: 0px;\n --mr-xs: 2px;\n --mr-sm: 4px;\n --mr-ms: 6px;\n --mr-md: 8px;\n --mr-ml: 12px;\n --mr-lg: 16px;\n --mr-xl: 20px;\n --mb-none: 0px;\n --mb-xs: 2px;\n --mb-sm: 4px;\n --mb-ms: 6px;\n --mb-md: 8px;\n --mb-ml: 12px;\n --mb-lg: 16px;\n --mb-xl: 20px;\n --ml-none: 0px;\n --ml-xs: 2px;\n --ml-sm: 4px;\n --ml-ms: 6px;\n --ml-md: 8px;\n --ml-ml: 12px;\n --ml-lg: 16px;\n --ml-xl: 20px;\n --p-none: 0px;\n --p-xs: 2px;\n --p-sm: 4px;\n --p-ms: 6px;\n --p-md: 8px;\n --p-ml: 12px;\n --p-lg: 16px;\n --p-xl: 20px;\n --pt-none: 0px;\n --pt-xs: 2px;\n --pt-sm: 4px;\n --pt-ms: 6px;\n --pt-md: 8px;\n --pt-ml: 12px;\n --pt-lg: 16px;\n --pt-xl: 20px;\n --pr-none: 0px;\n --pr-xs: 2px;\n --pr-sm: 4px;\n --pr-ms: 6px;\n --pr-md: 8px;\n --pr-ml: 12px;\n --pr-lg: 16px;\n --pr-xl: 20px;\n --pb-none: 0px;\n --pb-xs: 2px;\n --pb-sm: 4px;\n --pb-ms: 6px;\n --pb-md: 8px;\n --pb-ml: 12px;\n --pb-lg: 16px;\n --pb-xl: 20px;\n --pl-none: 0px;\n --pl-xs: 2px;\n --pl-sm: 4px;\n --pl-ms: 6px;\n --pl-md: 8px;\n --pl-ml: 12px;\n --pl-lg: 16px;\n --pl-xl: 20px;\n --bg-lv1: #0e0e12;\n --bg-lv2: #121216;\n --bg-lv3: #16171d;\n --bg-lv4: #212128;\n --bg-lv5: #2b2b31;\n --bg-lv6: #3b3b44;\n --bg-lv7: #4c4a54;\n --bg-lv8: #595763;\n --bg-lv9: #838091;\n --bg-lv10: #9a96ab;\n --bg-lv11: #9999a7;\n --bg-lv12: #c1c1c1;\n --bg-selected: #2e2c33;\n\n /* --bg-lv3-brightened: #1a1b21; */\n\n --font-leagueSpartan: 'LeagueSpartan';\n --text-xs: 0.625rem;\n --text-sm: 0.7rem;\n --text-ms: 0.813rem;\n --text-md: 0.875rem;\n --text-lg: 1rem;\n --text-xl: 1.25rem;\n --text-title: 1.75rem;\n --gap-none: 0px;\n --gap-xs: 2px;\n --gap-sm: 4px;\n --gap-ms: 6px;\n --gap-md: 8px;\n --gap-ml: 12px;\n --gap-lg: 16px;\n --gap-xl: 20px;\n}\n\ninput,\ninput:hover,\ninput:focus,\ninput:focus-visible {\n background: transparent;\n border: none;\n outline: none;\n appearance: textfield;\n}\n\nbutton,\nbutton:hover,\nbutton:focus,\nbutton:focus-visible {\n outline: none;\n}\n\nbutton:disabled,\ninput:disabled {\n cursor: default;\n}\n\ndiv:focus,\ndiv:focus-visible {\n outline: none;\n appearance: textfield;\n}\n\n/* .cursor-hidden * {\n cursor: none !important;\n} */\n::-webkit-scrollbar,\n::-webkit-scrollbar-track {\n background-color: var(--bg-lv4);\n scrollbar-width: 3px;\n}\n\n::-webkit-scrollbar-thumb {\n background-color: var(--bg-lv7);\n border-radius: 6px;\n width: 3px;\n}\n\n* {\n -ms-overflow-style: none;\n}\n\n/* div::-webkit-scrollbar {\n display: none;\n} */\n\n@font-face {\n font-family: LeagueSpartan;\n /* ascent-override: 70%; */\n src: url('./common/assets/fonts/LeagueSpartan-Regular.ttf');\n}\n\n@font-face {\n font-family: LeagueSpartan;\n /* ascent-override: 70%; */\n src: url('./common/assets/fonts/LeagueSpartan-Thin.ttf');\n font-weight: lighter;\n}\n";
37
+ var css_248z$j = "@theme static {\n /* Default theme colors */\n --color-brand: #bb68d9;\n --color-brand-900: #1b181c;\n /* --color-brand-900: #443342; */\n --color-brand-700: #932eb8;\n --color-brand-600: #ac47d1;\n --color-brand-400: #d199e6;\n --color-brand-300: #f3d4f4;\n --color-brand-secondary: #18d6d6;\n --color-alert: #8a0101;\n --color-text: #bab6cf;\n --color-gray-100: #c7c3de;\n --color-gray-200: #9a96ab;\n --color-gray-300: #838091;\n --color-gray-400: #595763;\n --color-gray-500: #4c4a54;\n --color-gray-600: #2e2c33;\n --color-gray-700: #1e1d21;\n --color-gray-800: #101012;\n --color-gray-900: #09090a;\n\n /* Main section theme colors */\n --color-GreenScreen-100: #1b4b3d;\n --color-GreenScreen-200: #29705b;\n --color-GreenScreen-300: #369679;\n --color-GreenScreen-400: #44bb97;\n --color-GreenScreen-500: #61c6a7;\n --color-GreenScreen-600: #7cd0b7;\n --color-GreenScreen-700: #a1ddcb;\n --color-GreenScreen-1000: #c7ebe0;\n\n --color-AmberScreen-100: #371815;\n --color-AmberScreen-200: #5c2824;\n --color-AmberScreen-300: #813932;\n --color-AmberScreen-400: #a54940;\n --color-AmberScreen-500: #bd5e56;\n --color-AmberScreen-600: #c6746c;\n --color-AmberScreen-700: #d49691;\n --color-AmberScreen-1000: #e2b9b6;\n\n --color-BlackScreen-100: #000000;\n --color-BlackScreen-200: #0b0b0f;\n --color-BlackScreen-300: #16161d;\n --color-BlackScreen-400: #21212c;\n --color-BlackScreen-500: #2c2c3a;\n --color-BlackScreen-600: #373749;\n --color-BlackScreen-700: #424257;\n --color-BlackScreen-1000: #4d4d66;\n\n --color-GreenAccent-100: #082b20;\n --color-GreenAccent-200: #105640;\n --color-GreenAccent-300: #188160;\n --color-GreenAccent-400: #21ab7f;\n --color-GreenAccent-500: #27ca96;\n --color-GreenAccent-600: #3edaa9;\n --color-GreenAccent-700: #69e2bc;\n --color-GreenAccent-1000: #94ebcf;\n\n --color-YellowAccent-100: #ad6a05;\n --color-YellowAccent-200: #df8807;\n --color-YellowAccent-300: #f8a220;\n --color-YellowAccent-400: #fab752;\n --color-YellowAccent-500: #faba58;\n --color-YellowAccent-600: #fac16b;\n --color-YellowAccent-700: #fbcb83;\n --color-YellowAccent-1000: #fcd69c;\n\n --color-RedAccent-100: #260d10;\n --color-RedAccent-200: #391318;\n --color-RedAccent-300: #4d191f;\n --color-RedAccent-400: #602027;\n --color-RedAccent-500: #73262f;\n --color-RedAccent-600: #862d37;\n --color-RedAccent-700: #99333f;\n --color-RedAccent-1000: #bf404f;\n\n --spacing-none: 0px;\n --spacing-xs: 2px;\n --spacing-sm: 4px;\n --spacing-ms: 6px;\n --spacing-md: 8px;\n --spacing-ml: 12px;\n --spacing-lg: 16px;\n --spacing-xl: 20px;\n --m-none: 0px;\n --m-xs: 2px;\n --m-sm: 4px;\n --m-ms: 6px;\n --m-md: 8px;\n --m-ml: 12px;\n --m-lg: 16px;\n --m-xl: 20px;\n --mt-none: 0px;\n --mt-xs: 2px;\n --mt-sm: 4px;\n --mt-ms: 6px;\n --mt-md: 8px;\n --mt-ml: 12px;\n --mt-lg: 16px;\n --mt-xl: 20px;\n --mr-none: 0px;\n --mr-xs: 2px;\n --mr-sm: 4px;\n --mr-ms: 6px;\n --mr-md: 8px;\n --mr-ml: 12px;\n --mr-lg: 16px;\n --mr-xl: 20px;\n --mb-none: 0px;\n --mb-xs: 2px;\n --mb-sm: 4px;\n --mb-ms: 6px;\n --mb-md: 8px;\n --mb-ml: 12px;\n --mb-lg: 16px;\n --mb-xl: 20px;\n --ml-none: 0px;\n --ml-xs: 2px;\n --ml-sm: 4px;\n --ml-ms: 6px;\n --ml-md: 8px;\n --ml-ml: 12px;\n --ml-lg: 16px;\n --ml-xl: 20px;\n --p-none: 0px;\n --p-xs: 2px;\n --p-sm: 4px;\n --p-ms: 6px;\n --p-md: 8px;\n --p-ml: 12px;\n --p-lg: 16px;\n --p-xl: 20px;\n --pt-none: 0px;\n --pt-xs: 2px;\n --pt-sm: 4px;\n --pt-ms: 6px;\n --pt-md: 8px;\n --pt-ml: 12px;\n --pt-lg: 16px;\n --pt-xl: 20px;\n --pr-none: 0px;\n --pr-xs: 2px;\n --pr-sm: 4px;\n --pr-ms: 6px;\n --pr-md: 8px;\n --pr-ml: 12px;\n --pr-lg: 16px;\n --pr-xl: 20px;\n --pb-none: 0px;\n --pb-xs: 2px;\n --pb-sm: 4px;\n --pb-ms: 6px;\n --pb-md: 8px;\n --pb-ml: 12px;\n --pb-lg: 16px;\n --pb-xl: 20px;\n --pl-none: 0px;\n --pl-xs: 2px;\n --pl-sm: 4px;\n --pl-ms: 6px;\n --pl-md: 8px;\n --pl-ml: 12px;\n --pl-lg: 16px;\n --pl-xl: 20px;\n --bg-lv1: #0e0e12;\n --bg-lv2: #121216;\n --bg-lv3: #16171d;\n --bg-lv4: #212128;\n --bg-lv5: #2b2b31;\n --bg-lv6: #3b3b44;\n --bg-lv7: #4c4a54;\n --bg-lv8: #595763;\n --bg-lv9: #838091;\n --bg-lv10: #9a96ab;\n --bg-lv11: #9999a7;\n --bg-lv12: #c1c1c1;\n --bg-selected: #2e2c33;\n\n /* --bg-lv3-brightened: #1a1b21; */\n\n --font-leagueSpartan: 'LeagueSpartan';\n --text-xxs: 0.5rem;\n --text-xs: 0.625rem;\n --text-sm: 0.7rem;\n --text-ms: 0.813rem;\n --text-md: 0.875rem;\n --text-lg: 1rem;\n --text-xl: 1.25rem;\n --text-title: 1.75rem;\n --gap-none: 0px;\n --gap-xs: 2px;\n --gap-sm: 4px;\n --gap-ms: 6px;\n --gap-md: 8px;\n --gap-ml: 12px;\n --gap-lg: 16px;\n --gap-xl: 20px;\n}\n\ninput,\ninput:hover,\ninput:focus,\ninput:focus-visible {\n background: transparent;\n border: none;\n outline: none;\n appearance: textfield;\n}\n\nbutton,\nbutton:hover,\nbutton:focus,\nbutton:focus-visible {\n outline: none;\n}\n\nbutton:disabled,\ninput:disabled {\n cursor: default;\n}\n\ndiv:focus,\ndiv:focus-visible {\n outline: none;\n appearance: textfield;\n}\n\n/* .cursor-hidden * {\n cursor: none !important;\n} */\n::-webkit-scrollbar,\n::-webkit-scrollbar-track {\n background-color: var(--bg-lv4);\n scrollbar-width: 3px;\n}\n\n::-webkit-scrollbar-thumb {\n background-color: var(--bg-lv7);\n border-radius: 6px;\n width: 3px;\n}\n\n* {\n -ms-overflow-style: none;\n}\n\n/* div::-webkit-scrollbar {\n display: none;\n} */\n\n@font-face {\n font-family: LeagueSpartan;\n /* ascent-override: 70%; */\n src: url('./common/assets/fonts/LeagueSpartan-Regular.ttf');\n}\n\n@font-face {\n font-family: LeagueSpartan;\n /* ascent-override: 70%; */\n src: url('./common/assets/fonts/LeagueSpartan-Thin.ttf');\n font-weight: lighter;\n}\n";
38
38
  styleInject(css_248z$j);
39
39
 
40
40
  var Spacing = /*#__PURE__*/ function(Spacing) {
@@ -101,6 +101,7 @@ var Width = /*#__PURE__*/ function(Width) {
101
101
  return Width;
102
102
  }({});
103
103
  var FontSizes = /*#__PURE__*/ function(FontSizes) {
104
+ FontSizes["xXSmall"] = "xxs";
104
105
  FontSizes["xSmall"] = "xs";
105
106
  FontSizes["small"] = "sm";
106
107
  FontSizes["medium"] = "md";
@@ -157,13 +158,13 @@ var StrokeStyle = /*#__PURE__*/ function(StrokeStyle) {
157
158
  return StrokeStyle;
158
159
  }({});
159
160
 
160
- function _array_like_to_array$m(arr, len) {
161
+ function _array_like_to_array$p(arr, len) {
161
162
  if (len == null || len > arr.length) len = arr.length;
162
163
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
163
164
  return arr2;
164
165
  }
165
166
  function _array_without_holes$3(arr) {
166
- if (Array.isArray(arr)) return _array_like_to_array$m(arr);
167
+ if (Array.isArray(arr)) return _array_like_to_array$p(arr);
167
168
  }
168
169
  function _iterable_to_array$3(iter) {
169
170
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
@@ -172,15 +173,15 @@ function _non_iterable_spread$3() {
172
173
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
173
174
  }
174
175
  function _to_consumable_array$3(arr) {
175
- return _array_without_holes$3(arr) || _iterable_to_array$3(arr) || _unsupported_iterable_to_array$m(arr) || _non_iterable_spread$3();
176
+ return _array_without_holes$3(arr) || _iterable_to_array$3(arr) || _unsupported_iterable_to_array$p(arr) || _non_iterable_spread$3();
176
177
  }
177
- function _unsupported_iterable_to_array$m(o, minLen) {
178
+ function _unsupported_iterable_to_array$p(o, minLen) {
178
179
  if (!o) return;
179
- if (typeof o === "string") return _array_like_to_array$m(o, minLen);
180
+ if (typeof o === "string") return _array_like_to_array$p(o, minLen);
180
181
  var n = Object.prototype.toString.call(o).slice(8, -1);
181
182
  if (n === "Object" && o.constructor) n = o.constructor.name;
182
183
  if (n === "Map" || n === "Set") return Array.from(n);
183
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$m(o, minLen);
184
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$p(o, minLen);
184
185
  }
185
186
  // export const roundUpToTwoDecimals = (val: number) => Math.ceil(val * 100) / 100;
186
187
  // mocks the `normalisedToScaledValue` internal method from JUCE
@@ -376,16 +377,16 @@ var getBorderValue = function(borderArray, borderDirection, returnNumericValue)
376
377
  }
377
378
  };
378
379
 
379
- function _array_like_to_array$l(arr, len) {
380
+ function _array_like_to_array$o(arr, len) {
380
381
  if (len == null || len > arr.length) len = arr.length;
381
382
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
382
383
  return arr2;
383
384
  }
384
- function _array_with_holes$k(arr) {
385
+ function _array_with_holes$n(arr) {
385
386
  if (Array.isArray(arr)) return arr;
386
387
  }
387
388
  function _array_without_holes$2(arr) {
388
- if (Array.isArray(arr)) return _array_like_to_array$l(arr);
389
+ if (Array.isArray(arr)) return _array_like_to_array$o(arr);
389
390
  }
390
391
  function _define_property$r(obj, key, value) {
391
392
  if (key in obj) {
@@ -403,7 +404,7 @@ function _define_property$r(obj, key, value) {
403
404
  function _iterable_to_array$2(iter) {
404
405
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
405
406
  }
406
- function _iterable_to_array_limit$k(arr, i) {
407
+ function _iterable_to_array_limit$n(arr, i) {
407
408
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
408
409
  if (_i == null) return;
409
410
  var _arr = [];
@@ -427,7 +428,7 @@ function _iterable_to_array_limit$k(arr, i) {
427
428
  }
428
429
  return _arr;
429
430
  }
430
- function _non_iterable_rest$k() {
431
+ function _non_iterable_rest$n() {
431
432
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
432
433
  }
433
434
  function _non_iterable_spread$2() {
@@ -467,9 +468,9 @@ function _object_spread_props$4(target, source) {
467
468
  }
468
469
  return target;
469
470
  }
470
- function _object_without_properties$2(source, excluded) {
471
+ function _object_without_properties$3(source, excluded) {
471
472
  if (source == null) return {};
472
- var target = _object_without_properties_loose$2(source, excluded);
473
+ var target = _object_without_properties_loose$3(source, excluded);
473
474
  var key, i;
474
475
  if (Object.getOwnPropertySymbols) {
475
476
  var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
@@ -482,7 +483,7 @@ function _object_without_properties$2(source, excluded) {
482
483
  }
483
484
  return target;
484
485
  }
485
- function _object_without_properties_loose$2(source, excluded) {
486
+ function _object_without_properties_loose$3(source, excluded) {
486
487
  if (source == null) return {};
487
488
  var target = {};
488
489
  var sourceKeys = Object.keys(source);
@@ -494,19 +495,19 @@ function _object_without_properties_loose$2(source, excluded) {
494
495
  }
495
496
  return target;
496
497
  }
497
- function _sliced_to_array$k(arr, i) {
498
- return _array_with_holes$k(arr) || _iterable_to_array_limit$k(arr, i) || _unsupported_iterable_to_array$l(arr, i) || _non_iterable_rest$k();
498
+ function _sliced_to_array$n(arr, i) {
499
+ return _array_with_holes$n(arr) || _iterable_to_array_limit$n(arr, i) || _unsupported_iterable_to_array$o(arr, i) || _non_iterable_rest$n();
499
500
  }
500
501
  function _to_consumable_array$2(arr) {
501
- return _array_without_holes$2(arr) || _iterable_to_array$2(arr) || _unsupported_iterable_to_array$l(arr) || _non_iterable_spread$2();
502
+ return _array_without_holes$2(arr) || _iterable_to_array$2(arr) || _unsupported_iterable_to_array$o(arr) || _non_iterable_spread$2();
502
503
  }
503
- function _unsupported_iterable_to_array$l(o, minLen) {
504
+ function _unsupported_iterable_to_array$o(o, minLen) {
504
505
  if (!o) return;
505
- if (typeof o === "string") return _array_like_to_array$l(o, minLen);
506
+ if (typeof o === "string") return _array_like_to_array$o(o, minLen);
506
507
  var n = Object.prototype.toString.call(o).slice(8, -1);
507
508
  if (n === "Object" && o.constructor) n = o.constructor.name;
508
509
  if (n === "Map" || n === "Set") return Array.from(n);
509
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$l(o, minLen);
510
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$o(o, minLen);
510
511
  }
511
512
  //This component is a hack to create beveled edges on an element.
512
513
  //This will be obsolete if/when Juce's browser supports
@@ -517,7 +518,7 @@ function BorderSVG(_param) {
517
518
  0,
518
519
  0,
519
520
  0
520
- ] : _param_cornerBevel, _param_fillColor = _param.fillColor, fillColor = _param_fillColor === void 0 ? 'transparent' : _param_fillColor, borderColor = _param.borderColor, outerGlowRadius = _param.outerGlowRadius, outerGlowColors = _param.outerGlowColors, _param_highlightFillColor = _param.highlightFillColor, highlightFillColor = _param_highlightFillColor === void 0 ? 'transparent' : _param_highlightFillColor, _param_borderWidth = _param.borderWidth, borderWidth = _param_borderWidth === void 0 ? 0 : _param_borderWidth, setComponentIsHovered = _param.setComponentIsHovered, componentIsHovered = _param.componentIsHovered, style = _param.style, rest = _object_without_properties$2(_param, [
521
+ ] : _param_cornerBevel, _param_fillColor = _param.fillColor, fillColor = _param_fillColor === void 0 ? 'transparent' : _param_fillColor, borderColor = _param.borderColor, outerGlowRadius = _param.outerGlowRadius, outerGlowColors = _param.outerGlowColors, _param_highlightFillColor = _param.highlightFillColor, highlightFillColor = _param_highlightFillColor === void 0 ? 'transparent' : _param_highlightFillColor, _param_borderWidth = _param.borderWidth, borderWidth = _param_borderWidth === void 0 ? 0 : _param_borderWidth, setComponentIsHovered = _param.setComponentIsHovered, componentIsHovered = _param.componentIsHovered, style = _param.style, rest = _object_without_properties$3(_param, [
521
522
  "width",
522
523
  "height",
523
524
  "padding",
@@ -582,7 +583,7 @@ function BevelContainer(param) {
582
583
  }));
583
584
  if (hasBevel) {
584
585
  var _React_Children, _firstChild_props, _firstChild_props1, _firstChild_props2, _firstChild_props3;
585
- var _useState = _sliced_to_array$k(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
586
+ var _useState = _sliced_to_array$n(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
586
587
  var childrenOfContainer = (_React_Children = React__default.Children) === null || _React_Children === void 0 ? void 0 : _React_Children.toArray(children);
587
588
  var firstChild = (childrenOfContainer === null || childrenOfContainer === void 0 ? void 0 : childrenOfContainer[0]) || [];
588
589
  var childrenOfFirstChild = Array.isArray(firstChild === null || firstChild === void 0 ? void 0 : (_firstChild_props = firstChild.props) === null || _firstChild_props === void 0 ? void 0 : _firstChild_props.children) ? firstChild === null || firstChild === void 0 ? void 0 : (_firstChild_props1 = firstChild.props) === null || _firstChild_props1 === void 0 ? void 0 : _firstChild_props1.children : [
@@ -647,12 +648,12 @@ var buttonHeightMap = {
647
648
  full: '100%'
648
649
  };
649
650
 
650
- function _array_like_to_array$k(arr, len) {
651
+ function _array_like_to_array$n(arr, len) {
651
652
  if (len == null || len > arr.length) len = arr.length;
652
653
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
653
654
  return arr2;
654
655
  }
655
- function _array_with_holes$j(arr) {
656
+ function _array_with_holes$m(arr) {
656
657
  if (Array.isArray(arr)) return arr;
657
658
  }
658
659
  function _define_property$q(obj, key, value) {
@@ -668,7 +669,7 @@ function _define_property$q(obj, key, value) {
668
669
  }
669
670
  return obj;
670
671
  }
671
- function _iterable_to_array_limit$j(arr, i) {
672
+ function _iterable_to_array_limit$m(arr, i) {
672
673
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
673
674
  if (_i == null) return;
674
675
  var _arr = [];
@@ -692,7 +693,7 @@ function _iterable_to_array_limit$j(arr, i) {
692
693
  }
693
694
  return _arr;
694
695
  }
695
- function _non_iterable_rest$j() {
696
+ function _non_iterable_rest$m() {
696
697
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
697
698
  }
698
699
  function _object_spread$o(target) {
@@ -710,9 +711,9 @@ function _object_spread$o(target) {
710
711
  }
711
712
  return target;
712
713
  }
713
- function _object_without_properties$1(source, excluded) {
714
+ function _object_without_properties$2(source, excluded) {
714
715
  if (source == null) return {};
715
- var target = _object_without_properties_loose$1(source, excluded);
716
+ var target = _object_without_properties_loose$2(source, excluded);
716
717
  var key, i;
717
718
  if (Object.getOwnPropertySymbols) {
718
719
  var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
@@ -725,7 +726,7 @@ function _object_without_properties$1(source, excluded) {
725
726
  }
726
727
  return target;
727
728
  }
728
- function _object_without_properties_loose$1(source, excluded) {
729
+ function _object_without_properties_loose$2(source, excluded) {
729
730
  if (source == null) return {};
730
731
  var target = {};
731
732
  var sourceKeys = Object.keys(source);
@@ -737,16 +738,16 @@ function _object_without_properties_loose$1(source, excluded) {
737
738
  }
738
739
  return target;
739
740
  }
740
- function _sliced_to_array$j(arr, i) {
741
- return _array_with_holes$j(arr) || _iterable_to_array_limit$j(arr, i) || _unsupported_iterable_to_array$k(arr, i) || _non_iterable_rest$j();
741
+ function _sliced_to_array$m(arr, i) {
742
+ return _array_with_holes$m(arr) || _iterable_to_array_limit$m(arr, i) || _unsupported_iterable_to_array$n(arr, i) || _non_iterable_rest$m();
742
743
  }
743
- function _unsupported_iterable_to_array$k(o, minLen) {
744
+ function _unsupported_iterable_to_array$n(o, minLen) {
744
745
  if (!o) return;
745
- if (typeof o === "string") return _array_like_to_array$k(o, minLen);
746
+ if (typeof o === "string") return _array_like_to_array$n(o, minLen);
746
747
  var n = Object.prototype.toString.call(o).slice(8, -1);
747
748
  if (n === "Object" && o.constructor) n = o.constructor.name;
748
749
  if (n === "Map" || n === "Set") return Array.from(n);
749
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$k(o, minLen);
750
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$n(o, minLen);
750
751
  }
751
752
  function Button(_param) {
752
753
  var disabled = _param.disabled, text = _param.text, id = _param.id, className = _param.className, style = _param.style, onClick = _param.onClick, children = _param.children, outerGlowRadius = _param.outerGlowRadius, outerGlowColors = _param.outerGlowColors, _param_color = _param.color, color = _param_color === void 0 ? 'var(--color-text)' : _param_color, _param_highlightBackground = _param.highlightBackground, highlightBackground = _param_highlightBackground === void 0 ? 'var(--bg-lv6)' : _param_highlightBackground, _param_backgroundColor = _param.backgroundColor, backgroundColor = _param_backgroundColor === void 0 ? 'var(--bg-lv5)' : _param_backgroundColor, highlightBorderColor = _param.highlightBorderColor, _param_highlightColor = _param.highlightColor, highlightColor = _param_highlightColor === void 0 ? 'var(--color-gray-100)' : _param_highlightColor, borderWidth = _param.borderWidth, borderColor = _param.borderColor, _param_cornerBevel = _param.cornerBevel, cornerBevel = _param_cornerBevel === void 0 ? [
@@ -758,7 +759,7 @@ function Button(_param) {
758
759
  Spacing.small
759
760
  ] : _param_padding, _param_margin = _param.margin, margin = _param_margin === void 0 ? [
760
761
  Spacing.none
761
- ] : _param_margin, _param_type = _param.type, type = _param_type === void 0 ? ButtonType.latch : _param_type, _param_width = _param.width, width = _param_width === void 0 ? ButtonSize.medium : _param_width, _param_height = _param.height, height = _param_height === void 0 ? ButtonSize.medium : _param_height, rest = _object_without_properties$1(_param, [
762
+ ] : _param_margin, _param_type = _param.type, type = _param_type === void 0 ? ButtonType.latch : _param_type, _param_width = _param.width, width = _param_width === void 0 ? ButtonSize.medium : _param_width, _param_height = _param.height, height = _param_height === void 0 ? ButtonSize.medium : _param_height, rest = _object_without_properties$2(_param, [
762
763
  "disabled",
763
764
  "text",
764
765
  "id",
@@ -782,13 +783,13 @@ function Button(_param) {
782
783
  "width",
783
784
  "height"
784
785
  ]);
785
- var _React_useState = _sliced_to_array$j(React__default.useState(false), 2), isSelected = _React_useState[0], setIsSelected = _React_useState[1];
786
+ var _React_useState = _sliced_to_array$m(React__default.useState(false), 2), isSelected = _React_useState[0], setIsSelected = _React_useState[1];
786
787
  var buttonState = Juce.getToggleState(id);
787
788
  var isLocalhost = window.location.hostname === 'localhost';
788
789
  var hasBevel = !!cornerBevel.find(function(item) {
789
790
  return item > 0;
790
791
  });
791
- var _useState = _sliced_to_array$j(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
792
+ var _useState = _sliced_to_array$m(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
792
793
  // const { updateModSlotRowTarget } = useGlobalContext();
793
794
  var widthValue = (buttonWidthMap === null || buttonWidthMap === void 0 ? void 0 : buttonWidthMap[width]) ? buttonWidthMap === null || buttonWidthMap === void 0 ? void 0 : buttonWidthMap[width] : width;
794
795
  var heightValue = (buttonHeightMap === null || buttonHeightMap === void 0 ? void 0 : buttonHeightMap[height]) ? buttonHeightMap === null || buttonHeightMap === void 0 ? void 0 : buttonHeightMap[height] : height;
@@ -983,9 +984,9 @@ function _object_spread_props$3(target, source) {
983
984
  }
984
985
  return target;
985
986
  }
986
- function _object_without_properties(source, excluded) {
987
+ function _object_without_properties$1(source, excluded) {
987
988
  if (source == null) return {};
988
- var target = _object_without_properties_loose(source, excluded);
989
+ var target = _object_without_properties_loose$1(source, excluded);
989
990
  var key, i;
990
991
  if (Object.getOwnPropertySymbols) {
991
992
  var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
@@ -998,7 +999,7 @@ function _object_without_properties(source, excluded) {
998
999
  }
999
1000
  return target;
1000
1001
  }
1001
- function _object_without_properties_loose(source, excluded) {
1002
+ function _object_without_properties_loose$1(source, excluded) {
1002
1003
  if (source == null) return {};
1003
1004
  var target = {};
1004
1005
  var sourceKeys = Object.keys(source);
@@ -1032,7 +1033,7 @@ function Box(_param) {
1032
1033
  0,
1033
1034
  0,
1034
1035
  0
1035
- ] : _param_cornerBevel, _param_gap = _param.gap, gap = _param_gap === void 0 ? Spacing.small : _param_gap, _param_tag = _param.tag, tag = _param_tag === void 0 ? LayoutTags.div : _param_tag, rest = _object_without_properties(_param, [
1036
+ ] : _param_cornerBevel, _param_gap = _param.gap, gap = _param_gap === void 0 ? Spacing.small : _param_gap, _param_tag = _param.tag, tag = _param_tag === void 0 ? LayoutTags.div : _param_tag, rest = _object_without_properties$1(_param, [
1036
1037
  "className",
1037
1038
  "style",
1038
1039
  "children",
@@ -1512,6 +1513,14 @@ Icon.icon = Icons;
1512
1513
  Icon.padding = Spacing;
1513
1514
  Icon.margin = Spacing;
1514
1515
 
1516
+ function _array_like_to_array$m(arr, len) {
1517
+ if (len == null || len > arr.length) len = arr.length;
1518
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1519
+ return arr2;
1520
+ }
1521
+ function _array_with_holes$l(arr) {
1522
+ if (Array.isArray(arr)) return arr;
1523
+ }
1515
1524
  function _define_property$n(obj, key, value) {
1516
1525
  if (key in obj) {
1517
1526
  Object.defineProperty(obj, key, {
@@ -1525,6 +1534,33 @@ function _define_property$n(obj, key, value) {
1525
1534
  }
1526
1535
  return obj;
1527
1536
  }
1537
+ function _iterable_to_array_limit$l(arr, i) {
1538
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
1539
+ if (_i == null) return;
1540
+ var _arr = [];
1541
+ var _n = true;
1542
+ var _d = false;
1543
+ var _s, _e;
1544
+ try {
1545
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
1546
+ _arr.push(_s.value);
1547
+ if (i && _arr.length === i) break;
1548
+ }
1549
+ } catch (err) {
1550
+ _d = true;
1551
+ _e = err;
1552
+ } finally{
1553
+ try {
1554
+ if (!_n && _i["return"] != null) _i["return"]();
1555
+ } finally{
1556
+ if (_d) throw _e;
1557
+ }
1558
+ }
1559
+ return _arr;
1560
+ }
1561
+ function _non_iterable_rest$l() {
1562
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1563
+ }
1528
1564
  function _object_spread$l(target) {
1529
1565
  for(var i = 1; i < arguments.length; i++){
1530
1566
  var source = arguments[i] != null ? arguments[i] : {};
@@ -1540,14 +1576,74 @@ function _object_spread$l(target) {
1540
1576
  }
1541
1577
  return target;
1542
1578
  }
1543
- function Label(param) {
1544
- var value = param.value, id = param.id, className = param.className, style = param.style, _param_color = param.color, color = _param_color === void 0 ? 'var(--color-text)' : _param_color, _param_padding = param.padding, padding = _param_padding === void 0 ? [
1579
+ function _object_without_properties(source, excluded) {
1580
+ if (source == null) return {};
1581
+ var target = _object_without_properties_loose(source, excluded);
1582
+ var key, i;
1583
+ if (Object.getOwnPropertySymbols) {
1584
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
1585
+ for(i = 0; i < sourceSymbolKeys.length; i++){
1586
+ key = sourceSymbolKeys[i];
1587
+ if (excluded.indexOf(key) >= 0) continue;
1588
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
1589
+ target[key] = source[key];
1590
+ }
1591
+ }
1592
+ return target;
1593
+ }
1594
+ function _object_without_properties_loose(source, excluded) {
1595
+ if (source == null) return {};
1596
+ var target = {};
1597
+ var sourceKeys = Object.keys(source);
1598
+ var key, i;
1599
+ for(i = 0; i < sourceKeys.length; i++){
1600
+ key = sourceKeys[i];
1601
+ if (excluded.indexOf(key) >= 0) continue;
1602
+ target[key] = source[key];
1603
+ }
1604
+ return target;
1605
+ }
1606
+ function _sliced_to_array$l(arr, i) {
1607
+ return _array_with_holes$l(arr) || _iterable_to_array_limit$l(arr, i) || _unsupported_iterable_to_array$m(arr, i) || _non_iterable_rest$l();
1608
+ }
1609
+ function _unsupported_iterable_to_array$m(o, minLen) {
1610
+ if (!o) return;
1611
+ if (typeof o === "string") return _array_like_to_array$m(o, minLen);
1612
+ var n = Object.prototype.toString.call(o).slice(8, -1);
1613
+ if (n === "Object" && o.constructor) n = o.constructor.name;
1614
+ if (n === "Map" || n === "Set") return Array.from(n);
1615
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$m(o, minLen);
1616
+ }
1617
+ function Label(_param) {
1618
+ var value = _param.value, id = _param.id, className = _param.className, style = _param.style, _param_color = _param.color, color = _param_color === void 0 ? 'var(--color-text)' : _param_color, _param_highlightColor = _param.highlightColor, highlightColor = _param_highlightColor === void 0 ? 'var(--color-text)' : _param_highlightColor, _param_padding = _param.padding, padding = _param_padding === void 0 ? [
1545
1619
  Spacing.none
1546
- ] : _param_padding, uppercase = param.uppercase, outerGlowRadius = param.outerGlowRadius, outerGlowColor = param.outerGlowColor; param.blur; var children = param.children, htmlFor = param.htmlFor, _param_fontSize = param.fontSize, fontSize = _param_fontSize === void 0 ? FontSizes.medium : _param_fontSize;
1620
+ ] : _param_padding, uppercase = _param.uppercase, outerGlowRadius = _param.outerGlowRadius, outerGlowColor = _param.outerGlowColor; _param.blur; var children = _param.children, htmlFor = _param.htmlFor, _param_fontSize = _param.fontSize, fontSize = _param_fontSize === void 0 ? FontSizes.medium : _param_fontSize, rest = _object_without_properties(_param, [
1621
+ "value",
1622
+ "id",
1623
+ "className",
1624
+ "style",
1625
+ "color",
1626
+ "highlightColor",
1627
+ "padding",
1628
+ "uppercase",
1629
+ "outerGlowRadius",
1630
+ "outerGlowColor",
1631
+ "blur",
1632
+ "children",
1633
+ "htmlFor",
1634
+ "fontSize"
1635
+ ]);
1636
+ var _useState = _sliced_to_array$l(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
1547
1637
  var _padding_, _padding_1, _padding_2, _ref;
1548
- return /*#__PURE__*/ React.createElement("label", {
1638
+ return /*#__PURE__*/ React__default.createElement("label", _object_spread$l({
1549
1639
  id: id,
1550
1640
  htmlFor: htmlFor,
1641
+ onMouseEnter: function() {
1642
+ return setComponentIsHovered(true);
1643
+ },
1644
+ onMouseLeave: function() {
1645
+ return setComponentIsHovered(false);
1646
+ },
1551
1647
  style: _object_spread$l({
1552
1648
  fontSize: "var(--text-".concat(fontSize, ")"),
1553
1649
  paddingTop: "var(--p-".concat(padding[0], ")"),
@@ -1564,20 +1660,20 @@ function Label(param) {
1564
1660
  // ? `0 0 ${outerGlowRadius}px ${outerGlowColor}`
1565
1661
  // : 'none' + `blur(${blur}px)`
1566
1662
  // })`,
1567
- color: color
1663
+ color: componentIsHovered ? highlightColor : color
1568
1664
  }, style),
1569
1665
  className: classnames('Label', 'select-none', className)
1570
- }, value ? value : children);
1666
+ }, rest), value !== null && value !== undefined ? value : children);
1571
1667
  }
1572
1668
  Label.padding = Spacing;
1573
1669
  Label.fontSize = FontSizes;
1574
1670
 
1575
- function _array_like_to_array$j(arr, len) {
1671
+ function _array_like_to_array$l(arr, len) {
1576
1672
  if (len == null || len > arr.length) len = arr.length;
1577
1673
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1578
1674
  return arr2;
1579
1675
  }
1580
- function _array_with_holes$i(arr) {
1676
+ function _array_with_holes$k(arr) {
1581
1677
  if (Array.isArray(arr)) return arr;
1582
1678
  }
1583
1679
  function _define_property$m(obj, key, value) {
@@ -1593,7 +1689,7 @@ function _define_property$m(obj, key, value) {
1593
1689
  }
1594
1690
  return obj;
1595
1691
  }
1596
- function _iterable_to_array_limit$i(arr, i) {
1692
+ function _iterable_to_array_limit$k(arr, i) {
1597
1693
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
1598
1694
  if (_i == null) return;
1599
1695
  var _arr = [];
@@ -1617,7 +1713,7 @@ function _iterable_to_array_limit$i(arr, i) {
1617
1713
  }
1618
1714
  return _arr;
1619
1715
  }
1620
- function _non_iterable_rest$i() {
1716
+ function _non_iterable_rest$k() {
1621
1717
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1622
1718
  }
1623
1719
  function _object_spread$k(target) {
@@ -1635,16 +1731,16 @@ function _object_spread$k(target) {
1635
1731
  }
1636
1732
  return target;
1637
1733
  }
1638
- function _sliced_to_array$i(arr, i) {
1639
- return _array_with_holes$i(arr) || _iterable_to_array_limit$i(arr, i) || _unsupported_iterable_to_array$j(arr, i) || _non_iterable_rest$i();
1734
+ function _sliced_to_array$k(arr, i) {
1735
+ return _array_with_holes$k(arr) || _iterable_to_array_limit$k(arr, i) || _unsupported_iterable_to_array$l(arr, i) || _non_iterable_rest$k();
1640
1736
  }
1641
- function _unsupported_iterable_to_array$j(o, minLen) {
1737
+ function _unsupported_iterable_to_array$l(o, minLen) {
1642
1738
  if (!o) return;
1643
- if (typeof o === "string") return _array_like_to_array$j(o, minLen);
1739
+ if (typeof o === "string") return _array_like_to_array$l(o, minLen);
1644
1740
  var n = Object.prototype.toString.call(o).slice(8, -1);
1645
1741
  if (n === "Object" && o.constructor) n = o.constructor.name;
1646
1742
  if (n === "Map" || n === "Set") return Array.from(n);
1647
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$j(o, minLen);
1743
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$l(o, minLen);
1648
1744
  }
1649
1745
  function IconButton(param) {
1650
1746
  var id = param.id, icon = param.icon, onClick = param.onClick, _param_disabled = param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, _param_color = param.color, color = _param_color === void 0 ? 'var(--color-text)' : _param_color, _param_iconColor = param.iconColor, iconColor = _param_iconColor === void 0 ? 'var(--color-gray-200)' : _param_iconColor, highlightColor = param.highlightColor, _param_highlightIconColor = param.highlightIconColor, highlightIconColor = _param_highlightIconColor === void 0 ? 'var(--color-text)' : _param_highlightIconColor, // backgroundColor = 'var(--bg-lv1)',
@@ -1658,7 +1754,7 @@ function IconButton(param) {
1658
1754
  var numberWidth = parseInt(((_width_match = width.match(/\d/g)) !== null && _width_match !== void 0 ? _width_match : []).join(''), 10);
1659
1755
  var _iconWidth_match;
1660
1756
  var iconNumberWidth = typeof iconWidth === 'string' && parseInt(((_iconWidth_match = iconWidth === null || iconWidth === void 0 ? void 0 : iconWidth.match(/\d/g)) !== null && _iconWidth_match !== void 0 ? _iconWidth_match : []).join(''), 10);
1661
- var _useState = _sliced_to_array$i(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
1757
+ var _useState = _sliced_to_array$k(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
1662
1758
  return /*#__PURE__*/ React__default.createElement(Button, {
1663
1759
  id: id,
1664
1760
  className: "IconButton ".concat(className ? className : ''),
@@ -1694,15 +1790,15 @@ IconButton.icon = Icons;
1694
1790
  IconButton.padding = Spacing;
1695
1791
  IconButton.margin = Spacing;
1696
1792
 
1697
- function _array_like_to_array$i(arr, len) {
1793
+ function _array_like_to_array$k(arr, len) {
1698
1794
  if (len == null || len > arr.length) len = arr.length;
1699
1795
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1700
1796
  return arr2;
1701
1797
  }
1702
- function _array_with_holes$h(arr) {
1798
+ function _array_with_holes$j(arr) {
1703
1799
  if (Array.isArray(arr)) return arr;
1704
1800
  }
1705
- function _iterable_to_array_limit$h(arr, i) {
1801
+ function _iterable_to_array_limit$j(arr, i) {
1706
1802
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
1707
1803
  if (_i == null) return;
1708
1804
  var _arr = [];
@@ -1726,19 +1822,19 @@ function _iterable_to_array_limit$h(arr, i) {
1726
1822
  }
1727
1823
  return _arr;
1728
1824
  }
1729
- function _non_iterable_rest$h() {
1825
+ function _non_iterable_rest$j() {
1730
1826
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1731
1827
  }
1732
- function _sliced_to_array$h(arr, i) {
1733
- return _array_with_holes$h(arr) || _iterable_to_array_limit$h(arr, i) || _unsupported_iterable_to_array$i(arr, i) || _non_iterable_rest$h();
1828
+ function _sliced_to_array$j(arr, i) {
1829
+ return _array_with_holes$j(arr) || _iterable_to_array_limit$j(arr, i) || _unsupported_iterable_to_array$k(arr, i) || _non_iterable_rest$j();
1734
1830
  }
1735
- function _unsupported_iterable_to_array$i(o, minLen) {
1831
+ function _unsupported_iterable_to_array$k(o, minLen) {
1736
1832
  if (!o) return;
1737
- if (typeof o === "string") return _array_like_to_array$i(o, minLen);
1833
+ if (typeof o === "string") return _array_like_to_array$k(o, minLen);
1738
1834
  var n = Object.prototype.toString.call(o).slice(8, -1);
1739
1835
  if (n === "Object" && o.constructor) n = o.constructor.name;
1740
1836
  if (n === "Map" || n === "Set") return Array.from(n);
1741
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$i(o, minLen);
1837
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$k(o, minLen);
1742
1838
  }
1743
1839
  function Tabs(param) {
1744
1840
  var items = param.items, _param_initialSelectedIndex = param.initialSelectedIndex, initialSelectedIndex = _param_initialSelectedIndex === void 0 ? undefined : _param_initialSelectedIndex, _param_id = param.id, id = _param_id === void 0 ? '' : _param_id, className = param.className, _param_padding = param.padding, padding = _param_padding === void 0 ? [
@@ -1756,9 +1852,9 @@ function Tabs(param) {
1756
1852
  0,
1757
1853
  0
1758
1854
  ] : _param_outerCornerBevel, outerBorderWidth = param.outerBorderWidth, tabBorderWidth = param.tabBorderWidth, _param_borderColor = param.borderColor, borderColor = _param_borderColor === void 0 ? 'var(--color-text)' : _param_borderColor, _param_fontSize = param.fontSize, fontSize = _param_fontSize === void 0 ? FontSizes.small : _param_fontSize, selectedBackgroundColor = param.selectedBackgroundColor, icons = param.icons, onChange = param.onChange, isDisabled = param.isDisabled;
1759
- var _useState = _sliced_to_array$h(useState(null), 2), selectedIndex = _useState[0], setSelectedIndex = _useState[1];
1760
- var _useState1 = _sliced_to_array$h(useState([]), 2), choices = _useState1[0], setChoices = _useState1[1];
1761
- var _useState2 = _sliced_to_array$h(useState(null), 2), hoveredTab = _useState2[0], setHoveredTab = _useState2[1];
1855
+ var _useState = _sliced_to_array$j(useState(null), 2), selectedIndex = _useState[0], setSelectedIndex = _useState[1];
1856
+ var _useState1 = _sliced_to_array$j(useState([]), 2), choices = _useState1[0], setChoices = _useState1[1];
1857
+ var _useState2 = _sliced_to_array$j(useState(null), 2), hoveredTab = _useState2[0], setHoveredTab = _useState2[1];
1762
1858
  var hasTabBevel = !!tabCornerBevel.find(function(item) {
1763
1859
  return item > 0;
1764
1860
  });
@@ -1948,16 +2044,16 @@ function useRandom() {
1948
2044
  return observableObject;
1949
2045
  }
1950
2046
 
1951
- function _array_like_to_array$h(arr, len) {
2047
+ function _array_like_to_array$j(arr, len) {
1952
2048
  if (len == null || len > arr.length) len = arr.length;
1953
2049
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1954
2050
  return arr2;
1955
2051
  }
1956
- function _array_with_holes$g(arr) {
2052
+ function _array_with_holes$i(arr) {
1957
2053
  if (Array.isArray(arr)) return arr;
1958
2054
  }
1959
2055
  function _array_without_holes$1(arr) {
1960
- if (Array.isArray(arr)) return _array_like_to_array$h(arr);
2056
+ if (Array.isArray(arr)) return _array_like_to_array$j(arr);
1961
2057
  }
1962
2058
  function asyncGeneratorStep$4(gen, resolve, reject, _next, _throw, key, arg) {
1963
2059
  try {
@@ -2004,7 +2100,7 @@ function _define_property$l(obj, key, value) {
2004
2100
  function _iterable_to_array$1(iter) {
2005
2101
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
2006
2102
  }
2007
- function _iterable_to_array_limit$g(arr, i) {
2103
+ function _iterable_to_array_limit$i(arr, i) {
2008
2104
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
2009
2105
  if (_i == null) return;
2010
2106
  var _arr = [];
@@ -2028,7 +2124,7 @@ function _iterable_to_array_limit$g(arr, i) {
2028
2124
  }
2029
2125
  return _arr;
2030
2126
  }
2031
- function _non_iterable_rest$g() {
2127
+ function _non_iterable_rest$i() {
2032
2128
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2033
2129
  }
2034
2130
  function _non_iterable_spread$1() {
@@ -2068,19 +2164,19 @@ function _object_spread_props$2(target, source) {
2068
2164
  }
2069
2165
  return target;
2070
2166
  }
2071
- function _sliced_to_array$g(arr, i) {
2072
- return _array_with_holes$g(arr) || _iterable_to_array_limit$g(arr, i) || _unsupported_iterable_to_array$h(arr, i) || _non_iterable_rest$g();
2167
+ function _sliced_to_array$i(arr, i) {
2168
+ return _array_with_holes$i(arr) || _iterable_to_array_limit$i(arr, i) || _unsupported_iterable_to_array$j(arr, i) || _non_iterable_rest$i();
2073
2169
  }
2074
2170
  function _to_consumable_array$1(arr) {
2075
- return _array_without_holes$1(arr) || _iterable_to_array$1(arr) || _unsupported_iterable_to_array$h(arr) || _non_iterable_spread$1();
2171
+ return _array_without_holes$1(arr) || _iterable_to_array$1(arr) || _unsupported_iterable_to_array$j(arr) || _non_iterable_spread$1();
2076
2172
  }
2077
- function _unsupported_iterable_to_array$h(o, minLen) {
2173
+ function _unsupported_iterable_to_array$j(o, minLen) {
2078
2174
  if (!o) return;
2079
- if (typeof o === "string") return _array_like_to_array$h(o, minLen);
2175
+ if (typeof o === "string") return _array_like_to_array$j(o, minLen);
2080
2176
  var n = Object.prototype.toString.call(o).slice(8, -1);
2081
2177
  if (n === "Object" && o.constructor) n = o.constructor.name;
2082
2178
  if (n === "Map" || n === "Set") return Array.from(n);
2083
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$h(o, minLen);
2179
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$j(o, minLen);
2084
2180
  }
2085
2181
  function _ts_generator$4(thisArg, body) {
2086
2182
  var f, y, t, _ = {
@@ -2313,7 +2409,7 @@ function useGlobalContext(selector) {
2313
2409
  // Context provider
2314
2410
  function GlobalContextProvider(param) {
2315
2411
  var children = param.children;
2316
- var _useReducer = _sliced_to_array$g(useReducer(reducer, defaultGlobalStateValue), 2), state = _useReducer[0], dispatch = _useReducer[1];
2412
+ var _useReducer = _sliced_to_array$i(useReducer(reducer, defaultGlobalStateValue), 2), state = _useReducer[0], dispatch = _useReducer[1];
2317
2413
  var highlightedItemChanged = useCallback(function(highlightedItem) {
2318
2414
  dispatch({
2319
2415
  type: 'HIGHLIGHTED_ITEM_CHANGED',
@@ -2610,15 +2706,15 @@ function GlobalContextProvider(param) {
2610
2706
  }, children);
2611
2707
  }
2612
2708
 
2613
- function _array_like_to_array$g(arr, len) {
2709
+ function _array_like_to_array$i(arr, len) {
2614
2710
  if (len == null || len > arr.length) len = arr.length;
2615
2711
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
2616
2712
  return arr2;
2617
2713
  }
2618
- function _array_with_holes$f(arr) {
2714
+ function _array_with_holes$h(arr) {
2619
2715
  if (Array.isArray(arr)) return arr;
2620
2716
  }
2621
- function _iterable_to_array_limit$f(arr, i) {
2717
+ function _iterable_to_array_limit$h(arr, i) {
2622
2718
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
2623
2719
  if (_i == null) return;
2624
2720
  var _arr = [];
@@ -2642,26 +2738,26 @@ function _iterable_to_array_limit$f(arr, i) {
2642
2738
  }
2643
2739
  return _arr;
2644
2740
  }
2645
- function _non_iterable_rest$f() {
2741
+ function _non_iterable_rest$h() {
2646
2742
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2647
2743
  }
2648
- function _sliced_to_array$f(arr, i) {
2649
- return _array_with_holes$f(arr) || _iterable_to_array_limit$f(arr, i) || _unsupported_iterable_to_array$g(arr, i) || _non_iterable_rest$f();
2744
+ function _sliced_to_array$h(arr, i) {
2745
+ return _array_with_holes$h(arr) || _iterable_to_array_limit$h(arr, i) || _unsupported_iterable_to_array$i(arr, i) || _non_iterable_rest$h();
2650
2746
  }
2651
- function _unsupported_iterable_to_array$g(o, minLen) {
2747
+ function _unsupported_iterable_to_array$i(o, minLen) {
2652
2748
  if (!o) return;
2653
- if (typeof o === "string") return _array_like_to_array$g(o, minLen);
2749
+ if (typeof o === "string") return _array_like_to_array$i(o, minLen);
2654
2750
  var n = Object.prototype.toString.call(o).slice(8, -1);
2655
2751
  if (n === "Object" && o.constructor) n = o.constructor.name;
2656
2752
  if (n === "Map" || n === "Set") return Array.from(n);
2657
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$g(o, minLen);
2753
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$i(o, minLen);
2658
2754
  }
2659
2755
  var useCombobox = function(param) {
2660
2756
  var id = param.id, label = param.label, _param_items = param.items, items = _param_items === void 0 ? [] : _param_items, filter = param.filter, onChange = param.onChange, _param_displayValInHeader = param.displayValInHeader, displayValInHeader = _param_displayValInHeader === void 0 ? true : _param_displayValInHeader, _param_updateModSlotPreview = param.updateModSlotPreview, updateModSlotPreview = _param_updateModSlotPreview === void 0 ? true : _param_updateModSlotPreview, _param_updateBackendStateInHook = param.updateBackendStateInHook, updateBackendStateInHook = _param_updateBackendStateInHook === void 0 ? true : _param_updateBackendStateInHook, _param_isDisabled = param.isDisabled, isDisabled = _param_isDisabled === void 0 ? false : _param_isDisabled; param.isRandomizable; param.randomizerObject;
2661
2757
  var _properties_choices;
2662
2758
  var comboBoxState = Juce.getComboBoxState(id);
2663
- var _useState = _sliced_to_array$f(useState(comboBoxState === null || comboBoxState === void 0 ? void 0 : comboBoxState.properties), 2), properties = _useState[0], setProperties = _useState[1];
2664
- var _useState1 = _sliced_to_array$f(useState(comboBoxState === null || comboBoxState === void 0 ? void 0 : comboBoxState.getChoiceIndex()), 2), selectedIndex = _useState1[0], setSelectedIndex = _useState1[1];
2759
+ var _useState = _sliced_to_array$h(useState(comboBoxState === null || comboBoxState === void 0 ? void 0 : comboBoxState.properties), 2), properties = _useState[0], setProperties = _useState[1];
2760
+ var _useState1 = _sliced_to_array$h(useState(comboBoxState === null || comboBoxState === void 0 ? void 0 : comboBoxState.getChoiceIndex()), 2), selectedIndex = _useState1[0], setSelectedIndex = _useState1[1];
2665
2761
  var prevIndex = useRef(null);
2666
2762
  var nextIndex = useRef(null);
2667
2763
  var prevDragDirection = useRef(null);
@@ -2844,12 +2940,12 @@ var useCombobox = function(param) {
2844
2940
  };
2845
2941
  };
2846
2942
 
2847
- function _array_like_to_array$f(arr, len) {
2943
+ function _array_like_to_array$h(arr, len) {
2848
2944
  if (len == null || len > arr.length) len = arr.length;
2849
2945
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
2850
2946
  return arr2;
2851
2947
  }
2852
- function _array_with_holes$e(arr) {
2948
+ function _array_with_holes$g(arr) {
2853
2949
  if (Array.isArray(arr)) return arr;
2854
2950
  }
2855
2951
  function _define_property$k(obj, key, value) {
@@ -2865,7 +2961,7 @@ function _define_property$k(obj, key, value) {
2865
2961
  }
2866
2962
  return obj;
2867
2963
  }
2868
- function _iterable_to_array_limit$e(arr, i) {
2964
+ function _iterable_to_array_limit$g(arr, i) {
2869
2965
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
2870
2966
  if (_i == null) return;
2871
2967
  var _arr = [];
@@ -2889,7 +2985,7 @@ function _iterable_to_array_limit$e(arr, i) {
2889
2985
  }
2890
2986
  return _arr;
2891
2987
  }
2892
- function _non_iterable_rest$e() {
2988
+ function _non_iterable_rest$g() {
2893
2989
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2894
2990
  }
2895
2991
  function _object_spread$i(target) {
@@ -2907,16 +3003,16 @@ function _object_spread$i(target) {
2907
3003
  }
2908
3004
  return target;
2909
3005
  }
2910
- function _sliced_to_array$e(arr, i) {
2911
- return _array_with_holes$e(arr) || _iterable_to_array_limit$e(arr, i) || _unsupported_iterable_to_array$f(arr, i) || _non_iterable_rest$e();
3006
+ function _sliced_to_array$g(arr, i) {
3007
+ return _array_with_holes$g(arr) || _iterable_to_array_limit$g(arr, i) || _unsupported_iterable_to_array$h(arr, i) || _non_iterable_rest$g();
2912
3008
  }
2913
- function _unsupported_iterable_to_array$f(o, minLen) {
3009
+ function _unsupported_iterable_to_array$h(o, minLen) {
2914
3010
  if (!o) return;
2915
- if (typeof o === "string") return _array_like_to_array$f(o, minLen);
3011
+ if (typeof o === "string") return _array_like_to_array$h(o, minLen);
2916
3012
  var n = Object.prototype.toString.call(o).slice(8, -1);
2917
3013
  if (n === "Object" && o.constructor) n = o.constructor.name;
2918
3014
  if (n === "Map" || n === "Set") return Array.from(n);
2919
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$f(o, minLen);
3015
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$h(o, minLen);
2920
3016
  }
2921
3017
  function ComboboxComponent(param) {
2922
3018
  var id = param.id, anchorTo = param.anchorTo, _param_excludeItems = param.excludeItems, excludeItems = _param_excludeItems === void 0 ? [] : _param_excludeItems, items = param.items, onChange = param.onChange, _param_color = param.color, color = _param_color === void 0 ? 'var(--color-text)' : _param_color, label = param.label; param.unsavedPreviewIndex; var _param_labelColor = param.labelColor, labelColor = _param_labelColor === void 0 ? 'var(--color-text)' : _param_labelColor, dropdownBorderWidth = param.dropdownBorderWidth, _param_dropdownBorderColor = param.dropdownBorderColor, dropdownBorderColor = _param_dropdownBorderColor === void 0 ? 'var(--bg-lv9)' : _param_dropdownBorderColor, _param_dropdownBackgroundColor = param.dropdownBackgroundColor, dropdownBackgroundColor = _param_dropdownBackgroundColor === void 0 ? 'var(--bg-lv4)' : _param_dropdownBackgroundColor, dropdownItemHighlightBackground = param.dropdownItemHighlightBackground, dropdownItemHighlightColor = param.dropdownItemHighlightColor, dropdownSelectedItemColor = param.dropdownSelectedItemColor, dropdownSelectedItemBackground = param.dropdownSelectedItemBackground, buttonHighlightBackground = param.buttonHighlightBackground, buttonHighlightColor = param.buttonHighlightColor, buttonBorderColor = param.buttonBorderColor, buttonBorderWidth = param.buttonBorderWidth, _param_buttonCornerBevel = param.buttonCornerBevel, buttonCornerBevel = _param_buttonCornerBevel === void 0 ? [
@@ -2925,10 +3021,10 @@ function ComboboxComponent(param) {
2925
3021
  0,
2926
3022
  0
2927
3023
  ] : _param_buttonCornerBevel, buttonBackgroundColor = param.buttonBackgroundColor, _param_buttonHeight = param.buttonHeight, buttonHeight = _param_buttonHeight === void 0 ? 40 : _param_buttonHeight, key = param.key, width = param.width, _param_listItemHeight = param.listItemHeight, listItemHeight = _param_listItemHeight === void 0 ? 25 : _param_listItemHeight; param.updateModSlotPreview; param.updateBackendStateInComponent; param.placeholderText; var isDisabled = param.isDisabled, style = param.style, className = param.className;
2928
- var _useState = _sliced_to_array$e(useState(''), 2), includeFilterString = _useState[0], setIncludeFilterString = _useState[1];
3024
+ var _useState = _sliced_to_array$g(useState(''), 2), includeFilterString = _useState[0], setIncludeFilterString = _useState[1];
2929
3025
  var listItemsPerPage = 5;
2930
- var _useState1 = _sliced_to_array$e(useState(null), 2), hoveredDropdownItem = _useState1[0], setHoveredDropdownItem = _useState1[1];
2931
- var _useState2 = _sliced_to_array$e(useState(), 2), buttonIsHovered = _useState2[0], setButtonIsHovered = _useState2[1];
3026
+ var _useState1 = _sliced_to_array$g(useState(null), 2), hoveredDropdownItem = _useState1[0], setHoveredDropdownItem = _useState1[1];
3027
+ var _useState2 = _sliced_to_array$g(useState(), 2), buttonIsHovered = _useState2[0], setButtonIsHovered = _useState2[1];
2932
3028
  var _useGlobalContext = useGlobalContext(), modSlotTargets = _useGlobalContext.globalState.modSlotTargets;
2933
3029
  var changeHandler = function(newValue) {
2934
3030
  onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
@@ -3073,12 +3169,12 @@ function ComboboxComponent(param) {
3073
3169
  var css_248z$d = ".Combobox-items {\n box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 5px 3px;\n border-radius: 4px;\n z-index: 50;\n scrollbar-width: thin;\n overflow-y: scroll;\n overflow-x: hidden;\n cursor: pointer;\n}\n.Combobox-items::-webkit-scrollbar {\n width: 10px;\n}\n\n.Combobox-item {\n display: flex;\n align-items: center;\n font-size: var(--text-sm);\n padding: var(--spacing-md) var(--spacing-xl);\n cursor: pointer;\n /* text-align: center; */\n}\n\n.Combobox-button:not(:disabled),\n.Combobox-arrow:not(:disabled),\n.Combobox-button-element:not(:disabled) {\n cursor: pointer;\n}\n";
3074
3170
  styleInject(css_248z$d);
3075
3171
 
3076
- function _array_like_to_array$e(arr, len) {
3172
+ function _array_like_to_array$g(arr, len) {
3077
3173
  if (len == null || len > arr.length) len = arr.length;
3078
3174
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
3079
3175
  return arr2;
3080
3176
  }
3081
- function _array_with_holes$d(arr) {
3177
+ function _array_with_holes$f(arr) {
3082
3178
  if (Array.isArray(arr)) return arr;
3083
3179
  }
3084
3180
  function _define_property$j(obj, key, value) {
@@ -3094,7 +3190,7 @@ function _define_property$j(obj, key, value) {
3094
3190
  }
3095
3191
  return obj;
3096
3192
  }
3097
- function _iterable_to_array_limit$d(arr, i) {
3193
+ function _iterable_to_array_limit$f(arr, i) {
3098
3194
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
3099
3195
  if (_i == null) return;
3100
3196
  var _arr = [];
@@ -3118,7 +3214,7 @@ function _iterable_to_array_limit$d(arr, i) {
3118
3214
  }
3119
3215
  return _arr;
3120
3216
  }
3121
- function _non_iterable_rest$d() {
3217
+ function _non_iterable_rest$f() {
3122
3218
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
3123
3219
  }
3124
3220
  function _object_spread$h(target) {
@@ -3136,16 +3232,16 @@ function _object_spread$h(target) {
3136
3232
  }
3137
3233
  return target;
3138
3234
  }
3139
- function _sliced_to_array$d(arr, i) {
3140
- return _array_with_holes$d(arr) || _iterable_to_array_limit$d(arr, i) || _unsupported_iterable_to_array$e(arr, i) || _non_iterable_rest$d();
3235
+ function _sliced_to_array$f(arr, i) {
3236
+ return _array_with_holes$f(arr) || _iterable_to_array_limit$f(arr, i) || _unsupported_iterable_to_array$g(arr, i) || _non_iterable_rest$f();
3141
3237
  }
3142
- function _unsupported_iterable_to_array$e(o, minLen) {
3238
+ function _unsupported_iterable_to_array$g(o, minLen) {
3143
3239
  if (!o) return;
3144
- if (typeof o === "string") return _array_like_to_array$e(o, minLen);
3240
+ if (typeof o === "string") return _array_like_to_array$g(o, minLen);
3145
3241
  var n = Object.prototype.toString.call(o).slice(8, -1);
3146
3242
  if (n === "Object" && o.constructor) n = o.constructor.name;
3147
3243
  if (n === "Map" || n === "Set") return Array.from(n);
3148
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$e(o, minLen);
3244
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$g(o, minLen);
3149
3245
  }
3150
3246
  function Combobox$1(param) {
3151
3247
  var label = param.label, _param_color = param.color, color = _param_color === void 0 ? 'var(--color-text)' : _param_color, labelColor = param.labelColor, dropdownBorderWidth = param.dropdownBorderWidth, dropdownBorderColor = param.dropdownBorderColor, _param_dropdownBackgroundColor = param.dropdownBackgroundColor, dropdownBackgroundColor = _param_dropdownBackgroundColor === void 0 ? 'var(--bg-lv4)' : _param_dropdownBackgroundColor, dropdownItemHighlightBackground = param.dropdownItemHighlightBackground, _param_dropdownItemHighlightColor = param.dropdownItemHighlightColor, dropdownItemHighlightColor = _param_dropdownItemHighlightColor === void 0 ? 'var(--color-text)' : _param_dropdownItemHighlightColor, dropdownSelectedItemColor = param.dropdownSelectedItemColor, dropdownSelectedItemBackground = param.dropdownSelectedItemBackground, buttonHighlightBackground = param.buttonHighlightBackground, _param_buttonHighlightBorderColor = param.buttonHighlightBorderColor, buttonHighlightBorderColor = _param_buttonHighlightBorderColor === void 0 ? 'var(--bg-lv8)' : _param_buttonHighlightBorderColor, _param_buttonBorderColor = param.buttonBorderColor, buttonBorderColor = _param_buttonBorderColor === void 0 ? 'var(--bg-lv7)' : _param_buttonBorderColor, _param_buttonBorderRadius = param.buttonBorderRadius, buttonBorderRadius = _param_buttonBorderRadius === void 0 ? 4 : _param_buttonBorderRadius, _param_buttonBorderWidth = param.buttonBorderWidth, buttonBorderWidth = _param_buttonBorderWidth === void 0 ? 1 : _param_buttonBorderWidth, _param_buttonCornerBevel = param.buttonCornerBevel, buttonCornerBevel = _param_buttonCornerBevel === void 0 ? [
@@ -3159,8 +3255,8 @@ function Combobox$1(param) {
3159
3255
  label: label,
3160
3256
  onChange: onChange
3161
3257
  }), selectedIndexLabel = _useCombobox.selectedIndexLabel, choices = _useCombobox.choices, onMouseEnter = _useCombobox.onMouseEnter, onMouseExit = _useCombobox.onMouseExit, handleChange = _useCombobox.handleChange, onClick = _useCombobox.onClick, incrementValue = _useCombobox.incrementValue, properties = _useCombobox.properties, decrementValue = _useCombobox.decrementValue;
3162
- var _useState = _sliced_to_array$d(useState(), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
3163
- var _useState1 = _sliced_to_array$d(useState(null), 2), hoveredDropdownItem = _useState1[0], setHoveredDropdownItem = _useState1[1];
3258
+ var _useState = _sliced_to_array$f(useState(), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
3259
+ var _useState1 = _sliced_to_array$f(useState(null), 2), hoveredDropdownItem = _useState1[0], setHoveredDropdownItem = _useState1[1];
3164
3260
  // const bevel = buttonCornerBevel?.find((item: number) => item > 0);
3165
3261
  return /*#__PURE__*/ React__default.createElement(Box, {
3166
3262
  className: "ListboxComponent-wrapper",
@@ -3402,12 +3498,12 @@ Combobox.anchorTo = AnchorTo;
3402
3498
  var css_248z$c = ".TextInput {\n pointer-events: auto;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.TextInput::-moz-selection {\n background: transparent;\n}\n.TextInput::selection {\n background: transparent;\n}\n\n.TextInput:disabled {\n -webkit-user-select: none;\n user-select: none;\n}\n\n.isActive .TextInput {\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n}\n";
3403
3499
  styleInject(css_248z$c);
3404
3500
 
3405
- function _array_like_to_array$d(arr, len) {
3501
+ function _array_like_to_array$f(arr, len) {
3406
3502
  if (len == null || len > arr.length) len = arr.length;
3407
3503
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
3408
3504
  return arr2;
3409
3505
  }
3410
- function _array_with_holes$c(arr) {
3506
+ function _array_with_holes$e(arr) {
3411
3507
  if (Array.isArray(arr)) return arr;
3412
3508
  }
3413
3509
  function _define_property$i(obj, key, value) {
@@ -3423,7 +3519,7 @@ function _define_property$i(obj, key, value) {
3423
3519
  }
3424
3520
  return obj;
3425
3521
  }
3426
- function _iterable_to_array_limit$c(arr, i) {
3522
+ function _iterable_to_array_limit$e(arr, i) {
3427
3523
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
3428
3524
  if (_i == null) return;
3429
3525
  var _arr = [];
@@ -3447,7 +3543,7 @@ function _iterable_to_array_limit$c(arr, i) {
3447
3543
  }
3448
3544
  return _arr;
3449
3545
  }
3450
- function _non_iterable_rest$c() {
3546
+ function _non_iterable_rest$e() {
3451
3547
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
3452
3548
  }
3453
3549
  function _object_spread$g(target) {
@@ -3465,16 +3561,16 @@ function _object_spread$g(target) {
3465
3561
  }
3466
3562
  return target;
3467
3563
  }
3468
- function _sliced_to_array$c(arr, i) {
3469
- return _array_with_holes$c(arr) || _iterable_to_array_limit$c(arr, i) || _unsupported_iterable_to_array$d(arr, i) || _non_iterable_rest$c();
3564
+ function _sliced_to_array$e(arr, i) {
3565
+ return _array_with_holes$e(arr) || _iterable_to_array_limit$e(arr, i) || _unsupported_iterable_to_array$f(arr, i) || _non_iterable_rest$e();
3470
3566
  }
3471
- function _unsupported_iterable_to_array$d(o, minLen) {
3567
+ function _unsupported_iterable_to_array$f(o, minLen) {
3472
3568
  if (!o) return;
3473
- if (typeof o === "string") return _array_like_to_array$d(o, minLen);
3569
+ if (typeof o === "string") return _array_like_to_array$f(o, minLen);
3474
3570
  var n = Object.prototype.toString.call(o).slice(8, -1);
3475
3571
  if (n === "Object" && o.constructor) n = o.constructor.name;
3476
3572
  if (n === "Map" || n === "Set") return Array.from(n);
3477
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
3573
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$f(o, minLen);
3478
3574
  }
3479
3575
  // import { decimalToPercent, percentToDecimal } from '../../common/utils';
3480
3576
  // import debounce from 'lodash.debounce';
@@ -3486,9 +3582,9 @@ var InputTypes = /*#__PURE__*/ function(InputTypes) {
3486
3582
  function Input(param) {
3487
3583
  var onComplete = param.onComplete, value = param.value; param.min; param.max; var _param_fontSize = param.fontSize, fontSize = _param_fontSize === void 0 ? FontSizes.xSmall : _param_fontSize, style = param.style, outerGlowRadius = param.outerGlowRadius, outerGlowColor = param.outerGlowColor; param.blur; var className = param.className, isDisabled = param.isDisabled, id = param.id, _param_textColor = param.textColor, textColor = _param_textColor === void 0 ? 'var(--color-text)' : _param_textColor, _param_highlightColor = param.highlightColor, highlightColor = _param_highlightColor === void 0 ? 'var(--color-brand)' : _param_highlightColor, _param_textAlign = param.textAlign, textAlign = _param_textAlign === void 0 ? TextAlign.center : _param_textAlign;
3488
3584
  var _inputRef_current;
3489
- var _useState = _sliced_to_array$c(useState(value), 2), internalValue = _useState[0], setInternalValue = _useState[1];
3585
+ var _useState = _sliced_to_array$e(useState(value), 2), internalValue = _useState[0], setInternalValue = _useState[1];
3490
3586
  // const [hasError, setHasError] = useState<boolean>(false);
3491
- var _useState1 = _sliced_to_array$c(useState(false), 2), isHighlighted = _useState1[0], setIsHighlighted = _useState1[1];
3587
+ var _useState1 = _sliced_to_array$e(useState(false), 2), isHighlighted = _useState1[0], setIsHighlighted = _useState1[1];
3492
3588
  var valueRef = useRef(null);
3493
3589
  var isLocalhost = window.location.hostname === 'localhost';
3494
3590
  // Sets up listeners to handle changes on the backend
@@ -3676,15 +3772,15 @@ var TrackWidths = /*#__PURE__*/ function(TrackWidths) {
3676
3772
  return TrackWidths;
3677
3773
  }({});
3678
3774
 
3679
- function _array_like_to_array$c(arr, len) {
3775
+ function _array_like_to_array$e(arr, len) {
3680
3776
  if (len == null || len > arr.length) len = arr.length;
3681
3777
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
3682
3778
  return arr2;
3683
3779
  }
3684
- function _array_with_holes$b(arr) {
3780
+ function _array_with_holes$d(arr) {
3685
3781
  if (Array.isArray(arr)) return arr;
3686
3782
  }
3687
- function _iterable_to_array_limit$b(arr, i) {
3783
+ function _iterable_to_array_limit$d(arr, i) {
3688
3784
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
3689
3785
  if (_i == null) return;
3690
3786
  var _arr = [];
@@ -3708,19 +3804,19 @@ function _iterable_to_array_limit$b(arr, i) {
3708
3804
  }
3709
3805
  return _arr;
3710
3806
  }
3711
- function _non_iterable_rest$b() {
3807
+ function _non_iterable_rest$d() {
3712
3808
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
3713
3809
  }
3714
- function _sliced_to_array$b(arr, i) {
3715
- return _array_with_holes$b(arr) || _iterable_to_array_limit$b(arr, i) || _unsupported_iterable_to_array$c(arr, i) || _non_iterable_rest$b();
3810
+ function _sliced_to_array$d(arr, i) {
3811
+ return _array_with_holes$d(arr) || _iterable_to_array_limit$d(arr, i) || _unsupported_iterable_to_array$e(arr, i) || _non_iterable_rest$d();
3716
3812
  }
3717
- function _unsupported_iterable_to_array$c(o, minLen) {
3813
+ function _unsupported_iterable_to_array$e(o, minLen) {
3718
3814
  if (!o) return;
3719
- if (typeof o === "string") return _array_like_to_array$c(o, minLen);
3815
+ if (typeof o === "string") return _array_like_to_array$e(o, minLen);
3720
3816
  var n = Object.prototype.toString.call(o).slice(8, -1);
3721
3817
  if (n === "Object" && o.constructor) n = o.constructor.name;
3722
3818
  if (n === "Map" || n === "Set") return Array.from(n);
3723
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
3819
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$e(o, minLen);
3724
3820
  }
3725
3821
  // 20.0f, 15000.0f, 0.1f, 0.7f),800.0f
3726
3822
  // ValueType rangeStart, ValueType rangeEnd, ValueType intervalValue, ValueType skewFactor, bool useSymmetricSkew=false)
@@ -3730,7 +3826,7 @@ var useSlider = function(param) {
3730
3826
  end: 15000,
3731
3827
  interval: 0.1,
3732
3828
  skew: 0.7
3733
- } : _param_mockProperties, isRandomizable = param.isRandomizable, randomizerObject = param.randomizerObject, resetterObject = param.resetterObject, _param_isControlGroup = param.isControlGroup, isControlGroup = _param_isControlGroup === void 0 ? false : _param_isControlGroup, _param_orientation = param.orientation, orientation = _param_orientation === void 0 ? Orientation.vertical : _param_orientation, _param_dragOrientation = param.dragOrientation, dragOrientation = _param_dragOrientation === void 0 ? Orientation.vertical : _param_dragOrientation, _param_mockInitialNormalisedValue = param.mockInitialNormalisedValue, mockInitialNormalisedValue = _param_mockInitialNormalisedValue === void 0 ? 0.0 : _param_mockInitialNormalisedValue, _param_updateModSlotPreview = param.updateModSlotPreview, updateModSlotPreview = _param_updateModSlotPreview === void 0 ? true : _param_updateModSlotPreview, onChange = param.onChange; param.sliderElementRef; var _param_isDisabled = param.isDisabled, isDisabled = _param_isDisabled === void 0 ? false : _param_isDisabled;
3829
+ } : _param_mockProperties; param.marks; var isRandomizable = param.isRandomizable, randomizerObject = param.randomizerObject, resetterObject = param.resetterObject, _param_isControlGroup = param.isControlGroup, isControlGroup = _param_isControlGroup === void 0 ? false : _param_isControlGroup, _param_orientation = param.orientation, orientation = _param_orientation === void 0 ? Orientation.vertical : _param_orientation, _param_dragOrientation = param.dragOrientation, dragOrientation = _param_dragOrientation === void 0 ? Orientation.vertical : _param_dragOrientation, _param_mockInitialNormalisedValue = param.mockInitialNormalisedValue, mockInitialNormalisedValue = _param_mockInitialNormalisedValue === void 0 ? 0.0 : _param_mockInitialNormalisedValue, _param_updateModSlotPreview = param.updateModSlotPreview, updateModSlotPreview = _param_updateModSlotPreview === void 0 ? true : _param_updateModSlotPreview, onChange = param.onChange; param.sliderElementRef; var _param_isDisabled = param.isDisabled, isDisabled = _param_isDisabled === void 0 ? false : _param_isDisabled;
3734
3830
  var _window_location, _window;
3735
3831
  // const sliderState: JuceSlider = Juce.getSliderState(id);
3736
3832
  // if isLocalhost is true, the front end app is running outside of JUCE in a browser.
@@ -3744,9 +3840,9 @@ var useSlider = function(param) {
3744
3840
  * AudioProcessorParameter::getValue() (C++).
3745
3841
  */ // See https://github.com/juce-framework/JUCE/blob/51d11a2be6d5c97ccf12b4e5e827006e19f0555a/modules/juce_gui_extra/native/javascript/index.js#L230C1-L238C6
3746
3842
  // NOTE: We can think of this as a percentage value, in 0 to 1 format
3747
- var _useState = _sliced_to_array$b(useState(0), 2), scaledValue = _useState[0], setScaledValue = _useState[1];
3843
+ var _useState = _sliced_to_array$d(useState(0), 2), scaledValue = _useState[0], setScaledValue = _useState[1];
3748
3844
  // const [normalisedValue, setNormalisedValue] = useState(0);
3749
- var _useState1 = _sliced_to_array$b(useState(), 2), properties = _useState1[0], setProperties = _useState1[1];
3845
+ var _useState1 = _sliced_to_array$d(useState(), 2), properties = _useState1[0], setProperties = _useState1[1];
3750
3846
  var scaledValueRef = useRef(null);
3751
3847
  var normalisedValueRef = useRef(null);
3752
3848
  var sliderState = Juce.getSliderState(id);
@@ -3916,8 +4012,9 @@ var useSlider = function(param) {
3916
4012
  },
3917
4013
  onDrag: function(param) {
3918
4014
  var event = param.event, movement = param.movement;
3919
- var _event_target;
3920
- var rect = event === null || event === void 0 ? void 0 : (_event_target = event.target) === null || _event_target === void 0 ? void 0 : _event_target.getBoundingClientRect();
4015
+ var parentSlider = event === null || event === void 0 ? void 0 : event.target.closest('[data-sliderElement]');
4016
+ var sliderTarget = (event === null || event === void 0 ? void 0 : event.target.dataset.handle) ? parentSlider : event === null || event === void 0 ? void 0 : event.target;
4017
+ var rect = sliderTarget === null || sliderTarget === void 0 ? void 0 : sliderTarget.getBoundingClientRect();
3921
4018
  var y = (event === null || event === void 0 ? void 0 : event.clientY) - rect.top;
3922
4019
  var x = (event === null || event === void 0 ? void 0 : event.clientX) - rect.left;
3923
4020
  // Sets the slider as a mod slot preview
@@ -4036,15 +4133,15 @@ styleInject(css_248z$b);
4036
4133
  var css_248z$a = "";
4037
4134
  styleInject(css_248z$a);
4038
4135
 
4039
- function _array_like_to_array$b(arr, len) {
4136
+ function _array_like_to_array$d(arr, len) {
4040
4137
  if (len == null || len > arr.length) len = arr.length;
4041
4138
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4042
4139
  return arr2;
4043
4140
  }
4044
- function _array_with_holes$a(arr) {
4141
+ function _array_with_holes$c(arr) {
4045
4142
  if (Array.isArray(arr)) return arr;
4046
4143
  }
4047
- function _iterable_to_array_limit$a(arr, i) {
4144
+ function _iterable_to_array_limit$c(arr, i) {
4048
4145
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
4049
4146
  if (_i == null) return;
4050
4147
  var _arr = [];
@@ -4068,19 +4165,19 @@ function _iterable_to_array_limit$a(arr, i) {
4068
4165
  }
4069
4166
  return _arr;
4070
4167
  }
4071
- function _non_iterable_rest$a() {
4168
+ function _non_iterable_rest$c() {
4072
4169
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
4073
4170
  }
4074
- function _sliced_to_array$a(arr, i) {
4075
- return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$b(arr, i) || _non_iterable_rest$a();
4171
+ function _sliced_to_array$c(arr, i) {
4172
+ return _array_with_holes$c(arr) || _iterable_to_array_limit$c(arr, i) || _unsupported_iterable_to_array$d(arr, i) || _non_iterable_rest$c();
4076
4173
  }
4077
- function _unsupported_iterable_to_array$b(o, minLen) {
4174
+ function _unsupported_iterable_to_array$d(o, minLen) {
4078
4175
  if (!o) return;
4079
- if (typeof o === "string") return _array_like_to_array$b(o, minLen);
4176
+ if (typeof o === "string") return _array_like_to_array$d(o, minLen);
4080
4177
  var n = Object.prototype.toString.call(o).slice(8, -1);
4081
4178
  if (n === "Object" && o.constructor) n = o.constructor.name;
4082
4179
  if (n === "Map" || n === "Set") return Array.from(n);
4083
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
4180
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
4084
4181
  }
4085
4182
  function ControlGroup(param) {
4086
4183
  var id = param.id, _param_isDisabled = param.isDisabled, isDisabled = _param_isDisabled === void 0 ? false : _param_isDisabled, className = param.className, onChangeActiveState = param.onChangeActiveState, children = param.children, _param_width = param.width, width = _param_width === void 0 ? 'auto' : _param_width;
@@ -4090,7 +4187,7 @@ function ControlGroup(param) {
4090
4187
  // <Input id={id-input}></Input>
4091
4188
  // </ControlGroup>
4092
4189
  var groupId = "".concat(id, "-control-group");
4093
- var _useState = _sliced_to_array$a(useState(false), 2), isActive = _useState[0], setIsActive = _useState[1];
4190
+ var _useState = _sliced_to_array$c(useState(false), 2), isActive = _useState[0], setIsActive = _useState[1];
4094
4191
  var sliderState = Juce.getSliderState(id);
4095
4192
  var clickListener = function(event) {
4096
4193
  if (!isDisabled) {
@@ -4344,9 +4441,9 @@ var InnerCircle = function(param) {
4344
4441
  var BarSliderHandle = function(param) {
4345
4442
  var _param_handleFillColor = param.handleFillColor, handleFillColor = _param_handleFillColor === void 0 ? 'var(--bg-lv2)' : _param_handleFillColor, _param_handleStrokeColor = param.handleStrokeColor, handleStrokeColor = _param_handleStrokeColor === void 0 ? 'var(--bg-lv12)' : _param_handleStrokeColor, _param_strokeWidth = param.strokeWidth, strokeWidth = _param_strokeWidth === void 0 ? 3 : _param_strokeWidth, _param_width = param.width, width = _param_width === void 0 ? 18 : _param_width, outerGlowColors = param.outerGlowColors, outerGlowRadius = param.outerGlowRadius;
4346
4443
  return /*#__PURE__*/ React__default.createElement("svg", {
4347
- className: "BarSliderHandle",
4348
4444
  width: "".concat(width, "px"),
4349
4445
  height: "".concat(width, "px"),
4446
+ "data-handle": 'handle',
4350
4447
  // style={{
4351
4448
  // filter: `drop-shadow(${
4352
4449
  // outerGlowRadius
@@ -4360,6 +4457,19 @@ var BarSliderHandle = function(param) {
4360
4457
  }, /*#__PURE__*/ React__default.createElement("circle", {
4361
4458
  id: "BarSliderHandle",
4362
4459
  className: "BarSliderHandle",
4460
+ "data-handle": true,
4461
+ onClick: function(e) {
4462
+ return e === null || e === void 0 ? void 0 : e.preventDefault();
4463
+ },
4464
+ onMouseDown: function(e) {
4465
+ return e === null || e === void 0 ? void 0 : e.preventDefault();
4466
+ },
4467
+ onMouseMove: function(e) {
4468
+ return e === null || e === void 0 ? void 0 : e.preventDefault();
4469
+ },
4470
+ onDrag: function(e) {
4471
+ return e === null || e === void 0 ? void 0 : e.preventDefault();
4472
+ },
4363
4473
  r: "6px",
4364
4474
  cx: '50%',
4365
4475
  cy: '50%',
@@ -4866,9 +4976,17 @@ RotarySlider.handleShape = RotarySliderHandleShapes;
4866
4976
  RotarySlider.gradient = GradientStyles;
4867
4977
  RotarySlider.trackWidth = TrackWidths;
4868
4978
 
4869
- var css_248z$8 = ".BarSlider-innerWrapper:hover {\n cursor: pointer;\n}\n\n.BarSlider-Track {\n touch-action: none;\n position: relative;\n width: 100%;\n height: 100%;\n max-height: 100%;\n max-width: 100%;\n background-color: var(--bg-lv5);\n}\n\n.BarSlider-Track.isHighlighted {\n background-color: var(--bg-lv6);\n}\n.Barslider-IndicatorLineWrapper,\n.BarSlider-HandleWrapper {\n position: absolute;\n pointer-events: none;\n}\n\n.BarSlider-IndicatorLine {\n position: absolute;\n top: 0;\n /* left: 0; */\n right: 0;\n bottom: 0;\n pointer-events: none;\n}\n.BarSlider-Handle {\n position: absolute;\n pointer-events: none;\n}\n.Barslider-IndicatorLineWrapper {\n /* border-radius: var(--trackBorderRadius); */\n overflow: hidden;\n}\n\n.BarSlider-Input {\n font-weight: bold;\n width: 100%;\n}\n\n.BarSlider-Input.includeValueInHeightIsFalse {\n position: absolute;\n bottom: -1.7em;\n left: 0;\n right: 0;\n z-index: 10;\n}\n";
4979
+ var css_248z$8 = ".BarSlider-innerWrapper:hover {\n cursor: pointer;\n}\n\n.BarSlider-Track {\n touch-action: none;\n position: relative;\n width: 100%;\n height: 100%;\n max-height: 100%;\n max-width: 100%;\n background-color: var(--bg-lv5);\n}\n\n.BarSlider-Track.isHighlighted {\n background-color: var(--bg-lv6);\n}\n.Barslider-IndicatorLineWrapper,\n.BarSlider-HandleWrapper {\n position: absolute;\n pointer-events: none;\n}\n\n.BarSlider-IndicatorLine {\n position: absolute;\n top: 0;\n /* left: 0; */\n right: 0;\n bottom: 0;\n pointer-events: none;\n}\n.BarSlider-Handle {\n position: absolute;\n pointer-events: none;\n}\n\n.BarSliderHandle {\n pointer-events: auto;\n}\n.Barslider-IndicatorLineWrapper {\n /* border-radius: var(--trackBorderRadius); */\n overflow: hidden;\n}\n\n.BarSlider-Input {\n font-weight: bold;\n width: 100%;\n}\n\n.BarSlider-Input.includeValueInHeightIsFalse {\n position: absolute;\n bottom: -1.7em;\n left: 0;\n right: 0;\n z-index: 10;\n}\n";
4870
4980
  styleInject(css_248z$8);
4871
4981
 
4982
+ function _array_like_to_array$c(arr, len) {
4983
+ if (len == null || len > arr.length) len = arr.length;
4984
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4985
+ return arr2;
4986
+ }
4987
+ function _array_with_holes$b(arr) {
4988
+ if (Array.isArray(arr)) return arr;
4989
+ }
4872
4990
  function _define_property$d(obj, key, value) {
4873
4991
  if (key in obj) {
4874
4992
  Object.defineProperty(obj, key, {
@@ -4882,6 +5000,33 @@ function _define_property$d(obj, key, value) {
4882
5000
  }
4883
5001
  return obj;
4884
5002
  }
5003
+ function _iterable_to_array_limit$b(arr, i) {
5004
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
5005
+ if (_i == null) return;
5006
+ var _arr = [];
5007
+ var _n = true;
5008
+ var _d = false;
5009
+ var _s, _e;
5010
+ try {
5011
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
5012
+ _arr.push(_s.value);
5013
+ if (i && _arr.length === i) break;
5014
+ }
5015
+ } catch (err) {
5016
+ _d = true;
5017
+ _e = err;
5018
+ } finally{
5019
+ try {
5020
+ if (!_n && _i["return"] != null) _i["return"]();
5021
+ } finally{
5022
+ if (_d) throw _e;
5023
+ }
5024
+ }
5025
+ return _arr;
5026
+ }
5027
+ function _non_iterable_rest$b() {
5028
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
5029
+ }
4885
5030
  function _object_spread$c(target) {
4886
5031
  for(var i = 1; i < arguments.length; i++){
4887
5032
  var source = arguments[i] != null ? arguments[i] : {};
@@ -4897,8 +5042,19 @@ function _object_spread$c(target) {
4897
5042
  }
4898
5043
  return target;
4899
5044
  }
5045
+ function _sliced_to_array$b(arr, i) {
5046
+ return _array_with_holes$b(arr) || _iterable_to_array_limit$b(arr, i) || _unsupported_iterable_to_array$c(arr, i) || _non_iterable_rest$b();
5047
+ }
5048
+ function _unsupported_iterable_to_array$c(o, minLen) {
5049
+ if (!o) return;
5050
+ if (typeof o === "string") return _array_like_to_array$c(o, minLen);
5051
+ var n = Object.prototype.toString.call(o).slice(8, -1);
5052
+ if (n === "Object" && o.constructor) n = o.constructor.name;
5053
+ if (n === "Map" || n === "Set") return Array.from(n);
5054
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
5055
+ }
4900
5056
  function Slider$1(param) {
4901
- var _param_polarity = param.polarity, polarity = _param_polarity === void 0 ? Polarity.unipolar : _param_polarity, _param_orientation = param.orientation, orientation = _param_orientation === void 0 ? Orientation.vertical : _param_orientation, dragOrientation = param.dragOrientation, _param_isRandomizable = param.isRandomizable, isRandomizable = _param_isRandomizable === void 0 ? false : _param_isRandomizable, randomizerObject = param.randomizerObject, _param_isStandalone = param.isStandalone, isStandalone = _param_isStandalone === void 0 ? true : _param_isStandalone, _param_isHighlighted = param.isHighlighted, isHighlighted = _param_isHighlighted === void 0 ? false : _param_isHighlighted, _param_showValue = param.showValue, showValue = _param_showValue === void 0 ? true : _param_showValue, _param_showHandle = param.showHandle, showHandle = _param_showHandle === void 0 ? true : _param_showHandle, _param_showLabel = param.showLabel, showLabel = _param_showLabel === void 0 ? true : _param_showLabel, _param_showInsetBoxShadow = param.showInsetBoxShadow, showInsetBoxShadow = _param_showInsetBoxShadow === void 0 ? true : _param_showInsetBoxShadow, resetterObject = param.resetterObject, className = param.className, id = param.id, width = param.width, _param_height = param.height, height = _param_height === void 0 ? '100%' : _param_height, onChange = param.onChange, outerGlowRadius = param.outerGlowRadius, outerGlowColors = param.outerGlowColors, _param_trackBorderRadius = param.trackBorderRadius, trackBorderRadius = _param_trackBorderRadius === void 0 ? 20 : _param_trackBorderRadius, blur = param.blur, style = param.style, _param_indicatorLineColor = param.indicatorLineColor, indicatorLineColor = _param_indicatorLineColor === void 0 ? 'var(--color-brand)' : _param_indicatorLineColor, indicatorLineGradient = param.indicatorLineGradient, _param_trackColor = param.trackColor, trackColor = _param_trackColor === void 0 ? 'var(--bg-lv3)' : _param_trackColor, trackStrokeColor = param.trackStrokeColor, handleFillColor = param.handleFillColor, handleStrokeColor = param.handleStrokeColor, _param_trackWidth = param.trackWidth, trackWidth = _param_trackWidth === void 0 ? TrackWidths.small : _param_trackWidth, label = param.label, labelColor = param.labelColor, _param_inputHighlightColor = param.inputHighlightColor, inputHighlightColor = _param_inputHighlightColor === void 0 ? 'var(--color-brand)' : _param_inputHighlightColor, _param_includeValueInHeight = param.includeValueInHeight, includeValueInHeight = _param_includeValueInHeight === void 0 ? true : _param_includeValueInHeight, _param_mockInitialNormalisedValue = param.// Mocks the initial scaled value of the slider for web veiws outside of JUCE
5057
+ var _param_polarity = param.polarity, polarity = _param_polarity === void 0 ? Polarity.unipolar : _param_polarity, _param_orientation = param.orientation, orientation = _param_orientation === void 0 ? Orientation.vertical : _param_orientation, dragOrientation = param.dragOrientation, _param_isRandomizable = param.isRandomizable, isRandomizable = _param_isRandomizable === void 0 ? false : _param_isRandomizable, randomizerObject = param.randomizerObject, _param_isStandalone = param.isStandalone, isStandalone = _param_isStandalone === void 0 ? true : _param_isStandalone, _param_isHighlighted = param.isHighlighted, isHighlighted = _param_isHighlighted === void 0 ? false : _param_isHighlighted, _param_showValue = param.showValue, showValue = _param_showValue === void 0 ? true : _param_showValue, _param_showHandle = param.showHandle, showHandle = _param_showHandle === void 0 ? true : _param_showHandle, _param_showLabel = param.showLabel, showLabel = _param_showLabel === void 0 ? true : _param_showLabel, _param_showInsetBoxShadow = param.showInsetBoxShadow, showInsetBoxShadow = _param_showInsetBoxShadow === void 0 ? true : _param_showInsetBoxShadow, resetterObject = param.resetterObject, className = param.className, id = param.id, width = param.width, _param_height = param.height, height = _param_height === void 0 ? '100%' : _param_height, onChange = param.onChange, outerGlowRadius = param.outerGlowRadius, outerGlowColors = param.outerGlowColors, _param_trackBorderRadius = param.trackBorderRadius, trackBorderRadius = _param_trackBorderRadius === void 0 ? 20 : _param_trackBorderRadius, blur = param.blur, style = param.style, _param_indicatorLineColor = param.indicatorLineColor, indicatorLineColor = _param_indicatorLineColor === void 0 ? 'var(--color-brand)' : _param_indicatorLineColor, indicatorLineGradient = param.indicatorLineGradient, _param_trackColor = param.trackColor, trackColor = _param_trackColor === void 0 ? 'var(--bg-lv3)' : _param_trackColor, _param_markColor = param.markColor, markColor = _param_markColor === void 0 ? 'var(--bg-lv7)' : _param_markColor, _param_markHighlightColor = param.markHighlightColor, markHighlightColor = _param_markHighlightColor === void 0 ? 'var(--color-text)' : _param_markHighlightColor, trackStrokeColor = param.trackStrokeColor, handleFillColor = param.handleFillColor, handleStrokeColor = param.handleStrokeColor, _param_trackWidth = param.trackWidth, trackWidth = _param_trackWidth === void 0 ? TrackWidths.small : _param_trackWidth, label = param.label, labelColor = param.labelColor, _param_marks = param.marks, marks = _param_marks === void 0 ? [] : _param_marks, _param_inputHighlightColor = param.inputHighlightColor, inputHighlightColor = _param_inputHighlightColor === void 0 ? 'var(--color-brand)' : _param_inputHighlightColor, _param_includeValueInHeight = param.includeValueInHeight, includeValueInHeight = _param_includeValueInHeight === void 0 ? true : _param_includeValueInHeight, _param_mockInitialNormalisedValue = param.// Mocks the initial scaled value of the slider for web veiws outside of JUCE
4902
5058
  mockInitialNormalisedValue, mockInitialNormalisedValue = _param_mockInitialNormalisedValue === void 0 ? 0 : _param_mockInitialNormalisedValue, _param_mockProperties = param.mockProperties, mockProperties = _param_mockProperties === void 0 ? {
4903
5059
  start: 20.0,
4904
5060
  end: 15000.0,
@@ -4910,6 +5066,7 @@ function Slider$1(param) {
4910
5066
  var isVertical = orientation === Orientation.vertical;
4911
5067
  var handleWidth = 18;
4912
5068
  var defaultDragOrientation = orientation;
5069
+ var _useState = _sliced_to_array$b(useState(), 2), hoveredMark = _useState[0], setHoveredMark = _useState[1];
4913
5070
  var trackWidthMap = {
4914
5071
  small: 5,
4915
5072
  large: 10
@@ -4937,10 +5094,15 @@ function Slider$1(param) {
4937
5094
  randomizerObject: randomizerObject,
4938
5095
  orientation: orientation,
4939
5096
  dragOrientation: dragOrientation || defaultDragOrientation,
4940
- sliderElementRef: sliderElementRef
5097
+ sliderElementRef: sliderElementRef,
5098
+ marks: marks
4941
5099
  }), bindBarSliderDrag = _useSlider.bindBarSliderDrag, bindSequenceBarSliderDrag = _useSlider.bindSequenceBarSliderDrag, // bindDrag,
4942
5100
  normalisedValue = _useSlider.normalisedValue, scaledValue = _useSlider.scaledValue, setNormalisedState = _useSlider.setNormalisedState, properties = _useSlider.properties;
4943
5101
  var drag = isStandalone ? bindBarSliderDrag : bindSequenceBarSliderDrag;
5102
+ // const handleRef = useRef(null);
5103
+ // useEffect(() => {
5104
+ // console.log(normalisedValue, 'NORMALIZEDVAL');
5105
+ // }, [normalisedValue]);
4944
5106
  return /*#__PURE__*/ React__default.createElement(Box, {
4945
5107
  flexDirection: Box.flexDirection.column,
4946
5108
  justifyContent: Box.justifyContent.center,
@@ -4948,7 +5110,7 @@ function Slider$1(param) {
4948
5110
  className: classnames('BarSlider', isVertical && 'BarSlider--isVertical', isHorizontal && 'BarSlider--isHorizontal', className),
4949
5111
  id: id,
4950
5112
  ref: sliderElementRef,
4951
- gap: Box.gap.mediumSmall,
5113
+ gap: Box.gap.xSmall,
4952
5114
  height: isVertical ? height : '100%',
4953
5115
  width: isHorizontal ? width : width !== null && width !== void 0 ? width : '100%',
4954
5116
  style: {
@@ -4963,13 +5125,73 @@ function Slider$1(param) {
4963
5125
  blur: blur
4964
5126
  }) : null, polarity === Polarity.bipolar && /*#__PURE__*/ React__default.createElement("div", {
4965
5127
  className: 'Slider-center-marker'
4966
- }), /*#__PURE__*/ React__default.createElement(Box, _object_spread$c({
5128
+ }), /*#__PURE__*/ React__default.createElement(Box, {
5129
+ style: {
5130
+ position: 'relative'
5131
+ },
5132
+ fullHeight: true
5133
+ }, marks && (marks === null || marks === void 0 ? void 0 : marks.length) > 0 ? marks === null || marks === void 0 ? void 0 : marks.map(function(item) {
5134
+ return /*#__PURE__*/ React__default.createElement(Box, {
5135
+ width: '2.5rem',
5136
+ height: '2rem',
5137
+ flexDirection: Box.flexDirection.column,
5138
+ style: {
5139
+ position: 'absolute',
5140
+ pointerEvents: 'none',
5141
+ top: "1px",
5142
+ height: '2rem',
5143
+ width: '2rem',
5144
+ left: "calc(".concat((item === null || item === void 0 ? void 0 : item.value) * 100, "% - 1rem)"),
5145
+ zIndex: 1
5146
+ }
5147
+ }, /*#__PURE__*/ React__default.createElement("div", {
5148
+ className: "BarSlider-Mark",
5149
+ style: {
5150
+ width: '5px',
5151
+ height: '5px',
5152
+ borderRadius: '100%',
5153
+ background: hoveredMark === (item === null || item === void 0 ? void 0 : item.label) ? markHighlightColor : markColor,
5154
+ zIndex: 1,
5155
+ cursor: 'pointer',
5156
+ pointerEvents: 'auto'
5157
+ },
5158
+ onMouseEnter: function() {
5159
+ return setHoveredMark(item === null || item === void 0 ? void 0 : item.label);
5160
+ },
5161
+ onMouseLeave: function() {
5162
+ return setHoveredMark(null);
5163
+ },
5164
+ onClick: function() {
5165
+ setNormalisedState(item === null || item === void 0 ? void 0 : item.value);
5166
+ }
5167
+ }), (item === null || item === void 0 ? void 0 : item.label) ? /*#__PURE__*/ React__default.createElement(Label, {
5168
+ id: item === null || item === void 0 ? void 0 : item.label,
5169
+ value: item === null || item === void 0 ? void 0 : item.label,
5170
+ fontSize: Label.fontSize.xXSmall,
5171
+ onMouseEnter: function() {
5172
+ return setHoveredMark(item === null || item === void 0 ? void 0 : item.label);
5173
+ },
5174
+ onMouseLeave: function() {
5175
+ return setHoveredMark(null);
5176
+ },
5177
+ color: +normalisedValue.toFixed(2) === +(item === null || item === void 0 ? void 0 : item.value.toFixed(2)) || hoveredMark === (item === null || item === void 0 ? void 0 : item.label) ? markHighlightColor : markColor,
5178
+ highlightColor: markHighlightColor,
5179
+ onClick: function() {
5180
+ setNormalisedState(item === null || item === void 0 ? void 0 : item.value);
5181
+ },
5182
+ style: {
5183
+ cursor: 'pointer',
5184
+ pointerEvents: 'auto'
5185
+ }
5186
+ }) : null);
5187
+ }) : null, /*#__PURE__*/ React__default.createElement(Box, _object_spread$c({
4967
5188
  className: "BarSlider-innerWrapper",
4968
5189
  height: isHorizontal && showHandle ? "".concat(handleWidth, "px") : isHorizontal && !showHandle ? 'auto' : '100%',
4969
5190
  width: isVertical && showHandle ? "".concat(handleWidth, "px") : '100%',
4970
5191
  style: {
4971
5192
  filter: "blur(".concat(blur, "px)")
4972
- }
5193
+ },
5194
+ "data-sliderElement": "true"
4973
5195
  }, drag()), /*#__PURE__*/ React__default.createElement("div", {
4974
5196
  className: classnames('BarSlider-Track', isHighlighted && 'isHighlighted'),
4975
5197
  // onMouseEnter={onMouseEnter}
@@ -5013,7 +5235,8 @@ function Slider$1(param) {
5013
5235
  top: isHorizontal ? 0 : handleMargin / 2,
5014
5236
  left: isHorizontal ? handleMargin / 2 : 0,
5015
5237
  width: isHorizontal ? "calc(100% - ".concat(handleMargin, "px)") : '100%',
5016
- height: isHorizontal ? '100%' : "calc(100% - ".concat(handleMargin, "px)")
5238
+ height: isHorizontal ? '100%' : "calc(100% - ".concat(handleMargin, "px)"),
5239
+ zIndex: 2
5017
5240
  }
5018
5241
  }, /*#__PURE__*/ React__default.createElement("div", {
5019
5242
  className: "BarSlider-Handle",
@@ -5027,7 +5250,7 @@ function Slider$1(param) {
5027
5250
  handleStrokeColor: handleStrokeColor,
5028
5251
  strokeWidth: 5,
5029
5252
  width: handleWidth
5030
- }))) : null)), showValue ? /*#__PURE__*/ React__default.createElement(Input, {
5253
+ }))) : null))), showValue ? /*#__PURE__*/ React__default.createElement(Input, {
5031
5254
  className: "BarSlider-Input ".concat(includeValueInHeight ? 'includeValueInHeightIsTrue' : 'includeValueInHeightIsFalse'),
5032
5255
  value: scaledValue,
5033
5256
  id: id,
@@ -5144,7 +5367,7 @@ var SliderVariants = /*#__PURE__*/ function(SliderVariants) {
5144
5367
  }({});
5145
5368
  function Slider(param) {
5146
5369
  var _param_variant = param.variant, variant = _param_variant === void 0 ? "rotary" : _param_variant, _param_polarity = param.polarity, polarity = _param_polarity === void 0 ? Polarity.unipolar : _param_polarity, _param_inputHighlightColor = param.inputHighlightColor, inputHighlightColor = _param_inputHighlightColor === void 0 ? 'var(--color-brand)' : _param_inputHighlightColor, label = param.label, labelColor = param.labelColor, showLabel = param.showLabel, indicatorLineColor = param.indicatorLineColor, trackColor = param.trackColor, trackStrokeColor = param.trackStrokeColor, handleStrokeColor = param.handleStrokeColor, handleFillColor = param.handleFillColor, handleShape = param.handleShape, showHandle = param.showHandle, showInsetBoxShadow = param.showInsetBoxShadow, indicatorLineGradient = param.indicatorLineGradient, outerGlowRadius = param.outerGlowRadius, outerGlowColors = param.outerGlowColors, blur = param.blur, trackWidth = param.trackWidth, trackBorderRadius = param.trackBorderRadius, className = param.className, id = param.id, width = param.width, height = param.height, onChange = param.onChange, indicatorId = param.indicatorId, innerCircleGap = param.innerCircleGap, _param_size = param.size, size = _param_size === void 0 ? RotarySliderSizes.small : _param_size, _param_mockInitialNormalisedValue = param.// trackOffset = 0,
5147
- mockInitialNormalisedValue, mockInitialNormalisedValue = _param_mockInitialNormalisedValue === void 0 ? 0 : _param_mockInitialNormalisedValue, showValue = param.showValue, includeValueInHeight = param.includeValueInHeight, isRandomizable = param.isRandomizable, randomizerObject = param.randomizerObject, resetterObject = param.resetterObject, rotationBehavior = param.rotationBehavior, orientation = param.orientation, dragOrientation = param.dragOrientation, isStandalone = param.isStandalone, isHighlighted = param.isHighlighted; param.mockProperties; param.style;
5370
+ mockInitialNormalisedValue, mockInitialNormalisedValue = _param_mockInitialNormalisedValue === void 0 ? 0 : _param_mockInitialNormalisedValue, showValue = param.showValue, includeValueInHeight = param.includeValueInHeight, marks = param.marks, isRandomizable = param.isRandomizable, randomizerObject = param.randomizerObject, resetterObject = param.resetterObject, rotationBehavior = param.rotationBehavior, orientation = param.orientation, dragOrientation = param.dragOrientation, isStandalone = param.isStandalone, isHighlighted = param.isHighlighted; param.mockProperties; param.style;
5148
5371
  return /*#__PURE__*/ React__default.createElement(React__default.Fragment, null, variant === "rotary" ? /*#__PURE__*/ React__default.createElement(RotarySlider, {
5149
5372
  polarity: polarity,
5150
5373
  label: label,
@@ -5226,6 +5449,7 @@ function Slider(param) {
5226
5449
  id: id,
5227
5450
  width: width,
5228
5451
  height: height,
5452
+ marks: marks,
5229
5453
  trackWidth: trackWidth,
5230
5454
  onChange: onChange,
5231
5455
  outerGlowRadius: outerGlowRadius,
@@ -6078,12 +6302,12 @@ styleInject(css_248z$5);
6078
6302
  var css_248z$4 = ".PresetManagerContainer {\n width: 100%;\n height: 100%;\n background-color: var(--bg-lv1);\n color: var(--color-text);\n}\n\n.PresetManagerButton {\n width: 100%;\n height: 100%;\n max-width: 300px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n position: relative;\n cursor: pointer;\n font-family: var(--font-leagueSpartan);\n}\n.PresetManagerButtonLabel {\n cursor: pointer;\n text-align: center;\n font-family: var(--font-leagueSpartan);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: 225px;\n display: inline-block;\n vertical-align: middle;\n height: 1rem;\n line-height: 1.25;\n /* position: relative; */\n &:hover,\n &:active {\n background: var(--color-gray-900);\n }\n /* &.isDirty {\n &::after {\n content: '*';\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n }\n } */\n}\n\n.PresetManagerButtonLabelContainer.isDirty::after {\n content: '*';\n position: absolute;\n height: 1rem;\n width: 1rem;\n right: -0.75rem;\n top: 0;\n}\n\n.PresetManagerButtonLabelOuterContainer {\n position: relative;\n width: auto;\n}\n\n[data-headlessui-state='open active'] .PresetManagerButtonLabel {\n background: var(--color-gray-900);\n}\n.PresetManagerPanel {\n position: absolute;\n font-family: var(--font-leagueSpartan);\n right: 0px;\n left: 0px;\n width: 100%;\n max-width: 400px !important;\n color: var(--color-text);\n background: var(--bg-lv5);\n}\n\n.PresetManagerPanel:focus,\n.PresetManagerPanel:focus-visible {\n outline: none;\n}\n\n.PresetManagerListItem {\n cursor: pointer;\n background: var(--color-gray-800);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 100%;\n}\n\n.PresetManagerListItem:hover,\n.PresetManagerListItem.isSelected {\n background: var(--bg-selected);\n}\n\n.PresetManagerListItemText {\n display: inline-block;\n vertical-align: middle;\n height: 1.5rem;\n line-height: 1.75;\n}\n";
6079
6303
  styleInject(css_248z$4);
6080
6304
 
6081
- function _array_like_to_array$a(arr, len) {
6305
+ function _array_like_to_array$b(arr, len) {
6082
6306
  if (len == null || len > arr.length) len = arr.length;
6083
6307
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
6084
6308
  return arr2;
6085
6309
  }
6086
- function _array_with_holes$9(arr) {
6310
+ function _array_with_holes$a(arr) {
6087
6311
  if (Array.isArray(arr)) return arr;
6088
6312
  }
6089
6313
  function asyncGeneratorStep$3(gen, resolve, reject, _next, _throw, key, arg) {
@@ -6115,7 +6339,7 @@ function _async_to_generator$3(fn) {
6115
6339
  });
6116
6340
  };
6117
6341
  }
6118
- function _iterable_to_array_limit$9(arr, i) {
6342
+ function _iterable_to_array_limit$a(arr, i) {
6119
6343
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
6120
6344
  if (_i == null) return;
6121
6345
  var _arr = [];
@@ -6139,23 +6363,23 @@ function _iterable_to_array_limit$9(arr, i) {
6139
6363
  }
6140
6364
  return _arr;
6141
6365
  }
6142
- function _non_iterable_rest$9() {
6366
+ function _non_iterable_rest$a() {
6143
6367
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
6144
6368
  }
6145
6369
  function _object_destructuring_empty(o) {
6146
6370
  if (o === null || o === void 0) throw new TypeError("Cannot destructure " + o);
6147
6371
  return o;
6148
6372
  }
6149
- function _sliced_to_array$9(arr, i) {
6150
- return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$9();
6373
+ function _sliced_to_array$a(arr, i) {
6374
+ return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$b(arr, i) || _non_iterable_rest$a();
6151
6375
  }
6152
- function _unsupported_iterable_to_array$a(o, minLen) {
6376
+ function _unsupported_iterable_to_array$b(o, minLen) {
6153
6377
  if (!o) return;
6154
- if (typeof o === "string") return _array_like_to_array$a(o, minLen);
6378
+ if (typeof o === "string") return _array_like_to_array$b(o, minLen);
6155
6379
  var n = Object.prototype.toString.call(o).slice(8, -1);
6156
6380
  if (n === "Object" && o.constructor) n = o.constructor.name;
6157
6381
  if (n === "Map" || n === "Set") return Array.from(n);
6158
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
6382
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
6159
6383
  }
6160
6384
  function _ts_generator$3(thisArg, body) {
6161
6385
  var f, y, t, _ = {
@@ -6250,16 +6474,16 @@ function _ts_generator$3(thisArg, body) {
6250
6474
  }
6251
6475
  function PresetManager(param) {
6252
6476
  _object_destructuring_empty(param);
6253
- var _useState = _sliced_to_array$9(useState([]), 2), presetList = _useState[0], setPresetList = _useState[1];
6254
- var _useState1 = _sliced_to_array$9(useState(false), 2); _useState1[0]; var setIsSaving = _useState1[1];
6477
+ var _useState = _sliced_to_array$a(useState([]), 2), presetList = _useState[0], setPresetList = _useState[1];
6478
+ var _useState1 = _sliced_to_array$a(useState(false), 2); _useState1[0]; var setIsSaving = _useState1[1];
6255
6479
  var savePresetFunc = Juce.getNativeFunction('savePreset');
6256
6480
  var loadPresetFunc = Juce.getNativeFunction('loadPreset');
6257
6481
  var getAllPresetsFunc = Juce.getNativeFunction('getAllPresets');
6258
6482
  var getCurrentPresetFunc = Juce.getNativeFunction('getCurrentPreset');
6259
6483
  var isDirtyFunc = Juce.getNativeFunction('canUndo');
6260
- var _useState2 = _sliced_to_array$9(useState(), 2), selectedPreset = _useState2[0], setSelectedPreset = _useState2[1];
6484
+ var _useState2 = _sliced_to_array$a(useState(), 2), selectedPreset = _useState2[0], setSelectedPreset = _useState2[1];
6261
6485
  var isLocalhost = window.location.hostname === 'localhost';
6262
- var _useState3 = _sliced_to_array$9(useState(false), 2), isDirty = _useState3[0], setIsDirty = _useState3[1];
6486
+ var _useState3 = _sliced_to_array$a(useState(false), 2), isDirty = _useState3[0], setIsDirty = _useState3[1];
6263
6487
  useEffect(function() {
6264
6488
  if (!isLocalhost) {
6265
6489
  var _window___JUCE___backend, _window___JUCE__, _window;
@@ -6538,12 +6762,12 @@ function PresetManager(param) {
6538
6762
  }))))));
6539
6763
  }
6540
6764
 
6541
- function _array_like_to_array$9(arr, len) {
6765
+ function _array_like_to_array$a(arr, len) {
6542
6766
  if (len == null || len > arr.length) len = arr.length;
6543
6767
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
6544
6768
  return arr2;
6545
6769
  }
6546
- function _array_with_holes$8(arr) {
6770
+ function _array_with_holes$9(arr) {
6547
6771
  if (Array.isArray(arr)) return arr;
6548
6772
  }
6549
6773
  function asyncGeneratorStep$2(gen, resolve, reject, _next, _throw, key, arg) {
@@ -6588,7 +6812,7 @@ function _define_property$7(obj, key, value) {
6588
6812
  }
6589
6813
  return obj;
6590
6814
  }
6591
- function _iterable_to_array_limit$8(arr, i) {
6815
+ function _iterable_to_array_limit$9(arr, i) {
6592
6816
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
6593
6817
  if (_i == null) return;
6594
6818
  var _arr = [];
@@ -6612,7 +6836,7 @@ function _iterable_to_array_limit$8(arr, i) {
6612
6836
  }
6613
6837
  return _arr;
6614
6838
  }
6615
- function _non_iterable_rest$8() {
6839
+ function _non_iterable_rest$9() {
6616
6840
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
6617
6841
  }
6618
6842
  function _object_spread$7(target) {
@@ -6630,16 +6854,16 @@ function _object_spread$7(target) {
6630
6854
  }
6631
6855
  return target;
6632
6856
  }
6633
- function _sliced_to_array$8(arr, i) {
6634
- return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$8();
6857
+ function _sliced_to_array$9(arr, i) {
6858
+ return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$9();
6635
6859
  }
6636
- function _unsupported_iterable_to_array$9(o, minLen) {
6860
+ function _unsupported_iterable_to_array$a(o, minLen) {
6637
6861
  if (!o) return;
6638
- if (typeof o === "string") return _array_like_to_array$9(o, minLen);
6862
+ if (typeof o === "string") return _array_like_to_array$a(o, minLen);
6639
6863
  var n = Object.prototype.toString.call(o).slice(8, -1);
6640
6864
  if (n === "Object" && o.constructor) n = o.constructor.name;
6641
6865
  if (n === "Map" || n === "Set") return Array.from(n);
6642
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
6866
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
6643
6867
  }
6644
6868
  function _ts_generator$2(thisArg, body) {
6645
6869
  var f, y, t, _ = {
@@ -6824,8 +7048,8 @@ function ModuleHeader(param) {
6824
7048
  }, [
6825
7049
  window
6826
7050
  ]);
6827
- var _useState = _sliced_to_array$8(useState(false), 2), canUndo = _useState[0], setCanUndo = _useState[1];
6828
- var _useState1 = _sliced_to_array$8(useState(false), 2), canRedo = _useState1[0], setCanRedo = _useState1[1];
7051
+ var _useState = _sliced_to_array$9(useState(false), 2), canUndo = _useState[0], setCanUndo = _useState[1];
7052
+ var _useState1 = _sliced_to_array$9(useState(false), 2), canRedo = _useState1[0], setCanRedo = _useState1[1];
6829
7053
  var handleUndo = function() {
6830
7054
  undo();
6831
7055
  };
@@ -7179,12 +7403,12 @@ function ModMatrixComboboxCell(param) {
7179
7403
  }));
7180
7404
  }
7181
7405
 
7182
- function _array_like_to_array$8(arr, len) {
7406
+ function _array_like_to_array$9(arr, len) {
7183
7407
  if (len == null || len > arr.length) len = arr.length;
7184
7408
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
7185
7409
  return arr2;
7186
7410
  }
7187
- function _array_with_holes$7(arr) {
7411
+ function _array_with_holes$8(arr) {
7188
7412
  if (Array.isArray(arr)) return arr;
7189
7413
  }
7190
7414
  function _define_property$5(obj, key, value) {
@@ -7200,7 +7424,7 @@ function _define_property$5(obj, key, value) {
7200
7424
  }
7201
7425
  return obj;
7202
7426
  }
7203
- function _iterable_to_array_limit$7(arr, i) {
7427
+ function _iterable_to_array_limit$8(arr, i) {
7204
7428
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
7205
7429
  if (_i == null) return;
7206
7430
  var _arr = [];
@@ -7224,7 +7448,7 @@ function _iterable_to_array_limit$7(arr, i) {
7224
7448
  }
7225
7449
  return _arr;
7226
7450
  }
7227
- function _non_iterable_rest$7() {
7451
+ function _non_iterable_rest$8() {
7228
7452
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
7229
7453
  }
7230
7454
  function _object_spread$5(target) {
@@ -7242,21 +7466,21 @@ function _object_spread$5(target) {
7242
7466
  }
7243
7467
  return target;
7244
7468
  }
7245
- function _sliced_to_array$7(arr, i) {
7246
- return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$7();
7469
+ function _sliced_to_array$8(arr, i) {
7470
+ return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$8();
7247
7471
  }
7248
- function _unsupported_iterable_to_array$8(o, minLen) {
7472
+ function _unsupported_iterable_to_array$9(o, minLen) {
7249
7473
  if (!o) return;
7250
- if (typeof o === "string") return _array_like_to_array$8(o, minLen);
7474
+ if (typeof o === "string") return _array_like_to_array$9(o, minLen);
7251
7475
  var n = Object.prototype.toString.call(o).slice(8, -1);
7252
7476
  if (n === "Object" && o.constructor) n = o.constructor.name;
7253
7477
  if (n === "Map" || n === "Set") return Array.from(n);
7254
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
7478
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
7255
7479
  }
7256
7480
  function Toggle(param) {
7257
7481
  var id = param.id, _param_isDisabled = param.isDisabled, isDisabled = _param_isDisabled === void 0 ? false : _param_isDisabled, onChange = param.onChange, _param_width = param.width, width = _param_width === void 0 ? ButtonSize.medium : _param_width, _param_height = param.height, height = _param_height === void 0 ? ButtonSize.medium : _param_height, label = param.label, labelColor = param.labelColor, outerGlowRadius = param.outerGlowRadius, displayValInHeader = param.displayValInHeader, blur = param.blur, _param_color = param.color, color = _param_color === void 0 ? 'var(--color-text)' : _param_color, _param_highlightColor = param.highlightColor, highlightColor = _param_highlightColor === void 0 ? 'var(--color-text)' : _param_highlightColor, _param_highlightBackgroundColor = param.highlightBackgroundColor, highlightBackgroundColor = _param_highlightBackgroundColor === void 0 ? 'var(--bg-lv6)' : _param_highlightBackgroundColor, _param_backgroundColor = param.backgroundColor, backgroundColor = _param_backgroundColor === void 0 ? 'var(--bg-lv5)' : _param_backgroundColor, style = param.style;
7258
7482
  var _properties_choices;
7259
- var _useState = _sliced_to_array$7(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
7483
+ var _useState = _sliced_to_array$8(useState(false), 2), componentIsHovered = _useState[0], setComponentIsHovered = _useState[1];
7260
7484
  var _useCombobox = useCombobox({
7261
7485
  id: id,
7262
7486
  displayValInHeader: displayValInHeader,
@@ -7397,12 +7621,12 @@ function SingleBarViz(param) {
7397
7621
  }
7398
7622
  SingleBarViz.polarity = Polarity;
7399
7623
 
7400
- function _array_like_to_array$7(arr, len) {
7624
+ function _array_like_to_array$8(arr, len) {
7401
7625
  if (len == null || len > arr.length) len = arr.length;
7402
7626
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
7403
7627
  return arr2;
7404
7628
  }
7405
- function _array_with_holes$6(arr) {
7629
+ function _array_with_holes$7(arr) {
7406
7630
  if (Array.isArray(arr)) return arr;
7407
7631
  }
7408
7632
  function _define_property$3(obj, key, value) {
@@ -7418,7 +7642,7 @@ function _define_property$3(obj, key, value) {
7418
7642
  }
7419
7643
  return obj;
7420
7644
  }
7421
- function _iterable_to_array_limit$6(arr, i) {
7645
+ function _iterable_to_array_limit$7(arr, i) {
7422
7646
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
7423
7647
  if (_i == null) return;
7424
7648
  var _arr = [];
@@ -7442,7 +7666,7 @@ function _iterable_to_array_limit$6(arr, i) {
7442
7666
  }
7443
7667
  return _arr;
7444
7668
  }
7445
- function _non_iterable_rest$6() {
7669
+ function _non_iterable_rest$7() {
7446
7670
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
7447
7671
  }
7448
7672
  function _object_spread$3(target) {
@@ -7479,22 +7703,22 @@ function _object_spread_props(target, source) {
7479
7703
  }
7480
7704
  return target;
7481
7705
  }
7482
- function _sliced_to_array$6(arr, i) {
7483
- return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$6();
7706
+ function _sliced_to_array$7(arr, i) {
7707
+ return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$7();
7484
7708
  }
7485
- function _unsupported_iterable_to_array$7(o, minLen) {
7709
+ function _unsupported_iterable_to_array$8(o, minLen) {
7486
7710
  if (!o) return;
7487
- if (typeof o === "string") return _array_like_to_array$7(o, minLen);
7711
+ if (typeof o === "string") return _array_like_to_array$8(o, minLen);
7488
7712
  var n = Object.prototype.toString.call(o).slice(8, -1);
7489
7713
  if (n === "Object" && o.constructor) n = o.constructor.name;
7490
7714
  if (n === "Map" || n === "Set") return Array.from(n);
7491
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
7715
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
7492
7716
  }
7493
7717
  function ModMatrixCell(param) {
7494
7718
  var modifier = param.modifier, rowId = param.rowId, isDisabled = param.isDisabled, color = param.color, style = param.style;
7495
7719
  var _SingleBarViz_polarity;
7496
7720
  var _useGlobalContext = useGlobalContext(), setDefaultParameter = _useGlobalContext.setDefaultParameter, updateModSlotRowTarget = _useGlobalContext.updateModSlotRowTarget, modSlotTargets = _useGlobalContext.globalState.modSlotTargets;
7497
- var _useState = _sliced_to_array$6(useState(false), 2); _useState[0]; var setIsActive = _useState[1];
7721
+ var _useState = _sliced_to_array$7(useState(false), 2); _useState[0]; var setIsActive = _useState[1];
7498
7722
  var _useSlider = useSlider({
7499
7723
  id: modifier,
7500
7724
  rowId: rowId,
@@ -7678,13 +7902,13 @@ function ModMatrixRow(param) {
7678
7902
  }) : null));
7679
7903
  }
7680
7904
 
7681
- function _array_like_to_array$6(arr, len) {
7905
+ function _array_like_to_array$7(arr, len) {
7682
7906
  if (len == null || len > arr.length) len = arr.length;
7683
7907
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
7684
7908
  return arr2;
7685
7909
  }
7686
7910
  function _array_without_holes(arr) {
7687
- if (Array.isArray(arr)) return _array_like_to_array$6(arr);
7911
+ if (Array.isArray(arr)) return _array_like_to_array$7(arr);
7688
7912
  }
7689
7913
  function asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, key, arg) {
7690
7914
  try {
@@ -7750,15 +7974,15 @@ function _object_spread$2(target) {
7750
7974
  return target;
7751
7975
  }
7752
7976
  function _to_consumable_array(arr) {
7753
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array$6(arr) || _non_iterable_spread();
7977
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array$7(arr) || _non_iterable_spread();
7754
7978
  }
7755
- function _unsupported_iterable_to_array$6(o, minLen) {
7979
+ function _unsupported_iterable_to_array$7(o, minLen) {
7756
7980
  if (!o) return;
7757
- if (typeof o === "string") return _array_like_to_array$6(o, minLen);
7981
+ if (typeof o === "string") return _array_like_to_array$7(o, minLen);
7758
7982
  var n = Object.prototype.toString.call(o).slice(8, -1);
7759
7983
  if (n === "Object" && o.constructor) n = o.constructor.name;
7760
7984
  if (n === "Map" || n === "Set") return Array.from(n);
7761
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
7985
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
7762
7986
  }
7763
7987
  function _ts_generator$1(thisArg, body) {
7764
7988
  var f, y, t, _ = {
@@ -8051,15 +8275,15 @@ function createBase64WorkerFactory$3(base64, sourcemapArg, enableUnicodeArg) {
8051
8275
  var WorkerFactory$1 = /*#__PURE__*/createBase64WorkerFactory$3('Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwooZnVuY3Rpb24gKCkgewogICd1c2Ugc3RyaWN0JzsKCiAgZnVuY3Rpb24gX2FycmF5X2xpa2VfdG9fYXJyYXkoYXJyLCBsZW4pIHsKICAgICAgaWYgKGxlbiA9PSBudWxsIHx8IGxlbiA+IGFyci5sZW5ndGgpIGxlbiA9IGFyci5sZW5ndGg7CiAgICAgIGZvcih2YXIgaSA9IDAsIGFycjIgPSBuZXcgQXJyYXkobGVuKTsgaSA8IGxlbjsgaSsrKWFycjJbaV0gPSBhcnJbaV07CiAgICAgIHJldHVybiBhcnIyOwogIH0KICBmdW5jdGlvbiBfYXJyYXlfd2l0aG91dF9ob2xlcyhhcnIpIHsKICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgcmV0dXJuIF9hcnJheV9saWtlX3RvX2FycmF5KGFycik7CiAgfQogIGZ1bmN0aW9uIF9pdGVyYWJsZV90b19hcnJheShpdGVyKSB7CiAgICAgIGlmICh0eXBlb2YgU3ltYm9sICE9PSAidW5kZWZpbmVkIiAmJiBpdGVyW1N5bWJvbC5pdGVyYXRvcl0gIT0gbnVsbCB8fCBpdGVyWyJAQGl0ZXJhdG9yIl0gIT0gbnVsbCkgcmV0dXJuIEFycmF5LmZyb20oaXRlcik7CiAgfQogIGZ1bmN0aW9uIF9ub25faXRlcmFibGVfc3ByZWFkKCkgewogICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gc3ByZWFkIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIik7CiAgfQogIGZ1bmN0aW9uIF90b19jb25zdW1hYmxlX2FycmF5KGFycikgewogICAgICByZXR1cm4gX2FycmF5X3dpdGhvdXRfaG9sZXMoYXJyKSB8fCBfaXRlcmFibGVfdG9fYXJyYXkoYXJyKSB8fCBfdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXkoYXJyKSB8fCBfbm9uX2l0ZXJhYmxlX3NwcmVhZCgpOwogIH0KICBmdW5jdGlvbiBfdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXkobywgbWluTGVuKSB7CiAgICAgIGlmICghbykgcmV0dXJuOwogICAgICBpZiAodHlwZW9mIG8gPT09ICJzdHJpbmciKSByZXR1cm4gX2FycmF5X2xpa2VfdG9fYXJyYXkobywgbWluTGVuKTsKICAgICAgdmFyIG4gPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwobykuc2xpY2UoOCwgLTEpOwogICAgICBpZiAobiA9PT0gIk9iamVjdCIgJiYgby5jb25zdHJ1Y3RvcikgbiA9IG8uY29uc3RydWN0b3IubmFtZTsKICAgICAgaWYgKG4gPT09ICJNYXAiIHx8IG4gPT09ICJTZXQiKSByZXR1cm4gQXJyYXkuZnJvbShuKTsKICAgICAgaWYgKG4gPT09ICJBcmd1bWVudHMiIHx8IC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pKSByZXR1cm4gX2FycmF5X2xpa2VfdG9fYXJyYXkobywgbWluTGVuKTsKICB9CiAgaW1wb3J0U2NyaXB0cygnaHR0cHM6Ly9kM2pzLm9yZy9kMy52Ny5taW4uanMnKTsKICB2YXIgTEZPRG90Q2FudmFzOwogIHZhciBidWZmZXJBcnJheSA9IFtdOwogIHZhciB2aXNpYmxlV2F2ZWZvcm1zID0gW107CiAgdmFyIGN1cnJlbnRXYXZlZm9ybSA9IFtdOwogIHZhciBhcnJheUxlbmd0aCA9IDEwMjQ7CiAgZnVuY3Rpb24gbm9ybWFsaXplVG9aZXJvT25lKHZhbHVlLCBtaW4sIG1heCkgewogICAgICByZXR1cm4gKHZhbHVlIC0gbWluKSAvIChtYXggLSBtaW4pOwogIH0KICB2YXIgcmVkdWNlUmVzb2x1dGlvblRvID0gZnVuY3Rpb24oYXJyLCBuKSB7CiAgICAgIHZhciBuZXdSZXMgPSBNYXRoLmZsb29yKChhcnIgPT09IG51bGwgfHwgYXJyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhcnIubGVuZ3RoKSAvIG4pOwogICAgICByZXR1cm4gYXJyID09PSBudWxsIHx8IGFyciA9PT0gdm9pZCAwID8gdm9pZCAwIDogYXJyLmZpbHRlcihmdW5jdGlvbihfLCBpbmRleCkgewogICAgICAgICAgcmV0dXJuIGluZGV4ICUgTWF0aC5mbG9vcigoYXJyID09PSBudWxsIHx8IGFyciA9PT0gdm9pZCAwID8gdm9pZCAwIDogYXJyLmxlbmd0aCkgLyBuZXdSZXMpID09PSAwOwogICAgICB9KTsKICB9OwogIHNlbGYub25tZXNzYWdlID0gZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgdmFyIGRhdGEgPSBldmVudC5kYXRhOwogICAgICB2YXIgbGluZVdpZHRoID0gMjsKICAgICAgdmFyIG51bUN5Y2xlcyA9IE1hdGgubWluKE1hdGguZmxvb3IoTWF0aC5tYXgoZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkYXRhLmh6VmFsdWVGb3JTeW5jVHlwZSwgMSkpLCA1MCk7CiAgICAgIGlmIChkYXRhLnR5cGUgPT09ICdpbml0JykgewogICAgICAgICAgTEZPRG90Q2FudmFzID0gZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkYXRhLmNhbnZhczsKICAgICAgICAgIGJ1ZmZlckFycmF5ID0gW107CiAgICAgICAgICBjdXJyZW50V2F2ZWZvcm0gPSBBcnJheS5mcm9tKHsKICAgICAgICAgICAgICBsZW5ndGg6IE1hdGguZmxvb3IoYXJyYXlMZW5ndGggLSB2aXNpYmxlV2F2ZWZvcm1zLmxlbmd0aCkKICAgICAgICAgIH0sIGZ1bmN0aW9uKGl0ZW0sIGkpIHsKICAgICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgICB4OiBpLAogICAgICAgICAgICAgICAgICB5OiAwCiAgICAgICAgICAgICAgfTsKICAgICAgICAgIH0pOwogICAgICB9CiAgICAgIGlmIChkYXRhLnR5cGUgPT09ICduZXdXYXZlJykgewogICAgICAgICAgdmFyIGxvd2VyUmVzV2F2ZWZvcm0gPSByZWR1Y2VSZXNvbHV0aW9uVG8oZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkYXRhLndhdmVGb3JtLCBudW1DeWNsZXMpOwogICAgICAgICAgLy8gVE9ETzogcmUtZW5hYmxlIHJhbmRvbQogICAgICAgICAgLy8gbGV0IG5ld1dhdmU6IEFycmF5PFhZVmFsdWU+ID0gW107CiAgICAgICAgICAvLyBUT0RPOiByZS1lbmFibGUgcmFuZG9tCiAgICAgICAgICAvLyBpZiAobG93ZXJSZXNXYXZlZm9ybS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAvLyAgIG5ld1dhdmUgPSBsb3dlclJlc1dhdmVmb3JtLm1hcCgoaXRlbTogWFlWYWx1ZSwgaTogbnVtYmVyKSA9PiAoewogICAgICAgICAgLy8gICAgIHg6IGl0ZW0ueCwKICAgICAgICAgIC8vICAgICB5OiBpdGVtLnkgKiAoMSAtIGRhdGE/LnJhbmRBbW91bnRWYWx1ZSksCiAgICAgICAgICAvLyAgIH0pKTsKICAgICAgICAgIC8vIH0KICAgICAgICAgIC8vIHJhbmRBbW91bnRWYWwgPSBkYXRhPy5yYW5kQW1vdW50VmFsdWU7CiAgICAgICAgICB2YXIgZmlsbGVySXRlbXMgPSBBcnJheS5mcm9tKHsKICAgICAgICAgICAgICBsZW5ndGg6IE1hdGguZmxvb3IoTWF0aC5hYnMoTWF0aC5tYXgobnVtQ3ljbGVzIC0gKGJ1ZmZlckFycmF5ID09PSBudWxsIHx8IGJ1ZmZlckFycmF5ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidWZmZXJBcnJheS5sZW5ndGgpIC0gMSwgMCkpKQogICAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oewogICAgICAgICAgICAgICAgICBsZW5ndGg6IE1hdGguZmxvb3IobG93ZXJSZXNXYXZlZm9ybS5sZW5ndGgpCiAgICAgICAgICAgICAgfSwgZnVuY3Rpb24oaXRlbSwgaSkgewogICAgICAgICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgICAgICAgeDogaSwKICAgICAgICAgICAgICAgICAgICAgIHk6IDAKICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICB9KTsKICAgICAgICAgIH0pOwogICAgICAgICAgdmFyIG5ld0J1ZmZlckFycmF5ID0gKGJ1ZmZlckFycmF5ID09PSBudWxsIHx8IGJ1ZmZlckFycmF5ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidWZmZXJBcnJheS5sZW5ndGgpID49IG51bUN5Y2xlcyA/IF90b19jb25zdW1hYmxlX2FycmF5KGJ1ZmZlckFycmF5LnNsaWNlKC1NYXRoLm1heChNYXRoLmZsb29yKG51bUN5Y2xlcyksIDEpKSkuY29uY2F0KFsKICAgICAgICAgICAgICBsb3dlclJlc1dhdmVmb3JtCiAgICAgICAgICBdLCBfdG9fY29uc3VtYWJsZV9hcnJheShmaWxsZXJJdGVtcykpIDogX3RvX2NvbnN1bWFibGVfYXJyYXkoZmlsbGVySXRlbXMpLmNvbmNhdChfdG9fY29uc3VtYWJsZV9hcnJheShidWZmZXJBcnJheSksIFsKICAgICAgICAgICAgICBsb3dlclJlc1dhdmVmb3JtCiAgICAgICAgICBdKTsKICAgICAgICAgIGJ1ZmZlckFycmF5ID0gbmV3QnVmZmVyQXJyYXk7CiAgICAgIH0KICAgICAgaWYgKGRhdGEudHlwZSA9PT0gJ2N5Y2xlVXBkYXRlJykgewogICAgICAgICAgdmFyIF9idWZmZXJBcnJheV87CiAgICAgICAgICB2YXIgdXBkYXRlZFZpc2libGVXYXZlRm9ybXMgPSBidWZmZXJBcnJheS5sZW5ndGggPiAwID8gX3RvX2NvbnN1bWFibGVfYXJyYXkoKF9idWZmZXJBcnJheV8gPSBidWZmZXJBcnJheVswXSkgPT09IG51bGwgfHwgX2J1ZmZlckFycmF5XyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2J1ZmZlckFycmF5Xy5zbGljZShNYXRoLm1heChNYXRoLmZsb29yKGJ1ZmZlckFycmF5WzBdLmxlbmd0aCAqIG5vcm1hbGl6ZVRvWmVyb09uZShkYXRhLnJhbXBWYWx1ZSwgMCwgMTAyMykpLCAxKSkpLmNvbmNhdChfdG9fY29uc3VtYWJsZV9hcnJheShidWZmZXJBcnJheS5zbGljZSgxKS5mbGF0KCkpLCBfdG9fY29uc3VtYWJsZV9hcnJheShjdXJyZW50V2F2ZWZvcm0gPT09IG51bGwgfHwgY3VycmVudFdhdmVmb3JtID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjdXJyZW50V2F2ZWZvcm0uc2xpY2UoMCwgTWF0aC5mbG9vcihjdXJyZW50V2F2ZWZvcm0ubGVuZ3RoICogbm9ybWFsaXplVG9aZXJvT25lKGRhdGEucmFtcFZhbHVlLCAwLCAxMDIzKSkpKSkgOiBfdG9fY29uc3VtYWJsZV9hcnJheShjdXJyZW50V2F2ZWZvcm0pOwogICAgICAgICAgLy8gY29uc29sZS5sb2coZGF0YT8ucmFtcFZhbHVlLCAnZGF0YT8ucmFtcFZhbHVlJyk7CiAgICAgICAgICB2YXIgeHlWYWx1ZXMgPSB1cGRhdGVkVmlzaWJsZVdhdmVGb3JtcyA9PT0gbnVsbCB8fCB1cGRhdGVkVmlzaWJsZVdhdmVGb3JtcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogdXBkYXRlZFZpc2libGVXYXZlRm9ybXMubWFwKGZ1bmN0aW9uKGl0ZW0sIGkpIHsKICAgICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgICB4OiBpLAogICAgICAgICAgICAgICAgICB5OiBpdGVtLnkKICAgICAgICAgICAgICB9OwogICAgICAgICAgfSk7CiAgICAgICAgICB2aXNpYmxlV2F2ZWZvcm1zID0geHlWYWx1ZXM7CiAgICAgICAgICAvLyBUT0RPOiBUcm91Ymxlc2hvb3QgcmFuZG9tCiAgICAgICAgICAvLyBpZiAoCiAgICAgICAgICAvLyAgIHVwZGF0ZWRWaXNpYmxlV2F2ZUZvcm1zWzBdPy55ICE9PSAwICYmCiAgICAgICAgICAvLyAgIHByZXZWaXNpYmxlV2F2ZUZvcm0/LnkgIT09IDAgJiYKICAgICAgICAgIC8vICAgdXBkYXRlZFZpc2libGVXYXZlRm9ybXNbMF0/LnkgIT09IHByZXZWaXNpYmxlV2F2ZUZvcm0/LnkKICAgICAgICAgIC8vICkgewogICAgICAgICAgLy8gICAvLyBjb25zb2xlLmxvZygnUFJPQkxFTScpOwogICAgICAgICAgLy8gfQogICAgICAgICAgdmFyIHhTY2FsZSA9IGQzLnNjYWxlTGluZWFyKCkuZG9tYWluKC8vIGQzLmV4dGVudCh2aXNpYmxlV2F2ZWZvcm1zLCBmdW5jdGlvbiAoZCkgewogICAgICAgICAgLy8gICByZXR1cm4gZC54OwogICAgICAgICAgLy8gfSksCiAgICAgICAgICBbCiAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICBhcnJheUxlbmd0aAogICAgICAgICAgXSkucmFuZ2UoWwogICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkYXRhLndpZHRoCiAgICAgICAgICBdKTsKICAgICAgICAgIHZhciB5U2NhbGUgPSBkMy5zY2FsZUxpbmVhcigpLmRvbWFpbihbCiAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAxCiAgICAgICAgICBdKS5yYW5nZShbCiAgICAgICAgICAgICAgKGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5oZWlnaHQpIC0gbGluZVdpZHRoLAogICAgICAgICAgICAgIGxpbmVXaWR0aAogICAgICAgICAgXSk7CiAgICAgICAgICBpZiAoZGF0YSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgdmFyIGN0eCA9IExGT0RvdENhbnZhcyA9PT0gbnVsbCB8fCBMRk9Eb3RDYW52YXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IExGT0RvdENhbnZhcy5nZXRDb250ZXh0KCcyZCcpOwogICAgICAgICAgICAgIGN0eC5jbGVhclJlY3QoMCwgMCwgZGF0YS53aWR0aCwgZGF0YS5oZWlnaHQpOwogICAgICAgICAgICAgIHZhciBsaW5lR2VuZXJhdG9yID0gZDMubGluZShmdW5jdGlvbihkKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiB4U2NhbGUoZC54KTsKICAgICAgICAgICAgICB9LCBmdW5jdGlvbihkKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiB5U2NhbGUoZC55KTsKICAgICAgICAgICAgICB9KS5jb250ZXh0KGN0eCkuY3VydmUoZDMuY3VydmVCYXNpcyk7CiAgICAgICAgICAgICAgY3R4LmJlZ2luUGF0aCgpOwogICAgICAgICAgICAgIGN0eC5saW5lV2lkdGggPSBsaW5lV2lkdGg7CiAgICAgICAgICAgICAgY3R4LnN0cm9rZVN0eWxlID0gJ3JnYigxOTgsIDQ1LCAyMjQpJzsKICAgICAgICAgICAgICBjdHgubGluZUNhcCA9ICdyb3VuZCc7CiAgICAgICAgICAgICAgY3R4LnNoYWRvd0NvbG9yID0gJ3JnYmEoMTg3LCAxMDQsIDIxNywgLjQpJzsKICAgICAgICAgICAgICBjdHguc2V0TGluZURhc2goW10pOwogICAgICAgICAgICAgIGN0eC5pbWFnZVNtb290aGluZ0VuYWJsZWQgPSBmYWxzZTsKICAgICAgICAgICAgICBjdHguc2hhZG93Qmx1ciA9IDU7CiAgICAgICAgICAgICAgbGluZUdlbmVyYXRvcih2aXNpYmxlV2F2ZWZvcm1zKTsKICAgICAgICAgICAgICBjdHguc3Ryb2tlKCk7CiAgICAgICAgICAgICAgdmFyIGxpbmVhckdyYWRpZW50ID0gY3R4LmNyZWF0ZUxpbmVhckdyYWRpZW50KDAsIDAsIDAsIGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5oZWlnaHQpOwogICAgICAgICAgICAgIC8vIGxpbmVhckdyYWRpZW50LmFkZENvbG9yU3RvcCgwLCAncmdiYSgxNDcsIDQ2LCAxODQsIC4xNSknKTsKICAgICAgICAgICAgICBsaW5lYXJHcmFkaWVudC5hZGRDb2xvclN0b3AoMCwgJ3JnYmEoMTk4LCA0NSwgMjI0LCAuMDUpJyk7CiAgICAgICAgICAgICAgbGluZWFyR3JhZGllbnQuYWRkQ29sb3JTdG9wKDAuOCwgJ3JnYmEoMTk4LCA0NSwgMjI0LCAwKScpOwogICAgICAgICAgICAgIHZhciBhcmVhR2VuZXJhdG9yID0gZDMuYXJlYSgpLngoZnVuY3Rpb24oZCkgewogICAgICAgICAgICAgICAgICByZXR1cm4geFNjYWxlKGQueCk7CiAgICAgICAgICAgICAgfSkueTAoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiB5U2NhbGUoLTEpOwogICAgICAgICAgICAgIH0pLnkxKGZ1bmN0aW9uKGQpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIHlTY2FsZShkLnkpOwogICAgICAgICAgICAgIH0pLmNvbnRleHQoY3R4KTsKICAgICAgICAgICAgICBjdHguYmVnaW5QYXRoKCk7CiAgICAgICAgICAgICAgLy9AdHMtZXhwZWN0LWVycm9yCiAgICAgICAgICAgICAgYXJlYUdlbmVyYXRvcih2aXNpYmxlV2F2ZWZvcm1zKTsKICAgICAgICAgICAgICBjdHguZmlsbFN0eWxlID0gbGluZWFyR3JhZGllbnQ7CiAgICAgICAgICAgICAgY3R4LmZpbGwoKTsKICAgICAgICAgICAgICBMRk9Eb3RDYW52YXMgPT09IG51bGwgfHwgTEZPRG90Q2FudmFzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBMRk9Eb3RDYW52YXMuZ2V0Q29udGV4dCgnMmQnKS5kcmF3SW1hZ2UoTEZPRG90Q2FudmFzLCAwLCAwKTsKICAgICAgICAgICAgICB2YXIgYml0bWFwID0gTEZPRG90Q2FudmFzID09PSBudWxsIHx8IExGT0RvdENhbnZhcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogTEZPRG90Q2FudmFzLnRyYW5zZmVyVG9JbWFnZUJpdG1hcCgpOwogICAgICAgICAgICAgIHNlbGYucG9zdE1lc3NhZ2UoYml0bWFwKTsKICAgICAgICAgIH0KICAgICAgfQogIH07Cgp9KSgpOwovLyMgc291cmNlTWFwcGluZ1VSTD13b3JrZXIuanMubWFwCgo=', 'data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9');
8052
8276
  /* eslint-enable */
8053
8277
 
8054
- function _array_like_to_array$5(arr, len) {
8278
+ function _array_like_to_array$6(arr, len) {
8055
8279
  if (len == null || len > arr.length) len = arr.length;
8056
8280
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
8057
8281
  return arr2;
8058
8282
  }
8059
- function _array_with_holes$5(arr) {
8283
+ function _array_with_holes$6(arr) {
8060
8284
  if (Array.isArray(arr)) return arr;
8061
8285
  }
8062
- function _iterable_to_array_limit$5(arr, i) {
8286
+ function _iterable_to_array_limit$6(arr, i) {
8063
8287
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
8064
8288
  if (_i == null) return;
8065
8289
  var _arr = [];
@@ -8083,30 +8307,30 @@ function _iterable_to_array_limit$5(arr, i) {
8083
8307
  }
8084
8308
  return _arr;
8085
8309
  }
8086
- function _non_iterable_rest$5() {
8310
+ function _non_iterable_rest$6() {
8087
8311
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8088
8312
  }
8089
- function _sliced_to_array$5(arr, i) {
8090
- return _array_with_holes$5(arr) || _iterable_to_array_limit$5(arr, i) || _unsupported_iterable_to_array$5(arr, i) || _non_iterable_rest$5();
8313
+ function _sliced_to_array$6(arr, i) {
8314
+ return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$6(arr, i) || _non_iterable_rest$6();
8091
8315
  }
8092
- function _unsupported_iterable_to_array$5(o, minLen) {
8316
+ function _unsupported_iterable_to_array$6(o, minLen) {
8093
8317
  if (!o) return;
8094
- if (typeof o === "string") return _array_like_to_array$5(o, minLen);
8318
+ if (typeof o === "string") return _array_like_to_array$6(o, minLen);
8095
8319
  var n = Object.prototype.toString.call(o).slice(8, -1);
8096
8320
  if (n === "Object" && o.constructor) n = o.constructor.name;
8097
8321
  if (n === "Map" || n === "Set") return Array.from(n);
8098
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$5(o, minLen);
8322
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
8099
8323
  }
8100
8324
  function LFOVisualizer(param) {
8101
8325
  var id = param.id, _param_width = param.width, width = _param_width === void 0 ? 365 : _param_width, _param_height = param.height, height = _param_height === void 0 ? 160 : _param_height;
8102
8326
  var isLocalhost = window.location.hostname === 'localhost';
8103
- var _useState = _sliced_to_array$5(useState(0), 2), syncTypeValue = _useState[0], setSyncTypeValue = _useState[1];
8327
+ var _useState = _sliced_to_array$6(useState(0), 2), syncTypeValue = _useState[0], setSyncTypeValue = _useState[1];
8104
8328
  // TODO: Fix random
8105
8329
  // const [randValue, setRandValue] = useState(0);
8106
- var _useState1 = _sliced_to_array$5(useState(0), 2), hzModulatedValue = _useState1[0], setHzModulatedValue = _useState1[1];
8107
- var _useState2 = _sliced_to_array$5(useState(0), 2), hzHiModulatedValue = _useState2[0], setHzHiModulatedValue = _useState2[1];
8108
- var _useState3 = _sliced_to_array$5(useState(0), 2), syncLFOHzValue = _useState3[0], setSyncLFOHzValue = _useState3[1];
8109
- var _useState4 = _sliced_to_array$5(useState(null), 2), waveType = _useState4[0], setWaveType = _useState4[1];
8330
+ var _useState1 = _sliced_to_array$6(useState(0), 2), hzModulatedValue = _useState1[0], setHzModulatedValue = _useState1[1];
8331
+ var _useState2 = _sliced_to_array$6(useState(0), 2), hzHiModulatedValue = _useState2[0], setHzHiModulatedValue = _useState2[1];
8332
+ var _useState3 = _sliced_to_array$6(useState(0), 2), syncLFOHzValue = _useState3[0], setSyncLFOHzValue = _useState3[1];
8333
+ var _useState4 = _sliced_to_array$6(useState(null), 2), waveType = _useState4[0], setWaveType = _useState4[1];
8110
8334
  var workerRef = useRef(null);
8111
8335
  var cycleRef = useRef([]);
8112
8336
  var prevRampValue = useRef(null);
@@ -8319,15 +8543,15 @@ function LFOVisualizer(param) {
8319
8543
  }))))));
8320
8544
  }
8321
8545
 
8322
- function _array_like_to_array$4(arr, len) {
8546
+ function _array_like_to_array$5(arr, len) {
8323
8547
  if (len == null || len > arr.length) len = arr.length;
8324
8548
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
8325
8549
  return arr2;
8326
8550
  }
8327
- function _array_with_holes$4(arr) {
8551
+ function _array_with_holes$5(arr) {
8328
8552
  if (Array.isArray(arr)) return arr;
8329
8553
  }
8330
- function _iterable_to_array_limit$4(arr, i) {
8554
+ function _iterable_to_array_limit$5(arr, i) {
8331
8555
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
8332
8556
  if (_i == null) return;
8333
8557
  var _arr = [];
@@ -8351,23 +8575,23 @@ function _iterable_to_array_limit$4(arr, i) {
8351
8575
  }
8352
8576
  return _arr;
8353
8577
  }
8354
- function _non_iterable_rest$4() {
8578
+ function _non_iterable_rest$5() {
8355
8579
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8356
8580
  }
8357
- function _sliced_to_array$4(arr, i) {
8358
- return _array_with_holes$4(arr) || _iterable_to_array_limit$4(arr, i) || _unsupported_iterable_to_array$4(arr, i) || _non_iterable_rest$4();
8581
+ function _sliced_to_array$5(arr, i) {
8582
+ return _array_with_holes$5(arr) || _iterable_to_array_limit$5(arr, i) || _unsupported_iterable_to_array$5(arr, i) || _non_iterable_rest$5();
8359
8583
  }
8360
- function _unsupported_iterable_to_array$4(o, minLen) {
8584
+ function _unsupported_iterable_to_array$5(o, minLen) {
8361
8585
  if (!o) return;
8362
- if (typeof o === "string") return _array_like_to_array$4(o, minLen);
8586
+ if (typeof o === "string") return _array_like_to_array$5(o, minLen);
8363
8587
  var n = Object.prototype.toString.call(o).slice(8, -1);
8364
8588
  if (n === "Object" && o.constructor) n = o.constructor.name;
8365
8589
  if (n === "Map" || n === "Set") return Array.from(n);
8366
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$4(o, minLen);
8590
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$5(o, minLen);
8367
8591
  }
8368
8592
  function LFOBox(param) {
8369
8593
  var id = param.id;
8370
- var _useState = _sliced_to_array$4(useState(0), 2), syncType = _useState[0], setSyncType = _useState[1];
8594
+ var _useState = _sliced_to_array$5(useState(0), 2), syncType = _useState[0], setSyncType = _useState[1];
8371
8595
  useEffect(function() {
8372
8596
  var _Juce_getComboBoxState;
8373
8597
  var syncType = (_Juce_getComboBoxState = Juce.getComboBoxState("LFO".concat(id, "_SyncType"))) === null || _Juce_getComboBoxState === void 0 ? void 0 : _Juce_getComboBoxState.getChoiceIndex();
@@ -8378,6 +8602,16 @@ function LFOBox(param) {
8378
8602
  var handleSyncTypeChange = function(value) {
8379
8603
  setSyncType(value);
8380
8604
  };
8605
+ var dottedMark = scaledToNormalised({
8606
+ scaledValue: -33,
8607
+ start: -75,
8608
+ end: 75
8609
+ }) || 0;
8610
+ var tripletMark = scaledToNormalised({
8611
+ scaledValue: 50,
8612
+ start: -75,
8613
+ end: 75
8614
+ }) || 0;
8381
8615
  return /*#__PURE__*/ React__default.createElement(Box, {
8382
8616
  className: "LFOBox",
8383
8617
  gap: Box.gap.mediumLarge,
@@ -8447,6 +8681,16 @@ function LFOBox(param) {
8447
8681
  polarity: Slider.polarity.bipolar,
8448
8682
  orientation: Slider.orientation.horizontal,
8449
8683
  dragOrientation: Slider.orientation.horizontal,
8684
+ marks: [
8685
+ {
8686
+ value: dottedMark,
8687
+ label: 'Dotted'
8688
+ },
8689
+ {
8690
+ value: tripletMark,
8691
+ label: 'Triplet'
8692
+ }
8693
+ ],
8450
8694
  id: "LFO".concat(id, "_Sync_Offset")
8451
8695
  }) : null)), /*#__PURE__*/ React__default.createElement(Box, {
8452
8696
  flexDirection: Box.flexDirection.column,
@@ -8538,15 +8782,15 @@ function LFOTab() {
8538
8782
  }));
8539
8783
  }
8540
8784
 
8541
- function _array_like_to_array$3(arr, len) {
8785
+ function _array_like_to_array$4(arr, len) {
8542
8786
  if (len == null || len > arr.length) len = arr.length;
8543
8787
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
8544
8788
  return arr2;
8545
8789
  }
8546
- function _array_with_holes$3(arr) {
8790
+ function _array_with_holes$4(arr) {
8547
8791
  if (Array.isArray(arr)) return arr;
8548
8792
  }
8549
- function _iterable_to_array_limit$3(arr, i) {
8793
+ function _iterable_to_array_limit$4(arr, i) {
8550
8794
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
8551
8795
  if (_i == null) return;
8552
8796
  var _arr = [];
@@ -8570,24 +8814,24 @@ function _iterable_to_array_limit$3(arr, i) {
8570
8814
  }
8571
8815
  return _arr;
8572
8816
  }
8573
- function _non_iterable_rest$3() {
8817
+ function _non_iterable_rest$4() {
8574
8818
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8575
8819
  }
8576
- function _sliced_to_array$3(arr, i) {
8577
- return _array_with_holes$3(arr) || _iterable_to_array_limit$3(arr, i) || _unsupported_iterable_to_array$3(arr, i) || _non_iterable_rest$3();
8820
+ function _sliced_to_array$4(arr, i) {
8821
+ return _array_with_holes$4(arr) || _iterable_to_array_limit$4(arr, i) || _unsupported_iterable_to_array$4(arr, i) || _non_iterable_rest$4();
8578
8822
  }
8579
- function _unsupported_iterable_to_array$3(o, minLen) {
8823
+ function _unsupported_iterable_to_array$4(o, minLen) {
8580
8824
  if (!o) return;
8581
- if (typeof o === "string") return _array_like_to_array$3(o, minLen);
8825
+ if (typeof o === "string") return _array_like_to_array$4(o, minLen);
8582
8826
  var n = Object.prototype.toString.call(o).slice(8, -1);
8583
8827
  if (n === "Object" && o.constructor) n = o.constructor.name;
8584
8828
  if (n === "Map" || n === "Set") return Array.from(n);
8585
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$3(o, minLen);
8829
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$4(o, minLen);
8586
8830
  }
8587
8831
  function StepSequencer(param) {
8588
8832
  var seqId = param.seqId, randomizerObject = param.randomizerObject, resetterObject = param.resetterObject, _param_numSteps = param.numSteps, numSteps = _param_numSteps === void 0 ? 16 : _param_numSteps;
8589
8833
  var isLocalhost = window.location.hostname === 'localhost';
8590
- var _useState = _sliced_to_array$3(useState(1), 2), currentSeqStep = _useState[0], setCurrentSeqStep = _useState[1];
8834
+ var _useState = _sliced_to_array$4(useState(1), 2), currentSeqStep = _useState[0], setCurrentSeqStep = _useState[1];
8591
8835
  var steps = new Array(numSteps).fill(0);
8592
8836
  // const currentElementRef = useRef<string>(null);
8593
8837
  // const isMouseDownRef = useRef<boolean>(false);
@@ -8689,15 +8933,15 @@ function useReset() {
8689
8933
  return observableObject;
8690
8934
  }
8691
8935
 
8692
- function _array_like_to_array$2(arr, len) {
8936
+ function _array_like_to_array$3(arr, len) {
8693
8937
  if (len == null || len > arr.length) len = arr.length;
8694
8938
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
8695
8939
  return arr2;
8696
8940
  }
8697
- function _array_with_holes$2(arr) {
8941
+ function _array_with_holes$3(arr) {
8698
8942
  if (Array.isArray(arr)) return arr;
8699
8943
  }
8700
- function _iterable_to_array_limit$2(arr, i) {
8944
+ function _iterable_to_array_limit$3(arr, i) {
8701
8945
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
8702
8946
  if (_i == null) return;
8703
8947
  var _arr = [];
@@ -8721,24 +8965,24 @@ function _iterable_to_array_limit$2(arr, i) {
8721
8965
  }
8722
8966
  return _arr;
8723
8967
  }
8724
- function _non_iterable_rest$2() {
8968
+ function _non_iterable_rest$3() {
8725
8969
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8726
8970
  }
8727
- function _sliced_to_array$2(arr, i) {
8728
- return _array_with_holes$2(arr) || _iterable_to_array_limit$2(arr, i) || _unsupported_iterable_to_array$2(arr, i) || _non_iterable_rest$2();
8971
+ function _sliced_to_array$3(arr, i) {
8972
+ return _array_with_holes$3(arr) || _iterable_to_array_limit$3(arr, i) || _unsupported_iterable_to_array$3(arr, i) || _non_iterable_rest$3();
8729
8973
  }
8730
- function _unsupported_iterable_to_array$2(o, minLen) {
8974
+ function _unsupported_iterable_to_array$3(o, minLen) {
8731
8975
  if (!o) return;
8732
- if (typeof o === "string") return _array_like_to_array$2(o, minLen);
8976
+ if (typeof o === "string") return _array_like_to_array$3(o, minLen);
8733
8977
  var n = Object.prototype.toString.call(o).slice(8, -1);
8734
8978
  if (n === "Object" && o.constructor) n = o.constructor.name;
8735
8979
  if (n === "Map" || n === "Set") return Array.from(n);
8736
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$2(o, minLen);
8980
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$3(o, minLen);
8737
8981
  }
8738
8982
  // import IndicatorLight from '../../core/Indicators/IndicatorLight';
8739
8983
  function SeqTab$1(param) {
8740
8984
  var seqId = param.seqId;
8741
- var _useState = _sliced_to_array$2(useState(0), 2), syncType = _useState[0], setSyncType = _useState[1];
8985
+ var _useState = _sliced_to_array$3(useState(0), 2), syncType = _useState[0], setSyncType = _useState[1];
8742
8986
  useEffect(function() {
8743
8987
  var _Juce_getSliderState;
8744
8988
  var syncType = (_Juce_getSliderState = Juce.getSliderState("seq".concat(seqId, "_syncType"))) === null || _Juce_getSliderState === void 0 ? void 0 : _Juce_getSliderState.scaledValue;
@@ -9105,6 +9349,71 @@ function VUMeter(param) {
9105
9349
  })))));
9106
9350
  }
9107
9351
 
9352
+ function _array_like_to_array$2(arr, len) {
9353
+ if (len == null || len > arr.length) len = arr.length;
9354
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
9355
+ return arr2;
9356
+ }
9357
+ function _array_with_holes$2(arr) {
9358
+ if (Array.isArray(arr)) return arr;
9359
+ }
9360
+ function _iterable_to_array_limit$2(arr, i) {
9361
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
9362
+ if (_i == null) return;
9363
+ var _arr = [];
9364
+ var _n = true;
9365
+ var _d = false;
9366
+ var _s, _e;
9367
+ try {
9368
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
9369
+ _arr.push(_s.value);
9370
+ if (i && _arr.length === i) break;
9371
+ }
9372
+ } catch (err) {
9373
+ _d = true;
9374
+ _e = err;
9375
+ } finally{
9376
+ try {
9377
+ if (!_n && _i["return"] != null) _i["return"]();
9378
+ } finally{
9379
+ if (_d) throw _e;
9380
+ }
9381
+ }
9382
+ return _arr;
9383
+ }
9384
+ function _non_iterable_rest$2() {
9385
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
9386
+ }
9387
+ function _sliced_to_array$2(arr, i) {
9388
+ return _array_with_holes$2(arr) || _iterable_to_array_limit$2(arr, i) || _unsupported_iterable_to_array$2(arr, i) || _non_iterable_rest$2();
9389
+ }
9390
+ function _unsupported_iterable_to_array$2(o, minLen) {
9391
+ if (!o) return;
9392
+ if (typeof o === "string") return _array_like_to_array$2(o, minLen);
9393
+ var n = Object.prototype.toString.call(o).slice(8, -1);
9394
+ if (n === "Object" && o.constructor) n = o.constructor.name;
9395
+ if (n === "Map" || n === "Set") return Array.from(n);
9396
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$2(o, minLen);
9397
+ }
9398
+ var FreqOut = function() {
9399
+ var _useState = _sliced_to_array$2(useState(), 2), freqOut = _useState[0], setFreqOut = _useState[1];
9400
+ useEffect(function() {
9401
+ var _window___JUCE___backend, _window___JUCE__, _window;
9402
+ //@ts-expect-error
9403
+ (_window = window) === null || _window === void 0 ? void 0 : (_window___JUCE__ = _window.__JUCE__) === null || _window___JUCE__ === void 0 ? void 0 : (_window___JUCE___backend = _window___JUCE__.backend) === null || _window___JUCE___backend === void 0 ? void 0 : _window___JUCE___backend.addEventListener("freqOut", function(event) {
9404
+ setFreqOut(event);
9405
+ });
9406
+ }, []);
9407
+ return /*#__PURE__*/ React__default.createElement(Box, {
9408
+ width: "100px",
9409
+ flexDirection: Box.flexDirection.column
9410
+ }, /*#__PURE__*/ React__default.createElement(Label, {
9411
+ value: "Freq Out",
9412
+ fontSize: Heading.fontSize.xSmall
9413
+ }), /*#__PURE__*/ React__default.createElement(Label, {
9414
+ value: freqOut
9415
+ }));
9416
+ };
9108
9417
  function InputModTab$1() {
9109
9418
  return /*#__PURE__*/ React__default.createElement(Box, {
9110
9419
  className: "InputModTab",
@@ -9280,7 +9589,7 @@ function InputModTab$1() {
9280
9589
  color: "var(--color-brand)"
9281
9590
  }, "Output")), /*#__PURE__*/ React__default.createElement(Box, {
9282
9591
  flex: '3'
9283
- }, /*#__PURE__*/ React__default.createElement(VUMeter, {
9592
+ }, /*#__PURE__*/ React__default.createElement(FreqOut, null), /*#__PURE__*/ React__default.createElement(VUMeter, {
9284
9593
  width: 50,
9285
9594
  height: 125,
9286
9595
  id: "VUMeter"