@almadar/std 1.0.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/LICENSE +72 -0
- package/dist/behaviors/action-affinity.d.ts +88 -0
- package/dist/behaviors/action-affinity.js +290 -0
- package/dist/behaviors/action-affinity.js.map +1 -0
- package/dist/behaviors/async.d.ts +20 -0
- package/dist/behaviors/async.js +542 -0
- package/dist/behaviors/async.js.map +1 -0
- package/dist/behaviors/data-management.d.ts +40 -0
- package/dist/behaviors/data-management.js +495 -0
- package/dist/behaviors/data-management.js.map +1 -0
- package/dist/behaviors/feedback.d.ts +18 -0
- package/dist/behaviors/feedback.js +307 -0
- package/dist/behaviors/feedback.js.map +1 -0
- package/dist/behaviors/game-core.d.ts +40 -0
- package/dist/behaviors/game-core.js +443 -0
- package/dist/behaviors/game-core.js.map +1 -0
- package/dist/behaviors/game-entity.d.ts +39 -0
- package/dist/behaviors/game-entity.js +643 -0
- package/dist/behaviors/game-entity.js.map +1 -0
- package/dist/behaviors/game-ui.d.ts +29 -0
- package/dist/behaviors/game-ui.js +493 -0
- package/dist/behaviors/game-ui.js.map +1 -0
- package/dist/behaviors/index.d.ts +11 -0
- package/dist/behaviors/index.js +4539 -0
- package/dist/behaviors/index.js.map +1 -0
- package/dist/behaviors/registry.d.ts +103 -0
- package/dist/behaviors/registry.js +4166 -0
- package/dist/behaviors/registry.js.map +1 -0
- package/dist/behaviors/types.d.ts +179 -0
- package/dist/behaviors/types.js +111 -0
- package/dist/behaviors/types.js.map +1 -0
- package/dist/behaviors/ui-interaction.d.ts +36 -0
- package/dist/behaviors/ui-interaction.js +1104 -0
- package/dist/behaviors/ui-interaction.js.map +1 -0
- package/dist/index.d.ts +195 -0
- package/dist/index.js +8209 -0
- package/dist/index.js.map +1 -0
- package/dist/modules/array.d.ts +28 -0
- package/dist/modules/array.js +556 -0
- package/dist/modules/array.js.map +1 -0
- package/dist/modules/async.d.ts +22 -0
- package/dist/modules/async.js +112 -0
- package/dist/modules/async.js.map +1 -0
- package/dist/modules/format.d.ts +21 -0
- package/dist/modules/format.js +129 -0
- package/dist/modules/format.js.map +1 -0
- package/dist/modules/index.d.ts +12 -0
- package/dist/modules/index.js +3131 -0
- package/dist/modules/index.js.map +1 -0
- package/dist/modules/math.d.ts +22 -0
- package/dist/modules/math.js +215 -0
- package/dist/modules/math.js.map +1 -0
- package/dist/modules/nn.d.ts +23 -0
- package/dist/modules/nn.js +189 -0
- package/dist/modules/nn.js.map +1 -0
- package/dist/modules/object.d.ts +22 -0
- package/dist/modules/object.js +257 -0
- package/dist/modules/object.js.map +1 -0
- package/dist/modules/str.d.ts +21 -0
- package/dist/modules/str.js +344 -0
- package/dist/modules/str.js.map +1 -0
- package/dist/modules/tensor.d.ts +23 -0
- package/dist/modules/tensor.js +427 -0
- package/dist/modules/tensor.js.map +1 -0
- package/dist/modules/time.d.ts +24 -0
- package/dist/modules/time.js +323 -0
- package/dist/modules/time.js.map +1 -0
- package/dist/modules/train.d.ts +23 -0
- package/dist/modules/train.js +308 -0
- package/dist/modules/train.js.map +1 -0
- package/dist/modules/validate.d.ts +23 -0
- package/dist/modules/validate.js +301 -0
- package/dist/modules/validate.js.map +1 -0
- package/dist/registry.d.ts +140 -0
- package/dist/registry.js +3240 -0
- package/dist/registry.js.map +1 -0
- package/dist/types-I95R8_FN.d.ts +91 -0
- package/package.json +59 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../behaviors/ui-interaction.ts"],"names":[],"mappings":"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","file":"ui-interaction.js","sourcesContent":["/**\n * UI Interaction Behaviors\n *\n * Standard behaviors for common UI interaction patterns.\n * These use the Trait architecture with stateMachine.\n *\n * IMPORTANT: These are GENERATION TEMPLATES for LLMs.\n * They must use correct syntax:\n * - render-ui (not render)\n * - Explicit from states (not '*')\n * - Valid pattern types (form-section, entity-detail, etc.)\n *\n * @packageDocumentation\n */\n\nimport type { StandardBehavior } from './types.js';\n\n// ============================================================================\n// std/List - Entity List Management\n// ============================================================================\n\n/**\n * std/List - The core behavior for displaying and interacting with entity collections.\n *\n * States: Browsing → Creating/Viewing/Editing/Deleting\n * Implements complete CRUD operations with modal/drawer UI patterns.\n */\nexport const LIST_BEHAVIOR: StandardBehavior = {\n name: 'std/List',\n category: 'ui-interaction',\n description: 'Entity list management with CRUD operations',\n suggestedFor: [\n 'Entity listing pages',\n 'Admin panels',\n 'Data management screens',\n 'Table views with inline actions',\n ],\n\n dataEntities: [\n {\n name: 'ListState',\n runtime: true,\n singleton: true,\n fields: [\n { name: 'selectedId', type: 'string', default: null },\n ],\n },\n ],\n\n stateMachine: {\n initial: 'Browsing',\n states: [\n { name: 'Browsing', isInitial: true },\n { name: 'Creating' },\n { name: 'Viewing' },\n { name: 'Editing' },\n { name: 'Deleting' },\n ],\n events: [\n { key: 'INIT' },\n { key: 'CREATE' },\n { key: 'VIEW' },\n { key: 'EDIT' },\n { key: 'DELETE' },\n { key: 'CONFIRM_DELETE' },\n { key: 'CANCEL' },\n { key: 'SAVE' },\n ],\n transitions: [\n // INIT: Self-loop on Browsing that renders the list UI\n {\n from: 'Browsing',\n to: 'Browsing',\n event: 'INIT',\n effects: [\n ['render-ui', 'main', {\n type: 'page-header',\n title: '@config.title',\n actions: [{ label: 'Create', event: 'CREATE', variant: 'primary' }],\n }],\n ['render-ui', 'main', {\n type: 'entity-table',\n entity: '@config.entity',\n columns: '@config.columns',\n itemActions: [\n { label: 'View', event: 'VIEW', placement: 'row' },\n { label: 'Edit', event: 'EDIT', placement: 'row' },\n { label: 'Delete', event: 'DELETE', variant: 'danger', placement: 'row' },\n ],\n }],\n ],\n },\n {\n from: 'Browsing',\n to: 'Creating',\n event: 'CREATE',\n effects: [\n ['render-ui', 'modal', {\n type: 'form-section',\n entity: '@config.entity',\n mode: 'create',\n submitEvent: 'SAVE',\n cancelEvent: 'CANCEL',\n }],\n ],\n },\n {\n from: 'Browsing',\n to: 'Viewing',\n event: 'VIEW',\n effects: [\n ['set', '@entity.selectedId', '@payload.id'],\n ['render-ui', 'drawer', {\n type: 'entity-detail',\n entity: '@config.entity',\n id: '@payload.id',\n actions: [\n { label: 'Edit', event: 'EDIT' },\n { label: 'Close', event: 'CANCEL' },\n ],\n }],\n ],\n },\n {\n from: 'Browsing',\n to: 'Editing',\n event: 'EDIT',\n effects: [\n ['set', '@entity.selectedId', '@payload.id'],\n ['render-ui', 'drawer', {\n type: 'form-section',\n entity: '@config.entity',\n id: '@payload.id',\n mode: 'edit',\n submitEvent: 'SAVE',\n cancelEvent: 'CANCEL',\n }],\n ],\n },\n {\n from: 'Viewing',\n to: 'Editing',\n event: 'EDIT',\n effects: [\n ['render-ui', 'drawer', {\n type: 'form-section',\n entity: '@config.entity',\n id: '@entity.selectedId',\n mode: 'edit',\n submitEvent: 'SAVE',\n cancelEvent: 'CANCEL',\n }],\n ],\n },\n {\n from: 'Browsing',\n to: 'Deleting',\n event: 'DELETE',\n effects: [\n ['set', '@entity.selectedId', '@payload.id'],\n ['render-ui', 'modal', {\n type: 'confirmation',\n title: 'Delete Confirmation',\n message: 'Are you sure you want to delete this item?',\n confirmLabel: 'Delete',\n confirmVariant: 'danger',\n }],\n ],\n },\n {\n from: 'Creating',\n to: 'Browsing',\n event: 'SAVE',\n effects: [\n ['persist', 'create', '@config.entity', '@payload.data'],\n ['render-ui', 'modal', null],\n ['notify', { type: 'success', message: 'Created successfully' }],\n ['emit', 'INIT'],\n ],\n },\n {\n from: 'Editing',\n to: 'Browsing',\n event: 'SAVE',\n effects: [\n ['persist', 'update', '@config.entity', '@payload.data'],\n ['render-ui', 'drawer', null],\n ['notify', { type: 'success', message: 'Updated successfully' }],\n ['emit', 'INIT'],\n ],\n },\n {\n from: 'Deleting',\n to: 'Browsing',\n event: 'CONFIRM_DELETE',\n effects: [\n ['persist', 'delete', '@config.entity', '@entity.selectedId'],\n ['render-ui', 'modal', null],\n ['notify', { type: 'success', message: 'Deleted successfully' }],\n ['emit', 'INIT'],\n ],\n },\n {\n from: 'Creating',\n to: 'Browsing',\n event: 'CANCEL',\n effects: [\n ['render-ui', 'modal', null],\n ],\n },\n {\n from: 'Viewing',\n to: 'Browsing',\n event: 'CANCEL',\n effects: [\n ['render-ui', 'drawer', null],\n ],\n },\n {\n from: 'Editing',\n to: 'Browsing',\n event: 'CANCEL',\n effects: [\n ['render-ui', 'drawer', null],\n ],\n },\n {\n from: 'Deleting',\n to: 'Browsing',\n event: 'CANCEL',\n effects: [\n ['render-ui', 'modal', null],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [\n { name: 'entity', type: 'entity', description: 'Entity type to list' },\n { name: 'columns', type: 'array', description: 'Fields to display as columns' },\n ],\n optional: [\n { name: 'title', type: 'string', description: 'Page title', default: '' },\n { name: 'display', type: 'string', description: 'Display mode', default: 'table', enum: ['table', 'cards', 'list'] },\n { name: 'actions', type: 'action[]', description: 'Available actions', default: ['view', 'edit', 'delete'] },\n { name: 'createInModal', type: 'boolean', description: 'Show create form in modal', default: true },\n { name: 'editInDrawer', type: 'boolean', description: 'Show edit form in drawer', default: true },\n ],\n },\n};\n\n// ============================================================================\n// std/Detail - Single Entity View\n// ============================================================================\n\nexport const DETAIL_BEHAVIOR: StandardBehavior = {\n name: 'std/Detail',\n category: 'ui-interaction',\n description: 'Single entity view with edit/delete capabilities',\n suggestedFor: [\n 'Entity detail pages',\n 'Profile views',\n 'Settings pages',\n 'Single record screens',\n ],\n\n dataEntities: [\n {\n name: 'DetailState',\n runtime: true,\n fields: [\n { name: 'entityId', type: 'string', default: null },\n { name: 'isLoading', type: 'boolean', default: false },\n { name: 'hasChanges', type: 'boolean', default: false },\n ],\n },\n ],\n\n stateMachine: {\n initial: 'Viewing',\n states: [\n { name: 'Viewing', isInitial: true },\n { name: 'Editing' },\n { name: 'Deleting' },\n ],\n events: [\n { key: 'INIT' },\n { key: 'EDIT' },\n { key: 'SAVE' },\n { key: 'CANCEL' },\n { key: 'DELETE' },\n { key: 'CONFIRM_DELETE' },\n ],\n transitions: [\n // INIT: Self-loop on Viewing\n {\n from: 'Viewing',\n to: 'Viewing',\n event: 'INIT',\n effects: [\n ['render-ui', 'main', {\n type: 'page-header',\n title: '@entity.name',\n actions: [\n { label: 'Edit', event: 'EDIT' },\n { label: 'Delete', event: 'DELETE', variant: 'danger' },\n ],\n }],\n ['render-ui', 'main', {\n type: 'entity-detail',\n entity: '@config.entity',\n fieldNames: '@config.fields',\n }],\n ],\n },\n {\n from: 'Viewing',\n to: 'Editing',\n event: 'EDIT',\n effects: [\n ['render-ui', 'main', {\n type: 'form-section',\n entity: '@config.entity',\n mode: 'edit',\n fields: '@config.fields',\n submitEvent: 'SAVE',\n cancelEvent: 'CANCEL',\n }],\n ],\n },\n {\n from: 'Editing',\n to: 'Viewing',\n event: 'SAVE',\n effects: [\n ['persist', 'update', '@config.entity', '@payload.data'],\n ['notify', { type: 'success', message: 'Updated successfully' }],\n ['emit', 'INIT'],\n ],\n },\n {\n from: 'Editing',\n to: 'Viewing',\n event: 'CANCEL',\n effects: [\n ['emit', 'INIT'],\n ],\n },\n {\n from: 'Viewing',\n to: 'Deleting',\n event: 'DELETE',\n effects: [\n ['render-ui', 'modal', {\n type: 'confirmation',\n title: 'Delete Confirmation',\n message: 'Are you sure you want to delete this item?',\n }],\n ],\n },\n {\n from: 'Deleting',\n to: 'Viewing',\n event: 'CONFIRM_DELETE',\n effects: [\n ['persist', 'delete', '@config.entity', '@entity.id'],\n ['navigate', '@config.returnUrl'],\n ],\n },\n {\n from: 'Deleting',\n to: 'Viewing',\n event: 'CANCEL',\n effects: [\n ['render-ui', 'modal', null],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [\n { name: 'entity', type: 'entity', description: 'Entity type' },\n { name: 'fields', type: 'array', description: 'Fields to display' },\n ],\n optional: [\n { name: 'layout', type: 'string', description: 'Layout mode', default: 'two-column', enum: ['single-column', 'two-column', 'grid'] },\n { name: 'allowEdit', type: 'boolean', description: 'Allow editing', default: true },\n { name: 'allowDelete', type: 'boolean', description: 'Allow deletion', default: true },\n ],\n },\n};\n\n// ============================================================================\n// std/Form - Form State Management\n// ============================================================================\n\nexport const FORM_BEHAVIOR: StandardBehavior = {\n name: 'std/Form',\n category: 'ui-interaction',\n description: 'Form state management with validation and submission',\n suggestedFor: [\n 'Create/edit forms',\n 'Settings forms',\n 'Multi-field input',\n 'Validated data entry',\n ],\n\n dataEntities: [\n {\n name: 'FormState',\n runtime: true,\n fields: [\n { name: 'values', type: 'object', default: {} },\n { name: 'errors', type: 'object', default: {} },\n { name: 'touched', type: 'object', default: {} },\n { name: 'isDirty', type: 'boolean', default: false },\n { name: 'isSubmitting', type: 'boolean', default: false },\n ],\n },\n ],\n\n stateMachine: {\n initial: 'Idle',\n states: [\n { name: 'Idle', isInitial: true },\n { name: 'Editing' },\n { name: 'Validating' },\n { name: 'Submitting' },\n { name: 'Success' },\n { name: 'Error' },\n ],\n events: [\n { key: 'INIT' },\n { key: 'FIELD_CHANGE' },\n { key: 'FIELD_BLUR' },\n { key: 'SUBMIT' },\n { key: 'VALIDATION_PASSED' },\n { key: 'VALIDATION_FAILED' },\n { key: 'SUBMIT_SUCCESS' },\n { key: 'SUBMIT_ERROR' },\n { key: 'RESET' },\n ],\n transitions: [\n // INIT: Self-loop on Idle → Editing\n {\n from: 'Idle',\n to: 'Editing',\n event: 'INIT',\n effects: [\n ['render-ui', 'main', {\n type: 'form-section',\n entity: '@config.entity',\n fields: '@config.fields',\n values: '@entity.values',\n errors: '@entity.errors',\n submitEvent: 'SUBMIT',\n cancelEvent: '@config.cancelEvent',\n }],\n ],\n },\n {\n from: 'Editing',\n to: 'Editing',\n event: 'FIELD_CHANGE',\n effects: [\n ['set', '@entity.values', ['object/set', '@entity.values', '@payload.field', '@payload.value']],\n ['set', '@entity.isDirty', true],\n ],\n },\n {\n from: 'Editing',\n to: 'Editing',\n event: 'FIELD_BLUR',\n effects: [\n ['set', '@entity.touched', ['object/set', '@entity.touched', '@payload.field', true]],\n ],\n },\n {\n from: 'Editing',\n to: 'Validating',\n event: 'SUBMIT',\n effects: [\n ['let', [['result', ['validate/check', '@entity.values', '@config.validation']]],\n ['if', '@result.valid',\n ['emit', 'VALIDATION_PASSED'],\n ['do',\n ['set', '@entity.errors', '@result.errors'],\n ['emit', 'VALIDATION_FAILED']]]],\n ],\n },\n {\n from: 'Validating',\n to: 'Submitting',\n event: 'VALIDATION_PASSED',\n effects: [\n ['set', '@entity.isSubmitting', true],\n ['if', ['=', '@config.mode', 'create'],\n ['persist', 'create', '@config.entity', '@entity.values'],\n ['persist', 'update', '@config.entity', '@entity.values']],\n ],\n },\n {\n from: 'Validating',\n to: 'Editing',\n event: 'VALIDATION_FAILED',\n effects: [\n ['notify', { type: 'error', message: 'Please fix the validation errors' }],\n ],\n },\n {\n from: 'Submitting',\n to: 'Success',\n event: 'SUBMIT_SUCCESS',\n effects: [\n ['set', '@entity.isSubmitting', false],\n ['notify', { type: 'success', message: 'Saved successfully' }],\n ['emit', '@config.submitEvent', { data: '@entity.values' }],\n ],\n },\n {\n from: 'Submitting',\n to: 'Error',\n event: 'SUBMIT_ERROR',\n effects: [\n ['set', '@entity.isSubmitting', false],\n ['set', '@entity.errors', { _form: '@payload.error' }],\n ['notify', { type: 'error', message: '@payload.error' }],\n ],\n },\n {\n from: 'Editing',\n to: 'Idle',\n event: 'RESET',\n effects: [\n ['set', '@entity.values', {}],\n ['set', '@entity.errors', {}],\n ['set', '@entity.touched', {}],\n ['set', '@entity.isDirty', false],\n ],\n },\n {\n from: 'Error',\n to: 'Idle',\n event: 'RESET',\n effects: [\n ['set', '@entity.values', {}],\n ['set', '@entity.errors', {}],\n ['set', '@entity.touched', {}],\n ['set', '@entity.isDirty', false],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [\n { name: 'entity', type: 'entity', description: 'Entity type' },\n { name: 'fields', type: 'array', description: 'Form fields' },\n ],\n optional: [\n { name: 'mode', type: 'string', description: 'Form mode', default: 'create', enum: ['create', 'edit'] },\n { name: 'validation', type: 'object', description: 'Validation rules', default: {} },\n { name: 'submitEvent', type: 'event', description: 'Event to emit on successful submit', default: 'SAVE' },\n { name: 'cancelEvent', type: 'event', description: 'Event to emit on cancel', default: 'CANCEL' },\n ],\n },\n};\n\n// ============================================================================\n// std/Modal - Modal Dialog\n// ============================================================================\n\nexport const MODAL_BEHAVIOR: StandardBehavior = {\n name: 'std/Modal',\n category: 'ui-interaction',\n description: 'Modal dialog with open/close state management',\n suggestedFor: [\n 'Confirmation dialogs',\n 'Create forms',\n 'Detail views',\n 'Any overlay content',\n ],\n\n dataEntities: [\n {\n name: 'ModalState',\n runtime: true,\n fields: [\n { name: 'content', type: 'object', default: null },\n ],\n },\n ],\n\n stateMachine: {\n initial: 'Closed',\n states: [\n { name: 'Closed', isInitial: true },\n { name: 'Open' },\n ],\n events: [\n { key: 'OPEN' },\n { key: 'CLOSE' },\n { key: 'CONFIRM' },\n ],\n transitions: [\n {\n from: 'Closed',\n to: 'Open',\n event: 'OPEN',\n effects: [\n ['set', '@entity.content', '@payload.content'],\n ['render-ui', 'modal', {\n type: '@payload.type',\n onClose: 'CLOSE',\n }],\n ],\n },\n {\n from: 'Open',\n to: 'Closed',\n event: 'CLOSE',\n effects: [\n ['render-ui', 'modal', null],\n ],\n },\n {\n from: 'Open',\n to: 'Closed',\n event: 'CONFIRM',\n effects: [\n ['render-ui', 'modal', null],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [],\n optional: [\n { name: 'size', type: 'string', description: 'Modal size', default: 'md', enum: ['sm', 'md', 'lg', 'xl', 'full'] },\n { name: 'closeOnOverlay', type: 'boolean', description: 'Close on overlay click', default: true },\n { name: 'closeOnEscape', type: 'boolean', description: 'Close on escape key', default: true },\n ],\n },\n};\n\n// ============================================================================\n// std/Drawer - Side Drawer Panel\n// ============================================================================\n\nexport const DRAWER_BEHAVIOR: StandardBehavior = {\n name: 'std/Drawer',\n category: 'ui-interaction',\n description: 'Side drawer panel for detail views and forms',\n suggestedFor: [\n 'Detail panels',\n 'Edit forms',\n 'Property panels',\n 'Side navigation',\n ],\n\n dataEntities: [\n {\n name: 'DrawerState',\n runtime: true,\n fields: [\n { name: 'content', type: 'object', default: null },\n ],\n },\n ],\n\n stateMachine: {\n initial: 'Closed',\n states: [\n { name: 'Closed', isInitial: true },\n { name: 'Open' },\n ],\n events: [\n { key: 'OPEN' },\n { key: 'CLOSE' },\n ],\n transitions: [\n {\n from: 'Closed',\n to: 'Open',\n event: 'OPEN',\n effects: [\n ['set', '@entity.content', '@payload.content'],\n ['render-ui', 'drawer', {\n type: '@payload.type',\n onClose: 'CLOSE',\n }],\n ],\n },\n {\n from: 'Open',\n to: 'Closed',\n event: 'CLOSE',\n effects: [\n ['render-ui', 'drawer', null],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [],\n optional: [\n { name: 'position', type: 'string', description: 'Drawer position', default: 'right', enum: ['left', 'right'] },\n { name: 'size', type: 'string', description: 'Drawer size', default: 'md', enum: ['sm', 'md', 'lg'] },\n { name: 'overlay', type: 'boolean', description: 'Show overlay', default: true },\n ],\n },\n};\n\n// ============================================================================\n// std/Tabs - Tabbed Navigation\n// ============================================================================\n\nexport const TABS_BEHAVIOR: StandardBehavior = {\n name: 'std/Tabs',\n category: 'ui-interaction',\n description: 'Tabbed navigation within a page',\n suggestedFor: [\n 'Multi-view pages',\n 'Settings with sections',\n 'Dashboard tabs',\n 'Profile sections',\n ],\n\n dataEntities: [\n {\n name: 'TabsState',\n runtime: true,\n singleton: true,\n fields: [\n { name: 'activeTab', type: 'string', default: null },\n ],\n },\n ],\n\n stateMachine: {\n initial: 'Active',\n states: [\n { name: 'Active', isInitial: true },\n ],\n events: [\n { key: 'INIT' },\n { key: 'SELECT_TAB' },\n ],\n transitions: [\n // INIT: Self-loop on Active\n {\n from: 'Active',\n to: 'Active',\n event: 'INIT',\n effects: [\n ['set', '@entity.activeTab', '@config.defaultTab'],\n ['render-ui', 'main', {\n type: 'filter-group',\n filterType: 'tabs',\n tabs: '@config.tabs',\n active: '@entity.activeTab',\n onSelect: 'SELECT_TAB',\n }],\n ],\n },\n {\n from: 'Active',\n to: 'Active',\n event: 'SELECT_TAB',\n effects: [\n ['set', '@entity.activeTab', '@payload.tabId'],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [\n { name: 'tabs', type: 'array', description: 'Tab definitions with id, label, content' },\n ],\n optional: [\n { name: 'defaultTab', type: 'string', description: 'Default active tab ID' },\n ],\n },\n};\n\n// ============================================================================\n// std/Wizard - Multi-Step Flow\n// IMPORTANT: Each step is a STATE, not an index number\n// ============================================================================\n\nexport const WIZARD_BEHAVIOR: StandardBehavior = {\n name: 'std/Wizard',\n category: 'ui-interaction',\n description: 'Multi-step wizard flow - each step is a state',\n suggestedFor: [\n 'Onboarding flows',\n 'Multi-step forms',\n 'Setup wizards',\n 'Checkout flows',\n ],\n\n dataEntities: [\n {\n name: 'WizardState',\n runtime: true,\n singleton: true,\n fields: [\n { name: 'stepData', type: 'object', default: {} },\n ],\n },\n ],\n\n // IMPORTANT: Each wizard step is a STATE, not a number index\n // This is the correct pattern for wizards\n stateMachine: {\n initial: 'Step1',\n states: [\n { name: 'Step1', isInitial: true },\n { name: 'Step2' },\n { name: 'Step3' },\n { name: 'Complete' },\n ],\n events: [\n { key: 'INIT' },\n { key: 'NEXT' },\n { key: 'PREV' },\n { key: 'COMPLETE' },\n ],\n transitions: [\n // INIT on Step1: Self-loop that renders step 1\n {\n from: 'Step1',\n to: 'Step1',\n event: 'INIT',\n effects: [\n ['render-ui', 'main', {\n type: 'wizard-progress',\n steps: ['Step 1', 'Step 2', 'Step 3'],\n current: 0,\n }],\n ['render-ui', 'main', {\n type: 'form-section',\n entity: '@config.entity',\n fields: '@config.step1Fields',\n submitEvent: 'NEXT',\n }],\n ],\n },\n // Step1 → Step2\n {\n from: 'Step1',\n to: 'Step2',\n event: 'NEXT',\n effects: [\n ['set', '@entity.stepData.step1', '@payload'],\n ['render-ui', 'main', {\n type: 'wizard-progress',\n steps: ['Step 1', 'Step 2', 'Step 3'],\n current: 1,\n }],\n ['render-ui', 'main', {\n type: 'form-section',\n entity: '@config.entity',\n fields: '@config.step2Fields',\n submitEvent: 'NEXT',\n cancelEvent: 'PREV',\n }],\n ],\n },\n // Step2 → Step1 (back)\n {\n from: 'Step2',\n to: 'Step1',\n event: 'PREV',\n effects: [\n ['emit', 'INIT'],\n ],\n },\n // Step2 → Step3\n {\n from: 'Step2',\n to: 'Step3',\n event: 'NEXT',\n effects: [\n ['set', '@entity.stepData.step2', '@payload'],\n ['render-ui', 'main', {\n type: 'wizard-progress',\n steps: ['Step 1', 'Step 2', 'Step 3'],\n current: 2,\n }],\n ['render-ui', 'main', {\n type: 'entity-detail',\n entity: '@config.entity',\n fieldNames: ['step1', 'step2'],\n title: 'Review',\n }],\n ['render-ui', 'main', {\n type: 'form-section',\n submitLabel: 'Complete',\n cancelLabel: 'Back',\n submitEvent: 'COMPLETE',\n cancelEvent: 'PREV',\n }],\n ],\n },\n // Step3 → Step2 (back)\n {\n from: 'Step3',\n to: 'Step2',\n event: 'PREV',\n effects: [\n ['render-ui', 'main', {\n type: 'wizard-progress',\n steps: ['Step 1', 'Step 2', 'Step 3'],\n current: 1,\n }],\n ['render-ui', 'main', {\n type: 'form-section',\n entity: '@config.entity',\n fields: '@config.step2Fields',\n submitEvent: 'NEXT',\n cancelEvent: 'PREV',\n }],\n ],\n },\n // Step3 → Complete\n {\n from: 'Step3',\n to: 'Complete',\n event: 'COMPLETE',\n effects: [\n ['persist', 'create', '@config.entity', '@entity.stepData'],\n ['notify', { type: 'success', message: 'Wizard completed!' }],\n ['navigate', '@config.completionUrl'],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [\n { name: 'entity', type: 'entity', description: 'Entity to create' },\n { name: 'step1Fields', type: 'array', description: 'Fields for step 1' },\n { name: 'step2Fields', type: 'array', description: 'Fields for step 2' },\n ],\n optional: [\n { name: 'completionUrl', type: 'string', description: 'URL to navigate on completion', default: '/' },\n ],\n },\n};\n\n// ============================================================================\n// std/MasterDetail - List + Detail Layout\n// ============================================================================\n\nexport const MASTER_DETAIL_BEHAVIOR: StandardBehavior = {\n name: 'std/MasterDetail',\n category: 'ui-interaction',\n description: 'Master-detail layout with synchronized list and detail views',\n suggestedFor: [\n 'Email clients',\n 'File managers',\n 'Two-panel layouts',\n 'List-detail views',\n ],\n\n dataEntities: [\n {\n name: 'MasterDetailState',\n runtime: true,\n singleton: true,\n fields: [\n { name: 'selectedId', type: 'string', default: null },\n ],\n },\n ],\n\n stateMachine: {\n initial: 'NoSelection',\n states: [\n { name: 'NoSelection', isInitial: true },\n { name: 'Selected' },\n ],\n events: [\n { key: 'INIT' },\n { key: 'SELECT' },\n { key: 'DESELECT' },\n ],\n transitions: [\n // INIT: Self-loop on NoSelection\n {\n from: 'NoSelection',\n to: 'NoSelection',\n event: 'INIT',\n effects: [\n ['render-ui', 'main', {\n type: 'master-detail',\n entity: '@config.entity',\n masterColumns: '@config.masterColumns',\n onSelect: 'SELECT',\n selected: '@entity.selectedId',\n }],\n ['render-ui', 'main', {\n type: 'empty-state',\n message: 'Select an item to view details',\n }],\n ],\n },\n {\n from: 'NoSelection',\n to: 'Selected',\n event: 'SELECT',\n effects: [\n ['set', '@entity.selectedId', '@payload.id'],\n ['render-ui', 'main', {\n type: 'entity-detail',\n entity: '@config.entity',\n id: '@payload.id',\n fieldNames: '@config.detailFields',\n }],\n ],\n },\n {\n from: 'Selected',\n to: 'Selected',\n event: 'SELECT',\n effects: [\n ['set', '@entity.selectedId', '@payload.id'],\n ['render-ui', 'main', {\n type: 'entity-detail',\n entity: '@config.entity',\n id: '@payload.id',\n fieldNames: '@config.detailFields',\n }],\n ],\n },\n {\n from: 'Selected',\n to: 'NoSelection',\n event: 'DESELECT',\n effects: [\n ['set', '@entity.selectedId', null],\n ['render-ui', 'main', {\n type: 'empty-state',\n message: 'Select an item to view details',\n }],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [\n { name: 'entity', type: 'entity', description: 'Entity type' },\n { name: 'masterColumns', type: 'array', description: 'Columns for master list' },\n { name: 'detailFields', type: 'array', description: 'Fields for detail panel' },\n ],\n optional: [\n { name: 'masterWidth', type: 'string', description: 'Master panel width', default: '350px' },\n ],\n },\n};\n\n// ============================================================================\n// std/Filter - Filter Management\n// ============================================================================\n\nexport const FILTER_BEHAVIOR: StandardBehavior = {\n name: 'std/Filter',\n category: 'ui-interaction',\n description: 'Filter and search management for lists',\n suggestedFor: [\n 'Filtered lists',\n 'Search interfaces',\n 'Faceted navigation',\n 'Advanced filtering',\n ],\n\n dataEntities: [\n {\n name: 'FilterState',\n runtime: true,\n singleton: true,\n fields: [\n { name: 'filters', type: 'object', default: {} },\n { name: 'searchTerm', type: 'string', default: '' },\n ],\n },\n ],\n\n stateMachine: {\n initial: 'Idle',\n states: [\n { name: 'Idle', isInitial: true },\n { name: 'Filtering' },\n ],\n events: [\n { key: 'INIT' },\n { key: 'SET_FILTER' },\n { key: 'CLEAR_FILTERS' },\n { key: 'SEARCH' },\n ],\n transitions: [\n // INIT: Self-loop\n {\n from: 'Idle',\n to: 'Idle',\n event: 'INIT',\n effects: [\n ['render-ui', 'main', {\n type: 'filter-group',\n filters: '@config.filters',\n values: '@entity.filters',\n onFilterChange: 'SET_FILTER',\n onClear: 'CLEAR_FILTERS',\n }],\n ],\n },\n {\n from: 'Idle',\n to: 'Filtering',\n event: 'SET_FILTER',\n effects: [\n ['set', '@entity.filters', ['object/set', '@entity.filters', '@payload.field', '@payload.value']],\n ['emit', 'FILTER_CHANGED', '@entity.filters'],\n ],\n },\n {\n from: 'Filtering',\n to: 'Idle',\n event: 'SET_FILTER',\n effects: [\n ['set', '@entity.filters', ['object/set', '@entity.filters', '@payload.field', '@payload.value']],\n ['emit', 'FILTER_CHANGED', '@entity.filters'],\n ],\n },\n {\n from: 'Filtering',\n to: 'Idle',\n event: 'CLEAR_FILTERS',\n effects: [\n ['set', '@entity.filters', {}],\n ['set', '@entity.searchTerm', ''],\n ['emit', 'FILTER_CHANGED', {}],\n ],\n },\n {\n from: 'Idle',\n to: 'Filtering',\n event: 'SEARCH',\n effects: [\n ['set', '@entity.searchTerm', '@payload.term'],\n ['emit', 'SEARCH_CHANGED', '@payload.term'],\n ],\n },\n ],\n },\n\n configSchema: {\n required: [\n { name: 'filters', type: 'array', description: 'Filter definitions' },\n ],\n optional: [\n { name: 'searchable', type: 'boolean', description: 'Enable search', default: true },\n ],\n },\n};\n\n// ============================================================================\n// Export All Behaviors\n// ============================================================================\n\nexport const UI_INTERACTION_BEHAVIORS: StandardBehavior[] = [\n LIST_BEHAVIOR,\n DETAIL_BEHAVIOR,\n FORM_BEHAVIOR,\n MODAL_BEHAVIOR,\n DRAWER_BEHAVIOR,\n TABS_BEHAVIOR,\n WIZARD_BEHAVIOR,\n MASTER_DETAIL_BEHAVIOR,\n FILTER_BEHAVIOR,\n];\n"]}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import { S as StdModule, a as StdOperatorMeta } from './types-I95R8_FN.js';
|
|
2
|
+
export { b as STD_MODULES, c as STD_OPERATOR_CATEGORIES, d as StdOperatorCategory, g as getFunctionFromOperator, e as getModuleFromOperator, i as isStdCategory, f as isStdOperator, m as makeStdOperator } from './types-I95R8_FN.js';
|
|
3
|
+
export { STD_OPERATORS, STD_OPERATORS_BY_MODULE, getAllStdOperators, getLambdaOperators, getModuleOperators, getOperatorMetaExtended, getStdEffectOperators, getStdLibStats, getStdOperatorMeta, getStdOperatorsByModule, getStdPureOperators, isEffectOperatorExtended, isKnownOperatorExtended, isKnownStdOperator, isStdEffectOperator, isStdGuardOperator, validateOperatorArityExtended, validateStdOperatorArity } from './registry.js';
|
|
4
|
+
export { MATH_OPERATORS } from './modules/math.js';
|
|
5
|
+
export { STR_OPERATORS } from './modules/str.js';
|
|
6
|
+
export { ARRAY_OPERATORS } from './modules/array.js';
|
|
7
|
+
export { OBJECT_OPERATORS } from './modules/object.js';
|
|
8
|
+
export { TIME_OPERATORS } from './modules/time.js';
|
|
9
|
+
export { VALIDATE_OPERATORS } from './modules/validate.js';
|
|
10
|
+
export { FORMAT_OPERATORS } from './modules/format.js';
|
|
11
|
+
export { ASYNC_OPERATORS } from './modules/async.js';
|
|
12
|
+
import { BehaviorCategory, StandardBehavior } from './behaviors/types.js';
|
|
13
|
+
export { BEHAVIOR_CATEGORIES, BehaviorConfig, BehaviorDataEntity, BehaviorEvent, BehaviorMetadata, BehaviorState, BehaviorStateMachine, BehaviorTick, BehaviorTransition, ConfigField, ItemAction, getBehaviorMetadata, isBehaviorCategory, isGameBehaviorCategory, validateBehaviorEvents, validateBehaviorStates, validateBehaviorStructure } from './behaviors/types.js';
|
|
14
|
+
export { ACTION_AFFINITY, ActionAffinity, ActionPlacement, UIEventInfo, UI_EVENTS, getAllKnownComponents, getComponentsByCategory, getComponentsForEvent, getInvalidActionsForComponent, getValidActionsForComponent, isActionInvalidForComponent, isActionValidForComponent, validateActionsForComponent } from './behaviors/action-affinity.js';
|
|
15
|
+
export { DETAIL_BEHAVIOR, DRAWER_BEHAVIOR, FORM_BEHAVIOR, LIST_BEHAVIOR, MASTER_DETAIL_BEHAVIOR, MODAL_BEHAVIOR, TABS_BEHAVIOR, UI_INTERACTION_BEHAVIORS, WIZARD_BEHAVIOR } from './behaviors/ui-interaction.js';
|
|
16
|
+
export { DATA_MANAGEMENT_BEHAVIORS, FILTER_BEHAVIOR, PAGINATION_BEHAVIOR, SEARCH_BEHAVIOR, SELECTION_BEHAVIOR, SORT_BEHAVIOR } from './behaviors/data-management.js';
|
|
17
|
+
export { ASYNC_BEHAVIORS, FETCH_BEHAVIOR, LOADING_BEHAVIOR, POLL_BEHAVIOR, RETRY_BEHAVIOR, SUBMIT_BEHAVIOR } from './behaviors/async.js';
|
|
18
|
+
export { CONFIRMATION_BEHAVIOR, FEEDBACK_BEHAVIORS, NOTIFICATION_BEHAVIOR, UNDO_BEHAVIOR } from './behaviors/feedback.js';
|
|
19
|
+
export { BEHAVIORS_BY_CATEGORY, BEHAVIOR_REGISTRY, STANDARD_BEHAVIORS, findBehaviorsForUseCase, getAllBehaviorMetadata, getAllBehaviorNames, getAllBehaviors, getBehavior, getBehaviorLibraryStats, getBehaviorsByCategory, getBehaviorsForEvent, getBehaviorsWithState, isKnownBehavior, validateBehaviorReference } from './behaviors/registry.js';
|
|
20
|
+
import '@almadar/core/types';
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Standard Library Documentation Generator
|
|
24
|
+
*
|
|
25
|
+
* Generates documentation data from the std library source.
|
|
26
|
+
* Parses modules and behaviors to produce structured JSON for docs.
|
|
27
|
+
*
|
|
28
|
+
* @packageDocumentation
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Human-friendly module descriptions
|
|
33
|
+
*/
|
|
34
|
+
declare const MODULE_DESCRIPTIONS: Record<StdModule, ModuleInfo>;
|
|
35
|
+
/**
|
|
36
|
+
* Human-friendly behavior category descriptions
|
|
37
|
+
*/
|
|
38
|
+
declare const BEHAVIOR_CATEGORY_DESCRIPTIONS: Partial<Record<BehaviorCategory, CategoryInfo>>;
|
|
39
|
+
interface ModuleInfo {
|
|
40
|
+
name: string;
|
|
41
|
+
displayName: string;
|
|
42
|
+
description: string;
|
|
43
|
+
icon: string;
|
|
44
|
+
}
|
|
45
|
+
interface CategoryInfo {
|
|
46
|
+
name: string;
|
|
47
|
+
description: string;
|
|
48
|
+
icon: string;
|
|
49
|
+
}
|
|
50
|
+
interface OperatorDoc {
|
|
51
|
+
name: string;
|
|
52
|
+
shortName: string;
|
|
53
|
+
displayName: string;
|
|
54
|
+
description: string;
|
|
55
|
+
params: Array<{
|
|
56
|
+
name: string;
|
|
57
|
+
type: string;
|
|
58
|
+
description: string;
|
|
59
|
+
optional?: boolean;
|
|
60
|
+
defaultValue?: unknown;
|
|
61
|
+
}>;
|
|
62
|
+
example: string;
|
|
63
|
+
returnType: string;
|
|
64
|
+
returnTypeHuman: string;
|
|
65
|
+
arityHuman: string;
|
|
66
|
+
minArity: number;
|
|
67
|
+
maxArity: number | null;
|
|
68
|
+
hasSideEffects: boolean;
|
|
69
|
+
acceptsLambda: boolean;
|
|
70
|
+
pureFunction: boolean;
|
|
71
|
+
}
|
|
72
|
+
interface ModuleDoc {
|
|
73
|
+
id: StdModule;
|
|
74
|
+
name: string;
|
|
75
|
+
displayName: string;
|
|
76
|
+
description: string;
|
|
77
|
+
icon: string;
|
|
78
|
+
operators: OperatorDoc[];
|
|
79
|
+
operatorCount: number;
|
|
80
|
+
}
|
|
81
|
+
interface BehaviorTransitionDoc {
|
|
82
|
+
from: string | string[] | '*';
|
|
83
|
+
to?: string;
|
|
84
|
+
event: string;
|
|
85
|
+
guard?: unknown;
|
|
86
|
+
effects?: unknown[];
|
|
87
|
+
}
|
|
88
|
+
interface BehaviorStateMachineDoc {
|
|
89
|
+
states: Array<{
|
|
90
|
+
name: string;
|
|
91
|
+
isInitial?: boolean;
|
|
92
|
+
isFinal?: boolean;
|
|
93
|
+
}>;
|
|
94
|
+
transitions: BehaviorTransitionDoc[];
|
|
95
|
+
}
|
|
96
|
+
interface BehaviorDoc {
|
|
97
|
+
name: string;
|
|
98
|
+
shortName: string;
|
|
99
|
+
description: string;
|
|
100
|
+
suggestedFor: string[];
|
|
101
|
+
states: string[];
|
|
102
|
+
statesCount: number;
|
|
103
|
+
initial: string;
|
|
104
|
+
events: string[];
|
|
105
|
+
eventsCount: number;
|
|
106
|
+
hasFields: boolean;
|
|
107
|
+
hasComputed: boolean;
|
|
108
|
+
hasTicks: boolean;
|
|
109
|
+
ticksCount: number;
|
|
110
|
+
transitionsCount: number;
|
|
111
|
+
/** Full state machine data for visualizer */
|
|
112
|
+
stateMachine?: BehaviorStateMachineDoc;
|
|
113
|
+
/** Full behavior source code for display */
|
|
114
|
+
sourceCode?: string;
|
|
115
|
+
/** Data entities (runtime state) */
|
|
116
|
+
dataEntities?: Array<{
|
|
117
|
+
name: string;
|
|
118
|
+
fields: Array<{
|
|
119
|
+
name: string;
|
|
120
|
+
type: string;
|
|
121
|
+
default?: unknown;
|
|
122
|
+
}>;
|
|
123
|
+
}>;
|
|
124
|
+
/** Ticks (frame-by-frame execution) */
|
|
125
|
+
ticks?: Array<{
|
|
126
|
+
name: string;
|
|
127
|
+
interval: string | number;
|
|
128
|
+
description?: string;
|
|
129
|
+
}>;
|
|
130
|
+
}
|
|
131
|
+
interface CategoryDoc {
|
|
132
|
+
id: string;
|
|
133
|
+
name: string;
|
|
134
|
+
description: string;
|
|
135
|
+
icon: string;
|
|
136
|
+
behaviors: BehaviorDoc[];
|
|
137
|
+
behaviorCount: number;
|
|
138
|
+
}
|
|
139
|
+
interface DocsStats {
|
|
140
|
+
totalModules: number;
|
|
141
|
+
totalOperators: number;
|
|
142
|
+
totalBehaviorCategories: number;
|
|
143
|
+
totalBehaviors: number;
|
|
144
|
+
generatedAt: string;
|
|
145
|
+
}
|
|
146
|
+
interface StdLibDocs {
|
|
147
|
+
modules: ModuleDoc[];
|
|
148
|
+
stats: DocsStats;
|
|
149
|
+
}
|
|
150
|
+
interface BehaviorsDocs {
|
|
151
|
+
categories: CategoryDoc[];
|
|
152
|
+
stats: DocsStats;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Transform operator name to human-friendly format
|
|
156
|
+
* e.g., "math/clamp" -> "Clamp Value"
|
|
157
|
+
*/
|
|
158
|
+
declare function humanizeOperatorName(operatorName: string): string;
|
|
159
|
+
/**
|
|
160
|
+
* Transform return type to human-friendly format
|
|
161
|
+
*/
|
|
162
|
+
declare function humanizeReturnType(returnType: string | undefined): string;
|
|
163
|
+
/**
|
|
164
|
+
* Format arity as human-readable text
|
|
165
|
+
*/
|
|
166
|
+
declare function formatArity(minArity: number, maxArity: number | null): string;
|
|
167
|
+
/**
|
|
168
|
+
* Generate documentation for a single operator
|
|
169
|
+
*/
|
|
170
|
+
declare function generateOperatorDoc(opName: string, meta: StdOperatorMeta): OperatorDoc;
|
|
171
|
+
/**
|
|
172
|
+
* Generate documentation for a single module
|
|
173
|
+
*/
|
|
174
|
+
declare function generateModuleDoc(moduleId: StdModule): ModuleDoc | null;
|
|
175
|
+
/**
|
|
176
|
+
* Generate documentation for a single behavior
|
|
177
|
+
*/
|
|
178
|
+
declare function generateBehaviorDoc(behavior: StandardBehavior): BehaviorDoc;
|
|
179
|
+
/**
|
|
180
|
+
* Generate documentation for all std library modules
|
|
181
|
+
*/
|
|
182
|
+
declare function generateModulesDocs(): StdLibDocs;
|
|
183
|
+
/**
|
|
184
|
+
* Generate documentation for all standard behaviors
|
|
185
|
+
*/
|
|
186
|
+
declare function generateBehaviorsDocs(): BehaviorsDocs;
|
|
187
|
+
/**
|
|
188
|
+
* Generate complete standard library documentation
|
|
189
|
+
*/
|
|
190
|
+
declare function generateStdLibDocs(): {
|
|
191
|
+
modules: StdLibDocs;
|
|
192
|
+
behaviors: BehaviorsDocs;
|
|
193
|
+
};
|
|
194
|
+
|
|
195
|
+
export { BEHAVIOR_CATEGORY_DESCRIPTIONS, BehaviorCategory, type BehaviorDoc, type BehaviorsDocs, type CategoryDoc, type CategoryInfo, type DocsStats, MODULE_DESCRIPTIONS, type ModuleDoc, type ModuleInfo, type OperatorDoc, StandardBehavior, type StdLibDocs, StdModule, StdOperatorMeta, formatArity, generateBehaviorDoc, generateBehaviorsDocs, generateModuleDoc, generateModulesDocs, generateOperatorDoc, generateStdLibDocs, humanizeOperatorName, humanizeReturnType };
|