@almadar/shell-web 0.0.0-stage → 1.0.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 (266) hide show
  1. package/bundling.d.mts +18 -0
  2. package/bundling.mjs +28 -0
  3. package/dist/ArbitraryClassCompiler-CO_iASBn.d.ts +195 -0
  4. package/dist/AvlGlyph-EPJKFEO3.js +6 -0
  5. package/dist/AvlStateMachine-RKZIKNGC.js +9 -0
  6. package/dist/AvlTransitionDetail-63SD6GZF.js +11 -0
  7. package/dist/AvlTransitionExplainer-ZBTLOM3T.js +12 -0
  8. package/dist/BehaviorView-YS5G4GNB.js +11 -0
  9. package/dist/Canvas3DHost-BkZQB5l2.d.ts +552 -0
  10. package/dist/EventBusProvider-BFFHfN4O.d.ts +296 -0
  11. package/dist/FileTree-BCFnBEuQ.d.ts +254 -0
  12. package/dist/FlowCanvas-3JRMNJLV.css +1756 -0
  13. package/dist/FlowCanvas-AUMTWMNG.js +26 -0
  14. package/dist/GameAudioProvider-ceM_n0ey.d.ts +90 -0
  15. package/dist/KaTeX_AMS-Regular-CYEKBG2K.woff +0 -0
  16. package/dist/KaTeX_AMS-Regular-JKX5W2C4.ttf +0 -0
  17. package/dist/KaTeX_AMS-Regular-U6PRYMIZ.woff2 +0 -0
  18. package/dist/KaTeX_Caligraphic-Bold-5QL5CMTE.woff2 +0 -0
  19. package/dist/KaTeX_Caligraphic-Bold-WZ3QSGD3.woff +0 -0
  20. package/dist/KaTeX_Caligraphic-Bold-ZTS3R3HK.ttf +0 -0
  21. package/dist/KaTeX_Caligraphic-Regular-3LKEU76G.woff +0 -0
  22. package/dist/KaTeX_Caligraphic-Regular-A7XRTZ5Q.ttf +0 -0
  23. package/dist/KaTeX_Caligraphic-Regular-KX5MEWCF.woff2 +0 -0
  24. package/dist/KaTeX_Fraktur-Bold-2QVFK6NQ.woff2 +0 -0
  25. package/dist/KaTeX_Fraktur-Bold-T4SWXBMT.woff +0 -0
  26. package/dist/KaTeX_Fraktur-Bold-WGHVTYOR.ttf +0 -0
  27. package/dist/KaTeX_Fraktur-Regular-2PEIFJSJ.woff2 +0 -0
  28. package/dist/KaTeX_Fraktur-Regular-5U4OPH2X.ttf +0 -0
  29. package/dist/KaTeX_Fraktur-Regular-PQMHCIK6.woff +0 -0
  30. package/dist/KaTeX_Main-Bold-2GA4IZIN.woff +0 -0
  31. package/dist/KaTeX_Main-Bold-W5FBVCZM.ttf +0 -0
  32. package/dist/KaTeX_Main-Bold-YP5VVQRP.woff2 +0 -0
  33. package/dist/KaTeX_Main-BoldItalic-4P4C7HJH.woff +0 -0
  34. package/dist/KaTeX_Main-BoldItalic-N4V3DX7S.woff2 +0 -0
  35. package/dist/KaTeX_Main-BoldItalic-ODMLBJJQ.ttf +0 -0
  36. package/dist/KaTeX_Main-Italic-I43T2HSR.ttf +0 -0
  37. package/dist/KaTeX_Main-Italic-RELBIK7M.woff2 +0 -0
  38. package/dist/KaTeX_Main-Italic-SASNQFN2.woff +0 -0
  39. package/dist/KaTeX_Main-Regular-ARRPAO67.woff2 +0 -0
  40. package/dist/KaTeX_Main-Regular-P5I74A2A.woff +0 -0
  41. package/dist/KaTeX_Main-Regular-W74P5G27.ttf +0 -0
  42. package/dist/KaTeX_Math-BoldItalic-6EBV3DK5.woff +0 -0
  43. package/dist/KaTeX_Math-BoldItalic-K4WTGH3J.woff2 +0 -0
  44. package/dist/KaTeX_Math-BoldItalic-VB447A4D.ttf +0 -0
  45. package/dist/KaTeX_Math-Italic-6KGCHLFN.woff2 +0 -0
  46. package/dist/KaTeX_Math-Italic-KKK3USB2.woff +0 -0
  47. package/dist/KaTeX_Math-Italic-SON4MRCA.ttf +0 -0
  48. package/dist/KaTeX_SansSerif-Bold-RRNVJFFW.woff2 +0 -0
  49. package/dist/KaTeX_SansSerif-Bold-STQ6RXC7.ttf +0 -0
  50. package/dist/KaTeX_SansSerif-Bold-X5M5EMOD.woff +0 -0
  51. package/dist/KaTeX_SansSerif-Italic-HMPFTM52.woff2 +0 -0
  52. package/dist/KaTeX_SansSerif-Italic-PSN4QKYX.woff +0 -0
  53. package/dist/KaTeX_SansSerif-Italic-WTBAZBGY.ttf +0 -0
  54. package/dist/KaTeX_SansSerif-Regular-2TL3USAE.ttf +0 -0
  55. package/dist/KaTeX_SansSerif-Regular-OQCII6EP.woff +0 -0
  56. package/dist/KaTeX_SansSerif-Regular-XIQ62X4E.woff2 +0 -0
  57. package/dist/KaTeX_Script-Regular-72OLXYNA.ttf +0 -0
  58. package/dist/KaTeX_Script-Regular-A5IFOEBS.woff +0 -0
  59. package/dist/KaTeX_Script-Regular-APUWIHLP.woff2 +0 -0
  60. package/dist/KaTeX_Size1-Regular-4HRHTS65.woff +0 -0
  61. package/dist/KaTeX_Size1-Regular-5LRUTBFT.woff2 +0 -0
  62. package/dist/KaTeX_Size1-Regular-7K6AASVL.ttf +0 -0
  63. package/dist/KaTeX_Size2-Regular-222HN3GT.ttf +0 -0
  64. package/dist/KaTeX_Size2-Regular-K5ZHAIS6.woff +0 -0
  65. package/dist/KaTeX_Size2-Regular-LELKET5D.woff2 +0 -0
  66. package/dist/KaTeX_Size3-Regular-TLFPAHDE.woff +0 -0
  67. package/dist/KaTeX_Size3-Regular-UFCO6WCA.ttf +0 -0
  68. package/dist/KaTeX_Size3-Regular-WQRQ47UD.woff2 +0 -0
  69. package/dist/KaTeX_Size4-Regular-7PGNVPQK.ttf +0 -0
  70. package/dist/KaTeX_Size4-Regular-CDMV7U5C.woff2 +0 -0
  71. package/dist/KaTeX_Size4-Regular-PKMWZHNC.woff +0 -0
  72. package/dist/KaTeX_Typewriter-Regular-3F5K6SQ6.ttf +0 -0
  73. package/dist/KaTeX_Typewriter-Regular-MJMFSK64.woff +0 -0
  74. package/dist/KaTeX_Typewriter-Regular-VBYJ4NRC.woff2 +0 -0
  75. package/dist/KernelEngineContext-CcxGYtlr.d.ts +33 -0
  76. package/dist/LayersPanel-M2LHWUFF.js +6 -0
  77. package/dist/ModuleCard-QHDGK5XK.js +7 -0
  78. package/dist/OrbInspector-MHLJ6OEE.css +1756 -0
  79. package/dist/OrbInspector-QCPEPUPH.js +26 -0
  80. package/dist/Select-B-iDdnvE.d.ts +185 -0
  81. package/dist/ServerBridge-Bqsj-lOU.d.ts +124 -0
  82. package/dist/ThemeContext-DJmO59xd.d.ts +147 -0
  83. package/dist/UISlotContext-Dl_ewwCI.d.ts +79 -0
  84. package/dist/UISlotRenderer-C7WWOK43.js +26 -0
  85. package/dist/UISlotRenderer-KVFO6J7R.css +1756 -0
  86. package/dist/auth/browser/index.d.ts +2 -0
  87. package/dist/auth/browser/index.js +2 -0
  88. package/dist/auth/react/index.d.ts +56 -0
  89. package/dist/auth/react/index.js +157 -0
  90. package/dist/avl/index.css +1756 -0
  91. package/dist/avl/index.d.ts +2248 -0
  92. package/dist/avl/index.js +2693 -0
  93. package/dist/avl-3d-context-BycmO6tG.d.ts +201 -0
  94. package/dist/avl-schema-parser-CtJxJ9KU.d.ts +132 -0
  95. package/dist/avl-zoom-state-CKMVuBFg.d.ts +17 -0
  96. package/dist/chunk-3BBUBJFF.js +339 -0
  97. package/dist/chunk-3S54FWRC.js +131 -0
  98. package/dist/chunk-3VZ36ZKO.js +775 -0
  99. package/dist/chunk-4T3P43NS.js +1133 -0
  100. package/dist/chunk-4YXBKHHM.js +11488 -0
  101. package/dist/chunk-57DC34LY.js +525 -0
  102. package/dist/chunk-5QTYQTPS.js +15 -0
  103. package/dist/chunk-A2LR6VQQ.js +349 -0
  104. package/dist/chunk-AB3X7QTE.js +505 -0
  105. package/dist/chunk-AE7VCQB6.js +561 -0
  106. package/dist/chunk-AGXD77SL.js +98 -0
  107. package/dist/chunk-AU7O65OX.js +66 -0
  108. package/dist/chunk-CPLN6NBQ.js +701 -0
  109. package/dist/chunk-DZBQA2OW.js +176 -0
  110. package/dist/chunk-E6KA4J6N.js +227 -0
  111. package/dist/chunk-EOWMARUB.js +16 -0
  112. package/dist/chunk-G7DCAZ22.js +19 -0
  113. package/dist/chunk-GFXCPUMX.js +1334 -0
  114. package/dist/chunk-HH5KSMH5.js +311 -0
  115. package/dist/chunk-ILQXJ2AR.js +280 -0
  116. package/dist/chunk-ILZ7ORX7.js +432 -0
  117. package/dist/chunk-K4MOPSEL.js +674 -0
  118. package/dist/chunk-LHP2TK7O.js +47587 -0
  119. package/dist/chunk-P4ZFUQFF.js +93 -0
  120. package/dist/chunk-PCR37T3U.js +296 -0
  121. package/dist/chunk-PRXQGGCO.js +580 -0
  122. package/dist/chunk-REXYVBUO.js +191 -0
  123. package/dist/chunk-ROICKAU7.js +24 -0
  124. package/dist/chunk-SP5CDJ6K.js +338 -0
  125. package/dist/chunk-TUPZWTRE.js +1051 -0
  126. package/dist/chunk-TXAUOLWZ.js +490 -0
  127. package/dist/chunk-TZZBINQY.js +82 -0
  128. package/dist/chunk-UTDC2NEA.js +14 -0
  129. package/dist/chunk-UU57VNS2.js +1053 -0
  130. package/dist/chunk-UXLE3IPR.js +421 -0
  131. package/dist/chunk-VO2TTLS5.js +94 -0
  132. package/dist/chunk-X3DMMX27.js +11 -0
  133. package/dist/chunk-YHMRX6YA.js +455 -0
  134. package/dist/components/index.css +1756 -0
  135. package/dist/components/index.d.ts +11299 -0
  136. package/dist/components/index.js +1110 -0
  137. package/dist/context/index.d.ts +8 -0
  138. package/dist/context/index.js +8 -0
  139. package/dist/core.d.ts +2599 -0
  140. package/dist/core.js +3 -0
  141. package/dist/design-classes/index.cjs +431 -0
  142. package/dist/design-classes/index.d.cts +165 -0
  143. package/dist/design-classes/index.d.ts +165 -0
  144. package/dist/design-classes/index.js +399 -0
  145. package/dist/emojiItems-QGSNAABW.js +20 -0
  146. package/dist/fx-CmQjnHmT.d.ts +371 -0
  147. package/dist/hooks/index.d.ts +971 -0
  148. package/dist/hooks/index.js +8 -0
  149. package/dist/index.d.ts +408 -0
  150. package/dist/index.js +178 -0
  151. package/dist/katexPlugin-FA7NX4PE.css +1161 -0
  152. package/dist/katexPlugin-NCDKOOQY.js +2 -0
  153. package/dist/kernel-client-TZKGHJRY.js +516 -0
  154. package/dist/kernel-wire-wNdAPfhJ.d.ts +88 -0
  155. package/dist/lib/index.d.ts +602 -0
  156. package/dist/lib/index.js +1289 -0
  157. package/dist/paintDispatch-CuJLsr9Y.d.ts +688 -0
  158. package/dist/parseLessonSegments-GpCeMrb2.d.ts +334 -0
  159. package/dist/perf-CKiBKbkw.d.ts +22 -0
  160. package/dist/perf-Dr28-AgT.d.ts +57 -0
  161. package/dist/prism-X5YWKXO5.js +136 -0
  162. package/dist/providers/index.css +1756 -0
  163. package/dist/providers/index.d.ts +355 -0
  164. package/dist/providers/index.js +29 -0
  165. package/dist/renderer/index.d.ts +465 -0
  166. package/dist/renderer/index.js +4 -0
  167. package/dist/runtime/index.css +1756 -0
  168. package/dist/runtime/index.d.ts +239 -0
  169. package/dist/runtime/index.js +28 -0
  170. package/dist/slot-host-CPzrxLo9.d.ts +48 -0
  171. package/dist/ssr/index.cjs +9739 -0
  172. package/dist/ssr/index.d.cts +464 -0
  173. package/dist/ssr/index.d.ts +464 -0
  174. package/dist/ssr/index.js +9703 -0
  175. package/dist/storage/browser/index.d.ts +1 -0
  176. package/dist/storage/browser/index.js +2 -0
  177. package/dist/test-support.d.ts +42 -0
  178. package/dist/test-support.js +181 -0
  179. package/dist/themeTokens-CRd8AEDF.d.ts +125 -0
  180. package/dist/three/index.css +503 -0
  181. package/dist/three/index.d.ts +1185 -0
  182. package/dist/three/index.js +3908 -0
  183. package/dist/useUISlots-CiobNFGb.d.ts +211 -0
  184. package/dist/verification-C5pTeMJv.d.ts +66 -0
  185. package/dist/verificationRegistry-CVrcxG1s.d.ts +122 -0
  186. package/dist/wrapCallbackForEvent-B9QLbhxX.d.ts +19 -0
  187. package/index.css +199 -0
  188. package/package.json +273 -3
  189. package/src/core/lib/band-shapes.json +7 -0
  190. package/src/core/locales/ar.json +1276 -0
  191. package/src/core/locales/en.json +1276 -0
  192. package/src/core/locales/index.ts +54 -0
  193. package/src/core/locales/sl.json +1276 -0
  194. package/src/core/tokens/native-tokens.json +369 -0
  195. package/tailwind-compile.cjs +29 -0
  196. package/tailwind-preset.cjs +1020 -0
  197. package/themes/_base.css +451 -0
  198. package/themes/_contract.md +307 -0
  199. package/themes/_fonts-kenney.css +11 -0
  200. package/themes/_fonts.css +12 -0
  201. package/themes/_foundation.css +105 -0
  202. package/themes/_head.css +22 -0
  203. package/themes/_presets.css +67 -0
  204. package/themes/almadar-heritage.css +455 -0
  205. package/themes/almadar-website.css +269 -0
  206. package/themes/almadar.css +269 -0
  207. package/themes/aqua.css +455 -0
  208. package/themes/arabesque.css +459 -0
  209. package/themes/art-deco.css +457 -0
  210. package/themes/art-nouveau.css +459 -0
  211. package/themes/atelier.css +463 -0
  212. package/themes/bauhaus.css +461 -0
  213. package/themes/bloomberg-dense.css +463 -0
  214. package/themes/blueprint.css +457 -0
  215. package/themes/clay.css +449 -0
  216. package/themes/comic.css +453 -0
  217. package/themes/constructivist.css +457 -0
  218. package/themes/corporate.css +449 -0
  219. package/themes/cyberpunk.css +453 -0
  220. package/themes/frutiger-aero.css +458 -0
  221. package/themes/game-adventure.css +201 -0
  222. package/themes/game-rpg.css +203 -0
  223. package/themes/game-sci-fi.css +201 -0
  224. package/themes/game-ui-pack.css +200 -0
  225. package/themes/gazette.css +449 -0
  226. package/themes/glass.css +457 -0
  227. package/themes/gothic.css +453 -0
  228. package/themes/index.css +21 -0
  229. package/themes/ink-wash.css +459 -0
  230. package/themes/kawaii.css +459 -0
  231. package/themes/kflow.css +310 -0
  232. package/themes/kiosk.css +449 -0
  233. package/themes/linear-clean.css +463 -0
  234. package/themes/luxury.css +451 -0
  235. package/themes/mac-classic.css +455 -0
  236. package/themes/material.css +463 -0
  237. package/themes/memphis.css +453 -0
  238. package/themes/mid-century.css +455 -0
  239. package/themes/minimalist.css +449 -0
  240. package/themes/mudcloth.css +459 -0
  241. package/themes/nata.css +310 -0
  242. package/themes/neon.css +453 -0
  243. package/themes/neumorphic.css +451 -0
  244. package/themes/newsprint.css +455 -0
  245. package/themes/notion-editorial.css +463 -0
  246. package/themes/orb.css +465 -0
  247. package/themes/pixel.css +449 -0
  248. package/themes/prism.css +309 -0
  249. package/themes/rawi.css +310 -0
  250. package/themes/retro.css +452 -0
  251. package/themes/risograph.css +463 -0
  252. package/themes/scandi.css +469 -0
  253. package/themes/sketch.css +455 -0
  254. package/themes/solarpunk.css +469 -0
  255. package/themes/steampunk.css +451 -0
  256. package/themes/swiss.css +455 -0
  257. package/themes/terminal.css +466 -0
  258. package/themes/trait-wars.css +487 -0
  259. package/themes/ukiyo-e.css +459 -0
  260. package/themes/vaporwave.css +455 -0
  261. package/themes/victorian.css +453 -0
  262. package/themes/wabi-sabi.css +459 -0
  263. package/themes/win95.css +455 -0
  264. package/themes/wireframe.css +439 -0
  265. package/themes/zine.css +455 -0
  266. package/README.md +0 -3
