@almadar/std 2.1.0 → 2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/dist/behaviors/async.d.ts +12 -7
  2. package/dist/behaviors/async.js +1085 -312
  3. package/dist/behaviors/async.js.map +1 -1
  4. package/dist/behaviors/data-management.d.ts +27 -13
  5. package/dist/behaviors/data-management.js +600 -244
  6. package/dist/behaviors/data-management.js.map +1 -1
  7. package/dist/behaviors/domain/commerce.d.ts +51 -0
  8. package/dist/behaviors/domain/commerce.js +1093 -0
  9. package/dist/behaviors/domain/commerce.js.map +1 -0
  10. package/dist/behaviors/domain/content.d.ts +51 -0
  11. package/dist/behaviors/domain/content.js +1294 -0
  12. package/dist/behaviors/domain/content.js.map +1 -0
  13. package/dist/behaviors/domain/dashboard.d.ts +45 -0
  14. package/dist/behaviors/domain/dashboard.js +783 -0
  15. package/dist/behaviors/domain/dashboard.js.map +1 -0
  16. package/dist/behaviors/domain/education.d.ts +41 -0
  17. package/dist/behaviors/domain/education.js +738 -0
  18. package/dist/behaviors/domain/education.js.map +1 -0
  19. package/dist/behaviors/domain/finance.d.ts +49 -0
  20. package/dist/behaviors/domain/finance.js +660 -0
  21. package/dist/behaviors/domain/finance.js.map +1 -0
  22. package/dist/behaviors/domain/game-2d-platformer.d.ts +50 -0
  23. package/dist/behaviors/domain/game-2d-platformer.js +810 -0
  24. package/dist/behaviors/domain/game-2d-platformer.js.map +1 -0
  25. package/dist/behaviors/domain/game-2d-puzzle.d.ts +42 -0
  26. package/dist/behaviors/domain/game-2d-puzzle.js +622 -0
  27. package/dist/behaviors/domain/game-2d-puzzle.js.map +1 -0
  28. package/dist/behaviors/domain/game-2d-rpg.d.ts +48 -0
  29. package/dist/behaviors/domain/game-2d-rpg.js +860 -0
  30. package/dist/behaviors/domain/game-2d-rpg.js.map +1 -0
  31. package/dist/behaviors/domain/game-2d-strategy.d.ts +48 -0
  32. package/dist/behaviors/domain/game-2d-strategy.js +692 -0
  33. package/dist/behaviors/domain/game-2d-strategy.js.map +1 -0
  34. package/dist/behaviors/domain/geospatial.d.ts +35 -0
  35. package/dist/behaviors/domain/geospatial.js +634 -0
  36. package/dist/behaviors/domain/geospatial.js.map +1 -0
  37. package/dist/behaviors/domain/healthcare.d.ts +36 -0
  38. package/dist/behaviors/domain/healthcare.js +1068 -0
  39. package/dist/behaviors/domain/healthcare.js.map +1 -0
  40. package/dist/behaviors/domain/iot.d.ts +45 -0
  41. package/dist/behaviors/domain/iot.js +589 -0
  42. package/dist/behaviors/domain/iot.js.map +1 -0
  43. package/dist/behaviors/domain/media.d.ts +41 -0
  44. package/dist/behaviors/domain/media.js +771 -0
  45. package/dist/behaviors/domain/media.js.map +1 -0
  46. package/dist/behaviors/domain/scheduling.d.ts +41 -0
  47. package/dist/behaviors/domain/scheduling.js +930 -0
  48. package/dist/behaviors/domain/scheduling.js.map +1 -0
  49. package/dist/behaviors/domain/simulation.d.ts +36 -0
  50. package/dist/behaviors/domain/simulation.js +706 -0
  51. package/dist/behaviors/domain/simulation.js.map +1 -0
  52. package/dist/behaviors/domain/social.d.ts +41 -0
  53. package/dist/behaviors/domain/social.js +840 -0
  54. package/dist/behaviors/domain/social.js.map +1 -0
  55. package/dist/behaviors/domain/workflow.d.ts +41 -0
  56. package/dist/behaviors/domain/workflow.js +879 -0
  57. package/dist/behaviors/domain/workflow.js.map +1 -0
  58. package/dist/behaviors/feedback.d.ts +10 -5
  59. package/dist/behaviors/feedback.js +279 -194
  60. package/dist/behaviors/feedback.js.map +1 -1
  61. package/dist/behaviors/game-core.d.ts +15 -8
  62. package/dist/behaviors/game-core.js +412 -80
  63. package/dist/behaviors/game-core.js.map +1 -1
  64. package/dist/behaviors/game-entity.d.ts +17 -10
  65. package/dist/behaviors/game-entity.js +544 -237
  66. package/dist/behaviors/game-entity.js.map +1 -1
  67. package/dist/behaviors/game-ui.d.ts +16 -8
  68. package/dist/behaviors/game-ui.js +451 -316
  69. package/dist/behaviors/game-ui.js.map +1 -1
  70. package/dist/behaviors/index.d.ts +18 -1
  71. package/dist/behaviors/index.js +18905 -2140
  72. package/dist/behaviors/index.js.map +1 -1
  73. package/dist/behaviors/infrastructure.d.ts +9 -8
  74. package/dist/behaviors/infrastructure.js +597 -169
  75. package/dist/behaviors/infrastructure.js.map +1 -1
  76. package/dist/behaviors/registry.d.ts +11 -11
  77. package/dist/behaviors/registry.js +18904 -2139
  78. package/dist/behaviors/registry.js.map +1 -1
  79. package/dist/behaviors/types.d.ts +19 -2
  80. package/dist/behaviors/types.js.map +1 -1
  81. package/dist/behaviors/ui-interaction.d.ts +20 -14
  82. package/dist/behaviors/ui-interaction.js +928 -518
  83. package/dist/behaviors/ui-interaction.js.map +1 -1
  84. package/dist/index.js +18906 -2141
  85. package/dist/index.js.map +1 -1
  86. package/package.json +4 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../behaviors/feedback.ts"],"names":[],"mappings":"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","file":"feedback.js","sourcesContent":["/**\n * Feedback Behaviors\n *\n * Standard behaviors for user feedback including notifications,\n * confirmations, and undo functionality.\n * Each behavior is a self-contained OrbitalSchema that can function as a standalone .orb file.\n *\n * @packageDocumentation\n */\n\nimport type { OrbitalSchema } from './types.js';\n\n// ============================================================================\n// std-notification - Toast Notifications\n// ============================================================================\n\nexport const NOTIFICATION_BEHAVIOR: OrbitalSchema = {\n name: 'std-notification',\n version: '1.0.0',\n description: 'Toast notification with auto-dismiss',\n orbitals: [\n {\n name: 'NotificationOrbital',\n entity: {\n name: 'NotificationState',\n persistence: 'runtime',\n fields: [\n { name: 'id', type: 'string', required: true },\n { name: 'notifications', type: 'array', default: [] },\n { name: 'currentId', type: 'number', default: 0 },\n { name: 'autoDismissMs', type: 'number', default: 5000 },\n ],\n },\n traits: [\n {\n name: 'Notification',\n linkedEntity: 'NotificationState',\n category: 'interaction',\n stateMachine: {\n states: [\n { name: 'Hidden', isInitial: true },\n { name: 'Visible' },\n { name: 'Dismissing' },\n ],\n events: [\n { key: 'SHOW', name: 'Show' },\n { key: 'HIDE', name: 'Hide' },\n { key: 'DISMISS', name: 'Dismiss' },\n { key: 'AUTO_DISMISS', name: 'Auto Dismiss' },\n ],\n transitions: [\n {\n from: 'Hidden',\n to: 'Visible',\n event: 'SHOW',\n effects: [\n ['let', [['id', ['+', '@entity.currentId', 1]]],\n ['do',\n ['set', '@entity.currentId', '@id'],\n ['set', '@entity.notifications',\n ['array/append', '@entity.notifications', {\n id: '@id',\n type: '@payload.type',\n message: '@payload.message',\n title: '@payload.title',\n }]],\n ['when', ['>', '@entity.autoDismissMs', 0],\n ['async/delay', '@entity.autoDismissMs', ['emit', 'AUTO_DISMISS', { id: '@id' }]]]]],\n ],\n },\n {\n from: 'Visible',\n to: 'Visible',\n event: 'SHOW',\n effects: [\n ['let', [['id', ['+', '@entity.currentId', 1]]],\n ['do',\n ['set', '@entity.currentId', '@id'],\n ['set', '@entity.notifications',\n ['array/append', '@entity.notifications', {\n id: '@id',\n type: '@payload.type',\n message: '@payload.message',\n title: '@payload.title',\n }]],\n ['when', ['>', '@entity.autoDismissMs', 0],\n ['async/delay', '@entity.autoDismissMs', ['emit', 'AUTO_DISMISS', { id: '@id' }]]]]],\n ],\n },\n {\n from: 'Visible',\n to: 'Visible',\n event: 'DISMISS',\n effects: [\n ['set', '@entity.notifications',\n ['array/filter', '@entity.notifications', ['fn', 'n', ['!=', '@n.id', '@payload.id']]]],\n ],\n },\n {\n from: 'Visible',\n to: 'Visible',\n event: 'AUTO_DISMISS',\n effects: [\n ['set', '@entity.notifications',\n ['array/filter', '@entity.notifications', ['fn', 'n', ['!=', '@n.id', '@payload.id']]]],\n ],\n },\n {\n from: 'Visible',\n to: 'Hidden',\n event: 'HIDE',\n effects: [['set', '@entity.notifications', []]],\n },\n ],\n },\n },\n ],\n pages: [],\n },\n ],\n};\n\n// ============================================================================\n// std-confirmation - Confirmation Dialog\n// ============================================================================\n\nexport const CONFIRMATION_BEHAVIOR: OrbitalSchema = {\n name: 'std-confirmation',\n version: '1.0.0',\n description: 'Confirmation dialog with confirm/cancel actions',\n orbitals: [\n {\n name: 'ConfirmationOrbital',\n entity: {\n name: 'ConfirmationState',\n persistence: 'runtime',\n fields: [\n { name: 'id', type: 'string', required: true },\n { name: 'title', type: 'string', default: '' },\n { name: 'message', type: 'string', default: '' },\n { name: 'pendingAction', type: 'object', default: null },\n { name: 'confirmLabel', type: 'string', default: 'Confirm' },\n { name: 'cancelLabel', type: 'string', default: 'Cancel' },\n { name: 'confirmVariant', type: 'string', default: 'danger' },\n ],\n },\n traits: [\n {\n name: 'Confirmation',\n linkedEntity: 'ConfirmationState',\n category: 'interaction',\n stateMachine: {\n states: [\n { name: 'Closed', isInitial: true },\n { name: 'Open' },\n ],\n events: [\n { key: 'REQUEST', name: 'Request' },\n { key: 'CONFIRM', name: 'Confirm' },\n { key: 'CANCEL', name: 'Cancel' },\n ],\n transitions: [\n {\n from: 'Closed',\n to: 'Open',\n event: 'REQUEST',\n effects: [\n ['set', '@entity.title', '@payload.title'],\n ['set', '@entity.message', '@payload.message'],\n ['set', '@entity.pendingAction', '@payload.onConfirm'],\n ['render-ui', 'modal', {\n type: 'confirm-dialog',\n isOpen: true,\n onClose: 'CANCEL',\n onConfirm: 'CONFIRM',\n title: '@entity.title',\n message: '@entity.message',\n confirmText: '@entity.confirmLabel',\n cancelText: '@entity.cancelLabel',\n variant: '@entity.confirmVariant',\n }],\n ],\n },\n {\n from: 'Open',\n to: 'Closed',\n event: 'CONFIRM',\n effects: [\n ['when', '@entity.pendingAction', ['emit', '@entity.pendingAction.event', '@entity.pendingAction.payload']],\n ['set', '@entity.pendingAction', null],\n ],\n },\n {\n from: 'Open',\n to: 'Closed',\n event: 'CANCEL',\n effects: [['set', '@entity.pendingAction', null]],\n },\n ],\n },\n },\n ],\n pages: [],\n },\n ],\n};\n\n// ============================================================================\n// std-undo - Undo Stack\n// ============================================================================\n\nexport const UNDO_BEHAVIOR: OrbitalSchema = {\n name: 'std-undo',\n version: '1.0.0',\n description: 'Undo/redo stack for reversible actions',\n orbitals: [\n {\n name: 'UndoOrbital',\n entity: {\n name: 'UndoState',\n persistence: 'runtime',\n fields: [\n { name: 'id', type: 'string', required: true },\n { name: 'undoStack', type: 'array', default: [] },\n { name: 'redoStack', type: 'array', default: [] },\n { name: 'maxHistory', type: 'number', default: 50 },\n { name: 'showToast', type: 'boolean', default: true },\n ],\n },\n traits: [\n {\n name: 'Undo',\n linkedEntity: 'UndoState',\n category: 'interaction',\n stateMachine: {\n states: [{ name: 'Ready', isInitial: true }],\n events: [\n { key: 'PUSH', name: 'Push' },\n { key: 'UNDO', name: 'Undo' },\n { key: 'REDO', name: 'Redo' },\n { key: 'CLEAR', name: 'Clear' },\n ],\n transitions: [\n {\n from: 'Ready',\n to: 'Ready',\n event: 'PUSH',\n effects: [\n ['set', '@entity.undoStack',\n ['array/slice',\n ['array/prepend', '@entity.undoStack', {\n action: '@payload.action',\n data: '@payload.data',\n reverseAction: '@payload.reverseAction',\n reverseData: '@payload.reverseData',\n description: '@payload.description',\n }],\n 0, '@entity.maxHistory']],\n ['set', '@entity.redoStack', []],\n ['when', '@entity.showToast',\n ['emit', 'NOTIFY', {\n type: 'info',\n message: ['str/concat', '@payload.description', ' - Click to undo'],\n action: { label: 'Undo', event: 'UNDO' },\n }]],\n ],\n },\n {\n from: 'Ready',\n to: 'Ready',\n event: 'UNDO',\n guard: ['>', ['array/len', '@entity.undoStack'], 0],\n effects: [\n ['let', [['action', ['array/first', '@entity.undoStack']]],\n ['do',\n ['set', '@entity.undoStack', ['array/slice', '@entity.undoStack', 1]],\n ['set', '@entity.redoStack', ['array/prepend', '@entity.redoStack', '@action']],\n ['emit', '@action.reverseAction', '@action.reverseData']]],\n ],\n },\n {\n from: 'Ready',\n to: 'Ready',\n event: 'REDO',\n guard: ['>', ['array/len', '@entity.redoStack'], 0],\n effects: [\n ['let', [['action', ['array/first', '@entity.redoStack']]],\n ['do',\n ['set', '@entity.redoStack', ['array/slice', '@entity.redoStack', 1]],\n ['set', '@entity.undoStack', ['array/prepend', '@entity.undoStack', '@action']],\n ['emit', '@action.action', '@action.data']]],\n ],\n },\n {\n from: 'Ready',\n to: 'Ready',\n event: 'CLEAR',\n effects: [\n ['set', '@entity.undoStack', []],\n ['set', '@entity.redoStack', []],\n ],\n },\n ],\n },\n },\n ],\n pages: [],\n },\n ],\n};\n\n// ============================================================================\n// Export All Feedback Behaviors\n// ============================================================================\n\nexport const FEEDBACK_BEHAVIORS: OrbitalSchema[] = [\n NOTIFICATION_BEHAVIOR,\n CONFIRMATION_BEHAVIOR,\n UNDO_BEHAVIOR,\n];\n"]}
