@almadar/std 16.238.0 → 16.241.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 +31682 -26740
- package/behaviors/lolo/agent/atoms/std-agent-memory.lolo +2 -2
- package/behaviors/lolo/agent/atoms/std-agent-session.lolo +337 -167
- package/behaviors/lolo/agent/atoms/std-agent-tool-loop.lolo +48 -9
- package/behaviors/lolo/agent/atoms/std-agent-trace.lolo +45 -8
- package/behaviors/lolo/agent/organisms/std-agent-assistant.lolo +33 -9
- package/behaviors/lolo/ui/avl/atoms/ui-avl-glyph.lolo +6 -1
- package/behaviors/lolo/ui/avl/atoms/ui-avl-state-machine.lolo +5 -0
- package/behaviors/lolo/ui/core/.hand-authored.json +0 -4
- package/behaviors/lolo/ui/core/atoms/std-billable-hour.lolo +23 -10
- package/behaviors/lolo/ui/core/atoms/std-board.lolo +53 -6
- package/behaviors/lolo/ui/core/atoms/std-browse.lolo +30 -100
- package/behaviors/lolo/ui/core/atoms/std-graphs.lolo +2 -2
- package/behaviors/lolo/ui/core/atoms/std-panel-launcher.lolo +97 -0
- package/behaviors/lolo/ui/core/atoms/std-site-header.lolo +15 -3
- package/behaviors/lolo/ui/core/atoms/std-stats.lolo +1 -1
- package/behaviors/lolo/ui/core/atoms/std-tag-strip.lolo +2 -2
- package/behaviors/lolo/ui/core/atoms/std-tag-taxonomy.lolo +7 -7
- package/behaviors/lolo/ui/core/atoms/std-version-history.lolo +1 -1
- package/behaviors/lolo/ui/core/atoms/ui-animated-graphic.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-animated-reveal.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-aside.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-atlas-image.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-atlas-panel.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-avatar.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-badge.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-box.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-button.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-card.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-center.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-checkbox.lolo +6 -0
- package/behaviors/lolo/ui/core/atoms/ui-confetti-effect.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-day-cell.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-dialog.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-divider.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-filter-pill.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-flip-container.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-game-icon.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-hstack.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-icon.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-image.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-infinite-scroll-sentinel.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-input.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-label.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-law-reference-tooltip.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-overlay.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-pattern-tile.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-presence.lolo +6 -1
- package/behaviors/lolo/ui/core/atoms/ui-progress-bar.lolo +6 -1
- package/behaviors/lolo/ui/core/atoms/ui-radio.lolo +6 -0
- package/behaviors/lolo/ui/core/atoms/ui-range-slider.lolo +7 -0
- package/behaviors/lolo/ui/core/atoms/ui-section-header.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-select.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-spacer.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-sparkline.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-spinner.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-stack.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-status-dot.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-branch.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-connection.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-flow.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-grid.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-lobe.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-mesh.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-morph.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-node.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-pulse.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-ring.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-shield.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-svg-stack.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-switch.lolo +6 -0
- package/behaviors/lolo/ui/core/atoms/ui-text-highlight.lolo +7 -0
- package/behaviors/lolo/ui/core/atoms/ui-textarea.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-theme-toggle.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-time-slot-cell.lolo +6 -0
- package/behaviors/lolo/ui/core/atoms/ui-trend-indicator.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-typewriter-text.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-typography.lolo +5 -0
- package/behaviors/lolo/ui/core/atoms/ui-vstack.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-accordion.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-activation-block.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-agent-activity-feed.lolo +249 -0
- package/behaviors/lolo/ui/core/molecules/ui-agent-activity-row.lolo +218 -0
- package/behaviors/lolo/ui/core/molecules/ui-agent-chat-feed.lolo +231 -0
- package/behaviors/lolo/ui/core/molecules/ui-alert.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-animated-counter.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-bloom-quiz-block.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-branching-logic-builder.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-breadcrumb.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-calendar-grid.lolo +14 -0
- package/behaviors/lolo/ui/core/molecules/ui-carousel.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-change-list.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-chart-legend.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-chart.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-code-block.lolo +12 -0
- package/behaviors/lolo/ui/core/molecules/ui-command-palette.lolo +6 -0
- package/behaviors/lolo/ui/core/molecules/ui-commit-row.lolo +7 -0
- package/behaviors/lolo/ui/core/molecules/ui-confirm-dialog.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-connection-block.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-container.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-content-renderer.lolo +5 -9
- package/behaviors/lolo/ui/core/molecules/ui-data-grid.lolo +18 -4
- package/behaviors/lolo/ui/core/molecules/ui-data-list.lolo +18 -4
- package/behaviors/lolo/ui/core/molecules/ui-date-range-picker.lolo +6 -0
- package/behaviors/lolo/ui/core/molecules/ui-date-range-selector.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-breadcrumb.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-pagination.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-search.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-sidebar.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-doc-toc.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-document-details.lolo +8 -0
- package/behaviors/lolo/ui/core/molecules/ui-document-panel.lolo +7 -0
- package/behaviors/lolo/ui/core/molecules/ui-document-viewer.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-drawer.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-edge-decoration.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-emoji-picker.lolo +6 -1
- package/behaviors/lolo/ui/core/molecules/ui-empty-state.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-error-boundary.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-error-state.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-feature-card.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-feature-grid.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-file-tree.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-filter-group.lolo +7 -0
- package/behaviors/lolo/ui/core/molecules/ui-flex.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-flip-card.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-floating-action-button.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-floating-toolbar.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-form-actions.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-form-field.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-form-layout.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-form-section-header.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-fx-overlay.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-gantt.lolo +14 -0
- package/behaviors/lolo/ui/core/molecules/ui-geometric-pattern.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-gradient-divider.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-graph-canvas.lolo +40 -5
- package/behaviors/lolo/ui/core/molecules/ui-graph-view.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-grid.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-header.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-icon-button.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-import-preview-tree.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-import-progress.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-import-source-picker.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-input-group.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-jazari-state-machine.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-lightbox.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-likert-scale.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-line-chart.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-loading-state.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-map-view.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-markdown-content.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-matrix-question.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-menu.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-meter.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-modal.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-navigation.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-notification.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-number-stepper.lolo +7 -0
- package/behaviors/lolo/ui/core/molecules/ui-option-constraint-group.lolo +20 -0
- package/behaviors/lolo/ui/core/molecules/ui-orbital-visualization.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-page-header.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-page-transition.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-pagination.lolo +6 -0
- package/behaviors/lolo/ui/core/molecules/ui-popover.lolo +6 -0
- package/behaviors/lolo/ui/core/molecules/ui-positioned-canvas.lolo +7 -0
- package/behaviors/lolo/ui/core/molecules/ui-progress-dots.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-pull-to-refresh.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-qr-scanner.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-quiz-block.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-reflection-block.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-relation-select.lolo +6 -0
- package/behaviors/lolo/ui/core/molecules/ui-repeatable-form-section.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-reply-tree.lolo +7 -0
- package/behaviors/lolo/ui/core/molecules/ui-rich-text-editor.lolo +6 -0
- package/behaviors/lolo/ui/core/molecules/ui-scaled-diagram.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-search-input.lolo +7 -1
- package/behaviors/lolo/ui/core/molecules/ui-section.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-side-panel.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-sidebar.lolo +6 -0
- package/behaviors/lolo/ui/core/molecules/ui-signature-pad.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-simple-grid.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-skeleton.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-social-proof.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-sortable-list.lolo +7 -0
- package/behaviors/lolo/ui/core/molecules/ui-split.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-star-rating.lolo +7 -0
- package/behaviors/lolo/ui/core/molecules/ui-stat-display.lolo +10 -0
- package/behaviors/lolo/ui/core/molecules/ui-swipeable-row.lolo +8 -0
- package/behaviors/lolo/ui/core/molecules/ui-table-view.lolo +14 -0
- package/behaviors/lolo/ui/core/molecules/ui-tabs.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-tag-input.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-tooltip.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-top-nav-item.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-upload-drop-zone.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-version-diff.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-violation-alert.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-vote-stack.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-wizard-container.lolo +5 -0
- package/behaviors/lolo/ui/core/molecules/ui-wizard-navigation.lolo +8 -0
- package/behaviors/lolo/ui/core/molecules/ui-wizard-progress.lolo +5 -0
- package/behaviors/lolo/ui/core/organisms/ui-chat-bar.lolo +16 -0
- package/behaviors/lolo/ui/core/organisms/ui-code-runner-panel.lolo +5 -0
- package/behaviors/lolo/ui/core/organisms/ui-dashboard-grid.lolo +10 -0
- package/behaviors/lolo/ui/core/organisms/ui-detail-panel.lolo +21 -5
- package/behaviors/lolo/ui/core/organisms/ui-dock-layout.lolo +8 -3
- package/behaviors/lolo/ui/core/organisms/ui-drawer-slot.lolo +5 -0
- package/behaviors/lolo/ui/core/organisms/ui-form-section.lolo +16 -0
- package/behaviors/lolo/ui/core/organisms/ui-form.lolo +16 -0
- package/behaviors/lolo/ui/core/organisms/ui-master-detail-layout.lolo +5 -0
- package/behaviors/lolo/ui/core/organisms/ui-media-gallery.lolo +14 -0
- package/behaviors/lolo/ui/core/organisms/ui-modal-slot.lolo +5 -0
- package/behaviors/lolo/ui/core/organisms/ui-runtime-debugger.lolo +5 -0
- package/behaviors/lolo/ui/core/organisms/ui-segment-renderer.lolo +9 -3
- package/behaviors/lolo/ui/core/organisms/ui-split-pane.lolo +6 -0
- package/behaviors/lolo/ui/core/organisms/ui-stat-card.lolo +14 -0
- package/behaviors/lolo/ui/core/organisms/ui-state-machine-view.lolo +8 -3
- package/behaviors/lolo/ui/core/organisms/ui-subagent-trace-panel.lolo +232 -0
- package/behaviors/lolo/ui/core/organisms/ui-tabbed-container.lolo +5 -0
- package/behaviors/lolo/ui/core/organisms/ui-timeline.lolo +14 -0
- package/behaviors/lolo/ui/core/organisms/ui-toast-slot.lolo +5 -0
- package/behaviors/lolo/ui/core/templates/ui-counter-template.lolo +5 -0
- package/behaviors/lolo/ui/core/templates/ui-generic-app-template.lolo +5 -0
- package/behaviors/lolo/ui/game/.hand-authored.json +2 -2
- package/behaviors/lolo/ui/game/atoms/ui-action-palette.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-action-tile.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-canvas-2d.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-canvas.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-choice-button.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-control-button.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-control-grid.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-dialogue-bubble.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-game-audio-toggle.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-game-hud.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-game-menu.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-health-bar.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-score-display.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-sequence-bar.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-stat-badge.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-state-graph.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-state-json-view.lolo +5 -0
- package/behaviors/lolo/ui/game/atoms/ui-trait-slot.lolo +7 -0
- package/behaviors/lolo/ui/learning/atoms/ui-algo-graph-canvas.lolo +5 -0
- package/behaviors/lolo/ui/learning/atoms/ui-algorithm-canvas.lolo +6 -0
- package/behaviors/lolo/ui/learning/atoms/ui-biology-canvas.lolo +6 -0
- package/behaviors/lolo/ui/learning/atoms/ui-chemistry-canvas.lolo +6 -0
- package/behaviors/lolo/ui/learning/atoms/ui-learning-canvas.lolo +6 -0
- package/behaviors/lolo/ui/learning/atoms/ui-math-canvas.lolo +6 -0
- package/behaviors/lolo/ui/learning/atoms/ui-physics-canvas.lolo +6 -0
- package/behaviors/lolo-behavior-contracts.json +1 -1
- package/behaviors/registry/agent/atoms/std-agent-memory.orb +30 -7
- package/behaviors/registry/agent/atoms/std-agent-session.orb +1509 -601
- package/behaviors/registry/agent/atoms/std-agent-tool-loop.orb +549 -116
- package/behaviors/registry/agent/atoms/std-agent-trace.orb +383 -87
- package/behaviors/registry/agent/organisms/std-agent-assistant.orb +116 -9
- package/behaviors/registry/factory-signatures.json +1 -1
- package/behaviors/registry/ui/avl/atoms/ui-avl-glyph.orb +20 -0
- package/behaviors/registry/ui/avl/atoms/ui-avl-state-machine.orb +19 -0
- package/behaviors/registry/ui/core/atoms/std-billable-hour.orb +44 -21
- package/behaviors/registry/ui/core/atoms/std-board.orb +110 -14
- package/behaviors/registry/ui/core/atoms/std-browse.orb +117 -142
- package/behaviors/registry/ui/core/atoms/std-graphs.orb +14 -2
- package/behaviors/registry/ui/core/atoms/std-panel-launcher.orb +312 -0
- package/behaviors/registry/ui/core/atoms/std-site-header.orb +40 -2
- package/behaviors/registry/ui/core/atoms/std-stats.orb +1 -1
- package/behaviors/registry/ui/core/atoms/std-tag-strip.orb +2 -0
- package/behaviors/registry/ui/core/atoms/std-tag-taxonomy.orb +24 -0
- package/behaviors/registry/ui/core/atoms/std-version-history.orb +8 -1
- package/behaviors/registry/ui/core/atoms/ui-animated-graphic.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-animated-reveal.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-aside.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-atlas-image.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-atlas-panel.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-avatar.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-badge.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-box.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-button.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-card.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-center.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-checkbox.orb +20 -0
- package/behaviors/registry/ui/core/atoms/ui-confetti-effect.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-day-cell.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-dialog.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-divider.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-filter-pill.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-flip-container.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-game-icon.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-hstack.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-icon.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-image.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-infinite-scroll-sentinel.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-input.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-label.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-law-reference-tooltip.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-overlay.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-pattern-tile.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-presence.orb +20 -0
- package/behaviors/registry/ui/core/atoms/ui-progress-bar.orb +20 -1
- package/behaviors/registry/ui/core/atoms/ui-radio.orb +20 -0
- package/behaviors/registry/ui/core/atoms/ui-range-slider.orb +21 -0
- package/behaviors/registry/ui/core/atoms/ui-section-header.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-select.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-spacer.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-sparkline.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-spinner.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-stack.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-status-dot.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-branch.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-connection.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-flow.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-grid.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-lobe.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-mesh.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-morph.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-node.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-pulse.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-ring.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-shield.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-svg-stack.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-switch.orb +20 -0
- package/behaviors/registry/ui/core/atoms/ui-text-highlight.orb +21 -0
- package/behaviors/registry/ui/core/atoms/ui-textarea.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-theme-toggle.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-time-slot-cell.orb +20 -0
- package/behaviors/registry/ui/core/atoms/ui-trend-indicator.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-typewriter-text.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-typography.orb +19 -0
- package/behaviors/registry/ui/core/atoms/ui-vstack.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-accordion.orb +31 -0
- package/behaviors/registry/ui/core/molecules/ui-activation-block.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-agent-activity-feed.orb +1881 -0
- package/behaviors/registry/ui/core/molecules/ui-agent-activity-row.orb +1817 -0
- package/behaviors/registry/ui/core/molecules/ui-agent-chat-feed.orb +1792 -0
- package/behaviors/registry/ui/core/molecules/ui-alert.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-animated-counter.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-bloom-quiz-block.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-branching-logic-builder.orb +31 -0
- package/behaviors/registry/ui/core/molecules/ui-breadcrumb.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-calendar-grid.orb +35 -0
- package/behaviors/registry/ui/core/molecules/ui-carousel.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-change-list.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-chart-legend.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-chart.orb +32 -0
- package/behaviors/registry/ui/core/molecules/ui-code-block.orb +26 -0
- package/behaviors/registry/ui/core/molecules/ui-command-palette.orb +20 -0
- package/behaviors/registry/ui/core/molecules/ui-commit-row.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-confirm-dialog.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-connection-block.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-container.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-content-renderer.orb +19 -38
- package/behaviors/registry/ui/core/molecules/ui-data-grid.orb +42 -0
- package/behaviors/registry/ui/core/molecules/ui-data-list.orb +42 -0
- package/behaviors/registry/ui/core/molecules/ui-date-range-picker.orb +20 -0
- package/behaviors/registry/ui/core/molecules/ui-date-range-selector.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-breadcrumb.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-pagination.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-search.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-sidebar.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-doc-toc.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-document-details.orb +22 -0
- package/behaviors/registry/ui/core/molecules/ui-document-panel.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-document-viewer.orb +31 -0
- package/behaviors/registry/ui/core/molecules/ui-drawer.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-edge-decoration.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-emoji-picker.orb +20 -1
- package/behaviors/registry/ui/core/molecules/ui-empty-state.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-error-boundary.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-error-state.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-feature-card.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-feature-grid.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-file-tree.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-filter-group.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-flex.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-flip-card.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-floating-action-button.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-floating-toolbar.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-form-actions.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-form-field.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-form-layout.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-form-section-header.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-fx-overlay.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-gantt.orb +35 -0
- package/behaviors/registry/ui/core/molecules/ui-geometric-pattern.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-gradient-divider.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-graph-canvas.orb +579 -108
- package/behaviors/registry/ui/core/molecules/ui-graph-view.orb +31 -0
- package/behaviors/registry/ui/core/molecules/ui-grid.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-header.orb +26 -0
- package/behaviors/registry/ui/core/molecules/ui-icon-button.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-import-preview-tree.orb +31 -0
- package/behaviors/registry/ui/core/molecules/ui-import-progress.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-import-source-picker.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-input-group.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-jazari-state-machine.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-lightbox.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-likert-scale.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-line-chart.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-loading-state.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-map-view.orb +31 -0
- package/behaviors/registry/ui/core/molecules/ui-markdown-content.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-matrix-question.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-menu.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-meter.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-modal.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-navigation.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-notification.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-number-stepper.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-option-constraint-group.orb +97 -0
- package/behaviors/registry/ui/core/molecules/ui-orbital-visualization.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-page-header.orb +20 -0
- package/behaviors/registry/ui/core/molecules/ui-page-transition.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-pagination.orb +20 -0
- package/behaviors/registry/ui/core/molecules/ui-popover.orb +20 -0
- package/behaviors/registry/ui/core/molecules/ui-positioned-canvas.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-progress-dots.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-pull-to-refresh.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-qr-scanner.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-quiz-block.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-reflection-block.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-relation-select.orb +20 -0
- package/behaviors/registry/ui/core/molecules/ui-repeatable-form-section.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-reply-tree.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-rich-text-editor.orb +20 -0
- package/behaviors/registry/ui/core/molecules/ui-scaled-diagram.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-search-input.orb +21 -1
- package/behaviors/registry/ui/core/molecules/ui-section.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-side-panel.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-sidebar.orb +20 -0
- package/behaviors/registry/ui/core/molecules/ui-signature-pad.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-simple-grid.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-skeleton.orb +38 -0
- package/behaviors/registry/ui/core/molecules/ui-social-proof.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-sortable-list.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-split.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-star-rating.orb +21 -0
- package/behaviors/registry/ui/core/molecules/ui-stat-display.orb +31 -0
- package/behaviors/registry/ui/core/molecules/ui-swipeable-row.orb +22 -0
- package/behaviors/registry/ui/core/molecules/ui-table-view.orb +36 -0
- package/behaviors/registry/ui/core/molecules/ui-tabs.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-tag-input.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-tooltip.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-top-nav-item.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-upload-drop-zone.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-version-diff.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-violation-alert.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-vote-stack.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-wizard-container.orb +19 -0
- package/behaviors/registry/ui/core/molecules/ui-wizard-navigation.orb +22 -0
- package/behaviors/registry/ui/core/molecules/ui-wizard-progress.orb +19 -0
- package/behaviors/registry/ui/core/organisms/ui-chat-bar.orb +53 -0
- package/behaviors/registry/ui/core/organisms/ui-code-runner-panel.orb +19 -0
- package/behaviors/registry/ui/core/organisms/ui-dashboard-grid.orb +31 -0
- package/behaviors/registry/ui/core/organisms/ui-detail-panel.orb +45 -1
- package/behaviors/registry/ui/core/organisms/ui-dock-layout.orb +22 -3
- package/behaviors/registry/ui/core/organisms/ui-drawer-slot.orb +19 -0
- package/behaviors/registry/ui/core/organisms/ui-form-section.orb +38 -0
- package/behaviors/registry/ui/core/organisms/ui-form.orb +38 -0
- package/behaviors/registry/ui/core/organisms/ui-master-detail-layout.orb +19 -0
- package/behaviors/registry/ui/core/organisms/ui-media-gallery.orb +35 -0
- package/behaviors/registry/ui/core/organisms/ui-modal-slot.orb +19 -0
- package/behaviors/registry/ui/core/organisms/ui-runtime-debugger.orb +19 -0
- package/behaviors/registry/ui/core/organisms/ui-segment-renderer.orb +39 -8
- package/behaviors/registry/ui/core/organisms/ui-split-pane.orb +20 -0
- package/behaviors/registry/ui/core/organisms/ui-stat-card.orb +35 -0
- package/behaviors/registry/ui/core/organisms/ui-state-machine-view.orb +22 -0
- package/behaviors/registry/ui/core/organisms/ui-subagent-trace-panel.orb +2222 -48
- package/behaviors/registry/ui/core/organisms/ui-tabbed-container.orb +19 -0
- package/behaviors/registry/ui/core/organisms/ui-timeline.orb +36 -0
- package/behaviors/registry/ui/core/organisms/ui-toast-slot.orb +19 -0
- package/behaviors/registry/ui/core/templates/ui-counter-template.orb +19 -0
- package/behaviors/registry/ui/core/templates/ui-generic-app-template.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-action-palette.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-action-tile.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-canvas-2d.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-canvas.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-choice-button.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-control-button.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-control-grid.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-dialogue-bubble.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-game-audio-toggle.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-game-hud.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-game-menu.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-health-bar.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-score-display.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-sequence-bar.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-stat-badge.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-state-graph.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-state-json-view.orb +19 -0
- package/behaviors/registry/ui/game/atoms/ui-trait-slot.orb +21 -0
- package/behaviors/registry/ui/learning/atoms/ui-algo-graph-canvas.orb +19 -0
- package/behaviors/registry/ui/learning/atoms/ui-algorithm-canvas.orb +20 -0
- package/behaviors/registry/ui/learning/atoms/ui-biology-canvas.orb +20 -0
- package/behaviors/registry/ui/learning/atoms/ui-chemistry-canvas.orb +20 -0
- package/behaviors/registry/ui/learning/atoms/ui-learning-canvas.orb +20 -0
- package/behaviors/registry/ui/learning/atoms/ui-math-canvas.orb +20 -0
- package/behaviors/registry/ui/learning/atoms/ui-physics-canvas.orb +20 -0
- package/behaviors/signatures.lolo +5306 -611
- package/canonical-operators.json +35 -1
- package/dist/behaviors/exports-reader.js +10353 -13958
- package/dist/behaviors/functions/index.d.ts +666 -974
- package/dist/behaviors/functions/index.js +10340 -13930
- package/dist/behaviors/index.d.ts +1 -1
- package/dist/behaviors/index.js +10354 -13959
- package/dist/behaviors/query.js +10353 -13958
- package/dist/behaviors-embeddings.hash.json +3 -3
- package/dist/behaviors-embeddings.json +35 -35
- package/dist/behaviors-registry.json +31682 -26740
- package/dist/index.d.ts +4 -4
- package/dist/index.js +10392 -13959
- package/dist/knob-embeddings.hash.json +3 -3
- package/dist/knob-embeddings.json +1167 -815
- package/dist/modules/anim.d.ts +1 -1
- package/dist/modules/array.d.ts +1 -1
- package/dist/modules/async.d.ts +1 -1
- package/dist/modules/behavior.d.ts +1 -1
- package/dist/modules/browser.d.ts +1 -1
- package/dist/modules/composition.d.ts +1 -1
- package/dist/modules/contract.d.ts +1 -1
- package/dist/modules/core.d.ts +1 -1
- package/dist/modules/core.js +2 -0
- package/dist/modules/data.d.ts +1 -1
- package/dist/modules/ease.d.ts +1 -1
- package/dist/modules/format.d.ts +1 -1
- package/dist/modules/geo.d.ts +1 -1
- package/dist/modules/graph.d.ts +1 -1
- package/dist/modules/grid.d.ts +1 -1
- package/dist/modules/i18n.d.ts +17 -0
- package/dist/modules/i18n.js +22 -0
- package/dist/modules/index.d.ts +2 -1
- package/dist/modules/index.js +24 -1
- package/dist/modules/integration.d.ts +1 -1
- package/dist/modules/json.d.ts +1 -1
- package/dist/modules/llm.d.ts +1 -1
- package/dist/modules/math.d.ts +1 -1
- package/dist/modules/memory.d.ts +1 -1
- package/dist/modules/nn.d.ts +1 -1
- package/dist/modules/noise.d.ts +1 -1
- package/dist/modules/object.d.ts +1 -1
- package/dist/modules/os.d.ts +1 -1
- package/dist/modules/path.d.ts +1 -1
- package/dist/modules/prob.d.ts +1 -1
- package/dist/modules/session.d.ts +1 -1
- package/dist/modules/str.d.ts +1 -1
- package/dist/modules/tensor.d.ts +1 -1
- package/dist/modules/time.d.ts +1 -1
- package/dist/modules/trace.d.ts +1 -1
- package/dist/modules/train.d.ts +1 -1
- package/dist/modules/validate.d.ts +1 -1
- package/dist/modules/vector.d.ts +1 -1
- package/dist/modules/workspace.d.ts +1 -1
- package/dist/registry/factory-signatures.json +1 -1
- package/dist/registry.d.ts +10 -3
- package/dist/registry.js +31 -1
- package/dist/{types-DLx38UFZ.d.ts → types-Cdb321uM.d.ts} +9 -3
- package/i18n/ar.json +1 -0
- package/i18n/en.json +1 -0
- package/i18n/sl.json +1 -0
- package/package.json +3 -3
- package/behaviors/lolo/ui/core/atoms/std-list.lolo +0 -613
- package/behaviors/lolo/ui/core/organisms/ui-entity-cards.lolo +0 -399
- package/behaviors/lolo/ui/core/organisms/ui-entity-list.lolo +0 -379
- package/behaviors/lolo/ui/core/organisms/ui-entity-table.lolo +0 -447
- package/behaviors/lolo/ui/core/organisms/ui-master-detail.lolo +0 -276
- package/behaviors/registry/ui/core/atoms/std-list.orb +0 -2135
- package/behaviors/registry/ui/core/organisms/ui-entity-cards.orb +0 -1346
- package/behaviors/registry/ui/core/organisms/ui-entity-list.orb +0 -1248
- package/behaviors/registry/ui/core/organisms/ui-entity-table.orb +0 -1761
- package/behaviors/registry/ui/core/organisms/ui-master-detail.orb +0 -715
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
app std-browse "2.5.0"
|
|
2
2
|
"std-browse as a Function — single primitive: data-grid. Owns the fetch + REFETCH (query/filter/page) state machine. Consumers configure fields/imageField/itemActions/cols/gap/variant; the atom renders the grid. Each `fields[]` entry accepts `{ name, label, variant }` plus optional `referenceEntity` + `displayField` to render a foreign-key column as the joined entity's display value (data-grid resolves @list[referenceEntity] at render time when both keys are present). `browseLook` (table default / dense / feed / gallery / master-detail / triage) selects one of six render bodies; dense/feed/gallery were folded in from std-browse-dense/-feed/-gallery (Phase 5.B); master-detail (split record view driven by the guarded VIEW/CLOSE self-transitions) and triage (inbox rows) were folded in 2026-07-26. Consumers retarget by setting browseLook."
|
|
3
3
|
type BadgeColor = "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "error" | "info" | "neutral" | "destructive"
|
|
4
|
-
type FieldSpec = { name : string!, label : string, variant : h3 | h4 | body | caption | badge | small | progress, icon : string, format : date | currency | number | boolean | percent, key : string, header : string, colorMap : Map string BadgeColor, labels : Map string string }
|
|
4
|
+
type FieldSpec = { name : string!, label : string, variant : h3 | h4 | overline | avatar | body | caption | badge | small | progress, icon : string, format : date | time | datetime | currency | number | boolean | percent, key : string, header : string, colorMap : Map string BadgeColor, labels : Map string string }
|
|
5
5
|
type ItemAction = { label : string!, event : event, navigatesTo : string, variant : primary | secondary | ghost | danger, icon : string, roles : [string], when : SExpr }
|
|
6
6
|
type ColumnSpec = { key : string!, field : string, header : string, width : string, align : left | center | right, className : string, weight : normal | medium | semibold, format : badge | date | currency | number | percent | boolean, icon : string, colorMap : Map string BadgeColor, labels : Map string string, variant : h3 | h4 }
|
|
7
7
|
type FilterSpec = { field : string!, label : string, options : [string] }
|
|
@@ -48,8 +48,9 @@ orbital BrowseItemOrbital {
|
|
|
48
48
|
itemActions: @config.itemActions
|
|
49
49
|
viewerRole: @config.viewerRole
|
|
50
50
|
itemClickEvent: @config.itemClickEvent
|
|
51
|
-
maxInlineActions:
|
|
51
|
+
maxInlineActions: 0
|
|
52
52
|
variant: compact
|
|
53
|
+
surface: none
|
|
53
54
|
selfFetch: false
|
|
54
55
|
}
|
|
55
56
|
|
|
@@ -283,30 +284,16 @@ orbital BrowseItemOrbital {
|
|
|
283
284
|
@description "Entity field containing the thumbnail URL for each row."
|
|
284
285
|
@synonyms "image field, thumbnail field, photo field, picture column"
|
|
285
286
|
@tier "presentation"
|
|
286
|
-
|
|
287
|
-
@label "
|
|
288
|
-
@description "
|
|
289
|
-
@
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
@
|
|
293
|
-
@
|
|
294
|
-
|
|
295
|
-
@label "Badge field binding"
|
|
296
|
-
@description "Binding path for the status/badge slot."
|
|
297
|
-
@tier "internal"
|
|
298
|
-
metaBinding : string = @item.createdAt
|
|
299
|
-
@label "Meta field binding"
|
|
300
|
-
@description "Binding path for the secondary meta slot (timestamp / category). Hosts binding a count or other non-date value should label it in the binding itself (e.g. (str/concat \"Vehicles: \" @item.vehicleCount)) and set metaFormat: none."
|
|
301
|
-
@tier "internal"
|
|
302
|
-
metaFormat : "none" | "date" | "time" | "datetime" | "number" = date
|
|
303
|
-
@label "Meta value format"
|
|
304
|
-
@description "Typography format for the feed meta slot — date by default so the createdAt binding renders human-readable instead of raw ISO; set none for non-date bindings."
|
|
287
|
+
surface : "auto" | "none" = auto
|
|
288
|
+
@label "Paint a surface behind the list?"
|
|
289
|
+
@description "auto (default) draws the theme's content surface behind every look — on a patterned page background the list reads as one block; the theme decides how that surface looks. none places the list directly on the page (e.g. a list already inside a card or panel you composed)."
|
|
290
|
+
@synonyms "card background, panel, container, list background, no background, transparent, bare"
|
|
291
|
+
@tier "presentation"
|
|
292
|
+
feedSurface : "cards" | "divided" | "plain" = cards
|
|
293
|
+
@label "How are feed items separated?"
|
|
294
|
+
@description "browseLook = feed only. cards = each item its own raised card with space between (community posts, listings); divided = one surface with hairline rows (inboxes, answer lists, notes); plain = no chrome, items on the page background (editorial article lists, changelogs). What each item shows comes from `fields`: overline = eyebrow above the title, h3/h4 = title (its `icon` becomes a leading tile), caption = prose, small/body = meta line, badge = pill, avatar = leading initials."
|
|
295
|
+
@synonyms "feed style, item chrome, card per item, divided list, editorial list, rows or cards"
|
|
305
296
|
@tier "presentation"
|
|
306
|
-
categoryBinding : string = @item.category
|
|
307
|
-
@label "Category field binding"
|
|
308
|
-
@description "Binding path for the category/tag slot."
|
|
309
|
-
@tier "internal"
|
|
310
297
|
itemActions : [ItemAction] = []
|
|
311
298
|
@label "What actions can users take on each row?"
|
|
312
299
|
@description "Buttons rendered on each row (e.g. Edit, Delete, View)."
|
|
@@ -490,6 +477,7 @@ orbital BrowseItemOrbital {
|
|
|
490
477
|
emptyDescription: @config.emptyDescription
|
|
491
478
|
emptyIcon: @config.emptyIcon
|
|
492
479
|
emptyTitle: @config.emptyTitle
|
|
480
|
+
surface: @config.surface
|
|
493
481
|
type: data-grid
|
|
494
482
|
}]
|
|
495
483
|
direction: vertical
|
|
@@ -539,6 +527,7 @@ orbital BrowseItemOrbital {
|
|
|
539
527
|
itemClickEvent: @config.itemClickEvent
|
|
540
528
|
look: dense
|
|
541
529
|
maxInlineActions: @config.maxInlineActions
|
|
530
|
+
surface: none
|
|
542
531
|
pageSize: @config.displayPageSize
|
|
543
532
|
selectable: @config.selectable
|
|
544
533
|
emptyDescription: @config.emptyDescription
|
|
@@ -551,7 +540,7 @@ orbital BrowseItemOrbital {
|
|
|
551
540
|
gap: none
|
|
552
541
|
type: stack
|
|
553
542
|
}]
|
|
554
|
-
className: "
|
|
543
|
+
className: (if ["=", @config.surface, "auto"] "surface-content overflow-hidden" "")
|
|
555
544
|
direction: vertical
|
|
556
545
|
gap: none
|
|
557
546
|
type: stack
|
|
@@ -595,82 +584,19 @@ orbital BrowseItemOrbital {
|
|
|
595
584
|
type: stack
|
|
596
585
|
}), {
|
|
597
586
|
entity: ?data
|
|
598
|
-
fields:
|
|
599
|
-
gap:
|
|
587
|
+
fields: @config.fields
|
|
588
|
+
gap: none
|
|
600
589
|
itemClickEvent: @config.itemClickEvent
|
|
601
590
|
itemActions: (array/filter @config.itemActions (fn item (or (= (array/len (object/get @item roles [])) 0) (array/includes (object/get @item roles []) @config.viewerRole))))
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
align: start
|
|
605
|
-
children: [{
|
|
606
|
-
className: "rounded-full flex-shrink-0"
|
|
607
|
-
fallback: @config.titleBinding
|
|
608
|
-
size: md
|
|
609
|
-
type: avatar
|
|
610
|
-
}, {
|
|
611
|
-
children: [{
|
|
612
|
-
align: center
|
|
613
|
-
children: [{
|
|
614
|
-
className: truncate
|
|
615
|
-
content: @config.titleBinding
|
|
616
|
-
type: typography
|
|
617
|
-
variant: body
|
|
618
|
-
weight: medium
|
|
619
|
-
}, {
|
|
620
|
-
label: @config.categoryBinding
|
|
621
|
-
size: sm
|
|
622
|
-
type: badge
|
|
623
|
-
variant: neutral
|
|
624
|
-
}]
|
|
625
|
-
className: flex-wrap
|
|
626
|
-
direction: horizontal
|
|
627
|
-
gap: xs
|
|
628
|
-
type: stack
|
|
629
|
-
}, {
|
|
630
|
-
className: "text-[var(--color-foreground)] whitespace-pre-wrap break-words leading-relaxed"
|
|
631
|
-
content: @config.descriptionBinding
|
|
632
|
-
type: typography
|
|
633
|
-
variant: body
|
|
634
|
-
}, {
|
|
635
|
-
align: center
|
|
636
|
-
children: [{
|
|
637
|
-
color: muted
|
|
638
|
-
content: @config.metaBinding
|
|
639
|
-
format: @config.metaFormat
|
|
640
|
-
type: typography
|
|
641
|
-
variant: caption
|
|
642
|
-
}, {
|
|
643
|
-
label: @config.badgeBinding
|
|
644
|
-
size: sm
|
|
645
|
-
type: badge
|
|
646
|
-
variant: default
|
|
647
|
-
}]
|
|
648
|
-
className: pt-1
|
|
649
|
-
direction: horizontal
|
|
650
|
-
gap: sm
|
|
651
|
-
justify: between
|
|
652
|
-
type: stack
|
|
653
|
-
}]
|
|
654
|
-
className: "flex-1 min-w-0"
|
|
655
|
-
direction: vertical
|
|
656
|
-
gap: xs
|
|
657
|
-
type: stack
|
|
658
|
-
}]
|
|
659
|
-
className: p-card-md
|
|
660
|
-
direction: horizontal
|
|
661
|
-
gap: md
|
|
662
|
-
type: stack
|
|
663
|
-
}]
|
|
664
|
-
className: "rounded-lg bg-[var(--color-card)] border border-[var(--color-border)] shadow-sm transition-all duration-normal hover:shadow-main hover:border-[var(--color-border-strong)] hover:-translate-y-px"
|
|
665
|
-
look: flat-bordered
|
|
666
|
-
padding: none
|
|
667
|
-
type: card
|
|
668
|
-
})
|
|
591
|
+
look: (if ["=", @config.feedSurface, "cards"] card-rows borderless)
|
|
592
|
+
maxInlineActions: @config.maxInlineActions
|
|
669
593
|
emptyDescription: @config.emptyDescription
|
|
670
594
|
emptyIcon: @config.emptyIcon
|
|
671
595
|
emptyTitle: @config.emptyTitle
|
|
596
|
+
pageSize: @config.displayPageSize
|
|
597
|
+
surface: (if ["=", @config.feedSurface, "plain"] none @config.surface)
|
|
672
598
|
type: data-list
|
|
673
|
-
variant: card
|
|
599
|
+
variant: (if ["=", @config.feedSurface, "divided"] card default)
|
|
674
600
|
}]
|
|
675
601
|
className: w-full
|
|
676
602
|
direction: vertical
|
|
@@ -678,7 +604,7 @@ orbital BrowseItemOrbital {
|
|
|
678
604
|
type: stack
|
|
679
605
|
}
|
|
680
606
|
@label "Feed look body"
|
|
681
|
-
@description "Render-ui SExpr rendered after rows load when browseLook = feed. Chronological
|
|
607
|
+
@description "Render-ui SExpr rendered after rows load when browseLook = feed. Chronological item stream on the same `fields` contract every look reads (roles: overline, h3/h4, caption, small/body, badge, avatar), separated per feedSurface. Folded from std-browse-feed (Phase 5.B)."
|
|
682
608
|
@tier "internal"
|
|
683
609
|
galleryBodyContent : render-ui = {
|
|
684
610
|
children: [(if @config.bodySearch {
|
|
@@ -727,6 +653,7 @@ orbital BrowseItemOrbital {
|
|
|
727
653
|
emptyDescription: @config.emptyDescription
|
|
728
654
|
emptyIcon: @config.emptyIcon
|
|
729
655
|
emptyTitle: @config.emptyTitle
|
|
656
|
+
surface: @config.surface
|
|
730
657
|
type: data-grid
|
|
731
658
|
}]
|
|
732
659
|
className: w-full
|
|
@@ -780,6 +707,8 @@ orbital BrowseItemOrbital {
|
|
|
780
707
|
emptyDescription: @config.emptyDescription
|
|
781
708
|
emptyIcon: @config.emptyIcon
|
|
782
709
|
emptyTitle: @config.emptyTitle
|
|
710
|
+
pageSize: @config.displayPageSize
|
|
711
|
+
surface: none
|
|
783
712
|
type: data-list
|
|
784
713
|
variant: compact
|
|
785
714
|
}]
|
|
@@ -788,7 +717,7 @@ orbital BrowseItemOrbital {
|
|
|
788
717
|
gap: none
|
|
789
718
|
type: stack
|
|
790
719
|
}]
|
|
791
|
-
className: "
|
|
720
|
+
className: (if ["=", @config.surface, "auto"] "surface-content overflow-hidden" "")
|
|
792
721
|
direction: vertical
|
|
793
722
|
gap: none
|
|
794
723
|
type: stack
|
|
@@ -851,7 +780,7 @@ orbital BrowseItemOrbital {
|
|
|
851
780
|
}
|
|
852
781
|
type: master-detail-layout
|
|
853
782
|
}]
|
|
854
|
-
className: "
|
|
783
|
+
className: (if ["=", @config.surface, "auto"] "surface-content overflow-hidden" "")
|
|
855
784
|
direction: vertical
|
|
856
785
|
gap: none
|
|
857
786
|
type: stack
|
|
@@ -899,6 +828,7 @@ orbital BrowseItemOrbital {
|
|
|
899
828
|
closeEvent: @config.detailCloseEvent
|
|
900
829
|
initialData: ?row
|
|
901
830
|
showActions: true
|
|
831
|
+
surface: none
|
|
902
832
|
type: detail-panel
|
|
903
833
|
}
|
|
904
834
|
hasSelection: true
|
|
@@ -911,7 +841,7 @@ orbital BrowseItemOrbital {
|
|
|
911
841
|
}
|
|
912
842
|
type: master-detail-layout
|
|
913
843
|
}]
|
|
914
|
-
className: "
|
|
844
|
+
className: (if ["=", @config.surface, "auto"] "surface-content overflow-hidden" "")
|
|
915
845
|
direction: vertical
|
|
916
846
|
gap: none
|
|
917
847
|
type: stack
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
app std-graphs "2.0.0"
|
|
2
|
-
"std-graphs — embeddable chart atom. ITEMS_LOADED keeps the rows whose @config.filterField equals @config.filterValue (blank = all), groups them by @config.categoryField, or (timeAxis=true) by the @config.period bucket of @config.timeField — rows without a time value have no
|
|
2
|
+
"std-graphs — embeddable chart atom. ITEMS_LOADED keeps the rows whose @config.filterField equals @config.filterValue (blank = all), groups them by @config.categoryField, or (timeAxis=true) by the @config.period bucket of @config.timeField — rows without a time value (or, by category, without a category value) have no bucket to land in and are left out — and aggregates per bucket. Multi-series rendering via @config.series (preformatted ChartSeries shape). Histograms via chartType=histogram pass pre-binned @payload.data through unchanged. Stacked / 100% stacked bars via @config.stack. Post-process sort + limit. Clicking a data point emits UI:@config.drillEvent with { label, value, seriesLabel? }. Drop into a dashboard alongside std-stats / std-browse."
|
|
3
3
|
type ObjectSpec = { id : string, label : string, value : string }
|
|
4
4
|
orbital GraphItemOrbital {
|
|
5
5
|
type ChartPoint = { label : string!, value : number! }
|
|
@@ -38,7 +38,7 @@ orbital GraphItemOrbital {
|
|
|
38
38
|
(set @entity.chartData (if ["=", @config.chartType, histogram] (array/map @rows (fn p {
|
|
39
39
|
label: (object/get @p label)
|
|
40
40
|
value: (object/get @p value)
|
|
41
|
-
})) (array/map (object/entries (if @config.timeAxis (array/groupBy (array/map (array/filter @rows (fn row (object/get @row @config.timeField))) (fn row (object/set @row "periodStart" (time/startOf (time/parse (object/get @row @config.timeField)) @config.period)))) "periodStart") (array/groupBy @rows @config.categoryField))) (fn entry {
|
|
41
|
+
})) (array/map (object/entries (if @config.timeAxis (array/groupBy (array/map (array/filter @rows (fn row (object/get @row @config.timeField))) (fn row (object/set @row "periodStart" (time/startOf (time/parse (object/get @row @config.timeField)) @config.period)))) "periodStart") (array/groupBy (array/filter @rows (fn row (object/get @row @config.categoryField))) @config.categoryField))) (fn entry {
|
|
42
42
|
label: (object/get @entry "0")
|
|
43
43
|
value: (if ["=", @config.aggregation, sum] (array/sum (object/get @entry "1") @config.valueField) (if ["=", @config.aggregation, avg] (array/avg (object/get @entry "1") @config.valueField) (if ["=", @config.aggregation, min] (array/min (object/get @entry "1") @config.valueField) (if ["=", @config.aggregation, max] (array/max (object/get @entry "1") @config.valueField) (array/len (object/get @entry "1"))))))
|
|
44
44
|
})))))
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
app std-panel-launcher "1.0.0"
|
|
2
|
+
"std-panel-launcher — a floating button on the page that opens a side panel holding one trait (an assistant, a help panel, a cart). Closed: the button floats bottom-right. Open: the panel shows `contentTrait` under `title` and the button steps aside; the panel's close button (or Escape on small screens) brings the button back. The panel slot defaults to `dock`, which pushes the page aside on wide screens and becomes a side sheet below 1024px. List the trait on every page that should carry the button — it never injects itself."
|
|
3
|
+
;; @capabilities "floating action button, launcher, side panel, docked panel, chat launcher, help panel, assistant button"
|
|
4
|
+
orbital PanelLauncherOrbital {
|
|
5
|
+
entity PanelLauncherView [runtime] {
|
|
6
|
+
id : string!
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
trait PanelLauncher -> @rebindable PanelLauncherView [interaction, instance] {
|
|
10
|
+
config {
|
|
11
|
+
contentTrait : trait
|
|
12
|
+
@label "What does the panel hold?"
|
|
13
|
+
@description "The trait the panel shows when it is open."
|
|
14
|
+
@synonyms "panel content, body, assistant, chat"
|
|
15
|
+
@tier "presentation"
|
|
16
|
+
title : string = "Panel"
|
|
17
|
+
@label "Panel title"
|
|
18
|
+
@description "Heading at the top of the open panel."
|
|
19
|
+
@tier "presentation"
|
|
20
|
+
icon : icon = message-circle
|
|
21
|
+
@label "Button icon"
|
|
22
|
+
@tier "presentation"
|
|
23
|
+
label : string = "Open panel"
|
|
24
|
+
@label "Button label"
|
|
25
|
+
@description "What the floating button does, read to screen readers and shown as its tooltip."
|
|
26
|
+
@synonyms "aria label, button name, tooltip"
|
|
27
|
+
@tier "presentation"
|
|
28
|
+
closeLabel : string = "Close panel"
|
|
29
|
+
@label "Close button label"
|
|
30
|
+
@tier "presentation"
|
|
31
|
+
panelSlot : slot = dock
|
|
32
|
+
@label "Where the panel opens"
|
|
33
|
+
@description "`dock` pushes the page aside (a side sheet on small screens); `drawer` slides over it."
|
|
34
|
+
@tier "presentation"
|
|
35
|
+
}
|
|
36
|
+
initial: closed
|
|
37
|
+
|
|
38
|
+
state closed {
|
|
39
|
+
INIT -> closed
|
|
40
|
+
(render-ui floating {
|
|
41
|
+
action: OPEN
|
|
42
|
+
icon: @config.icon
|
|
43
|
+
label: @config.label
|
|
44
|
+
type: floating-action-button
|
|
45
|
+
})
|
|
46
|
+
OPEN -> open
|
|
47
|
+
(render-ui floating null)
|
|
48
|
+
(render-ui @config.panelSlot {
|
|
49
|
+
children: [{
|
|
50
|
+
align: center
|
|
51
|
+
children: [{
|
|
52
|
+
content: @config.title
|
|
53
|
+
type: typography
|
|
54
|
+
variant: h4
|
|
55
|
+
}, {
|
|
56
|
+
action: CLOSE
|
|
57
|
+
aria-label: @config.closeLabel
|
|
58
|
+
icon: x
|
|
59
|
+
type: button
|
|
60
|
+
variant: ghost
|
|
61
|
+
}]
|
|
62
|
+
direction: horizontal
|
|
63
|
+
justify: between
|
|
64
|
+
type: stack
|
|
65
|
+
}, @config.contentTrait]
|
|
66
|
+
direction: vertical
|
|
67
|
+
gap: md
|
|
68
|
+
className: "h-full min-h-0 p-4"
|
|
69
|
+
type: stack
|
|
70
|
+
})
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
state open {
|
|
74
|
+
CLOSE -> closed
|
|
75
|
+
(render-ui @config.panelSlot null)
|
|
76
|
+
(render-ui floating {
|
|
77
|
+
action: OPEN
|
|
78
|
+
icon: @config.icon
|
|
79
|
+
label: @config.label
|
|
80
|
+
type: floating-action-button
|
|
81
|
+
})
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
emits {
|
|
85
|
+
OPEN
|
|
86
|
+
@description "Open the panel."
|
|
87
|
+
@synonyms "show, launch, expand"
|
|
88
|
+
@tier "presentation"
|
|
89
|
+
CLOSE
|
|
90
|
+
@description "Close the panel."
|
|
91
|
+
@synonyms "hide, dismiss, collapse"
|
|
92
|
+
@tier "presentation"
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
page "/panel-launcher" as PanelLauncherPage -> PanelLauncher
|
|
97
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
app std-site-header "1.0.0"
|
|
2
|
-
"std-site-header — the sticky top bar of a public website: brand (logo + name), navigation links with the current page marked (a link with children opens a dropdown), an optional language picker (std-language-picker: the same page in each language, default language at the root and the others under /<code>/), and an optional call-to-action button. On small screens the links fold into a menu opened by a toggle, with child links indented under their parent and the call-to-action button at the bottom. Links follow `href` (in-app path, #anchor, or absolute URL); the header action and the small-screen menu links also emit NAV_CLICKED { href, label }. Pick for marketing sites, docs portals and product websites; for signed-in app chrome use std-app-layout."
|
|
2
|
+
"std-site-header — the sticky top bar of a public website: brand (logo + name, linking home when `homeHref` is set), navigation links with the current page marked (a link with children opens a dropdown), an optional light/dark toggle, an optional language picker (std-language-picker: the same page in each language, default language at the root and the others under /<code>/), and an optional call-to-action button. On small screens the links fold into a menu opened by a toggle, with child links indented under their parent and the call-to-action button at the bottom. Links follow `href` (in-app path, #anchor, or absolute URL); the header action and the small-screen menu links also emit NAV_CLICKED { href, label }. Pick for marketing sites, docs portals and product websites; for signed-in app chrome use std-app-layout."
|
|
3
3
|
type SiteNavLink = { label : string!, href : string!, children : [SiteNavLink] }
|
|
4
4
|
type SiteLanguage = { code : string!, label : string!, href : string! }
|
|
5
5
|
orbital SiteHeaderOrbital {
|
|
@@ -54,6 +54,11 @@ orbital SiteHeaderOrbital {
|
|
|
54
54
|
@label "Logo image"
|
|
55
55
|
@description "Logo URL; empty shows the name only"
|
|
56
56
|
@tier "presentation"
|
|
57
|
+
homeHref : string = ""
|
|
58
|
+
@label "Home link"
|
|
59
|
+
@description "Where the brand (logo + name) links to, usually the site's home page; empty leaves the brand unlinked"
|
|
60
|
+
@synonyms "logo link, home page, brand link"
|
|
61
|
+
@tier "presentation"
|
|
57
62
|
links : [SiteNavLink] = [{ label: "Features", href: "/features" }, { label: "Pricing", href: "/pricing" }, { label: "About", href: "/about" }]
|
|
58
63
|
@label "Navigation links"
|
|
59
64
|
@synonyms "menu, nav items, top navigation"
|
|
@@ -67,6 +72,11 @@ orbital SiteHeaderOrbital {
|
|
|
67
72
|
@description "Every language this page exists in, each named in its own language, with the href of THIS page in that language (default language at the root, others under /<code>/). Empty hides the language picker."
|
|
68
73
|
@synonyms "locales, translations, language switcher, i18n"
|
|
69
74
|
@tier "presentation"
|
|
75
|
+
showThemeToggle : boolean = false
|
|
76
|
+
@label "Light/dark toggle"
|
|
77
|
+
@description "Show a button that switches the site between its light and dark mode"
|
|
78
|
+
@synonyms "dark mode, theme switch, color mode"
|
|
79
|
+
@tier "presentation"
|
|
70
80
|
currentLanguage : string = "en"
|
|
71
81
|
@label "Current language"
|
|
72
82
|
@description "The code of the language this page is in"
|
|
@@ -92,6 +102,7 @@ orbital SiteHeaderOrbital {
|
|
|
92
102
|
showMenuToggle: false
|
|
93
103
|
brandName: @config.brandName
|
|
94
104
|
logoSrc: @config.logoSrc
|
|
105
|
+
brandHref: @config.homeHref
|
|
95
106
|
className: "hidden lg:flex"
|
|
96
107
|
navigationItems: (array/map @config.links (fn entry {
|
|
97
108
|
label: (object/get @entry label "")
|
|
@@ -103,7 +114,7 @@ orbital SiteHeaderOrbital {
|
|
|
103
114
|
active: (== (object/get @child href "") @config.currentPath)
|
|
104
115
|
}))
|
|
105
116
|
}))
|
|
106
|
-
actions: [@trait.SiteHeaderLanguages, {
|
|
117
|
+
actions: [@trait.SiteHeaderLanguages, { type: theme-toggle, size: sm, className: (if @config.showThemeToggle "" hidden) }, {
|
|
107
118
|
type: button
|
|
108
119
|
label: @config.actionLabel
|
|
109
120
|
href: @config.actionHref
|
|
@@ -122,8 +133,9 @@ orbital SiteHeaderOrbital {
|
|
|
122
133
|
onMenuToggle: MENU_TOGGLE
|
|
123
134
|
brandName: @config.brandName
|
|
124
135
|
logoSrc: @config.logoSrc
|
|
136
|
+
brandHref: @config.homeHref
|
|
125
137
|
className: "lg:hidden"
|
|
126
|
-
actions: [@trait.SiteHeaderLanguages]
|
|
138
|
+
actions: [@trait.SiteHeaderLanguages, { type: theme-toggle, size: sm, className: (if @config.showThemeToggle "" hidden) }]
|
|
127
139
|
}, {
|
|
128
140
|
type: stack
|
|
129
141
|
direction: vertical
|
|
@@ -391,7 +391,7 @@ orbital StatsItemOrbital {
|
|
|
391
391
|
justify: between
|
|
392
392
|
type: stack
|
|
393
393
|
}]
|
|
394
|
-
className: "
|
|
394
|
+
className: "surface-content p-card-md hover:shadow-elevation-dialog transition-shadow min-h-[180px]"
|
|
395
395
|
direction: vertical
|
|
396
396
|
gap: sm
|
|
397
397
|
type: stack
|
|
@@ -19,9 +19,9 @@ orbital TagStripOrbital {
|
|
|
19
19
|
createdAt : string = ""
|
|
20
20
|
pendingId : string = ""
|
|
21
21
|
docId : string @intrinsic @description "The open record's id, stashed at SHOW_TAG_STRIP so commits know which row to update." @synonyms "record id, scope id" = ""
|
|
22
|
-
docTagIds : [string] @intrinsic @description "The open record's current tag ids, stashed at SHOW_TAG_STRIP for membership tests." @synonyms "attached tags, current tags"
|
|
22
|
+
docTagIds : [string] @intrinsic @description "The open record's current tag ids, stashed at SHOW_TAG_STRIP for membership tests." @synonyms "attached tags, current tags" = []
|
|
23
23
|
pendingTagName : string @intrinsic @description "The tag name typed or clicked on add, held across the resolve fetch." @synonyms "typed tag, adding tag" = ""
|
|
24
|
-
pendingNames : [string] @intrinsic @description "The chip names remaining after a remove, held across the resolve fetch." @synonyms "remaining tags, kept names"
|
|
24
|
+
pendingNames : [string] @intrinsic @description "The chip names remaining after a remove, held across the resolve fetch." @synonyms "remaining tags, kept names" = []
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
trait TagStrip -> @rebindable StripTag [interaction, collection] {
|
|
@@ -5,7 +5,7 @@ orbital TagTaxonomyOrbital {
|
|
|
5
5
|
|
|
6
6
|
type TagLoadFailed = Event { error : string, code : string } "Fired when the tag collection fails to load"
|
|
7
7
|
|
|
8
|
-
type TagSelected = Event { tagId :
|
|
8
|
+
type TagSelected = Event { tagId : Tag.id! } "Fired when a tag is selected to drill into its children"
|
|
9
9
|
|
|
10
10
|
type TagCreated = Event Tag "Fired after a new tag row persists — the payload IS the created row (flat: ?id, ?name, ?parentId)"
|
|
11
11
|
|
|
@@ -476,7 +476,7 @@ orbital TagTaxonomyOrbital {
|
|
|
476
476
|
|
|
477
477
|
emits {
|
|
478
478
|
SELECT_TAG {
|
|
479
|
-
tagId :
|
|
479
|
+
tagId : Tag.id!
|
|
480
480
|
}
|
|
481
481
|
@description "Signals a tag has been chosen for navigation."
|
|
482
482
|
@synonyms "choose, pick, activate, navigate"
|
|
@@ -495,7 +495,7 @@ orbital TagTaxonomyOrbital {
|
|
|
495
495
|
@synonyms "error, failed, problem, issue"
|
|
496
496
|
@tier "internal"
|
|
497
497
|
TagSelected {
|
|
498
|
-
tagId :
|
|
498
|
+
tagId : Tag.id!
|
|
499
499
|
}
|
|
500
500
|
@description "Signals a tag has been chosen for further exploration."
|
|
501
501
|
@synonyms "chosen, picked, activated, highlighted"
|
|
@@ -512,7 +512,7 @@ orbital TagTaxonomyOrbital {
|
|
|
512
512
|
@synonyms "cancel, back"
|
|
513
513
|
@tier "internal"
|
|
514
514
|
LEVEL_RELOAD {
|
|
515
|
-
tagId :
|
|
515
|
+
tagId : Tag.id
|
|
516
516
|
}
|
|
517
517
|
@description "Internal hop that refetches the open level after the new-category form closes (a fetch filter cannot read trait state, so the level travels by payload)."
|
|
518
518
|
@synonyms "reload level, refresh"
|
|
@@ -532,7 +532,7 @@ orbital TagTaxonomyOrbital {
|
|
|
532
532
|
|
|
533
533
|
listens {
|
|
534
534
|
SELECT_TAG {
|
|
535
|
-
tagId :
|
|
535
|
+
tagId : Tag.id!
|
|
536
536
|
}
|
|
537
537
|
@description "A tag in the taxonomy was selected for navigation."
|
|
538
538
|
@synonyms "choose, pick, activate, navigate"
|
|
@@ -551,7 +551,7 @@ orbital TagTaxonomyOrbital {
|
|
|
551
551
|
@synonyms "error, failure, load failed"
|
|
552
552
|
@tier "internal"
|
|
553
553
|
TagSelected {
|
|
554
|
-
tagId :
|
|
554
|
+
tagId : Tag.id!
|
|
555
555
|
}
|
|
556
556
|
@description "A tag in the taxonomy has been chosen by the user."
|
|
557
557
|
@synonyms "chosen, picked, activated, selected"
|
|
@@ -571,7 +571,7 @@ orbital TagTaxonomyOrbital {
|
|
|
571
571
|
@synonyms "cancel, back"
|
|
572
572
|
@tier "internal"
|
|
573
573
|
LEVEL_RELOAD {
|
|
574
|
-
tagId :
|
|
574
|
+
tagId : Tag.id
|
|
575
575
|
}
|
|
576
576
|
@description "Refetch the open level."
|
|
577
577
|
@synonyms "reload level, refresh"
|
|
@@ -27,6 +27,7 @@ orbital AnimatedGraphicOrbital {
|
|
|
27
27
|
alt: @config.alt
|
|
28
28
|
enter: @config.enter
|
|
29
29
|
enterDelay: @config.enterDelay
|
|
30
|
+
skeleton: @config.skeleton
|
|
30
31
|
aria-label: @config.ariaLabel
|
|
31
32
|
aria-labelledby: @config.ariaLabelledby
|
|
32
33
|
aria-describedby: @config.ariaDescribedby
|
|
@@ -106,6 +107,10 @@ orbital AnimatedGraphicOrbital {
|
|
|
106
107
|
@label "Enter Delay"
|
|
107
108
|
@description "Stagger step for the entry: waits this many `--motion-enter-stagger` steps before animating."
|
|
108
109
|
@tier "presentation"
|
|
110
|
+
skeleton : "header" | "table" | "list" | "grid" | "detail" | "stats" | "form" | "card" | "text" | "none"
|
|
111
|
+
@label "Skeleton"
|
|
112
|
+
@description "Skeleton shown while this element's server render is in flight: a shape (`table`, `list`, …), `{ variant, rows?, columns?, fields? }`, or `none`."
|
|
113
|
+
@tier "presentation"
|
|
109
114
|
ariaLabel : string
|
|
110
115
|
@label "Aria-label"
|
|
111
116
|
@description "Accessible name read by screen readers when the visible text is missing or not descriptive (e.g. an icon-only control)."
|
|
@@ -24,6 +24,7 @@ orbital AnimatedRevealOrbital {
|
|
|
24
24
|
children: @config.children
|
|
25
25
|
enter: @config.enter
|
|
26
26
|
enterDelay: @config.enterDelay
|
|
27
|
+
skeleton: @config.skeleton
|
|
27
28
|
aria-label: @config.ariaLabel
|
|
28
29
|
aria-labelledby: @config.ariaLabelledby
|
|
29
30
|
aria-describedby: @config.ariaDescribedby
|
|
@@ -91,6 +92,10 @@ orbital AnimatedRevealOrbital {
|
|
|
91
92
|
@label "Enter Delay"
|
|
92
93
|
@description "Stagger step for the entry: waits this many `--motion-enter-stagger` steps before animating."
|
|
93
94
|
@tier "presentation"
|
|
95
|
+
skeleton : "header" | "table" | "list" | "grid" | "detail" | "stats" | "form" | "card" | "text" | "none"
|
|
96
|
+
@label "Skeleton"
|
|
97
|
+
@description "Skeleton shown while this element's server render is in flight: a shape (`table`, `list`, …), `{ variant, rows?, columns?, fields? }`, or `none`."
|
|
98
|
+
@tier "presentation"
|
|
94
99
|
ariaLabel : string
|
|
95
100
|
@label "Aria-label"
|
|
96
101
|
@description "Accessible name read by screen readers when the visible text is missing or not descriptive (e.g. an icon-only control)."
|
|
@@ -17,6 +17,7 @@ orbital AsideOrbital {
|
|
|
17
17
|
children: @config.children
|
|
18
18
|
enter: @config.enter
|
|
19
19
|
enterDelay: @config.enterDelay
|
|
20
|
+
skeleton: @config.skeleton
|
|
20
21
|
aria-label: @config.ariaLabel
|
|
21
22
|
aria-labelledby: @config.ariaLabelledby
|
|
22
23
|
aria-describedby: @config.ariaDescribedby
|
|
@@ -52,6 +53,10 @@ orbital AsideOrbital {
|
|
|
52
53
|
@label "Enter Delay"
|
|
53
54
|
@description "Stagger step for the entry: waits this many `--motion-enter-stagger` steps before animating."
|
|
54
55
|
@tier "presentation"
|
|
56
|
+
skeleton : "header" | "table" | "list" | "grid" | "detail" | "stats" | "form" | "card" | "text" | "none"
|
|
57
|
+
@label "Skeleton"
|
|
58
|
+
@description "Skeleton shown while this element's server render is in flight: a shape (`table`, `list`, …), `{ variant, rows?, columns?, fields? }`, or `none`."
|
|
59
|
+
@tier "presentation"
|
|
55
60
|
ariaLabel : string
|
|
56
61
|
@label "Aria-label"
|
|
57
62
|
@description "Accessible name read by screen readers when the visible text is missing or not descriptive (e.g. an icon-only control)."
|
|
@@ -32,6 +32,7 @@ orbital AtlasImageOrbital {
|
|
|
32
32
|
aria-hidden: @config.ariaHidden
|
|
33
33
|
enter: @config.enter
|
|
34
34
|
enterDelay: @config.enterDelay
|
|
35
|
+
skeleton: @config.skeleton
|
|
35
36
|
type: atlas-image
|
|
36
37
|
})
|
|
37
38
|
}
|
|
@@ -86,6 +87,10 @@ orbital AtlasImageOrbital {
|
|
|
86
87
|
@label "Enter Delay"
|
|
87
88
|
@description "Stagger step for the entry: waits this many `--motion-enter-stagger` steps before animating."
|
|
88
89
|
@tier "presentation"
|
|
90
|
+
skeleton : "header" | "table" | "list" | "grid" | "detail" | "stats" | "form" | "card" | "text" | "none"
|
|
91
|
+
@label "Skeleton"
|
|
92
|
+
@description "Skeleton shown while this element's server render is in flight: a shape (`table`, `list`, …), `{ variant, rows?, columns?, fields? }`, or `none`."
|
|
93
|
+
@tier "presentation"
|
|
89
94
|
}
|
|
90
95
|
}
|
|
91
96
|
|
|
@@ -30,6 +30,7 @@ orbital AtlasPanelOrbital {
|
|
|
30
30
|
aria-hidden: @config.ariaHidden
|
|
31
31
|
enter: @config.enter
|
|
32
32
|
enterDelay: @config.enterDelay
|
|
33
|
+
skeleton: @config.skeleton
|
|
33
34
|
type: atlas-panel
|
|
34
35
|
})
|
|
35
36
|
}
|
|
@@ -76,6 +77,10 @@ orbital AtlasPanelOrbital {
|
|
|
76
77
|
@label "Enter Delay"
|
|
77
78
|
@description "Stagger step for the entry: waits this many `--motion-enter-stagger` steps before animating."
|
|
78
79
|
@tier "presentation"
|
|
80
|
+
skeleton : "header" | "table" | "list" | "grid" | "detail" | "stats" | "form" | "card" | "text" | "none"
|
|
81
|
+
@label "Skeleton"
|
|
82
|
+
@description "Skeleton shown while this element's server render is in flight: a shape (`table`, `list`, …), `{ variant, rows?, columns?, fields? }`, or `none`."
|
|
83
|
+
@tier "presentation"
|
|
79
84
|
}
|
|
80
85
|
}
|
|
81
86
|
|
|
@@ -26,6 +26,7 @@ orbital AvatarOrbital {
|
|
|
26
26
|
actionPayload: @config.actionPayload
|
|
27
27
|
enter: @config.enter
|
|
28
28
|
enterDelay: @config.enterDelay
|
|
29
|
+
skeleton: @config.skeleton
|
|
29
30
|
aria-label: @config.ariaLabel
|
|
30
31
|
aria-labelledby: @config.ariaLabelledby
|
|
31
32
|
aria-describedby: @config.ariaDescribedby
|
|
@@ -110,6 +111,10 @@ orbital AvatarOrbital {
|
|
|
110
111
|
@label "Enter Delay"
|
|
111
112
|
@description "Stagger step for the entry: waits this many `--motion-enter-stagger` steps before animating."
|
|
112
113
|
@tier "presentation"
|
|
114
|
+
skeleton : "header" | "table" | "list" | "grid" | "detail" | "stats" | "form" | "card" | "text" | "none"
|
|
115
|
+
@label "Skeleton"
|
|
116
|
+
@description "Skeleton shown while this element's server render is in flight: a shape (`table`, `list`, …), `{ variant, rows?, columns?, fields? }`, or `none`."
|
|
117
|
+
@tier "presentation"
|
|
113
118
|
ariaLabel : string
|
|
114
119
|
@label "Aria-label"
|
|
115
120
|
@description "Accessible name read by screen readers when the visible text is missing or not descriptive (e.g. an icon-only control)."
|
|
@@ -38,6 +38,7 @@ orbital BadgeOrbital {
|
|
|
38
38
|
removeLabel: @config.removeLabel
|
|
39
39
|
enter: @config.enter
|
|
40
40
|
enterDelay: @config.enterDelay
|
|
41
|
+
skeleton: @config.skeleton
|
|
41
42
|
aria-label: @config.ariaLabel
|
|
42
43
|
aria-labelledby: @config.ariaLabelledby
|
|
43
44
|
aria-describedby: @config.ariaDescribedby
|
|
@@ -101,6 +102,10 @@ orbital BadgeOrbital {
|
|
|
101
102
|
@label "Enter Delay"
|
|
102
103
|
@description "Stagger step for the entry: waits this many `--motion-enter-stagger` steps before animating."
|
|
103
104
|
@tier "presentation"
|
|
105
|
+
skeleton : "header" | "table" | "list" | "grid" | "detail" | "stats" | "form" | "card" | "text" | "none"
|
|
106
|
+
@label "Skeleton"
|
|
107
|
+
@description "Skeleton shown while this element's server render is in flight: a shape (`table`, `list`, …), `{ variant, rows?, columns?, fields? }`, or `none`."
|
|
108
|
+
@tier "presentation"
|
|
104
109
|
ariaLabel : string
|
|
105
110
|
@label "Aria-label"
|
|
106
111
|
@description "Accessible name read by screen readers when the visible text is missing or not descriptive (e.g. an icon-only control)."
|