@arcanejs/toolkit 0.1.1 → 0.2.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 (56) hide show
  1. package/dist/backend/components/base.d.mts +69 -2
  2. package/dist/backend/components/base.d.ts +69 -2
  3. package/dist/backend/components/base.mjs +2 -1
  4. package/dist/backend/components/button.d.mts +5 -4
  5. package/dist/backend/components/button.d.ts +5 -4
  6. package/dist/backend/components/button.mjs +3 -2
  7. package/dist/backend/components/group.d.mts +9 -8
  8. package/dist/backend/components/group.d.ts +9 -8
  9. package/dist/backend/components/group.js +4 -7
  10. package/dist/backend/components/group.mjs +3 -2
  11. package/dist/backend/components/label.d.mts +5 -3
  12. package/dist/backend/components/label.d.ts +5 -3
  13. package/dist/backend/components/label.mjs +3 -2
  14. package/dist/backend/components/rect.d.mts +4 -3
  15. package/dist/backend/components/rect.d.ts +4 -3
  16. package/dist/backend/components/rect.mjs +3 -2
  17. package/dist/backend/components/slider-button.d.mts +5 -4
  18. package/dist/backend/components/slider-button.d.ts +5 -4
  19. package/dist/backend/components/slider-button.mjs +3 -2
  20. package/dist/backend/components/switch.d.mts +5 -4
  21. package/dist/backend/components/switch.d.ts +5 -4
  22. package/dist/backend/components/switch.mjs +3 -2
  23. package/dist/backend/components/tabs.d.mts +5 -4
  24. package/dist/backend/components/tabs.d.ts +5 -4
  25. package/dist/backend/components/tabs.mjs +3 -2
  26. package/dist/backend/components/text-input.d.mts +5 -4
  27. package/dist/backend/components/text-input.d.ts +5 -4
  28. package/dist/backend/components/text-input.mjs +3 -2
  29. package/dist/backend/components/timeline.d.mts +6 -5
  30. package/dist/backend/components/timeline.d.ts +6 -5
  31. package/dist/backend/components/timeline.mjs +3 -2
  32. package/dist/backend/util/index.d.mts +7 -0
  33. package/dist/backend/util/index.d.ts +7 -0
  34. package/dist/backend/util/index.js +43 -0
  35. package/dist/backend/util/index.mjs +7 -0
  36. package/dist/{chunk-S5DQIYC2.mjs → chunk-3O4P67DM.mjs} +3 -6
  37. package/dist/{chunk-37VNFO5S.mjs → chunk-APCR3ITH.mjs} +1 -1
  38. package/dist/{chunk-P6X5GIDT.mjs → chunk-HNEUZVCX.mjs} +1 -1
  39. package/dist/{chunk-6LL3X7ZZ.mjs → chunk-IXTM35YM.mjs} +1 -1
  40. package/dist/{chunk-HVFTRNLQ.mjs → chunk-JW4GXS54.mjs} +1 -1
  41. package/dist/chunk-RGHJEMWG.mjs +17 -0
  42. package/dist/{chunk-DBW4OPGN.mjs → chunk-SOC4TF3J.mjs} +1 -1
  43. package/dist/{chunk-DP3QFYSS.mjs → chunk-TAZH4BBH.mjs} +1 -1
  44. package/dist/{chunk-3ZBM7Q4A.mjs → chunk-TQ27Y7F4.mjs} +1 -1
  45. package/dist/chunk-Y6FXYEAI.mjs +10 -0
  46. package/dist/{chunk-HF77PS7J.mjs → chunk-ZCHM3JJJ.mjs} +0 -8
  47. package/dist/{chunk-GQZA5K4M.mjs → chunk-ZU5H6SVA.mjs} +1 -1
  48. package/dist/frontend.js +1345 -398
  49. package/dist/frontend.js.map +4 -4
  50. package/dist/index.d.mts +4 -2
  51. package/dist/index.d.ts +4 -2
  52. package/dist/index.js +2 -5
  53. package/dist/index.mjs +14 -24
  54. package/package.json +11 -3
  55. package/dist/base-BJAPu0O1.d.mts +0 -234
  56. package/dist/base-BJAPu0O1.d.ts +0 -234
package/dist/frontend.js CHANGED
@@ -511,7 +511,7 @@
511
511
  }
512
512
  return element;
513
513
  };
514
- function createElement11(type, config, children) {
514
+ function createElement2(type, config, children) {
515
515
  var propName;
516
516
  var props = {};
517
517
  var key = null;
@@ -785,7 +785,7 @@
785
785
  }
786
786
  return children;
787
787
  }