1
+ {"version":3,"sources":["../../behaviors/feedback.ts"],"names":[],"mappings":"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","file":"feedback.js","sourcesContent":["/**\n * Feedback Behaviors\n *\n * Standard behaviors for user feedback including notifications,\n * confirmations, and undo functionality.\n * Each behavior is a self-contained OrbitalSchema that can function as a standalone .orb file.\n *\n * UI Composition: molecule-first (atoms + molecules only, no organisms).\n * Each behavior has unique, domain-appropriate layouts composed with\n * stack wrappers around atoms and molecules.\n *\n * @packageDocumentation\n */\n\nimport type { BehaviorSchema, BehaviorEffect } from './types.js';\n\n// ── Shared Feedback Theme ──────────────────────────────────────────\n\nconst FEEDBACK_THEME = {\n name: 'feedback-amber',\n tokens: {\n colors: {\n primary: '#d97706',\n 'primary-hover': '#b45309',\n 'primary-foreground': '#ffffff',\n accent: '#f59e0b',\n 'accent-foreground': '#000000',\n success: '#22c55e',\n warning: '#f59e0b',\n error: '#ef4444',\n },\n },\n};\n\n// ============================================================================\n// std-notification - Toast Notifications\n// ============================================================================\n\n// ── Reusable main-view effects (notification: hidden/empty) ────────\n\nconst notificationEmptyEffects: BehaviorEffect[] = [\n ['render-ui', 'main', { type: 'stack', direction: 'vertical', gap: 'lg', children: [\n // Header: icon + title\n { type: 'stack', direction: 'horizontal', gap: 'sm', children: [\n { type: 'icon', name: 'bell-off', size: 'lg' },\n { type: 'typography', variant: 'h2', content: 'Notifications' },\n ]},\n { type: 'divider' },\n // Empty state\n { type: 'stack', direction: 'vertical', gap: 'md', align: 'center', children: [\n { type: 'icon', name: 'inbox', size: 'xl' },\n { type: 'typography', variant: 'h3', content: 'No Notifications' },\n { type: 'typography', variant: 'body', content: 'Nothing to display' },\n { type: 'button', label: 'Send Test Notification', action: 'SHOW', icon: 'bell', variant: 'primary' },\n ]},\n ]}],\n];\n\n// ── Reusable main-view effects (notification: visible) ─────────────\n\nconst notificationVisibleEffects: BehaviorEffect[] = [\n ['render-ui', 'main', { type: 'stack', direction: 'vertical', gap: 'lg', children: [\n // Header: icon + title\n { type: 'stack', direction: 'horizontal', gap: 'sm', children: [\n { type: 'icon', name: 'bell', size: 'lg' },\n { type: 'typography', variant: 'h2', content: 'Notifications' },\n ]},\n { type: 'divider' },\n // Notification list\n { type: 'data-list', entity: 'Notification',\n fields: [\n { name: 'title', label: 'Title', icon: 'tag', variant: 'h4' },\n { name: 'message', label: 'Message', icon: 'message-square', variant: 'body' },\n { name: 'type', label: 'Type', icon: 'info', variant: 'badge' },\n ],\n actions: [\n { label: 'Dismiss', event: 'HIDE', icon: 'x', variant: 'ghost' },\n ],\n },\n ]}],\n];\n\nexport const NOTIFICATION_BEHAVIOR: BehaviorSchema = {\n name: 'std-notification',\n version: '1.0.0',\n description: 'Toast notification with auto-dismiss',\n theme: FEEDBACK_THEME,\n orbitals: [\n {\n name: 'NotificationOrbital',\n entity: {\n name: 'Notification',\n persistence: 'runtime',\n fields: [\n { name: 'id', type: 'string', required: true },\n { name: 'message', type: 'string', default: '' },\n { name: 'type', type: 'string', default: 'info' },\n { name: 'title', type: 'string', default: '' },\n ],\n },\n traits: [\n {\n name: 'NotificationDisplay',\n linkedEntity: 'Notification',\n category: 'interaction',\n stateMachine: {\n states: [\n { name: 'hidden', isInitial: true },\n { name: 'visible' },\n ],\n events: [\n { key: 'INIT', name: 'Initialize' },\n {\n key: 'SHOW',\n name: 'Show',\n payloadSchema: [\n { name: 'message', type: 'string', required: true },\n { name: 'type', type: 'string', required: false },\n { name: 'title', type: 'string', required: false },\n ],\n },\n { key: 'HIDE', name: 'Hide' },\n ],\n transitions: [\n {\n from: 'hidden',\n to: 'hidden',\n event: 'INIT',\n effects: [\n ...notificationEmptyEffects,\n ],\n },\n {\n from: 'hidden',\n to: 'visible',\n event: 'SHOW',\n effects: [\n ['fetch', 'Notification'],\n ['set', '@entity.message', '@payload.message'],\n ['set', '@entity.type', '@payload.type'],\n ['set', '@entity.title', '@payload.title'],\n ...notificationVisibleEffects,\n ],\n },\n {\n from: 'visible',\n to: 'visible',\n event: 'SHOW',\n effects: [\n ['fetch', 'Notification'],\n ['set', '@entity.message', '@payload.message'],\n ['set', '@entity.type', '@payload.type'],\n ['set', '@entity.title', '@payload.title'],\n ...notificationVisibleEffects,\n ],\n },\n {\n from: 'visible',\n to: 'hidden',\n event: 'HIDE',\n effects: [\n ['set', '@entity.message', ''],\n ['set', '@entity.title', ''],\n ...notificationEmptyEffects,\n ],\n },\n ],\n },\n },\n ],\n pages: [\n {\n name: 'NotificationsPage',\n path: '/notifications',\n isInitial: true,\n traits: [{ ref: 'NotificationDisplay' }],\n },\n ],\n },\n ],\n};\n\n// ============================================================================\n// std-confirmation - Confirmation Dialog\n// ============================================================================\n\n// ── Reusable main-view effects (confirmation: closed) ──────────────\n\nconst confirmationClosedEffects: BehaviorEffect[] = [\n ['render-ui', 'main', { type: 'stack', direction: 'vertical', gap: 'lg', children: [\n // Header: icon + title\n { type: 'stack', direction: 'horizontal', gap: 'sm', children: [\n { type: 'icon', name: 'shield-check', size: 'lg' },\n { type: 'typography', variant: 'h2', content: 'Confirmation' },\n ]},\n { type: 'divider' },\n // Idle state\n { type: 'stack', direction: 'vertical', gap: 'md', align: 'center', children: [\n { type: 'icon', name: 'check-circle', size: 'xl' },\n { type: 'typography', variant: 'body', content: 'No pending confirmations' },\n ]},\n ]}],\n];\n\nexport const CONFIRMATION_BEHAVIOR: BehaviorSchema = {\n name: 'std-confirmation',\n version: '1.0.0',\n description: 'Confirmation dialog with confirm/cancel actions',\n theme: FEEDBACK_THEME,\n orbitals: [\n {\n name: 'ConfirmationOrbital',\n entity: {\n name: 'Confirmation',\n persistence: 'runtime',\n fields: [\n { name: 'id', type: 'string', required: true },\n { name: 'title', type: 'string', default: '' },\n { name: 'message', type: 'string', default: '' },\n ],\n },\n traits: [\n {\n name: 'ConfirmationDialog',\n linkedEntity: 'Confirmation',\n category: 'interaction',\n stateMachine: {\n states: [\n { name: 'closed', isInitial: true },\n { name: 'open' },\n ],\n events: [\n { key: 'INIT', name: 'Initialize' },\n {\n key: 'REQUEST',\n name: 'Request',\n payloadSchema: [\n { name: 'title', type: 'string', required: true },\n { name: 'message', type: 'string', required: true },\n ],\n },\n { key: 'CONFIRM', name: 'Confirm' },\n { key: 'CANCEL', name: 'Cancel' },\n { key: 'CLOSE', name: 'Close' },\n ],\n transitions: [\n {\n from: 'closed',\n to: 'closed',\n event: 'INIT',\n effects: [\n ...confirmationClosedEffects,\n ],\n },\n {\n from: 'closed',\n to: 'open',\n event: 'REQUEST',\n effects: [\n ['set', '@entity.title', '@payload.title'],\n ['set', '@entity.message', '@payload.message'],\n ['render-ui', 'modal', { type: 'stack', direction: 'vertical', gap: 'lg', children: [\n // Modal header: warning icon + title\n { type: 'stack', direction: 'horizontal', gap: 'sm', children: [\n { type: 'icon', name: 'alert-triangle', size: 'lg' },\n { type: 'typography', variant: 'h3', content: '@entity.title' },\n ]},\n { type: 'divider' },\n // Message body\n { type: 'typography', variant: 'body', content: '@entity.message' },\n { type: 'divider' },\n // Action buttons\n { type: 'stack', direction: 'horizontal', gap: 'md', justify: 'end', children: [\n { type: 'button', label: 'Cancel', icon: 'x', variant: 'secondary', action: 'CANCEL' },\n { type: 'button', label: 'Confirm', icon: 'check', variant: 'primary', action: 'CONFIRM' },\n ]},\n ]}],\n ],\n },\n {\n from: 'open',\n to: 'closed',\n event: 'CONFIRM',\n effects: [\n ['set', '@entity.title', ''],\n ['set', '@entity.message', ''],\n ['render-ui', 'modal', null],\n ],\n },\n {\n from: 'open',\n to: 'closed',\n event: 'CANCEL',\n effects: [\n ['set', '@entity.title', ''],\n ['set', '@entity.message', ''],\n ['render-ui', 'modal', null],\n ],\n },\n {\n from: 'open',\n to: 'closed',\n event: 'CLOSE',\n effects: [\n ['set', '@entity.title', ''],\n ['set', '@entity.message', ''],\n ['render-ui', 'modal', null],\n ],\n },\n ],\n },\n },\n ],\n pages: [\n {\n name: 'ConfirmationPage',\n path: '/confirmation',\n isInitial: true,\n traits: [{ ref: 'ConfirmationDialog' }],\n },\n ],\n },\n ],\n};\n\n// ============================================================================\n// std-undo - Undo Stack\n// ============================================================================\n\n// ── Reusable main-view effects (undo: ready) ───────────────────────\n\nconst undoReadyEffects: BehaviorEffect[] = [\n ['render-ui', 'main', { type: 'stack', direction: 'vertical', gap: 'lg', children: [\n // Header: icon + title + clear button\n { type: 'stack', direction: 'horizontal', justify: 'space-between', children: [\n { type: 'stack', direction: 'horizontal', gap: 'sm', children: [\n { type: 'icon', name: 'rotate-ccw', size: 'lg' },\n { type: 'typography', variant: 'h2', content: 'Undo History' },\n ]},\n { type: 'button', label: 'Clear All', icon: 'trash-2', variant: 'ghost', action: 'CLEAR' },\n ]},\n { type: 'divider' },\n // Stats row\n { type: 'stack', direction: 'horizontal', gap: 'md', children: [\n { type: 'stats', label: 'Actions', icon: 'layers', entity: 'UndoEntry' },\n { type: 'stats', label: 'Status', icon: 'activity', entity: 'UndoEntry' },\n ]},\n { type: 'divider' },\n // Undo entries data grid\n { type: 'data-grid', entity: 'UndoEntry', cols: 1, gap: 'sm',\n fields: [\n { name: 'action', label: 'Action', icon: 'zap', variant: 'h4' },\n { name: 'description', label: 'Description', icon: 'file-text', variant: 'body' },\n { name: 'status', label: 'Status', icon: 'circle', variant: 'badge' },\n ],\n actions: [\n { label: 'Undo', event: 'UNDO', icon: 'rotate-ccw', variant: 'secondary' },\n ],\n },\n ]}],\n];\n\nexport const UNDO_BEHAVIOR: BehaviorSchema = {\n name: 'std-undo',\n version: '1.0.0',\n description: 'Undo stack for reversible actions',\n theme: FEEDBACK_THEME,\n orbitals: [\n {\n name: 'UndoOrbital',\n entity: {\n name: 'UndoEntry',\n persistence: 'runtime',\n fields: [\n { name: 'id', type: 'string', required: true },\n { name: 'action', type: 'string', default: '' },\n { name: 'description', type: 'string', default: '' },\n { name: 'status', type: 'string', default: 'ready' },\n ],\n },\n traits: [\n {\n name: 'UndoManagement',\n linkedEntity: 'UndoEntry',\n category: 'interaction',\n stateMachine: {\n states: [\n { name: 'ready', isInitial: true },\n ],\n events: [\n { key: 'INIT', name: 'Initialize' },\n {\n key: 'PUSH',\n name: 'Push',\n payloadSchema: [\n { name: 'action', type: 'string', required: true },\n { name: 'description', type: 'string', required: true },\n ],\n },\n { key: 'UNDO', name: 'Undo' },\n { key: 'CLEAR', name: 'Clear' },\n ],\n transitions: [\n {\n from: 'ready',\n to: 'ready',\n event: 'INIT',\n effects: [\n ['fetch', 'UndoEntry'],\n ...undoReadyEffects,\n ],\n },\n {\n from: 'ready',\n to: 'ready',\n event: 'PUSH',\n effects: [\n ['set', '@entity.action', '@payload.action'],\n ['set', '@entity.description', '@payload.description'],\n ['set', '@entity.status', 'recorded'],\n ],\n },\n {\n from: 'ready',\n to: 'ready',\n event: 'UNDO',\n effects: [\n ['set', '@entity.status', 'undone'],\n ],\n },\n {\n from: 'ready',\n to: 'ready',\n event: 'CLEAR',\n effects: [\n ['set', '@entity.action', ''],\n ['set', '@entity.description', ''],\n ['set', '@entity.status', 'ready'],\n ],\n },\n ],\n },\n },\n ],\n pages: [\n {\n name: 'UndoPage',\n path: '/undo',\n isInitial: true,\n traits: [{ ref: 'UndoManagement' }],\n },\n ],\n },\n ],\n};\n\n// ============================================================================\n// Export All Feedback Behaviors\n// ============================================================================\n\nexport const FEEDBACK_BEHAVIORS: BehaviorSchema[] = [\n NOTIFICATION_BEHAVIOR,\n CONFIRMATION_BEHAVIOR,\n UNDO_BEHAVIOR,\n];\n"]}
@@ -1,10 +1,12 @@
1
- import { OrbitalSchema } from '@almadar/core/types';
1
+ import { BehaviorSchema } from './types.js';
2
+ import '@almadar/core/types';
2
3
 