@@ -0,0 +1,355 @@
1
+ import React__default, { ReactNode } from 'react';
2
+ import { EntityRow, EventPayload, EffectTrace, PageAccess, ViewerAuthority, RowSetRef } from '@almadar/core';
3
+ export { ANONYMOUS_USER } from '@almadar/core';
4
+ import '../EventBusProvider-BFFHfN4O.js';
5
+ import { UIThemeDefinition } from '../core.js';
6
+ export { A as ARBITRARY_CLASS_STYLE_ID, a as ArbitraryClassCompiler, b as ArbitraryClassCompilerProvider, c as ArbitraryClassCompilerProviderProps, C as CurrentPagePathContext, d as CurrentPagePathProvider, e as CurrentPagePathProviderProps, D as DesignThemeProvider, O as OrbitalThemeProvider, f as OrbitalThemeProviderProps, U as UserContext, g as UserContextValue, h as UserData, i as UserProvider, j as UserProviderProps, r as resetArbitraryClassStyles, u as useArbitraryClassStyles, k as useCurrentPagePath, l as useDesignTheme, m as useHasPermission, n as useHasRole, o as useUser, p as useUserForEvaluation } from '../ArbitraryClassCompiler-CO_iASBn.js';
7
+ export { h as AwaitingSkeletonContext, A as AwaitingSkeletonSource, i as EntityBindingContext, E as EntityBindingSource, a as EntitySchemaContextValue, b as EntitySchemaProvider, c as EntitySchemaProviderProps, d as ServerBridgeContextValue, e as ServerBridgeProvider, j as ServerBridgeProviderProps, S as ServerBridgeTransport, k as useAwaitingSkeleton, l as useEntityBindingSnapshot, u as useEntitySchema, f as useEntitySchemaOptional, g as useServerBridge } from '../ServerBridge-Bqsj-lOU.js';
8
+ export { a as KernelEngineContext, b as KernelEngineProvider, c as KernelEngineProviderProps, K as KernelEngineValue, d as KernelLoaderMissingError, u as useKernelEngine } from '../KernelEngineContext-CcxGYtlr.js';
9
+ export { b as KernelInstance, a as KernelLoader, K as KernelModule } from '../kernel-wire-wNdAPfhJ.js';
10
+ import '../verificationRegistry-CVrcxG1s.js';
11
+ export { G as GameAudioContext, a as GameAudioContextValue, b as GameAudioProvider, c as GameAudioProviderProps, u as useGameAudioContext, d as useGameAudioContextOptional } from '../GameAudioProvider-ceM_n0ey.js';
12
+ export { A as Avl3DConfig, a as Avl3DContext, b as Avl3DModelOverrides, u as useAvl3DConfig, c as useAvl3DPalette } from '../avl-3d-context-BycmO6tG.js';
13
+ export { AccessTokenProvider } from '@almadar/shell-runtime/client/EventTransport';
14
+ import '../verification-C5pTeMJv.js';
15
+ import '@almadar/shell-runtime/kernel/os-port';
16
+ import '@almadar/shell-browser/kv';
17
+ import '../paintDispatch-CuJLsr9Y.js';
18
+ import '../fx-CmQjnHmT.js';
19
+ import 'lucide-react';
20
+ import 'three';
21
+
22
+ /**
23
+ * SelectionProvider - Manages selected entity state
24
+ *
25
+ * Separates selection state from the EventBusProvider to maintain
26
+ * clean architecture (event bus stays pure pub/sub).
27
+ *
28
+ * This provider:
29
+ * - Listens to UI:VIEW and UI:SELECT events to track selected entity
30
+ * - Listens to UI:CLOSE, UI:DESELECT, UI:CANCEL to clear selection
31
+ * - Provides the selected entity to any component that needs it
32
+ *
33
+ * @packageDocumentation
34
+ */
35
+
36
+ interface SelectionContextType<T = EntityRow> {
37
+ /** The currently selected entity */
38
+ selected: T | null;
39
+ /** Manually set the selected entity */
40
+ setSelected: (entity: T | null) => void;
41
+ /** Clear the selection */
42
+ clearSelection: () => void;
43
+ /** Check if an entity is selected */
44
+ isSelected: (entity: T) => boolean;
45
+ }
46
+ declare const SelectionContext: React__default.Context<SelectionContextType<EntityRow> | null>;
47
+ interface SelectionProviderProps {
48
+ children: ReactNode;
49
+ /** Enable debug logging */
50
+ debug?: boolean;
51
+ /** Custom comparison function for isSelected */
52
+ compareEntities?: (a: EntityRow, b: EntityRow) => boolean;
53
+ }
54
+ /**
55
+ * Provider component for selection state.
56
+ *
57
+ * Must be used within an EventBusProvider.
58
+ *
59
+ * @example
60
+ * ```tsx
61
+ * function OrderListPage() {
62
+ * return (
63
+ * <EventBusProvider>
64
+ * <SelectionProvider debug={process.env.NODE_ENV === 'development'}>
65
+ * <OrderTable />
66
+ * <OrderDetailDrawer />
67
+ * </SelectionProvider>
68
+ * </EventBusProvider>
69
+ * );
70
+ * }
71
+ * ```
72
+ */
73
+ declare function SelectionProvider({ children, debug, compareEntities, }: SelectionProviderProps): React__default.JSX.Element;
74
+ /**
75
+ * Hook to access selection state.
76
+ *
77
+ * @throws Error if used outside SelectionProvider
78
+ *
79
+ * @example
80
+ * ```tsx
81
+ * function OrderDetailDrawer() {
82
+ * const { selected, clearSelection } = useSelection<Order>();
83
+ *
84
+ * if (!selected) return null;
85
+ *
86
+ * return (
87
+ * <Drawer onClose={clearSelection}>
88
+ * <OrderDetail order={selected} />
89
+ * </Drawer>
90
+ * );
91
+ * }
92
+ * ```
93
+ */
94
+ declare function useSelection<T = EntityRow>(): SelectionContextType<T>;
95
+ /**
96
+ * Hook to access selection state with fallback for components
97
+ * that may be used outside SelectionProvider.
98
+ *
99
+ * Returns null if no SelectionProvider is found.
100
+ */
101
+ declare function useSelectionOptional<T = EntityRow>(): SelectionContextType<T> | null;
102
+
103
+ /**
104
+ * EditorFocusContext — which editor holds keyboard focus, as React context. A focusable editor (CodeBlock) reports its own
105
+ * focus and blur here; the keyboard router reads it to pick the capture-table entry a keydown belongs to.
106
+ */
107
+
108
+ interface EditorFocus {
109
+ /** The editor holding focus, or `null` when none does. */
110
+ focused: () => string | null;
111
+ focus: (editorId: string) => void;
112
+ /** Releases focus only when `editorId` still holds it, so a late blur never clears a newer focus. */
113
+ blur: (editorId: string) => void;
114
+ }
115
+ declare const EditorFocusProvider: React__default.FC<{
116
+ children: React__default.ReactNode;
117
+ }>;
118
+ /** Outside an `EditorFocusProvider` nothing is ever focused: the router targets `'shell'`. */
119
+ declare function useEditorFocus(): EditorFocus;
120
+
121
+ /**
122
+ * OrbitalProvider
123
+ *
124
+ * Unified provider that combines all required contexts for Orbital applications.
125
+ * Provides a single import for both Builder preview and compiled shell.
126
+ *
127
+ * Combines:
128
+ * - ThemeProvider - Theme and color mode management
129
+ * - EventBusProvider - Page-scoped event pub/sub
130
+ * - SelectionProvider - Selected entity tracking
131
+ *
132
+ * Entity data flows through props (via enrichFromResponse in ServerBridge),
133
+ * not through context. FetchedDataProvider has been removed.
134
+ *
135
+ * @packageDocumentation
136
+ */
137
+
138
+ interface OrbitalProviderProps {
139
+ children: ReactNode;
140
+ /** Custom themes (merged with built-in themes) */
141
+ themes?: UIThemeDefinition[];
142
+ /** Default theme name */
143
+ defaultTheme?: string;
144
+ /** Default color mode */
145
+ defaultMode?: 'light' | 'dark' | 'system';
146
+ /** Optional target element ref for scoped theme application */
147
+ targetRef?: React__default.RefObject<HTMLElement>;
148
+ /** Skip ThemeProvider (use when already inside a themed container like shadow DOM) */
149
+ skipTheme?: boolean;
150
+ /** Enable debug logging for all providers */
151
+ debug?: boolean;
152
+ /** Initial fetched data */
153
+ /** @deprecated No longer used. Entity data flows through server response props. */
154
+ initialData?: Record<string, EntityRow[]>;
155
+ /**
156
+ * Enable Suspense mode. When true, UISlotRenderer wraps each slot in
157
+ * `<ErrorBoundary><Suspense>` with Skeleton fallbacks.
158
+ * Opt-in — existing isLoading prop pattern still works when false/absent.
159
+ */
160
+ suspense?: boolean;
161
+ /**
162
+ * Enable verification wiring for visual testing.
163
+ * When true, lifecycle events are recorded and exposed via
164
+ * `window.__orbitalVerification` for Playwright/automation.
165
+ * Default: true in development, false in production.
166
+ */
167
+ verification?: boolean;
168
+ /**
169
+ * Sandbox mode: the event bus stays context-local and does NOT register as
170
+ * the global bus. Set for studio previews embedded in a host app (so the
171
+ * preview's events don't clobber the host's global bus). Default false.
172
+ */
173
+ isolated?: boolean;
174
+ }
175
+ /**
176
+ * OrbitalProvider - Unified context provider for Orbital applications
177
+ *
178
+ * Wraps your application with all required providers in the correct order.
179
+ *
180
+ * @example
181
+ * ```tsx
182
+ * // Basic usage
183
+ * function App() {
184
+ * return (
185
+ * <OrbitalProvider>
186
+ * <Router>
187
+ * <Routes />
188
+ * </Router>
189
+ * </OrbitalProvider>
190
+ * );
191
+ * }
192
+ *
193
+ * // With configuration
194
+ * function App() {
195
+ * return (
196
+ * <OrbitalProvider
197
+ * defaultTheme="minimalist"
198
+ * defaultMode="dark"
199
+ * debug={process.env.NODE_ENV === 'development'}
200
+ * >
201
+ * <Router>
202
+ * <Routes />
203
+ * </Router>
204
+ * </OrbitalProvider>
205
+ * );
206
+ * }
207
+ *
208
+ * // With custom themes from schema
209
+ * import { THEMES } from './generated/theme-manifest';
210
+ *
211
+ * function App() {
212
+ * return (
213
+ * <OrbitalProvider themes={THEMES} defaultTheme="glass">
214
+ * <Router>
215
+ * <Routes />
216
+ * </Router>
217
+ * </OrbitalProvider>
218
+ * );
219
+ * }
220
+ * ```
221
+ */
222
+ declare function OrbitalProvider({ children, themes, defaultTheme, defaultMode, targetRef, skipTheme, debug, initialData, suspense, verification, isolated, }: OrbitalProviderProps): React__default.ReactElement;
223
+ declare namespace OrbitalProvider {
224
+ var displayName: string;
225
+ }
226
+
227
+ /**
228
+ * RenderSlotContext — which UI slot the current subtree is rendering into.
229
+ *
230
+ * Default is 'main': a compiled app's page body renders patterns directly
231
+ * (no UISlotRenderer), so the absence of a provider IS the main slot. The
232
+ * exceptional hosts declare themselves: the runtime path's UISlotComponent
233
+ * provides its slot name per subtree; the compiled path's ModalSlot /
234
+ * DrawerSlot provide 'modal' / 'drawer'.
235
+ *
236
+ * Consumers gate slot-sensitive behavior on it — e.g. DetailPanel only
237
+ * feeds the loaded record's title into the nav-stack crumb from the routed
238
+ * 'main' slot (a modal or drawer must not relabel the page's crumb).
239
+ */
240
+
241
+ interface RenderSlotProviderProps {
242
+ slot: string;
243
+ children: React__default.ReactNode;
244
+ }
245
+ declare const RenderSlotProvider: React__default.FC<RenderSlotProviderProps>;
246
+ /** The slot name the calling component is rendering inside ('main' by default). */
247
+ declare function useRenderSlot(): string;
248
+
249
+ /**
250
+ * VerificationProvider
251
+ *
252
+ * Wires the verification registry to the event bus: intercepts the lifecycle events
253
+ * (`{traitName}:DISPATCH`, `{traitName}:{event}:SUCCESS`, `{traitName}:{event}:ERROR`) and records
254
+ * transitions via `recordTransition()`, then calls `bindEventBus()` and `bindTraitStateGetter()` to populate
255
+ * `window.__orbitalVerification` for Playwright/automation.
256
+ *
257
+ * @packageDocumentation
258
+ */
259
+
260
+ interface VerificationProviderProps {
261
+ children: ReactNode;
262
+ /** Enable verification wiring (default: true in dev, false in prod) */
263
+ enabled?: boolean;
264
+ /** Optional trait state getter for compiled apps (maps traitName → currentState) */
265
+ traitStateGetter?: (traitName: string) => string | undefined;
266
+ }
267
+ /**
268
+ * Map the compiled path's raw `effectResults` bus payload (persist / fetch /
269
+ * call-service outcomes forwarded from the server) onto `EffectTrace[]`.
270
+ * Exported for unit testing — pure, no React/event-bus dependency.
271
+ *
272
+ * The server's `EffectResult` (`OrbitalServerRuntime.ts`) writes
273
+ * `entityType` — not `entity` — plus `action` / `data.id` / `success` /
274
+ * `denied`; reading only `er['entity']` (never populated) dropped all of
275
+ * that, so a denied or failed persist read back here as a plain 'executed'
276
+ * effect with no entity name.
277
+ */
278
+ declare function mapServerEffectResults(effectResults: ReadonlyArray<EventPayload>): EffectTrace[];
279
+ /**
280
+ * VerificationProvider — wires the verification registry to the event bus. Renders children unchanged.
281
+ */
282
+ declare function VerificationProvider({ children, enabled, traitStateGetter, }: VerificationProviderProps): React__default.ReactElement;
283
+ declare namespace VerificationProvider {
284
+ var displayName: string;
285
+ }
286
+
287
+ /**
288
+ * The page's declared `access`, enforced at the page boundary on both
289
+ * execution paths: an `access: authenticated` page's subtree (its whole trait
290
+ * circuit) mounts only once the host's auth provider has resolved an
291
+ * authenticated viewer, and is keyed by that viewer so a different user never
292
+ * inherits the previous user's circuit. Any other resolved authority sends the
293
+ * viewer to the app's declared `signIn` route. An `access: public` page mounts at
294
+ * once, whatever the authority. A page that declares no access mounts once the
295
+ * stored sign-in has settled, never anonymously while it restores.
296
+ *
297
+ * @packageDocumentation
298
+ */
299
+
300
+ interface PageAccessHostProps {
301
+ /** The page's declared `access:` modifier; absent = no gate. */
302
+ access?: PageAccess;
303
+ /** What the host's auth provider has resolved the viewer to be. */
304
+ authority: ViewerAuthority;
305
+ /** The admitted viewer's identity; a change remounts the page subtree. */
306
+ viewerId?: string;
307
+ /** The app's `signIn:` route. */
308
+ signIn?: string;
309
+ /** The concrete path being opened — handed to `onDenied` as the return path. */
310
+ path: string;
311
+ /** Navigate a non-admitted viewer to `signIn`, carrying `returnTo`. */
312
+ onDenied: (signIn: string, returnTo: string) => void;
313
+ children: React__default.ReactNode;
314
+ }
315
+ declare function PageAccessHost({ access, authority, viewerId, signIn, path, onDenied, children, }: PageAccessHostProps): React__default.ReactElement | null;
316
+ declare namespace PageAccessHost {
317
+ var displayName: string;
318
+ }
319
+
320
+ /** A row-set reference the kernel could not resolve; distinct from a resolve that answered with zero rows. */
321
+ declare class RowSetResolveError extends Error {
322
+ readonly entityType: string;
323
+ constructor(entityType: string, cause: string);
324
+ }
325
+ interface RowSetResolution {
326
+ rows: EntityRow[];
327
+ total: number;
328
+ /** No answer yet for the current data (first resolve, or a refresh in flight). */
329
+ loading: boolean;
330
+ /** The resolve failed; `rows` is not an answer. Cleared when a later resolve is in flight. */
331
+ failure?: RowSetResolveError;
332
+ }
333
+ interface RowSetResolver {
334
+ resolve(ref: RowSetRef): RowSetResolution;
335
+ /** A write to `entityType` happened: re-resolve every held ref of that type. */
336
+ rowsChanged(entityType: string): void;
337
+ subscribe(listener: () => void): () => void;
338
+ /** Bumps whenever any resolution changes; render caches key on it. */
339
+ epoch(): number;
340
+ }
341
+
342
+ declare function RowSetResolverProvider({ resolver, children }: {
343
+ resolver: RowSetResolver;
344
+ children?: ReactNode;
345
+ }): React.ReactElement;
346
+ /** The resolver alone, without subscribing to its epoch: for writers (the repaint signal), not painters. */
347
+ declare function useRowSetResolverHandle(): RowSetResolver | undefined;
348
+ /** The resolver (or undefined) and its epoch; re-renders the caller when any resolution changes. */
349
+ declare function useRowSetResolver(): {
350
+ resolver: RowSetResolver | undefined;
351
+ epoch: number;
352
+ };
353
+
354
+ export { EditorFocusProvider, OrbitalProvider, PageAccessHost, RenderSlotProvider, RowSetResolverProvider, SelectionContext, SelectionProvider, VerificationProvider, mapServerEffectResults, useEditorFocus, useRenderSlot, useRowSetResolver, useRowSetResolverHandle, useSelection, useSelectionOptional };
355
+ export type { EditorFocus, OrbitalProviderProps, PageAccessHostProps, RenderSlotProviderProps, SelectionContextType, VerificationProviderProps };
@@ -0,0 +1,29 @@
1
+ "use client";
2
+ export { Avl3DContext, useAvl3DConfig, useAvl3DPalette } from '../chunk-EOWMARUB.js';
3
+ export { AwaitingSkeletonContext, EntityBindingContext, EntitySchemaProvider, GameAudioContext, GameAudioProvider, KernelEngineContext, KernelEngineProvider, KernelLoaderMissingError, OrbitalProvider, PageAccessHost, RenderSlotProvider, RowSetResolverProvider, SelectionContext, SelectionProvider, ServerBridgeProvider, VerificationProvider, mapServerEffectResults, useAwaitingSkeleton, useEntityBindingSnapshot, useEntitySchema, useEntitySchemaOptional, useGameAudioContext, useGameAudioContextOptional, useKernelEngine, useRenderSlot, useRowSetResolver, useRowSetResolverHandle, useSelection, useSelectionOptional, useServerBridge } from '../chunk-LHP2TK7O.js';
4
+ import '../chunk-57DC34LY.js';
5
+ import '../chunk-SP5CDJ6K.js';
6
+ import '../chunk-CPLN6NBQ.js';
7
+ import '../chunk-HH5KSMH5.js';
8
+ import '../chunk-REXYVBUO.js';
9
+ import '../chunk-AGXD77SL.js';
10
+ import '../chunk-TXAUOLWZ.js';
11
+ import '../chunk-AB3X7QTE.js';
12
+ import '../chunk-DZBQA2OW.js';
13
+ import '../chunk-TUPZWTRE.js';
14
+ import '../chunk-TZZBINQY.js';
15
+ import '../chunk-4T3P43NS.js';
16
+ import '../chunk-PCR37T3U.js';
17
+ import '../chunk-UXLE3IPR.js';
18
+ import '../chunk-ILZ7ORX7.js';
19
+ import '../chunk-3VZ36ZKO.js';
20
+ export { EditorFocusProvider, useEditorFocus } from '../chunk-PRXQGGCO.js';
21
+ import '../chunk-VO2TTLS5.js';
22
+ export { DesignThemeProvider, useDesignTheme } from '../chunk-UTDC2NEA.js';
23
+ export { ANONYMOUS_USER, ARBITRARY_CLASS_STYLE_ID, ArbitraryClassCompilerProvider, CurrentPagePathContext, CurrentPagePathProvider, OrbitalThemeProvider, UserContext, UserProvider, resetArbitraryClassStyles, useArbitraryClassStyles, useCurrentPagePath, useHasPermission, useHasRole, useUser, useUserForEvaluation } from '../chunk-AE7VCQB6.js';
24
+ import '../chunk-3BBUBJFF.js';
25
+ import '../chunk-YHMRX6YA.js';
26
+ import '../chunk-4YXBKHHM.js';
27
+ import '../chunk-A2LR6VQQ.js';
28
+ import '../chunk-P4ZFUQFF.js';
29
+ import '../chunk-G7DCAZ22.js';