@almadar/shell-web 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/AvlGlyph-N2MSWT7H.js +5 -0
  2. package/dist/{AvlStateMachine-KVZMFHFU.js → AvlStateMachine-HDWKFV7C.js} +3 -3
  3. package/dist/AvlTransitionDetail-CRMZLMFV.js +10 -0
  4. package/dist/AvlTransitionExplainer-NJLDP7X5.js +11 -0
  5. package/dist/BehaviorView-EFKTS3KZ.js +10 -0
  6. package/dist/{FileTree-B3GDAjaQ.d.ts → FileTree-CSdbAdcJ.d.ts} +8 -0
  7. package/dist/FlowCanvas-S3ODHQXS.js +23 -0
  8. package/dist/{GameAudioProvider-BgWOOYT3.d.ts → GameAudioProvider-B8FBcGVE.d.ts} +1 -1
  9. package/dist/{KernelEngineContext-BPx-q0iw.d.ts → KernelEngineContext-6l6vkc50.d.ts} +1 -1
  10. package/dist/{LayersPanel-PSXI4EHG.js → LayersPanel-YHXNS36U.js} +4 -4
  11. package/dist/ModuleCard-6UW7YBAH.js +6 -0
  12. package/dist/OrbInspector-RQU5P2T6.js +23 -0
  13. package/dist/OrbPreview-V4VLWNMT.css +1754 -0
  14. package/dist/OrbPreview-WKC3ORIK.js +23 -0
  15. package/dist/{Select-BJ8Fgc8A.d.ts → Select-DuX0Gvwo.d.ts} +14 -8
  16. package/dist/UISlotRenderer-7IGRYWII.js +23 -0
  17. package/dist/auth/react/index.js +4 -0
  18. package/dist/avl/index.d.ts +2 -2
  19. package/dist/avl/index.js +25 -25
  20. package/dist/{chunk-LKL5RULQ.js → chunk-3OF2X6GG.js} +2 -2
  21. package/dist/{chunk-V5SVGUYN.js → chunk-3WSTUUJ7.js} +1 -1
  22. package/dist/{chunk-B23EZH2P.js → chunk-4IFO6QJL.js} +3 -3
  23. package/dist/{chunk-RDPELAFQ.js → chunk-4UAAP6ZN.js} +2 -2
  24. package/dist/{chunk-LINJRTNB.js → chunk-6MZ224GN.js} +2 -2
  25. package/dist/{chunk-3YUMGEEW.js → chunk-AYQKZFUH.js} +1 -1
  26. package/dist/{chunk-3DA36FOA.js → chunk-BY2UJWVR.js} +1 -1
  27. package/dist/{chunk-S3LS3B7N.js → chunk-CB4POLGP.js} +1 -1
  28. package/dist/{chunk-2LNXLMK3.js → chunk-FZOX7XTU.js} +41 -41
  29. package/dist/{chunk-ZDRDJKYB.js → chunk-MXN32OVV.js} +212 -20
  30. package/dist/{chunk-TAEOMNDK.js → chunk-NIOQT2IE.js} +44914 -44206
  31. package/dist/{chunk-CCO2ZH7F.js → chunk-NVSUTIJ2.js} +2 -2
  32. package/dist/{chunk-DPDKBY6Z.js → chunk-OEWVBYW5.js} +1 -0
  33. package/dist/{chunk-UFQLHCFJ.js → chunk-OHWEWQL3.js} +1 -1
  34. package/dist/{chunk-D5FJU4XC.js → chunk-OOG33EGF.js} +46 -14
  35. package/dist/{chunk-AU7O65OX.js → chunk-OXHXISFA.js} +1 -1
  36. package/dist/{chunk-PWXZN5G5.js → chunk-PD5QUVRE.js} +2 -2
  37. package/dist/{chunk-6RXP5ZXE.js → chunk-PHIQOASV.js} +5 -5
  38. package/dist/{chunk-GHAF7QUD.js → chunk-QZ6TDP6I.js} +1 -1
  39. package/dist/{chunk-JEN4EIUF.js → chunk-RCB4CKRK.js} +1 -1
  40. package/dist/{chunk-AL2XXMYR.js → chunk-RQH6O76X.js} +20 -6
  41. package/dist/{chunk-7UCL26QB.js → chunk-TJEB4PII.js} +3 -3
  42. package/dist/{chunk-KTYOYEVA.js → chunk-YU2ZNLGI.js} +1 -1
  43. package/dist/components/index.d.ts +295 -22
  44. package/dist/components/index.js +27 -22
  45. package/dist/context/index.js +3 -3
  46. package/dist/core.d.ts +23 -6
  47. package/dist/core.js +1 -1
  48. package/dist/{fx-Bx5RqplG.d.ts → fx-Bc3yEVED.d.ts} +2 -2
  49. package/dist/hooks/index.js +4 -4
  50. package/dist/index.d.ts +18 -5
  51. package/dist/index.js +4 -4
  52. package/dist/{kernel-client-NMZ56JVU.js → kernel-client-NM6S72DO.js} +74 -33
  53. package/dist/{kernel-wire-CRsHtLsf.d.ts → kernel-wire-Ds7xSZzx.d.ts} +6 -0
  54. package/dist/lib/index.d.ts +2 -2
  55. package/dist/lib/index.js +3 -3
  56. package/dist/providers/index.d.ts +5 -5
  57. package/dist/providers/index.js +15 -15
  58. package/dist/runtime/index.d.ts +6 -2
  59. package/dist/runtime/index.js +14 -14
  60. package/dist/ssr/index.cjs +27 -4
  61. package/dist/ssr/index.d.cts +6 -0
  62. package/dist/ssr/index.d.ts +6 -0
  63. package/dist/ssr/index.js +27 -4
  64. package/dist/test-support.js +2 -2
  65. package/dist/{verificationRegistry-BLuQU1JV.d.ts → verificationRegistry-Dz5N0oxx.d.ts} +199 -8
  66. package/package.json +9 -9
  67. package/src/core/locales/ar.json +8 -1
  68. package/src/core/locales/en.json +8 -1
  69. package/src/core/locales/sl.json +8 -1
  70. package/dist/AvlGlyph-KZMJDBEB.js +0 -5
  71. package/dist/AvlTransitionDetail-7DVGV27I.js +0 -10
  72. package/dist/AvlTransitionExplainer-RMJ5LQLK.js +0 -11
  73. package/dist/BehaviorView-EYRPME67.js +0 -10
  74. package/dist/FlowCanvas-J54627TC.js +0 -23
  75. package/dist/ModuleCard-TNRLL45H.js +0 -6
  76. package/dist/OrbInspector-UBEQWWZ2.js +0 -23
  77. package/dist/UISlotRenderer-5OURMAP2.js +0 -23
