@almadar/ui 5.110.0 → 5.112.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 +126 -29
- package/dist/avl/index.js +128 -31
- package/dist/avl-schema-parser-DKRm-nyh.d.cts +611 -0
- package/dist/avl-schema-parser-DKRm-nyh.d.ts +611 -0
- package/dist/cn-BbPvQLHt.d.cts +294 -0
- package/dist/cn-BbPvQLHt.d.ts +294 -0
- package/dist/components/index.cjs +56 -18
- package/dist/components/index.d.cts +11224 -0
- package/dist/components/index.d.ts +11224 -6
- package/dist/components/index.js +56 -18
- 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 +317 -178
- package/dist/lib/drawable/three/index.d.cts +1484 -0
- package/dist/lib/drawable/three/index.d.ts +1483 -38
- package/dist/lib/drawable/three/index.js +161 -22
- package/dist/lib/index.cjs +8 -0
- package/dist/lib/index.d.cts +504 -0
- package/dist/lib/index.d.ts +503 -18
- package/dist/lib/index.js +8 -1
- 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/providers/index.cjs +56 -18
- package/dist/providers/index.d.cts +428 -0
- package/dist/providers/index.d.ts +427 -26
- package/dist/providers/index.js +56 -18
- 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 +126 -29
- package/dist/runtime/index.d.cts +426 -0
- package/dist/runtime/index.d.ts +421 -16
- package/dist/runtime/index.js +128 -31
- 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 +13 -13
- 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 -91
- 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
package/dist/runtime/index.js
CHANGED
|
@@ -11,7 +11,7 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
|
11
11
|
import { createPortal } from 'react-dom';
|
|
12
12
|
import { useTranslate } from '@almadar/ui/hooks';
|
|
13
13
|
import { useUISlots, UISlotProvider, useTheme } from '@almadar/ui/context';
|
|
14
|
-
import { evaluateGuard, createMinimalContext, executeEffects
|
|
14
|
+
import { evaluateGuard, evaluate, createMinimalContext, executeEffects } from '@almadar/evaluator';
|
|
15
15
|
import { Link, Outlet, useLocation } from 'react-router-dom';
|
|
16
16
|
import ELK from 'elkjs/lib/elk.bundled.js';
|
|
17
17
|
import SyntaxHighlighter from 'react-syntax-highlighter/dist/esm/prism-light.js';
|
|
@@ -42,8 +42,8 @@ import { DndContext, pointerWithin, rectIntersection, closestCorners, useSensors
|
|
|
42
42
|
import { useSortable, arrayMove, sortableKeyboardCoordinates, SortableContext, rectSortingStrategy, verticalListSortingStrategy } from '@dnd-kit/sortable';
|
|
43
43
|
import { CSS } from '@dnd-kit/utilities';
|
|
44
44
|
import { useNodeId, ReactFlowProvider, Handle, Position } from '@xyflow/react';
|
|
45
|
-
import { getPatternDefinition, getComponentForPattern as getComponentForPattern$1 } from '@almadar/patterns';
|
|
46
|
-
import { StateMachineManager, collectDeclaredConfigDefaults, createServerEffectHandlers, EffectExecutor, createContextFromBindings, createTickScheduler, isValidCronExpression, parseDurationString, InMemoryPersistence } from '@almadar/runtime';
|
|
45
|
+
import { isDrawHostPattern, getPatternDefinition, getComponentForPattern as getComponentForPattern$1 } from '@almadar/core/patterns';
|
|
46
|
+
import { StateMachineManager, collectDeclaredConfigDefaults, createServerEffectHandlers, EffectExecutor, createContextFromBindings, createTickScheduler, isValidCronExpression, parseDurationString, InMemoryPersistence, normalizeCallSiteConfigToValues } from '@almadar/runtime';
|
|
47
47
|
import { OrbitalServerRuntime } from '@almadar/runtime/OrbitalServerRuntime';
|
|
48
48
|
|
|
49
49
|
var __defProp = Object.defineProperty;
|
|
@@ -7816,6 +7816,13 @@ function bindCanvasCapture(captureFn) {
|
|
|
7816
7816
|
window.__orbitalVerification.captureFrame = captureFn;
|
|
7817
7817
|
}
|
|
7818
7818
|
}
|
|
7819
|
+
function bindLastDrawables(getDrawables) {
|
|
7820
|
+
if (typeof window === "undefined") return;
|
|
7821
|
+
exposeOnWindow();
|
|
7822
|
+
if (window.__orbitalVerification) {
|
|
7823
|
+
window.__orbitalVerification.getLastDrawables = getDrawables;
|
|
7824
|
+
}
|
|
7825
|
+
}
|
|
7819
7826
|
function updateAssetStatus(url, status) {
|
|
7820
7827
|
if (typeof window === "undefined") return;
|
|
7821
7828
|
exposeOnWindow();
|
|
@@ -9221,8 +9228,12 @@ var init_MiniMap = __esm({
|
|
|
9221
9228
|
MiniMap.displayName = "MiniMap";
|
|
9222
9229
|
}
|
|
9223
9230
|
});
|
|
9224
|
-
function useCamera() {
|
|
9225
|
-
const cameraRef = useRef({
|
|
9231
|
+
function useCamera(initial) {
|
|
9232
|
+
const cameraRef = useRef({
|
|
9233
|
+
x: initial?.x ?? 0,
|
|
9234
|
+
y: initial?.y ?? 0,
|
|
9235
|
+
zoom: initial?.zoom ?? 1
|
|
9236
|
+
});
|
|
9226
9237
|
const targetCameraRef = useRef(null);
|
|
9227
9238
|
const isDraggingRef = useRef(false);
|
|
9228
9239
|
const dragDistanceRef = useRef(0);
|
|
@@ -9553,8 +9564,9 @@ var init_DrawSprite = __esm({
|
|
|
9553
9564
|
if (!r) return;
|
|
9554
9565
|
src = { x: r.sx, y: r.sy, w: r.sw, h: r.sh };
|
|
9555
9566
|
}
|
|
9556
|
-
const
|
|
9557
|
-
const
|
|
9567
|
+
const tw = dctx.projector.tileWidth;
|
|
9568
|
+
const w = node.width !== void 0 ? node.width * tw : src ? src.w : tex.width;
|
|
9569
|
+
const h = node.height !== void 0 ? node.height * tw : src ? src.h : tex.height;
|
|
9558
9570
|
const anchor = node.anchor ?? "top-left";
|
|
9559
9571
|
const p = dctx.projector.anchorPoint(node.position, anchor);
|
|
9560
9572
|
const dx = anchor === "top-left" ? p.x : p.x - w / 2;
|
|
@@ -9601,27 +9613,30 @@ var init_DrawShape = __esm({
|
|
|
9601
9613
|
}
|
|
9602
9614
|
case "rect": {
|
|
9603
9615
|
const p = dctx.projector.anchorPoint(node.position, node.anchor ?? "top-left");
|
|
9604
|
-
const
|
|
9605
|
-
const
|
|
9606
|
-
const
|
|
9607
|
-
const
|
|
9616
|
+
const tw = dctx.projector.tileWidth;
|
|
9617
|
+
const x = p.x + (node.offsetX ?? 0) * tw;
|
|
9618
|
+
const y = p.y + (node.offsetY ?? 0) * tw;
|
|
9619
|
+
const w = (node.width ?? 0) * tw;
|
|
9620
|
+
const h = (node.height ?? 0) * tw;
|
|
9608
9621
|
if (node.fill) painter.fillRect(x, y, w, h, node.fill);
|
|
9609
9622
|
if (node.stroke) painter.strokeRect(x, y, w, h, node.stroke, node.strokeWidth ?? 1);
|
|
9610
9623
|
break;
|
|
9611
9624
|
}
|
|
9612
9625
|
case "ellipse": {
|
|
9613
9626
|
const p = dctx.projector.anchorPoint(node.position, node.anchor ?? "ground");
|
|
9614
|
-
const
|
|
9615
|
-
const
|
|
9616
|
-
const
|
|
9617
|
-
const
|
|
9627
|
+
const tw = dctx.projector.tileWidth;
|
|
9628
|
+
const cx = p.x + (node.offsetX ?? 0) * tw;
|
|
9629
|
+
const cy = p.y + (node.offsetY ?? 0) * tw;
|
|
9630
|
+
const rx = (node.radiusX ?? 0) * tw;
|
|
9631
|
+
const ry = (node.radiusY ?? rx) * tw;
|
|
9618
9632
|
if (node.fill) painter.fillEllipse(cx, cy, rx, ry, node.fill);
|
|
9619
9633
|
if (node.stroke) painter.strokeEllipse(cx, cy, rx, ry, node.stroke, node.strokeWidth ?? 1);
|
|
9620
9634
|
break;
|
|
9621
9635
|
}
|
|
9622
9636
|
case "poly": {
|
|
9623
9637
|
const base = dctx.projector.project(node.position);
|
|
9624
|
-
const
|
|
9638
|
+
const tw = dctx.projector.tileWidth;
|
|
9639
|
+
const pts = (node.points ?? []).map((pt) => ({ x: base.x + pt.x * tw, y: base.y + pt.y * tw }));
|
|
9625
9640
|
if (node.fill) painter.fillPoly(pts, node.fill);
|
|
9626
9641
|
if (node.stroke) painter.strokePoly(pts, node.stroke, node.strokeWidth ?? 1, true);
|
|
9627
9642
|
break;
|
|
@@ -9787,9 +9802,17 @@ function Canvas2D({
|
|
|
9787
9802
|
scale = 0.4,
|
|
9788
9803
|
showMinimap = true,
|
|
9789
9804
|
followTarget,
|
|
9805
|
+
cameraPos,
|
|
9790
9806
|
bgColor
|
|
9791
9807
|
}) {
|
|
9808
|
+
const layerSummaries = drawables?.map((d) => {
|
|
9809
|
+
if (!d || typeof d !== "object") return d;
|
|
9810
|
+
const rec = d;
|
|
9811
|
+
return { type: rec.type, itemsLen: Array.isArray(rec.items) ? rec.items.length : void 0, firstItem: Array.isArray(rec.items) ? rec.items[0] : void 0 };
|
|
9812
|
+
});
|
|
9813
|
+
console.error("[debug:Canvas2D] " + JSON.stringify({ projection, scale, cameraMode: camera, cameraPos, drawablesCount: drawables?.length, layerSummaries }));
|
|
9792
9814
|
const backgroundImage = normalizeBackdrop(backgroundImageRaw);
|
|
9815
|
+
const instanceId = useMemo(() => Math.random().toString(36).slice(2, 8), []);
|
|
9793
9816
|
const isFree = projection === "free";
|
|
9794
9817
|
const squareGrid = projection === "flat" || isFree || projection === "side";
|
|
9795
9818
|
const layout = projection === "side" ? "free" : projection;
|
|
@@ -9852,10 +9875,12 @@ function Canvas2D({
|
|
|
9852
9875
|
const canvas = canvasRef.current;
|
|
9853
9876
|
if (!canvas) return;
|
|
9854
9877
|
bindCanvasCapture(() => canvas.toDataURL("image/png"));
|
|
9878
|
+
bindLastDrawables(() => drawables ?? null);
|
|
9855
9879
|
return () => {
|
|
9856
9880
|
bindCanvasCapture(() => null);
|
|
9881
|
+
bindLastDrawables(() => null);
|
|
9857
9882
|
};
|
|
9858
|
-
}, []);
|
|
9883
|
+
}, [drawables]);
|
|
9859
9884
|
const enableCamera = camera === "pan-zoom";
|
|
9860
9885
|
const {
|
|
9861
9886
|
cameraRef,
|
|
@@ -9869,8 +9894,8 @@ function Canvas2D({
|
|
|
9869
9894
|
zoomAtPoint,
|
|
9870
9895
|
screenToWorld,
|
|
9871
9896
|
lerpToTarget
|
|
9872
|
-
} = useCamera();
|
|
9873
|
-
const [, setAtlasVersion] = useState(0);
|
|
9897
|
+
} = useCamera({ zoom: scale });
|
|
9898
|
+
const [atlasVersion, setAtlasVersion] = useState(0);
|
|
9874
9899
|
const bumpAtlas = useCallback(() => setAtlasVersion((v) => v + 1), []);
|
|
9875
9900
|
const miniMapTiles = useMemo(() => {
|
|
9876
9901
|
if (!showMinimap) return [];
|
|
@@ -9915,6 +9940,14 @@ function Canvas2D({
|
|
|
9915
9940
|
}
|
|
9916
9941
|
if (!drawables || drawables.length === 0) return;
|
|
9917
9942
|
const cam = cameraRef.current;
|
|
9943
|
+
if (cameraPos && dragDistance() === 0) {
|
|
9944
|
+
const p = projector.anchorPoint(cameraPos, "center");
|
|
9945
|
+
cam.x = p.x - viewportSize.width / 2;
|
|
9946
|
+
cam.y = p.y - viewportSize.height / 2;
|
|
9947
|
+
}
|
|
9948
|
+
const containerRect = containerRef.current?.getBoundingClientRect();
|
|
9949
|
+
const canvasRect = canvas.getBoundingClientRect();
|
|
9950
|
+
console.error("[debug:Canvas2D:draw:" + instanceId + "] " + JSON.stringify({ viewportSize, baseOffsetX, cam: { x: cam.x, y: cam.y, zoom: cam.zoom }, cameraPos, containerRect: containerRect ? { width: containerRect.width, height: containerRect.height } : null, canvasRect: canvasRect ? { width: canvasRect.width, height: canvasRect.height } : null }));
|
|
9918
9951
|
const painter = createWebPainter(ctx, bumpAtlas);
|
|
9919
9952
|
painter.save();
|
|
9920
9953
|
painter.translate(viewportSize.width / 2, viewportSize.height / 2);
|
|
@@ -9938,6 +9971,9 @@ function Canvas2D({
|
|
|
9938
9971
|
useEffect(() => {
|
|
9939
9972
|
draw();
|
|
9940
9973
|
}, [_imagePendingCount, draw]);
|
|
9974
|
+
useEffect(() => {
|
|
9975
|
+
draw();
|
|
9976
|
+
}, [atlasVersion, draw]);
|
|
9941
9977
|
useEffect(() => {
|
|
9942
9978
|
if (camera !== "follow" || !followTarget) return;
|
|
9943
9979
|
let running = true;
|
|
@@ -10182,6 +10218,7 @@ function Canvas({
|
|
|
10182
10218
|
keyMap,
|
|
10183
10219
|
keyUpMap
|
|
10184
10220
|
}) {
|
|
10221
|
+
console.error("[debug:Canvas] " + JSON.stringify({ mode, drawablesCount: drawables?.length, projection, camera }));
|
|
10185
10222
|
const zoom = camera?.zoom;
|
|
10186
10223
|
if (mode === "3d") {
|
|
10187
10224
|
const props3d = {
|
|
@@ -10221,6 +10258,7 @@ function Canvas({
|
|
|
10221
10258
|
camera: to2DCamera(camera?.mode),
|
|
10222
10259
|
...zoom !== void 0 ? { scale: zoom } : {},
|
|
10223
10260
|
...camera?.target !== void 0 ? { followTarget: camera.target } : {},
|
|
10261
|
+
...camera?.pos !== void 0 ? { cameraPos: camera.pos } : {},
|
|
10224
10262
|
showMinimap,
|
|
10225
10263
|
backgroundImage,
|
|
10226
10264
|
...backgroundColor !== void 0 ? { bgColor: backgroundColor } : {},
|
|
@@ -43635,7 +43673,7 @@ function SlotContentRenderer({
|
|
|
43635
43673
|
const childrenConfig = content.props.children;
|
|
43636
43674
|
const isSingleChild = typeof childrenConfig === "string" || typeof childrenConfig === "object" && childrenConfig !== null && !Array.isArray(childrenConfig) && "type" in childrenConfig;
|
|
43637
43675
|
const hasChildren = PATTERNS_WITH_CHILDREN.has(content.pattern) || Array.isArray(childrenConfig) && childrenConfig.length > 0 || isSingleChild;
|
|
43638
|
-
const isDrawHost =
|
|
43676
|
+
const isDrawHost = isDrawHostPattern(content.pattern);
|
|
43639
43677
|
const myPath = patternPath ?? "root";
|
|
43640
43678
|
const renderedChildren = hasChildren && !isDrawHost ? renderPatternChildren(childrenConfig, onDismiss, content.id, myPath, content.sourceTrait, {
|
|
43641
43679
|
slot: content.slot,
|
|
@@ -44206,6 +44244,14 @@ function effectsCallOp(effects, ops) {
|
|
|
44206
44244
|
}
|
|
44207
44245
|
return false;
|
|
44208
44246
|
}
|
|
44247
|
+
function classifySharedTick(tick) {
|
|
44248
|
+
const writes = effectsCallOp(tick.effects, SHARED_ENTITY_WRITE_OPS);
|
|
44249
|
+
const renders = effectsCallOp(tick.effects, SHARED_ENTITY_RENDER_OPS);
|
|
44250
|
+
if (writes && renders) return "both";
|
|
44251
|
+
if (writes) return "writer";
|
|
44252
|
+
if (renders) return "renderer";
|
|
44253
|
+
return "neither";
|
|
44254
|
+
}
|
|
44209
44255
|
function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
|
|
44210
44256
|
return (scratch) => {
|
|
44211
44257
|
const traitName = binding.trait.name;
|
|
@@ -44215,7 +44261,7 @@ function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
|
|
|
44215
44261
|
const writes = [];
|
|
44216
44262
|
const ctx = createMinimalContext(scratchEntity, {}, currentState);
|
|
44217
44263
|
const declaredDefaults = collectDeclaredConfigDefaults(binding.trait);
|
|
44218
|
-
const callSiteConfig = binding
|
|
44264
|
+
const callSiteConfig = getBindingConfig(binding);
|
|
44219
44265
|
if (declaredDefaults || callSiteConfig) {
|
|
44220
44266
|
ctx.config = { ...declaredDefaults ?? {}, ...callSiteConfig ?? {} };
|
|
44221
44267
|
}
|
|
@@ -44237,7 +44283,25 @@ function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
|
|
|
44237
44283
|
return writes;
|
|
44238
44284
|
};
|
|
44239
44285
|
}
|
|
44286
|
+
function getBindingConfig(binding) {
|
|
44287
|
+
const raw = binding.config;
|
|
44288
|
+
const normalized = normalizeCallSiteConfigToValues(raw);
|
|
44289
|
+
console.log("[debug:getBindingConfig]", binding.trait.name, "raw keys=", raw ? Object.keys(raw) : "undefined", "has tiles=", raw ? "tiles" in raw : false);
|
|
44290
|
+
return normalized;
|
|
44291
|
+
}
|
|
44292
|
+
function evalFieldDefault(value) {
|
|
44293
|
+
if (!Array.isArray(value) || value.length === 0) return value;
|
|
44294
|
+
const head = value[0];
|
|
44295
|
+
const isSExpr = typeof head === "string" && (head.includes("/") || head === "let" || head === "if" || head === "lambda");
|
|
44296
|
+
if (!isSExpr) return value;
|
|
44297
|
+
try {
|
|
44298
|
+
return evaluate(value, createMinimalContext({}, {}, ""));
|
|
44299
|
+
} catch {
|
|
44300
|
+
return value;
|
|
44301
|
+
}
|
|
44302
|
+
}
|
|
44240
44303
|
function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
44304
|
+
console.log("[debug:useTraitStateMachine] start, traitBindings count=", traitBindings.length, "names=", traitBindings.map((b) => b.trait.name).join(","));
|
|
44241
44305
|
const eventBus = useEventBus();
|
|
44242
44306
|
const { entities } = useEntitySchema();
|
|
44243
44307
|
const traitConfigsByName = options?.traitConfigsByName;
|
|
@@ -44257,7 +44321,11 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44257
44321
|
let defaults;
|
|
44258
44322
|
for (const field of entityDef.fields) {
|
|
44259
44323
|
if (field.default !== void 0) {
|
|
44260
|
-
|
|
44324
|
+
const evaluated = evalFieldDefault(field.default);
|
|
44325
|
+
if (field.name === "tiles") {
|
|
44326
|
+
console.log(`[debug:seed] ${linkedEntityName}.tiles seed type=`, typeof evaluated, Array.isArray(evaluated) ? "len=" + evaluated?.length : "", "head=", Array.isArray(evaluated) && evaluated.length > 0 ? JSON.stringify(evaluated[0]).slice(0, 80) : "n/a");
|
|
44327
|
+
}
|
|
44328
|
+
(defaults ?? (defaults = {}))[field.name] = evaluated;
|
|
44261
44329
|
}
|
|
44262
44330
|
}
|
|
44263
44331
|
group = { storeKey, entityName: linkedEntityName, writerBindings: [], renderBindings: [], defaults };
|
|
@@ -44270,7 +44338,10 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44270
44338
|
return groups;
|
|
44271
44339
|
}, [traitBindings, entities, orbitalsByTrait]);
|
|
44272
44340
|
for (const group of sharedGroups.values()) {
|
|
44273
|
-
if (group.defaults)
|
|
44341
|
+
if (group.defaults) {
|
|
44342
|
+
sharedEntityStore.seed(group.storeKey, group.defaults);
|
|
44343
|
+
console.log("[debug:shared-seed]", group.storeKey, "writers=", group.writerBindings.map((b) => b.trait.name).join(","), "renderers=", group.renderBindings.map((b) => b.trait.name).join(","), "defaults.tiles=", Array.isArray(group.defaults.tiles) ? group.defaults.tiles.length : group.defaults.tiles);
|
|
44344
|
+
}
|
|
44274
44345
|
}
|
|
44275
44346
|
const sharedKeyByTraitNameRef = useRef(/* @__PURE__ */ new Map());
|
|
44276
44347
|
useEffect(() => {
|
|
@@ -44280,12 +44351,13 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44280
44351
|
for (const binding of group.renderBindings) map.set(binding.trait.name, group.storeKey);
|
|
44281
44352
|
}
|
|
44282
44353
|
sharedKeyByTraitNameRef.current = map;
|
|
44354
|
+
console.log("[debug:shared-map]", Array.from(map.entries()).map(([k, v]) => `${k}->${v}`).join(","));
|
|
44283
44355
|
}, [sharedGroups]);
|
|
44284
44356
|
const manager = useMemo(() => {
|
|
44285
44357
|
const traitDefs = traitBindings.map(toTraitDefinition);
|
|
44286
44358
|
const m = new StateMachineManager(traitDefs);
|
|
44287
44359
|
for (const binding of traitBindings) {
|
|
44288
|
-
const cfg = binding
|
|
44360
|
+
const cfg = getBindingConfig(binding) ?? traitConfigsByName?.[binding.trait.name];
|
|
44289
44361
|
if (cfg !== void 0) {
|
|
44290
44362
|
m.setTraitConfig(binding.trait.name, cfg);
|
|
44291
44363
|
}
|
|
@@ -44468,6 +44540,9 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44468
44540
|
const linkedEntity = binding.linkedEntity || "";
|
|
44469
44541
|
const entityId = payload?.entityId;
|
|
44470
44542
|
const sharedKey = sharedKeyByTraitNameRef.current.get(traitName);
|
|
44543
|
+
if (traitName === "Hero" || traitName === "Authority") {
|
|
44544
|
+
console.log(`[debug:executeTransitionEffects] ${traitName} sharedKey=`, sharedKey, "store tiles=", sharedKey ? sharedEntityStore.getSnapshot(sharedKey).tiles?.length : "n/a");
|
|
44545
|
+
}
|
|
44471
44546
|
let liveEntity;
|
|
44472
44547
|
if (sharedKey !== void 0) {
|
|
44473
44548
|
liveEntity = { ...sharedEntityStore.getSnapshot(sharedKey) };
|
|
@@ -44491,6 +44566,13 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44491
44566
|
eventBus,
|
|
44492
44567
|
slotSetter: {
|
|
44493
44568
|
addPattern: (slot, pattern, props) => {
|
|
44569
|
+
if (traitName === "Hero" && slot === "main" && props && typeof props === "object") {
|
|
44570
|
+
const canvasChild = Array.isArray(props.children) ? props.children[0] : null;
|
|
44571
|
+
const grandChildren = canvasChild && typeof canvasChild === "object" ? canvasChild.children : null;
|
|
44572
|
+
const firstLayer = Array.isArray(grandChildren) && grandChildren.length > 0 ? grandChildren[0] : null;
|
|
44573
|
+
const firstLayerItems = firstLayer && typeof firstLayer === "object" ? firstLayer.items : null;
|
|
44574
|
+
console.log(`[debug:render-ui] ${traitName} slot=${slot} canvasChild=`, canvasChild ? canvasChild.type : "none", "firstLayerItems=", Array.isArray(firstLayerItems) ? firstLayerItems.length : firstLayerItems);
|
|
44575
|
+
}
|
|
44494
44576
|
const existing = pendingSlots.get(slot) || [];
|
|
44495
44577
|
existing.push({ pattern, props: props || {} });
|
|
44496
44578
|
pendingSlots.set(slot, existing);
|
|
@@ -44522,7 +44604,7 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44522
44604
|
state: previousState
|
|
44523
44605
|
};
|
|
44524
44606
|
const sharedDeclared = collectDeclaredConfigDefaults(binding.trait);
|
|
44525
|
-
const sharedCallSite = binding
|
|
44607
|
+
const sharedCallSite = getBindingConfig(binding);
|
|
44526
44608
|
if (sharedDeclared || sharedCallSite) {
|
|
44527
44609
|
sharedBindings.config = {
|
|
44528
44610
|
...sharedDeclared ?? {},
|
|
@@ -44573,13 +44655,16 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44573
44655
|
state: previousState
|
|
44574
44656
|
};
|
|
44575
44657
|
const declaredDefaults = collectDeclaredConfigDefaults(binding.trait);
|
|
44576
|
-
const callSiteConfig = binding
|
|
44658
|
+
const callSiteConfig = getBindingConfig(binding);
|
|
44577
44659
|
if (declaredDefaults || callSiteConfig) {
|
|
44578
44660
|
bindingCtx.config = {
|
|
44579
44661
|
...declaredDefaults ?? {},
|
|
44580
44662
|
...callSiteConfig ?? {}
|
|
44581
44663
|
};
|
|
44582
44664
|
}
|
|
44665
|
+
if (traitName === "Authority" || traitName === "Hero") {
|
|
44666
|
+
console.log(`[debug:executeTransitionEffects] ${traitName} config tiles type=`, typeof bindingCtx.config?.tiles, Array.isArray(bindingCtx.config?.tiles) ? "len=" + bindingCtx.config?.tiles?.length : "", "keys=", bindingCtx.config ? Object.keys(bindingCtx.config) : "none");
|
|
44667
|
+
}
|
|
44583
44668
|
const effectContext = {
|
|
44584
44669
|
traitName,
|
|
44585
44670
|
state: previousState,
|
|
@@ -44596,9 +44681,15 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44596
44681
|
baseEmit(event, eventPayload, source);
|
|
44597
44682
|
}
|
|
44598
44683
|
};
|
|
44684
|
+
if (traitName === "Hero") {
|
|
44685
|
+
console.log(`[debug:executeTransitionEffects] ${traitName} effects count=${effects.length} hasRenderUI=${typeof handlers.renderUI === "function"} effect heads=${effects.map((e) => Array.isArray(e) ? String(e[0]) : "??").join(",")}`);
|
|
44686
|
+
}
|
|
44599
44687
|
const executor = new EffectExecutor({ handlers: trackingHandlers, bindings: bindingCtx, context: effectContext });
|
|
44600
44688
|
try {
|
|
44601
44689
|
await executor.executeAll(effects);
|
|
44690
|
+
if (traitName === "Authority" || traitName === "Hero") {
|
|
44691
|
+
console.log(`[debug:executeTransitionEffects] ${traitName} after executeAll liveEntity.tiles type=`, typeof liveEntity.tiles, Array.isArray(liveEntity.tiles) ? "len=" + liveEntity.tiles?.length : "", "firstTilePos=", Array.isArray(liveEntity.tiles) && liveEntity.tiles.length > 0 ? JSON.stringify(liveEntity.tiles[0]).slice(0, 120) : "n/a");
|
|
44692
|
+
}
|
|
44602
44693
|
if (sharedKey !== void 0) {
|
|
44603
44694
|
sharedEntityStore.commit(sharedKey, liveEntity);
|
|
44604
44695
|
}
|
|
@@ -44649,8 +44740,9 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44649
44740
|
payload: {},
|
|
44650
44741
|
state: currentState
|
|
44651
44742
|
};
|
|
44652
|
-
|
|
44653
|
-
|
|
44743
|
+
const bindingCfg = getBindingConfig(binding);
|
|
44744
|
+
if (bindingCfg) {
|
|
44745
|
+
guardCtx.config = bindingCfg;
|
|
44654
44746
|
}
|
|
44655
44747
|
const passed = evaluateGuard(
|
|
44656
44748
|
tick.guard,
|
|
@@ -44677,12 +44769,14 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44677
44769
|
}, [eventBus]);
|
|
44678
44770
|
useEffect(() => {
|
|
44679
44771
|
const scheduler = createTickScheduler();
|
|
44680
|
-
const
|
|
44772
|
+
const pureWriterTickKeys = /* @__PURE__ */ new Set();
|
|
44681
44773
|
for (const group of sharedGroups.values()) {
|
|
44682
44774
|
const ticksByInterval = /* @__PURE__ */ new Map();
|
|
44683
44775
|
for (const binding of group.writerBindings) {
|
|
44684
|
-
writerTraitNames.add(binding.trait.name);
|
|
44685
44776
|
for (const tick of binding.trait.ticks ?? []) {
|
|
44777
|
+
const classification = classifySharedTick(tick);
|
|
44778
|
+
if (classification !== "writer") continue;
|
|
44779
|
+
pureWriterTickKeys.add(`${binding.trait.name}::${tick.name}`);
|
|
44686
44780
|
const intervalKey = String(tick.interval);
|
|
44687
44781
|
const entries = ticksByInterval.get(intervalKey) ?? [];
|
|
44688
44782
|
entries.push({ binding, tick });
|
|
@@ -44709,8 +44803,11 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
|
|
|
44709
44803
|
}
|
|
44710
44804
|
}
|
|
44711
44805
|
for (const binding of traitBindings) {
|
|
44712
|
-
if (writerTraitNames.has(binding.trait.name)) continue;
|
|
44713
44806
|
for (const tick of binding.trait.ticks ?? []) {
|
|
44807
|
+
const sharedKey = sharedKeyByTraitNameRef.current.get(binding.trait.name);
|
|
44808
|
+
if (sharedKey !== void 0 && pureWriterTickKeys.has(`${binding.trait.name}::${tick.name}`)) {
|
|
44809
|
+
continue;
|
|
44810
|
+
}
|
|
44714
44811
|
if (tick.interval === "frame") {
|
|
44715
44812
|
scheduler.add(0, () => runTickEffects(tick, binding));
|
|
44716
44813
|
} else if (typeof tick.interval === "number") {
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { E as EventBusContextType } from './event-bus-types-Bl78kokd.js';
|
|
2
|
+
import { EventPayload, BusEventSource, BusEventListener } from '@almadar/core';
|
|
3
|
+
|
|
4
|
+
declare global {
|
|
5
|
+
interface Window {
|
|
6
|
+
__kflowEventBus?: EventBusContextType | null;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Hook for accessing the event bus.
|
|
11
|
+
*
|
|
12
|
+
* Uses EventBusProvider context if available, otherwise falls back to
|
|
13
|
+
* a simple in-memory event bus (for design system / Storybook).
|
|
14
|
+
*
|
|
15
|
+
* @returns Event bus instance with emit, on, once, and hasListeners methods
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* const eventBus = useEventBus();
|
|
20
|
+
*
|
|
21
|
+
* // Emit an event
|
|
22
|
+
* eventBus.emit('UI:CLICK', { id: '123' });
|
|
23
|
+
*
|
|
24
|
+
* // Subscribe to an event
|
|
25
|
+
* useEffect(() => {
|
|
26
|
+
* return eventBus.on('UI:CLICK', (event) => {
|
|
27
|
+
* console.log('Clicked:', event.payload);
|
|
28
|
+
* });
|
|
29
|
+
* }, []);
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
declare function useEventBus(): EventBusContextType;
|
|
33
|
+
/**
|
|
34
|
+
* Hook for subscribing to a specific event.
|
|
35
|
+
* Automatically cleans up subscription on unmount.
|
|
36
|
+
*
|
|
37
|
+
* @param event - Event name to subscribe to
|
|
38
|
+
* @param handler - Event handler function
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```tsx
|
|
42
|
+
* useEventListener('UI:CLICK', (event) => {
|
|
43
|
+
* console.log('Clicked:', event.payload);
|
|
44
|
+
* });
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
declare function useEventListener(event: string, handler: BusEventListener): void;
|
|
48
|
+
/**
|
|
49
|
+
* Hook for emitting events.
|
|
50
|
+
* Returns a memoized emit function.
|
|
51
|
+
*
|
|
52
|
+
* @returns Function to emit events
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* ```tsx
|
|
56
|
+
* const emit = useEmitEvent();
|
|
57
|
+
*
|
|
58
|
+
* const handleClick = () => {
|
|
59
|
+
* emit('UI:CLICK', { id: '123' });
|
|
60
|
+
* };
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
declare function useEmitEvent(): (type: string, payload?: EventPayload, source?: BusEventSource) => void;
|
|
64
|
+
|
|
65
|
+
export { useEventBus as a, useEventListener as b, useEmitEvent as u };
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { E as EventBusContextType } from './event-bus-types-Bl78kokd.cjs';
|
|
2
|
+
import { EventPayload, BusEventSource, BusEventListener } from '@almadar/core';
|
|
3
|
+
|
|
4
|
+
declare global {
|
|
5
|
+
interface Window {
|
|
6
|
+
__kflowEventBus?: EventBusContextType | null;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Hook for accessing the event bus.
|
|
11
|
+
*
|
|
12
|
+
* Uses EventBusProvider context if available, otherwise falls back to
|
|
13
|
+
* a simple in-memory event bus (for design system / Storybook).
|
|
14
|
+
*
|
|
15
|
+
* @returns Event bus instance with emit, on, once, and hasListeners methods
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* const eventBus = useEventBus();
|
|
20
|
+
*
|
|
21
|
+
* // Emit an event
|
|
22
|
+
* eventBus.emit('UI:CLICK', { id: '123' });
|
|
23
|
+
*
|
|
24
|
+
* // Subscribe to an event
|
|
25
|
+
* useEffect(() => {
|
|
26
|
+
* return eventBus.on('UI:CLICK', (event) => {
|
|
27
|
+
* console.log('Clicked:', event.payload);
|
|
28
|
+
* });
|
|
29
|
+
* }, []);
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
declare function useEventBus(): EventBusContextType;
|
|
33
|
+
/**
|
|
34
|
+
* Hook for subscribing to a specific event.
|
|
35
|
+
* Automatically cleans up subscription on unmount.
|
|
36
|
+
*
|
|
37
|
+
* @param event - Event name to subscribe to
|
|
38
|
+
* @param handler - Event handler function
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```tsx
|
|
42
|
+
* useEventListener('UI:CLICK', (event) => {
|
|
43
|
+
* console.log('Clicked:', event.payload);
|
|
44
|
+
* });
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
declare function useEventListener(event: string, handler: BusEventListener): void;
|
|
48
|
+
/**
|
|
49
|
+
* Hook for emitting events.
|
|
50
|
+
* Returns a memoized emit function.
|
|
51
|
+
*
|
|
52
|
+
* @returns Function to emit events
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* ```tsx
|
|
56
|
+
* const emit = useEmitEvent();
|
|
57
|
+
*
|
|
58
|
+
* const handleClick = () => {
|
|
59
|
+
* emit('UI:CLICK', { id: '123' });
|
|
60
|
+
* };
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
declare function useEmitEvent(): (type: string, payload?: EventPayload, source?: BusEventSource) => void;
|
|
64
|
+
|
|
65
|
+
export { useEventBus as a, useEventListener as b, useEmitEvent as u };
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { UISlot, RenderItemLambda, EventPayloadValue } from '@almadar/core';
|
|
3
|
+
|
|
1
4
|
/**
|
|
2
5
|
* useUISlots Hook
|
|
3
6
|
*
|
|
@@ -29,13 +32,11 @@
|
|
|
29
32
|
*
|
|
30
33
|
* @packageDocumentation
|
|
31
34
|
*/
|
|
32
|
-
|
|
33
|
-
import type { EventPayloadValue, RenderItemLambda, UISlot } from '@almadar/core';
|
|
34
|
-
export type { UISlot };
|
|
35
|
+
|
|
35
36
|
/**
|
|
36
37
|
* Animation types for slot transitions
|
|
37
38
|
*/
|
|
38
|
-
|
|
39
|
+
type SlotAnimation = 'fade' | 'slide' | 'scale' | 'none';
|
|
39
40
|
/**
|
|
40
41
|
* Render-prop callback after fn-form-lambda conversion or
|
|
41
42
|
* `wrapCallbackForEvent` wrapping. Pattern components consume these as
|
|
@@ -45,7 +46,7 @@ export type SlotAnimation = 'fade' | 'slide' | 'scale' | 'none';
|
|
|
45
46
|
* shapes seen at this layer. Pattern-level prop types narrow the
|
|
46
47
|
* signature for each consumer downstream.
|
|
47
48
|
*/
|
|
48
|
-
|
|
49
|
+
type SlotCallback = (...args: never[]) => void | React__default.ReactNode | EventPayloadValue;
|
|
49
50
|
/**
|
|
50
51
|
* Render-ui prop value: any leaf flowing from a `(render-ui slot {...})`
|
|
51
52
|
* effect into a React pattern component. The union enumerates every
|
|
@@ -61,7 +62,7 @@ export type SlotCallback = (...args: never[]) => void | React.ReactNode | EventP
|
|
|
61
62
|
* can appear at any depth (e.g. `tabs[].content: "@trait.X"` surviving
|
|
62
63
|
* substitution into a `ReactElement`).
|
|
63
64
|
*/
|
|
64
|
-
|
|
65
|
+
type SlotPropValue = string | number | boolean | Date | null | undefined | RenderItemLambda | SlotCallback | React__default.ReactElement | ReadonlyArray<SlotPropValue> | {
|
|
65
66
|
readonly [key: string]: SlotPropValue;
|
|
66
67
|
};
|
|
67
68
|
/**
|
|
@@ -69,11 +70,11 @@ export type SlotPropValue = string | number | boolean | Date | null | undefined
|
|
|
69
70
|
* routes these from `(render-ui slot {...})` effects to React pattern
|
|
70
71
|
* components without coercion.
|
|
71
72
|
*/
|
|
72
|
-
|
|
73
|
+
type SlotProps = Record<string, SlotPropValue>;
|
|
73
74
|
/**
|
|
74
75
|
* Content rendered in a slot
|
|
75
76
|
*/
|
|
76
|
-
|
|
77
|
+
interface SlotContent {
|
|
77
78
|
/** Unique ID for this content */
|
|
78
79
|
id: string;
|
|
79
80
|
/** Pattern/component type to render */
|
|
@@ -104,7 +105,7 @@ export interface SlotContent {
|
|
|
104
105
|
/**
|
|
105
106
|
* Configuration for render_ui effect
|
|
106
107
|
*/
|
|
107
|
-
|
|
108
|
+
interface SlotRenderConfig {
|
|
108
109
|
/** Target slot */
|
|
109
110
|
target: UISlot;
|
|
110
111
|
/** Pattern/component to render */
|
|
@@ -131,7 +132,7 @@ export interface SlotRenderConfig {
|
|
|
131
132
|
/**
|
|
132
133
|
* Callback for slot changes
|
|
133
134
|
*/
|
|
134
|
-
|
|
135
|
+
type SlotChangeCallback = (slot: UISlot, content: SlotContent | null) => void;
|
|
135
136
|
/**
|
|
136
137
|
* Fires when a specific trait's current render-ui output changes.
|
|
137
138
|
* Used by `<TraitFrame>` to subscribe only to the trait it embeds,
|
|
@@ -141,11 +142,11 @@ export type SlotChangeCallback = (slot: UISlot, content: SlotContent | null) =>
|
|
|
141
142
|
* render), so the callback signature carries just the new content —
|
|
142
143
|
* no per-slot disambiguation needed.
|
|
143
144
|
*/
|
|
144
|
-
|
|
145
|
+
type TraitChangeCallback = (content: SlotContent | null) => void;
|
|
145
146
|
/**
|
|
146
147
|
* UI Slot Manager interface
|
|
147
148
|
*/
|
|
148
|
-
|
|
149
|
+
interface UISlotManager {
|
|
149
150
|
/**
|
|
150
151
|
* Current aggregate content for each slot. Single-source slots hold
|
|
151
152
|
* that source's SlotContent; multi-source slots hold a synthetic
|
|
@@ -210,5 +211,6 @@ declare const DEFAULT_SLOTS: Partial<Record<UISlot, SlotContent | null>>;
|
|
|
210
211
|
* This is the internal hook that creates the manager.
|
|
211
212
|
* Use `useUISlots()` from context in components.
|
|
212
213
|
*/
|
|
213
|
-
|
|
214
|
-
|
|
214
|
+
declare function useUISlotManager(): UISlotManager;
|
|
215
|
+
|
|
216
|
+
export { DEFAULT_SLOTS as D, type SlotAnimation as S, type UISlotManager as U, type SlotChangeCallback as a, type SlotContent as b, type SlotRenderConfig as c, useUISlotManager as u };
|