@almadar/std 16.237.0 → 16.238.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/behaviors/behaviors-registry.json +56939 -2084
- package/behaviors/lolo/agent/atoms/std-agent-context.lolo +65 -134
- package/behaviors/lolo/agent/atoms/std-agent-memory.lolo +162 -112
- package/behaviors/lolo/agent/atoms/std-agent-session.lolo +239 -115
- package/behaviors/lolo/agent/atoms/std-agent-tool-loop.lolo +96 -90
- package/behaviors/lolo/agent/atoms/std-agent-trace.lolo +133 -40
- package/behaviors/lolo/agent/organisms/std-agent-assistant.lolo +137 -0
- package/behaviors/lolo/infra/atoms/std-cache-aside.lolo +4 -17
- package/behaviors/lolo/infra/atoms/std-notification-preferences.lolo +21 -13
- package/behaviors/lolo/ui/avl/atoms/ui-avl-glyph.lolo +90 -0
- package/behaviors/lolo/ui/avl/atoms/ui-avl-state-machine.lolo +90 -0
- package/behaviors/lolo/ui/avl/atoms/ui-behavior-view.lolo +80 -0
- package/behaviors/lolo/ui/avl/atoms/ui-module-card.lolo +80 -0
- package/behaviors/lolo/ui/core/atoms/std-billable-hour.lolo +12 -21
- package/behaviors/lolo/ui/core/atoms/std-board.lolo +5 -32
- package/behaviors/lolo/ui/core/atoms/std-book-reader.lolo +19 -11
- package/behaviors/lolo/ui/core/atoms/std-browse.lolo +10 -2
- package/behaviors/lolo/ui/core/atoms/std-calendar.lolo +4 -16
- package/behaviors/lolo/ui/core/atoms/std-detail-layout.lolo +3 -1
- package/behaviors/lolo/ui/core/atoms/std-esign-flow.lolo +21 -13
- package/behaviors/lolo/ui/core/atoms/std-esign-request.lolo +12 -2
- package/behaviors/lolo/ui/core/atoms/std-event-log.lolo +12 -10
- package/behaviors/lolo/ui/core/atoms/std-file-store.lolo +27 -71
- package/behaviors/lolo/ui/core/atoms/std-gantt-schedule.lolo +21 -13
- package/behaviors/lolo/ui/core/atoms/std-image-upload-multi.lolo +6 -20
- package/behaviors/lolo/ui/core/atoms/std-list.lolo +21 -13
- package/behaviors/lolo/ui/core/atoms/std-multi-party-flow.lolo +28 -14
- package/behaviors/lolo/ui/core/atoms/std-prose.lolo +7 -1
- package/behaviors/lolo/ui/core/atoms/std-rating-review.lolo +23 -8
- package/behaviors/lolo/ui/core/atoms/std-record-detail.lolo +126 -18
- package/behaviors/lolo/ui/core/atoms/std-recurrence.lolo +24 -20
- package/behaviors/lolo/ui/core/atoms/std-related.lolo +36 -25
- package/behaviors/lolo/ui/core/atoms/std-saved-search.lolo +14 -21
- package/behaviors/lolo/ui/core/atoms/std-scoped-list.lolo +143 -0
- package/behaviors/lolo/ui/core/atoms/std-selection.lolo +27 -14
- package/behaviors/lolo/ui/core/atoms/std-signature-capture.lolo +1 -13
- package/behaviors/lolo/ui/core/atoms/std-slide-deck.lolo +2 -2
- package/behaviors/lolo/ui/core/atoms/std-step-flow.lolo +4 -16
- package/behaviors/lolo/ui/core/atoms/std-tag-taxonomy.lolo +24 -80
- package/behaviors/lolo/ui/core/atoms/std-thread.lolo +92 -31
- package/behaviors/lolo/ui/core/atoms/std-tree.lolo +18 -22
- package/behaviors/lolo/ui/core/atoms/std-version-history.lolo +36 -82
- package/behaviors/lolo/ui/core/atoms/std-vote.lolo +2 -39
- package/behaviors/lolo/ui/core/atoms/std-wizard.lolo +20 -10
- package/behaviors/lolo/ui/core/atoms/ui-animated-graphic.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-animated-reveal.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-aside.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-atlas-image.lolo +16 -0
- package/behaviors/lolo/ui/core/atoms/ui-atlas-panel.lolo +16 -0
- package/behaviors/lolo/ui/core/atoms/ui-avatar.lolo +91 -1
- package/behaviors/lolo/ui/core/atoms/ui-badge.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-box.lolo +98 -13
- package/behaviors/lolo/ui/core/atoms/ui-button.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-card.lolo +91 -1
- package/behaviors/lolo/ui/core/atoms/ui-center.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-checkbox.lolo +112 -0
- package/behaviors/lolo/ui/core/atoms/ui-confetti-effect.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-day-cell.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-dialog.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-divider.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-filter-pill.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-flip-container.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-game-icon.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-hstack.lolo +90 -10
- package/behaviors/lolo/ui/core/atoms/ui-icon.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-image.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-infinite-scroll-sentinel.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-input.lolo +11 -1
- package/behaviors/lolo/ui/core/atoms/ui-label.lolo +91 -1
- package/behaviors/lolo/ui/core/atoms/ui-law-reference-tooltip.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-overlay.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-pattern-tile.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-presence.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-progress-bar.lolo +91 -1
- package/behaviors/lolo/ui/core/atoms/ui-radio.lolo +106 -0
- package/behaviors/lolo/ui/core/atoms/ui-range-slider.lolo +122 -0
- package/behaviors/lolo/ui/core/atoms/ui-section-header.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-select.lolo +95 -0
- package/behaviors/lolo/ui/core/atoms/ui-spacer.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-sparkline.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-spinner.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-stack.lolo +90 -10
- package/behaviors/lolo/ui/core/atoms/ui-status-dot.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-branch.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-connection.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-flow.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-grid.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-lobe.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-mesh.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-morph.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-node.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-pulse.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-ring.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-shield.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-stack.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-switch.lolo +106 -0
- package/behaviors/lolo/ui/core/atoms/ui-text-highlight.lolo +122 -0
- package/behaviors/lolo/ui/core/atoms/ui-textarea.lolo +100 -0
- package/behaviors/lolo/ui/core/atoms/ui-theme-toggle.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-time-slot-cell.lolo +106 -0
- package/behaviors/lolo/ui/core/atoms/ui-trend-indicator.lolo +91 -1
- package/behaviors/lolo/ui/core/atoms/ui-typewriter-text.lolo +90 -0
- package/behaviors/lolo/ui/core/atoms/ui-typography.lolo +96 -11
- package/behaviors/lolo/ui/core/atoms/ui-vstack.lolo +90 -10
- package/behaviors/lolo/ui/core/molecules/ui-accordion.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-activation-block.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-alert.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-animated-counter.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-bloom-quiz-block.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-branching-logic-builder.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-breadcrumb.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-calendar-grid.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-carousel.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-change-list.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-chart-legend.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-chart.lolo +93 -3
- package/behaviors/lolo/ui/core/molecules/ui-code-block.lolo +202 -0
- package/behaviors/lolo/ui/core/molecules/ui-command-palette.lolo +106 -0
- package/behaviors/lolo/ui/core/molecules/ui-commit-row.lolo +123 -1
- package/behaviors/lolo/ui/core/molecules/ui-confirm-dialog.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-connection-block.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-container.lolo +92 -2
- package/behaviors/lolo/ui/core/molecules/ui-content-renderer.lolo +97 -7
- package/behaviors/lolo/ui/core/molecules/ui-data-grid.lolo +125 -2
- package/behaviors/lolo/ui/core/molecules/ui-data-list.lolo +126 -3
- package/behaviors/lolo/ui/core/molecules/ui-date-range-picker.lolo +106 -0
- package/behaviors/lolo/ui/core/molecules/ui-date-range-selector.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-breadcrumb.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-pagination.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-search.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-sidebar.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-toc.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-document-details.lolo +138 -0
- package/behaviors/lolo/ui/core/molecules/ui-document-panel.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-document-viewer.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-drawer.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-edge-decoration.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-emoji-picker.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-empty-state.lolo +91 -1
- package/behaviors/lolo/ui/core/molecules/ui-error-boundary.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-error-state.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-feature-card.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-feature-grid.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-file-tree.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-filter-group.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-flex.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-flip-card.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-floating-action-button.lolo +91 -1
- package/behaviors/lolo/ui/core/molecules/ui-floating-toolbar.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-form-actions.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-form-field.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-form-layout.lolo +96 -6
- package/behaviors/lolo/ui/core/molecules/ui-form-section-header.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-fx-overlay.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-gantt.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-geometric-pattern.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-gradient-divider.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-graph-canvas.lolo +95 -0
- package/behaviors/lolo/ui/core/molecules/ui-graph-view.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-grid.lolo +95 -5
- package/behaviors/lolo/ui/core/molecules/ui-header.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-icon-button.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-import-preview-tree.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-import-progress.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-import-source-picker.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-input-group.lolo +91 -1
- package/behaviors/lolo/ui/core/molecules/ui-jazari-state-machine.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-lightbox.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-likert-scale.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-line-chart.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-loading-state.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-map-view.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-markdown-content.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-matrix-question.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-menu.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-meter.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-modal.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-navigation.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-notification.lolo +91 -1
- package/behaviors/lolo/ui/core/molecules/ui-number-stepper.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-option-constraint-group.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-orbital-visualization.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-page-header.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-page-transition.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-pagination.lolo +106 -0
- package/behaviors/lolo/ui/core/molecules/ui-popover.lolo +106 -0
- package/behaviors/lolo/ui/core/molecules/ui-positioned-canvas.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-progress-dots.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-pull-to-refresh.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-qr-scanner.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-quiz-block.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-reflection-block.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-relation-select.lolo +106 -0
- package/behaviors/lolo/ui/core/molecules/ui-repeatable-form-section.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-reply-tree.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-rich-text-editor.lolo +106 -0
- package/behaviors/lolo/ui/core/molecules/ui-scaled-diagram.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-search-input.lolo +106 -0
- package/behaviors/lolo/ui/core/molecules/ui-section.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-side-panel.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-sidebar.lolo +106 -0
- package/behaviors/lolo/ui/core/molecules/ui-signature-pad.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-simple-grid.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-skeleton.lolo +93 -3
- package/behaviors/lolo/ui/core/molecules/ui-social-proof.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-sortable-list.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-split.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-star-rating.lolo +122 -0
- package/behaviors/lolo/ui/core/molecules/ui-stat-display.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-swipeable-row.lolo +138 -0
- package/behaviors/lolo/ui/core/molecules/ui-table-view.lolo +124 -1
- package/behaviors/lolo/ui/core/molecules/ui-tabs.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-tag-input.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-tooltip.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-top-nav-item.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-upload-drop-zone.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-version-diff.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-violation-alert.lolo +91 -1
- package/behaviors/lolo/ui/core/molecules/ui-vote-stack.lolo +91 -1
- package/behaviors/lolo/ui/core/molecules/ui-wizard-container.lolo +90 -0
- package/behaviors/lolo/ui/core/molecules/ui-wizard-navigation.lolo +138 -0
- package/behaviors/lolo/ui/core/molecules/ui-wizard-progress.lolo +90 -0
- package/behaviors/lolo/ui/core/organisms/ui-chat-bar.lolo +91 -1
- package/behaviors/lolo/ui/core/organisms/ui-code-runner-panel.lolo +90 -0
- package/behaviors/lolo/ui/core/organisms/ui-dashboard-grid.lolo +91 -1
- package/behaviors/lolo/ui/core/organisms/ui-detail-panel.lolo +336 -4
- package/behaviors/lolo/ui/core/organisms/ui-dock-layout.lolo +90 -0
- package/behaviors/lolo/ui/core/organisms/ui-drawer-slot.lolo +10 -0
- package/behaviors/lolo/ui/core/organisms/ui-entity-cards.lolo +127 -4
- package/behaviors/lolo/ui/core/organisms/ui-entity-list.lolo +127 -4
- package/behaviors/lolo/ui/core/organisms/ui-entity-table.lolo +127 -3
- package/behaviors/lolo/ui/core/organisms/ui-form-section.lolo +139 -1
- package/behaviors/lolo/ui/core/organisms/ui-form.lolo +139 -1
- package/behaviors/lolo/ui/core/organisms/ui-master-detail-layout.lolo +90 -0
- package/behaviors/lolo/ui/core/organisms/ui-master-detail.lolo +123 -1
- package/behaviors/lolo/ui/core/organisms/ui-media-gallery.lolo +123 -1
- package/behaviors/lolo/ui/core/organisms/ui-modal-slot.lolo +10 -0
- package/behaviors/lolo/ui/core/organisms/ui-runtime-debugger.lolo +90 -0
- package/behaviors/lolo/ui/core/organisms/ui-segment-renderer.lolo +90 -0
- package/behaviors/lolo/ui/core/organisms/ui-split-pane.lolo +106 -0
- package/behaviors/lolo/ui/core/organisms/ui-stat-card.lolo +124 -2
- package/behaviors/lolo/ui/core/organisms/ui-state-machine-view.lolo +92 -2
- package/behaviors/lolo/ui/core/organisms/ui-subagent-trace-panel.lolo +91 -1
- package/behaviors/lolo/ui/core/organisms/ui-tabbed-container.lolo +90 -0
- package/behaviors/lolo/ui/core/organisms/ui-timeline.lolo +122 -0
- package/behaviors/lolo/ui/core/organisms/ui-toast-slot.lolo +91 -1
- package/behaviors/lolo/ui/core/templates/ui-auth-layout.lolo +80 -0
- package/behaviors/lolo/ui/core/templates/ui-counter-template.lolo +91 -1
- package/behaviors/lolo/ui/core/templates/ui-generic-app-template.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-action-palette.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-action-tile.lolo +91 -1
- package/behaviors/lolo/ui/game/atoms/ui-canvas-2d.lolo +95 -0
- package/behaviors/lolo/ui/game/atoms/ui-canvas.lolo +91 -1
- package/behaviors/lolo/ui/game/atoms/ui-choice-button.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-control-button.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-control-grid.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-dialogue-bubble.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-draw-mesh.lolo +1 -1
- package/behaviors/lolo/ui/game/atoms/ui-draw-shape.lolo +2 -2
- package/behaviors/lolo/ui/game/atoms/ui-draw-sprite.lolo +1 -1
- package/behaviors/lolo/ui/game/atoms/ui-draw-text.lolo +3 -3
- package/behaviors/lolo/ui/game/atoms/ui-game-audio-toggle.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-game-hud.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-game-menu.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-health-bar.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-score-display.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-sequence-bar.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-stat-badge.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-state-graph.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-state-json-view.lolo +90 -0
- package/behaviors/lolo/ui/game/atoms/ui-trait-slot.lolo +123 -1
- package/behaviors/lolo/ui/learning/atoms/ui-algo-graph-canvas.lolo +90 -0
- package/behaviors/lolo/ui/learning/atoms/ui-algorithm-canvas.lolo +106 -0
- package/behaviors/lolo/ui/learning/atoms/ui-biology-canvas.lolo +106 -0
- package/behaviors/lolo/ui/learning/atoms/ui-chemistry-canvas.lolo +106 -0
- package/behaviors/lolo/ui/learning/atoms/ui-learning-canvas.lolo +112 -0
- package/behaviors/lolo/ui/learning/atoms/ui-math-canvas.lolo +106 -0
- package/behaviors/lolo/ui/learning/atoms/ui-physics-canvas.lolo +106 -0
- package/behaviors/lolo-behavior-contracts.json +1 -1
- package/behaviors/registry/agent/atoms/std-agent-context.orb +299 -826
- package/behaviors/registry/agent/atoms/std-agent-memory.orb +858 -643
- package/behaviors/registry/agent/atoms/std-agent-session.orb +833 -770
- package/behaviors/registry/agent/atoms/std-agent-tool-loop.orb +505 -707
- package/behaviors/registry/agent/atoms/std-agent-trace.orb +680 -195
- package/behaviors/registry/agent/organisms/std-agent-assistant.orb +594 -0
- package/behaviors/registry/factory-signatures.json +1 -1
- package/behaviors/registry/infra/atoms/std-cache-aside.orb +172 -299
- package/behaviors/registry/infra/atoms/std-notification-preferences.orb +48 -14
- package/behaviors/registry/ui/avl/atoms/ui-avl-glyph.orb +236 -0
- package/behaviors/registry/ui/avl/atoms/ui-avl-state-machine.orb +236 -0
- package/behaviors/registry/ui/avl/atoms/ui-behavior-view.orb +215 -0
- package/behaviors/registry/ui/avl/atoms/ui-module-card.orb +215 -0
- package/behaviors/registry/ui/core/atoms/std-billable-hour.orb +26 -18
- package/behaviors/registry/ui/core/atoms/std-board.orb +10 -34
- package/behaviors/registry/ui/core/atoms/std-book-reader.orb +32 -13
- package/behaviors/registry/ui/core/atoms/std-browse.orb +108 -12
- package/behaviors/registry/ui/core/atoms/std-calendar.orb +8 -19
- package/behaviors/registry/ui/core/atoms/std-detail-layout.orb +3 -1
- package/behaviors/registry/ui/core/atoms/std-esign-flow.orb +48 -11
- package/behaviors/registry/ui/core/atoms/std-esign-request.orb +28 -4
- package/behaviors/registry/ui/core/atoms/std-event-log.orb +42 -14
- package/behaviors/registry/ui/core/atoms/std-file-store.orb +56 -58
- package/behaviors/registry/ui/core/atoms/std-gantt-schedule.orb +44 -11
- package/behaviors/registry/ui/core/atoms/std-image-upload-multi.orb +12 -16
- package/behaviors/registry/ui/core/atoms/std-list.orb +48 -11
- package/behaviors/registry/ui/core/atoms/std-multi-party-flow.orb +91 -14
- package/behaviors/registry/ui/core/atoms/std-prose.orb +14 -1
- package/behaviors/registry/ui/core/atoms/std-rating-review.orb +79 -8
- package/behaviors/registry/ui/core/atoms/std-record-detail.orb +622 -66
- package/behaviors/registry/ui/core/atoms/std-recurrence.orb +108 -28
- package/behaviors/registry/ui/core/atoms/std-related.orb +82 -21
- package/behaviors/registry/ui/core/atoms/std-saved-search.orb +28 -18
- package/behaviors/registry/ui/core/atoms/std-scoped-list.orb +993 -0
- package/behaviors/registry/ui/core/atoms/std-selection.orb +62 -12
- package/behaviors/registry/ui/core/atoms/std-signature-capture.orb +2 -16
- package/behaviors/registry/ui/core/atoms/std-slide-deck.orb +2 -0
- package/behaviors/registry/ui/core/atoms/std-step-flow.orb +8 -8
- package/behaviors/registry/ui/core/atoms/std-tag-taxonomy.orb +48 -64
- package/behaviors/registry/ui/core/atoms/std-thread.orb +863 -141
- package/behaviors/registry/ui/core/atoms/std-tree.orb +40 -18
- package/behaviors/registry/ui/core/atoms/std-version-history.orb +76 -68
- package/behaviors/registry/ui/core/atoms/std-vote.orb +4 -54
- package/behaviors/registry/ui/core/atoms/std-wizard.orb +70 -10
- package/behaviors/registry/ui/core/atoms/ui-animated-graphic.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-animated-reveal.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-aside.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-atlas-image.orb +29 -0
- package/behaviors/registry/ui/core/atoms/ui-atlas-panel.orb +29 -0
- package/behaviors/registry/ui/core/atoms/ui-avatar.orb +236 -1
- package/behaviors/registry/ui/core/atoms/ui-badge.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-box.orb +231 -10
- package/behaviors/registry/ui/core/atoms/ui-button.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-card.orb +236 -1
- package/behaviors/registry/ui/core/atoms/ui-center.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-checkbox.orb +260 -0
- package/behaviors/registry/ui/core/atoms/ui-confetti-effect.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-day-cell.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-dialog.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-divider.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-filter-pill.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-flip-container.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-game-icon.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-hstack.orb +225 -3
- package/behaviors/registry/ui/core/atoms/ui-icon.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-image.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-infinite-scroll-sentinel.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-input.orb +21 -1
- package/behaviors/registry/ui/core/atoms/ui-label.orb +237 -1
- package/behaviors/registry/ui/core/atoms/ui-law-reference-tooltip.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-overlay.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-pattern-tile.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-presence.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-progress-bar.orb +236 -1
- package/behaviors/registry/ui/core/atoms/ui-radio.orb +252 -0
- package/behaviors/registry/ui/core/atoms/ui-range-slider.orb +268 -0
- package/behaviors/registry/ui/core/atoms/ui-section-header.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-select.orb +243 -0
- package/behaviors/registry/ui/core/atoms/ui-spacer.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-sparkline.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-spinner.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-stack.orb +225 -3
- package/behaviors/registry/ui/core/atoms/ui-status-dot.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-branch.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-connection.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-flow.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-grid.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-lobe.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-mesh.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-morph.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-node.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-pulse.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-ring.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-shield.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-stack.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-switch.orb +252 -0
- package/behaviors/registry/ui/core/atoms/ui-text-highlight.orb +268 -0
- package/behaviors/registry/ui/core/atoms/ui-textarea.orb +250 -0
- package/behaviors/registry/ui/core/atoms/ui-theme-toggle.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-time-slot-cell.orb +252 -0
- package/behaviors/registry/ui/core/atoms/ui-trend-indicator.orb +236 -1
- package/behaviors/registry/ui/core/atoms/ui-typewriter-text.orb +236 -0
- package/behaviors/registry/ui/core/atoms/ui-typography.orb +231 -8
- package/behaviors/registry/ui/core/atoms/ui-vstack.orb +225 -3
- package/behaviors/registry/ui/core/molecules/ui-accordion.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-activation-block.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-alert.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-animated-counter.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-bloom-quiz-block.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-branching-logic-builder.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-breadcrumb.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-calendar-grid.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-carousel.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-change-list.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-chart-legend.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-chart.orb +236 -3
- package/behaviors/registry/ui/core/molecules/ui-code-block.orb +348 -0
- package/behaviors/registry/ui/core/molecules/ui-command-palette.orb +252 -0
- package/behaviors/registry/ui/core/molecules/ui-commit-row.orb +268 -1
- package/behaviors/registry/ui/core/molecules/ui-confirm-dialog.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-connection-block.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-container.orb +236 -2
- package/behaviors/registry/ui/core/molecules/ui-content-renderer.orb +241 -7
- package/behaviors/registry/ui/core/molecules/ui-data-grid.orb +279 -0
- package/behaviors/registry/ui/core/molecules/ui-data-list.orb +279 -1
- package/behaviors/registry/ui/core/molecules/ui-date-range-picker.orb +252 -0
- package/behaviors/registry/ui/core/molecules/ui-date-range-selector.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-breadcrumb.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-pagination.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-search.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-sidebar.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-toc.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-document-details.orb +284 -0
- package/behaviors/registry/ui/core/molecules/ui-document-panel.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-document-viewer.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-drawer.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-edge-decoration.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-emoji-picker.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-empty-state.orb +236 -1
- package/behaviors/registry/ui/core/molecules/ui-error-boundary.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-error-state.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-feature-card.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-feature-grid.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-file-tree.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-filter-group.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-flex.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-flip-card.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-floating-action-button.orb +236 -1
- package/behaviors/registry/ui/core/molecules/ui-floating-toolbar.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-form-actions.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-form-field.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-form-layout.orb +241 -6
- package/behaviors/registry/ui/core/molecules/ui-form-section-header.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-fx-overlay.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-gantt.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-geometric-pattern.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-gradient-divider.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-graph-canvas.orb +243 -0
- package/behaviors/registry/ui/core/molecules/ui-graph-view.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-grid.orb +236 -5
- package/behaviors/registry/ui/core/molecules/ui-header.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-icon-button.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-import-preview-tree.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-import-progress.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-import-source-picker.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-input-group.orb +236 -1
- package/behaviors/registry/ui/core/molecules/ui-jazari-state-machine.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-lightbox.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-likert-scale.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-line-chart.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-loading-state.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-map-view.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-markdown-content.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-matrix-question.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-menu.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-meter.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-modal.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-navigation.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-notification.orb +237 -1
- package/behaviors/registry/ui/core/molecules/ui-number-stepper.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-option-constraint-group.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-orbital-visualization.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-page-header.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-page-transition.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-pagination.orb +252 -0
- package/behaviors/registry/ui/core/molecules/ui-popover.orb +252 -0
- package/behaviors/registry/ui/core/molecules/ui-positioned-canvas.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-progress-dots.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-pull-to-refresh.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-qr-scanner.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-quiz-block.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-reflection-block.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-relation-select.orb +252 -0
- package/behaviors/registry/ui/core/molecules/ui-repeatable-form-section.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-reply-tree.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-rich-text-editor.orb +252 -0
- package/behaviors/registry/ui/core/molecules/ui-scaled-diagram.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-search-input.orb +252 -0
- package/behaviors/registry/ui/core/molecules/ui-section.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-side-panel.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-sidebar.orb +252 -0
- package/behaviors/registry/ui/core/molecules/ui-signature-pad.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-simple-grid.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-skeleton.orb +242 -2
- package/behaviors/registry/ui/core/molecules/ui-social-proof.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-sortable-list.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-split.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-star-rating.orb +268 -0
- package/behaviors/registry/ui/core/molecules/ui-stat-display.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-swipeable-row.orb +284 -0
- package/behaviors/registry/ui/core/molecules/ui-table-view.orb +277 -1
- package/behaviors/registry/ui/core/molecules/ui-tabs.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-tag-input.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-tooltip.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-top-nav-item.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-upload-drop-zone.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-version-diff.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-violation-alert.orb +236 -1
- package/behaviors/registry/ui/core/molecules/ui-vote-stack.orb +236 -1
- package/behaviors/registry/ui/core/molecules/ui-wizard-container.orb +236 -0
- package/behaviors/registry/ui/core/molecules/ui-wizard-navigation.orb +284 -0
- package/behaviors/registry/ui/core/molecules/ui-wizard-progress.orb +236 -0
- package/behaviors/registry/ui/core/organisms/ui-chat-bar.orb +236 -1
- package/behaviors/registry/ui/core/organisms/ui-code-runner-panel.orb +236 -0
- package/behaviors/registry/ui/core/organisms/ui-dashboard-grid.orb +236 -1
- package/behaviors/registry/ui/core/organisms/ui-detail-panel.orb +1167 -22
- package/behaviors/registry/ui/core/organisms/ui-dock-layout.orb +236 -0
- package/behaviors/registry/ui/core/organisms/ui-drawer-slot.orb +21 -0
- package/behaviors/registry/ui/core/organisms/ui-entity-cards.orb +280 -2
- package/behaviors/registry/ui/core/organisms/ui-entity-list.orb +279 -3
- package/behaviors/registry/ui/core/organisms/ui-entity-table.orb +289 -1
- package/behaviors/registry/ui/core/organisms/ui-form-section.orb +284 -1
- package/behaviors/registry/ui/core/organisms/ui-form.orb +284 -1
- package/behaviors/registry/ui/core/organisms/ui-master-detail-layout.orb +236 -0
- package/behaviors/registry/ui/core/organisms/ui-master-detail.orb +268 -1
- package/behaviors/registry/ui/core/organisms/ui-media-gallery.orb +268 -1
- package/behaviors/registry/ui/core/organisms/ui-modal-slot.orb +21 -0
- package/behaviors/registry/ui/core/organisms/ui-runtime-debugger.orb +236 -0
- package/behaviors/registry/ui/core/organisms/ui-segment-renderer.orb +236 -0
- package/behaviors/registry/ui/core/organisms/ui-split-pane.orb +252 -0
- package/behaviors/registry/ui/core/organisms/ui-stat-card.orb +268 -2
- package/behaviors/registry/ui/core/organisms/ui-state-machine-view.orb +236 -2
- package/behaviors/registry/ui/core/organisms/ui-subagent-trace-panel.orb +236 -1
- package/behaviors/registry/ui/core/organisms/ui-tabbed-container.orb +236 -0
- package/behaviors/registry/ui/core/organisms/ui-timeline.orb +268 -0
- package/behaviors/registry/ui/core/organisms/ui-toast-slot.orb +236 -1
- package/behaviors/registry/ui/core/templates/ui-auth-layout.orb +215 -0
- package/behaviors/registry/ui/core/templates/ui-counter-template.orb +236 -1
- package/behaviors/registry/ui/core/templates/ui-generic-app-template.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-action-palette.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-action-tile.orb +236 -1
- package/behaviors/registry/ui/game/atoms/ui-canvas-2d.orb +243 -0
- package/behaviors/registry/ui/game/atoms/ui-canvas.orb +236 -1
- package/behaviors/registry/ui/game/atoms/ui-choice-button.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-control-button.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-control-grid.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-dialogue-bubble.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-draw-mesh.orb +0 -1
- package/behaviors/registry/ui/game/atoms/ui-draw-shape.orb +0 -2
- package/behaviors/registry/ui/game/atoms/ui-draw-sprite.orb +0 -1
- package/behaviors/registry/ui/game/atoms/ui-draw-text.orb +0 -3
- package/behaviors/registry/ui/game/atoms/ui-game-audio-toggle.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-game-hud.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-game-menu.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-health-bar.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-score-display.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-sequence-bar.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-stat-badge.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-state-graph.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-state-json-view.orb +236 -0
- package/behaviors/registry/ui/game/atoms/ui-trait-slot.orb +268 -1
- package/behaviors/registry/ui/learning/atoms/ui-algo-graph-canvas.orb +236 -0
- package/behaviors/registry/ui/learning/atoms/ui-algorithm-canvas.orb +252 -0
- package/behaviors/registry/ui/learning/atoms/ui-biology-canvas.orb +252 -0
- package/behaviors/registry/ui/learning/atoms/ui-chemistry-canvas.orb +252 -0
- package/behaviors/registry/ui/learning/atoms/ui-learning-canvas.orb +260 -0
- package/behaviors/registry/ui/learning/atoms/ui-math-canvas.orb +252 -0
- package/behaviors/registry/ui/learning/atoms/ui-physics-canvas.orb +252 -0
- package/dist/behaviors/exports-reader.js +14291 -7304
- package/dist/behaviors/functions/index.d.ts +4188 -339
- package/dist/behaviors/functions/index.js +14261 -7266
- package/dist/behaviors/index.d.ts +1 -1
- package/dist/behaviors/index.js +14292 -7305
- package/dist/behaviors/query.js +14291 -7304
- package/dist/behaviors-embeddings.hash.json +3 -3
- package/dist/behaviors-embeddings.json +23 -19
- package/dist/behaviors-registry.json +56939 -2084
- package/dist/index.d.ts +1 -1
- package/dist/index.js +14292 -7305
- package/dist/knob-embeddings.hash.json +3 -3
- package/dist/knob-embeddings.json +14821 -245
- package/dist/registry/factory-signatures.json +1 -1
- package/package.json +3 -3
- package/behaviors/lolo/agent/organisms/std-agent-rabit.lolo +0 -301
- package/behaviors/registry/agent/organisms/std-agent-rabit.orb +0 -2181
|
@@ -7,6 +7,9 @@ orbital RecordItemOrbital {
|
|
|
7
7
|
type RecordFieldSpec = { key : string!, header : string, format : date | currency | number | boolean | percent, variant : h3 | h4 | body | caption | badge | small | progress, colorMap : Map string BadgeColor, labels : Map string string }
|
|
8
8
|
type MetaFieldSpec = { key : string!, label : string, kind : text | boolean | select | readonly, options : [string], icon : string, format : date | currency | number | boolean | percent }
|
|
9
9
|
type RecordSection = { title : string!, fields : [string] }
|
|
10
|
+
type RecordStage = { value : string!, label : string! }
|
|
11
|
+
type RecordTab = { id : string!, label : string!, fields : [string], content : render-ui }
|
|
12
|
+
type LineItemColumn = { key : string!, header : string, align : left | center | right, format : badge | date | currency | number | percent | boolean }
|
|
10
13
|
|
|
11
14
|
type RecordItemLoaded = Event { data : RecordItem, totalCount : number } "Fired when the single record finishes loading; payload.data holds the record. totalCount is accepted so a fetch emitter shared with collection atoms still validates."
|
|
12
15
|
|
|
@@ -46,7 +49,7 @@ orbital RecordItemOrbital {
|
|
|
46
49
|
id: ?id
|
|
47
50
|
include: @config.include
|
|
48
51
|
})
|
|
49
|
-
(render-ui main
|
|
52
|
+
(render-ui main @config.loadingContent)
|
|
50
53
|
;; Slug-routed open (/things/:slug): no id on the payload, so fetch by
|
|
51
54
|
;; the slug field instead. Filtered rather than by-id, so the success
|
|
52
55
|
;; payload is a collection — its own event keeps the two shapes honest.
|
|
@@ -58,7 +61,7 @@ orbital RecordItemOrbital {
|
|
|
58
61
|
emit: { failure: RecordItemLoadFailed, success: RecordItemSlugLoaded }
|
|
59
62
|
include: @config.include
|
|
60
63
|
})
|
|
61
|
-
(render-ui main
|
|
64
|
+
(render-ui main @config.loadingContent)
|
|
62
65
|
;; Fallback: an init-opened surface whose INIT carried neither key —
|
|
63
66
|
;; fetch by the (missing) id so the failure surfaces as the error
|
|
64
67
|
;; state's alert + Retry instead of a silent blank page. This is the
|
|
@@ -70,7 +73,7 @@ orbital RecordItemOrbital {
|
|
|
70
73
|
id: ?id
|
|
71
74
|
include: @config.include
|
|
72
75
|
})
|
|
73
|
-
(render-ui main
|
|
76
|
+
(render-ui main @config.loadingContent)
|
|
74
77
|
;; Event-opened overlay (openOn: event): stays blank until OPEN_VIEW,
|
|
75
78
|
;; but renders the blank EXPLICITLY — an embedded @trait.X reference to
|
|
76
79
|
;; a trait with no indexed content is flagged by the compiled client's
|
|
@@ -102,7 +105,7 @@ orbital RecordItemOrbital {
|
|
|
102
105
|
id: ?id
|
|
103
106
|
include: @config.include
|
|
104
107
|
})
|
|
105
|
-
(render-ui main
|
|
108
|
+
(render-ui main @config.loadingContent)
|
|
106
109
|
}
|
|
107
110
|
|
|
108
111
|
state loading {
|
|
@@ -116,7 +119,7 @@ orbital RecordItemOrbital {
|
|
|
116
119
|
})
|
|
117
120
|
;; Skeleton, not a blank frame: the hand-authored detail traits this
|
|
118
121
|
;; atom replaces rendered nothing until the record arrived.
|
|
119
|
-
(render-ui main
|
|
122
|
+
(render-ui main @config.loadingContent)
|
|
120
123
|
INIT -> loading when (and ["=", (str/default ?id ""), ""] ["!=", (str/default ?slug ""), ""])
|
|
121
124
|
(set @entity.slug ?slug)
|
|
122
125
|
(set @entity.openDraft (str/default ?draft ""))
|
|
@@ -125,7 +128,7 @@ orbital RecordItemOrbital {
|
|
|
125
128
|
emit: { failure: RecordItemLoadFailed, success: RecordItemSlugLoaded }
|
|
126
129
|
include: @config.include
|
|
127
130
|
})
|
|
128
|
-
(render-ui main
|
|
131
|
+
(render-ui main @config.loadingContent)
|
|
129
132
|
;; A record minted blank by a document-first create arrives with
|
|
130
133
|
;; draft=1 and lands straight in the editor — a distinct target state,
|
|
131
134
|
;; not a flag on the render, so the machine stays honest about being
|
|
@@ -134,7 +137,7 @@ orbital RecordItemOrbital {
|
|
|
134
137
|
;; (object/merge … {}) is a type adapter only: type_compat lacks "declared object accepts a named row type" (ledgered)
|
|
135
138
|
(set @entity.loadedRow (object/merge ?data {}))
|
|
136
139
|
(set @entity.id (object/get ?data id))
|
|
137
|
-
(set @entity.name (object/get ?data @config.titleField))
|
|
140
|
+
(set @entity.name (if [">", (array/len @config.titleFields), 0] (str/join (array/map @config.titleFields (fn f (str/default (object/get ?data @f) ""))) " ") (object/get ?data @config.titleField)))
|
|
138
141
|
(set @entity.description (str/default (object/get ?data @config.subtitleField) ""))
|
|
139
142
|
(set @entity.content (object/get ?data @config.contentField))
|
|
140
143
|
(set @entity.coverUrl (str/default (object/get ?data @config.coverField) ""))
|
|
@@ -144,7 +147,7 @@ orbital RecordItemOrbital {
|
|
|
144
147
|
;; (object/merge … {}) is a type adapter only: type_compat lacks "declared object accepts a named row type" (ledgered)
|
|
145
148
|
(set @entity.loadedRow (object/merge ?data {}))
|
|
146
149
|
(set @entity.id (object/get ?data id))
|
|
147
|
-
(set @entity.name (object/get ?data @config.titleField))
|
|
150
|
+
(set @entity.name (if [">", (array/len @config.titleFields), 0] (str/join (array/map @config.titleFields (fn f (str/default (object/get ?data @f) ""))) " ") (object/get ?data @config.titleField)))
|
|
148
151
|
(set @entity.description (str/default (object/get ?data @config.subtitleField) ""))
|
|
149
152
|
(set @entity.content (object/get ?data @config.contentField))
|
|
150
153
|
(set @entity.coverUrl (str/default (object/get ?data @config.coverField) ""))
|
|
@@ -159,7 +162,7 @@ orbital RecordItemOrbital {
|
|
|
159
162
|
RecordItemSlugLoaded -> editing when (and [">", (array/len ?data), 0] ["=", (str/default (object/get @entity openDraft) ""), "1"])
|
|
160
163
|
(set @entity.loadedRow (array/first ?data))
|
|
161
164
|
(set @entity.id (object/get (array/first ?data) id))
|
|
162
|
-
(set @entity.name (object/get (array/first ?data) @config.titleField))
|
|
165
|
+
(set @entity.name (if [">", (array/len @config.titleFields), 0] (str/join (array/map @config.titleFields (fn f (str/default (object/get (array/first ?data) @f) ""))) " ") (object/get (array/first ?data) @config.titleField)))
|
|
163
166
|
(set @entity.description (str/default (object/get (array/first ?data) @config.subtitleField) ""))
|
|
164
167
|
(set @entity.content (object/get (array/first ?data) @config.contentField))
|
|
165
168
|
(set @entity.coverUrl (str/default (object/get (array/first ?data) @config.coverField) ""))
|
|
@@ -168,7 +171,7 @@ orbital RecordItemOrbital {
|
|
|
168
171
|
RecordItemSlugLoaded -> viewing when (and [">", (array/len ?data), 0] ["!=", (str/default (object/get @entity openDraft) ""), "1"])
|
|
169
172
|
(set @entity.loadedRow (array/first ?data))
|
|
170
173
|
(set @entity.id (object/get (array/first ?data) id))
|
|
171
|
-
(set @entity.name (object/get (array/first ?data) @config.titleField))
|
|
174
|
+
(set @entity.name (if [">", (array/len @config.titleFields), 0] (str/join (array/map @config.titleFields (fn f (str/default (object/get (array/first ?data) @f) ""))) " ") (object/get (array/first ?data) @config.titleField)))
|
|
172
175
|
(set @entity.description (str/default (object/get (array/first ?data) @config.subtitleField) ""))
|
|
173
176
|
(set @entity.content (object/get (array/first ?data) @config.contentField))
|
|
174
177
|
(set @entity.coverUrl (str/default (object/get (array/first ?data) @config.coverField) ""))
|
|
@@ -205,7 +208,7 @@ orbital RecordItemOrbital {
|
|
|
205
208
|
id: ?id
|
|
206
209
|
include: @config.include
|
|
207
210
|
})
|
|
208
|
-
(render-ui main
|
|
211
|
+
(render-ui main @config.loadingContent)
|
|
209
212
|
INIT -> loading when (and ["=", (str/default ?id ""), ""] ["!=", (str/default ?slug ""), ""] ["!=", ?slug, @entity.slug])
|
|
210
213
|
(set @entity.slug ?slug)
|
|
211
214
|
(set @entity.openDraft (str/default ?draft ""))
|
|
@@ -214,7 +217,7 @@ orbital RecordItemOrbital {
|
|
|
214
217
|
emit: { failure: RecordItemLoadFailed, success: RecordItemSlugLoaded }
|
|
215
218
|
include: @config.include
|
|
216
219
|
})
|
|
217
|
-
(render-ui main
|
|
220
|
+
(render-ui main @config.loadingContent)
|
|
218
221
|
CONTENT_CHANGE -> editing
|
|
219
222
|
(set @entity.content ?value)
|
|
220
223
|
(set @entity.loadedRow (object/set @entity.loadedRow @config.contentField ?value))
|
|
@@ -259,7 +262,7 @@ orbital RecordItemOrbital {
|
|
|
259
262
|
;; (object/merge … {}) is a type adapter only: type_compat lacks "declared object accepts a named row type" (ledgered)
|
|
260
263
|
(set @entity.loadedRow (object/merge ?data {}))
|
|
261
264
|
(set @entity.id (object/get ?data id))
|
|
262
|
-
(set @entity.name (object/get ?data @config.titleField))
|
|
265
|
+
(set @entity.name (if [">", (array/len @config.titleFields), 0] (str/join (array/map @config.titleFields (fn f (str/default (object/get ?data @f) ""))) " ") (object/get ?data @config.titleField)))
|
|
263
266
|
(set @entity.description (str/default (object/get ?data @config.subtitleField) ""))
|
|
264
267
|
(set @entity.content (object/get ?data @config.contentField))
|
|
265
268
|
(set @entity.coverUrl (str/default (object/get ?data @config.coverField) ""))
|
|
@@ -274,7 +277,7 @@ orbital RecordItemOrbital {
|
|
|
274
277
|
RecordItemSlugLoaded -> viewing when [">", (array/len ?data), 0]
|
|
275
278
|
(set @entity.loadedRow (array/first ?data))
|
|
276
279
|
(set @entity.id (object/get (array/first ?data) id))
|
|
277
|
-
(set @entity.name (object/get (array/first ?data) @config.titleField))
|
|
280
|
+
(set @entity.name (if [">", (array/len @config.titleFields), 0] (str/join (array/map @config.titleFields (fn f (str/default (object/get (array/first ?data) @f) ""))) " ") (object/get (array/first ?data) @config.titleField)))
|
|
278
281
|
(set @entity.description (str/default (object/get (array/first ?data) @config.subtitleField) ""))
|
|
279
282
|
(set @entity.content (object/get (array/first ?data) @config.contentField))
|
|
280
283
|
(set @entity.coverUrl (str/default (object/get (array/first ?data) @config.coverField) ""))
|
|
@@ -311,7 +314,7 @@ orbital RecordItemOrbital {
|
|
|
311
314
|
id: ?id
|
|
312
315
|
include: @config.include
|
|
313
316
|
})
|
|
314
|
-
(render-ui main
|
|
317
|
+
(render-ui main @config.loadingContent)
|
|
315
318
|
INIT -> loading when (and ["=", (str/default ?id ""), ""] ["!=", (str/default ?slug ""), ""])
|
|
316
319
|
(set @entity.slug ?slug)
|
|
317
320
|
(set @entity.openDraft (str/default ?draft ""))
|
|
@@ -320,7 +323,7 @@ orbital RecordItemOrbital {
|
|
|
320
323
|
emit: { failure: RecordItemLoadFailed, success: RecordItemSlugLoaded }
|
|
321
324
|
include: @config.include
|
|
322
325
|
})
|
|
323
|
-
(render-ui main
|
|
326
|
+
(render-ui main @config.loadingContent)
|
|
324
327
|
;; The hand-authored traits sent a failed load back to `loading` with no
|
|
325
328
|
;; effect, so the page stayed blank forever with no way out. RETRY is the
|
|
326
329
|
;; way out.
|
|
@@ -330,7 +333,7 @@ orbital RecordItemOrbital {
|
|
|
330
333
|
id: @entity.id
|
|
331
334
|
include: @config.include
|
|
332
335
|
})
|
|
333
|
-
(render-ui main
|
|
336
|
+
(render-ui main @config.loadingContent)
|
|
334
337
|
}
|
|
335
338
|
|
|
336
339
|
emits {
|
|
@@ -515,6 +518,11 @@ orbital RecordItemOrbital {
|
|
|
515
518
|
@description "Name of the field on the loaded record shown as the panel title (e.g. contactName, subject, title)."
|
|
516
519
|
@synonyms "title field, heading field, name field, label field"
|
|
517
520
|
@tier "presentation"
|
|
521
|
+
titleFields : [string] = []
|
|
522
|
+
@label "Which fields make up the title, in order?"
|
|
523
|
+
@description "For records whose name is split across fields (firstName + lastName): the listed fields' values joined with spaces become the title, and override titleField. Empty = titleField alone, the default."
|
|
524
|
+
@synonyms "full name, name parts, composite title, first and last name"
|
|
525
|
+
@tier "presentation"
|
|
518
526
|
subtitleField : string = description
|
|
519
527
|
@label "Which field is the subtitle?"
|
|
520
528
|
@description "Name of the field shown under the title (e.g. company, category). Set to \"\" for no subtitle at all — the right choice for the document look, whose metadata lives in the properties strip, not a second line."
|
|
@@ -535,6 +543,63 @@ orbital RecordItemOrbital {
|
|
|
535
543
|
@description "Visual treatment for the record surface. panel = an inline detail-panel in the page flow (bodyContent); slide-over = the same panel as a right-hand drawer over the list behind it (slideOverBodyContent); page = a full-width record page with roomier spacing (pageBodyContent); document = a wiki-page/note/article surface — big editable title over a rich-text body, no labelled field rows, click-to-edit with autosave (documentBodyContent / documentEditingContent). Selecting a look swaps which body tree renders after the record loads; any body may still be overridden directly at the call site."
|
|
536
544
|
@synonyms "detail style, drawer, slide over, full page, document, wiki page, note, article"
|
|
537
545
|
@tier "presentation"
|
|
546
|
+
recordLook : "panel" | "profile" | "showcase" | "workflow" | "map" | "ledger" | "conversation" | "workspace" = panel
|
|
547
|
+
@label "Record look"
|
|
548
|
+
@description "How the record itself is arranged inside the panel/slide-over/page frame, so not every app reads as an admin form. panel = labelled field grid (default); profile = a person or member: avatar + cover hero (avatarField, coverField); showcase = image-first product or listing with a gallery (mediaField); workflow = a lifecycle stepper over the record (stageField, stages); map = a place: location map hero (latitudeField, longitudeField); ledger = an invoice/order document: line items then totals (lineItemsField, lineItemColumns, totals); conversation = a ticket or thread: the messages beside the record facts (threadField); workspace = a hub record with tabs (tabs). Regions with no data simply do not render. A region fed by a separate trait (replies with their composer, editable order lines, activity history) is composed by overriding the body and passing detail-panel's threadContent / lineItemsContent / activityContent."
|
|
549
|
+
@synonyms "record style, profile page, product page, listing page, invoice view, ticket view, timeline view, tabbed record, location page"
|
|
550
|
+
@tier "presentation"
|
|
551
|
+
avatarField : string = ""
|
|
552
|
+
@label "Which field is the avatar?"
|
|
553
|
+
@description "Name of the image field shown as the profile look's avatar; the title supplies initials when it is empty."
|
|
554
|
+
@synonyms "photo field, avatar field, picture field"
|
|
555
|
+
@tier "presentation"
|
|
556
|
+
mediaField : string = ""
|
|
557
|
+
@label "Which field holds the images?"
|
|
558
|
+
@description "Name of the field the showcase look leads with: one image URL, a list of URLs, or a list of { src, caption }."
|
|
559
|
+
@synonyms "gallery field, photos field, images field, media field"
|
|
560
|
+
@tier "presentation"
|
|
561
|
+
stageField : string = ""
|
|
562
|
+
@label "Which field is the lifecycle stage?"
|
|
563
|
+
@description "Name of the field holding the record's current stage; the workflow look marks it on the stepper."
|
|
564
|
+
@synonyms "stage field, status field, phase field, step field"
|
|
565
|
+
@tier "presentation"
|
|
566
|
+
stages : [RecordStage] = []
|
|
567
|
+
@label "What is the lifecycle, in order?"
|
|
568
|
+
@description "The workflow look's stepper: one { value, label } per stage, value matching stageField's enum."
|
|
569
|
+
@synonyms "lifecycle, pipeline stages, steps, phases"
|
|
570
|
+
@tier "presentation"
|
|
571
|
+
latitudeField : string = ""
|
|
572
|
+
@label "Which field is the latitude?"
|
|
573
|
+
@description "Name of the latitude field the map look pins."
|
|
574
|
+
@tier "presentation"
|
|
575
|
+
longitudeField : string = ""
|
|
576
|
+
@label "Which field is the longitude?"
|
|
577
|
+
@description "Name of the longitude field the map look pins."
|
|
578
|
+
@tier "presentation"
|
|
579
|
+
lineItemsField : string = ""
|
|
580
|
+
@label "Which relation holds the line items?"
|
|
581
|
+
@description "Name of the hydrated relation (list it in include) whose rows the ledger look tables."
|
|
582
|
+
@synonyms "line items field, order lines, invoice lines, child rows"
|
|
583
|
+
@tier "presentation"
|
|
584
|
+
lineItemColumns : [LineItemColumn] = []
|
|
585
|
+
@label "Which line-item columns?"
|
|
586
|
+
@description "Columns of the ledger look's line-items table."
|
|
587
|
+
@tier "presentation"
|
|
588
|
+
totals : [RecordFieldSpec] = []
|
|
589
|
+
@label "Which fields are the totals?"
|
|
590
|
+
@description "Record fields shown under the line items in order (e.g. subtotal, tax, total); the last is emphasised."
|
|
591
|
+
@synonyms "totals, subtotal, grand total, amount due"
|
|
592
|
+
@tier "presentation"
|
|
593
|
+
threadField : string = ""
|
|
594
|
+
@label "Which relation holds the thread?"
|
|
595
|
+
@description "Name of the hydrated relation (list it in include) whose messages the conversation look shows."
|
|
596
|
+
@synonyms "messages field, replies field, comments field, thread field"
|
|
597
|
+
@tier "presentation"
|
|
598
|
+
tabs : [RecordTab] = []
|
|
599
|
+
@label "Which tabs follow the overview?"
|
|
600
|
+
@description "The workspace look's tabs after Overview: each lists field names, or composes a related trait as content (e.g. a company's deals list)."
|
|
601
|
+
@synonyms "tabs, record tabs, sub pages, related lists"
|
|
602
|
+
@tier "presentation"
|
|
538
603
|
contentField : string = content
|
|
539
604
|
@label "Which field holds the document body?"
|
|
540
605
|
@description "Name of the field on the loaded record that carries the rich-text HTML body the document look renders and edits (e.g. content, body, articleText)."
|
|
@@ -542,7 +607,7 @@ orbital RecordItemOrbital {
|
|
|
542
607
|
@tier "presentation"
|
|
543
608
|
coverField : string = ""
|
|
544
609
|
@label "Which field is the cover image?"
|
|
545
|
-
@description "Name of the image-typed field on the loaded record painted as the document look
|
|
610
|
+
@description "Name of the image-typed field on the loaded record painted as the hero banner of the document look and of the profile record look (e.g. coverImage, heroImage). Empty = no banner, the default."
|
|
546
611
|
@synonyms "cover field, hero image field, banner field"
|
|
547
612
|
@tier "presentation"
|
|
548
613
|
iconField : string = ""
|
|
@@ -571,6 +636,10 @@ orbital RecordItemOrbital {
|
|
|
571
636
|
@label "Placeholder text"
|
|
572
637
|
@description "Placeholder shown in the document body when it is empty."
|
|
573
638
|
@tier "presentation"
|
|
639
|
+
loadingContent : render-ui = { type: skeleton, variant: detail }
|
|
640
|
+
@label "Loading placeholder"
|
|
641
|
+
@description "Shown while the record loads, shaped like what replaces it so the page does not jump: the detail skeleton for the panel/slide-over/page looks; a document-look consumer sets { type: skeleton, variant: text, rows: 8 }."
|
|
642
|
+
@tier "internal"
|
|
574
643
|
bodyContent : render-ui = {
|
|
575
644
|
children: [{
|
|
576
645
|
actions: (array/filter @config.actions (fn action (or (= (array/len (object/get @action roles [])) 0) (array/includes (object/get @action roles []) @config.viewerRole))))
|
|
@@ -583,6 +652,19 @@ orbital RecordItemOrbital {
|
|
|
583
652
|
showActions: @config.showActions
|
|
584
653
|
subtitle: @entity.description
|
|
585
654
|
title: @entity.name
|
|
655
|
+
look: @config.recordLook
|
|
656
|
+
avatarField: @config.avatarField
|
|
657
|
+
coverField: @config.coverField
|
|
658
|
+
mediaField: @config.mediaField
|
|
659
|
+
stageField: @config.stageField
|
|
660
|
+
stages: @config.stages
|
|
661
|
+
latitudeField: @config.latitudeField
|
|
662
|
+
longitudeField: @config.longitudeField
|
|
663
|
+
lineItems: (object/get @entity.loadedRow @config.lineItemsField)
|
|
664
|
+
lineItemColumns: @config.lineItemColumns
|
|
665
|
+
totals: @config.totals
|
|
666
|
+
thread: (object/get @entity.loadedRow @config.threadField)
|
|
667
|
+
tabs: @config.tabs
|
|
586
668
|
type: detail-panel
|
|
587
669
|
}]
|
|
588
670
|
direction: vertical
|
|
@@ -605,6 +687,19 @@ orbital RecordItemOrbital {
|
|
|
605
687
|
slideOver: true
|
|
606
688
|
subtitle: @entity.description
|
|
607
689
|
title: @entity.name
|
|
690
|
+
look: @config.recordLook
|
|
691
|
+
avatarField: @config.avatarField
|
|
692
|
+
coverField: @config.coverField
|
|
693
|
+
mediaField: @config.mediaField
|
|
694
|
+
stageField: @config.stageField
|
|
695
|
+
stages: @config.stages
|
|
696
|
+
latitudeField: @config.latitudeField
|
|
697
|
+
longitudeField: @config.longitudeField
|
|
698
|
+
lineItems: (object/get @entity.loadedRow @config.lineItemsField)
|
|
699
|
+
lineItemColumns: @config.lineItemColumns
|
|
700
|
+
totals: @config.totals
|
|
701
|
+
thread: (object/get @entity.loadedRow @config.threadField)
|
|
702
|
+
tabs: @config.tabs
|
|
608
703
|
type: detail-panel
|
|
609
704
|
}]
|
|
610
705
|
direction: vertical
|
|
@@ -626,6 +721,19 @@ orbital RecordItemOrbital {
|
|
|
626
721
|
showActions: @config.showActions
|
|
627
722
|
subtitle: @entity.description
|
|
628
723
|
title: @entity.name
|
|
724
|
+
look: @config.recordLook
|
|
725
|
+
avatarField: @config.avatarField
|
|
726
|
+
coverField: @config.coverField
|
|
727
|
+
mediaField: @config.mediaField
|
|
728
|
+
stageField: @config.stageField
|
|
729
|
+
stages: @config.stages
|
|
730
|
+
latitudeField: @config.latitudeField
|
|
731
|
+
longitudeField: @config.longitudeField
|
|
732
|
+
lineItems: (object/get @entity.loadedRow @config.lineItemsField)
|
|
733
|
+
lineItemColumns: @config.lineItemColumns
|
|
734
|
+
totals: @config.totals
|
|
735
|
+
thread: (object/get @entity.loadedRow @config.threadField)
|
|
736
|
+
tabs: @config.tabs
|
|
629
737
|
type: detail-panel
|
|
630
738
|
}]
|
|
631
739
|
className: "w-full max-w-4xl"
|
|
@@ -42,8 +42,10 @@ orbital RecurrenceOrbital {
|
|
|
42
42
|
emit: { failure: RecurrenceLoadFailed, success: RecurrenceLoaded }
|
|
43
43
|
})
|
|
44
44
|
(render-ui main {
|
|
45
|
-
|
|
46
|
-
|
|
45
|
+
type: stack
|
|
46
|
+
direction: vertical
|
|
47
|
+
gap: lg
|
|
48
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: card }, { type: skeleton, variant: list, rows: 6 }]
|
|
47
49
|
})
|
|
48
50
|
RecurrenceLoaded -> viewing
|
|
49
51
|
(set @entity.frequency (object/get (array/first ?data) frequency weekly))
|
|
@@ -176,8 +178,10 @@ orbital RecurrenceOrbital {
|
|
|
176
178
|
emit: { failure: RecurrenceLoadFailed, success: RecurrenceLoaded }
|
|
177
179
|
})
|
|
178
180
|
(render-ui main {
|
|
179
|
-
|
|
180
|
-
|
|
181
|
+
type: stack
|
|
182
|
+
direction: vertical
|
|
183
|
+
gap: lg
|
|
184
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: card }, { type: skeleton, variant: list, rows: 6 }]
|
|
181
185
|
})
|
|
182
186
|
RecurrenceSaveFailed -> error
|
|
183
187
|
(set @entity.errorMessage ?error)
|
|
@@ -322,17 +326,15 @@ orbital RecurrenceOrbital {
|
|
|
322
326
|
(persist update RecurrenceView ?data {
|
|
323
327
|
emit: { failure: RecurrenceSaveFailed, success: RecurrenceSaved }
|
|
324
328
|
})
|
|
325
|
-
(render-ui main {
|
|
326
|
-
title: "Saving rule…"
|
|
327
|
-
type: loading-state
|
|
328
|
-
})
|
|
329
329
|
CANCEL_RULE -> loading
|
|
330
330
|
(fetch RecurrenceView {
|
|
331
331
|
emit: { failure: RecurrenceLoadFailed, success: RecurrenceLoaded }
|
|
332
332
|
})
|
|
333
333
|
(render-ui main {
|
|
334
|
-
|
|
335
|
-
|
|
334
|
+
type: stack
|
|
335
|
+
direction: vertical
|
|
336
|
+
gap: lg
|
|
337
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: card }, { type: skeleton, variant: list, rows: 6 }]
|
|
336
338
|
})
|
|
337
339
|
}
|
|
338
340
|
|
|
@@ -341,10 +343,6 @@ orbital RecurrenceOrbital {
|
|
|
341
343
|
(persist update RecurrenceView { id: ?id, status: skipped } {
|
|
342
344
|
emit: { failure: RecurrenceSaveFailed, success: RecurrenceSaved }
|
|
343
345
|
})
|
|
344
|
-
(render-ui main {
|
|
345
|
-
title: "Skipping…"
|
|
346
|
-
type: loading-state
|
|
347
|
-
})
|
|
348
346
|
RESCHEDULE_OCCURRENCE -> loading
|
|
349
347
|
(set @entity.rescheduleDate ?newDate)
|
|
350
348
|
(persist update RecurrenceView {
|
|
@@ -363,8 +361,10 @@ orbital RecurrenceOrbital {
|
|
|
363
361
|
emit: { failure: RecurrenceLoadFailed, success: RecurrenceLoaded }
|
|
364
362
|
})
|
|
365
363
|
(render-ui main {
|
|
366
|
-
|
|
367
|
-
|
|
364
|
+
type: stack
|
|
365
|
+
direction: vertical
|
|
366
|
+
gap: lg
|
|
367
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: card }, { type: skeleton, variant: list, rows: 6 }]
|
|
368
368
|
})
|
|
369
369
|
}
|
|
370
370
|
|
|
@@ -374,16 +374,20 @@ orbital RecurrenceOrbital {
|
|
|
374
374
|
emit: { failure: RecurrenceLoadFailed, success: RecurrenceLoaded }
|
|
375
375
|
})
|
|
376
376
|
(render-ui main {
|
|
377
|
-
|
|
378
|
-
|
|
377
|
+
type: stack
|
|
378
|
+
direction: vertical
|
|
379
|
+
gap: lg
|
|
380
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: card }, { type: skeleton, variant: list, rows: 6 }]
|
|
379
381
|
})
|
|
380
382
|
}
|
|
381
383
|
|
|
382
384
|
state error {
|
|
383
385
|
INIT -> loading
|
|
384
386
|
(render-ui main {
|
|
385
|
-
|
|
386
|
-
|
|
387
|
+
type: stack
|
|
388
|
+
direction: vertical
|
|
389
|
+
gap: lg
|
|
390
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: card }, { type: skeleton, variant: list, rows: 6 }]
|
|
387
391
|
})
|
|
388
392
|
}
|
|
389
393
|
|
|
@@ -33,17 +33,10 @@ orbital RelatedItemOrbital {
|
|
|
33
33
|
emit: { failure: RelatedItemLoadFailed, success: RelatedItemLoaded }
|
|
34
34
|
})
|
|
35
35
|
(render-ui main {
|
|
36
|
-
align: center
|
|
37
|
-
children: [{ type: spinner }, {
|
|
38
|
-
color: muted
|
|
39
|
-
content: "Loading related…"
|
|
40
|
-
type: typography
|
|
41
|
-
variant: caption
|
|
42
|
-
}]
|
|
43
|
-
className: py-8
|
|
44
|
-
direction: vertical
|
|
45
|
-
gap: sm
|
|
46
36
|
type: stack
|
|
37
|
+
direction: vertical
|
|
38
|
+
gap: lg
|
|
39
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: list, rows: 6 }]
|
|
47
40
|
})
|
|
48
41
|
SHOW_RELATED -> loading
|
|
49
42
|
(fetch RelatedItem {
|
|
@@ -51,17 +44,10 @@ orbital RelatedItemOrbital {
|
|
|
51
44
|
filter: (or ["=", @config.relationField, ""] ["=", (object/get @entity @config.relationField), ?key])
|
|
52
45
|
})
|
|
53
46
|
(render-ui main {
|
|
54
|
-
align: center
|
|
55
|
-
children: [{ type: spinner }, {
|
|
56
|
-
color: muted
|
|
57
|
-
content: "Loading related…"
|
|
58
|
-
type: typography
|
|
59
|
-
variant: caption
|
|
60
|
-
}]
|
|
61
|
-
className: py-8
|
|
62
|
-
direction: vertical
|
|
63
|
-
gap: sm
|
|
64
47
|
type: stack
|
|
48
|
+
direction: vertical
|
|
49
|
+
gap: lg
|
|
50
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: list, rows: 6 }]
|
|
65
51
|
})
|
|
66
52
|
RelatedItemLoaded -> loaded
|
|
67
53
|
(render-ui main {
|
|
@@ -140,7 +126,12 @@ orbital RelatedItemOrbital {
|
|
|
140
126
|
(fetch RelatedItem {
|
|
141
127
|
emit: { failure: RelatedItemLoadFailed, success: RelatedItemLoaded }
|
|
142
128
|
})
|
|
143
|
-
(render-ui main {
|
|
129
|
+
(render-ui main {
|
|
130
|
+
type: stack
|
|
131
|
+
direction: vertical
|
|
132
|
+
gap: lg
|
|
133
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: list, rows: 6 }]
|
|
134
|
+
})
|
|
144
135
|
SELECT_RELATED -> loaded
|
|
145
136
|
(set @entity.id ?id)
|
|
146
137
|
SHOW_RELATED -> loading
|
|
@@ -148,7 +139,12 @@ orbital RelatedItemOrbital {
|
|
|
148
139
|
emit: { failure: RelatedItemLoadFailed, success: RelatedItemLoaded }
|
|
149
140
|
filter: (or ["=", @config.relationField, ""] ["=", (object/get @entity @config.relationField), ?key])
|
|
150
141
|
})
|
|
151
|
-
(render-ui main {
|
|
142
|
+
(render-ui main {
|
|
143
|
+
type: stack
|
|
144
|
+
direction: vertical
|
|
145
|
+
gap: lg
|
|
146
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: list, rows: 6 }]
|
|
147
|
+
})
|
|
152
148
|
}
|
|
153
149
|
|
|
154
150
|
state error {
|
|
@@ -156,20 +152,35 @@ orbital RelatedItemOrbital {
|
|
|
156
152
|
(fetch RelatedItem {
|
|
157
153
|
emit: { failure: RelatedItemLoadFailed, success: RelatedItemLoaded }
|
|
158
154
|
})
|
|
159
|
-
(render-ui main {
|
|
155
|
+
(render-ui main {
|
|
156
|
+
type: stack
|
|
157
|
+
direction: vertical
|
|
158
|
+
gap: lg
|
|
159
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: list, rows: 6 }]
|
|
160
|
+
})
|
|
160
161
|
;; the error screen's Retry button: INIT is lifecycle-only and the bus never
|
|
161
162
|
;; delivers it, so the affordance must target a first-class user event
|
|
162
163
|
RETRY -> loading
|
|
163
164
|
(fetch RelatedItem {
|
|
164
165
|
emit: { failure: RelatedItemLoadFailed, success: RelatedItemLoaded }
|
|
165
166
|
})
|
|
166
|
-
(render-ui main {
|
|
167
|
+
(render-ui main {
|
|
168
|
+
type: stack
|
|
169
|
+
direction: vertical
|
|
170
|
+
gap: lg
|
|
171
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: list, rows: 6 }]
|
|
172
|
+
})
|
|
167
173
|
SHOW_RELATED -> loading
|
|
168
174
|
(fetch RelatedItem {
|
|
169
175
|
emit: { failure: RelatedItemLoadFailed, success: RelatedItemLoaded }
|
|
170
176
|
filter: (or ["=", @config.relationField, ""] ["=", (object/get @entity @config.relationField), ?key])
|
|
171
177
|
})
|
|
172
|
-
(render-ui main {
|
|
178
|
+
(render-ui main {
|
|
179
|
+
type: stack
|
|
180
|
+
direction: vertical
|
|
181
|
+
gap: lg
|
|
182
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: list, rows: 6 }]
|
|
183
|
+
})
|
|
173
184
|
}
|
|
174
185
|
|
|
175
186
|
emits {
|
|
@@ -33,17 +33,10 @@ orbital SavedSearchOrbital {
|
|
|
33
33
|
emit: { failure: SavedSearchLoadFailed, success: SavedSearchLoaded }
|
|
34
34
|
})
|
|
35
35
|
(render-ui main {
|
|
36
|
-
align: center
|
|
37
|
-
children: [{ type: spinner }, {
|
|
38
|
-
color: muted
|
|
39
|
-
content: "Loading saved searches…"
|
|
40
|
-
type: typography
|
|
41
|
-
variant: caption
|
|
42
|
-
}]
|
|
43
|
-
className: py-12
|
|
44
|
-
direction: vertical
|
|
45
|
-
gap: md
|
|
46
36
|
type: stack
|
|
37
|
+
direction: vertical
|
|
38
|
+
gap: lg
|
|
39
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: grid, rows: 6 }]
|
|
47
40
|
})
|
|
48
41
|
SavedSearchLoaded -> browsing
|
|
49
42
|
(render-ui main {
|
|
@@ -100,17 +93,10 @@ orbital SavedSearchOrbital {
|
|
|
100
93
|
emit: { failure: SavedSearchLoadFailed, success: SavedSearchLoaded }
|
|
101
94
|
})
|
|
102
95
|
(render-ui main {
|
|
103
|
-
align: center
|
|
104
|
-
children: [{ type: spinner }, {
|
|
105
|
-
color: muted
|
|
106
|
-
content: "Loading saved searches…"
|
|
107
|
-
type: typography
|
|
108
|
-
variant: caption
|
|
109
|
-
}]
|
|
110
|
-
className: py-12
|
|
111
|
-
direction: vertical
|
|
112
|
-
gap: md
|
|
113
96
|
type: stack
|
|
97
|
+
direction: vertical
|
|
98
|
+
gap: lg
|
|
99
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: grid, rows: 6 }]
|
|
114
100
|
})
|
|
115
101
|
TOGGLE_ALERT -> browsing
|
|
116
102
|
(set @entity.id ?id)
|
|
@@ -159,10 +145,12 @@ orbital SavedSearchOrbital {
|
|
|
159
145
|
}, { type: divider }, {
|
|
160
146
|
action: RENAME
|
|
161
147
|
placeholder: Name
|
|
148
|
+
label: "Saved search name"
|
|
162
149
|
type: input
|
|
163
150
|
value: @entity.name
|
|
164
151
|
}, {
|
|
165
152
|
action: CHANGE_FREQUENCY
|
|
153
|
+
aria-label: "Alert frequency"
|
|
166
154
|
options: [{ label: Instant, value: instant }, { label: Daily, value: daily }, { label: Weekly, value: weekly }]
|
|
167
155
|
placeholder: "Alert frequency"
|
|
168
156
|
type: select
|
|
@@ -235,7 +223,12 @@ orbital SavedSearchOrbital {
|
|
|
235
223
|
(fetch SavedSearch {
|
|
236
224
|
emit: { failure: SavedSearchLoadFailed, success: SavedSearchLoaded }
|
|
237
225
|
})
|
|
238
|
-
(render-ui main {
|
|
226
|
+
(render-ui main {
|
|
227
|
+
type: stack
|
|
228
|
+
direction: vertical
|
|
229
|
+
gap: lg
|
|
230
|
+
children: [{ type: skeleton, variant: header }, { type: skeleton, variant: grid, rows: 6 }]
|
|
231
|
+
})
|
|
239
232
|
}
|
|
240
233
|
|
|
241
234
|
emits {
|