@@ -0,0 +1,23 @@
1
+ export { OrbPreview, resolvePreviewTheme } from './chunk-NIOQT2IE.js';
2
+ import './chunk-RQH6O76X.js';
3
+ import './chunk-4UAAP6ZN.js';
4
+ import './chunk-NVSUTIJ2.js';
5
+ import './chunk-OEWVBYW5.js';
6
+ import './chunk-BY2UJWVR.js';
7
+ import './chunk-AYQKZFUH.js';
8
+ import './chunk-HA2BYO5E.js';
9
+ import './chunk-PCR37T3U.js';
10
+ import './chunk-3WSTUUJ7.js';
11
+ import './chunk-3UQNFRYV.js';
12
+ import './chunk-3OF2X6GG.js';
13
+ import './chunk-TZZBINQY.js';
14
+ import './chunk-MXN32OVV.js';
15
+ import './chunk-CB4POLGP.js';
16
+ import './chunk-QZ6TDP6I.js';
17
+ import './chunk-FZOX7XTU.js';
18
+ import './chunk-3BBUBJFF.js';
19
+ import './chunk-ANTJUQRD.js';
20
+ import './chunk-OOG33EGF.js';
21
+ import './chunk-ECC3WQIB.js';
22
+ import './chunk-AZ74UPG6.js';
23
+ import './chunk-G7DCAZ22.js';
@@ -1,6 +1,6 @@
1
1
  import React__default from 'react';
2
- import { A11yProps, Asset, EventKey, EventPayload, EventEmit } from '@almadar/core';
3
- import { I as IconInput } from './fx-Bx5RqplG.js';
2
+ import { A11yProps, Asset, EventKey, EventPayload, VisibleText, EventEmit } from '@almadar/core';
3
+ import { I as IconInput } from './fx-Bc3yEVED.js';
4
4
 
5
5
  type ButtonVariant = "primary" | "secondary" | "ghost" | "danger" | "success" | "warning" | "default" | "link";
6
6
  type ButtonSize = "sm" | "md" | "lg";
@@ -37,7 +37,7 @@ interface ButtonProps extends Omit<React__default.ButtonHTMLAttributes<HTMLButto
37
37
  * Button label text (alternative to children for schema-driven rendering)
38
38
  * @example Button
39
39
  */
