@antimatter-audio/antimatter-ui 10.0.0 → 10.1.1

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.
Files changed (48) hide show
  1. package/dist/advanced/ModuleHeader/ModuleHeader.d.ts.map +1 -1
  2. package/dist/advanced/PresetManager/PresetManager.d.ts +5 -0
  3. package/dist/advanced/PresetManager/PresetManager.d.ts.map +1 -0
  4. package/dist/index.js +748 -196
  5. package/dist/index.js.map +1 -1
  6. package/dist/src/advanced/IconButton/IconButton.d.ts +31 -7
  7. package/dist/src/advanced/IconButton/IconButton.d.ts.map +1 -1
  8. package/dist/src/advanced/ModuleHeader/ModuleHeader.d.ts.map +1 -1
  9. package/dist/src/advanced/PresetManager/PresetManager.d.ts +5 -0
  10. package/dist/src/advanced/PresetManager/PresetManager.d.ts.map +1 -0
  11. package/dist/src/core/Box/Box.d.ts +2 -1
  12. package/dist/src/core/Box/Box.d.ts.map +1 -1
  13. package/dist/src/core/Box/types.d.ts +3 -1
  14. package/dist/src/core/Box/types.d.ts.map +1 -1
  15. package/dist/src/core/Button/Button.d.ts +3 -1
  16. package/dist/src/core/Button/Button.d.ts.map +1 -1
  17. package/dist/src/hooks/useCombobox.d.ts.map +1 -1
  18. package/dist/src/hooks/useSlider.d.ts.map +1 -1
  19. package/package.json +1 -1
  20. package/dist/advanced/KeyValueDisplayScreen/KeyValueDisplayScreen.d.ts +0 -12
  21. package/dist/advanced/KeyValueDisplayScreen/KeyValueDisplayScreen.d.ts.map +0 -1
  22. package/dist/advanced/Oscilloscope/Oscilloscope.d.ts +0 -12
  23. package/dist/advanced/Oscilloscope/Oscilloscope.d.ts.map +0 -1
  24. package/dist/assets/bundle-WiH_IP0c.css +0 -192
  25. package/dist/assets/bundle-pfepV2k0.css +0 -206
  26. package/dist/context/GlobalContextProvider.d.ts +0 -20
  27. package/dist/context/GlobalContextProvider.d.ts.map +0 -1
  28. package/dist/core/Button/Button.d.ts +0 -24
  29. package/dist/core/Button/Button.d.ts.map +0 -1
  30. package/dist/core/Indicators/hooks/useIndicator.d.ts +0 -8
  31. package/dist/core/Indicators/hooks/useIndicator.d.ts.map +0 -1
  32. package/dist/core/Slider/BarSlider.d.ts +0 -30
  33. package/dist/core/Slider/BarSlider.d.ts.map +0 -1
  34. package/dist/core/Slider/RotarySlider.d.ts +0 -29
  35. package/dist/core/Slider/RotarySlider.d.ts.map +0 -1
  36. package/dist/core/Tabs/Tabs.d.ts +0 -19
  37. package/dist/core/Tabs/Tabs.d.ts.map +0 -1
  38. package/dist/hooks/useCombobox.d.ts +0 -15
  39. package/dist/hooks/useCombobox.d.ts.map +0 -1
  40. package/dist/hooks/useObservable.d.ts +0 -9
  41. package/dist/hooks/useObservable.d.ts.map +0 -1
  42. package/dist/hooks/useRandom.d.ts +0 -1
  43. package/dist/hooks/useRandom.d.ts.map +0 -1
  44. package/dist/hooks/useSlider.d.ts +0 -21
  45. package/dist/hooks/useSlider.d.ts.map +0 -1
  46. package/dist/index.css +0 -262
  47. package/dist/src/hooks/useRandomise.d.ts +0 -3
  48. package/dist/src/hooks/useRandomise.d.ts.map +0 -1
package/dist/index.js CHANGED
@@ -34,8 +34,8 @@ function styleInject(css, ref) {
34
34
  }
35
35
  }
36
36
 
37
- var css_248z$8 = "@import 'tailwindcss';\n@import 'tailwindcss/base';\n@import 'tailwindcss/utilities';\n\n@theme static {\n --color-brand: #bb68d9;\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\n --color-VFDBlue-100: #0d3814;\n --color-VFDBlue-200: #234e4a;\n --color-VFDBlue-300: #128073;\n --color-VFDBlue-400: #138c6e;\n --color-VFDBlue-500: #1abe95;\n --color-VFDBlue-600: #23d8a4;\n --color-VFDBlue-700: #4aeea4;\n --color-VFDBlue-1000: #35edb4;\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-page: #1e1d21;\n --bg-section: #1e1d21;\n --bg-popover: #1e1d21;\n --bg-highlighted: #838091;\n --bg-muted: #595763;\n --bg-selected: #999999;\n --bg-input: #1e1d21;\n --font-leagueSpartan: 'LeagueSpartan';\n --text-xs: 0.625rem;\n --text-sm: 0.75rem;\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 border: none;\n outline: none;\n}\n\nbutton:disabled,\ninput:disabled {\n cursor: not-allowed;\n}\n\n@font-face {\n font-family: LeagueSpartan;\n src: url('./common/assets/fonts/LeagueSpartan-Regular.ttf');\n}\n\n@font-face {\n font-family: LeagueSpartan;\n src: url('./common/assets/fonts/LeagueSpartan-Thin.ttf');\n font-weight: lighter;\n}\n";
38
- styleInject(css_248z$8);
37
+ var css_248z$9 = "@import 'tailwindcss';\n@import 'tailwindcss/base';\n@import 'tailwindcss/utilities';\n\n@theme static {\n --color-brand: #bb68d9;\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 --color-VFDBlue-100: #0d3814;\n --color-VFDBlue-200: #234e4a;\n --color-VFDBlue-300: #128073;\n --color-VFDBlue-400: #138c6e;\n --color-VFDBlue-500: #1abe95;\n --color-VFDBlue-600: #23d8a4;\n --color-VFDBlue-700: #4aeea4;\n --color-VFDBlue-1000: #35edb4;\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-page: #1e1d21;\n --bg-section: #1e1d21;\n --bg-popover: #09090a;\n --bg-highlighted: #838091;\n --bg-muted: #595763;\n --bg-selected: #2e2c33;\n --bg-input: #1e1d21;\n --font-leagueSpartan: 'LeagueSpartan';\n --text-xs: 0.625rem;\n --text-sm: 0.75rem;\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 border: none;\n outline: none;\n}\n\nbutton:disabled,\ninput:disabled {\n cursor: not-allowed;\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
+ styleInject(css_248z$9);
39
39
 