3
4
  /**
4
5
  * Game Core Behaviors
5
6
  *
6
7
  * Foundation behaviors for game systems: loop, physics, input, collision.
7
- * Each behavior is a self-contained OrbitalSchema that can function as a standalone .orb file.
8
+ * Each behavior is a self-contained OrbitalSchema that passes orbital validate
9
+ * with 0 errors and 0 warnings when exported as a standalone .orb file.
8
10
  *
9
11
  * @packageDocumentation
10
12
  */
@@ -12,28 +14,33 @@ import { OrbitalSchema } from '@almadar/core/types';
12
14
  /**
13
15
  * std-gameloop - Coordinates game tick execution at 60fps.
14
16
  *
15
- * States: Running, Paused
17
+ * States: Stopped -> Running -> Paused
16
18
  * Provides the master clock for all game systems.
19
+ * Uses a concrete GameLoopData entity to track frame count and elapsed time.
17
20
  */
18
- declare const GAME_LOOP_BEHAVIOR: OrbitalSchema;
21
+ declare const GAME_LOOP_BEHAVIOR: BehaviorSchema;
19
22
  /**
20
23
  * std-physics2d - 2D physics with gravity, velocity, and friction.
21
24
  *
22
25
  * Applied to entities that need physics simulation.
26
+ * Uses a concrete Physics2DData entity to track position and velocity.
23
27
  */