40
- label?: string;
40
+ label?: VisibleText;
41
41
  /** Disable the button (greys out, blocks click events) */
42
42
  disabled?: boolean;
43
43
  /** Native button type. `type` is reserved for the pattern discriminator in schema render specs. */
@@ -70,7 +70,10 @@ interface InputProps extends Omit<React__default.InputHTMLAttributes<HTMLInputEl
70
70
  className?: string;
71
71
  /** Placeholder text */
72
72
  placeholder?: string;
73
- /** Current value */
73
+ /** Current value
74
+ * @changedBy onChange
75
+ * @changedBy action
76
+ */
74
77
  value?: string | number;
75
78
  /** Whether input is disabled */
76
79
  disabled?: boolean;
@@ -105,9 +108,8 @@ interface InputProps extends Omit<React__default.InputHTMLAttributes<HTMLInputEl
105
108
  rows?: number;
106
109
  /** onChange handler or declarative event key for trait dispatch */
107
110
  onChange?: React__default.ChangeEventHandler<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement> | EventEmit<{
108
- value: string;
109
- } | {
110
- checked: boolean;
111
+ value?: string;
112
+ checked?: boolean;
111
113
  }>;
112
114
  }
113
115
  declare const Input: React__default.ForwardRefExoticComponent<InputProps & React__default.RefAttributes<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>>;
@@ -153,7 +155,11 @@ interface SelectProps extends Omit<React__default.SelectHTMLAttributes<HTMLSelec
153
155
  groups?: SelectOptionGroup[];
154
156
  /** Placeholder text */
155
157
  placeholder?: string;
156
- /** Current value (string for single, string[] for multiple) */
158
+ /** Current value (string for single, string[] for multiple)
159
+ * @changedBy onChange
160
+ * @changedBy onValueChange
161
+ * @changedBy action
162
+ */
157
163
  value?: string | string[];
158
164
  /** Declarative event name for trait dispatch — emits `{ value }` on selection commit (same gestures as `onChange`). */