788
- function createContext4(defaultValue) {
788
+ function createContext2(defaultValue) {
789
789
  var context = {
790
790
  $$typeof: REACT_CONTEXT_TYPE,
791
791
  // As a workaround to support multiple concurrent renderers, we categorize
@@ -1071,7 +1071,7 @@
1071
1071
  }
1072
1072
  return dispatcher;
1073
1073
  }
1074
- function useContext5(Context) {
1074
+ function useContext2(Context) {
1075
1075
  var dispatcher = resolveDispatcher();
1076
1076
  {
1077
1077
  if (Context._context !== void 0) {
@@ -1085,7 +1085,7 @@
1085
1085
  }
1086
1086
  return dispatcher.useContext(Context);
1087
1087
  }
1088
- function useState8(initialState) {
1088
+ function useState5(initialState) {
1089
1089
  var dispatcher = resolveDispatcher();
1090
1090
  return dispatcher.useState(initialState);
1091
1091
  }
@@ -1093,11 +1093,11 @@
1093
1093
  var dispatcher = resolveDispatcher();
1094
1094
  return dispatcher.useReducer(reducer, initialArg, init);
1095
1095
  }
1096
- function useRef3(initialValue) {
1096
+ function useRef2(initialValue) {
1097
1097
  var dispatcher = resolveDispatcher();
1098
1098
  return dispatcher.useRef(initialValue);
1099
1099
  }
1100
- function useEffect3(create, deps) {
1100
+ function useEffect4(create, deps) {
1101
1101
  var dispatcher = resolveDispatcher();
1102
1102
  return dispatcher.useEffect(create, deps);
1103
1103
  }
@@ -1610,7 +1610,7 @@
1610
1610
  error("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", typeString, info);
1611
1611
  }
1612
1612
  }
1613
- var element = createElement11.apply(this, arguments);
1613
+ var element = createElement2.apply(this, arguments);
1614
1614
  if (element == null) {
1615
1615
  return element;
1616
1616
  }
@@ -1866,7 +1866,7 @@
1866
1866
  exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ReactSharedInternals;
1867
1867
  exports.act = act;
1868
1868
  exports.cloneElement = cloneElement$1;
1869
- exports.createContext = createContext4;
1869
+ exports.createContext = createContext2;
1870
1870
  exports.createElement = createElement$1;
1871
1871
  exports.createFactory = createFactory;
1872
1872
  exports.createRef = createRef;
@@ -1877,18 +1877,18 @@
1877
1877
  exports.startTransition = startTransition;
1878
1878
  exports.unstable_act = act;
1879
1879
  exports.useCallback = useCallback;
1880
- exports.useContext = useContext5;
1880
+ exports.useContext = useContext2;
1881
1881
  exports.useDebugValue = useDebugValue;
1882
1882
  exports.useDeferredValue = useDeferredValue;
1883
- exports.useEffect = useEffect3;
1883
+ exports.useEffect = useEffect4;
1884
1884
  exports.useId = useId;
1885
1885
  exports.useImperativeHandle = useImperativeHandle;
1886
1886
  exports.useInsertionEffect = useInsertionEffect;
1887
1887
  exports.useLayoutEffect = useLayoutEffect;
1888
1888
  exports.useMemo = useMemo2;
1889
1889
  exports.useReducer = useReducer;
1890
- exports.useRef = useRef3;
1891
- exports.useState = useState8;
1890
+ exports.useRef = useRef2;
1891
+ exports.useState = useState5;
1892
1892
  exports.useSyncExternalStore = useSyncExternalStore;
1893
1893
  exports.useTransition = useTransition;
1894
1894
  exports.version = ReactVersion;
@@ -2384,9 +2384,9 @@
2384
2384
  if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== "undefined" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart === "function") {
2385
2385
  __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());
2386
2386
  }
2387
- var React13 = require_react();
2387
+ var React9 = require_react();
2388
2388
  var Scheduler = require_scheduler();
2389
- var ReactSharedInternals = React13.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
2389
+ var ReactSharedInternals = React9.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
2390
2390
  var suppressWarning = false;
2391
2391
  function setSuppressWarning(newSuppressWarning) {
2392
2392
  {
@@ -2428,7 +2428,7 @@
2428
2428
  Function.prototype.apply.call(console[level], console, argsWithFormat);
2429
2429
  }
2430
2430
  }
2431
- var FunctionComponent4 = 0;
2431
+ var FunctionComponent = 0;
2432
2432
  var ClassComponent = 1;
2433
2433
  var IndeterminateComponent = 2;
2434
2434
  var HostRoot = 3;
@@ -3475,7 +3475,7 @@
3475
3475
  return describeBuiltInComponentFrame("Suspense");
3476
3476
  case SuspenseListComponent:
3477
3477
  return describeBuiltInComponentFrame("SuspenseList");
3478
- case FunctionComponent4:
3478
+ case FunctionComponent:
3479
3479
  case IndeterminateComponent:
3480
3480
  case SimpleMemoComponent:
3481
3481
  return describeFunctionComponentFrame(fiber.type);
@@ -3623,7 +3623,7 @@
3623
3623
  return "TracingMarker";
3624
3624
  // The display name for this tags come from the user-provided type:
3625
3625
  case ClassComponent:
3626
- case FunctionComponent4:
3626
+ case FunctionComponent:
3627
3627
  case IncompleteClassComponent:
3628
3628
  case IndeterminateComponent:
3629
3629
  case MemoComponent:
@@ -3993,7 +3993,7 @@
3993
3993
  {
3994
3994
  if (props.value == null) {
3995
3995
  if (typeof props.children === "object" && props.children !== null) {
3996
- React13.Children.forEach(props.children, function(child) {
3996
+ React9.Children.forEach(props.children, function(child) {
3997
3997
  if (child == null) {
3998
3998
  return;
3999
3999
  }
@@ -7723,7 +7723,7 @@
7723
7723
  defaultPrevented: 0,
7724
7724
  isTrusted: 0
7725
7725
  };
7726
- var SyntheticEvent2 = createSyntheticEvent(EventInterface);
7726
+ var SyntheticEvent = createSyntheticEvent(EventInterface);
7727
7727
  var UIEventInterface = assign2({}, EventInterface, {
7728
7728
  view: 0,
7729
7729
  detail: 0
@@ -8198,7 +8198,7 @@
8198
8198
  enqueueStateRestore(target);
8199
8199
  var listeners = accumulateTwoPhaseListeners(inst, "onChange");
8200
8200
  if (listeners.length > 0) {
8201
- var event = new SyntheticEvent2("onChange", "change", null, nativeEvent, target);
8201
+ var event = new SyntheticEvent("onChange", "change", null, nativeEvent, target);
8202
8202
  dispatchQueue.push({
8203
8203
  event,
8204
8204
  listeners
@@ -8701,7 +8701,7 @@
8701
8701
  lastSelection = currentSelection;
8702
8702
  var listeners = accumulateTwoPhaseListeners(activeElementInst$1, "onSelect");
8703
8703
  if (listeners.length > 0) {
8704
- var event = new SyntheticEvent2("onSelect", "select", null, nativeEvent, nativeEventTarget);
8704
+ var event = new SyntheticEvent("onSelect", "select", null, nativeEvent, nativeEventTarget);
8705
8705
  dispatchQueue.push({
8706
8706
  event,
8707
8707
  listeners
@@ -8826,7 +8826,7 @@
8826
8826
  if (reactName === void 0) {
8827
8827
  return;
8828
8828
  }
8829
- var SyntheticEventCtor = SyntheticEvent2;
8829
+ var SyntheticEventCtor = SyntheticEvent;
8830
8830
  var reactEventType = domEventName;
8831
8831
  switch (domEventName) {
8832
8832
  case "keypress":
@@ -9417,7 +9417,7 @@
9417
9417
  }
9418
9418
  }
9419
9419
  }
9420
- function createElement11(type, props, rootContainerElement, parentNamespace) {
9420
+ function createElement2(type, props, rootContainerElement, parentNamespace) {
9421
9421
  var isCustomComponentTag;
9422
9422
  var ownerDocument = getOwnerDocumentFromRootContainer(rootContainerElement);
9423
9423
  var domElement;
@@ -10287,7 +10287,7 @@
10287
10287
  }
10288
10288
  parentNamespace = hostContextDev.namespace;
10289
10289
  }
10290
- var domElement = createElement11(type, props, rootContainerInstance, parentNamespace);
10290
+ var domElement = createElement2(type, props, rootContainerInstance, parentNamespace);
10291
10291
  precacheFiberNode(internalInstanceHandle, domElement);
10292
10292
  updateFiberProps(domElement, props);
10293
10293
  return domElement;
@@ -16087,7 +16087,7 @@
16087
16087
  }
16088
16088
  function resetSuspendedComponent(sourceFiber, rootRenderLanes) {
16089
16089
  var tag = sourceFiber.tag;
16090
- if ((sourceFiber.mode & ConcurrentMode) === NoMode && (tag === FunctionComponent4 || tag === ForwardRef || tag === SimpleMemoComponent)) {
16090
+ if ((sourceFiber.mode & ConcurrentMode) === NoMode && (tag === FunctionComponent || tag === ForwardRef || tag === SimpleMemoComponent)) {
16091
16091
  var currentSource = sourceFiber.alternate;
16092
16092
  if (currentSource) {
16093
16093
  sourceFiber.updateQueue = currentSource.updateQueue;
@@ -16780,7 +16780,7 @@
16780
16780
  var resolvedProps = resolveDefaultProps(Component, props);
16781
16781
  var child;
16782
16782
  switch (resolvedTag) {
16783
- case FunctionComponent4: {
16783
+ case FunctionComponent: {
16784
16784
  {
16785
16785
  validateFunctionComponentInDev(workInProgress2, Component);
16786
16786
  workInProgress2.type = Component = resolveFunctionForHotReloading(Component);
@@ -16923,7 +16923,7 @@
16923
16923
  mountClassInstance(workInProgress2, Component, props, renderLanes2);
16924
16924
  return finishClassComponent(null, workInProgress2, Component, true, hasContext, renderLanes2);
16925
16925
  } else {
16926
- workInProgress2.tag = FunctionComponent4;
16926
+ workInProgress2.tag = FunctionComponent;
16927
16927
  {
16928
16928
  if (workInProgress2.mode & StrictLegacyMode) {
16929
16929
  setIsStrictModeForDevtools(true);
@@ -17872,7 +17872,7 @@
17872
17872
  var elementType = workInProgress2.elementType;
17873
17873
  return mountLazyComponent(current2, workInProgress2, elementType, renderLanes2);
17874
17874
  }
17875
- case FunctionComponent4: {
17875
+ case FunctionComponent: {
17876
17876
  var Component = workInProgress2.type;
17877
17877
  var unresolvedProps = workInProgress2.pendingProps;
17878
17878
  var resolvedProps = workInProgress2.elementType === Component ? unresolvedProps : resolveDefaultProps(Component, unresolvedProps);
@@ -18170,7 +18170,7 @@
18170
18170
  case IndeterminateComponent:
18171
18171
  case LazyComponent:
18172
18172
  case SimpleMemoComponent:
18173
- case FunctionComponent4:
18173
+ case FunctionComponent:
18174
18174
  case ForwardRef:
18175
18175
  case Fragment2:
18176
18176
  case Mode:
@@ -18753,7 +18753,7 @@
18753
18753
  if ((flags & Snapshot) !== NoFlags) {
18754
18754
  setCurrentFiber(finishedWork);
18755
18755
  switch (finishedWork.tag) {
18756
- case FunctionComponent4:
18756
+ case FunctionComponent:
18757
18757
  case ForwardRef:
18758
18758
  case SimpleMemoComponent: {
18759
18759
  break;
@@ -18947,7 +18947,7 @@
18947
18947
  function commitLayoutEffectOnFiber(finishedRoot, current2, finishedWork, committedLanes) {
18948
18948
  if ((finishedWork.flags & LayoutMask) !== NoFlags) {
18949
18949
  switch (finishedWork.tag) {
18950
- case FunctionComponent4:
18950
+ case FunctionComponent:
18951
18951
  case ForwardRef:
18952
18952
  case SimpleMemoComponent: {
18953
18953
  if (!offscreenSubtreeWasHidden) {
@@ -19127,7 +19127,7 @@
19127
19127
  }
19128
19128
  function reappearLayoutEffectsOnFiber(node2) {
19129
19129
  switch (node2.tag) {
19130
- case FunctionComponent4:
19130
+ case FunctionComponent:
19131
19131
  case ForwardRef:
19132
19132
  case SimpleMemoComponent: {
19133
19133
  if (node2.mode & ProfileMode) {
@@ -19494,7 +19494,7 @@
19494
19494
  }
19495
19495
  return;
19496
19496
  }
19497
- case FunctionComponent4:
19497
+ case FunctionComponent:
19498
19498
  case ForwardRef:
19499
19499
  case MemoComponent:
19500
19500
  case SimpleMemoComponent: {
@@ -19649,7 +19649,7 @@
19649
19649
  var current2 = finishedWork.alternate;
19650
19650
  var flags = finishedWork.flags;
19651
19651
  switch (finishedWork.tag) {
19652
- case FunctionComponent4:
19652
+ case FunctionComponent:
19653
19653
  case ForwardRef:
19654
19654
  case MemoComponent:
19655
19655
  case SimpleMemoComponent: {
@@ -19958,7 +19958,7 @@
19958
19958
  var fiber = nextEffect;
19959
19959
  var firstChild = fiber.child;
19960
19960
  switch (fiber.tag) {
19961
- case FunctionComponent4:
19961
+ case FunctionComponent:
19962
19962
  case ForwardRef:
19963
19963
  case MemoComponent:
19964
19964
  case SimpleMemoComponent: {
@@ -20104,7 +20104,7 @@
20104
20104
  }
20105
20105
  function commitPassiveMountOnFiber(finishedRoot, finishedWork, committedLanes, committedTransitions) {
20106
20106
  switch (finishedWork.tag) {
20107
- case FunctionComponent4:
20107
+ case FunctionComponent:
20108
20108
  case ForwardRef:
20109
20109
  case SimpleMemoComponent: {
20110
20110
  if (finishedWork.mode & ProfileMode) {
@@ -20181,7 +20181,7 @@
20181
20181
  }
20182
20182
  function commitPassiveUnmountOnFiber(finishedWork) {
20183
20183
  switch (finishedWork.tag) {
20184
- case FunctionComponent4:
20184
+ case FunctionComponent:
20185
20185
  case ForwardRef:
20186
20186
  case SimpleMemoComponent: {
20187
20187
  if (finishedWork.mode & ProfileMode) {
@@ -20232,7 +20232,7 @@
20232
20232
  }
20233
20233
  function commitPassiveUnmountInsideDeletedTreeOnFiber(current2, nearestMountedAncestor) {
20234
20234
  switch (current2.tag) {
20235
- case FunctionComponent4:
20235
+ case FunctionComponent:
20236
20236
  case ForwardRef:
20237
20237
  case SimpleMemoComponent: {
20238
20238
  if (current2.mode & ProfileMode) {
@@ -20249,7 +20249,7 @@
20249
20249
  function invokeLayoutEffectMountInDEV(fiber) {
20250
20250
  {
20251
20251
  switch (fiber.tag) {
20252
- case FunctionComponent4:
20252
+ case FunctionComponent:
20253
20253
  case ForwardRef:
20254
20254
  case SimpleMemoComponent: {
20255
20255
  try {
@@ -20274,7 +20274,7 @@
20274
20274
  function invokePassiveEffectMountInDEV(fiber) {
20275
20275
  {
20276
20276
  switch (fiber.tag) {
20277
- case FunctionComponent4:
20277
+ case FunctionComponent:
20278
20278
  case ForwardRef:
20279
20279
  case SimpleMemoComponent: {
20280
20280
  try {
@@ -20290,7 +20290,7 @@
20290
20290
  function invokeLayoutEffectUnmountInDEV(fiber) {
20291
20291
  {
20292
20292
  switch (fiber.tag) {
20293
- case FunctionComponent4:
20293
+ case FunctionComponent:
20294
20294
  case ForwardRef:
20295
20295
  case SimpleMemoComponent: {
20296
20296
  try {
@@ -20313,7 +20313,7 @@
20313
20313
  function invokePassiveEffectUnmountInDEV(fiber) {
20314
20314
  {
20315
20315
  switch (fiber.tag) {
20316
- case FunctionComponent4:
20316
+ case FunctionComponent:
20317
20317
  case ForwardRef:
20318
20318
  case SimpleMemoComponent: {
20319
20319
  try {
@@ -21679,7 +21679,7 @@
21679
21679
  return;
21680
21680
  }
21681
21681
  var tag = fiber.tag;
21682
- if (tag !== IndeterminateComponent && tag !== HostRoot && tag !== ClassComponent && tag !== FunctionComponent4 && tag !== ForwardRef && tag !== MemoComponent && tag !== SimpleMemoComponent) {
21682
+ if (tag !== IndeterminateComponent && tag !== HostRoot && tag !== ClassComponent && tag !== FunctionComponent && tag !== ForwardRef && tag !== MemoComponent && tag !== SimpleMemoComponent) {
21683
21683
  return;
21684
21684
  }
21685
21685
  var componentName = getComponentNameFromFiber(fiber) || "ReactComponent";
@@ -21742,7 +21742,7 @@
21742
21742
  {
21743
21743
  if (isRendering && !getIsUpdatingOpaqueValueInRenderPhaseInDEV()) {
21744
21744
  switch (fiber.tag) {
21745
- case FunctionComponent4:
21745
+ case FunctionComponent:
21746
21746
  case ForwardRef:
21747
21747
  case SimpleMemoComponent: {
21748
21748
  var renderingComponentName = workInProgress && getComponentNameFromFiber(workInProgress) || "Unknown";
@@ -21809,7 +21809,7 @@
21809
21809
  if (executionContext !== NoContext) {
21810
21810
  return;
21811
21811
  }
21812
- if (fiber.tag !== FunctionComponent4 && fiber.tag !== ForwardRef && fiber.tag !== SimpleMemoComponent) {
21812
+ if (fiber.tag !== FunctionComponent && fiber.tag !== ForwardRef && fiber.tag !== SimpleMemoComponent) {
21813
21813
  return;
21814
21814
  }
21815
21815
  }
@@ -21903,7 +21903,7 @@
21903
21903
  }
21904
21904
  break;
21905
21905
  }
21906
- case FunctionComponent4: {
21906
+ case FunctionComponent: {
21907
21907
  if (typeof nextType === "function") {
21908
21908
  needsCompareFamilies = true;
21909
21909
  } else if ($$typeofNextType === REACT_LAZY_TYPE) {
@@ -21982,7 +21982,7 @@
21982
21982
  var alternate = fiber.alternate, child = fiber.child, sibling = fiber.sibling, tag = fiber.tag, type = fiber.type;
21983
21983
  var candidateType = null;
21984
21984
  switch (tag) {
21985
- case FunctionComponent4:
21985
+ case FunctionComponent:
21986
21986
  case SimpleMemoComponent:
21987
21987
  case ClassComponent:
21988
21988
  candidateType = type;
@@ -22047,7 +22047,7 @@
22047
22047
  var child = fiber.child, sibling = fiber.sibling, tag = fiber.tag, type = fiber.type;
22048
22048
  var candidateType = null;
22049
22049
  switch (tag) {
22050
- case FunctionComponent4:
22050
+ case FunctionComponent:
22051
22051
  case SimpleMemoComponent:
22052
22052
  case ClassComponent:
22053
22053
  candidateType = type;
@@ -22194,7 +22194,7 @@
22194
22194
  }
22195
22195
  function resolveLazyComponentTag(Component) {
22196
22196
  if (typeof Component === "function") {
22197
- return shouldConstruct$1(Component) ? ClassComponent : FunctionComponent4;
22197
+ return shouldConstruct$1(Component) ? ClassComponent : FunctionComponent;
22198
22198
  } else if (Component !== void 0 && Component !== null) {
22199
22199
  var $$typeof = Component.$$typeof;
22200
22200
  if ($$typeof === REACT_FORWARD_REF_TYPE) {
@@ -22254,7 +22254,7 @@
22254
22254
  workInProgress2._debugNeedsRemount = current2._debugNeedsRemount;
22255
22255
  switch (workInProgress2.tag) {
22256
22256
  case IndeterminateComponent:
22257
- case FunctionComponent4:
22257
+ case FunctionComponent:
22258
22258
  case SimpleMemoComponent:
22259
22259
  workInProgress2.type = resolveFunctionForHotReloading(current2.type);
22260
22260
  break;
@@ -23619,9 +23619,986 @@
23619
23619
  }
23620
23620
  });
23621
23621
 
23622
+ // ../../node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js
23623
+ var require_react_jsx_runtime_development = __commonJS({
23624
+ "../../node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react-jsx-runtime.development.js"(exports) {
23625
+ "use strict";
23626
+ if (true) {
23627
+ (function() {
23628
+ "use strict";
23629
+ var React9 = require_react();
23630
+ var REACT_ELEMENT_TYPE = Symbol.for("react.element");
23631
+ var REACT_PORTAL_TYPE = Symbol.for("react.portal");
23632
+ var REACT_FRAGMENT_TYPE = Symbol.for("react.fragment");
23633
+ var REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode");
23634
+ var REACT_PROFILER_TYPE = Symbol.for("react.profiler");
23635
+ var REACT_PROVIDER_TYPE = Symbol.for("react.provider");
23636
+ var REACT_CONTEXT_TYPE = Symbol.for("react.context");
23637
+ var REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref");
23638
+ var REACT_SUSPENSE_TYPE = Symbol.for("react.suspense");
23639
+ var REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list");
23640
+ var REACT_MEMO_TYPE = Symbol.for("react.memo");
23641
+ var REACT_LAZY_TYPE = Symbol.for("react.lazy");
23642
+ var REACT_OFFSCREEN_TYPE = Symbol.for("react.offscreen");
23643
+ var MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
23644
+ var FAUX_ITERATOR_SYMBOL = "@@iterator";
23645
+ function getIteratorFn(maybeIterable) {
23646
+ if (maybeIterable === null || typeof maybeIterable !== "object") {
23647
+ return null;
23648
+ }
23649
+ var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];
23650
+ if (typeof maybeIterator === "function") {
23651
+ return maybeIterator;
23652
+ }
23653
+ return null;
23654
+ }
23655
+ var ReactSharedInternals = React9.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
23656
+ function error(format) {
23657
+ {
23658
+ {
23659
+ for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
23660
+ args[_key2 - 1] = arguments[_key2];
23661
+ }
23662
+ printWarning("error", format, args);
23663
+ }
23664
+ }
23665
+ }
23666
+ function printWarning(level, format, args) {
23667
+ {
23668
+ var ReactDebugCurrentFrame2 = ReactSharedInternals.ReactDebugCurrentFrame;
23669
+ var stack = ReactDebugCurrentFrame2.getStackAddendum();
23670
+ if (stack !== "") {
23671
+ format += "%s";
23672
+ args = args.concat([stack]);
23673
+ }
23674
+ var argsWithFormat = args.map(function(item) {
23675
+ return String(item);
23676
+ });
23677
+ argsWithFormat.unshift("Warning: " + format);
23678
+ Function.prototype.apply.call(console[level], console, argsWithFormat);
23679
+ }
23680
+ }
23681
+ var enableScopeAPI = false;
23682
+ var enableCacheElement = false;
23683
+ var enableTransitionTracing = false;
23684
+ var enableLegacyHidden = false;
23685
+ var enableDebugTracing = false;
23686
+ var REACT_MODULE_REFERENCE;
23687
+ {
23688
+ REACT_MODULE_REFERENCE = Symbol.for("react.module.reference");
23689
+ }
23690
+ function isValidElementType(type) {
23691
+ if (typeof type === "string" || typeof type === "function") {
23692
+ return true;
23693
+ }
23694
+ if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableCacheElement || enableTransitionTracing) {
23695
+ return true;
23696
+ }
23697
+ if (typeof type === "object" && type !== null) {
23698
+ if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object
23699
+ // types supported by any Flight configuration anywhere since
23700
+ // we don't know which Flight build this will end up being used
23701
+ // with.
23702
+ type.$$typeof === REACT_MODULE_REFERENCE || type.getModuleId !== void 0) {
23703
+ return true;
23704
+ }
23705
+ }
23706
+ return false;
23707
+ }
23708
+ function getWrappedName(outerType, innerType, wrapperName) {
23709
+ var displayName = outerType.displayName;
23710
+ if (displayName) {
23711
+ return displayName;
23712
+ }
23713
+ var functionName = innerType.displayName || innerType.name || "";
23714
+ return functionName !== "" ? wrapperName + "(" + functionName + ")" : wrapperName;
23715
+ }
23716
+ function getContextName(type) {
23717
+ return type.displayName || "Context";
23718
+ }
23719
+ function getComponentNameFromType(type) {
23720
+ if (type == null) {
23721
+ return null;
23722
+ }
23723
+ {
23724
+ if (typeof type.tag === "number") {
23725
+ error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.");
23726
+ }
23727
+ }
23728
+ if (typeof type === "function") {
23729
+ return type.displayName || type.name || null;
23730
+ }
23731
+ if (typeof type === "string") {
23732
+ return type;
23733
+ }
23734
+ switch (type) {
23735
+ case REACT_FRAGMENT_TYPE:
23736
+ return "Fragment";
23737
+ case REACT_PORTAL_TYPE:
23738
+ return "Portal";
23739
+ case REACT_PROFILER_TYPE:
23740
+ return "Profiler";
23741
+ case REACT_STRICT_MODE_TYPE:
23742
+ return "StrictMode";
23743
+ case REACT_SUSPENSE_TYPE:
23744
+ return "Suspense";
23745
+ case REACT_SUSPENSE_LIST_TYPE:
23746
+ return "SuspenseList";
23747
+ }
23748
+ if (typeof type === "object") {
23749
+ switch (type.$$typeof) {
23750
+ case REACT_CONTEXT_TYPE:
23751
+ var context = type;
23752
+ return getContextName(context) + ".Consumer";
23753
+ case REACT_PROVIDER_TYPE:
23754
+ var provider = type;
23755
+ return getContextName(provider._context) + ".Provider";
23756
+ case REACT_FORWARD_REF_TYPE:
23757
+ return getWrappedName(type, type.render, "ForwardRef");
23758
+ case REACT_MEMO_TYPE:
23759
+ var outerName = type.displayName || null;
23760
+ if (outerName !== null) {
23761
+ return outerName;
23762
+ }
23763
+ return getComponentNameFromType(type.type) || "Memo";
23764
+ case REACT_LAZY_TYPE: {
23765
+ var lazyComponent = type;
23766
+ var payload = lazyComponent._payload;
23767
+ var init = lazyComponent._init;
23768
+ try {
23769
+ return getComponentNameFromType(init(payload));
23770
+ } catch (x2) {
23771
+ return null;
23772
+ }
23773
+ }
23774
+ }
23775
+ }
23776
+ return null;
23777
+ }
23778
+ var assign2 = Object.assign;
23779
+ var disabledDepth = 0;
23780
+ var prevLog;
23781
+ var prevInfo;
23782
+ var prevWarn;
23783
+ var prevError;
23784
+ var prevGroup;
23785
+ var prevGroupCollapsed;
23786
+ var prevGroupEnd;
23787
+ function disabledLog() {
23788
+ }
23789
+ disabledLog.__reactDisabledLog = true;
23790
+ function disableLogs() {
23791
+ {
23792
+ if (disabledDepth === 0) {
23793
+ prevLog = console.log;
23794
+ prevInfo = console.info;
23795
+ prevWarn = console.warn;
23796
+ prevError = console.error;
23797
+ prevGroup = console.group;
23798
+ prevGroupCollapsed = console.groupCollapsed;
23799
+ prevGroupEnd = console.groupEnd;
23800
+ var props = {
23801
+ configurable: true,
23802
+ enumerable: true,
23803
+ value: disabledLog,
23804
+ writable: true
23805
+ };
23806
+ Object.defineProperties(console, {
23807
+ info: props,
23808
+ log: props,
23809
+ warn: props,
23810
+ error: props,
23811
+ group: props,
23812
+ groupCollapsed: props,
23813
+ groupEnd: props
23814
+ });
23815
+ }
23816
+ disabledDepth++;
23817
+ }
23818
+ }
23819
+ function reenableLogs() {
23820
+ {
23821
+ disabledDepth--;
23822
+ if (disabledDepth === 0) {
23823
+ var props = {
23824
+ configurable: true,
23825
+ enumerable: true,
23826
+ writable: true
23827
+ };
23828
+ Object.defineProperties(console, {
23829
+ log: assign2({}, props, {
23830
+ value: prevLog
23831
+ }),
23832
+ info: assign2({}, props, {
23833
+ value: prevInfo
23834
+ }),
23835
+ warn: assign2({}, props, {
23836
+ value: prevWarn
23837
+ }),
23838
+ error: assign2({}, props, {
23839
+ value: prevError
23840
+ }),
23841
+ group: assign2({}, props, {
23842
+ value: prevGroup
23843
+ }),
23844
+ groupCollapsed: assign2({}, props, {
23845
+ value: prevGroupCollapsed
23846
+ }),
23847
+ groupEnd: assign2({}, props, {
23848
+ value: prevGroupEnd
23849
+ })
23850
+ });
23851
+ }
23852
+ if (disabledDepth < 0) {
23853
+ error("disabledDepth fell below zero. This is a bug in React. Please file an issue.");
23854
+ }
23855
+ }
23856
+ }
23857
+ var ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;
23858
+ var prefix2;
23859
+ function describeBuiltInComponentFrame(name, source, ownerFn) {
23860
+ {
23861
+ if (prefix2 === void 0) {
23862
+ try {
23863
+ throw Error();
23864
+ } catch (x2) {
23865
+ var match2 = x2.stack.trim().match(/\n( *(at )?)/);
23866
+ prefix2 = match2 && match2[1] || "";
23867
+ }
23868
+ }
23869
+ return "\n" + prefix2 + name;
23870
+ }
23871
+ }
23872
+ var reentry = false;
23873
+ var componentFrameCache;
23874
+ {
23875
+ var PossiblyWeakMap = typeof WeakMap === "function" ? WeakMap : Map;
23876
+ componentFrameCache = new PossiblyWeakMap();
23877
+ }
23878
+ function describeNativeComponentFrame(fn, construct) {
23879
+ if (!fn || reentry) {
23880
+ return "";
23881
+ }
23882
+ {
23883
+ var frame = componentFrameCache.get(fn);
23884
+ if (frame !== void 0) {
23885
+ return frame;
23886
+ }
23887
+ }
23888
+ var control;
23889
+ reentry = true;
23890
+ var previousPrepareStackTrace = Error.prepareStackTrace;
23891
+ Error.prepareStackTrace = void 0;
23892
+ var previousDispatcher;
23893
+ {
23894
+ previousDispatcher = ReactCurrentDispatcher.current;
23895
+ ReactCurrentDispatcher.current = null;
23896
+ disableLogs();
23897
+ }
23898
+ try {
23899
+ if (construct) {
23900
+ var Fake = function() {
23901
+ throw Error();
23902
+ };
23903
+ Object.defineProperty(Fake.prototype, "props", {
23904
+ set: function() {
23905
+ throw Error();
23906
+ }
23907
+ });
23908
+ if (typeof Reflect === "object" && Reflect.construct) {
23909
+ try {
23910
+ Reflect.construct(Fake, []);
23911
+ } catch (x2) {
23912
+ control = x2;
23913
+ }
23914
+ Reflect.construct(fn, [], Fake);
23915
+ } else {
23916
+ try {
23917
+ Fake.call();
23918
+ } catch (x2) {
23919
+ control = x2;
23920
+ }
23921
+ fn.call(Fake.prototype);
23922
+ }
23923
+ } else {
23924
+ try {
23925
+ throw Error();
23926
+ } catch (x2) {
23927
+ control = x2;
23928
+ }
23929
+ fn();
23930
+ }
23931
+ } catch (sample) {
23932
+ if (sample && control && typeof sample.stack === "string") {
23933
+ var sampleLines = sample.stack.split("\n");
23934
+ var controlLines = control.stack.split("\n");
23935
+ var s2 = sampleLines.length - 1;
23936
+ var c2 = controlLines.length - 1;
23937
+ while (s2 >= 1 && c2 >= 0 && sampleLines[s2] !== controlLines[c2]) {
23938
+ c2--;
23939
+ }
23940
+ for (; s2 >= 1 && c2 >= 0; s2--, c2--) {
23941
+ if (sampleLines[s2] !== controlLines[c2]) {
23942
+ if (s2 !== 1 || c2 !== 1) {
23943
+ do {
23944
+ s2--;
23945
+ c2--;
23946
+ if (c2 < 0 || sampleLines[s2] !== controlLines[c2]) {
23947
+ var _frame = "\n" + sampleLines[s2].replace(" at new ", " at ");
23948
+ if (fn.displayName && _frame.includes("<anonymous>")) {
23949
+ _frame = _frame.replace("<anonymous>", fn.displayName);
23950
+ }
23951
+ {
23952
+ if (typeof fn === "function") {
23953
+ componentFrameCache.set(fn, _frame);
23954
+ }
23955
+ }
23956
+ return _frame;
23957
+ }
23958
+ } while (s2 >= 1 && c2 >= 0);
23959
+ }
23960
+ break;
23961
+ }
23962
+ }
23963
+ }
23964
+ } finally {
23965
+ reentry = false;
23966
+ {
23967
+ ReactCurrentDispatcher.current = previousDispatcher;
23968
+ reenableLogs();
23969
+ }
23970
+ Error.prepareStackTrace = previousPrepareStackTrace;
23971
+ }
23972
+ var name = fn ? fn.displayName || fn.name : "";
23973
+ var syntheticFrame = name ? describeBuiltInComponentFrame(name) : "";
23974
+ {
23975
+ if (typeof fn === "function") {
23976
+ componentFrameCache.set(fn, syntheticFrame);
23977
+ }
23978
+ }
23979
+ return syntheticFrame;
23980
+ }
23981
+ function describeFunctionComponentFrame(fn, source, ownerFn) {
23982
+ {
23983
+ return describeNativeComponentFrame(fn, false);
23984
+ }
23985
+ }
23986
+ function shouldConstruct(Component) {
23987
+ var prototype = Component.prototype;
23988
+ return !!(prototype && prototype.isReactComponent);
23989
+ }
23990
+ function describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {
23991
+ if (type == null) {
23992
+ return "";
23993
+ }
23994
+ if (typeof type === "function") {
23995
+ {
23996
+ return describeNativeComponentFrame(type, shouldConstruct(type));
23997
+ }
23998
+ }
23999
+ if (typeof type === "string") {
24000
+ return describeBuiltInComponentFrame(type);
24001
+ }
24002
+ switch (type) {
24003
+ case REACT_SUSPENSE_TYPE:
24004
+ return describeBuiltInComponentFrame("Suspense");
24005
+ case REACT_SUSPENSE_LIST_TYPE:
24006
+ return describeBuiltInComponentFrame("SuspenseList");
24007
+ }
24008
+ if (typeof type === "object") {
24009
+ switch (type.$$typeof) {
24010
+ case REACT_FORWARD_REF_TYPE:
24011
+ return describeFunctionComponentFrame(type.render);
24012
+ case REACT_MEMO_TYPE:
24013
+ return describeUnknownElementTypeFrameInDEV(type.type, source, ownerFn);
24014
+ case REACT_LAZY_TYPE: {
24015
+ var lazyComponent = type;
24016
+ var payload = lazyComponent._payload;
24017
+ var init = lazyComponent._init;
24018
+ try {
24019
+ return describeUnknownElementTypeFrameInDEV(init(payload), source, ownerFn);
24020
+ } catch (x2) {
24021
+ }
24022
+ }
24023
+ }
24024
+ }
24025
+ return "";
24026
+ }
24027
+ var hasOwnProperty = Object.prototype.hasOwnProperty;
24028
+ var loggedTypeFailures = {};
24029
+ var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;
24030
+ function setCurrentlyValidatingElement(element) {
24031
+ {
24032
+ if (element) {
24033
+ var owner = element._owner;
24034
+ var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);
24035
+ ReactDebugCurrentFrame.setExtraStackFrame(stack);
24036
+ } else {
24037
+ ReactDebugCurrentFrame.setExtraStackFrame(null);
24038
+ }
24039
+ }
24040
+ }
24041
+ function checkPropTypes(typeSpecs, values, location, componentName, element) {
24042
+ {
24043
+ var has = Function.call.bind(hasOwnProperty);
24044
+ for (var typeSpecName in typeSpecs) {
24045
+ if (has(typeSpecs, typeSpecName)) {
24046
+ var error$1 = void 0;
24047
+ try {
24048
+ if (typeof typeSpecs[typeSpecName] !== "function") {
24049
+ var err = Error((componentName || "React class") + ": " + location + " type `" + typeSpecName + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + typeof typeSpecs[typeSpecName] + "`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
24050
+ err.name = "Invariant Violation";
24051
+ throw err;
24052
+ }
24053
+ error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
24054
+ } catch (ex) {
24055
+ error$1 = ex;
24056
+ }
24057
+ if (error$1 && !(error$1 instanceof Error)) {
24058
+ setCurrentlyValidatingElement(element);
24059
+ error("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).", componentName || "React class", location, typeSpecName, typeof error$1);
24060
+ setCurrentlyValidatingElement(null);
24061
+ }
24062
+ if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {
24063
+ loggedTypeFailures[error$1.message] = true;
24064
+ setCurrentlyValidatingElement(element);
24065
+ error("Failed %s type: %s", location, error$1.message);
24066
+ setCurrentlyValidatingElement(null);
24067
+ }
24068
+ }
24069
+ }
24070
+ }
24071
+ }
24072
+ var isArrayImpl = Array.isArray;
24073
+ function isArray(a2) {
24074
+ return isArrayImpl(a2);
24075
+ }
24076
+ function typeName(value) {
24077
+ {
24078
+ var hasToStringTag = typeof Symbol === "function" && Symbol.toStringTag;
24079
+ var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || "Object";
24080
+ return type;
24081
+ }
24082
+ }
24083
+ function willCoercionThrow(value) {
24084
+ {
24085
+ try {
24086
+ testStringCoercion(value);
24087
+ return false;
24088
+ } catch (e) {
24089
+ return true;
24090
+ }
24091
+ }
24092
+ }
24093
+ function testStringCoercion(value) {
24094
+ return "" + value;
24095
+ }
24096
+ function checkKeyStringCoercion(value) {
24097
+ {
24098
+ if (willCoercionThrow(value)) {
24099
+ error("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.", typeName(value));
24100
+ return testStringCoercion(value);
24101
+ }
24102
+ }
24103
+ }
24104
+ var ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;
24105
+ var RESERVED_PROPS = {
24106
+ key: true,
24107
+ ref: true,
24108
+ __self: true,
24109
+ __source: true
24110
+ };
24111
+ var specialPropKeyWarningShown;
24112
+ var specialPropRefWarningShown;
24113
+ var didWarnAboutStringRefs;
24114
+ {
24115
+ didWarnAboutStringRefs = {};
24116
+ }
24117
+ function hasValidRef(config) {
24118
+ {
24119
+ if (hasOwnProperty.call(config, "ref")) {
24120
+ var getter = Object.getOwnPropertyDescriptor(config, "ref").get;
24121
+ if (getter && getter.isReactWarning) {
24122
+ return false;
24123
+ }
24124
+ }
24125
+ }
24126
+ return config.ref !== void 0;
24127
+ }
24128
+ function hasValidKey(config) {
24129
+ {
24130
+ if (hasOwnProperty.call(config, "key")) {
24131
+ var getter = Object.getOwnPropertyDescriptor(config, "key").get;
24132
+ if (getter && getter.isReactWarning) {
24133
+ return false;
24134
+ }
24135
+ }
24136
+ }
24137
+ return config.key !== void 0;
24138
+ }
24139
+ function warnIfStringRefCannotBeAutoConverted(config, self) {
24140
+ {
24141
+ if (typeof config.ref === "string" && ReactCurrentOwner.current && self && ReactCurrentOwner.current.stateNode !== self) {
24142
+ var componentName = getComponentNameFromType(ReactCurrentOwner.current.type);
24143
+ if (!didWarnAboutStringRefs[componentName]) {
24144
+ error('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner.current.type), config.ref);
24145
+ didWarnAboutStringRefs[componentName] = true;
24146
+ }
24147
+ }
24148
+ }
24149
+ }
24150
+ function defineKeyPropWarningGetter(props, displayName) {
24151
+ {
24152
+ var warnAboutAccessingKey = function() {
24153
+ if (!specialPropKeyWarningShown) {
24154
+ specialPropKeyWarningShown = true;
24155
+ error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", displayName);
24156
+ }
24157
+ };
24158
+ warnAboutAccessingKey.isReactWarning = true;
24159
+ Object.defineProperty(props, "key", {
24160
+ get: warnAboutAccessingKey,
24161
+ configurable: true
24162
+ });
24163
+ }
24164
+ }
24165
+ function defineRefPropWarningGetter(props, displayName) {
24166
+ {
24167
+ var warnAboutAccessingRef = function() {
24168
+ if (!specialPropRefWarningShown) {
24169
+ specialPropRefWarningShown = true;
24170
+ error("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)", displayName);
24171
+ }
24172
+ };
24173
+ warnAboutAccessingRef.isReactWarning = true;
24174
+ Object.defineProperty(props, "ref", {
24175
+ get: warnAboutAccessingRef,
24176
+ configurable: true
24177
+ });
24178
+ }
24179
+ }
24180
+ var ReactElement = function(type, key, ref, self, source, owner, props) {
24181
+ var element = {
24182
+ // This tag allows us to uniquely identify this as a React Element
24183
+ $$typeof: REACT_ELEMENT_TYPE,
24184
+ // Built-in properties that belong on the element
24185
+ type,
24186
+ key,
24187
+ ref,
24188
+ props,
24189
+ // Record the component responsible for creating this element.
24190
+ _owner: owner
24191
+ };
24192
+ {
24193
+ element._store = {};
24194
+ Object.defineProperty(element._store, "validated", {
24195
+ configurable: false,
24196
+ enumerable: false,
24197
+ writable: true,
24198
+ value: false
24199
+ });
24200
+ Object.defineProperty(element, "_self", {
24201
+ configurable: false,
24202
+ enumerable: false,
24203
+ writable: false,
24204
+ value: self
24205
+ });
24206
+ Object.defineProperty(element, "_source", {
24207
+ configurable: false,
24208
+ enumerable: false,
24209
+ writable: false,
24210
+ value: source
24211
+ });
24212
+ if (Object.freeze) {
24213
+ Object.freeze(element.props);
24214
+ Object.freeze(element);
24215
+ }
24216
+ }
24217
+ return element;
24218
+ };
24219
+ function jsxDEV(type, config, maybeKey, source, self) {
24220
+ {
24221
+ var propName;
24222
+ var props = {};
24223
+ var key = null;
24224
+ var ref = null;
24225
+ if (maybeKey !== void 0) {
24226
+ {
24227
+ checkKeyStringCoercion(maybeKey);
24228
+ }
24229
+ key = "" + maybeKey;
24230
+ }
24231
+ if (hasValidKey(config)) {
24232
+ {
24233
+ checkKeyStringCoercion(config.key);
24234
+ }
24235
+ key = "" + config.key;
24236
+ }
24237
+ if (hasValidRef(config)) {
24238
+ ref = config.ref;
24239
+ warnIfStringRefCannotBeAutoConverted(config, self);
24240
+ }
24241
+ for (propName in config) {
24242
+ if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {
24243
+ props[propName] = config[propName];
24244
+ }
24245
+ }
24246
+ if (type && type.defaultProps) {
24247
+ var defaultProps = type.defaultProps;
24248
+ for (propName in defaultProps) {
24249
+ if (props[propName] === void 0) {
24250
+ props[propName] = defaultProps[propName];
24251
+ }
24252
+ }
24253
+ }
24254
+ if (key || ref) {
24255
+ var displayName = typeof type === "function" ? type.displayName || type.name || "Unknown" : type;
24256
+ if (key) {
24257
+ defineKeyPropWarningGetter(props, displayName);
24258
+ }
24259
+ if (ref) {
24260
+ defineRefPropWarningGetter(props, displayName);
24261
+ }
24262
+ }
24263
+ return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);
24264
+ }
24265
+ }
24266
+ var ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;
24267
+ var ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;
24268
+ function setCurrentlyValidatingElement$1(element) {
24269
+ {
24270
+ if (element) {
24271
+ var owner = element._owner;
24272
+ var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);
24273
+ ReactDebugCurrentFrame$1.setExtraStackFrame(stack);
24274
+ } else {
24275
+ ReactDebugCurrentFrame$1.setExtraStackFrame(null);
24276
+ }
24277
+ }
24278
+ }
24279
+ var propTypesMisspellWarningShown;
24280
+ {
24281
+ propTypesMisspellWarningShown = false;
24282
+ }
24283
+ function isValidElement(object) {
24284
+ {
24285
+ return typeof object === "object" && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
24286
+ }
24287
+ }
24288
+ function getDeclarationErrorAddendum() {
24289
+ {
24290
+ if (ReactCurrentOwner$1.current) {
24291
+ var name = getComponentNameFromType(ReactCurrentOwner$1.current.type);
24292
+ if (name) {
24293
+ return "\n\nCheck the render method of `" + name + "`.";
24294
+ }
24295
+ }
24296
+ return "";
24297
+ }
24298
+ }
24299
+ function getSourceInfoErrorAddendum(source) {
24300
+ {
24301
+ if (source !== void 0) {
24302
+ var fileName = source.fileName.replace(/^.*[\\\/]/, "");
24303
+ var lineNumber = source.lineNumber;
24304
+ return "\n\nCheck your code at " + fileName + ":" + lineNumber + ".";
24305
+ }
24306
+ return "";
24307
+ }
24308
+ }
24309
+ var ownerHasKeyUseWarning = {};
24310
+ function getCurrentComponentErrorInfo(parentType) {
24311
+ {
24312
+ var info = getDeclarationErrorAddendum();
24313
+ if (!info) {
24314
+ var parentName = typeof parentType === "string" ? parentType : parentType.displayName || parentType.name;
24315
+ if (parentName) {
24316
+ info = "\n\nCheck the top-level render call using <" + parentName + ">.";
24317
+ }
24318
+ }
24319
+ return info;
24320
+ }
24321
+ }
24322
+ function validateExplicitKey(element, parentType) {
24323
+ {
24324
+ if (!element._store || element._store.validated || element.key != null) {
24325
+ return;
24326
+ }
24327
+ element._store.validated = true;
24328
+ var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType);
24329
+ if (ownerHasKeyUseWarning[currentComponentErrorInfo]) {
24330
+ return;
24331
+ }
24332
+ ownerHasKeyUseWarning[currentComponentErrorInfo] = true;
24333
+ var childOwner = "";
24334
+ if (element && element._owner && element._owner !== ReactCurrentOwner$1.current) {
24335
+ childOwner = " It was passed a child from " + getComponentNameFromType(element._owner.type) + ".";
24336
+ }
24337
+ setCurrentlyValidatingElement$1(element);
24338
+ error('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner);
24339
+ setCurrentlyValidatingElement$1(null);
24340
+ }
24341
+ }
24342
+ function validateChildKeys(node2, parentType) {
24343
+ {
24344
+ if (typeof node2 !== "object") {
24345
+ return;
24346
+ }
24347
+ if (isArray(node2)) {
24348
+ for (var i2 = 0; i2 < node2.length; i2++) {
24349
+ var child = node2[i2];
24350
+ if (isValidElement(child)) {
24351
+ validateExplicitKey(child, parentType);
24352
+ }
24353
+ }
24354
+ } else if (isValidElement(node2)) {
24355
+ if (node2._store) {
24356
+ node2._store.validated = true;
24357
+ }
24358
+ } else if (node2) {
24359
+ var iteratorFn = getIteratorFn(node2);
24360
+ if (typeof iteratorFn === "function") {
24361
+ if (iteratorFn !== node2.entries) {
24362
+ var iterator = iteratorFn.call(node2);
24363
+ var step;
24364
+ while (!(step = iterator.next()).done) {
24365
+ if (isValidElement(step.value)) {
24366
+ validateExplicitKey(step.value, parentType);
24367
+ }
24368
+ }
24369
+ }
24370
+ }
24371
+ }
24372
+ }
24373
+ }
24374
+ function validatePropTypes(element) {
24375
+ {
24376
+ var type = element.type;
24377
+ if (type === null || type === void 0 || typeof type === "string") {
24378
+ return;
24379
+ }
24380
+ var propTypes;
24381
+ if (typeof type === "function") {
24382
+ propTypes = type.propTypes;
24383
+ } else if (typeof type === "object" && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.
24384
+ // Inner props are checked in the reconciler.
24385
+ type.$$typeof === REACT_MEMO_TYPE)) {
24386
+ propTypes = type.propTypes;
24387
+ } else {
24388
+ return;
24389
+ }
24390
+ if (propTypes) {
24391
+ var name = getComponentNameFromType(type);
24392
+ checkPropTypes(propTypes, element.props, "prop", name, element);
24393
+ } else if (type.PropTypes !== void 0 && !propTypesMisspellWarningShown) {
24394
+ propTypesMisspellWarningShown = true;
24395
+ var _name = getComponentNameFromType(type);
24396
+ error("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?", _name || "Unknown");
24397
+ }
24398
+ if (typeof type.getDefaultProps === "function" && !type.getDefaultProps.isReactClassApproved) {
24399
+ error("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.");
24400
+ }
24401
+ }
24402
+ }
24403
+ function validateFragmentProps(fragment) {
24404
+ {
24405
+ var keys = Object.keys(fragment.props);
24406
+ for (var i2 = 0; i2 < keys.length; i2++) {
24407
+ var key = keys[i2];
24408
+ if (key !== "children" && key !== "key") {
24409
+ setCurrentlyValidatingElement$1(fragment);
24410
+ error("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.", key);
24411
+ setCurrentlyValidatingElement$1(null);
24412
+ break;
24413
+ }
24414
+ }
24415
+ if (fragment.ref !== null) {
24416
+ setCurrentlyValidatingElement$1(fragment);
24417
+ error("Invalid attribute `ref` supplied to `React.Fragment`.");
24418
+ setCurrentlyValidatingElement$1(null);
24419
+ }
24420
+ }
24421
+ }
24422
+ var didWarnAboutKeySpread = {};
24423
+ function jsxWithValidation(type, props, key, isStaticChildren, source, self) {
24424
+ {
24425
+ var validType = isValidElementType(type);
24426
+ if (!validType) {
24427
+ var info = "";
24428
+ if (type === void 0 || typeof type === "object" && type !== null && Object.keys(type).length === 0) {
24429
+ info += " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.";
24430
+ }
24431
+ var sourceInfo = getSourceInfoErrorAddendum(source);
24432
+ if (sourceInfo) {
24433
+ info += sourceInfo;
24434
+ } else {
24435
+ info += getDeclarationErrorAddendum();
24436
+ }
24437
+ var typeString;
24438
+ if (type === null) {
24439
+ typeString = "null";
24440
+ } else if (isArray(type)) {
24441
+ typeString = "array";
24442
+ } else if (type !== void 0 && type.$$typeof === REACT_ELEMENT_TYPE) {
24443
+ typeString = "<" + (getComponentNameFromType(type.type) || "Unknown") + " />";
24444
+ info = " Did you accidentally export a JSX literal instead of a component?";
24445
+ } else {
24446
+ typeString = typeof type;
24447
+ }
24448
+ error("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s", typeString, info);
24449
+ }
24450
+ var element = jsxDEV(type, props, key, source, self);
24451
+ if (element == null) {
24452
+ return element;
24453
+ }
24454
+ if (validType) {
24455
+ var children = props.children;
24456
+ if (children !== void 0) {
24457
+ if (isStaticChildren) {
24458
+ if (isArray(children)) {
24459
+ for (var i2 = 0; i2 < children.length; i2++) {
24460
+ validateChildKeys(children[i2], type);
24461
+ }
24462
+ if (Object.freeze) {
24463
+ Object.freeze(children);
24464
+ }
24465
+ } else {
24466
+ error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");
24467
+ }
24468
+ } else {
24469
+ validateChildKeys(children, type);
24470
+ }
24471
+ }
24472
+ }
24473
+ {
24474
+ if (hasOwnProperty.call(props, "key")) {
24475
+ var componentName = getComponentNameFromType(type);
24476
+ var keys = Object.keys(props).filter(function(k2) {
24477
+ return k2 !== "key";
24478
+ });
24479
+ var beforeExample = keys.length > 0 ? "{key: someKey, " + keys.join(": ..., ") + ": ...}" : "{key: someKey}";
24480
+ if (!didWarnAboutKeySpread[componentName + beforeExample]) {
24481
+ var afterExample = keys.length > 0 ? "{" + keys.join(": ..., ") + ": ...}" : "{}";
24482
+ error('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName);
24483
+ didWarnAboutKeySpread[componentName + beforeExample] = true;
24484
+ }
24485
+ }
24486
+ }
24487
+ if (type === REACT_FRAGMENT_TYPE) {
24488
+ validateFragmentProps(element);
24489
+ } else {
24490
+ validatePropTypes(element);
24491
+ }
24492
+ return element;
24493
+ }
24494
+ }
24495
+ function jsxWithValidationStatic(type, props, key) {
24496
+ {
24497
+ return jsxWithValidation(type, props, key, true);
24498
+ }
24499
+ }
24500
+ function jsxWithValidationDynamic(type, props, key) {
24501
+ {
24502
+ return jsxWithValidation(type, props, key, false);
24503
+ }
24504
+ }
24505
+ var jsx12 = jsxWithValidationDynamic;
24506
+ var jsxs7 = jsxWithValidationStatic;
24507
+ exports.Fragment = REACT_FRAGMENT_TYPE;
24508
+ exports.jsx = jsx12;
24509
+ exports.jsxs = jsxs7;
24510
+ })();
24511
+ }
24512
+ }
24513
+ });
24514
+
24515
+ // ../../node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js
24516
+ var require_jsx_runtime = __commonJS({
24517
+ "../../node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js"(exports, module) {
24518
+ "use strict";
24519
+ if (false) {
24520
+ module.exports = null;
24521
+ } else {
24522
+ module.exports = require_react_jsx_runtime_development();
24523
+ }
24524
+ }
24525
+ });
24526
+
23622
24527
  // src/frontend/frontend.ts
23623
24528
  var import_client = __toESM(require_client());
23624
24529
 
24530
+ // ../toolkit-frontend/dist/chunk-35U577MM.mjs
24531
+ var import_react = __toESM(require_react(), 1);
24532
+ function switchToMouseMode(ev) {
24533
+ if (ev.movementX === 0 && ev.movementY === 0) return;
24534
+ document.body.classList.remove("touch-mode");
24535
+ }
24536
+ function switchToTouchMode() {
24537
+ document.body.classList.add("touch-mode");
24538
+ }
24539
+ function initialiseListeners() {
24540
+ window.addEventListener("mousemove", switchToMouseMode);
24541
+ window.addEventListener("touchstart", switchToTouchMode, { passive: false });
24542
+ window.addEventListener("contextmenu", (e) => {
24543
+ if (e.pointerType === "touch") {
24544
+ e.preventDefault();
24545
+ }
24546
+ });
24547
+ }
24548
+ var usePressable = (click) => {
24549
+ const [touching, setTouching] = (0, import_react.useState)(false);
24550
+ return {
24551
+ touching,
24552
+ handlers: {
24553
+ onClick: click,
24554
+ onTouchStart: () => {
24555
+ setTouching(true);
24556
+ },
24557
+ onTouchMove: () => {
24558
+ setTouching(false);
24559
+ },
24560
+ onTouchEnd: (event) => {
24561
+ if (touching) {
24562
+ event.preventDefault();
24563
+ setTouching(false);
24564
+ click();
24565
+ }
24566
+ }
24567
+ }
24568
+ };
24569
+ };
24570
+ function trackTouch(touch, move, end) {
24571
+ const touchMove = (ev) => {
24572
+ ev.preventDefault();
24573
+ for (const t of Array.from(ev.changedTouches)) {
24574
+ if (t.identifier === touch.identifier) {
24575
+ move({ pageX: t.pageX, pageY: t.pageY });
24576
+ }
24577
+ }
24578
+ };
24579
+ const touchEnd = (ev) => {
24580
+ for (const t of Array.from(ev.changedTouches)) {
24581
+ if (t.identifier === touch.identifier) {
24582
+ end({ pageX: t.pageX, pageY: t.pageY });
24583
+ window.removeEventListener("touchmove", touchMove);
24584
+ window.removeEventListener("touchend", touchEnd);
24585
+ window.removeEventListener("touchcancel", touchEnd);
24586
+ }
24587
+ }
24588
+ };
24589
+ window.addEventListener("touchmove", touchMove, { passive: false });
24590
+ window.addEventListener("touchend", touchEnd);
24591
+ window.addEventListener("touchcancel", touchEnd);
24592
+ }
24593
+ var calculateClass = (...args) => args.filter((a2) => !!a2).join(" ");
24594
+
24595
+ // ../toolkit-frontend/dist/chunk-7P6ASYW6.mjs
24596
+ var __defProp2 = Object.defineProperty;
24597
+ var __export = (target, all) => {
24598
+ for (var name in all)
24599
+ __defProp2(target, name, { get: all[name], enumerable: true });
24600
+ };
24601
+
23625
24602
  // ../diff/dist/chunk-KAHL2YAL.mjs
23626
24603
  var patchJson = (old, diff) => {
23627
24604
  if (diff.type === "match") {
@@ -23672,7 +24649,7 @@
23672
24649
  };
23673
24650
 
23674
24651
  // src/frontend/stage.tsx
23675
- var React12 = __toESM(require_react());
24652
+ var React5 = __toESM(require_react());
23676
24653
 
23677
24654
  // ../../node_modules/.pnpm/tslib@2.6.2/node_modules/tslib/tslib.es6.mjs
23678
24655
  var __assign = function() {
@@ -23714,7 +24691,7 @@
23714
24691
  );
23715
24692
 
23716
24693
  // ../../node_modules/.pnpm/styled-components@6.1.13_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/styled-components/dist/styled-components.browser.esm.js
23717
- var import_react = __toESM(require_react());
24694
+ var import_react2 = __toESM(require_react());
23718
24695
  var import_shallowequal = __toESM(require_shallowequal());
23719
24696
 
23720
24697
  // ../../node_modules/.pnpm/stylis@4.3.2/node_modules/stylis/src/Enum.js
@@ -24395,7 +25372,7 @@
24395
25372
  console.error = function(t2) {
24396
25373
  for (var n2 = [], o3 = 1; o3 < arguments.length; o3++) n2[o3 - 1] = arguments[o3];
24397
25374
  E.test(t2) ? (a2 = false, N.delete(s2)) : i2.apply(void 0, __spreadArray([t2], n2, false));
24398
- }, (0, import_react.useRef)(), a2 && !N.has(s2) && (console.warn(s2), N.add(s2));
25375
+ }, (0, import_react2.useRef)(), a2 && !N.has(s2) && (console.warn(s2), N.add(s2));
24399
25376
  } catch (e) {
24400
25377
  E.test(e.message) && N.delete(s2);
24401
25378
  } finally {
@@ -24733,26 +25710,26 @@
24733
25710
  }
24734
25711
  var Me = new ke();
24735
25712
  var ze = Fe();
24736
- var $e = import_react.default.createContext({ shouldForwardProp: void 0, styleSheet: Me, stylis: ze });
25713
+ var $e = import_react2.default.createContext({ shouldForwardProp: void 0, styleSheet: Me, stylis: ze });
24737
25714
  var Be = $e.Consumer;
24738
- var Le = import_react.default.createContext(void 0);
25715
+ var Le = import_react2.default.createContext(void 0);
24739
25716
  function Ge() {
24740
- return (0, import_react.useContext)($e);
25717
+ return (0, import_react2.useContext)($e);
24741
25718
  }
24742
25719
  function Ye(e) {
24743
- var t = (0, import_react.useState)(e.stylisPlugins), n = t[0], r2 = t[1], c2 = Ge().styleSheet, l2 = (0, import_react.useMemo)(function() {
25720
+ var t = (0, import_react2.useState)(e.stylisPlugins), n = t[0], r2 = t[1], c2 = Ge().styleSheet, l2 = (0, import_react2.useMemo)(function() {
24744
25721
  var t2 = c2;
24745
25722
  return e.sheet ? t2 = e.sheet : e.target && (t2 = t2.reconstructWithOptions({ target: e.target }, false)), e.disableCSSOMInjection && (t2 = t2.reconstructWithOptions({ useCSSOMInjection: false })), t2;
24746
- }, [e.disableCSSOMInjection, e.sheet, e.target, c2]), u2 = (0, import_react.useMemo)(function() {
25723
+ }, [e.disableCSSOMInjection, e.sheet, e.target, c2]), u2 = (0, import_react2.useMemo)(function() {
24747
25724
  return Fe({ options: { namespace: e.namespace, prefix: e.enableVendorPrefixes }, plugins: n });
24748
25725
  }, [e.enableVendorPrefixes, e.namespace, n]);
24749
- (0, import_react.useEffect)(function() {
25726
+ (0, import_react2.useEffect)(function() {
24750
25727
  (0, import_shallowequal.default)(n, e.stylisPlugins) || r2(e.stylisPlugins);
24751
25728
  }, [e.stylisPlugins]);
24752
- var d = (0, import_react.useMemo)(function() {
25729
+ var d = (0, import_react2.useMemo)(function() {
24753
25730
  return { shouldForwardProp: e.shouldForwardProp, styleSheet: l2, stylis: u2 };
24754
25731
  }, [e.shouldForwardProp, l2, u2]);
24755
- return import_react.default.createElement($e.Provider, { value: d }, import_react.default.createElement(Le.Provider, { value: u2 }, e.children));
25732
+ return import_react2.default.createElement($e.Provider, { value: d }, import_react2.default.createElement(Le.Provider, { value: u2 }, e.children));
24756
25733
  }
24757
25734
  var We = function() {
24758
25735
  function e(e2, t) {
@@ -24844,10 +25821,10 @@
24844
25821
  return o2;
24845
25822
  }, e;
24846
25823
  }();
24847
- var et = import_react.default.createContext(void 0);
25824
+ var et = import_react2.default.createContext(void 0);
24848
25825
  var tt = et.Consumer;
24849
25826
  function ot(e) {
24850
- var n = import_react.default.useContext(et), r2 = (0, import_react.useMemo)(function() {
25827
+ var n = import_react2.default.useContext(et), r2 = (0, import_react2.useMemo)(function() {
24851
25828
  return function(e2, n2) {
24852
25829
  if (!e2) throw he(14);
24853
25830
  if (re(e2)) {
@@ -24859,7 +25836,7 @@
24859
25836
  return n2 ? __assign(__assign({}, n2), e2) : e2;
24860
25837
  }(e.theme, n);
24861
25838
  }, [e.theme, n]);
24862
- return e.children ? import_react.default.createElement(et.Provider, { value: r2 }, e.children) : null;
25839
+ return e.children ? import_react2.default.createElement(et.Provider, { value: r2 }, e.children) : null;
24863
25840
  }
24864
25841
  var rt = {};
24865
25842
  var st = /* @__PURE__ */ new Set();
@@ -24884,8 +25861,8 @@
24884
25861
  var N2 = new Qe(s2, g2, i2 ? a2.componentStyle : void 0);
24885
25862
  function O2(e2, r3) {
24886
25863
  return function(e3, r4, s3) {
24887
- var i3 = e3.attrs, a3 = e3.componentStyle, c3 = e3.defaultProps, p3 = e3.foldedComponentIds, d2 = e3.styledComponentId, h2 = e3.target, f3 = import_react.default.useContext(et), m3 = Ge(), y3 = e3.shouldForwardProp || m3.shouldForwardProp;
24888
- (0, import_react.useDebugValue)(d2);
25864
+ var i3 = e3.attrs, a3 = e3.componentStyle, c3 = e3.defaultProps, p3 = e3.foldedComponentIds, d2 = e3.styledComponentId, h2 = e3.target, f3 = import_react2.default.useContext(et), m3 = Ge(), y3 = e3.shouldForwardProp || m3.shouldForwardProp;
25865
+ (0, import_react2.useDebugValue)(d2);
24889
25866
  var v2 = I(r4, f3, c3) || C, g3 = function(e4, n, o2) {
24890
25867
  for (var r5, s4 = __assign(__assign({}, n), { className: void 0, theme: o2 }), i4 = 0; i4 < e4.length; i4 += 1) {
24891
25868
  var a4 = re(r5 = e4[i4]) ? r5(s4) : r5;
@@ -24896,15 +25873,15 @@
24896
25873
  for (var b3 in g3) void 0 === g3[b3] || "$" === b3[0] || "as" === b3 || "theme" === b3 && g3.theme === v2 || ("forwardedAs" === b3 ? w3.as = g3.forwardedAs : y3 && !y3(b3, S3) || (w3[b3] = g3[b3], y3 || false || isPropValid(b3) || st.has(b3) || !A.has(S3) || (st.add(b3), console.warn('styled-components: it looks like an unknown prop "'.concat(b3, '" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via `<StyleSheetManager shouldForwardProp={...}>` (connect an API like `@emotion/is-prop-valid`) or consider using transient props (`$` prefix for automatic filtering.)')))));
24897
25874
  var E3 = function(e4, t) {
24898
25875
  var n = Ge(), o2 = e4.generateAndInjectStyles(t, n.styleSheet, n.stylis);
24899
- return (0, import_react.useDebugValue)(o2), o2;
25876
+ return (0, import_react2.useDebugValue)(o2), o2;
24900
25877
  }(a3, g3);
24901
25878
  e3.warnTooManyClasses && e3.warnTooManyClasses(E3);
24902
25879
  var N3 = ie(p3, d2);
24903
- return E3 && (N3 += " " + E3), g3.className && (N3 += " " + g3.className), w3[L(S3) && !A.has(S3) ? "class" : "className"] = N3, w3.ref = s3, (0, import_react.createElement)(S3, w3);
25880
+ return E3 && (N3 += " " + E3), g3.className && (N3 += " " + g3.className), w3[L(S3) && !A.has(S3) ? "class" : "className"] = N3, w3.ref = s3, (0, import_react2.createElement)(S3, w3);
24904
25881
  }(D2, e2, r3);
24905
25882
  }
24906
25883
  O2.displayName = y2;
24907
- var D2 = import_react.default.forwardRef(O2);
25884
+ var D2 = import_react2.default.forwardRef(O2);
24908
25885
  return D2.attrs = S2, D2.componentStyle = N2, D2.displayName = y2, D2.shouldForwardProp = w2, D2.foldedComponentIds = i2 ? ie(a2.foldedComponentIds, a2.styledComponentId) : "", D2.styledComponentId = g2, D2.target = i2 ? a2.target : e, Object.defineProperty(D2, "defaultProps", { get: function() {
24909
25886
  return this._foldedDefaultProps;
24910
25887
  }, set: function(e2) {
@@ -24975,10 +25952,10 @@
24975
25952
  var i2 = lt.apply(void 0, __spreadArray([n], r2, false)), a2 = "sc-global-".concat($(JSON.stringify(i2))), c2 = new ht(i2, a2);
24976
25953
  P(a2);
24977
25954
  var l2 = function(e) {
24978
- var t = Ge(), n2 = import_react.default.useContext(et), r3 = import_react.default.useRef(t.styleSheet.allocateGSInstance(a2)).current;
24979
- return import_react.default.Children.count(e.children) && console.warn("The global style component ".concat(a2, " was given child JSX. createGlobalStyle does not render children.")), i2.some(function(e2) {
25955
+ var t = Ge(), n2 = import_react2.default.useContext(et), r3 = import_react2.default.useRef(t.styleSheet.allocateGSInstance(a2)).current;
25956
+ return import_react2.default.Children.count(e.children) && console.warn("The global style component ".concat(a2, " was given child JSX. createGlobalStyle does not render children.")), i2.some(function(e2) {
24980
25957
  return "string" == typeof e2 && -1 !== e2.indexOf("@import");
24981
- }) && console.warn("Please do not use @import CSS syntax in createGlobalStyle at this time, as the CSSOM APIs we use in production do not handle it well. Instead, we recommend using a library such as react-helmet to inject a typical <link> meta tag to the stylesheet, or simply embedding it manually in your index.html <head> section for a simpler app."), t.styleSheet.server && u2(r3, e, t.styleSheet, n2, t.stylis), import_react.default.useLayoutEffect(function() {
25958
+ }) && console.warn("Please do not use @import CSS syntax in createGlobalStyle at this time, as the CSSOM APIs we use in production do not handle it well. Instead, we recommend using a library such as react-helmet to inject a typical <link> meta tag to the stylesheet, or simply embedding it manually in your index.html <head> section for a simpler app."), t.styleSheet.server && u2(r3, e, t.styleSheet, n2, t.stylis), import_react2.default.useLayoutEffect(function() {
24982
25959
  if (!t.styleSheet.server) return u2(r3, e, t.styleSheet, n2, t.stylis), function() {
24983
25960
  return c2.removeStyles(r3, t.styleSheet);
24984
25961
  };
@@ -24991,7 +25968,7 @@
24991
25968
  c2.renderStyles(e, i3, o2, s3);
24992
25969
  }
24993
25970
  }
24994
- return import_react.default.memo(l2);
25971
+ return import_react2.default.memo(l2);
24995
25972
  }
24996
25973
  var vt = function() {
24997
25974
  function e() {
@@ -25010,14 +25987,14 @@
25010
25987
  var r2 = e2.instance.toString();
25011
25988
  if (!r2) return [];
25012
25989
  var s2 = ((n = {})[f] = "", n[y] = v, n.dangerouslySetInnerHTML = { __html: r2 }, n), i2 = Ce();
25013
- return i2 && (s2.nonce = i2), [import_react.default.createElement("style", __assign({}, s2, { key: "sc-0-0" }))];
25990
+ return i2 && (s2.nonce = i2), [import_react2.default.createElement("style", __assign({}, s2, { key: "sc-0-0" }))];
25014
25991
  }, this.seal = function() {
25015
25992
  e2.sealed = true;
25016
25993
  }, this.instance = new ke({ isServer: true }), this.sealed = false;
25017
25994
  }
25018
25995
  return e.prototype.collectStyles = function(e2) {
25019
25996
  if (this.sealed) throw he(2);
25020
- return import_react.default.createElement(Ye, { sheet: this.instance }, e2);
25997
+ return import_react2.default.createElement(Ye, { sheet: this.instance }, e2);
25021
25998
  }, e.prototype.interleaveWithNodeStream = function(e2) {
25022
25999
  throw he(3);
25023
26000
  }, e;
@@ -25026,24 +26003,13 @@
25026
26003
  var St = "__sc-".concat(f, "__");
25027
26004
  "undefined" != typeof window && (window[St] || (window[St] = 0), 1 === window[St] && console.warn("It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\n\nSee https://s-c.sh/2BAXzed for more info."), window[St] += 1);
25028
26005
 
25029
- // src/shared/static.ts
25030
- var FONTS = {
25031
- materialSymbolsOutlined: "material-symbols-outlined.woff2"
25032
- };
25033
-
25034
- // src/frontend/styling.ts
26006
+ // ../toolkit-frontend/dist/chunk-6Z2ACPNM.mjs
25035
26007
  var GlobalStyle = ft`
25036
26008
  body {
25037
26009
  &.touch-mode * {
25038
26010
  cursor: none !important;
25039
26011
  }
25040
26012
  }
25041
-
25042
- @font-face {
25043
- font-family: 'Material Symbols Outlined';
25044
- font-style: normal;
25045
- src: url(${FONTS.materialSymbolsOutlined}) format('woff');
25046
- }
25047
26013
  `;
25048
26014
  var THEME = {
25049
26015
  colorGreen: "#98c379",
@@ -25178,17 +26144,12 @@ body {
25178
26144
  transition: border-color 0s;
25179
26145
  `;
25180
26146
 
25181
- // src/frontend/components/group.tsx
25182
- var React3 = __toESM(require_react());
25183
- var import_react4 = __toESM(require_react());
25184
-
25185
- // src/frontend/components/core/icon.tsx
25186
- var React = __toESM(require_react());
25187
-
25188
- // src/frontend/components/core/utils.ts
25189
- var calculateClass = (...args) => args.filter((a2) => !!a2).join(" ");
25190
-
25191
- // src/frontend/components/core/icon.tsx
26147
+ // ../toolkit-frontend/dist/chunk-3MWB6MZI.mjs
26148
+ var import_jsx_runtime = __toESM(require_jsx_runtime(), 1);
26149
+ var core_exports = {};
26150
+ __export(core_exports, {
26151
+ Icon: () => Icon
26152
+ });
25192
26153
  var ICON_CLASS = "icon";
25193
26154
  var Span = dt.span`
25194
26155
  font-family: 'Material Symbols Outlined';
@@ -25206,19 +26167,105 @@ body {
25206
26167
  'wght' 300,
25207
26168
  'GRAD' -25;
25208
26169
  `;
25209
- var Icon = ({ icon, ...props }) => /* @__PURE__ */ React.createElement(Span, { className: calculateClass(props.className, ICON_CLASS), ...props }, icon);
26170
+ var Icon = ({ icon, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Span, { className: calculateClass(props.className, ICON_CLASS), ...props, children: icon });
25210
26171
 
25211
- // src/frontend/components/context.tsx
25212
- var import_react2 = __toESM(require_react());
25213
- var StageContext = (0, import_react2.createContext)({
26172
+ // ../toolkit-frontend/dist/components/index.mjs
26173
+ var import_react3 = __toESM(require_react(), 1);
26174
+ var import_react4 = __toESM(require_react(), 1);
26175
+ var import_jsx_runtime2 = __toESM(require_jsx_runtime(), 1);
26176
+ var import_react5 = __toESM(require_react(), 1);
26177
+ var import_react6 = __toESM(require_react(), 1);
26178
+ var import_jsx_runtime3 = __toESM(require_jsx_runtime(), 1);
26179
+ var import_jsx_runtime4 = __toESM(require_jsx_runtime(), 1);
26180
+ var import_jsx_runtime5 = __toESM(require_jsx_runtime(), 1);
26181
+ var import_jsx_runtime6 = __toESM(require_jsx_runtime(), 1);
26182
+ var import_react7 = __toESM(require_react(), 1);
26183
+ var import_jsx_runtime7 = __toESM(require_jsx_runtime(), 1);
26184
+ var import_react8 = __toESM(require_react(), 1);
26185
+ var import_jsx_runtime8 = __toESM(require_jsx_runtime(), 1);
26186
+ var import_react9 = __toESM(require_react(), 1);
26187
+ var import_jsx_runtime9 = __toESM(require_jsx_runtime(), 1);
26188
+ var import_react10 = __toESM(require_react(), 1);
26189
+ var import_jsx_runtime10 = __toESM(require_jsx_runtime(), 1);
26190
+ var import_react11 = __toESM(require_react(), 1);
26191
+ var import_jsx_runtime11 = __toESM(require_jsx_runtime(), 1);
26192
+ var import_jsx_runtime12 = __toESM(require_jsx_runtime(), 1);
26193
+ var StageContext = (0, import_react4.createContext)({
25214
26194
  sendMessage: null,
25215
26195
  renderComponent: () => {
25216
26196
  throw new Error(`missing root context`);
25217
26197
  }
25218
26198
  });
26199
+ var TOUCH_INDICATOR_CLASS = "touch-indicator";
26200
+ var TOUCHING_CLASS = "touching";
26201
+ var ERROR_CLASS = "error";
26202
+ var ButtonContents = dt.div`
26203
+ padding: 6px 4px;
26204
+ display: flex;
26205
+ justify-content: center;
26206
+ align-items: center;
26207
+
26208
+ > * {
26209
+ padding: 0;
26210
+ }
26211
+ `;
26212
+ var ButtonLabel = dt.span`
26213
+ padding: 0 4px;
26214
+ `;
26215
+ var Button = (props) => {
26216
+ const { sendMessage } = import_react3.default.useContext(StageContext);
26217
+ const { touching, handlers } = usePressable(
26218
+ () => sendMessage?.({
26219
+ type: "component-message",
26220
+ componentKey: props.info.key,
26221
+ component: "button"
26222
+ })
26223
+ );
26224
+ const { state } = props.info;
26225
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
26226
+ "div",
26227
+ {
26228
+ className: calculateClass(
26229
+ props.className,
26230
+ touching || state.state === "pressed" ? TOUCHING_CLASS : null,
26231
+ state.state === "error" && ERROR_CLASS
26232
+ ),
26233
+ ...handlers,
26234
+ title: state.state === "error" ? state.error : void 0,
26235
+ children: [
26236
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: TOUCH_INDICATOR_CLASS }),
26237
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(ButtonContents, { children: [
26238
+ props.info.icon && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Icon, { icon: props.info.icon }),
26239
+ props.info.text && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(ButtonLabel, { children: props.info.text })
26240
+ ] })
26241
+ ]
26242
+ }
26243
+ );
26244
+ };
26245
+ var StyledButton = dt(Button)`
26246
+ ${rectButton}
26247
+ outline: none;
26248
+ height: 30px;
26249
+ position: relative;
26250
+ overflow: visible;
25219
26251
 
25220
- // src/frontend/components/nesting.tsx
25221
- var React2 = __toESM(require_react());
26252
+ .${TOUCH_INDICATOR_CLASS} {
26253
+ ${touchIndicatorNormal}
26254
+ }
26255
+
26256
+ &.${ERROR_CLASS} {
26257
+ color: ${THEME.colorRed};
26258
+ border-color: ${THEME.colorRed};
26259
+ }
26260
+
26261
+ &.${TOUCHING_CLASS} {
26262
+ ${buttonStateNormalActive}
26263
+
26264
+ .${TOUCH_INDICATOR_CLASS} {
26265
+ ${touchIndicatorTouching}
26266
+ }
26267
+ }
26268
+ `;
25222
26269
  function nextColor(currentColor) {
25223
26270
  switch (currentColor) {
25224
26271
  case "dark":
@@ -25229,13 +26276,10 @@ body {
25229
26276
  return "dark";
25230
26277
  }
25231
26278
  }
25232
- var LastNestedColor = React2.createContext("dark");
25233
- var NestedContent = ({
25234
- className,
25235
- children
25236
- }) => {
25237
- const color = React2.useContext(LastNestedColor);
25238
- return /* @__PURE__ */ React2.createElement("div", { className: calculateClass(className, `color-${color}`) }, /* @__PURE__ */ React2.createElement(LastNestedColor.Provider, { value: nextColor(color) }, children));
26279
+ var LastNestedColor = import_react6.default.createContext("dark");
26280
+ var NestedContent = ({ className, children }) => {
26281
+ const color = import_react6.default.useContext(LastNestedColor);
26282
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { className: calculateClass(className, `color-${color}`), children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(LastNestedColor.Provider, { value: nextColor(color), children }) });
25239
26283
  };
25240
26284
  NestedContent.displayName = "NestedContent";
25241
26285
  var StyledNestedContent = dt(NestedContent)`
@@ -25254,72 +26298,6 @@ body {
25254
26298
  background: ${THEME.bgLight1};
25255
26299
  }
25256
26300
  `;
25257
-
25258
- // src/frontend/util/touch.ts
25259
- var import_react3 = __toESM(require_react());
25260
- function switchToMouseMode(ev) {
25261
- if (ev.movementX === 0 && ev.movementY === 0) return;
25262
- document.body.classList.remove("touch-mode");
25263
- }
25264
- function switchToTouchMode() {
25265
- document.body.classList.add("touch-mode");
25266
- }
25267
- function initialiseListeners() {
25268
- window.addEventListener("mousemove", switchToMouseMode);
25269
- window.addEventListener("touchstart", switchToTouchMode, { passive: false });
25270
- window.addEventListener("contextmenu", (e) => {
25271
- if (e.pointerType === "touch") {
25272
- e.preventDefault();
25273
- }
25274
- });
25275
- }
25276
- var usePressable = (click) => {
25277
- const [touching, setTouching] = (0, import_react3.useState)(false);
25278
- return {
25279
- touching,
25280
- handlers: {
25281
- onClick: click,
25282
- onTouchStart: () => {
25283
- setTouching(true);
25284
- },
25285
- onTouchMove: () => {
25286
- setTouching(false);
25287
- },
25288
- onTouchEnd: (event) => {
25289
- if (touching) {
25290
- event.preventDefault();
25291
- setTouching(false);
25292
- click();
25293
- }
25294
- }
25295
- }
25296
- };
25297
- };
25298
- function trackTouch(touch, move, end) {
25299
- const touchMove = (ev) => {
25300
- ev.preventDefault();
25301
- for (const t of Array.from(ev.changedTouches)) {
25302
- if (t.identifier === touch.identifier) {
25303
- move({ pageX: t.pageX, pageY: t.pageY });
25304
- }
25305
- }
25306
- };
25307
- const touchEnd = (ev) => {
25308
- for (const t of Array.from(ev.changedTouches)) {
25309
- if (t.identifier === touch.identifier) {
25310
- end({ pageX: t.pageX, pageY: t.pageY });
25311
- window.removeEventListener("touchmove", touchMove);
25312
- window.removeEventListener("touchend", touchEnd);
25313
- window.removeEventListener("touchcancel", touchEnd);
25314
- }
25315
- }
25316
- };
25317
- window.addEventListener("touchmove", touchMove, { passive: false });
25318
- window.addEventListener("touchend", touchEnd);
25319
- window.addEventListener("touchcancel", touchEnd);
25320
- }
25321
-
25322
- // src/frontend/components/group.tsx
25323
26301
  var CollapseIcon = dt(Icon)({
25324
26302
  cursor: "pointer"
25325
26303
  });
@@ -25396,7 +26374,7 @@ body {
25396
26374
  outline: none;
25397
26375
  color: ${THEME.textNormal};
25398
26376
  `;
25399
- var GroupStateContext = React3.createContext({
26377
+ var GroupStateContext = import_react5.default.createContext({
25400
26378
  isCollapsed: () => {
25401
26379
  throw new Error("missing GroupStateContext");
25402
26380
  },
@@ -25405,7 +26383,7 @@ body {
25405
26383
  }
25406
26384
  });
25407
26385
  var GroupStateWrapper = ({ openByDefault, children }) => {
25408
- const [state, setState] = (0, import_react4.useState)({});
26386
+ const [state, setState] = (0, import_react5.useState)({});
25409
26387
  const isCollapsed = (key, defaultState) => {
25410
26388
  let match2 = state[key];
25411
26389
  if (!match2) {
@@ -25423,13 +26401,13 @@ body {
25423
26401
  [key]: current[key] === "closed" ? "open" : "closed"
25424
26402
  }));
25425
26403
  };
25426
- return /* @__PURE__ */ React3.createElement(GroupStateContext.Provider, { value: { isCollapsed, toggleCollapsed } }, children);
26404
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(GroupStateContext.Provider, { value: { isCollapsed, toggleCollapsed }, children });
25427
26405
  };
25428
26406
  var Group = ({ className, info }) => {
25429
- const groupState = (0, import_react4.useContext)(GroupStateContext);
25430
- const { renderComponent: renderComponent2, sendMessage } = (0, import_react4.useContext)(StageContext);
25431
- const [editingTitle, setEditingTitle] = (0, import_react4.useState)(false);
25432
- const children = /* @__PURE__ */ React3.createElement(GroupChildren, { info }, info.children.map(renderComponent2));
26407
+ const groupState = (0, import_react5.useContext)(GroupStateContext);
26408
+ const { renderComponent, sendMessage } = (0, import_react5.useContext)(StageContext);
26409
+ const [editingTitle, setEditingTitle] = (0, import_react5.useState)(false);
26410
+ const children = /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(GroupChildren, { info, children: info.children.map(renderComponent) });
25433
26411
  const collapsible = !!info.defaultCollapsibleState;
25434
26412
  const collapsed = info.defaultCollapsibleState ? groupState.isCollapsed(info.key, info.defaultCollapsibleState) : false;
25435
26413
  const collapsePressable = usePressable(
@@ -25457,35 +26435,43 @@ body {
25457
26435
  }
25458
26436
  };
25459
26437
  const hasBorder = info.border || displayHeader;
25460
- const childrenElements = hasBorder ? /* @__PURE__ */ React3.createElement(StyledNestedContent, null, children) : children;
25461
- return /* @__PURE__ */ React3.createElement("div", { className: calculateClass(className, !hasBorder && "no-border") }, displayHeader ? /* @__PURE__ */ React3.createElement(
25462
- Header,
25463
- {
25464
- className: calculateClass(
25465
- collapsePressable.touching && "touching",
25466
- collapsible && collapsed && "collapsed"
25467
- )
25468
- },
25469
- collapsible && /* @__PURE__ */ React3.createElement(
25470
- CollapseIcon,
25471
- {
25472
- icon: collapsed ? "arrow_right" : "arrow_drop_down",
25473
- ...collapsePressable.handlers
25474
- }
25475
- ),
25476
- info.labels?.map((l2) => /* @__PURE__ */ React3.createElement(Label, null, l2.text)),
25477
- showTitle && (info.editableTitle ? editingTitle ? /* @__PURE__ */ React3.createElement(
25478
- TitleInput,
26438
+ const childrenElements = hasBorder ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(StyledNestedContent, { children }) : children;
26439
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: calculateClass(className, !hasBorder && "no-border"), children: [
26440
+ displayHeader ? /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
26441
+ Header,
25479
26442
  {
25480
- ref: (input) => input?.focus(),
25481
- onBlur: updateTitle,
25482
- onKeyDown: keyDown,
25483
- defaultValue: info.title
26443
+ className: calculateClass(
26444
+ collapsePressable.touching && "touching",
26445
+ collapsible && collapsed && "collapsed"
26446
+ ),
26447
+ children: [
26448
+ collapsible && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
26449
+ CollapseIcon,
26450
+ {
26451
+ icon: collapsed ? "arrow_right" : "arrow_drop_down",
26452
+ ...collapsePressable.handlers
26453
+ }
26454
+ ),
26455
+ info.labels?.map((l2) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Label, { children: l2.text })),
26456
+ showTitle && (info.editableTitle ? editingTitle ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
26457
+ TitleInput,
26458
+ {
26459
+ ref: (input) => input?.focus(),
26460
+ onBlur: updateTitle,
26461
+ onKeyDown: keyDown,
26462
+ defaultValue: info.title
26463
+ }
26464
+ ) : /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(EditableTitle, { onClick: () => setEditingTitle(true), children: [
26465
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { children: info.title }),
26466
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Icon, { className: "icon", icon: "edit" })
26467
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { children: info.title })),
26468
+ collapsible ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(CollapseBar, { ...collapsePressable.handlers }) : /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Grow, {}),
26469
+ info.headers?.map((h) => h.children.map((c2) => renderComponent(c2)))
26470
+ ]
25484
26471
  }
25485
- ) : /* @__PURE__ */ React3.createElement(EditableTitle, { onClick: () => setEditingTitle(true) }, /* @__PURE__ */ React3.createElement("span", null, info.title), /* @__PURE__ */ React3.createElement(Icon, { className: "icon", icon: "edit" })) : /* @__PURE__ */ React3.createElement("span", null, info.title)),
25486
- collapsible ? /* @__PURE__ */ React3.createElement(CollapseBar, { ...collapsePressable.handlers }) : /* @__PURE__ */ React3.createElement(Grow, null),
25487
- info.headers?.map((h) => h.children.map((c2) => renderComponent2(c2)))
25488
- ) : null, collapsible && collapsed ? null : childrenElements);
26472
+ ) : null,
26473
+ collapsible && collapsed ? null : childrenElements
26474
+ ] });
25489
26475
  };
25490
26476
  Group.displayName = "Group";
25491
26477
  var StyledGroup = dt(Group)`
@@ -25502,85 +26488,11 @@ body {
25502
26488
  margin: 0 !important;
25503
26489
  }
25504
26490
  `;
25505
-
25506
- // src/frontend/components/button.tsx
25507
- var React4 = __toESM(require_react());
25508
- var TOUCH_INDICATOR_CLASS = "touch-indicator";
25509
- var TOUCHING_CLASS = "touching";
25510
- var ERROR_CLASS = "error";
25511
- var ButtonContents = dt.div`
25512
- padding: 6px 4px;
25513
- display: flex;
25514
- justify-content: center;
25515
- align-items: center;
25516
-
25517
- > * {
25518
- padding: 0;
25519
- }
25520
- `;
25521
- var ButtonLabel = dt.span`
25522
- padding: 0 4px;
25523
- `;
25524
- var Button = (props) => {
25525
- const { sendMessage } = React4.useContext(StageContext);
25526
- const { touching, handlers } = usePressable(
25527
- () => sendMessage?.({
25528
- type: "component-message",
25529
- componentKey: props.info.key,
25530
- component: "button"
25531
- })
25532
- );
25533
- const { state } = props.info;
25534
- return /* @__PURE__ */ React4.createElement(
25535
- "div",
25536
- {
25537
- className: calculateClass(
25538
- props.className,
25539
- touching || state.state === "pressed" ? TOUCHING_CLASS : null,
25540
- state.state === "error" && ERROR_CLASS
25541
- ),
25542
- ...handlers,
25543
- title: state.state === "error" ? state.error : void 0
25544
- },
25545
- /* @__PURE__ */ React4.createElement("div", { className: TOUCH_INDICATOR_CLASS }),
25546
- /* @__PURE__ */ React4.createElement(ButtonContents, null, props.info.icon && /* @__PURE__ */ React4.createElement(Icon, { icon: props.info.icon }), props.info.text && /* @__PURE__ */ React4.createElement(ButtonLabel, null, props.info.text))
25547
- );
25548
- };
25549
- var StyledButton = dt(Button)`
25550
- ${rectButton}
25551
- outline: none;
25552
- height: 30px;
25553
- position: relative;
25554
- overflow: visible;
25555
-
25556
- .${TOUCH_INDICATOR_CLASS} {
25557
- ${touchIndicatorNormal}
25558
- }
25559
-
25560
- &.${ERROR_CLASS} {
25561
- color: ${THEME.colorRed};
25562
- border-color: ${THEME.colorRed};
25563
- }
25564
-
25565
- &.${TOUCHING_CLASS} {
25566
- ${buttonStateNormalActive}
25567
-
25568
- .${TOUCH_INDICATOR_CLASS} {
25569
- ${touchIndicatorTouching}
25570
- }
25571
- }
25572
- `;
25573
-
25574
- // src/frontend/components/label.tsx
25575
- var React5 = __toESM(require_react());
25576
- var Label2 = ({ className, info }) => /* @__PURE__ */ React5.createElement("div", { className }, info.text);
26491
+ var Label2 = ({ className, info }) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className, children: info.text });
25577
26492
  var StyledLabel = dt(Label2)`
25578
26493
  font-weight: ${(p2) => p2.info.bold ? "bold" : "normal"};
25579
26494
  white-space: nowrap;
25580
26495
  `;
25581
-
25582
- // src/frontend/components/rect.tsx
25583
- var React6 = __toESM(require_react());
25584
26496
  var TRANSPARENCY_SVG = `
25585
26497
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 10">
25586
26498
  <rect width="10px" height="10px" fill="#333" />
@@ -25601,10 +26513,7 @@ body {
25601
26513
  width: 100%;
25602
26514
  height: 100%;
25603
26515
  `;
25604
- var Rect = ({ className, info }) => /* @__PURE__ */ React6.createElement(Wrapper, { className }, /* @__PURE__ */ React6.createElement(Inner, { style: { backgroundColor: info.color } }));
25605
-
25606
- // src/frontend/components/slider_button.tsx
25607
- var React7 = __toESM(require_react());
26516
+ var Rect = ({ className, info }) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Wrapper, { className, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Inner, { style: { backgroundColor: info.color } }) });
25608
26517
  var CLASS_SLIDER_DISPLAY = "slider-display";
25609
26518
  var CLASS_SLIDER_VALUE = "slider-value";
25610
26519
  var OPEN_SLIDER_WIDTH = 400;
@@ -25627,8 +26536,8 @@ body {
25627
26536
  return pageX - rect.left;
25628
26537
  };
25629
26538
  var SliderButton = (props) => {
25630
- const [state, setState] = React7.useState({ state: "closed" });
25631
- const input = React7.useRef(null);
26539
+ const [state, setState] = import_react7.default.useState({ state: "closed" });
26540
+ const input = import_react7.default.useRef(null);
25632
26541
  const displayValue = (value2) => {
25633
26542
  if (props.info.max === 1 && props.info.min === 0) {
25634
26543
  return `${Math.round(value2 * 100)}%`;
@@ -25718,29 +26627,31 @@ body {
25718
26627
  const value = state.state === "touching" ? getNewValue(state.startValue, state.diff) : props.info.value;
25719
26628
  const valueDisplay = value !== null ? displayValue(value) : "";
25720
26629
  const valueCSSPercent = value ? (value - props.info.min) / (props.info.max - props.info.min) * 100 + "%" : "0";
25721
- return /* @__PURE__ */ React7.createElement("div", { className: [props.className, `state-${state.state}`].join(" ") }, /* @__PURE__ */ React7.createElement(
26630
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: [props.className, `state-${state.state}`].join(" "), children: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
25722
26631
  "div",
25723
26632
  {
25724
26633
  className: "inner",
25725
26634
  onMouseDown: () => setState({ state: "mouse-down" }),
25726
26635
  onMouseUp: () => input.current?.focus(),
25727
26636
  onTouchStart,
25728
- style: state.state === "touching" ? { left: state.innerLeft } : {}
25729
- },
25730
- /* @__PURE__ */ React7.createElement(
25731
- "input",
25732
- {
25733
- type: "text",
25734
- ref: input,
25735
- onFocus,
25736
- onBlur,
25737
- onKeyDown
25738
- }
25739
- ),
25740
- /* @__PURE__ */ React7.createElement("div", { className: CLASS_SLIDER_VALUE }, valueDisplay),
25741
- /* @__PURE__ */ React7.createElement("div", { className: CLASS_SLIDER_DISPLAY }, /* @__PURE__ */ React7.createElement("div", { className: "inner", style: { width: valueCSSPercent } })),
25742
- /* @__PURE__ */ React7.createElement("div", { className: CLASS_SLIDER_VALUE }, valueDisplay)
25743
- ));
26637
+ style: state.state === "touching" ? { left: state.innerLeft } : {},
26638
+ children: [
26639
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
26640
+ "input",
26641
+ {
26642
+ type: "text",
26643
+ ref: input,
26644
+ onFocus,
26645
+ onBlur,
26646
+ onKeyDown
26647
+ }
26648
+ ),
26649
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: CLASS_SLIDER_VALUE, children: valueDisplay }),
26650
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: CLASS_SLIDER_DISPLAY, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "inner", style: { width: valueCSSPercent } }) }),
26651
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: CLASS_SLIDER_VALUE, children: valueDisplay })
26652
+ ]
26653
+ }
26654
+ ) });
25744
26655
  };
25745
26656
  var StyledSliderButton = dt(SliderButton)`
25746
26657
  position: relative;
@@ -25838,15 +26749,12 @@ body {
25838
26749
  }
25839
26750
  }
25840
26751
  `;
25841
- var SliderButtonWrapper = (props) => /* @__PURE__ */ React7.createElement(StageContext.Consumer, null, ({ sendMessage }) => /* @__PURE__ */ React7.createElement(StyledSliderButton, { ...props, sendMessage }));
25842
-
25843
- // src/frontend/components/switch.tsx
25844
- var import_react5 = __toESM(require_react());
26752
+ var SliderButtonWrapper = (props) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(StageContext.Consumer, { children: ({ sendMessage }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(StyledSliderButton, { ...props, sendMessage }) });
25845
26753
  var CLASS_TOUCHING = "touching";
25846
26754
  var TOUCH_INDICATOR_CLASS2 = "touch-indicator";
25847
26755
  var Switch = ({ className, info, sendMessage }) => {
25848
- const [touching, setTouching] = (0, import_react5.useState)(false);
25849
- const onClick = (0, import_react5.useMemo)(
26756
+ const [touching, setTouching] = (0, import_react8.useState)(false);
26757
+ const onClick = (0, import_react8.useMemo)(
25850
26758
  () => () => {
25851
26759
  if (!sendMessage) return;
25852
26760
  console.log("sending message");
@@ -25858,14 +26766,14 @@ body {
25858
26766
  },
25859
26767
  [sendMessage, info.key]
25860
26768
  );
25861
- const onTouchStart = (0, import_react5.useMemo)(
26769
+ const onTouchStart = (0, import_react8.useMemo)(
25862
26770
  () => (event) => {
25863
26771
  event.preventDefault();
25864
26772
  setTouching(true);
25865
26773
  },
25866
26774
  []
25867
26775
  );
25868
- const onTouchEnd = (0, import_react5.useMemo)(
26776
+ const onTouchEnd = (0, import_react8.useMemo)(
25869
26777
  () => (event) => {
25870
26778
  event.preventDefault();
25871
26779
  setTouching(false);
@@ -25873,16 +26781,22 @@ body {
25873
26781
  },
25874
26782
  []
25875
26783
  );
25876
- return /* @__PURE__ */ import_react5.default.createElement(
26784
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
25877
26785
  "div",
25878
26786
  {
25879
26787
  className: calculateClass(className, touching && CLASS_TOUCHING),
25880
26788
  onClick,
25881
26789
  onTouchStart,
25882
- onTouchEnd
25883
- },
25884
- /* @__PURE__ */ import_react5.default.createElement("div", { className: TOUCH_INDICATOR_CLASS2 }),
25885
- /* @__PURE__ */ import_react5.default.createElement("div", { className: "inner" }, /* @__PURE__ */ import_react5.default.createElement("div", { className: "slider" + (info.state === "on" ? " on" : "") }, /* @__PURE__ */ import_react5.default.createElement("div", { className: "on-text" }, "ON"), /* @__PURE__ */ import_react5.default.createElement("div", { className: "off-text" }, "OFF"), /* @__PURE__ */ import_react5.default.createElement("div", { className: "button" })))
26790
+ onTouchEnd,
26791
+ children: [
26792
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: TOUCH_INDICATOR_CLASS2 }),
26793
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "inner", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "slider" + (info.state === "on" ? " on" : ""), children: [
26794
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "on-text", children: "ON" }),
26795
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "off-text", children: "OFF" }),
26796
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "button" })
26797
+ ] }) })
26798
+ ]
26799
+ }
25886
26800
  );
25887
26801
  };
25888
26802
  var SWITCH_HEIGHT = 30;
@@ -25972,10 +26886,7 @@ body {
25972
26886
  }
25973
26887
  }
25974
26888
  `;
25975
- var SwitchWrapper = (props) => /* @__PURE__ */ import_react5.default.createElement(StageContext.Consumer, null, ({ sendMessage }) => /* @__PURE__ */ import_react5.default.createElement(StyledSwitch, { ...props, sendMessage }));
25976
-
25977
- // src/frontend/components/tabs.tsx
25978
- var React9 = __toESM(require_react());
26889
+ var SwitchWrapper = (props) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(StageContext.Consumer, { children: ({ sendMessage }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(StyledSwitch, { ...props, sendMessage }) });
25979
26890
  var Wrapper2 = dt.div`
25980
26891
  display: flex;
25981
26892
  flex-direction: column;
@@ -26014,45 +26925,48 @@ body {
26014
26925
  }
26015
26926
  `;
26016
26927
  var Tabs = (props) => {
26017
- const { renderComponent: renderComponent2 } = React9.useContext(StageContext);
26018
- const [touching, setTouching] = React9.useState(null);
26019
- const [currentTab, setCurrentTab] = React9.useState(0);
26928
+ const { renderComponent } = import_react9.default.useContext(StageContext);
26929
+ const [touching, setTouching] = import_react9.default.useState(null);
26930
+ const [currentTab, setCurrentTab] = import_react9.default.useState(0);
26020
26931
  const tab = props.info.tabs[currentTab];
26021
- return /* @__PURE__ */ React9.createElement(Wrapper2, null, /* @__PURE__ */ React9.createElement(TabList, null, props.info.tabs.map((tab2, i2) => /* @__PURE__ */ React9.createElement(
26022
- TabItem,
26023
- {
26024
- key: i2,
26025
- className: calculateClass(
26026
- touching === i2 && "touching",
26027
- currentTab === i2 && "current"
26028
- ),
26029
- onClick: () => setCurrentTab(i2),
26030
- onTouchStart: (event) => {
26031
- event.preventDefault();
26032
- setTouching(i2);
26932
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(Wrapper2, { children: [
26933
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TabList, { children: props.info.tabs.map((tab2, i2) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
26934
+ TabItem,
26935
+ {
26936
+ className: calculateClass(
26937
+ touching === i2 && "touching",
26938
+ currentTab === i2 && "current"
26939
+ ),
26940
+ onClick: () => setCurrentTab(i2),
26941
+ onTouchStart: (event) => {
26942
+ event.preventDefault();
26943
+ setTouching(i2);
26944
+ },
26945
+ onTouchEnd: (event) => {
26946
+ event.preventDefault();
26947
+ setTouching(null);
26948
+ setCurrentTab(i2);
26949
+ },
26950
+ children: tab2.name
26033
26951
  },
26034
- onTouchEnd: (event) => {
26035
- event.preventDefault();
26036
- setTouching(null);
26037
- setCurrentTab(i2);
26038
- }
26039
- },
26040
- tab2.name
26041
- ))), /* @__PURE__ */ React9.createElement(StyledNestedContent, null, tab?.child && renderComponent2(tab.child)));
26952
+ i2
26953
+ )) }),
26954
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(StyledNestedContent, { children: tab?.child && renderComponent(tab.child) })
26955
+ ] });
26042
26956
  };
26043
-
26044
- // src/frontend/components/text-input.tsx
26045
- var React10 = __toESM(require_react());
26046
- var TextInput = ({
26047
- className,
26048
- info,
26049
- sendMessage
26050
- }) => {
26051
- return /* @__PURE__ */ React10.createElement(
26957
+ var TextInput = ({ className, info, sendMessage }) => {
26958
+ const ref = import_react10.default.useRef(null);
26959
+ (0, import_react10.useEffect)(() => {
26960
+ if (ref.current && ref.current.value !== info.value) {
26961
+ ref.current.value = info.value;
26962
+ }
26963
+ }, [info.value]);
26964
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
26052
26965
  "input",
26053
26966
  {
26054
26967
  className,
26055
- value: info.value,
26968
+ defaultValue: info.value,
26969
+ ref,
26056
26970
  onChange: (ev) => sendMessage?.({
26057
26971
  type: "component-message",
26058
26972
  componentKey: info.key,
@@ -26078,10 +26992,7 @@ body {
26078
26992
  flex-basis: 100%;
26079
26993
  }
26080
26994
  `;
26081
- var TextInputWrapper = (props) => /* @__PURE__ */ React10.createElement(StageContext.Consumer, null, ({ sendMessage }) => /* @__PURE__ */ React10.createElement(StyledTextInput, { ...props, sendMessage }));
26082
-
26083
- // src/frontend/components/timeline.tsx
26084
- var import_react6 = __toESM(require_react());
26995
+ var TextInputWrapper = (props) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(StageContext.Consumer, { children: ({ sendMessage }) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(StyledTextInput, { ...props, sendMessage }) });
26085
26996
  var Wrapper3 = dt.div`
26086
26997
  flex-grow: 1;
26087
26998
  `;
@@ -26122,12 +27033,12 @@ body {
26122
27033
  `;
26123
27034
  var Timeline = (props) => {
26124
27035
  const { className, info } = props;
26125
- const frameState = import_react6.default.useRef({
27036
+ const frameState = import_react11.default.useRef({
26126
27037
  animationFrame: -1,
26127
27038
  state: null
26128
27039
  });
26129
- const [currentTimeMillis, setCurrentTimeMillis] = (0, import_react6.useState)(0);
26130
- (0, import_react6.useEffect)(() => {
27040
+ const [currentTimeMillis, setCurrentTimeMillis] = (0, import_react11.useState)(0);
27041
+ (0, import_react11.useEffect)(() => {
26131
27042
  frameState.current.state = info.state;
26132
27043
  const recalculateCurrentTimeMillis = () => {
26133
27044
  if (frameState.current.state !== info.state) {
@@ -26149,43 +27060,52 @@ body {
26149
27060
  window.cancelAnimationFrame(frameState.current.animationFrame);
26150
27061
  };
26151
27062
  }, [frameState, info.state]);
26152
- return /* @__PURE__ */ import_react6.default.createElement(Wrapper3, { className }, /* @__PURE__ */ import_react6.default.createElement(Data, null, /* @__PURE__ */ import_react6.default.createElement(Metadata, null, info.title && /* @__PURE__ */ import_react6.default.createElement(Title, null, info.title), info.subtitles?.map((subtitle, k2) => /* @__PURE__ */ import_react6.default.createElement(Subtitle, { key: k2 }, subtitle))), /* @__PURE__ */ import_react6.default.createElement(SourceData, null, info.source?.name, /* @__PURE__ */ import_react6.default.createElement(
26153
- IndicatorIcon,
26154
- {
26155
- icon: info.state.state === "playing" ? "play_arrow" : "pause"
26156
- }
26157
- ))), /* @__PURE__ */ import_react6.default.createElement(Bar, null, /* @__PURE__ */ import_react6.default.createElement(
26158
- Fill,
26159
- {
26160
- style: {
26161
- width: `${Math.min(100, 100 * currentTimeMillis / info.state.totalTimeMillis)}%`
27063
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Wrapper3, { className, children: [
27064
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Data, { children: [
27065
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(Metadata, { children: [
27066
+ info.title && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Title, { children: info.title }),
27067
+ info.subtitles?.map((subtitle, k2) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Subtitle, { children: subtitle }, k2))
27068
+ ] }),
27069
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(SourceData, { children: [
27070
+ info.source?.name,
27071
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
27072
+ IndicatorIcon,
27073
+ {
27074
+ icon: info.state.state === "playing" ? "play_arrow" : "pause"
27075
+ }
27076
+ )
27077
+ ] })
27078
+ ] }),
27079
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Bar, { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
27080
+ Fill,
27081
+ {
27082
+ style: {
27083
+ width: `${Math.min(100, 100 * currentTimeMillis / info.state.totalTimeMillis)}%`
27084
+ }
26162
27085
  }
26163
- }
26164
- )));
27086
+ ) })
27087
+ ] });
26165
27088
  };
26166
-
26167
- // src/frontend/stage.tsx
26168
- var renderComponent = (info) => {
27089
+ var renderStandardComponent = (info) => {
26169
27090
  switch (info.component) {
26170
27091
  case "button":
26171
- return /* @__PURE__ */ React12.createElement(StyledButton, { key: info.key, info });
27092
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(StyledButton, { info }, info.key);
26172
27093
  case "group":
26173
- return /* @__PURE__ */ React12.createElement(StyledGroup, { key: info.key, info });
27094
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(StyledGroup, { info }, info.key);
26174
27095
  case "label":
26175
- return /* @__PURE__ */ React12.createElement(StyledLabel, { key: info.key, info });
27096
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(StyledLabel, { info }, info.key);
26176
27097
  case "rect":
26177
- return /* @__PURE__ */ React12.createElement(Rect, { key: info.key, info });
27098
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Rect, { info }, info.key);
26178
27099
  case "slider_button":
26179
- return /* @__PURE__ */ React12.createElement(SliderButtonWrapper, { key: info.key, info });
27100
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SliderButtonWrapper, { info }, info.key);
26180
27101
  case "switch":
26181
- return /* @__PURE__ */ React12.createElement(SwitchWrapper, { key: info.key, info });
27102
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SwitchWrapper, { info }, info.key);
26182
27103
  case "tabs":
26183
- return /* @__PURE__ */ React12.createElement(Tabs, { key: info.key, info });
27104
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Tabs, { info }, info.key);
26184
27105
  case "text-input":
26185
- return /* @__PURE__ */ React12.createElement(TextInputWrapper, { key: info.key, info });
27106
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(TextInputWrapper, { info }, info.key);
26186
27107
  case "timeline":
26187
- return /* @__PURE__ */ React12.createElement(Timeline, { key: info.key, info });
26188
- // Parent-Specific Components
27108
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Timeline, { info }, info.key);
26189
27109
  case "group-header":
26190
27110
  case "tab":
26191
27111
  throw new Error(
@@ -26193,12 +27113,28 @@ body {
26193
27113
  );
26194
27114
  }
26195
27115
  };
27116
+
27117
+ // src/shared/static.ts
27118
+ var FONTS = {
27119
+ materialSymbolsOutlined: "material-symbols-outlined.woff2"
27120
+ };
27121
+
27122
+ // src/frontend/styling.ts
27123
+ var MaterialFontStyle = ft`
27124
+ @font-face {
27125
+ font-family: 'Material Symbols Outlined';
27126
+ font-style: normal;
27127
+ src: url(${FONTS.materialSymbolsOutlined}) format('woff');
27128
+ }
27129
+ `;
27130
+
27131
+ // src/frontend/stage.tsx
26196
27132
  var Stage = ({ className }) => {
26197
- const [root2, setRoot] = React12.useState(
27133
+ const [root2, setRoot] = React5.useState(
26198
27134
  void 0
26199
27135
  );
26200
- const socket = React12.useRef(null);
26201
- React12.useEffect(() => {
27136
+ const socket = React5.useRef(null);
27137
+ React5.useEffect(() => {
26202
27138
  initializeWebsocket();
26203
27139
  }, []);
26204
27140
  const initializeWebsocket = async () => {
@@ -26239,15 +27175,15 @@ body {
26239
27175
  return;
26240
27176
  }
26241
27177
  };
26242
- return /* @__PURE__ */ React12.createElement(
27178
+ return /* @__PURE__ */ React5.createElement(
26243
27179
  StageContext.Provider,
26244
27180
  {
26245
27181
  value: {
26246
27182
  sendMessage,
26247
- renderComponent
27183
+ renderComponent: renderStandardComponent
26248
27184
  }
26249
27185
  },
26250
- /* @__PURE__ */ React12.createElement(GroupStateWrapper, { openByDefault: false }, /* @__PURE__ */ React12.createElement("div", { className }, root2 ? /* @__PURE__ */ React12.createElement(StyledGroup, { info: root2 }) : /* @__PURE__ */ React12.createElement("div", { className: "no-root" }, "No root has been added to the light desk")))
27186
+ /* @__PURE__ */ React5.createElement(GroupStateWrapper, { openByDefault: false }, /* @__PURE__ */ React5.createElement("div", { className }, root2 ? /* @__PURE__ */ React5.createElement(StyledGroup, { info: root2 }) : /* @__PURE__ */ React5.createElement("div", { className: "no-root" }, "No root has been added to the light desk")))
26251
27187
  );
26252
27188
  };
26253
27189
  var StyledStage = dt(Stage)`
@@ -26258,7 +27194,7 @@ body {
26258
27194
  padding: ${THEME.sizingPx.spacing}px;
26259
27195
  `;
26260
27196
  function rootComponent() {
26261
- return /* @__PURE__ */ React12.createElement(React12.Fragment, null, /* @__PURE__ */ React12.createElement(BaseStyle, null), /* @__PURE__ */ React12.createElement(GlobalStyle, null), /* @__PURE__ */ React12.createElement(ot, { theme: THEME }, /* @__PURE__ */ React12.createElement(StyledStage, null)));
27197
+ return /* @__PURE__ */ React5.createElement(React5.Fragment, null, /* @__PURE__ */ React5.createElement(BaseStyle, null), /* @__PURE__ */ React5.createElement(GlobalStyle, null), /* @__PURE__ */ React5.createElement(MaterialFontStyle, null), /* @__PURE__ */ React5.createElement(ot, { theme: THEME }, /* @__PURE__ */ React5.createElement(StyledStage, null)));
26262
27198
  }
26263
27199
 
26264
27200
  // src/frontend/frontend.ts
@@ -26317,5 +27253,16 @@ react-dom/cjs/react-dom.development.js:
26317
27253
  * @internal
26318
27254
  * @license Modernizr 3.0.0pre (Custom Build) | MIT
26319
27255
  *)
27256
+
27257
+ react/cjs/react-jsx-runtime.development.js:
27258
+ (**
27259
+ * @license React
27260
+ * react-jsx-runtime.development.js
27261
+ *
27262
+ * Copyright (c) Facebook, Inc. and its affiliates.
27263
+ *
27264
+ * This source code is licensed under the MIT license found in the
27265
+ * LICENSE file in the root directory of this source tree.
27266
+ *)
26320
27267
  */
26321
27268
  //# sourceMappingURL=frontend.js.map