@almadar/ui 5.111.0 → 5.113.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/GameAudioProvider-CPGwD49P.d.cts +151 -0
- package/dist/GameAudioProvider-CPGwD49P.d.ts +151 -0
- package/dist/TraitProvider-YkK6tXDw.d.cts +236 -0
- package/dist/TraitProvider-YkK6tXDw.d.ts +236 -0
- package/dist/{providers/UISlotContext.d.ts → UISlotContext-C1FsU9GB.d.ts} +14 -10
- package/dist/UISlotContext-D8_SoDsD.d.cts +79 -0
- package/dist/UserContext-bziZwgFL.d.cts +278 -0
- package/dist/UserContext-bziZwgFL.d.ts +278 -0
- package/dist/avl/index.cjs +137 -18
- package/dist/avl/index.js +139 -20
- package/dist/avl-schema-parser-B8Onmfsu.d.cts +393 -0
- package/dist/avl-schema-parser-B8Onmfsu.d.ts +393 -0
- package/dist/cn-BkQrMR01.d.cts +295 -0
- package/dist/cn-CTEFm9PC.d.ts +295 -0
- package/dist/components/index.cjs +33 -6
- package/dist/components/index.d.cts +11225 -0
- package/dist/components/index.d.ts +11225 -6
- package/dist/components/index.js +33 -6
- package/dist/{lib/themeTokens.d.ts → context/index.d.cts} +13 -4
- package/dist/context/index.d.ts +62 -9
- package/dist/{types/event-bus-types.d.ts → event-bus-types-Bl78kokd.d.cts} +7 -6
- package/dist/event-bus-types-Bl78kokd.d.ts +65 -0
- package/dist/hooks/index.d.cts +995 -0
- package/dist/hooks/index.d.ts +994 -32
- package/dist/lib/drawable/three/index.cjs +11 -24
- package/dist/lib/drawable/three/index.d.cts +1485 -0
- package/dist/lib/drawable/three/index.d.ts +1484 -38
- package/dist/lib/drawable/three/index.js +11 -24
- package/dist/lib/index.d.cts +505 -0
- package/dist/lib/index.d.ts +504 -18
- package/dist/locales/index.d.cts +22 -0
- package/dist/locales/index.d.ts +7 -5
- package/dist/offline-executor-aRuNznZx.d.cts +520 -0
- package/dist/offline-executor-aRuNznZx.d.ts +520 -0
- package/dist/paintDispatch-DR942knx.d.cts +221 -0
- package/dist/paintDispatch-DR942knx.d.ts +221 -0
- package/dist/providers/index.cjs +33 -6
- package/dist/providers/index.d.cts +428 -0
- package/dist/providers/index.d.ts +427 -26
- package/dist/providers/index.js +33 -6
- package/dist/renderer/index.cjs +1 -1
- package/dist/renderer/index.d.cts +343 -0
- package/dist/renderer/index.d.ts +337 -22
- package/dist/renderer/index.js +1 -1
- package/dist/runtime/index.cjs +137 -18
- package/dist/runtime/index.d.cts +426 -0
- package/dist/runtime/index.d.ts +421 -16
- package/dist/runtime/index.js +139 -20
- package/dist/useEventBus-CQWyAWpK.d.ts +65 -0
- package/dist/useEventBus-Ckr4wqW3.d.cts +65 -0
- package/dist/{hooks/useUISlots.d.ts → useUISlots-BesZYMks.d.cts} +16 -14
- package/dist/useUISlots-BesZYMks.d.ts +216 -0
- package/package.json +11 -11
- package/dist/avl/index.d.cts +0 -1853
- package/dist/avl/index.d.ts +0 -64
- package/dist/components/avl/atoms/Avl3DLabel.d.ts +0 -23
- package/dist/components/avl/atoms/Avl3DTooltip.d.ts +0 -25
- package/dist/components/avl/atoms/AvlApplication.d.ts +0 -8
- package/dist/components/avl/atoms/AvlBinding.d.ts +0 -12
- package/dist/components/avl/atoms/AvlBindingRef.d.ts +0 -7
- package/dist/components/avl/atoms/AvlEffect.d.ts +0 -10
- package/dist/components/avl/atoms/AvlEntity.d.ts +0 -9
- package/dist/components/avl/atoms/AvlEvent.d.ts +0 -7
- package/dist/components/avl/atoms/AvlField.d.ts +0 -10
- package/dist/components/avl/atoms/AvlFieldType.d.ts +0 -8
- package/dist/components/avl/atoms/AvlGuard.d.ts +0 -7
- package/dist/components/avl/atoms/AvlLiteral.d.ts +0 -7
- package/dist/components/avl/atoms/AvlOperator.d.ts +0 -8
- package/dist/components/avl/atoms/AvlOrbital.d.ts +0 -11
- package/dist/components/avl/atoms/AvlPage.d.ts +0 -7
- package/dist/components/avl/atoms/AvlPersistence.d.ts +0 -8
- package/dist/components/avl/atoms/AvlSExpr.d.ts +0 -8
- package/dist/components/avl/atoms/AvlState.d.ts +0 -15
- package/dist/components/avl/atoms/AvlTrait.d.ts +0 -13
- package/dist/components/avl/atoms/AvlTransition.d.ts +0 -18
- package/dist/components/avl/atoms/index.d.ts +0 -24
- package/dist/components/avl/hooks/useCanvasDnd.d.ts +0 -155
- package/dist/components/avl/lib/avl-3d-layout.d.ts +0 -116
- package/dist/components/avl/lib/avl-behavior-compose-converter.d.ts +0 -55
- package/dist/components/avl/lib/avl-elk-layout.d.ts +0 -55
- package/dist/components/avl/lib/avl-flow-converter.d.ts +0 -17
- package/dist/components/avl/lib/avl-layout.d.ts +0 -32
- package/dist/components/avl/lib/avl-preview-converter.d.ts +0 -71
- package/dist/components/avl/lib/avl-schema-parser.d.ts +0 -128
- package/dist/components/avl/lib/avl-story-schemas.d.ts +0 -34
- package/dist/components/avl/lib/avl-zoom-band.d.ts +0 -19
- package/dist/components/avl/lib/avl-zoom-state.d.ts +0 -72
- package/dist/components/avl/lib/derive-edit-focus.d.ts +0 -8
- package/dist/components/avl/lib/wire-validation.d.ts +0 -30
- package/dist/components/avl/molecules/Avl3DCrossWire.d.ts +0 -22
- package/dist/components/avl/molecules/Avl3DEntityCore.d.ts +0 -26
- package/dist/components/avl/molecules/Avl3DExprTree.d.ts +0 -21
- package/dist/components/avl/molecules/Avl3DOrbitalNode.d.ts +0 -29
- package/dist/components/avl/molecules/Avl3DStateNode.d.ts +0 -34
- package/dist/components/avl/molecules/Avl3DTransitionArc.d.ts +0 -38
- package/dist/components/avl/molecules/AvlBackwardEdge.d.ts +0 -8
- package/dist/components/avl/molecules/AvlBehaviorGlyph.d.ts +0 -61
- package/dist/components/avl/molecules/AvlBindingEdge.d.ts +0 -9
- package/dist/components/avl/molecules/AvlClosedCircuit.d.ts +0 -20
- package/dist/components/avl/molecules/AvlEmitListen.d.ts +0 -16
- package/dist/components/avl/molecules/AvlEventWireEdge.d.ts +0 -15
- package/dist/components/avl/molecules/AvlExprTree.d.ts +0 -13
- package/dist/components/avl/molecules/AvlOrbitalNode.d.ts +0 -12
- package/dist/components/avl/molecules/AvlOrbitalUnit.d.ts +0 -20
- package/dist/components/avl/molecules/AvlPageEdge.d.ts +0 -8
- package/dist/components/avl/molecules/AvlSlotMap.d.ts +0 -18
- package/dist/components/avl/molecules/AvlStateMachine.d.ts +0 -22
- package/dist/components/avl/molecules/AvlSwimLane.d.ts +0 -10
- package/dist/components/avl/molecules/AvlTransitionEdge.d.ts +0 -17
- package/dist/components/avl/molecules/AvlTransitionLane.d.ts +0 -18
- package/dist/components/avl/molecules/BehaviorComposeNode.d.ts +0 -13
- package/dist/components/avl/molecules/BehaviorView.d.ts +0 -12
- package/dist/components/avl/molecules/DetailView.d.ts +0 -13
- package/dist/components/avl/molecules/EventFlowEdge.d.ts +0 -13
- package/dist/components/avl/molecules/MiniStateMachine.d.ts +0 -14
- package/dist/components/avl/molecules/ModuleCard.d.ts +0 -22
- package/dist/components/avl/molecules/OrbPreviewNode.d.ts +0 -38
- package/dist/components/avl/molecules/SystemNode.d.ts +0 -12
- package/dist/components/avl/molecules/TraitCardNode.d.ts +0 -33
- package/dist/components/avl/molecules/index.d.ts +0 -38
- package/dist/components/avl/organisms/Avl3DApplicationScene.d.ts +0 -19
- package/dist/components/avl/organisms/Avl3DEffects.d.ts +0 -18
- package/dist/components/avl/organisms/Avl3DOrbitalScene.d.ts +0 -23
- package/dist/components/avl/organisms/Avl3DTraitScene.d.ts +0 -19
- package/dist/components/avl/organisms/Avl3DTransitionScene.d.ts +0 -17
- package/dist/components/avl/organisms/Avl3DViewer.d.ts +0 -40
- package/dist/components/avl/organisms/AvlClickTarget.d.ts +0 -31
- package/dist/components/avl/organisms/AvlCosmicZoom.d.ts +0 -41
- package/dist/components/avl/organisms/AvlLegend.d.ts +0 -15
- package/dist/components/avl/organisms/AvlOrbitalsCosmicZoom.d.ts +0 -54
- package/dist/components/avl/organisms/AvlTraitScene.d.ts +0 -17
- package/dist/components/avl/organisms/AvlTransitionDetail.d.ts +0 -20
- package/dist/components/avl/organisms/AvlTransitionScene.d.ts +0 -13
- package/dist/components/avl/organisms/FlowCanvas.d.ts +0 -134
- package/dist/components/avl/organisms/OrbInspector.d.ts +0 -45
- package/dist/components/avl/organisms/ZoomBreadcrumb.d.ts +0 -16
- package/dist/components/avl/organisms/ZoomLegend.d.ts +0 -10
- package/dist/components/avl/organisms/index.d.ts +0 -19
- package/dist/components/avl/providers/avl-3d-context.d.ts +0 -32
- package/dist/components/avl/types/avl-atom-types.d.ts +0 -53
- package/dist/components/avl/types/avl-behavior-compose-types.d.ts +0 -120
- package/dist/components/avl/types/avl-canvas-types.d.ts +0 -39
- package/dist/components/avl/types/avl-preview-types.d.ts +0 -240
- package/dist/components/core/atoms/Aside.d.ts +0 -15
- package/dist/components/core/atoms/AtlasImage.d.ts +0 -58
- package/dist/components/core/atoms/Avatar.d.ts +0 -61
- package/dist/components/core/atoms/Badge.d.ts +0 -29
- package/dist/components/core/atoms/Box.d.ts +0 -68
- package/dist/components/core/atoms/Button.d.ts +0 -33
- package/dist/components/core/atoms/Card.d.ts +0 -34
- package/dist/components/core/atoms/Center.d.ts +0 -33
- package/dist/components/core/atoms/Checkbox.d.ts +0 -14
- package/dist/components/core/atoms/ConditionalWrapper.d.ts +0 -69
- package/dist/components/core/atoms/ConfettiEffect.d.ts +0 -19
- package/dist/components/core/atoms/DayCell.d.ts +0 -22
- package/dist/components/core/atoms/Dialog.d.ts +0 -18
- package/dist/components/core/atoms/Divider.d.ts +0 -29
- package/dist/components/core/atoms/FilterPill.d.ts +0 -30
- package/dist/components/core/atoms/FlipContainer.d.ts +0 -21
- package/dist/components/core/atoms/GameIcon.d.ts +0 -19
- package/dist/components/core/atoms/Icon.d.ts +0 -57
- package/dist/components/core/atoms/InfiniteScrollSentinel.d.ts +0 -24
- package/dist/components/core/atoms/Input.d.ts +0 -39
- package/dist/components/core/atoms/Label.d.ts +0 -12
- package/dist/components/core/atoms/LawReferenceTooltip.d.ts +0 -48
- package/dist/components/core/atoms/Overlay.d.ts +0 -17
- package/dist/components/core/atoms/ProgressBar.d.ts +0 -63
- package/dist/components/core/atoms/Radio.d.ts +0 -35
- package/dist/components/core/atoms/RangeSlider.d.ts +0 -34
- package/dist/components/core/atoms/SectionHeader.d.ts +0 -14
- package/dist/components/core/atoms/Select.d.ts +0 -49
- package/dist/components/core/atoms/Spacer.d.ts +0 -25
- package/dist/components/core/atoms/Sparkline.d.ts +0 -30
- package/dist/components/core/atoms/Spinner.d.ts +0 -10
- package/dist/components/core/atoms/Stack.d.ts +0 -67
- package/dist/components/core/atoms/StatusDot.d.ts +0 -16
- package/dist/components/core/atoms/Switch.d.ts +0 -12
- package/dist/components/core/atoms/TextHighlight.d.ts +0 -54
- package/dist/components/core/atoms/Textarea.d.ts +0 -17
- package/dist/components/core/atoms/ThemeToggle.d.ts +0 -33
- package/dist/components/core/atoms/TimeSlotCell.d.ts +0 -23
- package/dist/components/core/atoms/TraitFrame.d.ts +0 -54
- package/dist/components/core/atoms/TrendIndicator.d.ts +0 -20
- package/dist/components/core/atoms/TypewriterText.d.ts +0 -20
- package/dist/components/core/atoms/Typography.d.ts +0 -39
- package/dist/components/core/atoms/index.d.ts +0 -52
- package/dist/components/core/atoms/svg/SvgBranch.d.ts +0 -16
- package/dist/components/core/atoms/svg/SvgConnection.d.ts +0 -17
- package/dist/components/core/atoms/svg/SvgFlow.d.ts +0 -14
- package/dist/components/core/atoms/svg/SvgGrid.d.ts +0 -18
- package/dist/components/core/atoms/svg/SvgLobe.d.ts +0 -17
- package/dist/components/core/atoms/svg/SvgMesh.d.ts +0 -16
- package/dist/components/core/atoms/svg/SvgMorph.d.ts +0 -15
- package/dist/components/core/atoms/svg/SvgNode.d.ts +0 -16
- package/dist/components/core/atoms/svg/SvgPulse.d.ts +0 -16
- package/dist/components/core/atoms/svg/SvgRing.d.ts +0 -17
- package/dist/components/core/atoms/svg/SvgShield.d.ts +0 -15
- package/dist/components/core/atoms/svg/SvgStack.d.ts +0 -17
- package/dist/components/core/atoms/svg/index.d.ts +0 -12
- package/dist/components/core/atoms/types.d.ts +0 -47
- package/dist/components/core/molecules/Accordion.d.ts +0 -71
- package/dist/components/core/molecules/ActivationBlock.d.ts +0 -22
- package/dist/components/core/molecules/Alert.d.ts +0 -25
- package/dist/components/core/molecules/AnimatedCounter.d.ts +0 -18
- package/dist/components/core/molecules/AssetPicker.d.ts +0 -21
- package/dist/components/core/molecules/BloomQuizBlock.d.ts +0 -25
- package/dist/components/core/molecules/BranchingLogicBuilder.d.ts +0 -33
- package/dist/components/core/molecules/Breadcrumb.d.ts +0 -55
- package/dist/components/core/molecules/ButtonGroup.d.ts +0 -77
- package/dist/components/core/molecules/CalendarGrid.d.ts +0 -61
- package/dist/components/core/molecules/Card.d.ts +0 -58
- package/dist/components/core/molecules/Carousel.d.ts +0 -42
- package/dist/components/core/molecules/Chart.d.ts +0 -106
- package/dist/components/core/molecules/ChartLegend.d.ts +0 -20
- package/dist/components/core/molecules/Coachmark.d.ts +0 -47
- package/dist/components/core/molecules/ConfirmDialog.d.ts +0 -49
- package/dist/components/core/molecules/ConnectionBlock.d.ts +0 -18
- package/dist/components/core/molecules/Container.d.ts +0 -30
- package/dist/components/core/molecules/ContentRenderer.d.ts +0 -23
- package/dist/components/core/molecules/DataGrid.d.ts +0 -117
- package/dist/components/core/molecules/DataList.d.ts +0 -129
- package/dist/components/core/molecules/DateRangePicker.d.ts +0 -56
- package/dist/components/core/molecules/DateRangeSelector.d.ts +0 -21
- package/dist/components/core/molecules/DocBreadcrumb.d.ts +0 -20
- package/dist/components/core/molecules/DocPagination.d.ts +0 -21
- package/dist/components/core/molecules/DocSearch.d.ts +0 -22
- package/dist/components/core/molecules/DocSidebar.d.ts +0 -24
- package/dist/components/core/molecules/DocTOC.d.ts +0 -24
- package/dist/components/core/molecules/DocumentViewer.d.ts +0 -61
- package/dist/components/core/molecules/Drawer.d.ts +0 -47
- package/dist/components/core/molecules/EdgeDecoration.d.ts +0 -36
- package/dist/components/core/molecules/EmptyState.d.ts +0 -29
- package/dist/components/core/molecules/ErrorBoundary.d.ts +0 -54
- package/dist/components/core/molecules/ErrorState.d.ts +0 -14
- package/dist/components/core/molecules/FeatureGrid.d.ts +0 -19
- package/dist/components/core/molecules/FileTree.d.ts +0 -37
- package/dist/components/core/molecules/FilterGroup.d.ts +0 -61
- package/dist/components/core/molecules/Flex.d.ts +0 -43
- package/dist/components/core/molecules/FlipCard.d.ts +0 -24
- package/dist/components/core/molecules/FloatingActionButton.d.ts +0 -83
- package/dist/components/core/molecules/FormField.d.ts +0 -16
- package/dist/components/core/molecules/FormSection.d.ts +0 -39
- package/dist/components/core/molecules/FormSectionHeader.d.ts +0 -31
- package/dist/components/core/molecules/GradientDivider.d.ts +0 -15
- package/dist/components/core/molecules/GraphCanvas.d.ts +0 -83
- package/dist/components/core/molecules/GraphView.d.ts +0 -45
- package/dist/components/core/molecules/Grid.d.ts +0 -54
- package/dist/components/core/molecules/GridPicker.d.ts +0 -44
- package/dist/components/core/molecules/Header.d.ts +0 -113
- package/dist/components/core/molecules/IconPicker.d.ts +0 -18
- package/dist/components/core/molecules/InputGroup.d.ts +0 -24
- package/dist/components/core/molecules/JazariStateMachine.d.ts +0 -34
- package/dist/components/core/molecules/JsonTreeEditor.d.ts +0 -13
- package/dist/components/core/molecules/Lightbox.d.ts +0 -26
- package/dist/components/core/molecules/LikertScale.d.ts +0 -34
- package/dist/components/core/molecules/LineChart.d.ts +0 -35
- package/dist/components/core/molecules/LoadingState.d.ts +0 -7
- package/dist/components/core/molecules/MapView.d.ts +0 -87
- package/dist/components/core/molecules/MatrixQuestion.d.ts +0 -35
- package/dist/components/core/molecules/Menu.d.ts +0 -44
- package/dist/components/core/molecules/Meter.d.ts +0 -52
- package/dist/components/core/molecules/Modal.d.ts +0 -36
- package/dist/components/core/molecules/Navigation.d.ts +0 -67
- package/dist/components/core/molecules/NodeSlotEditor.d.ts +0 -17
- package/dist/components/core/molecules/NumberStepper.d.ts +0 -28
- package/dist/components/core/molecules/OnboardingSpotlight.d.ts +0 -27
- package/dist/components/core/molecules/OptionConstraintGroup.d.ts +0 -44
- package/dist/components/core/molecules/OrbitalVisualization.d.ts +0 -48
- package/dist/components/core/molecules/PageHeader.d.ts +0 -60
- package/dist/components/core/molecules/Pagination.d.ts +0 -71
- package/dist/components/core/molecules/Popover.d.ts +0 -39
- package/dist/components/core/molecules/PositionedCanvas.d.ts +0 -40
- package/dist/components/core/molecules/ProgressDots.d.ts +0 -24
- package/dist/components/core/molecules/PropertyInspector.d.ts +0 -38
- package/dist/components/core/molecules/PullToRefresh.d.ts +0 -22
- package/dist/components/core/molecules/QrScanner.d.ts +0 -24
- package/dist/components/core/molecules/QuizBlock.d.ts +0 -20
- package/dist/components/core/molecules/ReflectionBlock.d.ts +0 -23
- package/dist/components/core/molecules/RelationSelect.d.ts +0 -48
- package/dist/components/core/molecules/RepeatableFormSection.d.ts +0 -60
- package/dist/components/core/molecules/ReplyTree.d.ts +0 -46
- package/dist/components/core/molecules/RichBlockEditor.d.ts +0 -43
- package/dist/components/core/molecules/ScaledDiagram.d.ts +0 -20
- package/dist/components/core/molecules/SearchInput.d.ts +0 -60
- package/dist/components/core/molecules/Section.d.ts +0 -43
- package/dist/components/core/molecules/SidePanel.d.ts +0 -53
- package/dist/components/core/molecules/Sidebar.d.ts +0 -72
- package/dist/components/core/molecules/SignaturePad.d.ts +0 -46
- package/dist/components/core/molecules/SimpleGrid.d.ts +0 -27
- package/dist/components/core/molecules/Skeleton.d.ts +0 -35
- package/dist/components/core/molecules/SocialProof.d.ts +0 -25
- package/dist/components/core/molecules/SortableList.d.ts +0 -19
- package/dist/components/core/molecules/Split.d.ts +0 -41
- package/dist/components/core/molecules/StarRating.d.ts +0 -27
- package/dist/components/core/molecules/StatDisplay.d.ts +0 -58
- package/dist/components/core/molecules/SwipeableRow.d.ts +0 -26
- package/dist/components/core/molecules/TableView.d.ts +0 -111
- package/dist/components/core/molecules/Tabs.d.ts +0 -60
- package/dist/components/core/molecules/TagInput.d.ts +0 -52
- package/dist/components/core/molecules/Toast.d.ts +0 -36
- package/dist/components/core/molecules/Tooltip.d.ts +0 -25
- package/dist/components/core/molecules/UploadDropZone.d.ts +0 -28
- package/dist/components/core/molecules/VersionDiff.d.ts +0 -62
- package/dist/components/core/molecules/ViolationAlert.d.ts +0 -46
- package/dist/components/core/molecules/VoteStack.d.ts +0 -35
- package/dist/components/core/molecules/WizardContainer.d.ts +0 -166
- package/dist/components/core/molecules/WizardNavigation.d.ts +0 -61
- package/dist/components/core/molecules/WizardProgress.d.ts +0 -45
- package/dist/components/core/molecules/index.d.ts +0 -138
- package/dist/components/core/molecules/lessonSegmentUtils.d.ts +0 -18
- package/dist/components/core/molecules/markdown/CodeBlock.d.ts +0 -108
- package/dist/components/core/molecules/markdown/MarkdownContent.d.ts +0 -26
- package/dist/components/core/molecules/markdown/index.d.ts +0 -2
- package/dist/components/core/molecules/parseLessonSegments.d.ts +0 -44
- package/dist/components/core/molecules/useDataDnd.d.ts +0 -63
- package/dist/components/core/organisms/CardGrid.d.ts +0 -84
- package/dist/components/core/organisms/ChatBar.d.ts +0 -31
- package/dist/components/core/organisms/CodeRunnerPanel.d.ts +0 -42
- package/dist/components/core/organisms/ComponentPatterns.d.ts +0 -185
- package/dist/components/core/organisms/CustomPattern.d.ts +0 -105
- package/dist/components/core/organisms/DataTable.d.ts +0 -79
- package/dist/components/core/organisms/DetailPanel.d.ts +0 -80
- package/dist/components/core/organisms/DrawerSlot.d.ts +0 -42
- package/dist/components/core/organisms/Form.d.ts +0 -214
- package/dist/components/core/organisms/LayoutPatterns.d.ts +0 -108
- package/dist/components/core/organisms/List.d.ts +0 -81
- package/dist/components/core/organisms/MasterDetail.d.ts +0 -35
- package/dist/components/core/organisms/MediaGallery.d.ts +0 -63
- package/dist/components/core/organisms/ModalSlot.d.ts +0 -38
- package/dist/components/core/organisms/NotifyListener.d.ts +0 -15
- package/dist/components/core/organisms/SegmentRenderer.d.ts +0 -38
- package/dist/components/core/organisms/StatCard.d.ts +0 -65
- package/dist/components/core/organisms/StateMachineView.d.ts +0 -45
- package/dist/components/core/organisms/SubagentTracePanel.d.ts +0 -50
- package/dist/components/core/organisms/Timeline.d.ts +0 -71
- package/dist/components/core/organisms/ToastSlot.d.ts +0 -41
- package/dist/components/core/organisms/UISlotRenderer.d.ts +0 -116
- package/dist/components/core/organisms/book/index.d.ts +0 -7
- package/dist/components/core/organisms/book/types.d.ts +0 -62
- package/dist/components/core/organisms/component-registry.generated.d.ts +0 -9
- package/dist/components/core/organisms/debug/RuntimeDebugger.d.ts +0 -29
- package/dist/components/core/organisms/debug/WalkMinimap.d.ts +0 -17
- package/dist/components/core/organisms/debug/hooks/useDebugData.d.ts +0 -25
- package/dist/components/core/organisms/debug/index.d.ts +0 -13
- package/dist/components/core/organisms/debug/tabs/EntitiesTab.d.ts +0 -14
- package/dist/components/core/organisms/debug/tabs/EventDispatcherTab.d.ts +0 -18
- package/dist/components/core/organisms/debug/tabs/EventFlowTab.d.ts +0 -14
- package/dist/components/core/organisms/debug/tabs/GuardsPanel.d.ts +0 -14
- package/dist/components/core/organisms/debug/tabs/ServerBridgeTab.d.ts +0 -20
- package/dist/components/core/organisms/debug/tabs/TicksTab.d.ts +0 -14
- package/dist/components/core/organisms/debug/tabs/TraitsTab.d.ts +0 -14
- package/dist/components/core/organisms/debug/tabs/TransitionTimeline.d.ts +0 -19
- package/dist/components/core/organisms/debug/tabs/VerificationTab.d.ts +0 -17
- package/dist/components/core/organisms/index.d.ts +0 -33
- package/dist/components/core/organisms/layout/DashboardGrid.d.ts +0 -33
- package/dist/components/core/organisms/layout/MasterDetailLayout.d.ts +0 -32
- package/dist/components/core/organisms/layout/SplitPane.d.ts +0 -34
- package/dist/components/core/organisms/layout/TabbedContainer.d.ts +0 -42
- package/dist/components/core/organisms/layout/index.d.ts +0 -9
- package/dist/components/core/organisms/marketing-types.d.ts +0 -8
- package/dist/components/core/organisms/trace-edit-focus.d.ts +0 -14
- package/dist/components/core/organisms/types.d.ts +0 -72
- package/dist/components/core/templates/CounterTemplate.d.ts +0 -51
- package/dist/components/core/templates/DashboardLayout.d.ts +0 -110
- package/dist/components/core/templates/GenericAppTemplate.d.ts +0 -24
- package/dist/components/core/templates/index.d.ts +0 -10
- package/dist/components/core/templates/types.d.ts +0 -35
- package/dist/components/game/atoms/ChoiceButton.d.ts +0 -29
- package/dist/components/game/atoms/ControlButton.d.ts +0 -35
- package/dist/components/game/atoms/DialogueBubble.d.ts +0 -26
- package/dist/components/game/atoms/DrawShape.d.ts +0 -50
- package/dist/components/game/atoms/DrawSprite.d.ts +0 -47
- package/dist/components/game/atoms/DrawText.d.ts +0 -31
- package/dist/components/game/atoms/GameAudioToggle.d.ts +0 -34
- package/dist/components/game/atoms/HealthBar.d.ts +0 -32
- package/dist/components/game/atoms/MiniMap.d.ts +0 -40
- package/dist/components/game/atoms/ScoreDisplay.d.ts +0 -25
- package/dist/components/game/atoms/StateIndicator.d.ts +0 -29
- package/dist/components/game/atoms/TimerDisplay.d.ts +0 -22
- package/dist/components/game/molecules/ActionPalette.d.ts +0 -34
- package/dist/components/game/molecules/ActionTile.d.ts +0 -30
- package/dist/components/game/molecules/Canvas.d.ts +0 -96
- package/dist/components/game/molecules/Canvas2D.d.ts +0 -120
- package/dist/components/game/molecules/ControlGrid.d.ts +0 -49
- package/dist/components/game/molecules/DrawShapeLayer.d.ts +0 -19
- package/dist/components/game/molecules/DrawSpriteLayer.d.ts +0 -21
- package/dist/components/game/molecules/DrawTextLayer.d.ts +0 -22
- package/dist/components/game/molecules/GameHud.d.ts +0 -52
- package/dist/components/game/molecules/GameMenu.d.ts +0 -42
- package/dist/components/game/molecules/SequenceBar.d.ts +0 -51
- package/dist/components/game/molecules/StatBadge.d.ts +0 -39
- package/dist/components/game/molecules/StateGraph.d.ts +0 -38
- package/dist/components/game/molecules/StateJsonView.d.ts +0 -37
- package/dist/components/game/molecules/StateNode.d.ts +0 -31
- package/dist/components/game/molecules/TraitSlot.d.ts +0 -99
- package/dist/components/game/molecules/TraitStateViewer.d.ts +0 -52
- package/dist/components/game/molecules/TransitionArrow.d.ts +0 -31
- package/dist/components/game/molecules/index.d.ts +0 -39
- package/dist/components/game/patterns.d.ts +0 -20
- package/dist/components/game/templates/GameShell.d.ts +0 -35
- package/dist/components/learning/atoms/LearningCanvas.d.ts +0 -80
- package/dist/components/learning/molecules/AlgorithmCanvas.d.ts +0 -58
- package/dist/components/learning/molecules/BiologyCanvas.d.ts +0 -47
- package/dist/components/learning/molecules/ChemistryCanvas.d.ts +0 -55
- package/dist/components/learning/molecules/MathCanvas.d.ts +0 -61
- package/dist/components/learning/molecules/PhysicsCanvas.d.ts +0 -54
- package/dist/components/marketing/atoms/AnimatedCounter.d.ts +0 -20
- package/dist/components/marketing/atoms/AnimatedGraphic.d.ts +0 -32
- package/dist/components/marketing/atoms/AnimatedReveal.d.ts +0 -26
- package/dist/components/marketing/atoms/ContentSection.d.ts +0 -16
- package/dist/components/marketing/atoms/MarketingStatCard.d.ts +0 -13
- package/dist/components/marketing/atoms/PatternTile.d.ts +0 -41
- package/dist/components/marketing/molecules/ArticleSection.d.ts +0 -18
- package/dist/components/marketing/molecules/CTABanner.d.ts +0 -26
- package/dist/components/marketing/molecules/CaseStudyCard.d.ts +0 -24
- package/dist/components/marketing/molecules/CommunityLinks.d.ts +0 -28
- package/dist/components/marketing/molecules/FeatureCard.d.ts +0 -26
- package/dist/components/marketing/molecules/GeometricPattern.d.ts +0 -33
- package/dist/components/marketing/molecules/HeroSection.d.ts +0 -28
- package/dist/components/marketing/molecules/InstallBox.d.ts +0 -16
- package/dist/components/marketing/molecules/MarketingFooter.d.ts +0 -29
- package/dist/components/marketing/molecules/PricingCard.d.ts +0 -19
- package/dist/components/marketing/molecules/PricingGrid.d.ts +0 -13
- package/dist/components/marketing/molecules/PullQuote.d.ts +0 -14
- package/dist/components/marketing/molecules/ServiceCatalog.d.ts +0 -19
- package/dist/components/marketing/molecules/ShowcaseCard.d.ts +0 -18
- package/dist/components/marketing/molecules/SplitSection.d.ts +0 -19
- package/dist/components/marketing/molecules/StatsGrid.d.ts +0 -18
- package/dist/components/marketing/molecules/StepFlow.d.ts +0 -21
- package/dist/components/marketing/molecules/TagCloud.d.ts +0 -18
- package/dist/components/marketing/molecules/TeamCard.d.ts +0 -19
- package/dist/components/marketing/organisms/CaseStudyOrganism.d.ts +0 -29
- package/dist/components/marketing/organisms/FeatureGridOrganism.d.ts +0 -30
- package/dist/components/marketing/organisms/HeroOrganism.d.ts +0 -42
- package/dist/components/marketing/organisms/PricingOrganism.d.ts +0 -33
- package/dist/components/marketing/organisms/ShowcaseOrganism.d.ts +0 -34
- package/dist/components/marketing/organisms/StatsOrganism.d.ts +0 -23
- package/dist/components/marketing/organisms/StepFlowOrganism.d.ts +0 -29
- package/dist/components/marketing/organisms/TeamOrganism.d.ts +0 -28
- package/dist/components/marketing/organisms/book/BookChapterView.d.ts +0 -21
- package/dist/components/marketing/organisms/book/BookCoverPage.d.ts +0 -21
- package/dist/components/marketing/organisms/book/BookNavBar.d.ts +0 -19
- package/dist/components/marketing/organisms/book/BookTableOfContents.d.ts +0 -20
- package/dist/components/marketing/organisms/book/BookViewer.d.ts +0 -31
- package/dist/components/marketing/templates/AboutPageTemplate.d.ts +0 -53
- package/dist/components/marketing/templates/AuthLayout.d.ts +0 -15
- package/dist/components/marketing/templates/FeatureDetailPageTemplate.d.ts +0 -37
- package/dist/components/marketing/templates/LandingPageTemplate.d.ts +0 -70
- package/dist/components/marketing/templates/PricingPageTemplate.d.ts +0 -44
- package/dist/hooks/useAgentChat.d.ts +0 -105
- package/dist/hooks/useAlmadarDndCollision.d.ts +0 -34
- package/dist/hooks/useAuthContext.d.ts +0 -25
- package/dist/hooks/useCamera.d.ts +0 -57
- package/dist/hooks/useCanvasGestures.d.ts +0 -44
- package/dist/hooks/useClientEffects.d.ts +0 -88
- package/dist/hooks/useCompile.d.ts +0 -18
- package/dist/hooks/useDeepAgentGeneration.d.ts +0 -46
- package/dist/hooks/useDragReorder.d.ts +0 -26
- package/dist/hooks/useDraggable.d.ts +0 -25
- package/dist/hooks/useDropZone.d.ts +0 -23
- package/dist/hooks/useEventBus.d.ts +0 -99
- package/dist/hooks/useExtensions.d.ts +0 -32
- package/dist/hooks/useFileEditor.d.ts +0 -32
- package/dist/hooks/useFileSystem.d.ts +0 -50
- package/dist/hooks/useGameAudio.d.ts +0 -47
- package/dist/hooks/useGitHub.d.ts +0 -58
- package/dist/hooks/useImageCache.d.ts +0 -16
- package/dist/hooks/useInfiniteScroll.d.ts +0 -13
- package/dist/hooks/useLongPress.d.ts +0 -16
- package/dist/hooks/useOrbitalHistory.d.ts +0 -39
- package/dist/hooks/usePreview.d.ts +0 -57
- package/dist/hooks/usePullToRefresh.d.ts +0 -25
- package/dist/hooks/useQuerySingleton.d.ts +0 -79
- package/dist/hooks/useRenderInterpolation.d.ts +0 -33
- package/dist/hooks/useResolvedSchema.d.ts +0 -45
- package/dist/hooks/useSharedEntityStore.d.ts +0 -53
- package/dist/hooks/useSwipeGesture.d.ts +0 -26
- package/dist/hooks/useTapReveal.d.ts +0 -32
- package/dist/hooks/useTraitStateMachine.d.ts +0 -136
- package/dist/hooks/useTranslate.d.ts +0 -35
- package/dist/hooks/useUIEvents.d.ts +0 -41
- package/dist/hooks/useUnitSpriteAtlas.d.ts +0 -24
- package/dist/hooks/useValidation.d.ts +0 -46
- package/dist/lib/api-client.d.ts +0 -43
- package/dist/lib/atlasSlice.d.ts +0 -58
- package/dist/lib/boardEntity.d.ts +0 -44
- package/dist/lib/client-effect-executor.d.ts +0 -57
- package/dist/lib/cn.d.ts +0 -6
- package/dist/lib/createClientEffectHandlers.d.ts +0 -42
- package/dist/lib/data-resolver.d.ts +0 -55
- package/dist/lib/debug.d.ts +0 -36
- package/dist/lib/debugRegistry.d.ts +0 -30
- package/dist/lib/debugUtils.d.ts +0 -27
- package/dist/lib/drawable/contract.d.ts +0 -68
- package/dist/lib/drawable/hitTest.d.ts +0 -23
- package/dist/lib/drawable/paintDispatch.d.ts +0 -22
- package/dist/lib/drawable/projector.d.ts +0 -14
- package/dist/lib/drawable/projector3d.d.ts +0 -20
- package/dist/lib/drawable/three/Camera3D.d.ts +0 -60
- package/dist/lib/drawable/three/Canvas3DErrorBoundary.d.ts +0 -51
- package/dist/lib/drawable/three/Canvas3DHost.d.ts +0 -178
- package/dist/lib/drawable/three/Canvas3DLoadingState.d.ts +0 -44
- package/dist/lib/drawable/three/Drawable3D.d.ts +0 -20
- package/dist/lib/drawable/three/GameCamera3D.d.ts +0 -16
- package/dist/lib/drawable/three/Lighting3D.d.ts +0 -55
- package/dist/lib/drawable/three/ModelLoader.d.ts +0 -52
- package/dist/lib/drawable/three/Scene3D.d.ts +0 -37
- package/dist/lib/drawable/three/game3dTheme.d.ts +0 -14
- package/dist/lib/drawable/three/hooks/useAssetLoader.d.ts +0 -58
- package/dist/lib/drawable/three/hooks/useGameCanvas3DEvents.d.ts +0 -124
- package/dist/lib/drawable/three/hooks/useRaycaster.d.ts +0 -86
- package/dist/lib/drawable/three/hooks/useSceneGraph.d.ts +0 -67
- package/dist/lib/drawable/three/hooks/useThree.d.ts +0 -58
- package/dist/lib/drawable/three/lib/AssetLoader.d.ts +0 -80
- package/dist/lib/drawable/three/lib/culling.d.ts +0 -134
- package/dist/lib/drawable/three/lib/grid3D.d.ts +0 -154
- package/dist/lib/drawable/three/mesh3d.d.ts +0 -28
- package/dist/lib/editorUtils.d.ts +0 -114
- package/dist/lib/embedded-traits.d.ts +0 -39
- package/dist/lib/entityDebug.d.ts +0 -39
- package/dist/lib/fn-form-lambda.d.ts +0 -27
- package/dist/lib/game.d.ts +0 -92
- package/dist/lib/gameShared.d.ts +0 -18
- package/dist/lib/getNestedValue.d.ts +0 -34
- package/dist/lib/guardRegistry.d.ts +0 -33
- package/dist/lib/iconFamily.d.ts +0 -41
- package/dist/lib/imageCache.d.ts +0 -9
- package/dist/lib/init.d.ts +0 -14
- package/dist/lib/isometric.d.ts +0 -121
- package/dist/lib/isometricTypes.d.ts +0 -141
- package/dist/lib/jazari/index.d.ts +0 -5
- package/dist/lib/jazari/layout.d.ts +0 -31
- package/dist/lib/jazari/svg-paths.d.ts +0 -61
- package/dist/lib/jazari/types.d.ts +0 -91
- package/dist/lib/makeAsset.d.ts +0 -5
- package/dist/lib/mechanics.d.ts +0 -4
- package/dist/lib/offline-executor.d.ts +0 -239
- package/dist/lib/orbitalsByTrait.d.ts +0 -34
- package/dist/lib/painter2d.d.ts +0 -81
- package/dist/lib/parseContentSegments.d.ts +0 -42
- package/dist/lib/pattern-resolver.d.ts +0 -88
- package/dist/lib/perf.d.ts +0 -32
- package/dist/lib/physicsPresets.d.ts +0 -4
- package/dist/lib/physicsTypes.d.ts +0 -43
- package/dist/lib/prepareSchemaForPreview.d.ts +0 -71
- package/dist/lib/puzzleObject.d.ts +0 -41
- package/dist/lib/slot-definitions.d.ts +0 -33
- package/dist/lib/spriteAnimation.d.ts +0 -85
- package/dist/lib/spriteAnimationTypes.d.ts +0 -72
- package/dist/lib/spriteSheetConstants.d.ts +0 -16
- package/dist/lib/tickRegistry.d.ts +0 -40
- package/dist/lib/trait-binding-resolver.d.ts +0 -57
- package/dist/lib/traitRegistry.d.ts +0 -34
- package/dist/lib/verificationRegistry.d.ts +0 -97
- package/dist/lib/visualizer/browser.d.ts +0 -48
- package/dist/lib/visualizer/index.d.ts +0 -144
- package/dist/lib/webPainter2d.d.ts +0 -7
- package/dist/lib/wrapCallbackForEvent.d.ts +0 -16
- package/dist/marketing/index.d.cts +0 -1067
- package/dist/marketing/index.d.ts +0 -72
- package/dist/providers/CurrentPagePathContext.d.ts +0 -9
- package/dist/providers/DesignThemeContext.d.ts +0 -21
- package/dist/providers/EntitySchemaContext.d.ts +0 -81
- package/dist/providers/EventBusProvider.d.ts +0 -47
- package/dist/providers/GameAudioProvider.d.ts +0 -53
- package/dist/providers/OfflineModeProvider.d.ts +0 -79
- package/dist/providers/OrbitalProvider.d.ts +0 -110
- package/dist/providers/OrbitalThemeProvider.d.ts +0 -37
- package/dist/providers/SelectionProvider.d.ts +0 -82
- package/dist/providers/ServerBridge.d.ts +0 -102
- package/dist/providers/ThemeContext.d.ts +0 -104
- package/dist/providers/TraitProvider.d.ts +0 -53
- package/dist/providers/TraitScopeProvider.d.ts +0 -43
- package/dist/providers/UserContext.d.ts +0 -112
- package/dist/providers/VerificationProvider.d.ts +0 -64
- package/dist/providers/navigation.d.ts +0 -142
- package/dist/runtime/BrowserPlayground.d.ts +0 -34
- package/dist/runtime/OrbPreview.d.ts +0 -84
- package/dist/scripts/audit-tailwind-safelist.d.ts +0 -27
- package/dist/scripts/generate-design-system.d.ts +0 -29
- package/dist/scripts/generate-theme-from-schema.d.ts +0 -10
- package/dist/scripts/generate.d.ts +0 -12
- package/dist/scripts/suggest-components.d.ts +0 -31
- package/dist/scripts/types.d.ts +0 -129
- package/dist/tsup.config.d.ts +0 -3
- package/dist/types/renderer-types.d.ts +0 -146
- package/dist/types/runtime-types.d.ts +0 -21
- package/dist/types/slot-types.d.ts +0 -49
- package/dist/vitest.config.d.ts +0 -2
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import React__default, { ReactNode } from 'react';
|
|
3
|
+
import { ResolvedEntity, EventPayload, EntityRow, OrbitalSchema, BusEventSource, SExpr, ResolvedTrait, ResolvedTraitBinding } from '@almadar/core';
|
|
4
|
+
import { AnyPatternConfig } from '@almadar/core/patterns';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* EntitySchemaContext
|
|
8
|
+
*
|
|
9
|
+
* Minimal context providing entity schema definitions (field metadata).
|
|
10
|
+
* This is NOT a data store — actual entity rows flow through the state
|
|
11
|
+
* machine's `@payload.data` binding on the emitting trait's fetch-success
|
|
12
|
+
* transition and land on the rendering component's `entity` prop.
|
|
13
|
+
*
|
|
14
|
+
* Replaces EntityStore's schema functionality without the mock data generation.
|
|
15
|
+
*
|
|
16
|
+
* @packageDocumentation
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
interface EntitySchemaContextValue {
|
|
20
|
+
/** Entity definitions (schema metadata only) */
|
|
21
|
+
entities: Map<string, ResolvedEntity>;
|
|
22
|
+
/**
|
|
23
|
+
* Per-trait linkedEntity name. `ResolvedTrait` itself doesn't carry
|
|
24
|
+
* linkedEntity (it lives on `ResolvedTraitBinding` at the page-binding
|
|
25
|
+
* level), so OrbPreview pre-projects every page's trait bindings into
|
|
26
|
+
* a flat `traitName → entityName` map for the slot renderer.
|
|
27
|
+
*
|
|
28
|
+
* Used by SlotContentRenderer to resolve `entityDef` via
|
|
29
|
+
* `traitLinkedEntities.get(sourceTrait) → entities.get(...)` when the
|
|
30
|
+
* rendered pattern's `entity:` prop is a resolved value (V2 path)
|
|
31
|
+
* rather than a string entity-name. Without this lookup, form-section
|
|
32
|
+
* can't enrich its fields with entity field metadata (values enum,
|
|
33
|
+
* etc.) and an enum field renders as a plain text input. Closes VR3.
|
|
34
|
+
*/
|
|
35
|
+
traitLinkedEntities: ReadonlyMap<string, string>;
|
|
36
|
+
/**
|
|
37
|
+
* Per-trait owning-orbital name. Same shape as `traitLinkedEntities`,
|
|
38
|
+
* built from `schema.orbitals[].traits[]`. UISlotRenderer uses this
|
|
39
|
+
* to wrap each slot's rendered subtree in `TraitScopeProvider` so
|
|
40
|
+
* descendant pure components (Button, etc.) emit qualified
|
|
41
|
+
* `UI:Orbital.Trait.EVENT` keys via the scoped useEventBus.
|
|
42
|
+
*/
|
|
43
|
+
orbitalsByTrait: ReadonlyMap<string, string>;
|
|
44
|
+
}
|
|
45
|
+
interface EntitySchemaProviderProps {
|
|
46
|
+
/** Entity definitions from resolved schema */
|
|
47
|
+
entities: ResolvedEntity[];
|
|
48
|
+
/**
|
|
49
|
+
* Per-trait linkedEntity name, projected from every page's
|
|
50
|
+
* ResolvedTraitBinding. Optional for back-compat; when omitted,
|
|
51
|
+
* SlotContentRenderer's enrichment path can only follow the
|
|
52
|
+
* legacy V1 string-entity-name lookup.
|
|
53
|
+
*/
|
|
54
|
+
traitLinkedEntities?: ReadonlyMap<string, string>;
|
|
55
|
+
/**
|
|
56
|
+
* Per-trait owning-orbital name. Required for the runtime path's
|
|
57
|
+
* trait-scoped event qualification (Button etc. emit qualified keys
|
|
58
|
+
* via TraitScopeProvider). Optional for back-compat with consumers
|
|
59
|
+
* that don't yet thread the orbital map through.
|
|
60
|
+
*/
|
|
61
|
+
orbitalsByTrait?: ReadonlyMap<string, string>;
|
|
62
|
+
/** Children */
|
|
63
|
+
children: React__default.ReactNode;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Provides entity schema definitions to the component tree.
|
|
67
|
+
*
|
|
68
|
+
* This is a lightweight provider that only holds schema metadata (field definitions).
|
|
69
|
+
* Actual entity rows arrive via `@payload.data` on the rendering trait's
|
|
70
|
+
* success transition — they do NOT live in this context.
|
|
71
|
+
*/
|
|
72
|
+
declare function EntitySchemaProvider({ entities, traitLinkedEntities, orbitalsByTrait, children, }: EntitySchemaProviderProps): React__default.ReactElement;
|
|
73
|
+
/**
|
|
74
|
+
* Access entity schema definitions.
|
|
75
|
+
* Use this for field metadata (form building, filter enrichment).
|
|
76
|
+
* Actual entity rows flow via `@payload.data` on the state machine's
|
|
77
|
+
* success transition — never read them from a context.
|
|
78
|
+
*/
|
|
79
|
+
declare function useEntitySchema(): EntitySchemaContextValue;
|
|
80
|
+
/**
|
|
81
|
+
* Safe version of useEntitySchema that returns null when no provider is present.
|
|
82
|
+
* Used by UISlotRenderer which may render outside an EntitySchemaProvider (compiled mode).
|
|
83
|
+
*/
|
|
84
|
+
declare function useEntitySchemaOptional(): EntitySchemaContextValue | null;
|
|
85
|
+
|
|
86
|
+
/** Wire-format client effect tuple from the server response. */
|
|
87
|
+
type ClientEffectTuple = ['render-ui', string, AnyPatternConfig | null, ...SExpr[]] | ['navigate', string, ...SExpr[]] | ['notify', string, ...SExpr[]];
|
|
88
|
+
interface OrbitalEventResponse {
|
|
89
|
+
success: boolean;
|
|
90
|
+
transitioned: boolean;
|
|
91
|
+
states: Record<string, string>;
|
|
92
|
+
/**
|
|
93
|
+
* Server-cascade events carried back in the response. Each entry has a
|
|
94
|
+
* `source: BusEventSource` stamped by the compiled handler (`emit ...
|
|
95
|
+
* { source: __ORBITAL_SOURCE }`) so the client can re-broadcast on the
|
|
96
|
+
* qualified `UI:Orbital.Trait.EVENT` bus key (gap #13).
|
|
97
|
+
*/
|
|
98
|
+
emittedEvents?: Array<{
|
|
99
|
+
event: string;
|
|
100
|
+
payload?: EventPayload;
|
|
101
|
+
source?: BusEventSource;
|
|
102
|
+
}>;
|
|
103
|
+
data?: Record<string, EntityRow[]>;
|
|
104
|
+
clientEffects?: ClientEffectTuple[];
|
|
105
|
+
/**
|
|
106
|
+
* Same effects as `clientEffects`, paired with the trait that produced
|
|
107
|
+
* each one. When present, prefer this for trait attribution. Falls back
|
|
108
|
+
* to legacy `clientEffects` parsing on older servers.
|
|
109
|
+
*/
|
|
110
|
+
clientEffectsByTrait?: Array<{
|
|
111
|
+
traitName: string;
|
|
112
|
+
effect: ClientEffectTuple;
|
|
113
|
+
}>;
|
|
114
|
+
error?: string;
|
|
115
|
+
}
|
|
116
|
+
interface ServerClientEffect {
|
|
117
|
+
type: 'render-ui' | 'navigate' | 'notify';
|
|
118
|
+
slot?: string;
|
|
119
|
+
pattern?: AnyPatternConfig;
|
|
120
|
+
route?: string;
|
|
121
|
+
params?: EventPayload;
|
|
122
|
+
message?: string;
|
|
123
|
+
/**
|
|
124
|
+
* Trait that emitted this effect. Used by `<TraitFrame>` to resolve
|
|
125
|
+
* `@trait.X` bindings. Undefined when the server didn't tag the effect
|
|
126
|
+
* (older servers that pre-date the per-trait sidecar).
|
|
127
|
+
*/
|
|
128
|
+
traitName?: string;
|
|
129
|
+
}
|
|
130
|
+
/** Metadata about what the server returned, for debugger logging */
|
|
131
|
+
interface ServerResponseMeta {
|
|
132
|
+
success: boolean;
|
|
133
|
+
clientEffects: number;
|
|
134
|
+
dataEntities: Record<string, number>;
|
|
135
|
+
/** Raw entity data from server response (for EntityStore advancement) */
|
|
136
|
+
data?: Record<string, EntityRow[]>;
|
|
137
|
+
emittedEvents: string[];
|
|
138
|
+
error?: string;
|
|
139
|
+
}
|
|
140
|
+
interface SendEventResult {
|
|
141
|
+
effects: ServerClientEffect[];
|
|
142
|
+
meta: ServerResponseMeta;
|
|
143
|
+
}
|
|
144
|
+
interface ServerBridgeContextValue {
|
|
145
|
+
connected: boolean;
|
|
146
|
+
sendEvent: (orbitalName: string, event: string, payload?: EventPayload) => Promise<SendEventResult>;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Transport adapter for ServerBridgeProvider. Decouples the bridge's
|
|
150
|
+
* cascade-rebroadcast / effect-parsing logic from its wire format.
|
|
151
|
+
*
|
|
152
|
+
* - The `serverUrl` mode (default) uses an HTTP transport that POSTs to
|
|
153
|
+
* `/register`, `/unregister`, `/:orbital/events`. This is what canonical
|
|
154
|
+
* playground-runtime (`tools/runtime-verify`) and apps/builder-server
|
|
155
|
+
* speak.
|
|
156
|
+
* - The `transport` mode lets a consumer plug in a direct function-call
|
|
157
|
+
* adapter — used by `<BrowserPlayground>` to invoke
|
|
158
|
+
* `OrbitalServerRuntime.processOrbitalEvent` in-process, no HTTP, no
|
|
159
|
+
* server. Both modes return the same `OrbitalEventResponse` shape so the
|
|
160
|
+
* cascade-rebroadcast logic is identical downstream.
|
|
161
|
+
*/
|
|
162
|
+
interface ServerBridgeTransport {
|
|
163
|
+
register: (schema: OrbitalSchema) => Promise<boolean>;
|
|
164
|
+
unregister: () => Promise<void>;
|
|
165
|
+
sendEvent: (orbitalName: string, event: string, payload?: EventPayload) => Promise<OrbitalEventResponse>;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Access the server bridge. Returns a no-op stub when outside the provider.
|
|
169
|
+
*/
|
|
170
|
+
declare function useServerBridge(): ServerBridgeContextValue;
|
|
171
|
+
interface ServerBridgeProviderProps {
|
|
172
|
+
schema: OrbitalSchema;
|
|
173
|
+
/** HTTP server URL (canonical playground-runtime / apps/builder-server). */
|
|
174
|
+
serverUrl?: string;
|
|
175
|
+
/**
|
|
176
|
+
* Custom transport adapter. Use this for in-process execution (e.g.
|
|
177
|
+
* `<BrowserPlayground>` invokes `OrbitalServerRuntime.processOrbitalEvent`
|
|
178
|
+
* directly). Mutually exclusive with `serverUrl`.
|
|
179
|
+
*/
|
|
180
|
+
transport?: ServerBridgeTransport;
|
|
181
|
+
children: ReactNode;
|
|
182
|
+
}
|
|
183
|
+
declare function ServerBridgeProvider({ schema, serverUrl, transport: customTransport, children, }: ServerBridgeProviderProps): React.JSX.Element;
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* TraitProvider Component
|
|
187
|
+
*
|
|
188
|
+
* Provides trait state machines to child components via React context.
|
|
189
|
+
*
|
|
190
|
+
* @packageDocumentation
|
|
191
|
+
*/
|
|
192
|
+
|
|
193
|
+
interface TraitInstance {
|
|
194
|
+
/** Trait name */
|
|
195
|
+
name: string;
|
|
196
|
+
/** Current state */
|
|
197
|
+
currentState: string;
|
|
198
|
+
/** Available events (can be triggered) */
|
|
199
|
+
availableEvents: string[];
|
|
200
|
+
/** Dispatch an event to the state machine */
|
|
201
|
+
dispatch: (eventKey: string, payload?: EventPayload) => void;
|
|
202
|
+
/** Check if an event can be dispatched */
|
|
203
|
+
canDispatch: (eventKey: string) => boolean;
|
|
204
|
+
/** Get the full trait definition */
|
|
205
|
+
trait: ResolvedTrait;
|
|
206
|
+
}
|
|
207
|
+
interface TraitContextValue {
|
|
208
|
+
/** All trait instances on this page */
|
|
209
|
+
traits: Map<string, TraitInstance>;
|
|
210
|
+
/** Get a trait instance by name */
|
|
211
|
+
getTrait: (name: string) => TraitInstance | undefined;
|
|
212
|
+
/** Dispatch an event to a specific trait */
|
|
213
|
+
dispatchToTrait: (traitName: string, eventKey: string, payload?: EventPayload) => void;
|
|
214
|
+
/** Check if an event can be dispatched to a trait */
|
|
215
|
+
canDispatch: (traitName: string, eventKey: string) => boolean;
|
|
216
|
+
}
|
|
217
|
+
declare const TraitContext: React__default.Context<TraitContextValue | null>;
|
|
218
|
+
interface TraitProviderProps {
|
|
219
|
+
/** Trait bindings for this page */
|
|
220
|
+
traits: ResolvedTraitBinding[];
|
|
221
|
+
/** Entity map for context */
|
|
222
|
+
entities: Map<string, ResolvedEntity>;
|
|
223
|
+
/** Children to render */
|
|
224
|
+
children: React__default.ReactNode;
|
|
225
|
+
}
|
|
226
|
+
declare function TraitProvider({ traits: traitBindings, children, }: TraitProviderProps): React__default.ReactElement;
|
|
227
|
+
/**
|
|
228
|
+
* Access the trait context from within the TraitProvider.
|
|
229
|
+
*/
|
|
230
|
+
declare function useTraitContext(): TraitContextValue;
|
|
231
|
+
/**
|
|
232
|
+
* Access a specific trait instance.
|
|
233
|
+
*/
|
|
234
|
+
declare function useTrait(traitName: string): TraitInstance | undefined;
|
|
235
|
+
|
|
236
|
+
export { type EntitySchemaContextValue as E, type SendEventResult as S, TraitContext as T, EntitySchemaProvider as a, type EntitySchemaProviderProps as b, type ServerBridgeContextValue as c, ServerBridgeProvider as d, type ServerBridgeProviderProps as e, type ServerBridgeTransport as f, type ServerClientEffect as g, type ServerResponseMeta as h, type TraitContextValue as i, type TraitInstance as j, TraitProvider as k, type TraitProviderProps as l, useEntitySchemaOptional as m, useServerBridge as n, useTrait as o, useTraitContext as p, useEntitySchema as u };
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { U as UISlotManager, b as SlotContent } from './useUISlots-BesZYMks.js';
|
|
3
|
+
import { UISlot } from '@almadar/core';
|
|
4
|
+
|
|
1
5
|
/**
|
|
2
6
|
* UISlotContext
|
|
3
7
|
*
|
|
@@ -18,21 +22,20 @@
|
|
|
18
22
|
*
|
|
19
23
|
* @packageDocumentation
|
|
20
24
|
*/
|
|
21
|
-
|
|
22
|
-
import { type UISlotManager, type UISlot, type SlotContent, type SlotProps, type SlotPropValue, type SlotCallback, type SlotRenderConfig, type SlotAnimation, type SlotChangeCallback } from '../hooks/useUISlots';
|
|
25
|
+
|
|
23
26
|
/**
|
|
24
27
|
* Context for the UI Slot Manager
|
|
25
28
|
*/
|
|
26
|
-
declare const UISlotContext:
|
|
27
|
-
|
|
28
|
-
children:
|
|
29
|
+
declare const UISlotContext: React__default.Context<UISlotManager | null>;
|
|
30
|
+
interface UISlotProviderProps {
|
|
31
|
+
children: React__default.ReactNode;
|
|
29
32
|
}
|
|
30
33
|
/**
|
|
31
34
|
* Provider component that creates and provides the UI Slot Manager.
|
|
32
35
|
*
|
|
33
36
|
* Must wrap any components that use traits with render_ui effects.
|
|
34
37
|
*/
|
|
35
|
-
|
|
38
|
+
declare function UISlotProvider({ children }: UISlotProviderProps): React__default.ReactElement;
|
|
36
39
|
/**
|
|
37
40
|
* Hook to access the UI Slot Manager.
|
|
38
41
|
*
|
|
@@ -61,15 +64,16 @@ export declare function UISlotProvider({ children }: UISlotProviderProps): React
|
|
|
61
64
|
* }
|
|
62
65
|
* ```
|
|
63
66
|
*/
|
|
64
|
-
|
|
67
|
+
declare function useUISlots(): UISlotManager;
|
|
65
68
|
/**
|
|
66
69
|
* Hook to get content for a specific slot.
|
|
67
70
|
*
|
|
68
71
|
* Useful for components that only need to read slot state.
|
|
69
72
|
*/
|
|
70
|
-
|
|
73
|
+
declare function useSlotContent(slot: UISlot): SlotContent | null;
|
|
71
74
|
/**
|
|
72
75
|
* Hook to check if a slot has content.
|
|
73
76
|
*/
|
|
74
|
-
|
|
75
|
-
|
|
77
|
+
declare function useSlotHasContent(slot: UISlot): boolean;
|
|
78
|
+
|
|
79
|
+
export { UISlotContext as U, UISlotProvider as a, useSlotHasContent as b, useUISlots as c, useSlotContent as u };
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { U as UISlotManager, b as SlotContent } from './useUISlots-BesZYMks.cjs';
|
|
3
|
+
import { UISlot } from '@almadar/core';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* UISlotContext
|
|
7
|
+
*
|
|
8
|
+
* React context for providing the UI Slot Manager throughout the application.
|
|
9
|
+
* Traits use this context to render content into slots via render_ui effects.
|
|
10
|
+
*
|
|
11
|
+
* Usage:
|
|
12
|
+
* ```tsx
|
|
13
|
+
* // In App.tsx or layout
|
|
14
|
+
* <UISlotProvider>
|
|
15
|
+
* <App />
|
|
16
|
+
* </UISlotProvider>
|
|
17
|
+
*
|
|
18
|
+
* // In trait hooks or components
|
|
19
|
+
* const { render, clear } = useUISlots();
|
|
20
|
+
* render({ target: 'modal', pattern: 'form-section', props: {...} });
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @packageDocumentation
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Context for the UI Slot Manager
|
|
28
|
+
*/
|
|
29
|
+
declare const UISlotContext: React__default.Context<UISlotManager | null>;
|
|
30
|
+
interface UISlotProviderProps {
|
|
31
|
+
children: React__default.ReactNode;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Provider component that creates and provides the UI Slot Manager.
|
|
35
|
+
*
|
|
36
|
+
* Must wrap any components that use traits with render_ui effects.
|
|
37
|
+
*/
|
|
38
|
+
declare function UISlotProvider({ children }: UISlotProviderProps): React__default.ReactElement;
|
|
39
|
+
/**
|
|
40
|
+
* Hook to access the UI Slot Manager.
|
|
41
|
+
*
|
|
42
|
+
* Must be used within a UISlotProvider.
|
|
43
|
+
*
|
|
44
|
+
* @throws Error if used outside of UISlotProvider
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```tsx
|
|
48
|
+
* function MyTraitHook() {
|
|
49
|
+
* const { render, clear } = useUISlots();
|
|
50
|
+
*
|
|
51
|
+
* const showModal = () => {
|
|
52
|
+
* render({
|
|
53
|
+
* target: 'modal',
|
|
54
|
+
* pattern: 'form-section',
|
|
55
|
+
* props: { title: 'Create Item' },
|
|
56
|
+
* });
|
|
57
|
+
* };
|
|
58
|
+
*
|
|
59
|
+
* const closeModal = () => {
|
|
60
|
+
* clear('modal');
|
|
61
|
+
* };
|
|
62
|
+
*
|
|
63
|
+
* return { showModal, closeModal };
|
|
64
|
+
* }
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
declare function useUISlots(): UISlotManager;
|
|
68
|
+
/**
|
|
69
|
+
* Hook to get content for a specific slot.
|
|
70
|
+
*
|
|
71
|
+
* Useful for components that only need to read slot state.
|
|
72
|
+
*/
|
|
73
|
+
declare function useSlotContent(slot: UISlot): SlotContent | null;
|
|
74
|
+
/**
|
|
75
|
+
* Hook to check if a slot has content.
|
|
76
|
+
*/
|
|
77
|
+
declare function useSlotHasContent(slot: UISlot): boolean;
|
|
78
|
+
|
|
79
|
+
export { UISlotContext as U, UISlotProvider as a, useSlotHasContent as b, useUISlots as c, useSlotContent as u };
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import React__default, { ReactNode, ReactElement } from 'react';
|
|
3
|
+
import { ThemeRef, FieldValue } from '@almadar/core';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Unified ThemeContext - Single provider for theme and color mode
|
|
7
|
+
*
|
|
8
|
+
* Combines design theme selection (ocean, wireframe, etc.) with
|
|
9
|
+
* color mode (light/dark) into a single, simple system.
|
|
10
|
+
*
|
|
11
|
+
* Uses a single data attribute: data-theme="ocean-light" or data-theme="ocean-dark"
|
|
12
|
+
*
|
|
13
|
+
* @packageDocumentation
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/** Color mode preference */
|
|
17
|
+
type ColorMode = "light" | "dark" | "system";
|
|
18
|
+
/** Resolved color mode (what's actually applied) */
|
|
19
|
+
type ResolvedMode = "light" | "dark";
|
|
20
|
+
/** Theme definition */
|
|
21
|
+
interface UIThemeDefinition {
|
|
22
|
+
/** Theme identifier (e.g., "ocean", "wireframe") */
|
|
23
|
+
name: string;
|
|
24
|
+
/** Display name for UI (e.g., "Ocean Blue") */
|
|
25
|
+
displayName?: string;
|
|
26
|
+
/** Whether this theme has light mode styles */
|
|
27
|
+
hasLightMode?: boolean;
|
|
28
|
+
/** Whether this theme has dark mode styles */
|
|
29
|
+
hasDarkMode?: boolean;
|
|
30
|
+
}
|
|
31
|
+
/** Built-in themes available in the design system */
|
|
32
|
+
declare const BUILT_IN_THEMES: UIThemeDefinition[];
|
|
33
|
+
/** Theme context value */
|
|
34
|
+
interface ThemeContextValue {
|
|
35
|
+
/** Current theme name */
|
|
36
|
+
theme: string;
|
|
37
|
+
/** Current color mode setting (may be 'system') */
|
|
38
|
+
mode: ColorMode;
|
|
39
|
+
/** Resolved color mode (always 'light' or 'dark') */
|
|
40
|
+
resolvedMode: ResolvedMode;
|
|
41
|
+
/** Set the theme */
|
|
42
|
+
setTheme: (theme: string) => void;
|
|
43
|
+
/** Set the color mode */
|
|
44
|
+
setMode: (mode: ColorMode) => void;
|
|
45
|
+
/** Toggle between light and dark modes */
|
|
46
|
+
toggleMode: () => void;
|
|
47
|
+
/** Available themes */
|
|
48
|
+
availableThemes: UIThemeDefinition[];
|
|
49
|
+
/** The full theme string applied to data-theme (e.g., "ocean-light") */
|
|
50
|
+
appliedTheme: string;
|
|
51
|
+
}
|
|
52
|
+
declare const ThemeContext: React__default.Context<ThemeContextValue | undefined>;
|
|
53
|
+
interface ThemeProviderProps {
|
|
54
|
+
children: React__default.ReactNode;
|
|
55
|
+
/** Available themes (will be merged with built-in themes) */
|
|
56
|
+
themes?: readonly UIThemeDefinition[] | UIThemeDefinition[];
|
|
57
|
+
/** Default theme name */
|
|
58
|
+
defaultTheme?: string;
|
|
59
|
+
/** Default color mode */
|
|
60
|
+
defaultMode?: ColorMode;
|
|
61
|
+
/** Optional target element ref — when provided, theme attributes are applied to this element instead of document.documentElement */
|
|
62
|
+
targetRef?: React__default.RefObject<HTMLElement>;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Unified ThemeProvider component
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```tsx
|
|
69
|
+
* // Basic usage with built-in themes
|
|
70
|
+
* <ThemeProvider defaultTheme="wireframe" defaultMode="light">
|
|
71
|
+
* <App />
|
|
72
|
+
* </ThemeProvider>
|
|
73
|
+
*
|
|
74
|
+
* // With custom themes from orbital schema
|
|
75
|
+
* import { THEMES } from './generated/theme-manifest';
|
|
76
|
+
* <ThemeProvider themes={THEMES} defaultTheme="ocean" defaultMode="system">
|
|
77
|
+
* <App />
|
|
78
|
+
* </ThemeProvider>
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
declare const ThemeProvider: React__default.FC<ThemeProviderProps>;
|
|
82
|
+
/**
|
|
83
|
+
* Hook for accessing theme context
|
|
84
|
+
*
|
|
85
|
+
* @returns Theme context value
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```tsx
|
|
89
|
+
* const { theme, resolvedMode, toggleMode, setTheme } = useTheme();
|
|
90
|
+
*
|
|
91
|
+
* // Toggle dark mode
|
|
92
|
+
* <button onClick={toggleMode}>
|
|
93
|
+
* {resolvedMode === 'dark' ? 'Light' : 'Dark'}
|
|
94
|
+
* </button>
|
|
95
|
+
*
|
|
96
|
+
* // Change theme
|
|
97
|
+
* <select value={theme} onChange={(e) => setTheme(e.target.value)}>
|
|
98
|
+
* {availableThemes.map(t => (
|
|
99
|
+
* <option key={t.name} value={t.name}>{t.displayName || t.name}</option>
|
|
100
|
+
* ))}
|
|
101
|
+
* </select>
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
declare function useTheme(): ThemeContextValue;
|
|
105
|
+
type DesignTheme = UIThemeDefinition;
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* OrbitalThemeProvider — runtime application of `OrbitalDefinition.theme`.
|
|
109
|
+
*
|
|
110
|
+
* Wraps an orbital's rendered subtree in a wrapping `<div>` that sets the
|
|
111
|
+
* CSS variables derived from `theme.tokens` (and `variants.dark` when the
|
|
112
|
+
* resolved color mode is dark). Inline custom-property declarations on the
|
|
113
|
+
* wrapper override any `[data-theme]` selector rule for the same variable
|
|
114
|
+
* within the subtree, while letting unset variables cascade from the parent.
|
|
115
|
+
*
|
|
116
|
+
* Mapping is delegated to `themeTokensToCssVars`, which mirrors the Rust
|
|
117
|
+
* compiler's `generate_tokens_css`. Compile-time and runtime produce the
|
|
118
|
+
* same CSS variable map for the same `ThemeDefinition` input, so a Studio
|
|
119
|
+
* Design System edit and an `orbital compile` of the same schema render
|
|
120
|
+
* identically.
|
|
121
|
+
*
|
|
122
|
+
* No-op when:
|
|
123
|
+
* - `theme` is `undefined` (orbital declares no theme — parent cascades)
|
|
124
|
+
* - `theme` is a string ref that didn't get inlined upstream
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* ```tsx
|
|
128
|
+
* <OrbitalThemeProvider theme={orbital.theme}>
|
|
129
|
+
* <UISlotRenderer />
|
|
130
|
+
* </OrbitalThemeProvider>
|
|
131
|
+
* ```
|
|
132
|
+
*/
|
|
133
|
+
|
|
134
|
+
interface OrbitalThemeProviderProps {
|
|
135
|
+
/** The `OrbitalDefinition.theme` value (inline definition or string ref). */
|
|
136
|
+
theme?: ThemeRef;
|
|
137
|
+
children: ReactNode;
|
|
138
|
+
}
|
|
139
|
+
declare function OrbitalThemeProvider({ theme, children }: OrbitalThemeProviderProps): ReactElement;
|
|
140
|
+
declare namespace OrbitalThemeProvider {
|
|
141
|
+
var displayName: string;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* @deprecated Use ThemeProvider from ThemeContext instead
|
|
146
|
+
*/
|
|
147
|
+
declare const DesignThemeProvider: React.FC<ThemeProviderProps>;
|
|
148
|
+
/**
|
|
149
|
+
* @deprecated Use useTheme from ThemeContext instead
|
|
150
|
+
*
|
|
151
|
+
* This wrapper provides backward compatibility with the old API.
|
|
152
|
+
*/
|
|
153
|
+
declare function useDesignTheme(): {
|
|
154
|
+
designTheme: string;
|
|
155
|
+
setDesignTheme: (theme: string) => void;
|
|
156
|
+
availableThemes: string[];
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
declare const CurrentPagePathContext: React__default.Context<string | undefined>;
|
|
160
|
+
interface CurrentPagePathProviderProps {
|
|
161
|
+
value: string | undefined;
|
|
162
|
+
children: React__default.ReactNode;
|
|
163
|
+
}
|
|
164
|
+
declare const CurrentPagePathProvider: React__default.FC<CurrentPagePathProviderProps>;
|
|
165
|
+
declare const useCurrentPagePath: () => string | undefined;
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* UserContext
|
|
169
|
+
*
|
|
170
|
+
* React context for providing user data throughout the application.
|
|
171
|
+
* Enables @user bindings in S-expressions for role-based UI and permissions.
|
|
172
|
+
*
|
|
173
|
+
* Usage:
|
|
174
|
+
* ```tsx
|
|
175
|
+
* // In App.tsx or layout
|
|
176
|
+
* <UserProvider user={{ id: '123', role: 'admin', permissions: ['read', 'write'] }}>
|
|
177
|
+
* <App />
|
|
178
|
+
* </UserProvider>
|
|
179
|
+
*
|
|
180
|
+
* // In components - access via hook
|
|
181
|
+
* const { user, hasRole, hasPermission } = useUser();
|
|
182
|
+
* if (hasRole('admin')) { ... }
|
|
183
|
+
* if (hasPermission('delete')) { ... }
|
|
184
|
+
* ```
|
|
185
|
+
*
|
|
186
|
+
* @packageDocumentation
|
|
187
|
+
*/
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* User data for @user bindings.
|
|
191
|
+
* Matches UserContext type from evaluator/context.ts
|
|
192
|
+
*/
|
|
193
|
+
interface UserData {
|
|
194
|
+
/** User's unique ID */
|
|
195
|
+
id: string;
|
|
196
|
+
/** User's email */
|
|
197
|
+
email?: string;
|
|
198
|
+
/** User's display name */
|
|
199
|
+
name?: string;
|
|
200
|
+
/** User's role (for RBAC) */
|
|
201
|
+
role?: string;
|
|
202
|
+
/** User's permissions */
|
|
203
|
+
permissions?: string[];
|
|
204
|
+
/** Additional custom profile fields */
|
|
205
|
+
[key: string]: FieldValue | undefined;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* User context value.
|
|
209
|
+
*/
|
|
210
|
+
interface UserContextValue {
|
|
211
|
+
/** Current user data (null if not logged in) */
|
|
212
|
+
user: UserData | null;
|
|
213
|
+
/** Check if user is logged in */
|
|
214
|
+
isLoggedIn: boolean;
|
|
215
|
+
/** Check if user has a specific role */
|
|
216
|
+
hasRole: (role: string) => boolean;
|
|
217
|
+
/** Check if user has a specific permission */
|
|
218
|
+
hasPermission: (permission: string) => boolean;
|
|
219
|
+
/** Check if user has any of the specified roles */
|
|
220
|
+
hasAnyRole: (roles: string[]) => boolean;
|
|
221
|
+
/** Check if user has all of the specified permissions */
|
|
222
|
+
hasAllPermissions: (permissions: string[]) => boolean;
|
|
223
|
+
/** Get a user field by path (for @user.field bindings) */
|
|
224
|
+
getUserField: (path: string) => FieldValue | undefined;
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Anonymous user for when no user is logged in.
|
|
228
|
+
*/
|
|
229
|
+
declare const ANONYMOUS_USER: UserData;
|
|
230
|
+
declare const UserContext: React__default.Context<UserContextValue | null>;
|
|
231
|
+
interface UserProviderProps {
|
|
232
|
+
/** User data (null if not logged in) */
|
|
233
|
+
user?: UserData | null;
|
|
234
|
+
/** Children to render */
|
|
235
|
+
children: React__default.ReactNode;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Provider component that provides user context to the application.
|
|
239
|
+
*
|
|
240
|
+
* Provides RBAC helpers and field access for @user bindings.
|
|
241
|
+
*/
|
|
242
|
+
declare function UserProvider({ user, children, }: UserProviderProps): React__default.ReactElement;
|
|
243
|
+
/**
|
|
244
|
+
* Hook to access the user context.
|
|
245
|
+
*
|
|
246
|
+
* Returns default values if used outside of UserProvider (for resilience).
|
|
247
|
+
*
|
|
248
|
+
* @example
|
|
249
|
+
* ```tsx
|
|
250
|
+
* function AdminPanel() {
|
|
251
|
+
* const { user, hasRole, hasPermission } = useUser();
|
|
252
|
+
*
|
|
253
|
+
* if (!hasRole('admin') && !hasPermission('admin:access')) {
|
|
254
|
+
* return <AccessDenied />;
|
|
255
|
+
* }
|
|
256
|
+
*
|
|
257
|
+
* return <div>Welcome, {user?.name}</div>;
|
|
258
|
+
* }
|
|
259
|
+
* ```
|
|
260
|
+
*/
|
|
261
|
+
declare function useUser(): UserContextValue;
|
|
262
|
+
/**
|
|
263
|
+
* Hook to check if user has a specific role.
|
|
264
|
+
* Convenience wrapper around useUser().hasRole().
|
|
265
|
+
*/
|
|
266
|
+
declare function useHasRole(role: string): boolean;
|
|
267
|
+
/**
|
|
268
|
+
* Hook to check if user has a specific permission.
|
|
269
|
+
* Convenience wrapper around useUser().hasPermission().
|
|
270
|
+
*/
|
|
271
|
+
declare function useHasPermission(permission: string): boolean;
|
|
272
|
+
/**
|
|
273
|
+
* Hook to get user data for @user bindings in S-expressions.
|
|
274
|
+
* Returns the user data object compatible with EvaluationContext.user
|
|
275
|
+
*/
|
|
276
|
+
declare function useUserForEvaluation(): UserData | undefined;
|
|
277
|
+
|
|
278
|
+
export { ANONYMOUS_USER as A, BUILT_IN_THEMES as B, type ColorMode as C, type DesignTheme as D, OrbitalThemeProvider as O, type ResolvedMode as R, ThemeContext as T, type UIThemeDefinition as U, CurrentPagePathContext as a, CurrentPagePathProvider as b, type CurrentPagePathProviderProps as c, DesignThemeProvider as d, type OrbitalThemeProviderProps as e, ThemeProvider as f, type ThemeProviderProps as g, UserContext as h, type UserContextValue as i, type UserData as j, UserProvider as k, type UserProviderProps as l, useDesignTheme as m, useHasPermission as n, useHasRole as o, useTheme as p, useUser as q, useUserForEvaluation as r, useCurrentPagePath as u };
|