159
165
  action?: EventEmit<{
@@ -0,0 +1,23 @@
1
+ export { SlotContainedContext, SlotContentRenderer, SuspenseConfigProvider, UISlotComponent, UISlotRenderer, renderPatternProps, renderPatternValue } from './chunk-NIOQT2IE.js';
2
+ import './chunk-RQH6O76X.js';
3
+ import './chunk-4UAAP6ZN.js';
4
+ import './chunk-NVSUTIJ2.js';
5
+ import './chunk-OEWVBYW5.js';
6
+ import './chunk-BY2UJWVR.js';
7
+ import './chunk-AYQKZFUH.js';
8
+ import './chunk-HA2BYO5E.js';
9
+ import './chunk-PCR37T3U.js';
10
+ import './chunk-3WSTUUJ7.js';
11
+ import './chunk-3UQNFRYV.js';
12
+ import './chunk-3OF2X6GG.js';
13
+ import './chunk-TZZBINQY.js';
14
+ import './chunk-MXN32OVV.js';
15
+ import './chunk-CB4POLGP.js';
16
+ import './chunk-QZ6TDP6I.js';
17
+ import './chunk-FZOX7XTU.js';
18
+ import './chunk-3BBUBJFF.js';
19
+ import './chunk-ANTJUQRD.js';
20
+ import './chunk-OOG33EGF.js';
21
+ import './chunk-ECC3WQIB.js';
22
+ import './chunk-AZ74UPG6.js';
23
+ import './chunk-G7DCAZ22.js';
@@ -140,6 +140,10 @@ async function userAnswer(auth, user) {
140
140
  function hostSignIn(auth) {
141
141
  return async (request) => {
142
142
  try {
143
+ if (request.method === "google" && request.viewer === false) {
144
+ const { user, idToken } = await auth.googleCredential();
145
+ return { uid: user.uid, ...user.email !== void 0 ? { email: user.email } : {}, ...user.name !== void 0 ? { displayName: user.name } : {}, idToken };
146
+ }
143
147
  if (request.method === "google") return userAnswer(auth, await auth.signInWithGoogle());
144
148
  if (request.method === "email") return userAnswer(auth, await auth.signInWithEmail(request.email, request.password));
145
149
  if (request.method === "customToken") return userAnswer(auth, await auth.signInWithCustomToken(request.token));
@@ -3,9 +3,9 @@ import * as React$1 from 'react';
3
3
  import React__default from 'react';
4
4
  import { FieldType, FieldTag, EntityPersistence, SExpr, EvalTrace, A11yProps, EventEmit, Expression, OrbitalSchema, EntityData, EditFocus, EventPayload, AriaRole, DomainQuestion, DomainQuestionAnswer, ThemeDefinition, DependencyGraph, DependencyLayer, EventKey, CircuitStepResult, GuardEvaluation, EffectTrace, EventPayloadValue } from '@almadar/core';
5
5
  export { DependencyLayer } from '@almadar/core';
6
- import { T as TraitLevelData, A as AvlAnnotations, a as AvlNodeData, b as TraitTransitionInfo, c as TransitionLevelData, S as SerializedEffect, d as AvlNote } from '../FileTree-B3GDAjaQ.js';
6
+ import { T as TraitLevelData, A as AvlAnnotations, a as AvlNodeData, b as TraitTransitionInfo, c as TransitionLevelData, S as SerializedEffect, d as AvlNote } from '../FileTree-CSdbAdcJ.js';
7
7
  import { FileTreeItem } from '../components/index.js';
8
- export { e as ApplicationLevelData, f as AvlEdgeData, g as AvlStateMachine, h as AvlStateMachineProps, B as BehaviorView, C as CrossLink, M as ModuleCard, O as OrbitalLevelData, p as parseApplicationLevel, i as parseOrbitalLevel, j as parseTraitLevel, k as parseTransitionLevel, s as schemaToFlowGraph, t as traitLevelFromTrait } from '../FileTree-B3GDAjaQ.js';
8
+ export { e as ApplicationLevelData, f as AvlEdgeData, g as AvlStateMachine, h as AvlStateMachineProps, B as BehaviorView, C as CrossLink, M as ModuleCard, O as OrbitalLevelData, p as parseApplicationLevel, i as parseOrbitalLevel, j as parseTraitLevel, k as parseTransitionLevel, s as schemaToFlowGraph, t as traitLevelFromTrait } from '../FileTree-CSdbAdcJ.js';
9
9
  import { NodeProps, EdgeProps, Edge, Node, NodeTypes, ReactFlowProps } from '@xyflow/react';
10
10
  import { AnyPatternConfig } from '@almadar/core/patterns';
11
11
  import { useDraggable } from '@dnd-kit/core';
package/dist/avl/index.js CHANGED
@@ -1,38 +1,38 @@
1
1
  "use client";
2
- export { LayersPanel, parseLayerId, schemaToLayerItems } from '../chunk-UFQLHCFJ.js';
3
- export { AvlTransitionExplainer } from '../chunk-LINJRTNB.js';
4
- import { AvlTransitionDetail } from '../chunk-6RXP5ZXE.js';
5
- export { AvlCircuit, AvlTransitionDetail } from '../chunk-6RXP5ZXE.js';
6
- export { BehaviorView } from '../chunk-B23EZH2P.js';
7
- export { MiniStateMachine, ModuleCard } from '../chunk-7UCL26QB.js';
8
- import '../chunk-JEN4EIUF.js';
9
- import { FlowCanvas, layeredGraph } from '../chunk-TAEOMNDK.js';
10
- export { AVL_GRAPH_NODE_TYPES, AvlGraphCanvas, CANVAS_TOOLS, CanvasDndProvider, CanvasVerifyContext, DependencyColumnNode, DependencyNode, EDITABLE, ElementEditAccessContext, EventFlowEdge, FlowCanvas, KnobField, KnobSettingRow, LIVE_STATE, OrbInspector, OrbPreviewNode, SystemBandNode, SystemMapContext, SystemNode, canvasViewGraph, dependencyReach, deriveEditFocusFromElement, dropBusEvent, flowNeighbors, hasCanvasTool, initialStateOf, layeredGraph, optionForPlayedStep, propAccessAt, schemaToDependencyGraph, schemaToOverviewGraph, stateOptionsOf, traitFlowGraph, useCanvasDraggable, useCanvasDroppable, useInlineTextEdit } from '../chunk-TAEOMNDK.js';
11
- import '../chunk-AL2XXMYR.js';
12
- export { AvlStateMachine } from '../chunk-RDPELAFQ.js';
13
- import { AvlOrbital, AvlTrait, AvlEvent, AvlGuard } from '../chunk-CCO2ZH7F.js';
14
- export { AVL_GLYPH_KINDS, AvlApplication, AvlBinding, AvlBindingRef, AvlEvent, AvlField, AvlGlyph, AvlGuard, AvlLiteral, AvlOperator, AvlOrbital, AvlPersistence, AvlSExpr, AvlTrait, AvlTransition } from '../chunk-CCO2ZH7F.js';
15
- import { AvlEntity, AvlPage, AvlState } from '../chunk-DPDKBY6Z.js';
16
- export { AvlEntity, AvlFieldType, AvlPage, AvlState, FIELD_TYPE_SHAPES } from '../chunk-DPDKBY6Z.js';
17
- import { transitionPlayback } from '../chunk-3DA36FOA.js';
18
- export { armPosition, armsOf, firedTransition, stateMachinePlayback, transitionPlayback } from '../chunk-3DA36FOA.js';
19
- import '../chunk-3YUMGEEW.js';
2
+ export { AvlTransitionExplainer } from '../chunk-6MZ224GN.js';
3
+ export { LayersPanel, parseLayerId, schemaToLayerItems } from '../chunk-OHWEWQL3.js';
4
+ import { AvlTransitionDetail } from '../chunk-PHIQOASV.js';
5
+ export { AvlCircuit, AvlTransitionDetail } from '../chunk-PHIQOASV.js';
6
+ export { BehaviorView } from '../chunk-4IFO6QJL.js';
7
+ export { MiniStateMachine, ModuleCard } from '../chunk-TJEB4PII.js';
8
+ import '../chunk-RCB4CKRK.js';
9
+ import { FlowCanvas, layeredGraph } from '../chunk-NIOQT2IE.js';
10
+ export { AVL_GRAPH_NODE_TYPES, AvlGraphCanvas, CANVAS_TOOLS, CanvasDndProvider, CanvasVerifyContext, DependencyColumnNode, DependencyNode, EDITABLE, ElementEditAccessContext, EventFlowEdge, FlowCanvas, KnobField, KnobSettingRow, LIVE_STATE, OrbInspector, OrbPreviewNode, SystemBandNode, SystemMapContext, SystemNode, canvasViewGraph, dependencyReach, deriveEditFocusFromElement, dropBusEvent, flowNeighbors, hasCanvasTool, initialStateOf, layeredGraph, optionForPlayedStep, propAccessAt, schemaToDependencyGraph, schemaToOverviewGraph, stateOptionsOf, traitFlowGraph, useCanvasDraggable, useCanvasDroppable, useInlineTextEdit } from '../chunk-NIOQT2IE.js';
11
+ import '../chunk-RQH6O76X.js';
12
+ export { AvlStateMachine } from '../chunk-4UAAP6ZN.js';
13
+ import { AvlOrbital, AvlTrait, AvlEvent, AvlGuard } from '../chunk-NVSUTIJ2.js';
14
+ export { AVL_GLYPH_KINDS, AvlApplication, AvlBinding, AvlBindingRef, AvlEvent, AvlField, AvlGlyph, AvlGuard, AvlLiteral, AvlOperator, AvlOrbital, AvlPersistence, AvlSExpr, AvlTrait, AvlTransition } from '../chunk-NVSUTIJ2.js';
15
+ import { AvlEntity, AvlPage, AvlState } from '../chunk-OEWVBYW5.js';
16
+ export { AvlEntity, AvlFieldType, AvlPage, AvlState, FIELD_TYPE_SHAPES } from '../chunk-OEWVBYW5.js';
17
+ import { transitionPlayback } from '../chunk-BY2UJWVR.js';
18
+ export { armPosition, armsOf, firedTransition, stateMachinePlayback, transitionPlayback } from '../chunk-BY2UJWVR.js';
19
+ import '../chunk-AYQKZFUH.js';
20
20
  import { computeTraitLayout, edgePath } from '../chunk-HA2BYO5E.js';
21
21
  export { computeTraitLayout, edgePath } from '../chunk-HA2BYO5E.js';
22
22
  import { parseApplicationLevel, parseOrbitalLevel, parseTraitLevel } from '../chunk-PCR37T3U.js';
23
23
  export { parseApplicationLevel, parseOrbitalLevel, parseTraitLevel, parseTransitionLevel, traitLevelFromTrait } from '../chunk-PCR37T3U.js';
24
- export { AvlEffectChip } from '../chunk-V5SVGUYN.js';
24
+ export { AvlEffectChip } from '../chunk-3WSTUUJ7.js';
25
25
  import { avlSeries, AvlEffect, CONNECTION_COLORS, getStateRole, avlTint, STATE_COLORS, effectCategoryOf, EFFECT_CATEGORY_COLORS } from '../chunk-3UQNFRYV.js';
26
26
  export { AvlEffect, CONNECTION_COLORS, EFFECT_CATEGORY_COLORS, OPERATOR_CATEGORY_COLORS, STATE_COLORS, effectCategoryOf, getStateRole } from '../chunk-3UQNFRYV.js';
27
- import '../chunk-LKL5RULQ.js';
27
+ import '../chunk-3OF2X6GG.js';
28
28
  import '../chunk-TZZBINQY.js';
29
- import '../chunk-ZDRDJKYB.js';
30
- import '../chunk-S3LS3B7N.js';
31
- import '../chunk-GHAF7QUD.js';
32
- import '../chunk-2LNXLMK3.js';
29
+ import '../chunk-MXN32OVV.js';
30
+ import '../chunk-CB4POLGP.js';
31
+ import '../chunk-QZ6TDP6I.js';
32
+ import '../chunk-FZOX7XTU.js';
33
33
  import '../chunk-3BBUBJFF.js';
34
34
  import '../chunk-ANTJUQRD.js';
35
- import { useTranslate, cn, Box, HStack, Typography, pressableProps, Button, RangeSlider } from '../chunk-D5FJU4XC.js';
35
+ import { useTranslate, cn, Box, HStack, Typography, pressableProps, Button, RangeSlider } from '../chunk-OOG33EGF.js';
36
36
  import '../chunk-ECC3WQIB.js';
37
37
  import '../chunk-AZ74UPG6.js';
38
38
  import '../chunk-G7DCAZ22.js';
@@ -1,5 +1,5 @@
1
- import { perfStore, pushPerfEntry } from './chunk-ZDRDJKYB.js';
2
- import { isMotionEnabled } from './chunk-D5FJU4XC.js';
1
+ import { perfStore, pushPerfEntry } from './chunk-MXN32OVV.js';
2
+ import { isMotionEnabled } from './chunk-OOG33EGF.js';
3
3
  import { useRef, useLayoutEffect, useSyncExternalStore } from 'react';
4
4
  import { ENTER_DELAY_STEPS, ENTER_ANIMATIONS, isFileValue } from '@almadar/core';
5
5
  export { getNestedValue } from '@almadar/core';
@@ -1,5 +1,5 @@
1
1
  import { effectCategoryOf, AvlEffect } from './chunk-3UQNFRYV.js';
2
- import { useThemeScope, Box, useTapReveal, Typography, cn, domPassthrough, usePresence, useDialogBehavior, SurfaceBoundary, VStack, useTranslate } from './chunk-D5FJU4XC.js';
2
+ import { useThemeScope, Box, useTapReveal, Typography, cn, domPassthrough, usePresence, useDialogBehavior, SurfaceBoundary, VStack, useTranslate } from './chunk-OOG33EGF.js';
3
3
  import { createPortal } from 'react-dom';
4
4
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
5
  import React, { useId, useState, useRef, useLayoutEffect, useEffect } from 'react';
@@ -1,6 +1,6 @@
1
- import { AvlStateMachine } from './chunk-RDPELAFQ.js';
2
- import { EmptyState } from './chunk-3YUMGEEW.js';
3
- import { useTranslate, Box, domPassthrough } from './chunk-D5FJU4XC.js';
1
+ import { AvlStateMachine } from './chunk-4UAAP6ZN.js';
2
+ import { EmptyState } from './chunk-AYQKZFUH.js';
3
+ import { useTranslate, Box, domPassthrough } from './chunk-OOG33EGF.js';
4
4
  import { jsx } from 'react/jsx-runtime';
5
5
 
6
6
  var BehaviorView = ({ data, ...rest }) => {
@@ -1,8 +1,8 @@
1
1
  import { useContainerWidth, computeTraitLayout, roundedEdgePath } from './chunk-HA2BYO5E.js';
2
- import { AvlExplain, AvlEffectChip } from './chunk-V5SVGUYN.js';
2
+ import { AvlExplain, AvlEffectChip } from './chunk-3WSTUUJ7.js';
3
3
  import { AVL_INK, AVL_FONT, AVL_STROKE, avlTint } from './chunk-3UQNFRYV.js';
4
4
  import { gearTeethPath } from './chunk-TZZBINQY.js';
5
- import { domPassthrough, useTranslate, useEventBus, useMediaQuery, Box, Typography, Button } from './chunk-D5FJU4XC.js';
5
+ import { domPassthrough, useTranslate, useEventBus, useMediaQuery, Box, Typography, Button } from './chunk-OOG33EGF.js';
6
6
  import { useState, useRef, useMemo, useEffect } from 'react';
7
7
  import { formatSExpr } from '@almadar/core';
8
8
  import { createLogger } from '@almadar/logger';
@@ -1,5 +1,5 @@
1
- import { AvlTransitionDetail } from './chunk-6RXP5ZXE.js';
2
- import { Box, domPassthrough } from './chunk-D5FJU4XC.js';
1
+ import { AvlTransitionDetail } from './chunk-PHIQOASV.js';
2
+ import { Box, domPassthrough } from './chunk-OOG33EGF.js';
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
 
5
5
  var AvlTransitionExplainer = ({ orbitalName, traitName, transition, annotations, className, ...rest }) => {
@@ -1,4 +1,4 @@
1
- import { useEventBus, useTranslate, Box, VStack, Icon, cn, Typography, Button, domPassthrough } from './chunk-D5FJU4XC.js';
1
+ import { useEventBus, useTranslate, Box, VStack, Icon, cn, Typography, Button, domPassthrough } from './chunk-OOG33EGF.js';
2
2
  import { EMPTY_STATE_MARKER } from '@almadar/core';
3
3
  import { jsx, jsxs } from 'react/jsx-runtime';
4
4
 
@@ -1,5 +1,5 @@
1
1
  import { traitLevelFromDescription } from './chunk-PCR37T3U.js';
2
- import { useContentSurface, useEventBus, Typography, Icon, cn, domPassthrough } from './chunk-D5FJU4XC.js';
2
+ import { useContentSurface, useEventBus, Typography, Icon, cn, domPassthrough } from './chunk-OOG33EGF.js';
3
3
  import { useState } from 'react';
4
4
  import { jsx, jsxs } from 'react/jsx-runtime';
5
5
 
@@ -1,4 +1,4 @@
1
- import { useEventBus, useTranslate } from './chunk-D5FJU4XC.js';
1
+ import { useEventBus, useTranslate } from './chunk-OOG33EGF.js';
2
2
  import { createContext, useMemo, useContext, useRef, useEffect, useCallback, useState } from 'react';
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
  import { resolvePageMeta } from '@almadar/core';
@@ -1,6 +1,6 @@
1
1
  import { resolveThemeForRuntime, themeTokensToCssVars } from './chunk-3BBUBJFF.js';
2
2
  import { useUISlotManager } from './chunk-ANTJUQRD.js';
3
- import { useThemeScope, useTheme, keyInViewerMode, ThemeScopeContext, Box, cn } from './chunk-D5FJU4XC.js';
3
+ import { useThemeScope, useTheme, keyInViewerMode, ThemeScopeContext, Box, cn } from './chunk-OOG33EGF.js';
4
4
  import { createContext, useMemo, useContext, useCallback, useEffect } from 'react';
5
5
  import { jsx, Fragment } from 'react/jsx-runtime';
6
6
  import { ANONYMOUS_USER, isThemeRegistryKey, toPayloadValue } from '@almadar/core';
@@ -127,6 +127,46 @@ function useUserForEvaluation() {
127
127
  const { user, isLoggedIn } = useUser();
128
128
  return isLoggedIn && user ? user : void 0;
129
129
  }
130
+ var SURFACE = "h-full min-h-full bg-background surface-page text-foreground";
131
+ function useFontImport(href) {
132
+ useEffect(() => {
133
+ if (!href || typeof document === "undefined") return;
134
+ const existing = Array.from(document.head.querySelectorAll("link[data-almadar-font]")).some((el) => el.getAttribute("href") === href);
135
+ if (existing) return;
136
+ const link = document.createElement("link");
137
+ link.rel = "stylesheet";
138
+ link.href = href;
139
+ link.setAttribute("data-almadar-font", "");
140
+ document.head.appendChild(link);
141
+ }, [href]);
142
+ }
143
+ function OrbitalThemeProvider({ theme: declared, override, children }) {
144
+ const parent = useThemeScope();
145
+ const hostOverride = override || parent.override || void 0;
146
+ const theme = hostOverride ?? declared;
147
+ const resolved = resolveThemeForRuntime(theme);
148
+ const { resolvedMode, availableThemes } = useTheme();
149
+ const darkTypeScale = resolvedMode === "dark" ? resolved?.variants?.dark?.typeScale : void 0;
150
+ useFontImport(darkTypeScale?.fontImport ?? resolved?.tokens.typeScale?.fontImport);
151
+ if (isThemeRegistryKey(theme)) {
152
+ const inherited = !override && parent.override ? { key: parent.override, mode: parent.mode } : void 0;
153
+ const { key, mode: keyMode } = inherited ?? keyInViewerMode(theme, availableThemes, resolvedMode);
154
+ const mode = keyMode ?? parent.mode;
155
+ return /* @__PURE__ */ jsx(
156
+ ThemeScopeContext.Provider,
157
+ {
158
+ value: hostOverride ? { ...parent, theme: key, mode, vars: void 0, override: key } : { ...parent, theme: key, mode },
159
+ children: /* @__PURE__ */ jsx(Box, { "data-theme": key, className: cn(SURFACE, keyMode), children })
160
+ }
161
+ );
162
+ }
163
+ if (!resolved) {
164
+ return /* @__PURE__ */ jsx(Fragment, { children });
165
+ }
166
+ const vars = themeTokensToCssVars(resolved.tokens, resolvedMode, resolved.variants?.dark);
167
+ return /* @__PURE__ */ jsx(ThemeScopeContext.Provider, { value: { ...parent, vars: { ...parent.vars, ...vars } }, children: /* @__PURE__ */ jsx(Box, { "data-orbital-theme": resolved.name, className: SURFACE, style: vars, children }) });
168
+ }
169
+ OrbitalThemeProvider.displayName = "OrbitalThemeProvider";
130
170
  var DESIGN_COLOR_TOKENS = [
131
171
  "primary",
132
172
  "primary-foreground",
@@ -517,45 +557,5 @@ function useArbitraryClassStyles(schema) {
517
557
  });
518
558
  }, [compile, classes]);
519
559
  }
520
- var SURFACE = "h-full min-h-full bg-background surface-page text-foreground";
521
- function useFontImport(href) {
522
- useEffect(() => {
523
- if (!href || typeof document === "undefined") return;
524
- const existing = Array.from(document.head.querySelectorAll("link[data-almadar-font]")).some((el) => el.getAttribute("href") === href);
525
- if (existing) return;
526
- const link = document.createElement("link");
527
- link.rel = "stylesheet";
528
- link.href = href;
529
- link.setAttribute("data-almadar-font", "");
530
- document.head.appendChild(link);
531
- }, [href]);
532
- }
533
- function OrbitalThemeProvider({ theme: declared, override, children }) {
534
- const parent = useThemeScope();
535
- const hostOverride = override || parent.override || void 0;
536
- const theme = hostOverride ?? declared;
537
- const resolved = resolveThemeForRuntime(theme);
538
- const { resolvedMode, availableThemes } = useTheme();
539
- const darkTypeScale = resolvedMode === "dark" ? resolved?.variants?.dark?.typeScale : void 0;
540
- useFontImport(darkTypeScale?.fontImport ?? resolved?.tokens.typeScale?.fontImport);
541
- if (isThemeRegistryKey(theme)) {
542
- const inherited = !override && parent.override ? { key: parent.override, mode: parent.mode } : void 0;
543
- const { key, mode: keyMode } = inherited ?? keyInViewerMode(theme, availableThemes, resolvedMode);
544
- const mode = keyMode ?? parent.mode;
545
- return /* @__PURE__ */ jsx(
546
- ThemeScopeContext.Provider,
547
- {
548
- value: hostOverride ? { ...parent, theme: key, mode, vars: void 0, override: key } : { ...parent, theme: key, mode },
549
- children: /* @__PURE__ */ jsx(Box, { "data-theme": key, className: cn(SURFACE, keyMode), children })
550
- }
551
- );
552
- }
553
- if (!resolved) {
554
- return /* @__PURE__ */ jsx(Fragment, { children });
555
- }
556
- const vars = themeTokensToCssVars(resolved.tokens, resolvedMode, resolved.variants?.dark);
557
- return /* @__PURE__ */ jsx(ThemeScopeContext.Provider, { value: { ...parent, vars: { ...parent.vars, ...vars } }, children: /* @__PURE__ */ jsx(Box, { "data-orbital-theme": resolved.name, className: SURFACE, style: vars, children }) });
558
- }
559
- OrbitalThemeProvider.displayName = "OrbitalThemeProvider";
560
560
 
561
561
  export { ARBITRARY_CLASS_STYLE_ID, ArbitraryClassCompilerProvider, CurrentPagePathContext, CurrentPagePathProvider, DESIGN_COLOR_TOKENS, DESIGN_RADIUS_TOKENS, DESIGN_SPACING_SCALE, OrbitalThemeProvider, UISlotContext, UISlotProvider, UserContext, UserProvider, defaultSpacingStepPx, isArbitraryClass, layoutOf, positionOf, resetArbitraryClassStyles, sizeLimitOf, sizingOf, snapToSpacingStep, spacingOf, spacingTokenOf, tokenOfDesignClass, useArbitraryClassStyles, useCurrentPagePath, useHasPermission, useHasRole, useSlotContent, useSlotHasContent, useUISlots, useUser, useUserForEvaluation, withLayout, withPosition, withSizeLimit, withSizing, withSpacing };