40
40
  var Spacing = /*#__PURE__*/ function(Spacing) {
41
41
  Spacing["none"] = "none";
@@ -84,18 +84,18 @@ var FontSizes = /*#__PURE__*/ function(FontSizes) {
84
84
  return FontSizes;
85
85
  }({});
86
86
 
87
- var css_248z$7 = ".Tabs {\n display: flex;\n font-size: 1rem;\n align-items: center;\n justify-content: center;\n vertical-align: middle;\n white-space: nowrap;\n text-decoration: none;\n text-transform: uppercase;\n text-align: center;\n border: 0;\n appearance: none;\n user-select: none;\n -webkit-user-select: none;\n}\n\n.Tabs-item {\n &:disabled {\n cursor: not-allowed;\n }\n}\n\n.Tabs-item::-moz-selection {\n background: transparent;\n}\n.Tabs-item::selection {\n background: transparent;\n}\n";
88
- styleInject(css_248z$7);
87
+ var css_248z$8 = ".Tabs {\n display: flex;\n font-size: 1rem;\n align-items: center;\n justify-content: center;\n vertical-align: middle;\n white-space: nowrap;\n text-decoration: none;\n text-transform: uppercase;\n text-align: center;\n border: 0;\n appearance: none;\n user-select: none;\n -webkit-user-select: none;\n}\n\n.Tabs-item {\n &:disabled {\n cursor: not-allowed;\n }\n}\n\n.Tabs-item::-moz-selection {\n background: transparent;\n}\n.Tabs-item::selection {\n background: transparent;\n}\n";
88
+ styleInject(css_248z$8);
89
89
 
90
- function _array_like_to_array$8(arr, len) {
90
+ function _array_like_to_array$9(arr, len) {
91
91
  if (len == null || len > arr.length) len = arr.length;
92
92
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
93
93
  return arr2;
94
94
  }
95
- function _array_with_holes$8(arr) {
95
+ function _array_with_holes$9(arr) {
96
96
  if (Array.isArray(arr)) return arr;
97
97
  }
98
- function _iterable_to_array_limit$8(arr, i) {
98
+ function _iterable_to_array_limit$9(arr, i) {
99
99
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
100
100
  if (_i == null) return;
101
101
  var _arr = [];
@@ -119,19 +119,19 @@ function _iterable_to_array_limit$8(arr, i) {
119
119
  }
120
120
  return _arr;
121
121
  }
122
- function _non_iterable_rest$8() {
122
+ function _non_iterable_rest$9() {
123
123
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
124
124
  }
125
- function _sliced_to_array$8(arr, i) {
126
- return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$8();
125
+ function _sliced_to_array$9(arr, i) {
126
+ return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$9();
127
127
  }
128
- function _unsupported_iterable_to_array$8(o, minLen) {
128
+ function _unsupported_iterable_to_array$9(o, minLen) {
129
129
  if (!o) return;
130
- if (typeof o === "string") return _array_like_to_array$8(o, minLen);
130
+ if (typeof o === "string") return _array_like_to_array$9(o, minLen);
131
131
  var n = Object.prototype.toString.call(o).slice(8, -1);
132
132
  if (n === "Object" && o.constructor) n = o.constructor.name;
133
133
  if (n === "Map" || n === "Set") return Array.from(n);
134
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
134
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
135
135
  }
136
136
  function Tabs(param) {
137
137
  var items = param.items, className = param.className, _param_padding = param.padding, padding = _param_padding === void 0 ? [
@@ -139,7 +139,7 @@ function Tabs(param) {
139
139
  ] : _param_padding, _param_margin = param.margin, margin = _param_margin === void 0 ? [
140
140
  Spacing.none
141
141
  ] : _param_margin, onChange = param.onChange, selectedIndex = param.selectedIndex;
142
- var _useState = _sliced_to_array$8(useState(0), 2), selectedItem = _useState[0], setSelectedItem = _useState[1];
142
+ var _useState = _sliced_to_array$9(useState(0), 2), selectedItem = _useState[0], setSelectedItem = _useState[1];
143
143
  var handleChange = function(index) {
144
144
  setSelectedItem(index);
145
145
  onChange(index);
@@ -182,8 +182,8 @@ function Tabs(param) {
182
182
  Tabs.padding = Spacing;
183
183
  Tabs.margin = Spacing;
184
184
 
185
- var css_248z$6 = ".Button {\n font-size: var(--text-xs);\n display: flex;\n align-items: center;\n justify-content: center;\n padding-right: var(--spacing-ms);\n padding-left: var(--spacing-ms);\n cursor: pointer;\n vertical-align: middle;\n white-space: nowrap;\n text-decoration: none;\n text-align: enter;\n border: 0;\n appearance: none;\n user-select: none;\n -webkit-user-select: none;\n &.xSmall {\n width: var(--spacing-ml);\n height: var(--spacing-ml);\n }\n &.small {\n font-size: var(--text-xs);\n min-width: 1rem;\n min-height: var(--spacing-sm);\n }\n &.large {\n border-radius: var(--radius-sm);\n min-width: 1rem;\n min-height: var(--spacing-xl);\n }\n}\n";
186
- styleInject(css_248z$6);
185
+ var css_248z$7 = ".Button {\n font-size: var(--text-xs);\n display: flex;\n align-items: center;\n justify-content: center;\n padding-right: var(--spacing-ms);\n padding-left: var(--spacing-ms);\n cursor: pointer;\n vertical-align: middle;\n white-space: nowrap;\n text-decoration: none;\n text-align: enter;\n border: 0;\n appearance: none;\n user-select: none;\n -webkit-user-select: none;\n &.xSmall {\n width: var(--spacing-ml);\n height: var(--spacing-ml);\n }\n &.small {\n font-size: var(--text-xs);\n min-width: 1rem;\n min-height: var(--spacing-sm);\n }\n &.large {\n border-radius: var(--radius-sm);\n min-width: 1rem;\n min-height: var(--spacing-xl);\n }\n}\n";
186
+ styleInject(css_248z$7);
187
187
 
188
188
  var ButtonSize = /*#__PURE__*/ function(ButtonSize) {
189
189
  ButtonSize["xSmall"] = "xSmall";
@@ -197,12 +197,12 @@ var ButtonType = /*#__PURE__*/ function(ButtonType) {
197
197
  return ButtonType;
198
198
  }({});
199
199
 
200
- function _array_like_to_array$7(arr, len) {
200
+ function _array_like_to_array$8(arr, len) {
201
201
  if (len == null || len > arr.length) len = arr.length;
202
202
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
203
203
  return arr2;
204
204
  }
205
- function _array_with_holes$7(arr) {
205
+ function _array_with_holes$8(arr) {
206
206
  if (Array.isArray(arr)) return arr;
207
207
  }
208
208
  function _define_property$d(obj, key, value) {
@@ -218,7 +218,7 @@ function _define_property$d(obj, key, value) {
218
218
  }
219
219
  return obj;
220
220
  }
221
- function _iterable_to_array_limit$7(arr, i) {
221
+ function _iterable_to_array_limit$8(arr, i) {
222
222
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
223
223
  if (_i == null) return;
224
224
  var _arr = [];
@@ -242,7 +242,7 @@ function _iterable_to_array_limit$7(arr, i) {
242
242
  }
243
243
  return _arr;
244
244
  }
245
- function _non_iterable_rest$7() {
245
+ function _non_iterable_rest$8() {
246
246
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
247
247
  }
248
248
  function _object_spread$d(target) {
@@ -260,22 +260,24 @@ function _object_spread$d(target) {
260
260
  }
261
261
  return target;
262
262
  }
263
- function _sliced_to_array$7(arr, i) {
264
- return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$7();
263
+ function _sliced_to_array$8(arr, i) {
264
+ return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$8();
265
265
  }
266
- function _unsupported_iterable_to_array$7(o, minLen) {
266
+ function _unsupported_iterable_to_array$8(o, minLen) {
267
267
  if (!o) return;
268
- if (typeof o === "string") return _array_like_to_array$7(o, minLen);
268
+ if (typeof o === "string") return _array_like_to_array$8(o, minLen);
269
269
  var n = Object.prototype.toString.call(o).slice(8, -1);
270
270
  if (n === "Object" && o.constructor) n = o.constructor.name;
271
271
  if (n === "Map" || n === "Set") return Array.from(n);
272
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
272
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
273
273
  }
274
274
  function Button(param) {
275
275
  var disabled = param.disabled, text = param.text, id = param.id, className = param.className, style = param.style, onClick = param.onClick, children = param.children, _param_padding = param.padding, padding = _param_padding === void 0 ? [
276
276
  Spacing.small
277
- ] : _param_padding, _param_type = param.type, type = _param_type === void 0 ? ButtonType.latch : _param_type, _param_size = param.size, size = _param_size === void 0 ? ButtonSize.large : _param_size;
278
- var _React_useState = _sliced_to_array$7(React__default.useState(false), 2), isSelected = _React_useState[0], setIsSelected = _React_useState[1];
277
+ ] : _param_padding, _param_margin = param.margin, margin = _param_margin === void 0 ? [
278
+ Spacing.none
279
+ ] : _param_margin, _param_type = param.type, type = _param_type === void 0 ? ButtonType.latch : _param_type, _param_size = param.size, size = _param_size === void 0 ? ButtonSize.large : _param_size;
280
+ var _React_useState = _sliced_to_array$8(React__default.useState(false), 2), isSelected = _React_useState[0], setIsSelected = _React_useState[1];
279
281
  var buttonState = Juce.getToggleState(id);
280
282
  var isLocalhost = window.location.hostname === 'localhost';
281
283
  // Update the local state when the ID changes
@@ -326,7 +328,7 @@ function Button(param) {
326
328
  }, [
327
329
  isSelected
328
330
  ]);
329
- var _padding_, _padding_1, _padding_2, _ref;
331
+ var _padding_, _padding_1, _padding_2, _ref, _margin_, _margin_1, _margin_2, _ref1;
330
332
  return /*#__PURE__*/ React__default.createElement("button", {
331
333
  id: id,
332
334
  onMouseDown: handleMouseDown,
@@ -336,17 +338,22 @@ function Button(param) {
336
338
  paddingTop: "var(--p-".concat(padding[0], ")"),
337
339
  paddingRight: "var(--p-".concat((_padding_ = padding[1]) !== null && _padding_ !== void 0 ? _padding_ : padding[0], ")"),
338
340
  paddingBottom: "var(--p-".concat((_padding_1 = padding[2]) !== null && _padding_1 !== void 0 ? _padding_1 : padding[0], ")"),
339
- paddingLeft: "var(--p-".concat((_ref = (_padding_2 = padding[3]) !== null && _padding_2 !== void 0 ? _padding_2 : padding[1]) !== null && _ref !== void 0 ? _ref : padding[0], ")")
341
+ paddingLeft: "var(--p-".concat((_ref = (_padding_2 = padding[3]) !== null && _padding_2 !== void 0 ? _padding_2 : padding[1]) !== null && _ref !== void 0 ? _ref : padding[0], ")"),
342
+ marginTop: "var(--p-".concat(margin[0], ")"),
343
+ marginRight: "var(--p-".concat((_margin_ = margin[1]) !== null && _margin_ !== void 0 ? _margin_ : margin[0], ")"),
344
+ marginBottom: "var(--p-".concat((_margin_1 = margin[2]) !== null && _margin_1 !== void 0 ? _margin_1 : margin[0], ")"),
345
+ marginLeft: "var(--p-".concat((_ref1 = (_margin_2 = margin[3]) !== null && _margin_2 !== void 0 ? _margin_2 : margin[1]) !== null && _ref1 !== void 0 ? _ref1 : margin[0], ")")
340
346
  }, style),
341
347
  className: classnames('Button', isSelected && 'selected', "".concat(size), className)
342
348
  }, size !== ButtonSize.xSmall && (text ? text : children));
343
349
  }
344
350
  Button.padding = Spacing;
351
+ Button.margin = Spacing;
345
352
  Button.type = ButtonType;
346
353
  Button.size = ButtonSize;
347
354
 
348
- var css_248z$5 = ".Dropdown-button {\n font-size: var(--text-sm);\n display: flex;\n align-items: center;\n justify-content: center;\n padding: var(--spacing-lg);\n cursor: pointer;\n vertical-align: middle;\n white-space: nowrap;\n text-decoration: none;\n text-transform: uppercase;\n text-align: center;\n border: 0;\n border-radius: var(--radius-sm);\n appearance: none;\n user-select: none;\n -webkit-user-select: none;\n height: var(--spacing-xl);\n background: var(--bg-input);\n &:hover,\n &:focus,\n &:active {\n outline: none;\n background-color: var(--bg-highlighted);\n }\n &:disabled {\n cursor: not-allowed;\n }\n}\n\n.Dropdown-item {\n background-color: var(--bg-popover);\n padding: var(--spacing-l);\n cursor: pointer;\n user-select: none;\n -webkit-user-select: none;\n &:hover {\n background-color: var(--bg-highlighted);\n }\n &[data-selected] {\n background-color: var(--bg-selected);\n }\n}\n";
349
- styleInject(css_248z$5);
355
+ var css_248z$6 = ".Dropdown-button {\n font-size: var(--text-sm);\n display: flex;\n align-items: center;\n justify-content: center;\n padding: var(--spacing-lg);\n cursor: pointer;\n vertical-align: middle;\n white-space: nowrap;\n text-decoration: none;\n text-transform: uppercase;\n text-align: center;\n border: 0;\n border-radius: var(--radius-sm);\n appearance: none;\n user-select: none;\n -webkit-user-select: none;\n height: var(--spacing-xl);\n background: var(--bg-input);\n &:hover,\n &:focus,\n &:active {\n outline: none;\n background-color: var(--bg-highlighted);\n }\n &:disabled {\n cursor: not-allowed;\n }\n}\n\n.Dropdown-item {\n background-color: var(--bg-popover);\n padding: var(--spacing-l);\n cursor: pointer;\n user-select: none;\n -webkit-user-select: none;\n &:hover {\n background-color: var(--bg-highlighted);\n }\n &[data-selected] {\n background-color: var(--bg-selected);\n }\n}\n";
356
+ styleInject(css_248z$6);
350
357
 
351
358
  function useObservable(param) {
352
359
  var onFire = param.onFire;
@@ -388,12 +395,12 @@ function useObservable(param) {
388
395
  };
389
396
  }
390
397
 
391
- function _array_like_to_array$6(arr, len) {
398
+ function _array_like_to_array$7(arr, len) {
392
399
  if (len == null || len > arr.length) len = arr.length;
393
400
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
394
401
  return arr2;
395
402
  }
396
- function _array_with_holes$6(arr) {
403
+ function _array_with_holes$7(arr) {
397
404
  if (Array.isArray(arr)) return arr;
398
405
  }
399
406
  function _define_property$c(obj, key, value) {
@@ -409,7 +416,7 @@ function _define_property$c(obj, key, value) {
409
416
  }
410
417
  return obj;
411
418
  }
412
- function _iterable_to_array_limit$6(arr, i) {
419
+ function _iterable_to_array_limit$7(arr, i) {
413
420
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
414
421
  if (_i == null) return;
415
422
  var _arr = [];
@@ -433,7 +440,7 @@ function _iterable_to_array_limit$6(arr, i) {
433
440
  }
434
441
  return _arr;
435
442
  }
436
- function _non_iterable_rest$6() {
443
+ function _non_iterable_rest$7() {
437
444
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
438
445
  }
439
446
  function _object_spread$c(target) {
@@ -470,16 +477,16 @@ function _object_spread_props$2(target, source) {
470
477
  }
471
478
  return target;
472
479
  }
473
- function _sliced_to_array$6(arr, i) {
474
- return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$6(arr, i) || _non_iterable_rest$6();
480
+ function _sliced_to_array$7(arr, i) {
481
+ return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$7();
475
482
  }
476
- function _unsupported_iterable_to_array$6(o, minLen) {
483
+ function _unsupported_iterable_to_array$7(o, minLen) {
477
484
  if (!o) return;
478
- if (typeof o === "string") return _array_like_to_array$6(o, minLen);
485
+ if (typeof o === "string") return _array_like_to_array$7(o, minLen);
479
486
  var n = Object.prototype.toString.call(o).slice(8, -1);
480
487
  if (n === "Object" && o.constructor) n = o.constructor.name;
481
488
  if (n === "Map" || n === "Set") return Array.from(n);
482
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
489
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
483
490
  }
484
491
  // Initial state
485
492
  var defaultGlobalStateValue = {
@@ -511,7 +518,7 @@ function useGlobalContext(selector) {
511
518
  // Context provider
512
519
  function GlobalContextProvider(param) {
513
520
  var children = param.children;
514
- var _useReducer = _sliced_to_array$6(useReducer(reducer, defaultGlobalStateValue), 2), state = _useReducer[0], dispatch = _useReducer[1];
521
+ var _useReducer = _sliced_to_array$7(useReducer(reducer, defaultGlobalStateValue), 2), state = _useReducer[0], dispatch = _useReducer[1];
515
522
  var setHighlightedItem = useCallback(function(highlightedItem) {
516
523
  dispatch({
517
524
  type: 'SET_HIGHLIGHTED_ITEM',
@@ -535,15 +542,15 @@ function GlobalContextProvider(param) {
535
542
  }, children);
536
543
  }
537
544
 
538
- function _array_like_to_array$5(arr, len) {
545
+ function _array_like_to_array$6(arr, len) {
539
546
  if (len == null || len > arr.length) len = arr.length;
540
547
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
541
548
  return arr2;
542
549
  }
543
- function _array_with_holes$5(arr) {
550
+ function _array_with_holes$6(arr) {
544
551
  if (Array.isArray(arr)) return arr;
545
552
  }
546
- function _iterable_to_array_limit$5(arr, i) {
553
+ function _iterable_to_array_limit$6(arr, i) {
547
554
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
548
555
  if (_i == null) return;
549
556
  var _arr = [];
@@ -567,25 +574,25 @@ function _iterable_to_array_limit$5(arr, i) {
567
574
  }
568
575
  return _arr;
569
576
  }
570
- function _non_iterable_rest$5() {
577
+ function _non_iterable_rest$6() {
571
578
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
572
579
  }
573
- function _sliced_to_array$5(arr, i) {
574
- return _array_with_holes$5(arr) || _iterable_to_array_limit$5(arr, i) || _unsupported_iterable_to_array$5(arr, i) || _non_iterable_rest$5();
580
+ function _sliced_to_array$6(arr, i) {
581
+ return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$6(arr, i) || _non_iterable_rest$6();
575
582
  }
576
- function _unsupported_iterable_to_array$5(o, minLen) {
583
+ function _unsupported_iterable_to_array$6(o, minLen) {
577
584
  if (!o) return;
578
- if (typeof o === "string") return _array_like_to_array$5(o, minLen);
585
+ if (typeof o === "string") return _array_like_to_array$6(o, minLen);
579
586
  var n = Object.prototype.toString.call(o).slice(8, -1);
580
587
  if (n === "Object" && o.constructor) n = o.constructor.name;
581
588
  if (n === "Map" || n === "Set") return Array.from(n);
582
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$5(o, minLen);
589
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
583
590
  }
584
591
  var useCombobox = function(param) {
585
592
  var id = param.id, label = param.label, _param_items = param.items, items = _param_items === void 0 ? [] : _param_items, onChange = param.onChange, _param_displayValInHeader = param.displayValInHeader, displayValInHeader = _param_displayValInHeader === void 0 ? true : _param_displayValInHeader;
586
593
  var comboBoxState = Juce.getComboBoxState(id);
587
- var _useState = _sliced_to_array$5(useState(comboBoxState.getChoiceIndex()), 2), value = _useState[0], setValue = _useState[1];
588
- var _useState1 = _sliced_to_array$5(useState(comboBoxState.properties), 2), properties = _useState1[0], setProperties = _useState1[1];
594
+ var _useState = _sliced_to_array$6(useState(comboBoxState.getChoiceIndex()), 2), value = _useState[0], setValue = _useState[1];
595
+ var _useState1 = _sliced_to_array$6(useState(comboBoxState.properties), 2), properties = _useState1[0], setProperties = _useState1[1];
589
596
  var setHighlightedItem = useGlobalContext().setHighlightedItem;
590
597
  var choices = properties.choices.length ? properties.choices : items;
591
598
  var prevIndex = useRef(null);
@@ -607,13 +614,13 @@ var useCombobox = function(param) {
607
614
  };
608
615
  useEffect(function() {
609
616
  var comboBoxState = Juce.getComboBoxState(id);
610
- handleChange(comboBoxState.getChoiceIndex());
617
+ setValue(comboBoxState.getChoiceIndex());
611
618
  }, [
612
619
  id
613
620
  ]);
614
621
  useEffect(function() {
615
622
  var valueListenerId = comboBoxState.valueChangedEvent.addListener(function() {
616
- handleChange(comboBoxState.getChoiceIndex());
623
+ setValue(comboBoxState.getChoiceIndex());
617
624
  });
618
625
  var propertiesListenerId = comboBoxState.propertiesChangedEvent.addListener(function() {
619
626
  setProperties(comboBoxState.properties);
@@ -622,7 +629,9 @@ var useCombobox = function(param) {
622
629
  comboBoxState.valueChangedEvent.removeListener(valueListenerId);
623
630
  comboBoxState.propertiesChangedEvent.removeListener(propertiesListenerId);
624
631
  };
625
- });
632
+ }, [
633
+ window
634
+ ]);
626
635
  var onMouseEnter = function() {
627
636
  if (displayValInHeader) {
628
637
  setHighlightedItem({
@@ -709,15 +718,15 @@ var randomizeValue = function(min, max) {
709
718
  return Math.random() * (max - min) + min;
710
719
  };
711
720
 
712
- var css_248z$4 = ".TextInput {\n user-select: none;\n -webkit-user-select: none;\n}\n\n.TextInput::-moz-selection {\n background: transparent;\n}\n.TextInput::selection {\n background: transparent;\n}\n";
713
- styleInject(css_248z$4);
721
+ var css_248z$5 = ".TextInput {\n user-select: none;\n -webkit-user-select: none;\n}\n\n.TextInput::-moz-selection {\n background: transparent;\n}\n.TextInput::selection {\n background: transparent;\n}\n";
722
+ styleInject(css_248z$5);
714
723
 
715
- function _array_like_to_array$4(arr, len) {
724
+ function _array_like_to_array$5(arr, len) {
716
725
  if (len == null || len > arr.length) len = arr.length;
717
726
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
718
727
  return arr2;
719
728
  }
720
- function _array_with_holes$4(arr) {
729
+ function _array_with_holes$5(arr) {
721
730
  if (Array.isArray(arr)) return arr;
722
731
  }
723
732
  function _define_property$b(obj, key, value) {
@@ -733,7 +742,7 @@ function _define_property$b(obj, key, value) {
733
742
  }
734
743
  return obj;
735
744
  }
736
- function _iterable_to_array_limit$4(arr, i) {
745
+ function _iterable_to_array_limit$5(arr, i) {
737
746
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
738
747
  if (_i == null) return;
739
748
  var _arr = [];
@@ -757,7 +766,7 @@ function _iterable_to_array_limit$4(arr, i) {
757
766
  }
758
767
  return _arr;
759
768
  }
760
- function _non_iterable_rest$4() {
769
+ function _non_iterable_rest$5() {
761
770
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
762
771
  }
763
772
  function _object_spread$b(target) {
@@ -775,16 +784,16 @@ function _object_spread$b(target) {
775
784
  }
776
785
  return target;
777
786
  }
778
- function _sliced_to_array$4(arr, i) {
779
- return _array_with_holes$4(arr) || _iterable_to_array_limit$4(arr, i) || _unsupported_iterable_to_array$4(arr, i) || _non_iterable_rest$4();
787
+ function _sliced_to_array$5(arr, i) {
788
+ return _array_with_holes$5(arr) || _iterable_to_array_limit$5(arr, i) || _unsupported_iterable_to_array$5(arr, i) || _non_iterable_rest$5();
780
789
  }
781
- function _unsupported_iterable_to_array$4(o, minLen) {
790
+ function _unsupported_iterable_to_array$5(o, minLen) {
782
791
  if (!o) return;
783
- if (typeof o === "string") return _array_like_to_array$4(o, minLen);
792
+ if (typeof o === "string") return _array_like_to_array$5(o, minLen);
784
793
  var n = Object.prototype.toString.call(o).slice(8, -1);
785
794
  if (n === "Object" && o.constructor) n = o.constructor.name;
786
795
  if (n === "Map" || n === "Set") return Array.from(n);
787
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$4(o, minLen);
796
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$5(o, minLen);
788
797
  }
789
798
  // import { decimalToPercent, percentToDecimal } from '../../common/utils';
790
799
  // import debounce from 'lodash.debounce';
@@ -796,9 +805,9 @@ var InputTypes = /*#__PURE__*/ function(InputTypes) {
796
805
  function Input(param) {
797
806
  var onComplete = param.onComplete, value = param.value, min = param.min, max = param.max, _param_type = param.type, type = _param_type === void 0 ? "text" : _param_type, _param_minLength = param.minLength, minLength = _param_minLength === void 0 ? 1 : _param_minLength, _param_maxLength = param.maxLength, maxLength = _param_maxLength === void 0 ? 20 : _param_maxLength, fontSize = param.fontSize, style = param.style, className = param.className, id = param.id, _param_textColor = param.textColor, textColor = _param_textColor === void 0 ? '#999' : _param_textColor;
798
807
  var _inputRef_current;
799
- var _useState = _sliced_to_array$4(useState(value), 2), internalValue = _useState[0], setInternalValue = _useState[1];
800
- var _useState1 = _sliced_to_array$4(useState(false), 2), hasError = _useState1[0], setHasError = _useState1[1];
801
- var _useState2 = _sliced_to_array$4(useState(false), 2), hasIncompleteValue = _useState2[0], setHasIncompleteValue = _useState2[1];
808
+ var _useState = _sliced_to_array$5(useState(value), 2), internalValue = _useState[0], setInternalValue = _useState[1];
809
+ var _useState1 = _sliced_to_array$5(useState(false), 2), hasError = _useState1[0], setHasError = _useState1[1];
810
+ var _useState2 = _sliced_to_array$5(useState(false), 2), hasIncompleteValue = _useState2[0], setHasIncompleteValue = _useState2[1];
802
811
  var valueRef = useRef(null);
803
812
  var timer, timeoutVal = 2000;
804
813
  // (inputValue === '' || /^-?\d+$/.test(inputValue)
@@ -1032,15 +1041,15 @@ var getPosition = function(param) {
1032
1041
  }
1033
1042
  };
1034
1043
 
1035
- function _array_like_to_array$3(arr, len) {
1044
+ function _array_like_to_array$4(arr, len) {
1036
1045
  if (len == null || len > arr.length) len = arr.length;
1037
1046
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1038
1047
  return arr2;
1039
1048
  }
1040
- function _array_with_holes$3(arr) {
1049
+ function _array_with_holes$4(arr) {
1041
1050
  if (Array.isArray(arr)) return arr;
1042
1051
  }
1043
- function _iterable_to_array_limit$3(arr, i) {
1052
+ function _iterable_to_array_limit$4(arr, i) {
1044
1053
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
1045
1054
  if (_i == null) return;
1046
1055
  var _arr = [];
@@ -1064,19 +1073,19 @@ function _iterable_to_array_limit$3(arr, i) {
1064
1073
  }
1065
1074
  return _arr;
1066
1075
  }
1067
- function _non_iterable_rest$3() {
1076
+ function _non_iterable_rest$4() {
1068
1077
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1069
1078
  }
1070
- function _sliced_to_array$3(arr, i) {
1071
- return _array_with_holes$3(arr) || _iterable_to_array_limit$3(arr, i) || _unsupported_iterable_to_array$3(arr, i) || _non_iterable_rest$3();
1079
+ function _sliced_to_array$4(arr, i) {
1080
+ return _array_with_holes$4(arr) || _iterable_to_array_limit$4(arr, i) || _unsupported_iterable_to_array$4(arr, i) || _non_iterable_rest$4();
1072
1081
  }
1073
- function _unsupported_iterable_to_array$3(o, minLen) {
1082
+ function _unsupported_iterable_to_array$4(o, minLen) {
1074
1083
  if (!o) return;
1075
- if (typeof o === "string") return _array_like_to_array$3(o, minLen);
1084
+ if (typeof o === "string") return _array_like_to_array$4(o, minLen);
1076
1085
  var n = Object.prototype.toString.call(o).slice(8, -1);
1077
1086
  if (n === "Object" && o.constructor) n = o.constructor.name;
1078
1087
  if (n === "Map" || n === "Set") return Array.from(n);
1079
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$3(o, minLen);
1088
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$4(o, minLen);
1080
1089
  }
1081
1090
  // 20.0f, 15000.0f, 0.1f, 0.7f),800.0f
1082
1091
  // ValueType rangeStart, ValueType rangeEnd, ValueType intervalValue, ValueType skewFactor, bool useSymmetricSkew=false)
@@ -1099,9 +1108,9 @@ var useSlider = function(param) {
1099
1108
  * AudioProcessorParameter::getValue() (C++).
1100
1109
  */ // See https://github.com/juce-framework/JUCE/blob/51d11a2be6d5c97ccf12b4e5e827006e19f0555a/modules/juce_gui_extra/native/javascript/index.js#L230C1-L238C6
1101
1110
  // NOTE: We can think of this as a percentage value, in 0 to 1 format
1102
- var _useState = _sliced_to_array$3(useState(0), 2), scaledValue = _useState[0], setScaledValue = _useState[1];
1103
- var _useState1 = _sliced_to_array$3(useState(0), 2), normalisedValue = _useState1[0], setNormalisedValue = _useState1[1];
1104
- var _useState2 = _sliced_to_array$3(useState(), 2), properties = _useState2[0], setProperties = _useState2[1];
1111
+ var _useState = _sliced_to_array$4(useState(0), 2), scaledValue = _useState[0], setScaledValue = _useState[1];
1112
+ var _useState1 = _sliced_to_array$4(useState(0), 2), normalisedValue = _useState1[0], setNormalisedValue = _useState1[1];
1113
+ var _useState2 = _sliced_to_array$4(useState(), 2), properties = _useState2[0], setProperties = _useState2[1];
1105
1114
  var scaledValueRef = useRef(null);
1106
1115
  var normalisedValueRef = useRef(null);
1107
1116
  // const randomValueSetCounter = useRef<number>(null);
@@ -1291,6 +1300,8 @@ var LayoutTags = /*#__PURE__*/ function(LayoutTags) {
1291
1300
  LayoutTags["section"] = "section";
1292
1301
  LayoutTags["div"] = "div";
1293
1302
  LayoutTags["footer"] = "footer";
1303
+ LayoutTags["ul"] = "ul";
1304
+ LayoutTags["li"] = "li";
1294
1305
  return LayoutTags;
1295
1306
  }({});
1296
1307
 
@@ -1328,7 +1339,7 @@ var BoxDisplay = /*#__PURE__*/ function(BoxDisplay) {
1328
1339
  return BoxDisplay;
1329
1340
  }(BoxDisplay || {});
1330
1341
  function Box(param) {
1331
- var className = param.className, style = param.style, children = param.children, flex = param.flex, key = param.key, _param_alignItems = param.alignItems, alignItems = _param_alignItems === void 0 ? AlignItems.center : _param_alignItems, _param_justifyContent = param.justifyContent, justifyContent = _param_justifyContent === void 0 ? JustifyContent.center : _param_justifyContent, _param_display = param.display, display = _param_display === void 0 ? "flex" : _param_display, _param_width = param.width, width = _param_width === void 0 ? Width.auto : _param_width, _param_flexWrap = param.flexWrap, flexWrap = _param_flexWrap === void 0 ? FlexWrap.noWrap : _param_flexWrap, _param_height = param.height, height = _param_height === void 0 ? Height.auto : _param_height, _param_border = param.border, border = _param_border === void 0 ? false : _param_border, _param_flexDirection = param.flexDirection, flexDirection = _param_flexDirection === void 0 ? FlexDirection.row : _param_flexDirection, _param_padding = param.padding, padding = _param_padding === void 0 ? [
1342
+ var className = param.className, style = param.style, children = param.children, flex = param.flex, key = param.key, onClick = param.onClick, _param_alignItems = param.alignItems, alignItems = _param_alignItems === void 0 ? AlignItems.center : _param_alignItems, _param_justifyContent = param.justifyContent, justifyContent = _param_justifyContent === void 0 ? JustifyContent.center : _param_justifyContent, _param_display = param.display, display = _param_display === void 0 ? "flex" : _param_display, _param_width = param.width, width = _param_width === void 0 ? Width.auto : _param_width, _param_flexWrap = param.flexWrap, flexWrap = _param_flexWrap === void 0 ? FlexWrap.noWrap : _param_flexWrap, _param_height = param.height, height = _param_height === void 0 ? Height.auto : _param_height, _param_border = param.border, border = _param_border === void 0 ? false : _param_border, _param_flexDirection = param.flexDirection, flexDirection = _param_flexDirection === void 0 ? FlexDirection.row : _param_flexDirection, _param_padding = param.padding, padding = _param_padding === void 0 ? [
1332
1343
  Spacing.none,
1333
1344
  Spacing.none,
1334
1345
  Spacing.none,
@@ -1340,6 +1351,7 @@ function Box(param) {
1340
1351
  // id="globalValues"
1341
1352
  key: key,
1342
1353
  className: className,
1354
+ onClick: onClick,
1343
1355
  style: _object_spread$a({
1344
1356
  flexWrap: flexWrap,
1345
1357
  display: display,
@@ -1422,8 +1434,8 @@ function Label(param) {
1422
1434
  Label.padding = Spacing;
1423
1435
  Label.fontSize = FontSizes;
1424
1436
 
1425
- var css_248z$3 = ".RotarySlider {\n position: relative;\n height: 50px;\n width: 50px;\n border-radius: 50%;\n aspect-ratio: 1 / 1;\n}\n\n.RotarySlider-Inner {\n height: 100%;\n width: 100%;\n right: 0;\n top: 0;\n bottom: 0;\n left: 0;\n background-color: var(--bg-popover);\n border-radius: 50%;\n}\n\n.RotarySlider-Indicator {\n position: absolute;\n top: 0;\n right: 0;\n left: 50%;\n width: var(--spacing-xs);\n height: 50%;\n transform: translate(-50%, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1);\n}\n\n.RotarySlider-center-marker {\n border-color: var(--bg-popover) transparent var(--bg-popover) transparent;\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 7px 10px 7px;\n transform: rotate(180deg);\n padding-bottom: var(--spacing-sm);\n}\n";
1426
- styleInject(css_248z$3);
1437
+ var css_248z$4 = ".RotarySlider {\n position: relative;\n height: 50px;\n width: 50px;\n border-radius: 50%;\n aspect-ratio: 1 / 1;\n}\n\n.RotarySlider-Inner {\n height: 100%;\n width: 100%;\n right: 0;\n top: 0;\n bottom: 0;\n left: 0;\n background-color: var(--bg-popover);\n border-radius: 50%;\n}\n\n.RotarySlider-Indicator {\n position: absolute;\n top: 0;\n right: 0;\n left: 50%;\n width: var(--spacing-xs);\n height: 50%;\n transform: translate(-50%, 0) rotate(0) skewX(0) skewY(0) scaleX(1) scaleY(1);\n}\n\n.RotarySlider-center-marker {\n border-color: var(--bg-popover) transparent var(--bg-popover) transparent;\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 0 7px 10px 7px;\n transform: rotate(180deg);\n padding-bottom: var(--spacing-sm);\n}\n";
1438
+ styleInject(css_248z$4);
1427
1439
 
1428
1440
  function _define_property$8(obj, key, value) {
1429
1441
  if (key in obj) {
@@ -1754,15 +1766,15 @@ var Matrix = function(param) {
1754
1766
  }));
1755
1767
  };
1756
1768
 
1757
- function _array_like_to_array$2(arr, len) {
1769
+ function _array_like_to_array$3(arr, len) {
1758
1770
  if (len == null || len > arr.length) len = arr.length;
1759
1771
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1760
1772
  return arr2;
1761
1773
  }
1762
- function _array_with_holes$2(arr) {
1774
+ function _array_with_holes$3(arr) {
1763
1775
  if (Array.isArray(arr)) return arr;
1764
1776
  }
1765
- function _iterable_to_array_limit$2(arr, i) {
1777
+ function _iterable_to_array_limit$3(arr, i) {
1766
1778
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
1767
1779
  if (_i == null) return;
1768
1780
  var _arr = [];
@@ -1786,26 +1798,26 @@ function _iterable_to_array_limit$2(arr, i) {
1786
1798
  }
1787
1799
  return _arr;
1788
1800
  }
1789
- function _non_iterable_rest$2() {
1801
+ function _non_iterable_rest$3() {
1790
1802
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1791
1803
  }
1792
- function _sliced_to_array$2(arr, i) {
1793
- return _array_with_holes$2(arr) || _iterable_to_array_limit$2(arr, i) || _unsupported_iterable_to_array$2(arr, i) || _non_iterable_rest$2();
1804
+ function _sliced_to_array$3(arr, i) {
1805
+ return _array_with_holes$3(arr) || _iterable_to_array_limit$3(arr, i) || _unsupported_iterable_to_array$3(arr, i) || _non_iterable_rest$3();
1794
1806
  }
1795
- function _unsupported_iterable_to_array$2(o, minLen) {
1807
+ function _unsupported_iterable_to_array$3(o, minLen) {
1796
1808
  if (!o) return;
1797
- if (typeof o === "string") return _array_like_to_array$2(o, minLen);
1809
+ if (typeof o === "string") return _array_like_to_array$3(o, minLen);
1798
1810
  var n = Object.prototype.toString.call(o).slice(8, -1);
1799
1811
  if (n === "Object" && o.constructor) n = o.constructor.name;
1800
1812
  if (n === "Map" || n === "Set") return Array.from(n);
1801
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$2(o, minLen);
1813
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$3(o, minLen);
1802
1814
  }
1803
1815
  // 20.0f, 15000.0f, 0.1f, 0.7f),800.0f
1804
1816
  // ValueType rangeStart, ValueType rangeEnd, ValueType intervalValue, ValueType skewFactor, bool useSymmetricSkew=false)
1805
1817
  var useIndicator = function(param) {
1806
1818
  var id = param.id;
1807
1819
  var isLocalhost = window.location.hostname === 'localhost';
1808
- var _useState = _sliced_to_array$2(useState(0), 2), isActive = _useState[0], setIsActive = _useState[1];
1820
+ var _useState = _sliced_to_array$3(useState(0), 2), isActive = _useState[0], setIsActive = _useState[1];
1809
1821
  // Set the initial state
1810
1822
  useEffect(function() {
1811
1823
  if (!isLocalhost) {
@@ -1889,8 +1901,8 @@ function IndicatorLight(param) {
1889
1901
  }) : null);
1890
1902
  }
1891
1903
 
1892
- var css_248z$2 = ".IconButton {\n height: 28px;\n}\n\n.IconButton:hover:not(:disabled) {\n filter: brightness(80%);\n}\n";
1893
- styleInject(css_248z$2);
1904
+ var css_248z$3 = ".IconButton:hover:not(:disabled) {\n filter: brightness(80%);\n}\n\nsvg {\n height: 100%;\n width: 100%;\n}\n";
1905
+ styleInject(css_248z$3);
1894
1906
 
1895
1907
  function _define_property$4(obj, key, value) {
1896
1908
  if (key in obj) {
@@ -1921,17 +1933,19 @@ function _object_spread$4(target) {
1921
1933
  return target;
1922
1934
  }
1923
1935
  var ButtonIcon = /*#__PURE__*/ function(ButtonIcon) {
1924
- ButtonIcon["undo"] = "UndoIcon";
1925
- ButtonIcon["redo"] = "RedoIcon";
1926
- ButtonIcon["random"] = "RandomIcon";
1936
+ ButtonIcon["undo"] = "Undo";
1937
+ ButtonIcon["redo"] = "Redo";
1938
+ ButtonIcon["random"] = "Random";
1939
+ ButtonIcon["favorite"] = "Favorite";
1940
+ ButtonIcon["up"] = "Up";
1941
+ ButtonIcon["down"] = "Down";
1942
+ ButtonIcon["save"] = "Save";
1927
1943
  return ButtonIcon;
1928
1944
  }(ButtonIcon || {});
1929
- var UndoIcon = function(param) {
1945
+ var Undo = function(param) {
1930
1946
  var color = param.color;
1931
1947
  return /*#__PURE__*/ React__default.createElement("svg", {
1932
- width: "24px",
1933
- height: "24px",
1934
- viewBox: "0 0 24 24",
1948
+ viewBox: "0 0 25 25",
1935
1949
  "stroke-width": "1.5",
1936
1950
  fill: "none",
1937
1951
  xmlns: "http://www.w3.org/2000/svg",
@@ -1950,12 +1964,10 @@ var UndoIcon = function(param) {
1950
1964
  "stroke-linejoin": "round"
1951
1965
  }));
1952
1966
  };
1953
- var RedoIcon = function(param) {
1967
+ var Redo = function(param) {
1954
1968
  var color = param.color;
1955
1969
  return /*#__PURE__*/ React__default.createElement("svg", {
1956
- width: "24px",
1957
- height: "24px",
1958
- viewBox: "0 0 24 24",
1970
+ viewBox: "0 0 25 25",
1959
1971
  "stroke-width": "1.5",
1960
1972
  fill: "none",
1961
1973
  xmlns: "http://www.w3.org/2000/svg",
@@ -1974,12 +1986,77 @@ var RedoIcon = function(param) {
1974
1986
  "stroke-linejoin": "round"
1975
1987
  }));
1976
1988
  };
1977
- var RandomIcon = function(param) {
1989
+ var Favorite = function(param) {
1990
+ var color = param.color;
1991
+ return /*#__PURE__*/ React__default.createElement("svg", {
1992
+ "stroke-width": "1.5",
1993
+ viewBox: "-7 -7 40 40",
1994
+ fill: "none",
1995
+ xmlns: "http://www.w3.org/2000/svg",
1996
+ color: color
1997
+ }, /*#__PURE__*/ React__default.createElement("path", {
1998
+ d: "M22 8.86222C22 10.4087 21.4062 11.8941 20.3458 12.9929C17.9049 15.523 15.5374 18.1613 13.0053 20.5997C12.4249 21.1505 11.5042 21.1304 10.9488 20.5547L3.65376 12.9929C1.44875 10.7072 1.44875 7.01723 3.65376 4.73157C5.88044 2.42345 9.50794 2.42345 11.7346 4.73157L11.9998 5.00642L12.2648 4.73173C13.3324 3.6245 14.7864 3 16.3053 3C17.8242 3 19.2781 3.62444 20.3458 4.73157C21.4063 5.83045 22 7.31577 22 8.86222Z",
1999
+ stroke: color,
2000
+ "stroke-width": "1.5",
2001
+ "stroke-linejoin": "round"
2002
+ }));
2003
+ };
2004
+ var Up = function(param) {
2005
+ var color = param.color;
2006
+ return /*#__PURE__*/ React__default.createElement("svg", {
2007
+ viewBox: "0 0 25 25",
2008
+ "stroke-width": "1.5",
2009
+ fill: "none",
2010
+ xmlns: "http://www.w3.org/2000/svg",
2011
+ color: color
2012
+ }, /*#__PURE__*/ React__default.createElement("path", {
2013
+ "fill-rule": "evenodd",
2014
+ "clip-rule": "evenodd",
2015
+ d: "M5.30711 15.287C5.4232 15.5673 5.69668 15.75 6.00002 15.75H18C18.3034 15.75 18.5768 15.5673 18.6929 15.287C18.809 15.0068 18.7449 14.6842 18.5304 14.4697L12.5304 8.46967C12.2375 8.17678 11.7626 8.17678 11.4697 8.46967L5.46969 14.4697C5.25519 14.6842 5.19103 15.0068 5.30711 15.287Z",
2016
+ fill: color
2017
+ }));
2018
+ };
2019
+ var Down = function(param) {
1978
2020
  var color = param.color;
1979
2021
  return /*#__PURE__*/ React__default.createElement("svg", {
1980
- width: "24px",
1981
- height: "24px",
1982
- viewBox: "0 0 24 24",
2022
+ viewBox: "0 0 25 25",
2023
+ "stroke-width": "1.5",
2024
+ fill: "none",
2025
+ xmlns: "http://www.w3.org/2000/svg",
2026
+ color: color
2027
+ }, /*#__PURE__*/ React__default.createElement("path", {
2028
+ "fill-rule": "evenodd",
2029
+ "clip-rule": "evenodd",
2030
+ d: "M5.30711 8.71299C5.4232 8.43273 5.69668 8.25 6.00002 8.25H18C18.3034 8.25 18.5768 8.43273 18.6929 8.71299C18.809 8.99324 18.7449 9.31583 18.5304 9.53033L12.5304 15.5303C12.2375 15.8232 11.7626 15.8232 11.4697 15.5303L5.46969 9.53033C5.25519 9.31583 5.19103 8.99324 5.30711 8.71299Z",
2031
+ fill: color
2032
+ }));
2033
+ };
2034
+ var Save = function(param) {
2035
+ var color = param.color;
2036
+ return /*#__PURE__*/ React__default.createElement("svg", {
2037
+ "stroke-width": "1.5",
2038
+ viewBox: "-7 -7 40 40",
2039
+ fill: "none",
2040
+ xmlns: "http://www.w3.org/2000/svg",
2041
+ color: color
2042
+ }, /*#__PURE__*/ React__default.createElement("path", {
2043
+ d: "M3 19V5C3 3.89543 3.89543 3 5 3H16.1716C16.702 3 17.2107 3.21071 17.5858 3.58579L20.4142 6.41421C20.7893 6.78929 21 7.29799 21 7.82843V19C21 20.1046 20.1046 21 19 21H5C3.89543 21 3 20.1046 3 19Z",
2044
+ stroke: color,
2045
+ "stroke-width": "1.5"
2046
+ }), /*#__PURE__*/ React__default.createElement("path", {
2047
+ d: "M8.6 9H15.4C15.7314 9 16 8.73137 16 8.4V3.6C16 3.26863 15.7314 3 15.4 3H8.6C8.26863 3 8 3.26863 8 3.6V8.4C8 8.73137 8.26863 9 8.6 9Z",
2048
+ stroke: color,
2049
+ "stroke-width": "1.5"
2050
+ }), /*#__PURE__*/ React__default.createElement("path", {
2051
+ d: "M6 13.6V21H18V13.6C18 13.2686 17.7314 13 17.4 13H6.6C6.26863 13 6 13.2686 6 13.6Z",
2052
+ stroke: color,
2053
+ "stroke-width": "1.5"
2054
+ }));
2055
+ };
2056
+ var Random = function(param) {
2057
+ var color = param.color;
2058
+ return /*#__PURE__*/ React__default.createElement("svg", {
2059
+ viewBox: "0 0 25 25",
1983
2060
  "stroke-width": "1.5",
1984
2061
  fill: "none",
1985
2062
  xmlns: "http://www.w3.org/2000/svg",
@@ -2034,29 +2111,45 @@ var RandomIcon = function(param) {
2034
2111
  }));
2035
2112
  };
2036
2113
  var icons = {
2037
- UndoIcon: UndoIcon,
2038
- RedoIcon: RedoIcon,
2039
- RandomIcon: RandomIcon
2114
+ Undo: Undo,
2115
+ Redo: Redo,
2116
+ Random: Random,
2117
+ Favorite: Favorite,
2118
+ Up: Up,
2119
+ Down: Down,
2120
+ Save: Save
2040
2121
  };
2122
+ // const getViewBoxWidth = (width: string) => {
2123
+ // const numericWidth = width.match(/\d+/)?.[0];
2124
+ // return numericWidth !== undefined ? parseInt(numericWidth) : 24;
2125
+ // };
2041
2126
  function IconButton(param) {
2042
- 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_backgroundColor = param.backgroundColor, backgroundColor = _param_backgroundColor === void 0 ? 'var(--bg-page)' : _param_backgroundColor, className = param.className, style = param.style;
2127
+ 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_backgroundColor = param.backgroundColor, backgroundColor = _param_backgroundColor === void 0 ? 'var(--bg-page)' : _param_backgroundColor, _param_padding = param.padding, padding = _param_padding === void 0 ? [
2128
+ Button.padding.none
2129
+ ] : _param_padding, _param_margin = param.margin, margin = _param_margin === void 0 ? [
2130
+ Button.margin.none
2131
+ ] : _param_margin, _param_width = param.width, width = _param_width === void 0 ? '24px' : _param_width, _param_height = param.height, height = _param_height === void 0 ? '24px' : _param_height, className = param.className, style = param.style;
2043
2132
  var Icon = icons[icon];
2044
2133
  return /*#__PURE__*/ React__default.createElement(Button, {
2045
2134
  id: id,
2046
2135
  className: "IconButton ".concat(className),
2047
2136
  onClick: onClick,
2048
- padding: [
2049
- Button.padding.medium
2050
- ],
2137
+ padding: padding,
2138
+ margin: margin,
2051
2139
  disabled: disabled,
2052
2140
  style: _object_spread$4({
2053
- backgroundColor: backgroundColor
2141
+ backgroundColor: backgroundColor,
2142
+ width: width,
2143
+ height: height
2054
2144
  }, style)
2055
2145
  }, /*#__PURE__*/ React__default.createElement(Icon, {
2146
+ width: width,
2056
2147
  color: disabled ? 'var(--color-gray-400)' : color
2057
2148
  }));
2058
2149
  }
2059
2150
  IconButton.icon = ButtonIcon;
2151
+ IconButton.padding = Spacing;
2152
+ IconButton.margin = Spacing;
2060
2153
 
2061
2154
  function _define_property$3(obj, key, value) {
2062
2155
  if (key in obj) {
@@ -2101,9 +2194,9 @@ function KeyValueDisplayScreen(param) {
2101
2194
  }, data ? /*#__PURE__*/ React__default.createElement(React__default.Fragment, null, /*#__PURE__*/ React__default.createElement(Box, {
2102
2195
  justifyContent: Box.justifyContent.flexStart,
2103
2196
  padding: [
2104
- Box.padding.xSmall,
2197
+ Box.padding.small,
2105
2198
  Box.padding.medium,
2106
- Box.padding.none,
2199
+ Box.padding.xSmall,
2107
2200
  Box.padding.medium
2108
2201
  ],
2109
2202
  className: classnames('KeyValueDisplayScreen', 'uppercase', 'bg-popover', 'rounded-sm'),
@@ -2113,20 +2206,14 @@ function KeyValueDisplayScreen(param) {
2113
2206
  color: "var(--color-text)"
2114
2207
  }
2115
2208
  }, /*#__PURE__*/ React__default.createElement(Label, {
2116
- className: 'KeyValueDisplayScreen-Item',
2117
- padding: [
2118
- Label.padding.xSmall,
2119
- Label.padding.mediumLarge,
2120
- Label.padding.none,
2121
- Label.padding.medium
2122
- ]
2209
+ className: 'KeyValueDisplayScreen-Item'
2123
2210
  }, "".concat(data === null || data === void 0 ? void 0 : data.key, ":")), /*#__PURE__*/ React__default.createElement(Label, {
2124
- padding: [
2125
- Label.padding.xSmall,
2126
- Label.padding.mediumLarge,
2127
- Label.padding.none,
2128
- Label.padding.none
2129
- ],
2211
+ // padding={[
2212
+ // Label.padding.xSmall,
2213
+ // Label.padding.mediumLarge,
2214
+ // Label.padding.none,
2215
+ // Label.padding.none,
2216
+ // ]}
2130
2217
  className: 'KeyValueDisplayScreen-Item'
2131
2218
  }, data === null || data === void 0 ? void 0 : data.value))) : /*#__PURE__*/ React__default.createElement(React__default.Fragment, null, /*#__PURE__*/ React__default.createElement(Box, null, /*#__PURE__*/ React__default.createElement(Label, null, "Antimatter Audio")), /*#__PURE__*/ React__default.createElement(Box, null, /*#__PURE__*/ React__default.createElement(Label, null))));
2132
2219
  }
@@ -2198,15 +2285,15 @@ function LinePlot(param) {
2198
2285
  })));
2199
2286
  }
2200
2287
 
2201
- var css_248z$1 = ".Oscilloscope {\n background: #0EAC8B;\n box-shadow: inset 0 0 20px #086350;\n height: 200px;\n };";
2202
- styleInject(css_248z$1);
2288
+ var css_248z$2 = ".Oscilloscope {\n background: #0EAC8B;\n box-shadow: inset 0 0 20px #086350;\n height: 200px;\n };";
2289
+ styleInject(css_248z$2);
2203
2290
 
2204
- function _array_like_to_array$1(arr, len) {
2291
+ function _array_like_to_array$2(arr, len) {
2205
2292
  if (len == null || len > arr.length) len = arr.length;
2206
2293
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
2207
2294
  return arr2;
2208
2295
  }
2209
- function _array_with_holes$1(arr) {
2296
+ function _array_with_holes$2(arr) {
2210
2297
  if (Array.isArray(arr)) return arr;
2211
2298
  }
2212
2299
  function _define_property$2(obj, key, value) {
@@ -2222,7 +2309,7 @@ function _define_property$2(obj, key, value) {
2222
2309
  }
2223
2310
  return obj;
2224
2311
  }
2225
- function _iterable_to_array_limit$1(arr, i) {
2312
+ function _iterable_to_array_limit$2(arr, i) {
2226
2313
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
2227
2314
  if (_i == null) return;
2228
2315
  var _arr = [];
@@ -2246,7 +2333,7 @@ function _iterable_to_array_limit$1(arr, i) {
2246
2333
  }
2247
2334
  return _arr;
2248
2335
  }
2249
- function _non_iterable_rest$1() {
2336
+ function _non_iterable_rest$2() {
2250
2337
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2251
2338
  }
2252
2339
  function _object_spread$2(target) {
@@ -2264,20 +2351,20 @@ function _object_spread$2(target) {
2264
2351
  }
2265
2352
  return target;
2266
2353
  }
2267
- function _sliced_to_array$1(arr, i) {
2268
- return _array_with_holes$1(arr) || _iterable_to_array_limit$1(arr, i) || _unsupported_iterable_to_array$1(arr, i) || _non_iterable_rest$1();
2354
+ function _sliced_to_array$2(arr, i) {
2355
+ return _array_with_holes$2(arr) || _iterable_to_array_limit$2(arr, i) || _unsupported_iterable_to_array$2(arr, i) || _non_iterable_rest$2();
2269
2356
  }
2270
- function _unsupported_iterable_to_array$1(o, minLen) {
2357
+ function _unsupported_iterable_to_array$2(o, minLen) {
2271
2358
  if (!o) return;
2272
- if (typeof o === "string") return _array_like_to_array$1(o, minLen);
2359
+ if (typeof o === "string") return _array_like_to_array$2(o, minLen);
2273
2360
  var n = Object.prototype.toString.call(o).slice(8, -1);
2274
2361
  if (n === "Object" && o.constructor) n = o.constructor.name;
2275
2362
  if (n === "Map" || n === "Set") return Array.from(n);
2276
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$1(o, minLen);
2363
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$2(o, minLen);
2277
2364
  }
2278
2365
  function Oscilloscope(param) {
2279
2366
  var width = param.width, height = param.height, className = param.className, style = param.style, id = param.id;
2280
- var _useState = _sliced_to_array$1(useState([]), 2), viewData = _useState[0], setViewData = _useState[1];
2367
+ var _useState = _sliced_to_array$2(useState([]), 2), viewData = _useState[0], setViewData = _useState[1];
2281
2368
  useEffect(function() {
2282
2369
  //@ts-expect-error
2283
2370
  var removalToken = window.__JUCE__.backend.addEventListener('oscData', function() {
@@ -2306,18 +2393,21 @@ function Oscilloscope(param) {
2306
2393
  }));
2307
2394
  }
2308
2395
 
2309
- var css_248z = "@import '../../styles.css';\n.ModuleHeader {\n background-color: var(--bg-section);\n font-weight: normal;\n}\n\n.ModuleHeader-Name {\n font-size: var(--text-lg);\n letter-spacing: 4px;\n text-transform: uppercase;\n font-weight: lighter;\n height: 1.75rem;\n color: var(--color-brand);\n}\n\n.ModuleHeader-Subheading {\n font-size: var(--text-xs);\n font-weight: lighter;\n letter-spacing: 2.25px;\n text-transform: uppercase;\n color: var(--color-brand);\n}\n";
2396
+ var css_248z$1 = "@import '../../styles.css';\n.ModuleHeader {\n background-color: var(--bg-section);\n font-weight: normal;\n}\n\n.ModuleHeader-Name {\n font-size: var(--text-lg);\n letter-spacing: 4px;\n text-transform: uppercase;\n font-weight: lighter;\n height: 1.75rem;\n color: var(--color-brand);\n}\n\n.ModuleHeader-Subheading {\n font-size: var(--text-xs);\n font-weight: lighter;\n letter-spacing: 2.25px;\n text-transform: uppercase;\n color: var(--color-brand);\n}\n";
2397
+ styleInject(css_248z$1);
2398
+
2399
+ var css_248z = ".PresetManagerContainer {\n width: 100%;\n height: 100%;\n background-color: var(--bg-page);\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-popover);\n}\n\n.PresetManagerPanel:focus,\n.PresetManagerPanel:focus-visible {\n outline: none;\n}\n\n/* .PresetManagerCategoryItem {\n font-family: var(--font-leagueSpartan);\n cursor: pointer;\n background: var(--color-gray-800);\n text-transform: uppercase;\n &:hover,\n &.isSelected {\n background: var(--bg-selected);\n }\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";
2310
2400
  styleInject(css_248z);
2311
2401
 
2312
- function _array_like_to_array(arr, len) {
2402
+ function _array_like_to_array$1(arr, len) {
2313
2403
  if (len == null || len > arr.length) len = arr.length;
2314
2404
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
2315
2405
  return arr2;
2316
2406
  }
2317
- function _array_with_holes(arr) {
2407
+ function _array_with_holes$1(arr) {
2318
2408
  if (Array.isArray(arr)) return arr;
2319
2409
  }
2320
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2410
+ function asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, key, arg) {
2321
2411
  try {
2322
2412
  var info = gen[key](arg);
2323
2413
  var value = info.value;
@@ -2331,35 +2421,22 @@ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2331
2421
  Promise.resolve(value).then(_next, _throw);
2332
2422
  }
2333
2423
  }
2334
- function _async_to_generator(fn) {
2424
+ function _async_to_generator$1(fn) {
2335
2425
  return function() {
2336
2426
  var self = this, args = arguments;
2337
2427
  return new Promise(function(resolve, reject) {
2338
2428
  var gen = fn.apply(self, args);
2339
2429
  function _next(value) {
2340
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
2430
+ asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, "next", value);
2341
2431
  }
2342
2432
  function _throw(err) {
2343
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
2433
+ asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, "throw", err);
2344
2434
  }
2345
2435
  _next(undefined);
2346
2436
  });
2347
2437
  };
2348
2438
  }
2349
- function _define_property$1(obj, key, value) {
2350
- if (key in obj) {
2351
- Object.defineProperty(obj, key, {
2352
- value: value,
2353
- enumerable: true,
2354
- configurable: true,
2355
- writable: true
2356
- });
2357
- } else {
2358
- obj[key] = value;
2359
- }
2360
- return obj;
2361
- }
2362
- function _iterable_to_array_limit(arr, i) {
2439
+ function _iterable_to_array_limit$1(arr, i) {
2363
2440
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
2364
2441
  if (_i == null) return;
2365
2442
  var _arr = [];
@@ -2383,22 +2460,489 @@ function _iterable_to_array_limit(arr, i) {
2383
2460
  }
2384
2461
  return _arr;
2385
2462
  }
2386
- function _non_iterable_rest() {
2463
+ function _non_iterable_rest$1() {
2387
2464
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2388
2465
  }
2389
- function _object_spread$1(target) {
2390
- for(var i = 1; i < arguments.length; i++){
2391
- var source = arguments[i] != null ? arguments[i] : {};
2392
- var ownKeys = Object.keys(source);
2393
- if (typeof Object.getOwnPropertySymbols === "function") {
2394
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
2395
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
2396
- }));
2397
- }
2398
- ownKeys.forEach(function(key) {
2399
- _define_property$1(target, key, source[key]);
2400
- });
2401
- }
2466
+ function _object_destructuring_empty(o) {
2467
+ if (o === null || o === void 0) throw new TypeError("Cannot destructure " + o);
2468
+ return o;
2469
+ }
2470
+ function _sliced_to_array$1(arr, i) {
2471
+ return _array_with_holes$1(arr) || _iterable_to_array_limit$1(arr, i) || _unsupported_iterable_to_array$1(arr, i) || _non_iterable_rest$1();
2472
+ }
2473
+ function _unsupported_iterable_to_array$1(o, minLen) {
2474
+ if (!o) return;
2475
+ if (typeof o === "string") return _array_like_to_array$1(o, minLen);
2476
+ var n = Object.prototype.toString.call(o).slice(8, -1);
2477
+ if (n === "Object" && o.constructor) n = o.constructor.name;
2478
+ if (n === "Map" || n === "Set") return Array.from(n);
2479
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$1(o, minLen);
2480
+ }
2481
+ function _ts_generator$1(thisArg, body) {
2482
+ var f, y, t, _ = {
2483
+ label: 0,
2484
+ sent: function() {
2485
+ if (t[0] & 1) throw t[1];
2486
+ return t[1];
2487
+ },
2488
+ trys: [],
2489
+ ops: []
2490
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
2491
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
2492
+ return this;
2493
+ }), g;
2494
+ function verb(n) {
2495
+ return function(v) {
2496
+ return step([
2497
+ n,
2498
+ v
2499
+ ]);
2500
+ };
2501
+ }
2502
+ function step(op) {
2503
+ if (f) throw new TypeError("Generator is already executing.");
2504
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
2505
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
2506
+ if (y = 0, t) op = [
2507
+ op[0] & 2,
2508
+ t.value
2509
+ ];
2510
+ switch(op[0]){
2511
+ case 0:
2512
+ case 1:
2513
+ t = op;
2514
+ break;
2515
+ case 4:
2516
+ _.label++;
2517
+ return {
2518
+ value: op[1],
2519
+ done: false
2520
+ };
2521
+ case 5:
2522
+ _.label++;
2523
+ y = op[1];
2524
+ op = [
2525
+ 0
2526
+ ];
2527
+ continue;
2528
+ case 7:
2529
+ op = _.ops.pop();
2530
+ _.trys.pop();
2531
+ continue;
2532
+ default:
2533
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
2534
+ _ = 0;
2535
+ continue;
2536
+ }
2537
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
2538
+ _.label = op[1];
2539
+ break;
2540
+ }
2541
+ if (op[0] === 6 && _.label < t[1]) {
2542
+ _.label = t[1];
2543
+ t = op;
2544
+ break;
2545
+ }
2546
+ if (t && _.label < t[2]) {
2547
+ _.label = t[2];
2548
+ _.ops.push(op);
2549
+ break;
2550
+ }
2551
+ if (t[2]) _.ops.pop();
2552
+ _.trys.pop();
2553
+ continue;
2554
+ }
2555
+ op = body.call(thisArg, _);
2556
+ } catch (e) {
2557
+ op = [
2558
+ 6,
2559
+ e
2560
+ ];
2561
+ y = 0;
2562
+ } finally{
2563
+ f = t = 0;
2564
+ }
2565
+ if (op[0] & 5) throw op[1];
2566
+ return {
2567
+ value: op[0] ? op[1] : void 0,
2568
+ done: true
2569
+ };
2570
+ }
2571
+ }
2572
+ function PresetManager(param) {
2573
+ _object_destructuring_empty(param);
2574
+ var _useState = _sliced_to_array$1(useState([]), 2), presetList = _useState[0], setPresetList = _useState[1];
2575
+ var _useState1 = _sliced_to_array$1(useState(false), 2); _useState1[0]; var setIsSaving = _useState1[1];
2576
+ var savePresetFunc = Juce.getNativeFunction('savePreset');
2577
+ var loadPresetFunc = Juce.getNativeFunction('loadPreset');
2578
+ var getAllPresetsFunc = Juce.getNativeFunction('getAllPresets');
2579
+ var getCurrentPresetFunc = Juce.getNativeFunction('getCurrentPreset');
2580
+ var isDirtyFunc = Juce.getNativeFunction('canUndo');
2581
+ var _useState2 = _sliced_to_array$1(useState(), 2), selectedPreset = _useState2[0], setSelectedPreset = _useState2[1];
2582
+ var isLocalhost = window.location.hostname === 'localhost';
2583
+ var _useState3 = _sliced_to_array$1(useState(false), 2), isDirty = _useState3[0], setIsDirty = _useState3[1];
2584
+ useEffect(function() {
2585
+ if (!isLocalhost) {
2586
+ var isDirtyListenerId = //@ts-expect-error
2587
+ window.__JUCE__.backend.addEventListener('updateUndoButton', function(event) {
2588
+ setIsDirty(event);
2589
+ });
2590
+ return function cleanup() {
2591
+ //@ts-expect-error
2592
+ window.__JUCE__.backend.removeEventListener(isDirtyListenerId);
2593
+ };
2594
+ } else {
2595
+ return;
2596
+ }
2597
+ }, [
2598
+ window
2599
+ ]);
2600
+ useEffect(function() {
2601
+ var getIsDirtyState = function() {
2602
+ return _async_to_generator$1(function() {
2603
+ var isDirtyState, error;
2604
+ return _ts_generator$1(this, function(_state) {
2605
+ switch(_state.label){
2606
+ case 0:
2607
+ _state.trys.push([
2608
+ 0,
2609
+ 2,
2610
+ ,
2611
+ 3
2612
+ ]);
2613
+ return [
2614
+ 4,
2615
+ isDirtyFunc()
2616
+ ];
2617
+ case 1:
2618
+ isDirtyState = _state.sent();
2619
+ setIsDirty(isDirtyState);
2620
+ return [
2621
+ 3,
2622
+ 3
2623
+ ];
2624
+ case 2:
2625
+ error = _state.sent();
2626
+ console.log(error);
2627
+ return [
2628
+ 3,
2629
+ 3
2630
+ ];
2631
+ case 3:
2632
+ return [
2633
+ 2
2634
+ ];
2635
+ }
2636
+ });
2637
+ })();
2638
+ };
2639
+ getIsDirtyState();
2640
+ });
2641
+ var loadAllPresets = function(selectedPreset) {
2642
+ return _async_to_generator$1(function() {
2643
+ var allPresets, currentPresetFromJuce, currentPreset, error;
2644
+ return _ts_generator$1(this, function(_state) {
2645
+ switch(_state.label){
2646
+ case 0:
2647
+ _state.trys.push([
2648
+ 0,
2649
+ 3,
2650
+ ,
2651
+ 4
2652
+ ]);
2653
+ return [
2654
+ 4,
2655
+ getAllPresetsFunc()
2656
+ ];
2657
+ case 1:
2658
+ allPresets = _state.sent();
2659
+ return [
2660
+ 4,
2661
+ getCurrentPresetFunc()
2662
+ ];
2663
+ case 2:
2664
+ currentPresetFromJuce = _state.sent();
2665
+ currentPreset = currentPresetFromJuce || allPresets[0];
2666
+ setPresetList(allPresets);
2667
+ if (currentPreset) {
2668
+ loadPresetFunc(currentPreset);
2669
+ setSelectedPreset(currentPreset);
2670
+ } else {
2671
+ setSelectedPreset('New Preset');
2672
+ }
2673
+ return [
2674
+ 3,
2675
+ 4
2676
+ ];
2677
+ case 3:
2678
+ error = _state.sent();
2679
+ console.log(error);
2680
+ return [
2681
+ 3,
2682
+ 4
2683
+ ];
2684
+ case 4:
2685
+ return [
2686
+ 2
2687
+ ];
2688
+ }
2689
+ });
2690
+ })();
2691
+ };
2692
+ var loadPreset = function(value) {
2693
+ setSelectedPreset(value);
2694
+ loadPresetFunc(value);
2695
+ };
2696
+ var loadNextPreset = function(currentValue) {
2697
+ var nextIndex = presetList.indexOf(currentValue) + 1;
2698
+ if (nextIndex < presetList.length) {
2699
+ loadPreset(presetList[nextIndex]);
2700
+ } else {
2701
+ loadPreset(presetList[0]);
2702
+ }
2703
+ };
2704
+ var loadPreviousPreset = function(currentValue) {
2705
+ var prevIndex = presetList.indexOf(currentValue) - 1;
2706
+ if (prevIndex >= 0) {
2707
+ loadPreset(presetList[prevIndex]);
2708
+ } else {
2709
+ loadPreset(presetList[presetList.length - 1]);
2710
+ }
2711
+ };
2712
+ var savePreset = function(name) {
2713
+ var callSavePreset = function(name) {
2714
+ return _async_to_generator$1(function() {
2715
+ var error;
2716
+ return _ts_generator$1(this, function(_state) {
2717
+ switch(_state.label){
2718
+ case 0:
2719
+ setIsSaving(true);
2720
+ _state.label = 1;
2721
+ case 1:
2722
+ _state.trys.push([
2723
+ 1,
2724
+ 3,
2725
+ ,
2726
+ 4
2727
+ ]);
2728
+ return [
2729
+ 4,
2730
+ savePresetFunc(name)
2731
+ ];
2732
+ case 2:
2733
+ _state.sent();
2734
+ setIsSaving(false);
2735
+ loadAllPresets();
2736
+ return [
2737
+ 3,
2738
+ 4
2739
+ ];
2740
+ case 3:
2741
+ error = _state.sent();
2742
+ console.log(error);
2743
+ return [
2744
+ 3,
2745
+ 4
2746
+ ];
2747
+ case 4:
2748
+ return [
2749
+ 2
2750
+ ];
2751
+ }
2752
+ });
2753
+ })();
2754
+ };
2755
+ callSavePreset(name);
2756
+ };
2757
+ useEffect(function() {
2758
+ loadAllPresets();
2759
+ }, []);
2760
+ return /*#__PURE__*/ React__default.createElement(Box, {
2761
+ justifyContent: Box.justifyContent.flexStart,
2762
+ padding: [
2763
+ Box.padding.none,
2764
+ Box.padding.medium
2765
+ ],
2766
+ height: "30px",
2767
+ className: "uppercase bg-popover rounded-sm PresetManagerContainer",
2768
+ style: {
2769
+ maxWidth: '325px',
2770
+ backgroundColor: "var(--bg-page)",
2771
+ color: "var(--color-text)"
2772
+ }
2773
+ }, /*#__PURE__*/ React__default.createElement(Listbox, null, /*#__PURE__*/ React__default.createElement(Listbox.Button, {
2774
+ className: "PresetManagerButton"
2775
+ }, /*#__PURE__*/ React__default.createElement(Box, {
2776
+ flex: "0 0 24px",
2777
+ width: "24px"
2778
+ }, /*#__PURE__*/ React__default.createElement(IconButton, {
2779
+ id: "savePreset",
2780
+ onClick: function(e) {
2781
+ console.log(selectedPreset, 'selected');
2782
+ e.preventDefault();
2783
+ selectedPreset && savePreset(selectedPreset);
2784
+ },
2785
+ icon: IconButton.icon.save
2786
+ })), /*#__PURE__*/ React__default.createElement(Box, {
2787
+ flex: "10",
2788
+ height: "100%",
2789
+ padding: [
2790
+ Box.padding.none,
2791
+ Box.padding.medium,
2792
+ Box.padding.none,
2793
+ Box.padding.small
2794
+ ]
2795
+ }, /*#__PURE__*/ React__default.createElement(Box, {
2796
+ className: "PresetManagerButtonLabelOuterContainer",
2797
+ style: {
2798
+ width: 'auto'
2799
+ }
2800
+ }, /*#__PURE__*/ React__default.createElement(Box, {
2801
+ className: "PresetManagerButtonLabelContainer ".concat(isDirty ? 'isDirty' : '')
2802
+ }, /*#__PURE__*/ React__default.createElement(Label, {
2803
+ className: 'PresetManagerButtonLabel'
2804
+ }, selectedPreset)))), /*#__PURE__*/ React__default.createElement(Box, {
2805
+ flex: "0"
2806
+ }, /*#__PURE__*/ React__default.createElement(IconButton, {
2807
+ id: "previousPreset",
2808
+ width: "20px",
2809
+ icon: IconButton.icon.up,
2810
+ onClick: function(e) {
2811
+ e.preventDefault();
2812
+ selectedPreset && loadPreviousPreset(selectedPreset);
2813
+ }
2814
+ }), /*#__PURE__*/ React__default.createElement(IconButton, {
2815
+ id: "nextPreset",
2816
+ width: "20px",
2817
+ icon: IconButton.icon.down,
2818
+ onClick: function(e) {
2819
+ e.preventDefault();
2820
+ selectedPreset && loadNextPreset(selectedPreset);
2821
+ }
2822
+ }))), /*#__PURE__*/ React__default.createElement(Listbox.Options, {
2823
+ anchor: "bottom start",
2824
+ className: 'PresetManagerPanel'
2825
+ }, /*#__PURE__*/ React__default.createElement(Box, {
2826
+ height: "100%",
2827
+ justifyContent: Box.justifyContent.flexStart,
2828
+ alignItems: Box.alignItems.flexStart
2829
+ }, /*#__PURE__*/ React__default.createElement(Box, {
2830
+ tag: Box.tag.ul,
2831
+ height: "100%",
2832
+ alignItems: Box.alignItems.flexStart,
2833
+ justifyContent: Box.justifyContent.flexStart,
2834
+ flexDirection: Box.flexDirection.column
2835
+ }, presetList.map(function(item) {
2836
+ return /*#__PURE__*/ React__default.createElement(Listbox.Option, {
2837
+ value: item,
2838
+ onClick: function() {
2839
+ loadPreset(item);
2840
+ },
2841
+ className: "PresetManagerListItem ".concat(item === selectedPreset ? 'isSelected' : '')
2842
+ }, /*#__PURE__*/ React__default.createElement(Box, {
2843
+ alignItems: Box.alignItems.flexStart,
2844
+ justifyContent: Box.justifyContent.flexStart,
2845
+ flexDirection: Box.flexDirection.column,
2846
+ padding: [
2847
+ Box.padding.mediumSmall,
2848
+ Box.padding.large
2849
+ ]
2850
+ }, /*#__PURE__*/ React__default.createElement("span", {
2851
+ className: "PresetManagerListItemText"
2852
+ }, item)));
2853
+ }))))));
2854
+ }
2855
+
2856
+ function _array_like_to_array(arr, len) {
2857
+ if (len == null || len > arr.length) len = arr.length;
2858
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
2859
+ return arr2;
2860
+ }
2861
+ function _array_with_holes(arr) {
2862
+ if (Array.isArray(arr)) return arr;
2863
+ }
2864
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2865
+ try {
2866
+ var info = gen[key](arg);
2867
+ var value = info.value;
2868
+ } catch (error) {
2869
+ reject(error);
2870
+ return;
2871
+ }
2872
+ if (info.done) {
2873
+ resolve(value);
2874
+ } else {
2875
+ Promise.resolve(value).then(_next, _throw);
2876
+ }
2877
+ }
2878
+ function _async_to_generator(fn) {
2879
+ return function() {
2880
+ var self = this, args = arguments;
2881
+ return new Promise(function(resolve, reject) {
2882
+ var gen = fn.apply(self, args);
2883
+ function _next(value) {
2884
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
2885
+ }
2886
+ function _throw(err) {
2887
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
2888
+ }
2889
+ _next(undefined);
2890
+ });
2891
+ };
2892
+ }
2893
+ function _define_property$1(obj, key, value) {
2894
+ if (key in obj) {
2895
+ Object.defineProperty(obj, key, {
2896
+ value: value,
2897
+ enumerable: true,
2898
+ configurable: true,
2899
+ writable: true
2900
+ });
2901
+ } else {
2902
+ obj[key] = value;
2903
+ }
2904
+ return obj;
2905
+ }
2906
+ function _iterable_to_array_limit(arr, i) {
2907
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
2908
+ if (_i == null) return;
2909
+ var _arr = [];
2910
+ var _n = true;
2911
+ var _d = false;
2912
+ var _s, _e;
2913
+ try {
2914
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
2915
+ _arr.push(_s.value);
2916
+ if (i && _arr.length === i) break;
2917
+ }
2918
+ } catch (err) {
2919
+ _d = true;
2920
+ _e = err;
2921
+ } finally{
2922
+ try {
2923
+ if (!_n && _i["return"] != null) _i["return"]();
2924
+ } finally{
2925
+ if (_d) throw _e;
2926
+ }
2927
+ }
2928
+ return _arr;
2929
+ }
2930
+ function _non_iterable_rest() {
2931
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2932
+ }
2933
+ function _object_spread$1(target) {
2934
+ for(var i = 1; i < arguments.length; i++){
2935
+ var source = arguments[i] != null ? arguments[i] : {};
2936
+ var ownKeys = Object.keys(source);
2937
+ if (typeof Object.getOwnPropertySymbols === "function") {
2938
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
2939
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
2940
+ }));
2941
+ }
2942
+ ownKeys.forEach(function(key) {
2943
+ _define_property$1(target, key, source[key]);
2944
+ });
2945
+ }
2402
2946
  return target;
2403
2947
  }
2404
2948
  function _sliced_to_array(arr, i) {
@@ -2413,7 +2957,7 @@ function _unsupported_iterable_to_array(o, minLen) {
2413
2957
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
2414
2958
  }
2415
2959
  function _ts_generator(thisArg, body) {
2416
- var f, y, t, g, _ = {
2960
+ var f, y, t, _ = {
2417
2961
  label: 0,
2418
2962
  sent: function() {
2419
2963
  if (t[0] & 1) throw t[1];
@@ -2421,12 +2965,8 @@ function _ts_generator(thisArg, body) {
2421
2965
  },
2422
2966
  trys: [],
2423
2967
  ops: []
2424
- };
2425
- return g = {
2426
- next: verb(0),
2427
- "throw": verb(1),
2428
- "return": verb(2)
2429
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
2968
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
2969
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
2430
2970
  return this;
2431
2971
  }), g;
2432
2972
  function verb(n) {
@@ -2439,7 +2979,7 @@ function _ts_generator(thisArg, body) {
2439
2979
  }
2440
2980
  function step(op) {
2441
2981
  if (f) throw new TypeError("Generator is already executing.");
2442
- while(_)try {
2982
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
2443
2983
  if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
2444
2984
  if (y = 0, t) op = [
2445
2985
  op[0] & 2,
@@ -2547,8 +3087,8 @@ function ModuleHeader(param) {
2547
3087
  window
2548
3088
  ]);
2549
3089
  useEffect(function() {
2550
- var getUndoRedoState = /*#__PURE__*/ function() {
2551
- var _ref = _async_to_generator(function() {
3090
+ var getUndoRedoState = function() {
3091
+ return _async_to_generator(function() {
2552
3092
  var canUndoState, canRedoState, error;
2553
3093
  return _ts_generator(this, function(_state) {
2554
3094
  switch(_state.label){
@@ -2590,11 +3130,8 @@ function ModuleHeader(param) {
2590
3130
  ];
2591
3131
  }
2592
3132
  });
2593
- });
2594
- return function getUndoRedoState() {
2595
- return _ref.apply(this, arguments);
2596
- };
2597
- }();
3133
+ })();
3134
+ };
2598
3135
  getUndoRedoState();
2599
3136
  });
2600
3137
  return /*#__PURE__*/ React__default.createElement(Box, {
@@ -2631,16 +3168,31 @@ function ModuleHeader(param) {
2631
3168
  value: globalState === null || globalState === void 0 ? void 0 : (_globalState_highlightedItem1 = globalState.highlightedItem) === null || _globalState_highlightedItem1 === void 0 ? void 0 : _globalState_highlightedItem1.value
2632
3169
  }
2633
3170
  })), /*#__PURE__*/ React__default.createElement(Box, {
3171
+ alignItems: Box.alignItems.flexStart,
3172
+ flex: "0 0 325px"
3173
+ }, /*#__PURE__*/ React__default.createElement(PresetManager, null)), /*#__PURE__*/ React__default.createElement(Box, {
2634
3174
  flex: "0"
2635
3175
  }, /*#__PURE__*/ React__default.createElement(IconButton, {
2636
3176
  id: "undo",
3177
+ width: "30px",
3178
+ height: "30px",
2637
3179
  icon: IconButton.icon.undo,
3180
+ padding: [
3181
+ IconButton.padding.none,
3182
+ IconButton.padding.small
3183
+ ],
2638
3184
  disabled: !canUndo,
2639
3185
  onClick: function() {
2640
3186
  handleUndo();
2641
3187
  }
2642
3188
  }), /*#__PURE__*/ React__default.createElement(IconButton, {
2643
3189
  id: "redo",
3190
+ width: "30px",
3191
+ height: "30px",
3192
+ padding: [
3193
+ IconButton.padding.none,
3194
+ IconButton.padding.small
3195
+ ],
2644
3196
  disabled: !canRedo,
2645
3197
  onClick: function() {
2646
3198
  handleRedo();