24
- declare const PHYSICS_2D_BEHAVIOR: OrbitalSchema;
28
+ declare const PHYSICS_2D_BEHAVIOR: BehaviorSchema;
25
29
  /**
26
30
  * std-input - Manages keyboard and touch input state.
27
31
  *
28
32
  * Singleton behavior that tracks all input state.
33
+ * Simplified to track last key pressed/released as strings
34
+ * rather than mapping individual keys via conditionals.
29
35
  */
30
- declare const INPUT_BEHAVIOR: OrbitalSchema;
36
+ declare const INPUT_BEHAVIOR: BehaviorSchema;
31
37
  /**
32
38
  * std-collision - Handles collision detection and response.
33
39
  *
34
40
  * Configures how an entity responds to collisions.
41
+ * Uses a concrete CollisionData entity to track collision status.
35
42
  */
36
- declare const COLLISION_BEHAVIOR: OrbitalSchema;
37
- declare const GAME_CORE_BEHAVIORS: OrbitalSchema[];
43
+ declare const COLLISION_BEHAVIOR: BehaviorSchema;
44
+ declare const GAME_CORE_BEHAVIORS: BehaviorSchema[];
38
45
 
39
46
  export { COLLISION_BEHAVIOR, GAME_CORE_BEHAVIORS, GAME_LOOP_BEHAVIOR, INPUT_BEHAVIOR, PHYSICS_2D_BEHAVIOR };