@salsita-ai/sdk 0.50.0-develop.b47f1774a2 → 0.50.0-develop.b5d443db78
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/README.md +8 -2
- package/dist/admin/AdminShell.js +1 -1
- package/dist/admin/common/admin-interface.d.ts +1 -1
- package/dist/admin/legacy-admin/Application.js +1 -1
- package/dist/application-spec/caching/index.d.ts +6 -1
- package/dist/application-spec/caching/index.js +1 -1
- package/dist/application-spec/core/enhanced-json-value.d.ts +2 -31
- package/dist/application-spec/core/enhanced-json-value.js +1 -1
- package/dist/application-spec/core/index.d.ts +1 -3
- package/dist/application-spec/core/index.js +1 -1
- package/dist/application-spec/core/json-schema.d.ts +2 -52
- package/dist/application-spec/core/markers/index.d.ts +1 -1
- package/dist/application-spec/core/markers/index.js +1 -1
- package/dist/application-spec/core/markers/msg-marker.d.ts +2 -28
- package/dist/application-spec/core/markers/msg-marker.js +1 -1
- package/dist/application-spec/core/markers/raw-eval-write-marker.d.ts +1 -1
- package/dist/application-spec/core/markers/raw-eval-write-marker.js +1 -1
- package/dist/application-spec/core/markers/raw-read-write-marker.js +1 -1
- package/dist/application-spec/errors/diagnostic-codes.d.ts +9 -1
- package/dist/application-spec/errors/diagnostic-codes.js +1 -1
- package/dist/application-spec/errors/diagnostic-messages.d.ts +16 -1
- package/dist/application-spec/errors/diagnostic-messages.js +1 -1
- package/dist/application-spec/generate-application/code/domain-runtime-files.d.ts +0 -19
- package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
- package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
- package/dist/application-spec/generate-application/code/templates/domain-spec/generate-locale.js +1 -1
- package/dist/application-spec/generate-application/code/templates/gitignore.js +2 -1
- package/dist/application-spec/generate-application/code/templates/index.d.ts +2 -6
- package/dist/application-spec/generate-application/code/templates/index.js +1 -1
- package/dist/application-spec/generate-application/code/templates/lingui-rc.js +5 -4
- package/dist/application-spec/generate-application/code/templates/skills/core/cli.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/core/cli.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/core/index.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/core/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/core/sdk.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/core/sdk.js +118 -0
- package/dist/application-spec/generate-application/code/templates/skills/core/workflow.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/core/workflow.js +44 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/application-states.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/application-states.js +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/navigation.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/navigation.js +48 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/presets.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/presets.js +38 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/selection.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/selection.js +35 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/views-and-tools.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/application-states/views-and-tools.js +61 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/custom-layout.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/custom-layout.js +7 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/finalization-actions.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/finalization-actions.js +79 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/messages.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/messages.js +52 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/pages.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/pages.js +49 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/scene-and-safe-area.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/scene-and-safe-area.js +62 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/slots.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/slots.js +40 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/tabs-and-steps.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/tabs-and-steps.js +65 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/toolbar-actions.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/toolbar-actions.js +58 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/view-mode.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/custom-layout/view-mode.js +41 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/control-components.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/control-components.js +24 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/control-hooks.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/control-hooks.js +44 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/custom-controls.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/custom-controls.js +74 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/domain-controls.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/domain-controls.js +8 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/scene-controls.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-controls/scene-controls.js +48 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/actions.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/actions.js +64 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/components.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/components.js +62 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/domain-model.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/domain-model.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/entities-and-relations.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/entities-and-relations.js +59 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/expressions.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/expressions.js +46 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/transformers.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/transformers.js +43 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/validation-and-repair.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/domain-model/validation-and-repair.js +30 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/features.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/features.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/inspection.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/inspection.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/localization.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/localization.js +87 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/scene-objects.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/scene-objects.js +43 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/slices.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/slices.js +48 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/state.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/state.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/updates.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/updates.js +39 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/violations.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/state/violations.js +36 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/variants.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/variants.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/webhooks.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/features/webhooks.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/guide.d.ts +68 -0
- package/dist/application-spec/generate-application/code/templates/skills/guide.js +18 -0
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.d.ts +10 -0
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.js +14 -0
- package/dist/application-spec/generate-application/code/templates/skills/phx-members-without-guide.d.ts +9 -0
- package/dist/application-spec/generate-application/code/templates/skills/phx-members-without-guide.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/asset-conversion.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/asset-conversion.js +23 -0
- package/dist/application-spec/generate-application/code/templates/skills/{phoenix-skill.d.ts → processes/beta.d.ts} +2 -1
- package/dist/application-spec/generate-application/code/templates/skills/processes/beta.js +4 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/evaluate.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/evaluate.js +38 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/feedback.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/feedback.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/report.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/report.js +7 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/send.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/feedback/send.js +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/finalization.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/finalization.js +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/build.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/build.js +25 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/direction.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/direction.js +35 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/first-draft.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/first-draft.js +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/handoff.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/handoff.js +9 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/first-draft/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/index.d.ts +8 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/model-migration.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/model-migration.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/appearance.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/appearance.js +46 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/code.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/code.js +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/hand-over.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/hand-over.js +6 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/review.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/review.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/visual-inspection.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/review/visual-inspection.js +13 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/branding.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/branding.js +20 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/catalog.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/catalog.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/product-definition.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/product-definition.js +22 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/specification.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/specification.js +1 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/ux-guidelines.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/skills/processes/specification/ux-guidelines.js +25 -0
- package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +51 -258
- package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +3 -58
- package/dist/application-spec/generate-application/code/templates/skills/sdk-subpath-imports.d.ts +9 -0
- package/dist/application-spec/generate-application/code/templates/skills/sdk-subpath-imports.js +1 -0
- package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +1 -1
- package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -1
- package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -4
- package/dist/application-spec/generate-application/code/templates/tsconfig.js +2 -1
- package/dist/application-spec/generate-application/index.d.ts +1 -8
- package/dist/application-spec/generate-application/index.js +1 -1
- package/dist/application-spec/parse-application-files/merge/merged-assistant.d.ts +13 -4
- package/dist/application-spec/parse-application-files/merge/merged-assistant.js +1 -1
- package/dist/application-spec/parse-application-files/merge/merged-infra.d.ts +4 -11
- package/dist/application-spec/parse-application-files/merge/merged-transformers.d.ts +2 -4
- package/dist/application-spec/parse-application-files/parse-application-files.js +1 -1
- package/dist/application-spec/parse-application-files/raw-spec/raw-acl.d.ts +2 -2
- package/dist/application-spec/parse-application-files/raw-spec/raw-acl.js +1 -1
- package/dist/application-spec/parse-application-files/raw-spec/raw-admin-pages.d.ts +3 -24
- package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +25 -20
- package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
- package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.d.ts +1 -1
- package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.js +1 -1
- package/dist/application-spec/parse-application-files/raw-spec/raw-resources.d.ts +19 -64
- package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-pages.d.ts +3 -20
- package/dist/application-spec/parse-application-files/spec/application/admin-spec/states.d.ts +3 -5
- package/dist/application-spec/parse-application-files/spec/application/configurator-spec/states.d.ts +3 -8
- package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding.d.ts +3 -13
- package/dist/application-spec/parse-application-files/spec/components/bindings/write-binding.d.ts +4 -32
- package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +4 -10
- package/dist/application-spec/parse-application-files/spec/components/components.d.ts +3 -4
- package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -2
- package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
- package/dist/application-spec/parse-application-files/spec/components/sdk-component-entry.d.ts +1 -1
- package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +2 -3
- package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
- package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +2 -3
- package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +2 -2
- package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -29
- package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
- package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.d.ts +4 -71
- package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
- package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +2 -2
- package/dist/application-spec/parse-application-files/spec/invariants/invariant.d.ts +5 -21
- package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +4 -14
- package/dist/application-spec/parse-application-files/spec/model/aliases.d.ts +3 -9
- package/dist/application-spec/parse-application-files/spec/model/common-types.d.ts +6 -14
- package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +6 -31
- package/dist/application-spec/parse-application-files/spec/model/entity-types.d.ts +3 -8
- package/dist/application-spec/parse-application-files/spec/model/model-version-key.d.ts +3 -3
- package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +3 -7
- package/dist/application-spec/parse-application-files/spec/model/names/alias-name.d.ts +3 -7
- package/dist/application-spec/parse-application-files/spec/model/names/entity-or-alias-name.d.ts +3 -8
- package/dist/application-spec/parse-application-files/spec/model/names/entity-type-name.d.ts +3 -8
- package/dist/application-spec/parse-application-files/spec/model/names/expression-name.d.ts +3 -6
- package/dist/application-spec/parse-application-files/spec/model/names/instance-name.d.ts +3 -7
- package/dist/application-spec/parse-application-files/spec/model/names/invariant-name.d.ts +3 -3
- package/dist/application-spec/parse-application-files/spec/model/names/shape-property-name.d.ts +3 -11
- package/dist/application-spec/parse-application-files/spec/model/names/violation-type-name.d.ts +3 -3
- package/dist/application-spec/parse-application-files/spec/model/presets.d.ts +6 -29
- package/dist/application-spec/parse-application-files/spec/sections/actions.d.ts +6 -23
- package/dist/application-spec/parse-application-files/spec/sections/app-metadata.d.ts +3 -18
- package/dist/application-spec/parse-application-files/spec/sections/application-version.d.ts +3 -7
- package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
- package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.js +1 -1
- package/dist/application-spec/parse-application-files/spec/sections/data-spec/chunks.d.ts +6 -23
- package/dist/application-spec/parse-application-files/spec/sections/data-spec/custom-data-spec.d.ts +1 -16
- package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-entry-key.d.ts +3 -9
- package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-spec.d.ts +1 -10
- package/dist/application-spec/parse-application-files/spec/sections/data-spec/swatch-data-spec.d.ts +1 -14
- package/dist/application-spec/parse-application-files/spec/sections/state-value.d.ts +3 -7
- package/dist/application-spec/parse-application-files/spec/sections/theme.d.ts +3 -10
- package/dist/application-spec/parse-application-files/spec/sections/transformers.d.ts +4 -11
- package/dist/application-spec/parse-application-files/spec/sections/ui.d.ts +3 -12
- package/dist/client/authorized-client.d.ts +4 -2
- package/dist/client/authorized-client.js +1 -1
- package/dist/client/contract.d.ts +46 -5
- package/dist/client/contract.js +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/local-authorized-client.d.ts +3 -1
- package/dist/client/local-authorized-client.js +1 -1
- package/dist/client/memory-authorized-client.d.ts +4 -1
- package/dist/client/memory-authorized-client.js +1 -1
- package/dist/client/phoenix-api.d.ts +281 -4
- package/dist/configurator/ConfiguratorApp.js +1 -1
- package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-annotation.d.ts +31 -0
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +142 -24
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +21 -4
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +43 -0
- package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +70 -56
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +38 -11
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.d.ts +40 -0
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.js +1 -0
- package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/capture-next-frame.d.ts +10 -0
- package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/capture-next-frame.js +1 -0
- package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +8 -0
- package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/index.d.ts +3 -2
- package/dist/configurator/application-runtime/extensions/systems/index.js +1 -1
- package/dist/configurator/common/configurator-interface.d.ts +14 -4
- package/dist/configurator/common/configurator-interface.js +1 -1
- package/dist/configurator/configurator-context/configurator-hooks/index.d.ts +0 -1
- package/dist/configurator/configurator-context/configurator-hooks/index.js +1 -1
- package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.js +1 -1
- package/dist/configurator/configurator-context/index.d.ts +0 -5
- package/dist/configurator/configurator-context/index.js +1 -1
- package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
- package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
- package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
- package/dist/configurator/pages/default-configurator-elements.d.ts +6 -2
- package/dist/configurator/pages/default-configurator-elements.js +1 -1
- package/dist/configurator/pages/error-boundaries/BuiltInGeneralErrorFallback.d.ts +5 -0
- package/dist/configurator/pages/error-boundaries/BuiltInGeneralErrorFallback.js +1 -0
- package/dist/configurator/pages/error-boundaries/DevContextFallback.js +1 -1
- package/dist/configurator/pages/error-boundaries/DevLoadingFallback.js +1 -1
- package/dist/configurator/pages/error-boundaries/index.d.ts +1 -0
- package/dist/configurator/pages/error-boundaries/index.js +1 -1
- package/dist/configurator/pages/provider-slots/ContainerSlotProvider.d.ts +3 -0
- package/dist/configurator/pages/provider-slots/ContainerSlotProvider.js +1 -0
- package/dist/configurator/pages/provider-slots/LoaderSlotProvider.d.ts +3 -0
- package/dist/configurator/pages/provider-slots/LoaderSlotProvider.js +1 -0
- package/dist/configurator/pages/provider-slots/MessageHostSlotProvider.d.ts +3 -0
- package/dist/configurator/pages/provider-slots/MessageHostSlotProvider.js +1 -0
- package/dist/configurator/pages/provider-slots/SceneResourcesSlotProvider.d.ts +3 -0
- package/dist/configurator/pages/provider-slots/SceneResourcesSlotProvider.js +1 -0
- package/dist/configurator/pages/provider-slots/ThemeSlotProvider.d.ts +3 -0
- package/dist/configurator/pages/provider-slots/ThemeSlotProvider.js +1 -0
- package/dist/configurator/pages/provider-slots/configurator-provider-slot-elements.d.ts +3 -0
- package/dist/configurator/pages/provider-slots/configurator-provider-slot-elements.js +1 -0
- package/dist/configurator/pages/provider-slots/index.d.ts +6 -0
- package/dist/configurator/pages/provider-slots/index.js +1 -0
- package/dist/configurator/pages/ui-elements/BuiltInInvalidDeploymentReload.d.ts +2 -0
- package/dist/configurator/pages/ui-elements/BuiltInInvalidDeploymentReload.js +1 -0
- package/dist/configurator/pages/ui-elements/configurator-ui-elements.d.ts +3 -0
- package/dist/configurator/pages/ui-elements/configurator-ui-elements.js +1 -0
- package/dist/configurator/pages/ui-elements/index.d.ts +2 -0
- package/dist/configurator/pages/ui-elements/index.js +1 -0
- package/dist/configurator/scene/cameras/CameraPadding.js +1 -1
- package/dist/configurator/ui/assistant/AssistantChips.d.ts +10 -0
- package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
- package/dist/configurator/ui/assistant/AssistantComposer.d.ts +4 -0
- package/dist/configurator/ui/assistant/AssistantComposer.js +1 -1
- package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
- package/dist/configurator/ui/assistant/AssistantThread.d.ts +4 -3
- package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
- package/dist/configurator/ui/assistant/AssistantThreadItemView.d.ts +27 -0
- package/dist/configurator/ui/assistant/AssistantThreadItemView.js +1 -0
- package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +4 -1
- package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -1
- package/dist/configurator/ui/assistant/annotation/AnnotationBadge.d.ts +9 -0
- package/dist/configurator/ui/assistant/annotation/AnnotationBadge.js +1 -0
- package/dist/configurator/ui/assistant/annotation/AnnotationOverlay.d.ts +6 -0
- package/dist/configurator/ui/assistant/annotation/AnnotationOverlay.js +1 -0
- package/dist/configurator/ui/assistant/annotation/AnnotationPin.d.ts +14 -0
- package/dist/configurator/ui/assistant/annotation/AnnotationPin.js +1 -0
- package/dist/configurator/ui/assistant/annotation/AnnotationViewer.d.ts +12 -0
- package/dist/configurator/ui/assistant/annotation/AnnotationViewer.js +1 -0
- package/dist/configurator/ui/assistant/annotation/MessageAnnotations.d.ts +11 -0
- package/dist/configurator/ui/assistant/annotation/MessageAnnotations.js +1 -0
- package/dist/configurator/ui/assistant/annotation/annotation-host-context.d.ts +5 -0
- package/dist/configurator/ui/assistant/annotation/annotation-host-context.js +1 -0
- package/dist/configurator/ui/assistant/annotation/annotation-layout.d.ts +26 -0
- package/dist/configurator/ui/assistant/annotation/annotation-layout.js +1 -0
- package/dist/configurator/ui/assistant/annotation/editor/AnnotationComment.d.ts +15 -0
- package/dist/configurator/ui/assistant/annotation/editor/AnnotationComment.js +1 -0
- package/dist/configurator/ui/assistant/annotation/editor/AnnotationEditor.d.ts +18 -0
- package/dist/configurator/ui/assistant/annotation/editor/AnnotationEditor.js +1 -0
- package/dist/configurator/ui/assistant/annotation/editor/annotation-drawing.d.ts +22 -0
- package/dist/configurator/ui/assistant/annotation/editor/annotation-drawing.js +1 -0
- package/dist/configurator/ui/assistant/annotation/editor/annotation-pins.d.ts +22 -0
- package/dist/configurator/ui/assistant/annotation/editor/annotation-pins.js +1 -0
- package/dist/configurator/ui/assistant/annotation/editor/flatten-annotation.d.ts +17 -0
- package/dist/configurator/ui/assistant/annotation/editor/flatten-annotation.js +1 -0
- package/dist/configurator/ui/assistant/annotation/editor/index.d.ts +1 -0
- package/dist/configurator/ui/assistant/annotation/editor/index.js +1 -0
- package/dist/configurator/ui/assistant/annotation/index.d.ts +4 -0
- package/dist/configurator/ui/assistant/annotation/index.js +1 -0
- package/dist/configurator/ui/assistant/annotation/prefers-reduced-motion.d.ts +2 -0
- package/dist/configurator/ui/assistant/annotation/prefers-reduced-motion.js +1 -0
- package/dist/configurator/ui/assistant/annotation/use-end-on-unmount.d.ts +6 -0
- package/dist/configurator/ui/assistant/annotation/use-end-on-unmount.js +1 -0
- package/dist/configurator/ui/assistant/assistant-failure.d.ts +17 -7
- package/dist/configurator/ui/assistant/assistant-failure.js +1 -1
- package/dist/configurator/ui/assistant/attachments/MessageImages.d.ts +19 -0
- package/dist/configurator/ui/assistant/attachments/MessageImages.js +1 -0
- package/dist/configurator/ui/assistant/attachments/index.d.ts +2 -0
- package/dist/configurator/ui/assistant/attachments/index.js +1 -0
- package/dist/configurator/ui/assistant/attachments/prepare-image.d.ts +24 -0
- package/dist/configurator/ui/assistant/attachments/prepare-image.js +1 -0
- package/dist/configurator/ui/assistant/composer/composer-frame.d.ts +15 -0
- package/dist/configurator/ui/assistant/composer/composer-frame.js +1 -0
- package/dist/configurator/ui/assistant/composer/index.d.ts +1 -0
- package/dist/configurator/ui/assistant/composer/index.js +1 -0
- package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -1
- package/dist/configurator/ui/assistant/entity-link/index.d.ts +1 -1
- package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -1
- package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +26 -0
- package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -1
- package/dist/configurator/ui/assistant/index.d.ts +10 -0
- package/dist/configurator/ui/assistant/index.js +1 -1
- package/dist/configurator/ui/assistant/popover/AssistantPopover.d.ts +24 -0
- package/dist/configurator/ui/assistant/popover/AssistantPopover.js +1 -0
- package/dist/configurator/ui/assistant/popover/index.d.ts +1 -0
- package/dist/configurator/ui/assistant/popover/index.js +1 -0
- package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -1
- package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -1
- package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +1 -1
- package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -1
- package/dist/configurator/ui/assistant/screenshots/index.d.ts +1 -0
- package/dist/configurator/ui/assistant/screenshots/index.js +1 -1
- package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +6 -4
- package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -1
- package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.d.ts +8 -0
- package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.js +1 -0
- package/dist/configurator/ui/assistant/streamed-markdown.d.ts +11 -0
- package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
- package/dist/configurator/ui/assistant/thread-items.d.ts +5 -0
- package/dist/configurator/ui/assistant/thread-items.js +1 -1
- package/dist/configurator/ui/assistant/tool-chip.d.ts +19 -9
- package/dist/configurator/ui/assistant/tool-chip.js +1 -1
- package/dist/configurator/ui/assistant/use-assistant-composer.d.ts +69 -0
- package/dist/configurator/ui/assistant/use-assistant-composer.js +2 -0
- package/dist/configurator/ui/assistant/use-assistant-thread.d.ts +52 -0
- package/dist/configurator/ui/assistant/use-assistant-thread.js +1 -0
- package/dist/configurator/ui/assistant/use-load-older-on-top.d.ts +22 -0
- package/dist/configurator/ui/assistant/use-load-older-on-top.js +1 -0
- package/dist/configurator/ui/configurator-layout/slots/canvas/GPUAccelerationDisabled.js +1 -1
- package/dist/configurator/ui/configurator-layout/slots/canvas/WebGLNotSupported.js +1 -1
- package/dist/configurator/ui/configurator-layout/slots/readonly-banner/CloneToEditDialog.js +1 -1
- package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
- package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
- package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
- package/dist/configurator/ui/index.d.ts +1 -1
- package/dist/configurator/ui/index.js +1 -1
- package/dist/configurator/ui/legacy/chat/MobileChat.js +1 -1
- package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
- package/dist/configurator/ui/legacy/layout/simple/SimpleSidebar.js +1 -1
- package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
- package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
- package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
- package/dist/configurator/ui/legacy/layout/steps/StepsSideBar.js +1 -1
- package/dist/configurator/ui/legacy/layout/tabs/TabsSidebar.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/use-basic-sidebar-footer.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
- package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
- package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -1
- package/dist/docs/3d-scene/animations-basic.mdx +0 -4
- package/dist/docs/3d-scene/camera-based-hiding.mdx +0 -2
- package/dist/docs/3d-scene/cameras/custom.mdx +4 -4
- package/dist/docs/3d-scene/cameras/fit-during-drag.mdx +0 -4
- package/dist/docs/3d-scene/cameras/locks.mdx +0 -4
- package/dist/docs/3d-scene/cameras/transitions.mdx +0 -2
- package/dist/docs/3d-scene/engraving.mdx +0 -4
- package/dist/docs/3d-scene/materials/custom.mdx +1 -2
- package/dist/docs/3d-scene/materials/inherit.mdx +0 -4
- package/dist/docs/3d-scene/materials/multilevel.mdx +0 -47
- package/dist/docs/3d-scene/materials/override.mdx +0 -4
- package/dist/docs/3d-scene/materials/simple.mdx +0 -4
- package/dist/docs/3d-scene/materials/transformer.mdx +0 -4
- package/dist/docs/3d-scene/materials/transition.mdx +0 -4
- package/dist/docs/3d-scene/materials/transmissive.mdx +0 -4
- package/dist/docs/3d-scene/postprocessing.mdx +0 -2
- package/dist/docs/3d-scene/rendering/basic.mdx +5 -9
- package/dist/docs/3d-scene/rendering/custom-entity.mdx +0 -6
- package/dist/docs/3d-scene/rendering/lights/ambient-light.mdx +0 -2
- package/dist/docs/3d-scene/rendering/lights/directional-light.mdx +0 -2
- package/dist/docs/3d-scene/rendering/lights/point-light.mdx +0 -2
- package/dist/docs/3d-scene/rendering/lights/rect-area-light.mdx +0 -2
- package/dist/docs/3d-scene/rendering/lights/spot-light.mdx +0 -2
- package/dist/docs/3d-scene/rendering/object-groups.mdx +0 -2
- package/dist/docs/3d-scene/rendering/objects.mdx +0 -4
- package/dist/docs/3d-scene/rendering/scene-entity-object.mdx +0 -43
- package/dist/docs/3d-scene/rendering/smma.mdx +0 -2
- package/dist/docs/3d-scene/rendering/soft-shadows.mdx +0 -2
- package/dist/docs/3d-scene/rendering/transformer.mdx +1 -3
- package/dist/docs/complex-use-cases/custom-ui-on-root-level.mdx +0 -1
- package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +19 -19
- package/dist/docs/complex-use-cases/navigation-guard.mdx +81 -19
- package/dist/docs/complex-use-cases/navigation-reset-selection.mdx +28 -65
- package/dist/docs/complex-use-cases/navigation-reset-undo.mdx +16 -20
- package/dist/docs/complex-use-cases/sketching.mdx +2 -10
- package/dist/docs/controls/custom.mdx +88 -87
- package/dist/docs/controls/manage-child-entities/entitychildrenlist.mdx +0 -4
- package/dist/docs/controls/nullable-attributes.mdx +0 -2
- package/dist/docs/controls/scene/custom-controls.mdx +7 -8
- package/dist/docs/controls/scene/html-hotspots.mdx +0 -4
- package/dist/docs/controls/scene/object-html-hotspots.mdx +0 -4
- package/dist/docs/controls/select-attribute/cardselect.mdx +0 -4
- package/dist/docs/controls/select-attribute/listselect.mdx +0 -4
- package/dist/docs/controls/select-attribute/select.mdx +0 -4
- package/dist/docs/controls/select-attribute/swatchselect.mdx +0 -4
- package/dist/docs/controls/select-attribute/switchselect.mdx +0 -4
- package/dist/docs/controls/select-attribute/toggleselect.mdx +0 -4
- package/dist/docs/controls/select-child-entity/cardselect.mdx +2 -6
- package/dist/docs/controls/select-child-entity/listselect.mdx +5 -11
- package/dist/docs/controls/select-child-entity/toggleselect.mdx +4 -10
- package/dist/docs/controls/text-input.mdx +90 -19
- package/dist/docs/demos/glass.mdx +0 -4
- package/dist/docs/demos/heater.mdx +0 -10
- package/dist/docs/demos/office-chair.mdx +0 -8
- package/dist/docs/demos/office-desk.mdx +0 -8
- package/dist/docs/demos/ring.mdx +0 -9
- package/dist/docs/dimensions/3d-scene-integration/angle-indicators.mdx +0 -2
- package/dist/docs/dimensions/3d-scene-integration/editable-angle-indicator.mdx +0 -2
- package/dist/docs/dimensions/3d-scene-integration/editable-distance-dimension-indicator.mdx +0 -14
- package/dist/docs/dimensions/3d-scene-integration/editable-offset-indicator.mdx +0 -6
- package/dist/docs/dimensions/3d-scene-integration/editable-size-indicator.mdx +0 -4
- package/dist/docs/dimensions/3d-scene-integration/list-selector-dimension-indicator.mdx +0 -16
- package/dist/docs/dimensions/3d-scene-integration/offset-indicator.mdx +0 -6
- package/dist/docs/dimensions/3d-scene-integration/overlap-offset-demo.mdx +0 -6
- package/dist/docs/dimensions/basic-concepts/dimension-data-unit.mdx +0 -12
- package/dist/docs/dimensions/basic-concepts/dimension-unit-config.mdx +0 -12
- package/dist/docs/dimensions/input-controls/distance-input.mdx +0 -12
- package/dist/docs/dimensions/input-controls/distance-slider.mdx +6 -18
- package/dist/docs/dimensions/selection-controls/list-selector.mdx +0 -14
- package/dist/docs/dimensions/selection-controls/toggle-selector.mdx +0 -14
- package/dist/docs/drag-and-drop/drag-handle.mdx +0 -1
- package/dist/docs/drag-and-drop/hotspot-handle.mdx +0 -1
- package/dist/docs/drag-and-drop/no-selection.mdx +0 -1
- package/dist/docs/drag-and-drop/planes.mdx +0 -3
- package/dist/docs/drag-and-drop/room-planner.mdx +1 -7
- package/dist/docs/drag-and-drop/rotatable.mdx +0 -1
- package/dist/docs/drag-and-drop/snapping/auto-rotation-demo.mdx +0 -2
- package/dist/docs/drag-and-drop/snapping/label-matching-demo.mdx +0 -2
- package/dist/docs/drag-and-drop/snapping/multi-snap-composition-demo.mdx +0 -2
- package/dist/docs/drag-and-drop/snapping/nested-entity-demo.mdx +0 -2
- package/dist/docs/drag-and-drop/snapping/priority-demo.mdx +0 -2
- package/dist/docs/drag-and-drop/snapping/snap-axis-demo.mdx +0 -2
- package/dist/docs/drag-and-drop/snapping/snap-edge-demo.mdx +0 -2
- package/dist/docs/drag-and-drop/snapping/snap-plane-demo.mdx +0 -5
- package/dist/docs/drag-and-drop/snapping/snap-point-demo.mdx +0 -2
- package/dist/docs/drag-and-drop/spatial-constraints/collision-system.mdx +0 -2
- package/dist/docs/drag-and-drop/spatial-constraints/disjoint-and-within.mdx +0 -6
- package/dist/docs/drag-and-drop/spatial-constraints/geometry-override.mdx +0 -4
- package/dist/docs/drag-and-drop/spatial-constraints/multiple-collision-meshes.mdx +0 -4
- package/dist/docs/drag-and-drop/spatial-constraints/touches.mdx +0 -4
- package/dist/docs/drag-and-drop/swap.mdx +0 -4
- package/dist/docs/fabs/basic.mdx +6 -12
- package/dist/docs/fabs/layout.mdx +0 -7
- package/dist/docs/index.json +4 -4
- package/dist/docs/integrations/lifecycle-providers.mdx +0 -12
- package/dist/docs/integrations/onloadprovider.mdx +0 -3
- package/dist/docs/integrations/webcomponent-api/basics.mdx +6 -2
- package/dist/docs/integrations/webcomponent-api/preset-tags.mdx +4 -1
- package/dist/docs/layouts/custom-layout.mdx +1 -41
- package/dist/docs/layouts/custom-price.mdx +0 -2
- package/dist/docs/layouts/custom-theme-handler.mdx +0 -4
- package/dist/docs/layouts/gallery/ardent-compressor.mdx +3 -34
- package/dist/docs/layouts/gallery/corvid-drone.mdx +0 -29
- package/dist/docs/layouts/gallery/fenwick-window.mdx +0 -25
- package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +0 -27
- package/dist/docs/layouts/gallery/kestrel-kettle.mdx +0 -29
- package/dist/docs/layouts/gallery/nightjar-guitar.mdx +2 -35
- package/dist/docs/layouts/gallery/sunfold-solar.mdx +0 -26
- package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +0 -46
- package/dist/docs/layouts/header/custom.mdx +0 -2
- package/dist/docs/layouts/icon-sets.mdx +0 -6
- package/dist/docs/layouts/phoenix-elements.mdx +0 -4
- package/dist/docs/layouts/phoenix-handlers.mdx +19 -28
- package/dist/docs/layouts/presets/action-and-overlay.mdx +0 -8
- package/dist/docs/layouts/presets/custom.mdx +6 -13
- package/dist/docs/layouts/preview/always-expand.mdx +4 -14
- package/dist/docs/layouts/preview/always.mdx +4 -14
- package/dist/docs/layouts/preview/auto-presets.mdx +4 -14
- package/dist/docs/layouts/preview/auto.mdx +4 -14
- package/dist/docs/layouts/preview/never.mdx +4 -14
- package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +18 -13
- package/dist/docs/layouts/sidebar/property-page-stack.mdx +0 -2
- package/dist/docs/layouts/sidebar/property-page.mdx +0 -2
- package/dist/docs/layouts/sidebar/tabs.mdx +0 -4
- package/dist/docs/layouts/sidebar-footer/custom.mdx +0 -2
- package/dist/docs/layouts/sidebar-footer/universal.mdx +0 -10
- package/dist/docs/layouts/tool-controls.mdx +0 -1
- package/dist/docs/layouts/toolbar.mdx +0 -4
- package/dist/docs/layouts/universal.mdx +2 -22
- package/dist/docs/other-features/client-side-rendering/camera-padding.mdx +0 -2
- package/dist/docs/other-features/client-side-rendering/custom.mdx +0 -6
- package/dist/docs/other-features/client-side-rendering/declarative.mdx +0 -4
- package/dist/docs/other-features/client-side-rendering/postprocessing.mdx +0 -6
- package/dist/docs/other-features/component-filters.mdx +0 -7
- package/dist/docs/other-features/currency.mdx +5 -6
- package/dist/docs/other-features/domain-actions.mdx +0 -5
- package/dist/docs/other-features/dynamic-component-attachments.mdx +75 -46
- package/dist/docs/other-features/error-5xx.mdx +0 -14
- package/dist/docs/other-features/navigation-hotspot.mdx +0 -5
- package/dist/docs/other-features/not-found-404.mdx +0 -14
- package/dist/docs/other-features/projected-entities.mdx +0 -5
- package/dist/docs/other-features/side-effects.mdx +0 -23
- package/dist/docs/other-features/transformers.mdx +101 -96
- package/dist/docs/other-features/violation-messages.mdx +0 -4
- package/dist/docs/other-features/violation-severity.mdx +2 -3
- package/dist/docs/performance/clone-highlight.mdx +0 -7
- package/dist/docs/performance/dynamic-components.mdx +0 -6
- package/dist/docs/performance/editable-dimension-stress-test.mdx +0 -2
- package/dist/docs/performance/fast-highlight.mdx +0 -7
- package/dist/docs/performance/general.mdx +0 -7
- package/dist/docs/performance/render-isolation.mdx +0 -6
- package/dist/docs/phoenix/admin.mdx +75 -100
- package/dist/docs/phoenix/application-states.mdx +45 -27
- package/dist/docs/phoenix/components.mdx +53 -46
- package/dist/docs/phoenix/configurator-interface.mdx +208 -117
- package/dist/docs/phoenix/deployments.mdx +11 -1
- package/dist/docs/phoenix/domain-model.mdx +24 -16
- package/dist/docs/phoenix/expression-context.mdx +3 -29
- package/dist/docs/phoenix/getting-started.mdx +0 -2
- package/dist/docs/phoenix/layout-slots.mdx +21 -0
- package/dist/docs/phoenix/localization.mdx +64 -54
- package/dist/docs/phoenix/migration-guide.mdx +10 -11
- package/dist/docs/phoenix/phoenix-cli.mdx +57 -15
- package/dist/docs/phoenix/project-structure.mdx +52 -55
- package/dist/docs/phoenix/quickstart.mdx +1 -3
- package/dist/docs/phoenix/sdk-builder-workflow.mdx +3 -9
- package/dist/docs/phoenix/state-management.mdx +18 -16
- package/dist/docs/phoenix/testing.mdx +6 -1
- package/dist/docs/phoenix/webhooks.mdx +9 -1
- package/dist/docs/recipes-and-delete/delete-entity.mdx +3 -6
- package/dist/docs/recipes-and-delete/dynamic-root-entity.mdx +0 -2
- package/dist/docs/recipes-and-delete/grouped-button.mdx +0 -3
- package/dist/docs/recipes-and-delete/grouped-panel.mdx +0 -3
- package/dist/docs/recipes-and-delete/horizontal.mdx +3 -6
- package/dist/docs/recipes-and-delete/recipe-hierarchy-lists.mdx +0 -3
- package/dist/docs/recipes-and-delete/recipe-hierarchy-selection.mdx +0 -5
- package/dist/docs/recipes-and-delete/replace-dropdown.mdx +3 -6
- package/dist/docs/recipes-and-delete/replace-panel.mdx +0 -7
- package/dist/docs/recipes-and-delete/simple.mdx +3 -6
- package/dist/docs/recipes-and-delete/vertical.mdx +3 -6
- package/dist/docs/relations/aliases.mdx +0 -2
- package/dist/docs/relations/all-of-type.mdx +0 -4
- package/dist/docs/relations/child-nullable.mdx +0 -4
- package/dist/docs/relations/child-required.mdx +0 -2
- package/dist/docs/relations/collection-direct.mdx +0 -4
- package/dist/docs/relations/collection-indirect.mdx +0 -4
- package/dist/docs/relations/collection-multiple.mdx +0 -2
- package/dist/docs/relations/cross-reference.mdx +0 -2
- package/dist/docs/relations/hierarchy.mdx +0 -2
- package/dist/docs/selection-and-highlight/canvas.mdx +0 -1
- package/dist/docs/selection-and-highlight/disable-highlight-per-object.mdx +0 -1
- package/dist/docs/selection-and-highlight/disable-highlight.mdx +0 -1
- package/dist/docs/selection-and-highlight/effects/outline.mdx +0 -3
- package/dist/docs/selection-and-highlight/effects/overlay.mdx +0 -3
- package/dist/docs/selection-and-highlight/fast-emissive-highlight.mdx +0 -3
- package/dist/docs/selection-and-highlight/group-highlighting.mdx +0 -1
- package/dist/docs/selection-and-highlight/hierarchy.mdx +100 -151
- package/dist/docs/selection-and-highlight/hotspots.mdx +0 -1
- package/dist/domain/application/GetApplicationWrapperHandler.d.ts +1 -1
- package/dist/domain/application/GetThemeHandler.d.ts +1 -1
- package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
- package/dist/domain/application/application-config.d.ts +6 -26
- package/dist/domain/application/assistant/assistant-fields.d.ts +1 -1
- package/dist/domain/application/assistant/assistant-value-type.d.ts +1 -1
- package/dist/domain/application/assistant/build-assistant-lenses.d.ts +1 -2
- package/dist/domain/application/assistant/build-assistant-lenses.js +1 -1
- package/dist/domain/application/assistant/build-assistant-manifest.d.ts +1 -2
- package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
- package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +1 -2
- package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
- package/dist/domain/application/assistant/index.d.ts +0 -4
- package/dist/domain/application/assistant/index.js +1 -1
- package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +1 -1
- package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +1 -1
- package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -1
- package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +3 -5
- package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -1
- package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +1 -2
- package/dist/domain/application/assistant-field-options.d.ts +1 -1
- package/dist/domain/application/assistant-mutations.d.ts +1 -1
- package/dist/domain/application/assistant-mutations.js +1 -1
- package/dist/domain/application/assistant-recipe-groups.d.ts +1 -1
- package/dist/domain/application/configurator-builder.d.ts +1 -2
- package/dist/domain/application/create-initial-published-data.d.ts +2 -1
- package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
- package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
- package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
- package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
- package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
- package/dist/domain/available-system-components/available-system-components.d.ts +11 -0
- package/dist/domain/available-system-components/available-system-components.js +1 -0
- package/dist/domain/available-system-components/index.d.ts +1 -0
- package/dist/domain/available-system-components/index.js +1 -0
- package/dist/domain/core/domain.js +1 -1
- package/dist/domain/core/invariant/violation.d.ts +3 -2
- package/dist/domain/{domain-builder.d.ts → domain-builder/domain-builder.d.ts} +2 -2
- package/dist/domain/domain-builder/domain-builder.js +1 -0
- package/dist/domain/domain-builder/index.d.ts +1 -0
- package/dist/domain/domain-builder/index.js +1 -0
- package/dist/domain/domain-context/transformers/context.d.ts +4 -2
- package/dist/domain/domain-context/transformers/when-builder.d.ts +2 -1
- package/dist/domain/domain-runtime/domain-runtime.d.ts +24 -24
- package/dist/domain/domain-runtime/index.d.ts +0 -1
- package/dist/domain/domain-runtime/index.js +1 -1
- package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +1 -1
- package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -1
- package/dist/domain/domain-runtime/spec/index.d.ts +1 -1
- package/dist/domain/domain-runtime/spec/index.js +1 -1
- package/dist/domain/domain-runtime/spec/initialize.js +1 -1
- package/dist/domain/domain-runtime/spec/{module-checks/resolve-imported-transformers.d.ts → resolve-imported-transformers.d.ts} +3 -3
- package/dist/domain/domain-runtime/spec/resolve-imported-transformers.js +1 -0
- package/dist/domain/domain-runtime/spec/selectors.d.ts +5 -5
- package/dist/domain/domain-runtime/spec/types.d.ts +2 -2
- package/dist/domain/extensions/export-images/agent-screenshot.d.ts +6 -0
- package/dist/domain/extensions/export-images/agent-screenshot.js +1 -1
- package/dist/domain/extensions/export-images/index.d.ts +1 -1
- package/dist/domain/extensions/export-images/index.js +1 -1
- package/dist/domain/extensions/index.d.ts +1 -1
- package/dist/domain/extensions/index.js +1 -1
- package/dist/domain/extensions/scene-entity-delete-fab.d.ts +1 -1
- package/dist/domain/extensions/scene-entity-delete-fab.js +1 -1
- package/dist/domain/index.d.ts +15 -2
- package/dist/domain/index.js +1 -1
- package/dist/domain/mocks/create-test-application-config.d.ts +1 -1
- package/dist/domain/spec/application/admin-pages-section.d.ts +29 -0
- package/dist/domain/spec/application/admin-pages.d.ts +26 -0
- package/dist/domain/spec/application/admin-states.d.ts +5 -0
- package/dist/domain/spec/application/configurator-states.d.ts +8 -0
- package/dist/domain/spec/application/index.d.ts +5 -0
- package/dist/domain/spec/application/index.js +1 -0
- package/dist/domain/spec/components/bindings/index.d.ts +2 -0
- package/dist/domain/spec/components/bindings/index.js +1 -0
- package/dist/domain/spec/components/bindings/read-binding.d.ts +13 -0
- package/dist/domain/spec/components/bindings/read-binding.js +1 -0
- package/dist/domain/spec/components/bindings/write-binding.d.ts +32 -0
- package/dist/domain/spec/components/bindings/write-binding.js +1 -0
- package/dist/{application-spec/parse-application-files → domain}/spec/components/component-entry.d.ts +3 -3
- package/dist/domain/spec/components/component-entry.js +1 -0
- package/dist/{application-spec/core → domain/spec}/components/component-filter.d.ts +3 -2
- package/dist/domain/spec/components/component-filters.d.ts +10 -0
- package/dist/domain/spec/components/component-filters.js +1 -0
- package/dist/domain/spec/components/components.d.ts +4 -0
- package/dist/domain/spec/components/components.js +1 -0
- package/dist/domain/spec/components/index.d.ts +6 -0
- package/dist/domain/spec/enhanced-json/enhanced-json-value.d.ts +30 -0
- package/dist/domain/spec/enhanced-json/enhanced-json-value.js +1 -0
- package/dist/domain/spec/enhanced-json/index.d.ts +1 -0
- package/dist/domain/spec/enhanced-json/index.js +1 -0
- package/dist/{application-spec/parse-application-files → domain}/spec/expressions/expression.d.ts +9 -3
- package/dist/domain/spec/expressions/expression.js +1 -0
- package/dist/domain/spec/expressions/expressions.d.ts +27 -0
- package/dist/domain/spec/expressions/expressions.js +1 -0
- package/dist/domain/spec/expressions/index.d.ts +5 -0
- package/dist/domain/spec/expressions/memo-eval-plan.d.ts +70 -0
- package/dist/domain/spec/expressions/memo-eval-plan.js +1 -0
- package/dist/domain/spec/expressions/relation-expression-params.js +1 -0
- package/dist/domain/spec/index.d.ts +4 -0
- package/dist/domain/spec/index.js +1 -0
- package/dist/domain/spec/invariants/index.d.ts +2 -0
- package/dist/domain/spec/invariants/index.js +1 -0
- package/dist/domain/spec/invariants/invariant.d.ts +24 -0
- package/dist/domain/spec/invariants/invariant.js +1 -0
- package/dist/domain/spec/invariants/invariants.d.ts +14 -0
- package/dist/domain/spec/invariants/invariants.js +1 -0
- package/dist/domain/spec/json-schema.d.ts +52 -0
- package/dist/domain/spec/json-schema.js +1 -0
- package/dist/domain/spec/markers/index.d.ts +3 -0
- package/dist/domain/spec/markers/index.js +1 -0
- package/dist/domain/spec/markers/msg-marker.d.ts +28 -0
- package/dist/domain/spec/markers/msg-marker.js +1 -0
- package/dist/domain/spec/model/aliases.d.ts +9 -0
- package/dist/domain/spec/model/aliases.js +1 -0
- package/dist/domain/spec/model/common-types.d.ts +15 -0
- package/dist/domain/spec/model/common-types.js +1 -0
- package/dist/domain/spec/model/defaults.d.ts +33 -0
- package/dist/domain/spec/model/defaults.js +1 -0
- package/dist/domain/spec/model/entity-types.d.ts +8 -0
- package/dist/domain/spec/model/entity-types.js +1 -0
- package/dist/domain/spec/model/index.d.ts +7 -0
- package/dist/domain/spec/model/index.js +1 -0
- package/dist/domain/spec/model/model-version-key.d.ts +3 -0
- package/dist/domain/spec/model/model-version-key.js +1 -0
- package/dist/domain/spec/model/names/action-name.d.ts +7 -0
- package/dist/domain/spec/model/names/action-name.js +1 -0
- package/dist/domain/spec/model/names/alias-name.d.ts +7 -0
- package/dist/domain/spec/model/names/alias-name.js +1 -0
- package/dist/domain/spec/model/names/entity-or-alias-name.d.ts +8 -0
- package/dist/domain/spec/model/names/entity-or-alias-name.js +1 -0
- package/dist/domain/spec/model/names/entity-type-name.d.ts +8 -0
- package/dist/domain/spec/model/names/entity-type-name.js +1 -0
- package/dist/domain/spec/model/names/expression-name.d.ts +6 -0
- package/dist/domain/spec/model/names/expression-name.js +1 -0
- package/dist/domain/spec/model/names/index.d.ts +9 -0
- package/dist/domain/spec/model/names/index.js +1 -0
- package/dist/domain/spec/model/names/instance-name.d.ts +7 -0
- package/dist/domain/spec/model/names/instance-name.js +1 -0
- package/dist/domain/spec/model/names/invariant-name.d.ts +3 -0
- package/dist/domain/spec/model/names/invariant-name.js +1 -0
- package/dist/domain/spec/model/names/shape-property-name.d.ts +11 -0
- package/dist/domain/spec/model/names/shape-property-name.js +1 -0
- package/dist/domain/spec/model/names/violation-type-name.d.ts +3 -0
- package/dist/domain/spec/model/names/violation-type-name.js +1 -0
- package/dist/domain/spec/model/presets.d.ts +30 -0
- package/dist/domain/spec/model/presets.js +1 -0
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/element-registration.d.ts +1 -1
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/find-assistant-form-element-errors.d.ts +1 -1
- package/dist/domain/spec/modules/find-assistant-form-element-errors.js +1 -0
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/index.d.ts +2 -3
- package/dist/domain/spec/modules/index.js +1 -0
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/merge-expression-modules.d.ts +2 -2
- package/dist/domain/spec/modules/merge-expression-modules.js +1 -0
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/project-modules.d.ts +1 -1
- package/dist/domain/spec/modules/project-modules.js +1 -0
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/resolve-action-modules.d.ts +1 -1
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/resolve-component-optic-modules.d.ts +1 -1
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/resolve-expression-modules.d.ts +1 -1
- package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/resolve-invariant-modules.d.ts +1 -1
- package/dist/domain/spec/phx/index.d.ts +1 -0
- package/dist/domain/spec/phx/index.js +1 -0
- package/dist/{application-spec/generate-application/implementations → domain/spec/phx}/phx-application-types.d.ts +1 -1
- package/dist/domain/spec/phx/phx-application-types.js +1 -0
- package/dist/domain/spec/phx/phx-domain.js +1 -0
- package/dist/{application-spec/generate-application/implementations → domain/spec/phx}/phx-model.d.ts +2 -2
- package/dist/domain/spec/phx/phx-model.js +1 -0
- package/dist/{application-spec/generate-application/implementations → domain/spec/phx}/phx.d.ts +1 -2
- package/dist/{application-spec/generate-application → domain/spec}/runtime/admin-runtime/admin-runtime.d.ts +7 -6
- package/dist/domain/spec/runtime/admin-runtime/admin-runtime.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/admin-runtime/admin-spec-runtime.d.ts +2 -2
- package/dist/domain/spec/runtime/admin-runtime/admin-spec-runtime.js +1 -0
- package/dist/domain/spec/runtime/admin-runtime/index.d.ts +2 -0
- package/dist/domain/spec/runtime/admin-runtime/index.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/admin-runtime/states-runtime.d.ts +1 -1
- package/dist/{application-spec/generate-application → domain/spec}/runtime/application-runtime.d.ts +8 -6
- package/dist/domain/spec/runtime/application-runtime.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/application-spec-slice.d.ts +3 -1
- package/dist/domain/spec/runtime/application-spec-slice.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/configurator-runtime/configurator-runtime.d.ts +8 -10
- package/dist/domain/spec/runtime/configurator-runtime/configurator-runtime.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/configurator-runtime/configurator-spec-runtime.d.ts +2 -2
- package/dist/domain/spec/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
- package/dist/domain/spec/runtime/configurator-runtime/index.d.ts +2 -0
- package/dist/domain/spec/runtime/configurator-runtime/index.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/configurator-runtime/states-runtime.d.ts +1 -1
- package/dist/{application-spec/generate-application → domain/spec}/runtime/create-application.d.ts +3 -2
- package/dist/domain/spec/runtime/create-application.js +1 -0
- package/dist/{application-spec/generate-application/runtime/sections → domain/spec/runtime/expressions}/expression-runtime.d.ts +5 -3
- package/dist/domain/spec/runtime/expressions/expression-runtime.js +1 -0
- package/dist/{application-spec/generate-application/runtime/sections → domain/spec/runtime/expressions}/generate-memo-eval-plan-runtime.d.ts +2 -2
- package/dist/domain/spec/runtime/expressions/generate-memo-eval-plan-runtime.js +1 -0
- package/dist/domain/spec/runtime/expressions/index.d.ts +3 -0
- package/dist/domain/spec/runtime/expressions/index.js +1 -0
- package/dist/{application-spec/generate-application/runtime/sections → domain/spec/runtime/expressions}/reflection-constants-runtime.d.ts +2 -1
- package/dist/{application-spec/generate-application → domain/spec}/runtime/factory-data/factory-data-runtime.d.ts +4 -3
- package/dist/{application-spec/generate-application → domain/spec}/runtime/factory-data/recipe-defaults.d.ts +1 -1
- package/dist/{application-spec/generate-application → domain/spec}/runtime/factory-data/recipe-defaults.js +1 -1
- package/dist/{application-spec/generate-application → domain/spec}/runtime/factory-data/static-violations.d.ts +2 -2
- package/dist/{application-spec/generate-application → domain/spec}/runtime/factory-data/static-violations.js +1 -1
- package/dist/{application-spec/generate-application → domain/spec}/runtime/generate-runtime-instance.d.ts +1 -1
- package/dist/domain/spec/runtime/generate-runtime-instance.js +1 -0
- package/dist/domain/spec/runtime/index.d.ts +13 -0
- package/dist/domain/spec/runtime/index.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/migrations/migration-runtime.d.ts +2 -2
- package/dist/domain/spec/runtime/migrations/migration-runtime.js +1 -0
- package/dist/{application-spec/generate-application/runtime/admin-runtime → domain/spec/runtime/model}/admin-model-runtime.d.ts +4 -3
- package/dist/domain/spec/runtime/model/admin-model-runtime.js +1 -0
- package/dist/{application-spec/generate-application/runtime/configurator-runtime → domain/spec/runtime/model}/configurator-model-runtime.d.ts +4 -3
- package/dist/domain/spec/runtime/model/configurator-model-runtime.js +1 -0
- package/dist/domain/spec/runtime/model/index.d.ts +2 -0
- package/dist/domain/spec/runtime/model/index.js +1 -0
- package/dist/domain/spec/runtime/optics/build-sdk-optic.d.ts +7 -0
- package/dist/domain/spec/runtime/optics/build-sdk-optic.js +1 -0
- package/dist/domain/spec/runtime/optics/build-user-bound-optic.d.ts +7 -0
- package/dist/domain/spec/runtime/optics/build-user-bound-optic.js +1 -0
- package/dist/domain/spec/runtime/optics/built-component-optic.d.ts +11 -0
- package/dist/domain/spec/runtime/optics/built-component-optic.js +1 -0
- package/dist/{application-spec/generate-application/runtime/sections → domain/spec/runtime/optics}/component-optic.d.ts +4 -14
- package/dist/domain/spec/runtime/optics/index.d.ts +2 -0
- package/dist/domain/spec/runtime/optics/index.js +1 -0
- package/dist/{application-spec/caching → domain/spec/runtime}/runtime-reference-store.d.ts +1 -5
- package/dist/domain/spec/runtime/runtime-reference-store.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/actions-runtime.d.ts +3 -3
- package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/assistant-runtime.d.ts +2 -2
- package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/data-runtime.d.ts +1 -1
- package/dist/domain/spec/runtime/sections/index.d.ts +6 -0
- package/dist/domain/spec/runtime/sections/index.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/preset-runtime.d.ts +4 -4
- package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/theme-runtime.d.ts +1 -1
- package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/transformers-runtime.d.ts +2 -2
- package/dist/{application-spec/generate-application → domain/spec}/runtime/spec-code/resolve-spec-code.d.ts +1 -1
- package/dist/domain/spec/runtime/spec-code/spec-code-module.js +1 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime/spec-runtime.d.ts +3 -3
- package/dist/domain/spec/runtime/spec-runtime.js +1 -0
- package/dist/domain/spec/runtime-spec/index.d.ts +4 -0
- package/dist/domain/spec/runtime-spec/index.js +1 -0
- package/dist/domain/spec/runtime-spec/runtime-spec.d.ts +174 -0
- package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/spec-code-id.d.ts +1 -1
- package/dist/domain/spec/sections/actions.d.ts +23 -0
- package/dist/domain/spec/sections/actions.js +1 -0
- package/dist/domain/spec/sections/app-metadata.d.ts +18 -0
- package/dist/domain/spec/sections/app-metadata.js +1 -0
- package/dist/domain/spec/sections/application-version.d.ts +7 -0
- package/dist/domain/spec/sections/application-version.js +1 -0
- package/dist/domain/{application → spec/sections}/assistant/assistant-manifest.d.ts +13 -3
- package/dist/domain/{application → spec/sections}/assistant/assistant-resolved-manifest.d.ts +5 -9
- package/dist/domain/spec/sections/assistant/assistant-resolved-manifest.js +1 -0
- package/dist/domain/spec/sections/assistant/index.d.ts +4 -0
- package/dist/domain/spec/sections/assistant/index.js +1 -0
- package/dist/domain/spec/sections/data-spec/chunks.d.ts +23 -0
- package/dist/domain/spec/sections/data-spec/chunks.js +1 -0
- package/dist/domain/spec/sections/data-spec/custom-data-spec-entry.d.ts +16 -0
- package/dist/domain/spec/sections/data-spec/custom-data-spec-entry.js +1 -0
- package/dist/domain/spec/sections/data-spec/data-entry-key.d.ts +9 -0
- package/dist/domain/spec/sections/data-spec/data-entry-key.js +1 -0
- package/dist/domain/spec/sections/data-spec/index.d.ts +5 -0
- package/dist/domain/spec/sections/data-spec/index.js +1 -0
- package/dist/domain/spec/sections/data-spec/parsed-data-spec-entries.d.ts +10 -0
- package/dist/domain/spec/sections/data-spec/parsed-data-spec-entries.js +1 -0
- package/dist/domain/spec/sections/data-spec/swatch-data-spec-entry.d.ts +14 -0
- package/dist/domain/spec/sections/data-spec/swatch-data-spec-entry.js +1 -0
- package/dist/domain/spec/sections/index.d.ts +10 -0
- package/dist/domain/spec/sections/index.js +1 -0
- package/dist/domain/spec/sections/infra/acl.d.ts +12 -0
- package/dist/domain/spec/sections/infra/acl.js +1 -0
- package/dist/domain/spec/sections/infra/index.d.ts +3 -0
- package/dist/domain/spec/sections/infra/index.js +1 -0
- package/dist/domain/spec/sections/infra/resource-entry.d.ts +46 -0
- package/dist/domain/spec/sections/infra/resource-entry.js +1 -0
- package/dist/domain/spec/sections/infra/resources-config.d.ts +10 -0
- package/dist/domain/spec/sections/infra/resources-config.js +1 -0
- package/dist/domain/spec/sections/state-value.d.ts +7 -0
- package/dist/domain/spec/sections/state-value.js +1 -0
- package/dist/domain/spec/sections/theme.d.ts +10 -0
- package/dist/domain/spec/sections/theme.js +1 -0
- package/dist/domain/spec/sections/transformers.d.ts +15 -0
- package/dist/domain/spec/sections/transformers.js +1 -0
- package/dist/domain/spec/sections/ui.d.ts +12 -0
- package/dist/domain/spec/sections/ui.js +1 -0
- package/dist/domain/system-components/phoenix-entity-elements/child-entity-card-selector.d.ts +2 -3
- package/dist/domain/system-components/phoenix-entity-elements/child-entity-list-selector.d.ts +2 -3
- package/dist/domain/system-components/phoenix-entity-elements/child-entity-toggle-selector.d.ts +2 -3
- package/dist/domain/system-definitions.js +1 -1
- package/dist/domain/utils/index.d.ts +2 -0
- package/dist/domain/utils/index.js +1 -0
- package/dist/editor/graphql/GraphQLPanel.js +1 -1
- package/dist/i18n/locales/cs/messages.js +1 -1
- package/dist/i18n/locales/da/messages.js +1 -1
- package/dist/i18n/locales/de/messages.js +1 -1
- package/dist/i18n/locales/de-AT/messages.js +1 -1
- package/dist/i18n/locales/en/messages.js +1 -1
- package/dist/i18n/locales/en-AU/messages.js +1 -1
- package/dist/i18n/locales/en-GB/messages.js +1 -1
- package/dist/i18n/locales/es/messages.js +1 -1
- package/dist/i18n/locales/fr/messages.js +1 -1
- package/dist/i18n/locales/hu/messages.js +1 -1
- package/dist/i18n/locales/it/messages.js +1 -1
- package/dist/i18n/locales/nl/messages.js +1 -1
- package/dist/i18n/locales/pl/messages.js +1 -1
- package/dist/i18n/locales/pt/messages.js +1 -1
- package/dist/i18n/locales/ro/messages.js +1 -1
- package/dist/i18n/locales/sk/messages.js +1 -1
- package/dist/i18n/locales/tr/messages.js +1 -1
- package/dist/i18n/merge-catalogs.d.ts +4 -1
- package/dist/i18n/merge-catalogs.js +1 -1
- package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
- package/dist/legacy/domain-cli/utils/cache.js +1 -1
- package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +4 -2
- package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/i18n-index.js +3 -3
- package/dist/legacy/phoenix-cli/services/webhook-service/transport.js +1 -1
- package/dist/legacy/phoenix-cli/services/webhook-service/tunnel.d.ts +1 -0
- package/dist/legacy/phoenix-cli/services/webhook-service/tunnel.js +1 -1
- package/dist/legacy/webhook-cli/lambda-local/index.js +1 -1
- package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
- package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +1 -0
- package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
- package/dist/phoenix/application-spec/generate-project-files.d.ts +1 -0
- package/dist/phoenix/application-spec/index.d.ts +2 -0
- package/dist/phoenix/application-spec/index.js +1 -1
- package/dist/phoenix/application-spec/project-files.d.ts +8 -2
- package/dist/phoenix/application-spec/project-files.js +1 -1
- package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +11 -0
- package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
- package/dist/phoenix/bin.js +1 -1
- package/dist/phoenix/cli.js +1 -1
- package/dist/phoenix/commands/activate-deployment.js +1 -1
- package/dist/phoenix/commands/build.js +1 -1
- package/dist/phoenix/commands/changelog.js +1 -1
- package/dist/phoenix/commands/check.js +1 -1
- package/dist/phoenix/commands/clean.js +1 -1
- package/dist/phoenix/commands/cleanup-environment.js +2 -2
- package/dist/phoenix/commands/create-environment.js +1 -1
- package/dist/phoenix/commands/data.js +1 -1
- package/dist/phoenix/commands/deploy.js +3 -3
- package/dist/phoenix/commands/deployment-build-envs-command.js +1 -1
- package/dist/phoenix/commands/dev.js +4 -5
- package/dist/phoenix/commands/docs.js +1 -1
- package/dist/phoenix/commands/finish-deployment-command.js +1 -1
- package/dist/phoenix/commands/fix.js +1 -1
- package/dist/phoenix/commands/index.d.ts +1 -1
- package/dist/phoenix/commands/index.js +1 -1
- package/dist/phoenix/commands/inspect-assets.js +1 -1
- package/dist/phoenix/commands/list-environments.js +1 -1
- package/dist/phoenix/commands/login.d.ts +4 -1
- package/dist/phoenix/commands/login.js +2 -2
- package/dist/phoenix/commands/prepare-deployment-command.js +2 -2
- package/dist/phoenix/commands/register-deployment.js +1 -1
- package/dist/phoenix/commands/scene.js +1 -1
- package/dist/phoenix/commands/screenshot.js +1 -1
- package/dist/phoenix/commands/state.js +1 -1
- package/dist/phoenix/commands/story-build.js +3 -3
- package/dist/phoenix/commands/story-create.js +1 -1
- package/dist/phoenix/commands/story-dev.js +2 -2
- package/dist/phoenix/commands/sync.js +1 -1
- package/dist/phoenix/commands/variants.js +1 -1
- package/dist/phoenix/editor-server/commands-router.js +1 -1
- package/dist/phoenix/editor-server/editor-server.d.ts +2 -13
- package/dist/phoenix/editor-server/editor-server.js +1 -1
- package/dist/phoenix/editor-server/spec-router.js +1 -1
- package/dist/phoenix/editor-server/trpc.d.ts +2 -12
- package/dist/phoenix/lingui/index.d.ts +1 -0
- package/dist/phoenix/lingui/index.js +1 -0
- package/dist/phoenix/lingui/lingui.d.ts +18 -0
- package/dist/phoenix/lingui/lingui.js +1 -0
- package/dist/phoenix/scripts/docs-utils.js +1 -1
- package/dist/phoenix/services/application-spec-project-watcher.d.ts +11 -6
- package/dist/phoenix/services/application-spec-project-watcher.js +2 -2
- package/dist/phoenix/services/cli-credentials.d.ts +3 -0
- package/dist/phoenix/services/cli-credentials.js +1 -1
- package/dist/phoenix/services/cli-exit.d.ts +5 -0
- package/dist/phoenix/services/cli-exit.js +1 -0
- package/dist/phoenix/services/deployment/deployment-preparation-service.d.ts +28 -0
- package/dist/phoenix/services/deployment/deployment-preparation-service.js +1 -0
- package/dist/phoenix/{commands → services/deployment}/generated-env-markers.d.ts +1 -0
- package/dist/phoenix/services/deployment/generated-env-markers.js +1 -0
- package/dist/phoenix/services/deployment/index.d.ts +2 -0
- package/dist/phoenix/services/deployment/index.js +1 -0
- package/dist/phoenix/services/index.d.ts +5 -1
- package/dist/phoenix/services/index.js +1 -1
- package/dist/phoenix/services/lingui-watcher.js +1 -1
- package/dist/phoenix/services/phoenix-store.d.ts +3 -0
- package/dist/phoenix/services/phoenix-store.js +1 -1
- package/dist/phoenix/services/prepare-development-environment.js +1 -1
- package/dist/phoenix/services/session/editor-server-handle.d.ts +5 -0
- package/dist/phoenix/services/session/editor-server-handle.js +1 -0
- package/dist/phoenix/services/session/index.d.ts +2 -0
- package/dist/phoenix/services/session/index.js +1 -0
- package/dist/phoenix/services/session/phoenix-application.d.ts +82 -0
- package/dist/phoenix/services/session/phoenix-application.js +2 -0
- package/dist/phoenix/services/source-archive.d.ts +2 -0
- package/dist/phoenix/services/source-archive.js +1 -1
- package/dist/phoenix/services/swc.d.ts +5 -4
- package/dist/phoenix/services/swc.js +2 -2
- package/dist/phoenix/services/telemetry/amplitude-telemetry-transport.d.ts +9 -0
- package/dist/phoenix/services/telemetry/amplitude-telemetry-transport.js +1 -0
- package/dist/phoenix/services/telemetry/index.d.ts +3 -0
- package/dist/phoenix/services/telemetry/index.js +1 -0
- package/dist/phoenix/services/telemetry/telemetry-client.d.ts +25 -0
- package/dist/phoenix/services/telemetry/telemetry-client.js +1 -0
- package/dist/phoenix/services/telemetry/telemetry-command.d.ts +2 -0
- package/dist/phoenix/services/telemetry/telemetry-command.js +1 -0
- package/dist/phoenix/services/telemetry/telemetry-event.d.ts +44 -0
- package/dist/phoenix/services/telemetry/telemetry-event.js +1 -0
- package/dist/phoenix/services/telemetry/telemetry-state.d.ts +25 -0
- package/dist/phoenix/services/telemetry/telemetry-state.js +2 -0
- package/dist/phoenix/services/vite-config.js +1 -1
- package/dist/phoenix/services/webhook-service/transport.js +1 -1
- package/dist/phoenix/services/webhook-service/tunnel.d.ts +1 -0
- package/dist/phoenix/services/webhook-service/tunnel.js +1 -1
- package/dist/react-sdk/application-runtime/domain-application-context/chat-system.d.ts +1 -1
- package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/ConfiguratorRoutingProvider.d.ts +1 -1
- package/dist/react-sdk/configurator-routing/ConfiguratorRoutingProvider.js +1 -0
- package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/OnGoToIndexHandler.d.ts +1 -2
- package/dist/react-sdk/configurator-routing/OnGoToIndexHandler.js +1 -0
- package/dist/react-sdk/configurator-routing/index.d.ts +3 -0
- package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/index.js +1 -1
- package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/use-power-routing-lifecycle.d.ts +2 -0
- package/dist/react-sdk/configurator-routing/use-power-routing-lifecycle.js +1 -0
- package/dist/react-sdk/configurator-ui-elements/ConfiguratorUiElementHost.d.ts +7 -0
- package/dist/react-sdk/configurator-ui-elements/ConfiguratorUiElementHost.js +1 -0
- package/dist/react-sdk/configurator-ui-elements/ErrorFallbackElement.d.ts +14 -0
- package/dist/react-sdk/configurator-ui-elements/ErrorFallbackElement.js +1 -0
- package/dist/react-sdk/configurator-ui-elements/ErrorFallbackPropsProvider.d.ts +18 -0
- package/dist/react-sdk/configurator-ui-elements/ErrorFallbackPropsProvider.js +1 -0
- package/dist/react-sdk/configurator-ui-elements/PlainErrorFallback.d.ts +5 -0
- package/dist/react-sdk/configurator-ui-elements/PlainErrorFallback.js +1 -0
- package/dist/react-sdk/configurator-ui-elements/configurator-ui-element.d.ts +17 -0
- package/dist/react-sdk/configurator-ui-elements/configurator-ui-element.js +1 -0
- package/dist/react-sdk/configurator-ui-elements/create-configurator-ui-element.d.ts +5 -0
- package/dist/react-sdk/configurator-ui-elements/create-configurator-ui-element.js +1 -0
- package/dist/react-sdk/configurator-ui-elements/index.d.ts +6 -0
- package/dist/react-sdk/configurator-ui-elements/index.js +1 -0
- package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
- package/dist/react-sdk/domain-application-context/ConfigurationPersistSystemFailureHandler.js +1 -1
- package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
- package/dist/react-sdk/domain-application-context/OnPresetLoadedHandler.js +1 -0
- package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
- package/dist/react-sdk/domain-application-context/chat-hooks.d.ts +4 -0
- package/dist/react-sdk/domain-application-context/chat-hooks.js +1 -0
- package/dist/react-sdk/domain-application-context/index.d.ts +2 -0
- package/dist/react-sdk/domain-application-context/index.js +1 -1
- package/dist/react-sdk/domain-context/common-hooks/use-state-validity.d.ts +6 -1
- package/dist/react-sdk/domain-context/common-hooks/use-state-validity.js +1 -1
- package/dist/react-sdk/domain-context/system-hooks/hover-hooks.d.ts +2 -2
- package/dist/react-sdk/domain-controls/ChildEntityCardSelector.d.ts +2 -3
- package/dist/react-sdk/domain-controls/ChildEntityListSelector.d.ts +2 -3
- package/dist/react-sdk/domain-controls/ChildEntityToggleSelector.d.ts +2 -3
- package/dist/react-sdk/domain-controls/hooks/use-cook-replace-recipes.d.ts +3 -3
- package/dist/react-sdk/elements/PhoenixEntityElement.js +1 -1
- package/dist/react-sdk/elements/PhoenixLayoutElement.js +1 -1
- package/dist/react-sdk/index.d.ts +7 -0
- package/dist/react-sdk/index.js +1 -1
- package/dist/react-sdk/integration/IntegrationSubscription.js +1 -0
- package/dist/react-sdk/integration/index.d.ts +1 -0
- package/dist/react-sdk/integration/index.js +1 -0
- package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.d.ts +8 -0
- package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.js +1 -0
- package/dist/react-sdk/lifecycle-providers/LifecycleProviders.js +1 -0
- package/dist/react-sdk/lifecycle-providers/index.d.ts +2 -0
- package/dist/react-sdk/lifecycle-providers/index.js +1 -0
- package/dist/react-sdk/notifications/index.d.ts +1 -0
- package/dist/react-sdk/notifications/index.js +1 -0
- package/dist/react-sdk/notifications/snackbar-action-button.d.ts +30 -0
- package/dist/react-sdk/notifications/snackbar-action-button.js +1 -0
- package/dist/react-sdk/preset-selection/PresetSelectionProvider.js +1 -0
- package/dist/react-sdk/preset-selection/index.d.ts +1 -0
- package/dist/react-sdk/preset-selection/index.js +1 -0
- package/dist/react-sdk/provider-slots/ConfiguratorProviderSlotHost.d.ts +11 -0
- package/dist/react-sdk/provider-slots/ConfiguratorProviderSlotHost.js +1 -0
- package/dist/react-sdk/provider-slots/configurator-provider-slot.d.ts +24 -0
- package/dist/react-sdk/provider-slots/configurator-provider-slot.js +1 -0
- package/dist/react-sdk/provider-slots/create-configurator-provider-slot.d.ts +5 -0
- package/dist/react-sdk/provider-slots/create-configurator-provider-slot.js +1 -0
- package/dist/react-sdk/provider-slots/index.d.ts +3 -0
- package/dist/react-sdk/provider-slots/index.js +1 -0
- package/dist/react-sdk/session/SessionServiceProvider.d.ts +5 -0
- package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
- package/dist/ui-sdk/components/numerical-input/InputField.d.ts +2 -0
- package/dist/ui-sdk/components/numerical-input/InputField.js +1 -1
- package/dist/ui-sdk/components/numerical-input/NumericalInput.d.ts +2 -2
- package/dist/ui-sdk/components/numerical-input/Slider.d.ts +3 -1
- package/dist/ui-sdk/components/numerical-input/Slider.js +1 -1
- package/dist/ui-sdk/components/snackbar/Snackbar.d.ts +24 -3
- package/dist/ui-sdk/components/snackbar/Snackbar.js +1 -1
- package/dist/ui-sdk/icons/__generated/ChatCircleText.d.ts +3 -0
- package/dist/ui-sdk/icons/__generated/ChatCircleText.js +1 -0
- package/dist/ui-sdk/icons/__generated/Paperclip.d.ts +3 -0
- package/dist/ui-sdk/icons/__generated/Paperclip.js +1 -0
- package/dist/ui-sdk/icons/__generated/PencilSimpleLine.d.ts +3 -0
- package/dist/ui-sdk/icons/__generated/PencilSimpleLine.js +1 -0
- package/dist/ui-sdk/icons/__generated/index.d.ts +6 -0
- package/dist/ui-sdk/icons/__generated/index.js +1 -1
- package/dist/ui-sdk/icons/icons-registry.js +1 -1
- package/dist/ui-sdk/theme/types.d.ts +1 -1
- package/dist/watch/glob-matcher.d.ts +4 -4
- package/dist/watch/glob-matcher.js +1 -1
- package/dist/watch/watch.d.ts +4 -4
- package/dist/watch/watch.js +1 -1
- package/package.json +3 -3
- package/schema/domain-spec.json +88 -4
- package/dist/application-spec/caching/runtime-reference-store.js +0 -1
- package/dist/application-spec/core/components/index.d.ts +0 -2
- package/dist/application-spec/core/expressions/index.d.ts +0 -2
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.d.ts +0 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +0 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.d.ts +0 -3
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +0 -166
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.d.ts +0 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +0 -54
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.d.ts +0 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +0 -115
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +0 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.d.ts +0 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +0 -6
- package/dist/application-spec/generate-application/implementations/phx-application-types.js +0 -1
- package/dist/application-spec/generate-application/implementations/phx-domain.js +0 -1
- package/dist/application-spec/generate-application/implementations/phx-model.js +0 -1
- package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/application-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/application-spec-slice.js +0 -1
- package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/create-application.js +0 -1
- package/dist/application-spec/generate-application/runtime/generate-runtime-instance.js +0 -1
- package/dist/application-spec/generate-application/runtime/index.d.ts +0 -8
- package/dist/application-spec/generate-application/runtime/index.js +0 -1
- package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +0 -8
- package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +0 -1
- package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +0 -8
- package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +0 -1
- package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime/sections/index.d.ts +0 -10
- package/dist/application-spec/generate-application/runtime/sections/index.js +0 -1
- package/dist/application-spec/generate-application/runtime/spec-runtime.js +0 -1
- package/dist/application-spec/generate-application/runtime-spec/index.d.ts +0 -5
- package/dist/application-spec/generate-application/runtime-spec/index.js +0 -1
- package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +0 -103
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/browser-details.d.ts +0 -17
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/browser-details.js +0 -1
- package/dist/configurator/configurator-context/ConfiguratorDataProvider.d.ts +0 -2
- package/dist/configurator/configurator-context/ConfiguratorDataProvider.js +0 -1
- package/dist/configurator/configurator-context/IntegrationSubscription.js +0 -1
- package/dist/configurator/configurator-context/LifecycleProviders.js +0 -1
- package/dist/configurator/configurator-context/OnPresetLoadedHandler.js +0 -1
- package/dist/configurator/configurator-context/PresetSelectionProvider.js +0 -1
- package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.d.ts +0 -1
- package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.js +0 -1
- package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +0 -1
- package/dist/configurator/configurator-context/configurator-routing/OnGoToIndexHandler.js +0 -1
- package/dist/configurator/configurator-context/configurator-routing/index.d.ts +0 -2
- package/dist/configurator/configurator-context/configurator-routing/use-power-routing-lifecycle.js +0 -1
- package/dist/domain/available-system-components.d.ts +0 -11
- package/dist/domain/available-system-components.js +0 -1
- package/dist/domain/domain-builder.js +0 -1
- package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +0 -1
- package/dist/domain/domain-runtime/spec/module-checks/index.js +0 -1
- package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +0 -1
- package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +0 -1
- package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +0 -1
- package/dist/phoenix/commands/generated-env-markers.js +0 -1
- package/dist/phoenix/services/lingui.d.ts +0 -15
- package/dist/phoenix/services/lingui.js +0 -1
- package/dist/phoenix/services/phoenix-application.d.ts +0 -21
- package/dist/phoenix/services/phoenix-application.js +0 -1
- /package/dist/{application-spec/core/expressions/relation-expression-params.js → configurator/application-runtime/extensions/systems/assistant-system/assistant-annotation.js} +0 -0
- /package/dist/configurator/{configurator-context → pages/provider-slots}/ConfiguratorResponsiveProvider.d.ts +0 -0
- /package/dist/configurator/{configurator-context → pages/provider-slots}/ConfiguratorResponsiveProvider.js +0 -0
- /package/dist/{application-spec/generate-application/runtime/spec-code/spec-code-module.js → domain/spec/application/admin-pages-section.js} +0 -0
- /package/dist/{application-spec/parse-application-files/spec/components/component-entry.js → domain/spec/application/admin-pages.js} +0 -0
- /package/dist/{application-spec/parse-application-files/spec/expressions/expression.js → domain/spec/application/admin-states.js} +0 -0
- /package/dist/{application-spec/core → domain/spec/application}/application-instance.d.ts +0 -0
- /package/dist/{application-spec/core → domain/spec/application}/application-instance.js +0 -0
- /package/dist/domain/{application/assistant/assistant-manifest.js → spec/application/configurator-states.js} +0 -0
- /package/dist/{application-spec/core → domain/spec}/components/component-filter.js +0 -0
- /package/dist/{application-spec/core → domain/spec}/components/index.js +0 -0
- /package/dist/{application-spec/core → domain/spec}/components/sdk-code-ref.d.ts +0 -0
- /package/dist/{application-spec/core → domain/spec}/components/sdk-code-ref.js +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/implementation-error-collector.d.ts +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/implementation-error-collector.js +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/implementation-error.d.ts +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/implementation-error.js +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/implementation-errors.d.ts +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/implementation-errors.js +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/index.d.ts +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/index.js +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/to-implementation-errors.d.ts +0 -0
- /package/dist/domain/{domain-runtime → spec}/errors/to-implementation-errors.js +0 -0
- /package/dist/{application-spec/core → domain/spec}/expressions/index.js +0 -0
- /package/dist/{application-spec/core → domain/spec}/expressions/relation-expression-params.d.ts +0 -0
- /package/dist/{application-spec/core → domain/spec}/expressions/sdk-expression-implementation.d.ts +0 -0
- /package/dist/{application-spec/core → domain/spec}/expressions/sdk-expression-implementation.js +0 -0
- /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.d.ts +0 -0
- /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.js +0 -0
- /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.d.ts +0 -0
- /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.js +0 -0
- /package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/element-registration.js +0 -0
- /package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/handler-registration.d.ts +0 -0
- /package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/handler-registration.js +0 -0
- /package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/resolve-action-modules.js +0 -0
- /package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/resolve-component-optic-modules.js +0 -0
- /package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/resolve-expression-modules.js +0 -0
- /package/dist/domain/{domain-runtime/spec/module-checks → spec/modules}/resolve-invariant-modules.js +0 -0
- /package/dist/{application-spec/generate-application/implementations → domain/spec/phx}/phx-domain.d.ts +0 -0
- /package/dist/{application-spec/generate-application/implementations → domain/spec/phx}/phx.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/admin-runtime/states-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/configurator-runtime/states-runtime.js +0 -0
- /package/dist/{application-spec/generate-application/runtime/sections → domain/spec/runtime/expressions}/reflection-constants-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/factory-data/factory-data-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/factory-data/index.d.ts +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/factory-data/index.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/migrations/index.d.ts +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/migrations/index.js +0 -0
- /package/dist/{application-spec/generate-application/runtime/sections → domain/spec/runtime/optics}/component-optic.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/actions-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/assistant-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/data-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/preset-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/theme-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/sections/transformers-runtime.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/spec-code/index.d.ts +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/spec-code/index.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/spec-code/resolve-spec-code.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime/spec-code/spec-code-module.d.ts +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/decode-runtime-spec.d.ts +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/decode-runtime-spec.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/encode-runtime-spec.d.ts +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/encode-runtime-spec.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/encoded-runtime-spec.d.ts +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/encoded-runtime-spec.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/runtime-spec.js +0 -0
- /package/dist/{application-spec/generate-application → domain/spec}/runtime-spec/spec-code-id.js +0 -0
- /package/dist/domain/{application/assistant/assistant-resolved-manifest.js → spec/sections/assistant/assistant-manifest.js} +0 -0
- /package/dist/domain/{application → spec/sections}/assistant/form/assistant-form-element-name.d.ts +0 -0
- /package/dist/domain/{application → spec/sections}/assistant/form/assistant-form-element-name.js +0 -0
- /package/dist/domain/{application → spec/sections}/assistant/form/assistant-form-elements.d.ts +0 -0
- /package/dist/domain/{application → spec/sections}/assistant/form/assistant-form-elements.js +0 -0
- /package/dist/domain/{application → spec/sections}/assistant/form/assistant-resource-path.d.ts +0 -0
- /package/dist/domain/{application → spec/sections}/assistant/form/assistant-resource-path.js +0 -0
- /package/dist/domain/{application → spec/sections}/assistant/form/index.d.ts +0 -0
- /package/dist/domain/{application → spec/sections}/assistant/form/index.js +0 -0
- /package/dist/{configurator/configurator-context → react-sdk/domain-application-context}/OnPresetLoadedHandler.d.ts +0 -0
- /package/dist/{configurator/configurator-context → react-sdk/integration}/IntegrationSubscription.d.ts +0 -0
- /package/dist/{configurator/configurator-context → react-sdk/lifecycle-providers}/LifecycleProviders.d.ts +0 -0
- /package/dist/{configurator/configurator-context → react-sdk/preset-selection}/PresetSelectionProvider.d.ts +0 -0
|
@@ -1,37 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Presets as PresetsData, SpecPreset } from '#package/domain';
|
|
2
2
|
import type { ParseContext } from '../../../core/index.js';
|
|
3
3
|
import type { MergedPresets } from '../../merge/index.js';
|
|
4
4
|
import type { RawPreset } from '../../raw-spec/index.js';
|
|
5
5
|
import type { Relations } from '../relations/index.js';
|
|
6
6
|
import type { ModelVersion } from './model-version.js';
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
*/
|
|
11
|
-
export type
|
|
12
|
-
readonly id: string;
|
|
13
|
-
readonly type: string;
|
|
14
|
-
readonly properties: Readonly<Record<string, unknown>>;
|
|
15
|
-
}>;
|
|
16
|
-
/**
|
|
17
|
-
* A single parsed preset — the root entity type, initial entities, and optional metadata.
|
|
18
|
-
* Represents one initial configuration state for a configurator deployment.
|
|
19
|
-
*/
|
|
20
|
-
export type Preset = Branded<'Preset', {
|
|
21
|
-
readonly rootEntityType: string;
|
|
22
|
-
readonly initialDomainEntities: readonly PresetEntity[];
|
|
23
|
-
readonly name?: string;
|
|
24
|
-
readonly description?: string;
|
|
25
|
-
readonly img?: string;
|
|
26
|
-
readonly imgAlt?: string;
|
|
27
|
-
readonly detailTitle?: string;
|
|
28
|
-
readonly detailDescription?: string;
|
|
29
|
-
readonly tags?: readonly string[];
|
|
30
|
-
}>;
|
|
31
|
-
/** All parsed presets for a parsed configurator or admin model. */
|
|
32
|
-
export type Presets = Branded<'Presets', {
|
|
33
|
-
readonly presets: readonly Preset[];
|
|
34
|
-
}>;
|
|
7
|
+
export type { PresetEntity } from '#package/domain';
|
|
8
|
+
/** The parsed preset; see {@link SpecPreset} in `domain`. */
|
|
9
|
+
export type Preset = SpecPreset;
|
|
10
|
+
/** The parsed presets of a domain; see {@link PresetsData | Presets} in `domain`. */
|
|
11
|
+
export type Presets = PresetsData;
|
|
35
12
|
export declare const Preset: (raw: RawPreset, latestModel: ModelVersion, relations: Relations, ctx: ParseContext) => Preset | undefined;
|
|
36
13
|
/**
|
|
37
14
|
* Parses and validates merged presets against the domain model.
|
|
@@ -1,26 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { type
|
|
1
|
+
import type { Actions as ActionsData } from '#package/domain';
|
|
2
|
+
import { type ParseContext, type PhoenixDefinitions } from '../../../core/index.js';
|
|
3
3
|
import type { MergedActions } from '../../merge/index.js';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
readonly required: boolean;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* One validated action declaration. `params` and `result` keep the enhanced schemas for codegen and
|
|
12
|
-
* for consumers that expose the action; `paramsSchema` is the AJV-ready object schema of the parameters, with the
|
|
13
|
-
* refs resolved into `$defs`, which the action system validates the arguments of a call against.
|
|
14
|
-
*/
|
|
15
|
-
export type Action = Branded<'Action', {
|
|
16
|
-
readonly name: ActionName;
|
|
17
|
-
readonly description?: string;
|
|
18
|
-
readonly params: Readonly<Record<string, ActionParam>>;
|
|
19
|
-
readonly result: Readonly<Record<string, EnhancedJsonSchemaType>>;
|
|
20
|
-
readonly paramsSchema: JsonSchema;
|
|
21
|
-
}>;
|
|
22
|
-
/** The validated `actions` section: every declared action by name, in declaration order; empty when the spec declares none. */
|
|
23
|
-
export type Actions = Branded<'Actions', ReadonlyMap<ActionName, Action>>;
|
|
4
|
+
import { type ModelVersion } from '../model/index.js';
|
|
5
|
+
export type { ActionParam, Action } from '#package/domain';
|
|
6
|
+
/** The validated `actions` section by action name; see {@link ActionsData | Actions} in `domain`. */
|
|
7
|
+
export type Actions = ActionsData;
|
|
24
8
|
interface ActionsContext {
|
|
25
9
|
readonly latestModel: ModelVersion;
|
|
26
10
|
readonly phxDefinitions: PhoenixDefinitions;
|
|
@@ -32,4 +16,3 @@ interface ActionsContext {
|
|
|
32
16
|
* invalid, so nothing downstream builds on a partial list.
|
|
33
17
|
*/
|
|
34
18
|
export declare const Actions: (merged: MergedActions, context: ActionsContext, ctx: ParseContext) => Actions | undefined;
|
|
35
|
-
export {};
|
|
@@ -1,21 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { AppMetadata as AppMetadataData } from '#package/domain';
|
|
2
2
|
import type { ParseContext } from '../../../core/index.js';
|
|
3
3
|
import type { MergedAppMetadata } from '../../merge/index.js';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
* Validated application metadata — version, auth, infrastructure settings.
|
|
7
|
-
* Used by codegen for ApplicationVersion export and builder chain methods.
|
|
8
|
-
*/
|
|
9
|
-
export type AppMetadata = Branded<'AppMetadata', {
|
|
10
|
-
readonly applicationVersion: ApplicationVersion;
|
|
11
|
-
readonly workspace: boolean;
|
|
12
|
-
readonly webComponentTag: string | undefined;
|
|
13
|
-
readonly pageTitle: string | undefined;
|
|
14
|
-
readonly useAuthHook: boolean;
|
|
15
|
-
readonly useClerk: boolean;
|
|
16
|
-
readonly enableAdminRelease: boolean;
|
|
17
|
-
readonly jsonSchemaValidator: 'ajv' | 'csp-compatible';
|
|
18
|
-
readonly gltfDecoder: 'js' | 'wasm';
|
|
19
|
-
readonly collectFinalizeData: boolean;
|
|
20
|
-
}>;
|
|
4
|
+
/** The validated application metadata; see {@link AppMetadataData | AppMetadata} in `domain`. */
|
|
5
|
+
export type AppMetadata = AppMetadataData;
|
|
21
6
|
export declare const AppMetadata: (merged: MergedAppMetadata, ctx: ParseContext) => AppMetadata | undefined;
|
package/dist/application-spec/parse-application-files/spec/sections/application-version.d.ts
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ApplicationVersion as ApplicationVersionData } from '#package/domain';
|
|
2
2
|
import type { ParseContext } from '../../../core/index.js';
|
|
3
|
-
/**
|
|
4
|
-
|
|
5
|
-
* Exported by codegen as the `ApplicationVersion` constant and stored as
|
|
6
|
-
* `applicationVersion` on the deployment record.
|
|
7
|
-
*/
|
|
8
|
-
export type ApplicationVersion = Branded<'ApplicationVersion', string>;
|
|
3
|
+
/** The semantic version of the application; see {@link ApplicationVersionData | ApplicationVersion} in `domain`. */
|
|
4
|
+
export type ApplicationVersion = ApplicationVersionData;
|
|
9
5
|
export declare const ApplicationVersion: (version: string, ctx: ParseContext) => ApplicationVersion | undefined;
|
package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{isArray as e}from"@salsita-ai/common/utils";import{ASSISTANT_HINTS as t,AssistantFieldClashError as r,buildAssistantManifest as i,describeAssistantValues as n,mergeAssistantFields as s,resolveAssistantField as o}from"#package/domain";import{DiagnosticCode as a,diagnosticMessages as l}from"../../../../errors/index.js";import{createSchemaRefResolver as S,isNullableSchema as p,phxDefinitionRefName as N}from"../../common/index.js";import{resolveAssistantFieldType as T}from"./assistant-field-type.js";import{resolveFormElements as c}from"./assistant-form-elements.js";let d="AnyDomainEntity",E="RecipeGroup",f="Recipe",A="DryRun",_="FieldOption",m="agentScreenshot",u=/^(?!(true|false|null)$)[_A-Za-z][_0-9A-Za-z]*$/,O={section:"childRecipes",component:"childEntityRecipes",mutation:"addChild"},I={section:"replaceRecipes",component:"replaceEntityRecipes",mutation:"replaceEntity"},y=new Set(["id","type","meta"]),h=new Set(["Query","Mutation","Navigation",E,f,A,"DryRunError",_,"Screenshot","JSON","String","Int","Float","Boolean","ID"]),v=new Set([E,f,_,A]),b=new Set(["id","type"]),g="A string, a message descriptor or a multilingual object; passed without translation.",R=(e,t)=>Object.entries(e).find(([e])=>e===t)?.[1],M=(e,{property:t,writableKey:r},i,{resolveRef:s,exposed:o,sources:S},p)=>{let N=Object.entries(R(S,e)??{}),c=o.get(e)?.find(({source:e})=>e===t)?.name??N.find(([,{source:e}])=>e===t)?.[0],d=void 0===c?N.find(([e])=>e===t)?.[1]:void 0;if(d)return void p.at(r,t).error(a.ASSISTANT_FIELD_NAME_CONFLICT,l.ASSISTANT_FIELD_NAME_CONFLICT(e,t,[d.source,t],`${r}.${t}`));let{type:E,enumValues:f,localized:A,description:_}=T(i,s),m={...E,nonNull:!1},u=c??t,O=void 0===c?n(_,f):void 0;return A?{name:u,property:t,type:{kind:"scalar",name:"JSON",nonNull:!1},description:O?`${O} ${g}`:g}:{name:u,property:t,type:m,...void 0===O?{}:{description:O}}},C=(e,t,{model:r,components:i})=>{let n=new Set([e,...[...r.aliases].filter(([,t])=>t.includes(e)).map(([e])=>e)]);return i.filter(({componentName:e,typeOrAlias:r})=>e===t&&n.has(r)).map(({instanceName:e})=>String(e))},j=(...e)=>t.filter(t=>e.some(e=>e?.includes(t))),w=(e,t,r,i)=>{let{model:n}=r,s=new Map,o=new Map;for(let[S,{groups:p,hints:N}]of Object.entries(e)){let e=n.entityTypes.find(e=>e===S),T=e?[e]:[...n.aliases].find(([e])=>e===S)?.[1];if(!T){i.at(S).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE(t.section,S));continue}for(let[e,n]of(T.forEach(e=>o.set(e,j(o.get(e),N))),Object.entries(p))){let o=i.at(S,"groups",e),p=`${S}.groups.${e}`,N={groupId:n?.as??e,instanceName:e,...n?.description===void 0?{}:{description:n.description},dryRuns:n?.allowDryRuns??!0};for(let i of T){let n=C(i,t.component,r),T=s.get(i)??[],c=T.find(e=>e.group.groupId===N.groupId);n.includes(e)?c?o.error(a.ASSISTANT_DUPLICATE_RECIPE_GROUP,l.ASSISTANT_DUPLICATE_RECIPE_GROUP(t,i,N.groupId,[c.entry,p])):s.set(i,[...T,{group:N,entry:p,entryCtx:o}]):o.error(a.ASSISTANT_UNKNOWN_RECIPE_GROUP,l.ASSISTANT_UNKNOWN_RECIPE_GROUP(t,S,e,i,n))}}}let S=n.entityTypes.flatMap(e=>{let t=s.get(e);return t?[{entityType:e,groups:t}]:[]});return{groups:Object.fromEntries(S.map(({entityType:e,groups:t})=>[e,t.map(({group:e})=>e)])),hints:o,metaEntries:new Map(S.flatMap(({entityType:e,groups:[t]})=>t?[[e,t.entryCtx]]:[]))}},P=(e,t,{model:r,components:i})=>{let n=new Set([e,...[...r.aliases].filter(([,t])=>t.includes(e)).map(([e])=>e)]),s=i.find(e=>e.componentName===m&&String(e.instanceName)===t&&n.has(e.typeOrAlias));if(s?.implementation.kind!=="userBound"||"composite"!==s.implementation.implementation.kind)return;let o=s.implementation.implementation.resolvedProps.exportState;return"string"==typeof o?o:void 0},D=e=>`${e}Meta`,L=e=>`${e}ScreenshotView`,U=e=>`${e.charAt(0).toUpperCase()+e.slice(1)}Result`,W=e=>{let t=(({anyOf:e,oneOf:t})=>[...e??[],...t??[]].filter(e=>"null"!==e.type))(e);return e.$ref||1!==t.length?e:t[0]},$=(e,t)=>{let{type:r,enumValues:i,localized:s,description:o}=T(e,t),a={...r,nonNull:!1},l=s?`${n(o,i)??""} ${g}`.trim():n(o,i);return{type:{...s?{kind:"scalar",name:"JSON",nonNull:!1}:a,nonNull:r.nonNull},...void 0===l?{}:{description:l}}},F=(t,r)=>{let i=(t=>{let r=W(t),i=r?.type==="array"&&r.items&&!e(r.items)?W(r.items):void 0,n=i??r;if(n?.$ref!==void 0&&"$DomainEntity"===N(n.$ref))return{target:n.references??d,list:void 0!==i}})(t);if(i)return{kind:"edge",...i,nullable:p(t,r),...void 0===t.description?{}:{description:t.description}};let{type:s,enumValues:o,localized:a,description:l}=T(t,r),S=n(l,o);return a?{kind:"value",type:{kind:"scalar",name:"JSON",nonNull:s.nonNull},description:`${l??""} ${g}`.trim()}:{kind:"value",type:s,...void 0===S?{}:{description:S}}},V=(e,t)=>{let{type:r,enumValues:i,localized:n,description:s}=T(e,t);return{type:{kind:"value",type:r},localized:!0===n,description:s,enumValues:i}},K=(e,t,r,i,s)=>{let o=t.startsWith("$")?((e,t,r,i)=>{let n=((e,t,{expressions:r,entityTypes:i})=>{let n=i.find(t=>t===e);for(let i of void 0===n?[e]:r.entityExpressions.get(n)?.shapeGroups??[]){let e=[...r.expressions.get(i)?.values()??[]].find(e=>e.name===t);if(e?.declaredSchema)return{implementation:e.implementation,declaredSchema:e.declaredSchema}}})(e.name,t,r);if(!n)return void i.error(a.ASSISTANT_UNKNOWN_FIELD,l.ASSISTANT_UNKNOWN_FIELD("entities",e.name,t));let{implementation:s}=n;if("violations"===s.kind)return void i.error(a.ASSISTANT_UNSUPPORTED_EXPRESSION,l.ASSISTANT_UNSUPPORTED_EXPRESSION(e.name,t));if("relation"===s.kind){let[{target:e,cardinality:t}]=s.params;return{type:{kind:"edge",target:e,cardinality:t},localized:!1,description:void 0}}return V(n.declaredSchema,r.resolveRef)})(e,t,i,s):((e,t,{resolveRef:r},i)=>{let n=Object.entries(e.shape.properties).find(([e])=>e===t)?.[1];return n?V(n,r):void i.error(a.ASSISTANT_UNKNOWN_FIELD,l.ASSISTANT_UNKNOWN_FIELD("entities",e.name,t))})(e,t,i,s);if(!o)return;let S=r?.as??(t.startsWith("$")?`_${t.slice(1)}`:t);return y.has(S)?void s.error(a.ASSISTANT_RESERVED_FIELD_NAME,l.ASSISTANT_RESERVED_FIELD_NAME(e.name,t,S)):{name:S,source:t,type:o.type,localized:o.localized,description:n(r?.description??o.description,o.enumValues),describedByManifest:r?.description!==void 0,enumValues:o.enumValues,valueDescription:r?.description??o.description,...r?.lenses?.length?{lenses:[...new Set(r.lenses)]}:{}}},k=(e,t,r,i,n)=>s(t,r,i,(t,r,i)=>{n.error(a.ASSISTANT_FIELD_NAME_CONFLICT,l.ASSISTANT_FIELD_NAME_CONFLICT(e,t,[r,i]))});export const resolveAssistantManifest=(e,{model:t,states:r,phxDefinitions:i,expressions:n,components:s,actions:p},N)=>{let E=N.errors.length,f=N.at("entities"),A=S(t.commonTypes,i);for(let e of t.resolvedShapes.keys())h.has(e)&&N.error(a.ASSISTANT_RESERVED_TYPE_NAME,l.ASSISTANT_RESERVED_TYPE_NAME(e,[...h]));let _=((e,t,r)=>{let i=new Map;for(let n of e){let e=[];for(let[i,s]of Object.entries(n.entries)){let o=K(n,i,s,t,r.at(n.name,i));o&&e.push(o)}i.set(n.name,e)}return i})(((e,t,r)=>{let i=[];for(let[r,n]of t.resolvedShapes){let t=e[r];t&&i.push({name:r,shape:n,entries:t})}let n=new Set(t.resolvedShapes.keys());for(let t of Object.keys(e))n.has(t)||r.at(t).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE("entities",t));return i})(e.entities??{},t,f),{resolveRef:A,expressions:n,entityTypes:t.entityTypes},f),y=k(d,[],_.get(d)??[],()=>void 0,N),W=new Map([[d,y]]);for(let e of t.aliases.keys())e!==d&&W.set(e,k(e,[y],_.get(e)??[],()=>void 0,N));for(let e of t.entityTypes){let r=[d,...[...t.aliases].filter(([t,r])=>t!==d&&r.includes(e)).map(([e])=>e)],i=[...t.resolvedShapes].find(([t])=>t===e)?.[1];W.set(e,k(e,r.map(e=>W.get(e)??[]),_.get(e)??[],e=>{let t=Object.entries(i?.properties??{}).find(([t])=>t===e)?.[1];return t&&T(t,A).enumValues},N))}let V=Object.fromEntries(t.entityTypes.map(e=>[e,Object.fromEntries((W.get(e)??[]).map(({name:e,source:t,localized:r})=>[e,r?{source:t,localized:!0}:{source:t}]))])),Y=w(e.childRecipes??{},O,{model:t,components:s},N.at("childRecipes")),x=w(e.replaceRecipes??{},I,{model:t,components:s},N.at("replaceRecipes")),H=((e,t,r)=>{let i=new Set;for(let n of Object.keys(e)){let e=t.entityTypes.find(e=>e===n),s=e?[e]:[...t.aliases].find(([e])=>e===n)?.[1];s?s.forEach(e=>i.add(e)):r.at(n).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE("deletable",n))}return t.entityTypes.filter(e=>i.has(e))})(e.deletable??{},t,N.at("deletable")),z=((e,t,r)=>{let{model:i}=t,n=((e,t,r)=>{let i=new Map;for(let[n,s]of Object.entries(e)){let e=t.entityTypes.find(e=>e===n),o=e?[e]:[...t.aliases].find(([e])=>e===n)?.[1],S=[...t.resolvedShapes].find(([e])=>e===n)?.[1];if(!o||!S){r.at(n).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE("writable",n));continue}for(let e of Object.keys(s)){let t=r.at(n,e);e.startsWith("$")||b.has(e)?t.error(a.ASSISTANT_NOT_WRITABLE,l.ASSISTANT_NOT_WRITABLE(n,e)):R(S.properties,e)?o.forEach(t=>{let r=i.get(t)??new Map;i.set(t,r.has(e)?r:r.set(e,n))}):t.error(a.ASSISTANT_UNKNOWN_FIELD,l.ASSISTANT_UNKNOWN_FIELD("writable",n,e))}}return i})(e,i,r);return i.entityTypes.flatMap(e=>{let s=[...i.resolvedShapes].find(([t])=>t===e)?.[1],o=[...n.get(e)??[]].flatMap(([i,n])=>{let o=s&&R(s.properties,i);return(o&&M(e,{property:i,writableKey:n},o,t,r))??[]});return o.length>0?[{entityType:e,fields:o}]:[]})})(e.writable??{},{model:t,resolveRef:A,exposed:_,sources:V},N.at("writable")),G=((e,t,r,i)=>{let{model:n}=r,s=new Map;for(let[o,S]of Object.entries(e)){let e=n.entityTypes.find(e=>e===o),p=e?[e]:[...n.aliases].find(([e])=>e===o)?.[1]??[];for(let[e,n]of Object.entries(S)){let S=n?.options;if(!S)continue;let N=i.at(o,e,"options"),T=`${o}.${e}`;for(let i of p){let n=t.find(e=>e.entityType===i)?.fields.find(t=>t.property===e);if(!n)continue;let o=S.as??`${n.name}Options`,p=C(i,S.componentType,r),c=s.get(i)??[],d=c.find(e=>e.options.edgeName===o||e.options.field===n.name);if(p.includes(S.instanceName))if(o===O.section||o===I.section||"screenshot"===o)N.error(a.ASSISTANT_RESERVED_OPTIONS_EDGE_NAME,l.ASSISTANT_RESERVED_OPTIONS_EDGE_NAME(T,o,n.name));else if(d)N.error(a.ASSISTANT_DUPLICATE_OPTIONS_EDGE,l.ASSISTANT_DUPLICATE_OPTIONS_EDGE(i,d.options.edgeName===o?{edgeName:o}:{field:n.name},[d.entry,T]));else{let e={field:n.name,edgeName:o,componentType:S.componentType,instanceName:S.instanceName,validate:S.validate??!0,dryRuns:S.allowDryRuns??!0};s.set(i,[...c,{options:e,hints:j(S.hints),entry:T,entryCtx:N}])}else N.error(a.ASSISTANT_UNKNOWN_OPTIONS_COMPONENT,l.ASSISTANT_UNKNOWN_OPTIONS_COMPONENT(T,S,i,p))}}}return s})(e.writable??{},z,{model:t,components:s},N.at("writable")),B=((e,t,r)=>{let{model:i,states:n}=t,s=new Map;for(let[o,S]of Object.entries(e)){let e=i.entityTypes.find(e=>e===o),p=e?[e]:[...i.aliases].find(([e])=>e===o)?.[1];if(!p){r.at(o).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE("screenshots",o));continue}for(let[e,{description:i,as:N}]of Object.entries(S)){let S=r.at(o,e),T=`${o}.${e}`,c={view:N??e,instanceName:e,description:i};if(!u.test(c.view)){S.error(a.ASSISTANT_INVALID_SCREENSHOT_VIEW_NAME,l.ASSISTANT_INVALID_SCREENSHOT_VIEW_NAME(o,e,c.view));continue}for(let r of p){let i=C(r,m,t),p=P(r,e,t),N=s.get(r)??[],d=N.find(e=>e.view.view===c.view);i.includes(e)?void 0===p||n.exportStates.includes(p)?d?S.error(a.ASSISTANT_DUPLICATE_SCREENSHOT_VIEW,l.ASSISTANT_DUPLICATE_SCREENSHOT_VIEW(r,c.view,[d.entry,T])):s.set(r,[...N,{view:c,entry:T,entryCtx:S}]):S.error(a.ASSISTANT_UNKNOWN_SCREENSHOT_EXPORT_STATE,l.ASSISTANT_UNKNOWN_SCREENSHOT_EXPORT_STATE(o,e,p,n.exportStates)):S.error(a.ASSISTANT_UNKNOWN_SCREENSHOT_VIEW,l.ASSISTANT_UNKNOWN_SCREENSHOT_VIEW(o,e,r,i))}}}let o=i.entityTypes.flatMap(e=>{let t=s.get(e);return t?[{entityType:e,views:t}]:[]});return{views:new Map(o.map(({entityType:e,views:t})=>[e,t.map(({view:e})=>e)])),metaEntries:new Map(o.flatMap(({entityType:e,views:[t]})=>t?[[e,t.entryCtx]]:[]))}})(e.screenshots??{},{model:t,components:s,states:r},N.at("screenshots"));var J=[Y.metaEntries,x.metaEntries,new Map([...G].flatMap(([e,[t]])=>t?[[e,t.entryCtx]]:[])),B.metaEntries];for(let e of t.entityTypes){let r=J.flatMap(t=>t.get(e)??[])[0],i=D(e);r&&[...t.resolvedShapes.keys()].some(e=>e===i)&&r.error(a.ASSISTANT_META_TYPE_NAME_CONFLICT,l.ASSISTANT_META_TYPE_NAME_CONFLICT(e,i))}for(let[e,r]of B.metaEntries){let i=L(e);[...t.resolvedShapes.keys()].some(e=>e===i)&&r.error(a.ASSISTANT_SCREENSHOT_VIEW_TYPE_NAME_CONFLICT,l.ASSISTANT_SCREENSHOT_VIEW_TYPE_NAME_CONFLICT(e,i))}let X=t.entityTypes.filter(e=>(Y.groups[e]?.length??0)>0||(x.groups[e]?.length??0)>0||(G.get(e)?.length??0)>0||B.views.has(e)).flatMap(e=>[D(e),...B.views.has(e)?[L(e)]:[]]),Z=((e,{actions:t,resolveRef:r,builtInMutations:i,typeNames:n},s)=>{let o=[],S=[...t.values()].map(e=>String(e.name));for(let[p,N]of Object.entries(e)){let e=s.at(p),T=[...t.values()].find(e=>e.name===p);if(!T){e.error(a.ASSISTANT_UNKNOWN_ACTION,l.ASSISTANT_UNKNOWN_ACTION(p,S));continue}let c=N?.as??p,d=o.find(e=>e.fieldName===c),E=U(c);if(i.has(c)||d){e.error(a.ASSISTANT_MUTATION_NAME_CONFLICT,l.ASSISTANT_MUTATION_NAME_CONFLICT(p,c,d?`"assistant.actions.${d.actionName}" already exposes`:"the built-in mutation of that name already takes"));continue}if(n.has(E)||o.some(e=>U(e.fieldName)===E)){e.error(a.ASSISTANT_ACTION_RESULT_TYPE_CONFLICT,l.ASSISTANT_ACTION_RESULT_TYPE_CONFLICT(p,c,E));continue}let f=N?.description??T.description;o.push({fieldName:c,actionName:p,...void 0===f?{}:{description:f},args:Object.fromEntries(Object.entries(T.params).map(([e,{schema:t}])=>[e,$(t,r)])),result:Object.fromEntries(Object.entries(T.result).map(([e,t])=>[e,F(t,r)]))})}return o})(e.actions??{},{actions:p,resolveRef:A,builtInMutations:new Set(["deleteEntity",O.mutation,I.mutation,...z.map(({entityType:e})=>`modify${e}`)]),typeNames:new Set([...h,...t.resolvedShapes.keys(),...X])},N.at("actions")),Q=((e,t)=>{let r=e.lenses??{},i=new Set;for(let[n,s]of Object.entries(e.entities??{}))for(let[e,o]of Object.entries(s))for(let s of o?.lenses??[])Object.hasOwn(r,s)?i.add(s):t.at("entities",n,e,"lenses").error(a.ASSISTANT_UNKNOWN_LENS,l.ASSISTANT_UNKNOWN_LENS(`${n}.${e}`,s,Object.keys(r)));for(let e of Object.keys(r))v.has(e)?t.at("lenses",e).error(a.ASSISTANT_RESERVED_LENS_NAME,l.ASSISTANT_RESERVED_LENS_NAME(e,[...v])):i.has(e)||t.at("lenses",e).error(a.ASSISTANT_EMPTY_LENS,l.ASSISTANT_EMPTY_LENS(e));return Object.fromEntries(Object.entries(r).map(([e,{description:t,maxDepth:r}])=>[e,{description:t,maxDepth:r??1}]))})(e,N),q=c(e.formElements??{},N.at("formElements"));if(N.errors.length>E)return;let ee=e=>Object.fromEntries(Object.entries(e).map(([e,t])=>[e,{hints:j(t.hints),groups:Object.entries(t.groups).map(([e,t])=>({instanceName:e,groupId:t?.as??e,...t?.description===void 0?{}:{description:t.description},dryRuns:t?.allowDryRuns??!0}))}]));return{declarations:{entities:Object.fromEntries(Object.keys(e.entities??{}).map(e=>[e,(_.get(e)??[]).map(e=>({name:e.name,source:e.source,type:e.type,localized:e.localized,describedByManifest:e.describedByManifest,...void 0===e.description?{}:{description:e.description},...void 0===e.valueDescription?{}:{valueDescription:e.valueDescription},...void 0===e.enumValues?{}:{enumValues:e.enumValues},...void 0===e.lenses?{}:{lenses:e.lenses}}))])),enumValues:Object.fromEntries(t.entityTypes.map(e=>[e,Object.fromEntries(Object.entries(t.resolvedShapes.get(e)?.properties??{}).flatMap(([e,t])=>{let r=T(t,A).enumValues;return r?[[e,r]]:[]}))])),deletable:Object.keys(e.deletable??{}),writable:Object.fromEntries(Object.entries(e.writable??{}).map(([e,r])=>[e,Object.fromEntries(Object.entries(r).map(([r,i])=>[r,{defaultOptionsName:i?.options?.as===void 0,members:Object.fromEntries(t.entityTypes.filter(r=>r===e||[...t.aliases].find(([t])=>t===e)?.[1].includes(r)).flatMap(i=>{let n=R(t.resolvedShapes.get(i)?.properties??{},r),s=n&&M(i,{property:r,writableKey:e},n,{model:t,resolveRef:A,exposed:new Map,sources:{}},N.at("writable")),o=G.get(i)?.find(t=>t.entry===`${e}.${r}`);return s?[[i,{field:s,...T(n,A).localized?{exposedDescription:g}:{},...o?{options:{options:o.options,hints:o.hints}}:{}}]]:[]}))}]))])),childRecipes:ee(e.childRecipes??{}),replaceRecipes:ee(e.replaceRecipes??{}),screenshots:Object.fromEntries(Object.entries(e.screenshots??{}).map(([e,t])=>[e,Object.entries(t).map(([e,{description:t,as:r}])=>({view:r??e,instanceName:e,description:t}))]))},entityTypes:t.entityTypes,aliases:Object.fromEntries(t.aliases),exampleType:t.rootEntityTypes[0]??t.entityTypes[0],states:{navigationStates:r.navigationStates,viewStates:r.viewStates,toolStates:r.toolStates},deletableTypes:H,writableTypes:z,actionFields:Z,childRecipes:Object.fromEntries(Object.entries(Y.groups).map(([e,t])=>[e,{groups:t,hints:Y.hints.get(e)??[]}])),replaceRecipes:Object.fromEntries(Object.entries(x.groups).map(([e,t])=>[e,{groups:t,hints:x.hints.get(e)??[]}])),optionsEdges:Object.fromEntries([...G].map(([e,t])=>[e,t.map(({options:e,hints:t})=>({options:e,hints:t}))])),screenshots:Object.fromEntries(B.views),fields:Object.fromEntries([...W].map(([e,t])=>[e,t.map(t=>o(t,_.get(e)??[]))])),lenses:Q,formElements:q}};export const createAssistantSchema=(e,t,n)=>{let s=resolveAssistantManifest(e,t,n);if(s)try{return{...i(s),resolved:s}}catch(e){if(e instanceof r)return void n.at("entities").error(a.ASSISTANT_FIELD_SHAPE_CONFLICT,l.ASSISTANT_FIELD_SHAPE_CONFLICT(e.fieldName,e.exposures));n.error(a.ASSISTANT_INVALID_SCHEMA,l.ASSISTANT_INVALID_SCHEMA([e instanceof Error?e.message:String(e)]));return}};
|
|
1
|
+
import{isArray as e}from"@salsita-ai/common/utils";import{ASSISTANT_HINTS as t,AssistantFieldClashError as i,buildAssistantManifest as r,describeAssistantValues as n,mergeAssistantFields as s,resolveAssistantField as o}from"#package/domain";import{DiagnosticCode as a,diagnosticMessages as l}from"../../../../errors/index.js";import{ASSISTANT_OPTION_COMPONENT_TYPES as S,GRAPHQL_NAME_PATTERN as N}from"../../../raw-spec/index.js";import{createSchemaRefResolver as p,isNullableSchema as T,phxDefinitionRefName as c}from"../../common/index.js";import{resolveAssistantFieldType as _}from"./assistant-field-type.js";import{resolveFormElements as d}from"./assistant-form-elements.js";let E="AnyDomainEntity",A="RecipeGroup",m="Recipe",f="DryRun",I="FieldOption",O="agentScreenshot",u=/^(?!(true|false|null)$)[_A-Za-z][_0-9A-Za-z]*$/,y={section:"childRecipes",component:"childEntityRecipes",mutation:"addChild",typeSuffix:"ChildRecipes"},h={section:"replaceRecipes",component:"replaceEntityRecipes",mutation:"replaceEntity",typeSuffix:"ReplaceRecipes"},v=new Set(["id","type","meta"]),R=new Set(["Query","Mutation","Navigation",A,m,f,"DryRunError",I,"Screenshot","JSON","String","Int","Float","Boolean","ID"]),b=new Set([A,m,I,f]),M=new Set(["id","type"]),C="A string, a message descriptor or a multilingual object; passed without translation.",g=(e,t)=>Object.entries(e).find(([e])=>e===t)?.[1],P=(e,{property:t,writableKey:i},r,{resolveRef:s,exposed:o,sources:S},N)=>{let p=Object.entries(g(S,e)??{}),T=o.get(e)?.find(({source:e})=>e===t)?.name??p.find(([,{source:e}])=>e===t)?.[0],c=void 0===T?p.find(([e])=>e===t)?.[1]:void 0;if(c)return void N.at(i,t).error(a.ASSISTANT_FIELD_NAME_CONFLICT,l.ASSISTANT_FIELD_NAME_CONFLICT(e,t,[c.source,t],`${i}.${t}`));let{type:d,enumValues:E,localized:A,description:m}=_(r,s),f={...d,nonNull:!1},I=T??t,O=void 0===T?n(m,E):void 0;return A?{name:I,property:t,type:{kind:"scalar",name:"JSON",nonNull:!1},description:O?`${O} ${C}`:C}:{name:I,property:t,type:f,...void 0===O?{}:{description:O}}},j=(e,t)=>new Set([e,...[...t.aliases].filter(([,t])=>t.includes(e)).map(([e])=>e)]),w=(e,t,{model:i,components:r})=>{let n=j(e,i);return r.filter(({componentName:e,typeOrAlias:i})=>e===t&&n.has(i)).map(({instanceName:e})=>String(e))},D=(e,t,{model:i,components:r})=>{let n=j(e,i);return r.flatMap(({componentName:e,typeOrAlias:i,instanceName:r,implementation:s})=>S.some(t=>t===e)&&n.has(i)&&"userBound"===s.kind&&"composite"===s.implementation.kind&&s.implementation.writeBindings.some(({entityField:e})=>e===t)?[{componentType:e,instanceName:String(r)}]:[])},U=(...e)=>t.filter(t=>e.some(e=>e?.includes(t))),L=(e,t)=>({groupId:t?.as??e,instanceName:e,...t?.description===void 0?{}:{description:t.description},dryRuns:t?.allowDryRuns??!0,hints:U(t?.hints)}),W=(e,t,i,r)=>{let{model:n}=i,s=new Map;for(let[o,S]of Object.entries(e)){let e=n.entityTypes.find(e=>e===o),p=e?[e]:[...n.aliases].find(([e])=>e===o)?.[1];if(!p){r.at(o).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE(t.section,o));continue}for(let[e,n]of Object.entries(S)){let S=r.at(o,e),T=`${o}.${e}`,c=L(e,n);if(!N.test(c.groupId)){S.error(a.ASSISTANT_INVALID_RECIPE_GROUP_ID,l.ASSISTANT_INVALID_RECIPE_GROUP_ID(t,o,e,c.groupId));continue}for(let r of p){let n=w(r,t.component,i),N=s.get(r)??[],p=N.find(e=>e.group.groupId===c.groupId);n.includes(e)?p?S.error(a.ASSISTANT_DUPLICATE_RECIPE_GROUP,l.ASSISTANT_DUPLICATE_RECIPE_GROUP(t,r,c.groupId,[p.entry,T])):s.set(r,[...N,{group:c,entry:T,entryCtx:S}]):S.error(a.ASSISTANT_UNKNOWN_RECIPE_GROUP,l.ASSISTANT_UNKNOWN_RECIPE_GROUP(t,o,e,r,n))}}}let o=n.entityTypes.flatMap(e=>{let t=s.get(e);return t?[{entityType:e,groups:t}]:[]});return{groups:Object.fromEntries(o.map(({entityType:e,groups:t})=>[e,t.map(({group:e})=>e)])),metaEntries:new Map(o.flatMap(({entityType:e,groups:[t]})=>t?[[e,t.entryCtx]]:[]))}},$=(e,t,{model:i,components:r})=>{let n=new Set([e,...[...i.aliases].filter(([,t])=>t.includes(e)).map(([e])=>e)]),s=r.find(e=>e.componentName===O&&String(e.instanceName)===t&&n.has(e.typeOrAlias));if(s?.implementation.kind!=="userBound"||"composite"!==s.implementation.implementation.kind)return;let o=s.implementation.implementation.resolvedProps.exportState;return"string"==typeof o?o:void 0},F=e=>`${e}Meta`,V=e=>`${e}ScreenshotView`,k=(e,{typeSuffix:t})=>`${e}${t}`,K=(e,t,i)=>{for(let[r,n]of e){let e=k(r,t);[...i.resolvedShapes.keys()].some(t=>t===e)&&n.error(a.ASSISTANT_RECIPE_GROUPS_TYPE_NAME_CONFLICT,l.ASSISTANT_RECIPE_GROUPS_TYPE_NAME_CONFLICT(t,r,e))}},Y=e=>`${e.charAt(0).toUpperCase()+e.slice(1)}Result`,x=e=>{let t=(({anyOf:e,oneOf:t})=>[...e??[],...t??[]].filter(e=>"null"!==e.type))(e);return e.$ref||1!==t.length?e:t[0]},G=(e,t)=>{let{type:i,enumValues:r,localized:s,description:o}=_(e,t),a={...i,nonNull:!1},l=s?`${n(o,r)??""} ${C}`.trim():n(o,r);return{type:{...s?{kind:"scalar",name:"JSON",nonNull:!1}:a,nonNull:i.nonNull},...void 0===l?{}:{description:l}}},H=(t,i)=>{let r=(t=>{let i=x(t),r=i?.type==="array"&&i.items&&!e(i.items)?x(i.items):void 0,n=r??i;if(n?.$ref!==void 0&&"$DomainEntity"===c(n.$ref))return{target:n.references??E,list:void 0!==r}})(t);if(r)return{kind:"edge",...r,nullable:T(t,i),...void 0===t.description?{}:{description:t.description}};let{type:s,enumValues:o,localized:a,description:l}=_(t,i),S=n(l,o);return a?{kind:"value",type:{kind:"scalar",name:"JSON",nonNull:s.nonNull},description:`${l??""} ${C}`.trim()}:{kind:"value",type:s,...void 0===S?{}:{description:S}}},B=(e,t)=>{let{type:i,enumValues:r,localized:n,description:s}=_(e,t);return{type:{kind:"value",type:i},localized:!0===n,description:s,enumValues:r}},z=(e,t,i,r,s)=>{let o=t.startsWith("$")?((e,t,i,r)=>{let n=((e,t,{expressions:i,entityTypes:r})=>{let n=r.find(t=>t===e);for(let r of void 0===n?[e]:i.entityExpressions.get(n)?.shapeGroups??[]){let e=[...i.expressions.get(r)?.values()??[]].find(e=>e.name===t);if(e?.declaredSchema)return{implementation:e.implementation,declaredSchema:e.declaredSchema}}})(e.name,t,i);if(!n)return void r.error(a.ASSISTANT_UNKNOWN_FIELD,l.ASSISTANT_UNKNOWN_FIELD("entities",e.name,t));let{implementation:s}=n;if("violations"===s.kind)return void r.error(a.ASSISTANT_UNSUPPORTED_EXPRESSION,l.ASSISTANT_UNSUPPORTED_EXPRESSION(e.name,t));if("relation"===s.kind){let[{target:e,cardinality:t}]=s.params;return{type:{kind:"edge",target:e,cardinality:t},localized:!1,description:void 0}}return B(n.declaredSchema,i.resolveRef)})(e,t,r,s):((e,t,{resolveRef:i},r)=>{let n=Object.entries(e.shape.properties).find(([e])=>e===t)?.[1];return n?B(n,i):void r.error(a.ASSISTANT_UNKNOWN_FIELD,l.ASSISTANT_UNKNOWN_FIELD("entities",e.name,t))})(e,t,r,s);if(!o)return;let S=i?.as??(t.startsWith("$")?`_${t.slice(1)}`:t);return v.has(S)?void s.error(a.ASSISTANT_RESERVED_FIELD_NAME,l.ASSISTANT_RESERVED_FIELD_NAME(e.name,t,S)):{name:S,source:t,type:o.type,localized:o.localized,description:n(i?.description??o.description,o.enumValues),describedByManifest:i?.description!==void 0,enumValues:o.enumValues,valueDescription:i?.description??o.description,...i?.lenses?.length?{lenses:[...new Set(i.lenses)]}:{}}},J=(e,t,i,r,n)=>s(t,i,r,(t,i,r)=>{n.error(a.ASSISTANT_FIELD_NAME_CONFLICT,l.ASSISTANT_FIELD_NAME_CONFLICT(e,t,[i,r]))});export const resolveAssistantManifest=(e,{model:t,states:i,phxDefinitions:r,expressions:n,components:s,actions:S},N)=>{let T=N.errors.length,c=N.at("entities"),A=p(t.commonTypes,r);for(let e of t.resolvedShapes.keys())R.has(e)&&N.error(a.ASSISTANT_RESERVED_TYPE_NAME,l.ASSISTANT_RESERVED_TYPE_NAME(e,[...R]));let m=((e,t,i)=>{let r=new Map;for(let n of e){let e=[];for(let[r,s]of Object.entries(n.entries)){let o=z(n,r,s,t,i.at(n.name,r));o&&e.push(o)}r.set(n.name,e)}return r})(((e,t,i)=>{let r=[];for(let[i,n]of t.resolvedShapes){let t=e[i];t&&r.push({name:i,shape:n,entries:t})}let n=new Set(t.resolvedShapes.keys());for(let t of Object.keys(e))n.has(t)||i.at(t).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE("entities",t));return r})(e.entities??{},t,c),{resolveRef:A,expressions:n,entityTypes:t.entityTypes},c),f=J(E,[],m.get(E)??[],()=>void 0,N),I=new Map([[E,f]]);for(let e of t.aliases.keys())e!==E&&I.set(e,J(e,[f],m.get(e)??[],()=>void 0,N));for(let e of t.entityTypes){let i=[E,...[...t.aliases].filter(([t,i])=>t!==E&&i.includes(e)).map(([e])=>e)],r=[...t.resolvedShapes].find(([t])=>t===e)?.[1];I.set(e,J(e,i.map(e=>I.get(e)??[]),m.get(e)??[],e=>{let t=Object.entries(r?.properties??{}).find(([t])=>t===e)?.[1];return t&&_(t,A).enumValues},N))}let v=Object.fromEntries(t.entityTypes.map(e=>[e,Object.fromEntries((I.get(e)??[]).map(({name:e,source:t,localized:i})=>[e,i?{source:t,localized:!0}:{source:t}]))])),j=W(e.childRecipes??{},y,{model:t,components:s},N.at("childRecipes")),x=W(e.replaceRecipes??{},h,{model:t,components:s},N.at("replaceRecipes")),B=((e,t,i)=>{let r=new Set;for(let n of Object.keys(e)){let e=t.entityTypes.find(e=>e===n),s=e?[e]:[...t.aliases].find(([e])=>e===n)?.[1];s?s.forEach(e=>r.add(e)):i.at(n).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE("deletable",n))}return t.entityTypes.filter(e=>r.has(e))})(e.deletable??{},t,N.at("deletable")),X=((e,t,i)=>{let{model:r}=t,n=((e,t,i)=>{let r=new Map;for(let[n,s]of Object.entries(e)){let e=t.entityTypes.find(e=>e===n),o=e?[e]:[...t.aliases].find(([e])=>e===n)?.[1],S=[...t.resolvedShapes].find(([e])=>e===n)?.[1];if(!o||!S){i.at(n).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE("writable",n));continue}for(let e of Object.keys(s)){let t=i.at(n,e);e.startsWith("$")||M.has(e)?t.error(a.ASSISTANT_NOT_WRITABLE,l.ASSISTANT_NOT_WRITABLE(n,e)):g(S.properties,e)?o.forEach(t=>{let i=r.get(t)??new Map;r.set(t,i.has(e)?i:i.set(e,n))}):t.error(a.ASSISTANT_UNKNOWN_FIELD,l.ASSISTANT_UNKNOWN_FIELD("writable",n,e))}}return r})(e,r,i);return r.entityTypes.flatMap(e=>{let s=[...r.resolvedShapes].find(([t])=>t===e)?.[1],o=[...n.get(e)??[]].flatMap(([r,n])=>{let o=s&&g(s.properties,r);return(o&&P(e,{property:r,writableKey:n},o,t,i))??[]});return o.length>0?[{entityType:e,fields:o}]:[]})})(e.writable??{},{model:t,resolveRef:A,exposed:m,sources:v},N.at("writable")),Z=((e,t,i,r)=>{let{model:n}=i,s=new Map,o=e=>{let t=n.entityTypes.find(t=>t===e);return t?[t]:[...n.aliases].find(([t])=>t===e)?.[1]??[]},S=new Set(Object.entries(e).flatMap(([e,t])=>Object.entries(t).flatMap(([t,i])=>i?.options===void 0?[]:o(e).map(e=>`${e}.${t}`)))),N=new Set;for(let[n,p]of Object.entries(e)){let e=o(n);for(let[o,T]of Object.entries(p)){let p=T?.options;if(null===p)continue;let c=p?r.at(n,o,"options"):r.at(n,o),_=`${n}.${o}`;for(let r of e){let e=t.find(e=>e.entityType===r)?.fields.find(e=>e.property===o),n=`${r}.${o}`;if(!e||!p&&(S.has(n)||N.has(n)))continue;p||N.add(n);let T=s.get(r)??[],d=p?.componentType===void 0||void 0===p.instanceName?void 0:{componentType:p.componentType,instanceName:p.instanceName},E=d?[d]:D(r,o,i),[A]=E,m=p?.as??`${e.name}Options`,f=T.find(t=>t.options.edgeName===m||t.options.field===e.name);if(d&&!w(r,d.componentType,i).includes(d.instanceName))c.error(a.ASSISTANT_UNKNOWN_OPTIONS_COMPONENT,l.ASSISTANT_UNKNOWN_OPTIONS_COMPONENT(_,d,r,w(r,d.componentType,i)));else if(E.length>1)c.error(a.ASSISTANT_AMBIGUOUS_OPTIONS_COMPONENT,l.ASSISTANT_AMBIGUOUS_OPTIONS_COMPONENT(p?`${_}.options`:_,r,E));else if(A)if(m===y.section||m===h.section||"screenshot"===m)c.error(a.ASSISTANT_RESERVED_OPTIONS_EDGE_NAME,l.ASSISTANT_RESERVED_OPTIONS_EDGE_NAME(_,m,e.name));else if(f)c.error(a.ASSISTANT_DUPLICATE_OPTIONS_EDGE,l.ASSISTANT_DUPLICATE_OPTIONS_EDGE(r,f.options.edgeName===m?{edgeName:m}:{field:e.name},[f.entry,_]));else{let t={field:e.name,edgeName:m,componentType:A.componentType,instanceName:A.instanceName,validate:p?.validate??!0,dryRuns:p?.allowDryRuns??!0};s.set(r,[...T,{options:t,hints:U(p?.hints),entry:_,entryCtx:c}])}else p&&c.error(a.ASSISTANT_MISSING_OPTIONS_COMPONENT,l.ASSISTANT_MISSING_OPTIONS_COMPONENT(_,r,o))}}}return s})(e.writable??{},X,{model:t,components:s},N.at("writable")),Q=((e,t,i)=>{let{model:r,states:n}=t,s=new Map;for(let[o,S]of Object.entries(e)){let e=r.entityTypes.find(e=>e===o),N=e?[e]:[...r.aliases].find(([e])=>e===o)?.[1];if(!N){i.at(o).error(a.ASSISTANT_UNKNOWN_TYPE,l.ASSISTANT_UNKNOWN_TYPE("screenshots",o));continue}for(let[e,{description:r,as:p}]of Object.entries(S)){let S=i.at(o,e),T=`${o}.${e}`,c={view:p??e,instanceName:e,description:r};if(!u.test(c.view)){S.error(a.ASSISTANT_INVALID_SCREENSHOT_VIEW_NAME,l.ASSISTANT_INVALID_SCREENSHOT_VIEW_NAME(o,e,c.view));continue}for(let i of N){let r=w(i,O,t),N=$(i,e,t),p=s.get(i)??[],_=p.find(e=>e.view.view===c.view);r.includes(e)?void 0===N||n.exportStates.includes(N)?_?S.error(a.ASSISTANT_DUPLICATE_SCREENSHOT_VIEW,l.ASSISTANT_DUPLICATE_SCREENSHOT_VIEW(i,c.view,[_.entry,T])):s.set(i,[...p,{view:c,entry:T,entryCtx:S}]):S.error(a.ASSISTANT_UNKNOWN_SCREENSHOT_EXPORT_STATE,l.ASSISTANT_UNKNOWN_SCREENSHOT_EXPORT_STATE(o,e,N,n.exportStates)):S.error(a.ASSISTANT_UNKNOWN_SCREENSHOT_VIEW,l.ASSISTANT_UNKNOWN_SCREENSHOT_VIEW(o,e,i,r))}}}let o=r.entityTypes.flatMap(e=>{let t=s.get(e);return t?[{entityType:e,views:t}]:[]});return{views:new Map(o.map(({entityType:e,views:t})=>[e,t.map(({view:e})=>e)])),metaEntries:new Map(o.flatMap(({entityType:e,views:[t]})=>t?[[e,t.entryCtx]]:[]))}})(e.screenshots??{},{model:t,components:s,states:i},N.at("screenshots")),q=t.entityTypes.filter(e=>w(e,"violations",{model:t,components:s}).length>0);var ee=[j.metaEntries,x.metaEntries,new Map([...Z].flatMap(([e,[t]])=>t?[[e,t.entryCtx]]:[])),Q.metaEntries,new Map(q.map(e=>[e,N]))];for(let e of t.entityTypes){let i=ee.flatMap(t=>t.get(e)??[])[0],r=F(e);i&&[...t.resolvedShapes.keys()].some(e=>e===r)&&i.error(a.ASSISTANT_META_TYPE_NAME_CONFLICT,l.ASSISTANT_META_TYPE_NAME_CONFLICT(e,r))}for(let[e,i]of(K(j.metaEntries,y,t),K(x.metaEntries,h,t),Q.metaEntries)){let r=V(e);[...t.resolvedShapes.keys()].some(e=>e===r)&&i.error(a.ASSISTANT_SCREENSHOT_VIEW_TYPE_NAME_CONFLICT,l.ASSISTANT_SCREENSHOT_VIEW_TYPE_NAME_CONFLICT(e,r))}let et=t.entityTypes.filter(e=>(j.groups[e]?.length??0)>0||(x.groups[e]?.length??0)>0||(Z.get(e)?.length??0)>0||Q.views.has(e)||q.includes(e)).flatMap(e=>[F(e),...(j.groups[e]?.length??0)>0?[k(e,y)]:[],...(x.groups[e]?.length??0)>0?[k(e,h)]:[],...Q.views.has(e)?[V(e)]:[]]),ei=((e,{actions:t,resolveRef:i,builtInMutations:r,typeNames:n},s)=>{let o=[],S=[...t.values()].map(e=>String(e.name));for(let[N,p]of Object.entries(e)){let e=s.at(N),T=[...t.values()].find(e=>e.name===N);if(!T){e.error(a.ASSISTANT_UNKNOWN_ACTION,l.ASSISTANT_UNKNOWN_ACTION(N,S));continue}let c=p?.as??N,_=o.find(e=>e.fieldName===c),d=Y(c);if(r.has(c)||_){e.error(a.ASSISTANT_MUTATION_NAME_CONFLICT,l.ASSISTANT_MUTATION_NAME_CONFLICT(N,c,_?`"assistant.actions.${_.actionName}" already exposes`:"the built-in mutation of that name already takes"));continue}if(n.has(d)||o.some(e=>Y(e.fieldName)===d)){e.error(a.ASSISTANT_ACTION_RESULT_TYPE_CONFLICT,l.ASSISTANT_ACTION_RESULT_TYPE_CONFLICT(N,c,d));continue}let E=p?.description??T.description;o.push({fieldName:c,actionName:N,...void 0===E?{}:{description:E},args:Object.fromEntries(Object.entries(T.params).map(([e,{schema:t}])=>[e,G(t,i)])),result:Object.fromEntries(Object.entries(T.result).map(([e,t])=>[e,H(t,i)]))})}return o})(e.actions??{},{actions:S,resolveRef:A,builtInMutations:new Set(["deleteEntity",y.mutation,h.mutation,...X.map(({entityType:e})=>`modify${e}`)]),typeNames:new Set([...R,...t.resolvedShapes.keys(),...et])},N.at("actions")),er=((e,t)=>{let i=e.lenses??{},r=new Set;for(let[n,s]of Object.entries(e.entities??{}))for(let[e,o]of Object.entries(s))for(let s of o?.lenses??[])Object.hasOwn(i,s)?r.add(s):t.at("entities",n,e,"lenses").error(a.ASSISTANT_UNKNOWN_LENS,l.ASSISTANT_UNKNOWN_LENS(`${n}.${e}`,s,Object.keys(i)));for(let e of Object.keys(i))b.has(e)?t.at("lenses",e).error(a.ASSISTANT_RESERVED_LENS_NAME,l.ASSISTANT_RESERVED_LENS_NAME(e,[...b])):r.has(e)||t.at("lenses",e).error(a.ASSISTANT_EMPTY_LENS,l.ASSISTANT_EMPTY_LENS(e));return Object.fromEntries(Object.entries(i).map(([e,{description:t,maxDepth:i}])=>[e,{description:t,maxDepth:i??1}]))})(e,N),en=d(e.formElements??{},N.at("formElements"));if(N.errors.length>T)return;let es=e=>Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Object.entries(t).map(([e,t])=>L(e,t))]));return{declarations:{entities:Object.fromEntries(Object.keys(e.entities??{}).map(e=>[e,(m.get(e)??[]).map(e=>({name:e.name,source:e.source,type:e.type,localized:e.localized,describedByManifest:e.describedByManifest,...void 0===e.description?{}:{description:e.description},...void 0===e.valueDescription?{}:{valueDescription:e.valueDescription},...void 0===e.enumValues?{}:{enumValues:e.enumValues},...void 0===e.lenses?{}:{lenses:e.lenses}}))])),enumValues:Object.fromEntries(t.entityTypes.map(e=>[e,Object.fromEntries(Object.entries(t.resolvedShapes.get(e)?.properties??{}).flatMap(([e,t])=>{let i=_(t,A).enumValues;return i?[[e,i]]:[]}))])),deletable:Object.keys(e.deletable??{}),writable:Object.fromEntries(Object.entries(e.writable??{}).map(([e,i])=>[e,Object.fromEntries(Object.entries(i).map(([i,r])=>[i,{defaultOptionsName:r?.options?.as===void 0,members:Object.fromEntries(t.entityTypes.filter(i=>i===e||[...t.aliases].find(([t])=>t===e)?.[1].includes(i)).flatMap(r=>{let n=g(t.resolvedShapes.get(r)?.properties??{},i),s=n&&P(r,{property:i,writableKey:e},n,{model:t,resolveRef:A,exposed:new Map,sources:{}},N.at("writable")),o=Z.get(r)?.find(t=>t.entry===`${e}.${i}`);return s?[[r,{field:s,..._(n,A).localized?{exposedDescription:C}:{},...o?{options:{options:o.options,hints:o.hints}}:{}}]]:[]}))}]))])),childRecipes:es(e.childRecipes??{}),replaceRecipes:es(e.replaceRecipes??{}),screenshots:Object.fromEntries(Object.entries(e.screenshots??{}).map(([e,t])=>[e,Object.entries(t).map(([e,{description:t,as:i}])=>({view:i??e,instanceName:e,description:t}))]))},entityTypes:t.entityTypes,aliases:Object.fromEntries(t.aliases),exampleType:t.rootEntityTypes[0]??t.entityTypes[0],states:{navigationStates:i.navigationStates,viewStates:i.viewStates,toolStates:i.toolStates},deletableTypes:B,writableTypes:X,actionFields:ei,invariantTypes:q,childRecipes:j.groups,replaceRecipes:x.groups,optionsEdges:Object.fromEntries([...Z].map(([e,t])=>[e,t.map(({options:e,hints:t})=>({options:e,hints:t}))])),screenshots:Object.fromEntries(Q.views),fields:Object.fromEntries([...I].map(([e,t])=>[e,t.map(t=>o(t,m.get(e)??[]))])),lenses:er,formElements:en}};export const createAssistantSchema=(e,t,n)=>{let s=resolveAssistantManifest(e,t,n);if(s)try{return{...r(s),resolved:s}}catch(e){if(e instanceof i)return void n.at("entities").error(a.ASSISTANT_FIELD_SHAPE_CONFLICT,l.ASSISTANT_FIELD_SHAPE_CONFLICT(e.fieldName,e.exposures));n.error(a.ASSISTANT_INVALID_SCHEMA,l.ASSISTANT_INVALID_SCHEMA([e instanceof Error?e.message:String(e)]));return}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Branded as t}from"@salsita-ai/common/utils";import{createAssistantSchema as s}from"./assistant-schema.js";export const AssistantSpec=(i,
|
|
1
|
+
import{Branded as t}from"@salsita-ai/common/utils";import{createAssistantSchema as s}from"./assistant-schema.js";export const AssistantSpec=(a,i,n)=>{let{manifest:r}=a;if(!r)return null;let l=s(r,i,n.at("assistant"));return l?t(l):null};
|
|
@@ -1,27 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ChunkName as ChunkNameData, Chunks as ChunksData } from '#package/domain';
|
|
2
2
|
import type { ParseContext } from '../../../../core/index.js';
|
|
3
3
|
import type { MergedChunks } from '../../../merge/index.js';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
* entries point to these names through their `chunk` field, and the parser adds
|
|
8
|
-
* the reserved `system` chunk when user chunks exist.
|
|
9
|
-
*/
|
|
10
|
-
export type ChunkName = Branded<'ChunkName', string>;
|
|
4
|
+
export type { ChunkDefinition } from '#package/domain';
|
|
5
|
+
/** A validated published-data chunk name; see {@link ChunkNameData | ChunkName} in `domain`. */
|
|
6
|
+
export type ChunkName = ChunkNameData;
|
|
11
7
|
export declare const ChunkName: (name: string, ctx: ParseContext) => ChunkName | undefined;
|
|
12
|
-
/**
|
|
13
|
-
|
|
14
|
-
* `scope` is typically `'project'` (per-project data) or `'public'` (shared).
|
|
15
|
-
*/
|
|
16
|
-
export interface ChunkDefinition {
|
|
17
|
-
/** Visibility/storage scope used by runtime data publishing for this chunk. */
|
|
18
|
-
readonly scope: string;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Validated chunk definitions, keyed by chunk name.
|
|
22
|
-
* When any user-defined chunks are present, the reserved `system` chunk is
|
|
23
|
-
* auto-injected with `scope: 'public'` to carry admin presets/recipes schemas.
|
|
24
|
-
* When the input is empty, no system injection happens (mirrors domain-spec behavior).
|
|
25
|
-
*/
|
|
26
|
-
export type Chunks = Readonly<Record<ChunkName, ChunkDefinition>>;
|
|
8
|
+
/** The validated chunk definitions by chunk name; see {@link ChunksData | Chunks} in `domain`. */
|
|
9
|
+
export type Chunks = ChunksData;
|
|
27
10
|
export declare const Chunks: (merged: MergedChunks, ctx: ParseContext) => Chunks | undefined;
|
package/dist/application-spec/parse-application-files/spec/sections/data-spec/custom-data-spec.d.ts
CHANGED
|
@@ -1,24 +1,9 @@
|
|
|
1
1
|
import { Branded } from '@salsita-ai/common/utils';
|
|
2
|
-
import type {
|
|
2
|
+
import type { CustomDataSpecEntry } from '#package/domain';
|
|
3
3
|
import { type ParseContext } from '../../../../core/index.js';
|
|
4
4
|
import type { MergedDataSpec } from '../../../merge/index.js';
|
|
5
5
|
import { type ChunkDefinition, ChunkName } from './chunks.js';
|
|
6
6
|
import { DataEntryKey } from './data-entry-key.js';
|
|
7
|
-
/** Parsed `$data.custom` entry with validated definition and normalized row values. */
|
|
8
|
-
export interface CustomDataSpecEntry {
|
|
9
|
-
/** Column/property schema for a custom data row, used by admin pages and published-data schemas. */
|
|
10
|
-
readonly definition: DataSchema;
|
|
11
|
-
/** Optional published-data chunk that receives this entry as an array property. */
|
|
12
|
-
readonly chunk?: string;
|
|
13
|
-
/** Ownership mode deciding whether data is manual, externally connected, or admin-generated. */
|
|
14
|
-
readonly kind: 'manual' | 'connected' | 'generated';
|
|
15
|
-
/** Optional human-readable label used by inferred admin pages and connected-data UI. */
|
|
16
|
-
readonly title?: string;
|
|
17
|
-
/** Optional icon name used in inferred admin navigation. */
|
|
18
|
-
readonly icon?: string;
|
|
19
|
-
/** Default rows normalized to the same column order as `definition`. */
|
|
20
|
-
readonly values?: ReadonlyArray<readonly DataCellValue[]>;
|
|
21
|
-
}
|
|
22
7
|
/**
|
|
23
8
|
* Validated `$data.custom` section.
|
|
24
9
|
* Every key is a validated data entry key, every definition field has a valid
|
package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-entry-key.d.ts
CHANGED
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { DataEntryKey as DataEntryKeyData } from '#package/domain';
|
|
2
2
|
import type { ParseContext } from '../../../../core/index.js';
|
|
3
3
|
/** `$data` subsection that owns a data entry key and determines its raw entry shape. */
|
|
4
4
|
export type DataEntrySection = 'custom' | 'swatchOptions';
|
|
5
|
-
/**
|
|
6
|
-
|
|
7
|
-
* This is the stable identifier for a data collection declared under `$data.custom`
|
|
8
|
-
* or `$data.swatchOptions`. The same key is used when extending published data,
|
|
9
|
-
* wiring connected/generated admin pages, and linking explicit admin pages through
|
|
10
|
-
* `connectedDataEntry`.
|
|
11
|
-
*/
|
|
12
|
-
export type DataEntryKey = Branded<'DataEntryKey', string>;
|
|
5
|
+
/** A validated `$data` entry key; see {@link DataEntryKeyData | DataEntryKey} in `domain`. */
|
|
6
|
+
export type DataEntryKey = DataEntryKeyData;
|
|
13
7
|
export declare const DataEntryKey: (section: DataEntrySection, key: string, ctx: ParseContext) => DataEntryKey | undefined;
|
package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-spec.d.ts
CHANGED
|
@@ -1,18 +1,9 @@
|
|
|
1
1
|
import { Branded } from '@salsita-ai/common/utils';
|
|
2
|
-
import type
|
|
2
|
+
import { type DataCellValue, type DataSchema, type ParsedDataSpecEntries } from '#package/domain';
|
|
3
3
|
import { type ParseContext } from '../../../../core/index.js';
|
|
4
4
|
import type { MergedChunks, MergedDataSpec } from '../../../merge/index.js';
|
|
5
5
|
import { Chunks } from './chunks.js';
|
|
6
|
-
import { type CustomDataSpecEntry } from './custom-data-spec.js';
|
|
7
6
|
import type { DataEntryKey } from './data-entry-key.js';
|
|
8
|
-
import { type SwatchDataSpecEntry } from './swatch-data-spec.js';
|
|
9
|
-
/** Validated `$data` entries grouped by their source section. */
|
|
10
|
-
export interface ParsedDataSpecEntries {
|
|
11
|
-
/** Custom data entries with user-declared schemas. */
|
|
12
|
-
readonly custom: Readonly<Record<DataEntryKey, CustomDataSpecEntry>>;
|
|
13
|
-
/** Swatch data entries with the built-in swatch schema. */
|
|
14
|
-
readonly swatchOptions: Readonly<Record<DataEntryKey, SwatchDataSpecEntry>>;
|
|
15
|
-
}
|
|
16
7
|
export interface DataSpecDataEntry {
|
|
17
8
|
/** Data entry identifier used as published-data property and admin page navigation state. */
|
|
18
9
|
readonly key: DataEntryKey;
|
package/dist/application-spec/parse-application-files/spec/sections/data-spec/swatch-data-spec.d.ts
CHANGED
|
@@ -1,22 +1,9 @@
|
|
|
1
1
|
import { Branded } from '@salsita-ai/common/utils';
|
|
2
|
-
import type {
|
|
2
|
+
import type { SwatchDataSpecEntry } from '#package/domain';
|
|
3
3
|
import { type ParseContext } from '../../../../core/index.js';
|
|
4
4
|
import type { MergedDataSpec } from '../../../merge/index.js';
|
|
5
5
|
import { type ChunkDefinition, ChunkName } from './chunks.js';
|
|
6
6
|
import { DataEntryKey } from './data-entry-key.js';
|
|
7
|
-
/** Parsed `$data.swatchOptions` entry using the fixed swatch data shape. */
|
|
8
|
-
export interface SwatchDataSpecEntry {
|
|
9
|
-
/** Optional published-data chunk that receives this swatch entry as an array property. */
|
|
10
|
-
readonly chunk?: string;
|
|
11
|
-
/** Ownership mode deciding whether swatches are manual, externally connected, or admin-generated. */
|
|
12
|
-
readonly kind: 'manual' | 'connected' | 'generated';
|
|
13
|
-
/** Optional human-readable label used by inferred admin pages and connected-data UI. */
|
|
14
|
-
readonly title?: string;
|
|
15
|
-
/** Optional icon name used in inferred admin navigation. */
|
|
16
|
-
readonly icon?: string;
|
|
17
|
-
/** Default swatch rows normalized to `SWATCH_DEFINITION` column order. */
|
|
18
|
-
readonly values?: ReadonlyArray<readonly CellValue[]>;
|
|
19
|
-
}
|
|
20
7
|
/**
|
|
21
8
|
* Validated `$data.swatchOptions` section.
|
|
22
9
|
* Every key is a validated data entry key and default swatch values are
|
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { StateValue as StateValueData } from '#package/domain';
|
|
2
2
|
import type { ParseContext } from '../../../core/index.js';
|
|
3
|
-
/**
|
|
4
|
-
|
|
5
|
-
* (e.g. "Default", "overview", "detailView").
|
|
6
|
-
* Used across navigation, view, tool, and export state dimensions.
|
|
7
|
-
*/
|
|
8
|
-
export type StateValue = Branded<'StateValue', string>;
|
|
3
|
+
/** A branded state value; see {@link StateValueData | StateValue} in `domain`. */
|
|
4
|
+
export type StateValue = StateValueData;
|
|
9
5
|
export declare const StateValue: (value: string, field: string, ctx: ParseContext) => StateValue | undefined;
|
|
@@ -1,12 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Theme as ThemeData } from '#package/domain';
|
|
2
2
|
import type { MergedTheme } from '../../merge/index.js';
|
|
3
|
-
/**
|
|
4
|
-
|
|
5
|
-
* Preset identifies a built-in theme from getPhoenixThemes(),
|
|
6
|
-
* options provides partial overrides passed to the theme factory.
|
|
7
|
-
*/
|
|
8
|
-
export type Theme = Branded<'Theme', {
|
|
9
|
-
readonly preset: string;
|
|
10
|
-
readonly options: Readonly<Record<string, unknown>>;
|
|
11
|
-
}>;
|
|
3
|
+
/** The validated theme configuration; see {@link ThemeData | Theme} in `domain`. */
|
|
4
|
+
export type Theme = ThemeData;
|
|
12
5
|
export declare const Theme: (merged: MergedTheme) => Theme;
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { SpecTransformers } from '#package/domain';
|
|
2
2
|
import type { ParseContext } from '../../../core/index.js';
|
|
3
|
-
import type { MergedTransformers
|
|
4
|
-
/**
|
|
5
|
-
|
|
6
|
-
* domain state transitions to enforce business rules (e.g. "fixLegsForCircleTop").
|
|
7
|
-
* Every entry's name must match a file basename in `src/transformers/`
|
|
8
|
-
* (modulo case + dashes — kebab-case files and camelCase YAML names are
|
|
9
|
-
* treated as equivalent since runtime matching happens on the `.build('name')`
|
|
10
|
-
* label, not the filename).
|
|
11
|
-
*/
|
|
12
|
-
export type Transformers = Branded<'Transformers', readonly TransformerEntry[]>;
|
|
3
|
+
import type { MergedTransformers } from '../../merge/index.js';
|
|
4
|
+
/** The validated transformer declarations; see {@link SpecTransformers} in `domain`. */
|
|
5
|
+
export type Transformers = SpecTransformers;
|
|
13
6
|
export declare const Transformers: (merged: MergedTransformers, transformerFiles: readonly string[], ctx: ParseContext) => Transformers;
|
|
@@ -1,14 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Ui as UiData } from '#package/domain';
|
|
2
2
|
import type { MergedUi } from '../../merge/index.js';
|
|
3
|
-
/**
|
|
4
|
-
|
|
5
|
-
* Controls preview behavior, expansion mode, and locale settings.
|
|
6
|
-
*/
|
|
7
|
-
export type Ui = Branded<'Ui', {
|
|
8
|
-
readonly preview?: 'always' | 'never' | 'auto' | 'hide';
|
|
9
|
-
readonly alwaysExpand?: boolean;
|
|
10
|
-
readonly appLoader?: 'legacy' | 'universal';
|
|
11
|
-
readonly availableLocales: readonly string[];
|
|
12
|
-
readonly textLanguages?: readonly string[];
|
|
13
|
-
}>;
|
|
3
|
+
/** The validated user interface configuration; see {@link UiData | Ui} in `domain`. */
|
|
4
|
+
export type Ui = UiData;
|
|
14
5
|
export declare const Ui: (merged: MergedUi) => Ui;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AccessLevel } from '@salsita-ai/contracts/api';
|
|
2
2
|
import { type ChatStreamChunk } from '@salsita-ai/contracts/chat';
|
|
3
|
-
import { type AssistantChatConnection, type AssistantEarlierThread, type AssistantThreadCompaction, type AuthorizedPhoenixApiClient, type ChatToolCall, type ChatToolCallResult, type ConfigurationPayload, type ConfigurationSchema, type waitForFinalizationResultSettings } from './contract.js';
|
|
3
|
+
import { type AssistantChatConnection, type AssistantEarlierThread, type AssistantImageUpload, type AssistantThreadCompaction, type AuthorizedPhoenixApiClient, type ChatToolCall, type ChatToolCallResult, type ConfigurationPayload, type ConfigurationSchema, type waitForFinalizationResultSettings } from './contract.js';
|
|
4
4
|
import type { components } from './phoenix-api.js';
|
|
5
5
|
export declare class AuthorizedClient<FINALIZE_DATA extends Record<string, unknown>, FINALIZE_RESULT extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>> implements AuthorizedPhoenixApiClient<FINALIZE_DATA, FINALIZE_RESULT, FRONTEND_DATA> {
|
|
6
6
|
private readonly _baseUrl;
|
|
@@ -27,7 +27,9 @@ export declare class AuthorizedClient<FINALIZE_DATA extends Record<string, unkno
|
|
|
27
27
|
getTextToSpeech: (configurationId: string, content: string) => Promise<Blob>;
|
|
28
28
|
getAssistantChatConnection: (configurationId: string) => AssistantChatConnection;
|
|
29
29
|
compactAssistantThread: (configurationId: string) => Promise<AssistantThreadCompaction>;
|
|
30
|
-
getAssistantEarlierThread: (configurationId: string, threadId: string, limit
|
|
30
|
+
getAssistantEarlierThread: (configurationId: string, threadId: string, limit?: number) => Promise<AssistantEarlierThread>;
|
|
31
|
+
uploadAssistantImage: (configurationId: string, image: Blob) => Promise<AssistantImageUpload>;
|
|
32
|
+
getAssistantImage: (configurationId: string, imageId: string) => Promise<Blob>;
|
|
31
33
|
sendMessage: (configurationId: string, content: string, context?: Record<string, string>) => Promise<ReadableStream<ChatStreamChunk>>;
|
|
32
34
|
sendToolCallResults: (configurationId: string, calls: ChatToolCall[], results: ChatToolCallResult[], agent?: string) => Promise<ReadableStream<ChatStreamChunk>>;
|
|
33
35
|
generateShareLink: (configurationId: string, revisionId: string, expiration: number, access: AccessLevel, baseUrl: string | undefined) => Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{match as t}from"ts-pattern";import{InfoError as a}from"@salsita-ai/common/utils";import{isChatError as e}from"@salsita-ai/contracts/chat";import{createApiBaseClient as r}from"./base-client.js";import{AssistantRequestError as i,InvalidAccessKeyError as
|
|
1
|
+
import{match as t}from"ts-pattern";import{InfoError as a}from"@salsita-ai/common/utils";import{isChatError as e}from"@salsita-ai/contracts/chat";import{createApiBaseClient as r}from"./base-client.js";import{AssistantRequestError as i,InvalidAccessKeyError as s}from"./contract.js";let o=()=>new TransformStream({transform(t,a){a.enqueue(t)}}),n=async(t,a)=>{for(;;){let{done:r,value:i}=await t.read();if(r){await a.close();break}for(let t of i.split("\n").filter(t=>""!==t.trim()).map(t=>JSON.parse(t))){if(e(t))return void await a.abort(Error(t.error));await a.write(t)}}},h=(e,r)=>{let i=`${r} API request failed: ${JSON.stringify(e)}`;return t(e).with({statusCode:403,invalidAccessKey:!0},()=>new s).with({statusCode:403},()=>new a(i)).otherwise(()=>Error(i))};export class AuthorizedClient{_baseUrl;_getAccessToken;_getSessionToken;_client;constructor(t,a,e){this._baseUrl=t,this._getAccessToken=a,this._getSessionToken=e,this._client=r(this._baseUrl)}_authHeaders=async()=>{let t=this._getAccessToken(),a=await this._getSessionToken();return{"X-Access-Key":t,Authorization:`Bearer ${a}`}};getConfiguration=async t=>{let a=await this._authHeaders(),e=await this._client.GET("/configurations/{configurationId}",{params:{path:{configurationId:t}},headers:a});if(e.error)throw h(e.error,"getConfiguration");return e.data};updateConfiguration=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.PUT("/configurations/{configurationId}",{params:{path:{configurationId:t}},body:a,headers:e});if(r.error)throw h(r.error,"updateConfiguration");return r.data};finalize=async(t,a,e,r,i)=>{let s=await this._authHeaders(),o=await this._client.POST("/configurations/{configurationId}/{finalizationUuid}/finalize",{params:{path:{configurationId:t,finalizationUuid:a},query:{locale:r}},body:{finalizeData:e,frontendData:i},headers:s});if(o.error)throw h(o.error,"finalize")};waitForFinalizationToComplete=async(t,a,e)=>{let r=e?.pollingFrequency??500,i=Math.ceil((e?.pollingTimeout??3e4)/r);for(let e=0;e<i;e++){let e=await this._authHeaders(),i=await this._client.GET("/configurations/{configurationId}/{finalizationUuid}/state",{params:{path:{configurationId:t,finalizationUuid:a}},headers:e});if(i.error)throw h(i.error,"getFinalizeJobState");let s=i.data;if("completed"===s.state)return s.result[0];if("failed"===s.state)throw Error("finalization failed");if("unknown"===s.state)throw Error("finalization state is unknown");await new Promise(t=>setTimeout(t,r))}throw Error("finalization did not complete within the specified timeout")};getConfigurationRevision=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.GET("/configurations/{configurationId}/revisions/{revisionId}",{params:{path:{configurationId:t,revisionId:a}},headers:e});if(r.error)throw h(r.error,"getConfigurationRevision");return r.data};getChatConversation=async t=>{let a=await this._authHeaders(),e=await this._client.GET("/configurations/{configurationId}/chat",{params:{path:{configurationId:t}},headers:a});if(e.error)throw h(e.error,"getChatConversation");return e.data};getSpeechToText=async(t,a)=>{let e=await this._authHeaders(),r=new FormData;r.append("voiceFile",a,"voice.wav");let i=await this._client.POST("/configurations/{configurationId}/chat/stt",{params:{path:{configurationId:t}},headers:e,body:r,bodySerializer:()=>r});if(i.error)throw h(i.error,"getSpeechToText");return i.data.text};getTextToSpeech=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.POST("/configurations/{configurationId}/chat/tts",{params:{path:{configurationId:t}},body:{content:a},headers:e,parseAs:"arrayBuffer"});if(r.error)throw h(r.error,"getTextToSpeech");return new Blob([r.data],{type:"audio/mp3"})};getAssistantChatConnection=t=>({url:new URL(`configurations/${encodeURIComponent(t)}/assistant/chat`,`${this._baseUrl}/`).toString(),headers:this._authHeaders});compactAssistantThread=async t=>{let a=await this._authHeaders(),e=await this._client.POST("/configurations/{configurationId}/assistant/chat/compact",{params:{path:{configurationId:t}},headers:{...a,"Content-Type":null}});if(e.error)throw new i(`compactAssistantThread API request failed: ${JSON.stringify(e.error)}`,e.response.status,!1,"true"===e.response.headers.get("x-assistant-locked"));return e.data};getAssistantEarlierThread=async(t,a,e)=>{let r=await this._authHeaders(),s=await this._client.GET("/configurations/{configurationId}/assistant/chat/threads/{threadId}",{params:{path:{configurationId:t,threadId:a},query:{limit:e}},headers:r});if(s.error)throw new i(`getAssistantEarlierThread API request failed: ${JSON.stringify(s.error)}`,s.response.status);let{messages:o}=s.data;return{threadId:a,messages:Array.isArray(o)?o:[],previousThreadId:s.response.headers.get("x-assistant-previous-thread")}};uploadAssistantImage=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.POST("/configurations/{configurationId}/assistant/images",{params:{path:{configurationId:t}},headers:{...e,"Content-Type":a.type},body:a.type,bodySerializer:()=>a});if(r.error)throw new i(`uploadAssistantImage API request failed: ${JSON.stringify(r.error)}`,r.response.status,"false"===r.response.headers.get("x-assistant-thread-continuable"));return{imageId:r.data.imageId}};getAssistantImage=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.GET("/configurations/{configurationId}/assistant/images/{imageId}",{params:{path:{configurationId:t,imageId:a}},headers:e,parseAs:"blob"});if(r.error)throw new i(`getAssistantImage API request failed: ${JSON.stringify(r.error)}`,r.response.status);return r.data};sendMessage=async(t,a,e)=>{let r=await this._authHeaders(),i=await this._client.POST("/configurations/{configurationId}/chat/message",{params:{path:{configurationId:t}},body:{content:a,context:e},headers:r,parseAs:"stream"});if(i.error)throw h(i.error,"sendMessage");let s=i.data?.pipeThrough(new TextDecoderStream).getReader();if(!s)throw Error("sendMessage API response did not contain a readable stream");let u=o();return n(s,u.writable.getWriter()),u.readable};sendToolCallResults=async(t,a,e,r)=>{let i=await this._authHeaders(),s=await this._client.POST("/configurations/{configurationId}/chat/tool-calls",{params:{path:{configurationId:t}},body:{agent:r,calls:a,results:e},headers:i,parseAs:"stream"});if(s.error)throw h(s.error,"sendToolCallResults");let u=s.data?.pipeThrough(new TextDecoderStream).getReader();if(!u)throw Error("sendMessage API response did not contain a readable stream");let d=o();return n(u,d.writable.getWriter()),d.readable};generateShareLink=async(t,a,e,r,i)=>{let s=await this._authHeaders(),o=await this._client.POST("/configurations/{configurationId}/share-link",{params:{path:{configurationId:t}},body:{revisionId:a,expiration:e,access:r,baseUrl:i},headers:s});if(o.error)throw h(o.error,"generateShareLink");return o.data};generateUploadLinks=async(t,a,e)=>{let r=await this._authHeaders(),i=await this._client.POST("/configurations/{configurationId}/{finalizationUuid}/image-upload-links",{params:{path:{configurationId:t,finalizationUuid:a}},body:{names:e},headers:r});if(i.error)throw h(i.error,"generateUploadLinks");return i.data.links};getConfigurationPublicUploadLink=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.GET("/configurations/{configurationId}/resources/{key}/public/upload",{params:{path:{configurationId:t,key:a}},headers:e});if(r.error)throw h(r.error,"getConfigurationPublicUploadLink");return r.data};getConfigurationPrivateUploadLink=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.GET("/configurations/{configurationId}/resources/{key}/private/upload",{params:{path:{configurationId:t,key:a}},headers:e});if(r.error)throw h(r.error,"getConfigurationPrivateUploadLink");return r.data};getConfigurationPrivateResourceLink=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.GET("/configurations/{configurationId}/resources/{key}/private",{params:{path:{configurationId:t,key:a}},headers:e});if(r.error)throw h(r.error,"getConfigurationPrivateUploadLink");return r.data};cloneConfiguration=async(t,a)=>{let e=await this._authHeaders(),r=await this._client.POST("/configurations/{configurationId}/revisions/{revisionId}/clone",{params:{path:{configurationId:t,revisionId:a}},headers:{...e,"Content-Type":null}});if(r.error)throw h(r.error,"cloneConfiguration");return r.data}}
|
|
@@ -92,14 +92,30 @@ export interface AuthorizedPhoenixApiClient<FINALIZE_DATA extends Record<string,
|
|
|
92
92
|
/**
|
|
93
93
|
* Continues the assistant thread of the configuration, which the server no longer lets this session
|
|
94
94
|
* continue, in a new thread that starts from a summary of it. Rejects with an
|
|
95
|
-
* {@link AssistantRequestError} when the server refuses
|
|
95
|
+
* {@link AssistantRequestError} when the server refuses, marked `locked` when the assistant banned the user on the
|
|
96
|
+
* configuration.
|
|
96
97
|
*/
|
|
97
98
|
compactAssistantThread: (configurationId: string) => Promise<AssistantThreadCompaction>;
|
|
98
99
|
/**
|
|
99
|
-
* Reads a closed assistant thread of the configuration that a later thread continues
|
|
100
|
-
* `limit` of its newest messages
|
|
100
|
+
* Reads a closed assistant thread of the configuration that a later thread continues: at most
|
|
101
|
+
* `limit` of its newest messages, or all of them without a limit. Rejects with an
|
|
102
|
+
* {@link AssistantRequestError} when the server refuses.
|
|
103
|
+
*/
|
|
104
|
+
getAssistantEarlierThread: (configurationId: string, threadId: string, limit?: number) => Promise<AssistantEarlierThread>;
|
|
105
|
+
/**
|
|
106
|
+
* Stores an image in the assistant thread of the configuration, creating the thread when there is
|
|
107
|
+
* none yet: a screenshot the assistant took while a reply runs there, or an image the user attaches
|
|
108
|
+
* to their next message. Resolves with the id a tool result or a message references it by. The
|
|
109
|
+
* image is a JPEG or PNG blob of at most 2 MB, sent with its own type. Rejects with an
|
|
110
|
+
* {@link AssistantRequestError} when the server refuses, marked `threadNotContinuable` when the
|
|
111
|
+
* thread can take no new message until it is compacted.
|
|
101
112
|
*/
|
|
102
|
-
|
|
113
|
+
uploadAssistantImage: (configurationId: string, image: Blob) => Promise<AssistantImageUpload>;
|
|
114
|
+
/**
|
|
115
|
+
* Reads a screenshot of an assistant thread of the configuration by the id its tool result
|
|
116
|
+
* references it by. Rejects with an {@link AssistantRequestError} when the server refuses.
|
|
117
|
+
*/
|
|
118
|
+
getAssistantImage: (configurationId: string, imageId: string) => Promise<Blob>;
|
|
103
119
|
getSpeechToText: (configurationId: string, blob: Blob) => Promise<string>;
|
|
104
120
|
getTextToSpeech: (configurationId: string, text: string) => Promise<Blob>;
|
|
105
121
|
sendMessage: (configurationId: string, message: string, state?: Record<string, string>) => Promise<ReadableStream<ChatStreamChunk>>;
|
|
@@ -137,6 +153,11 @@ export interface AssistantThreadCompaction {
|
|
|
137
153
|
/** The closed thread the new one continues. */
|
|
138
154
|
readonly previousThreadId: string;
|
|
139
155
|
}
|
|
156
|
+
/** A screenshot stored in an assistant thread. */
|
|
157
|
+
export interface AssistantImageUpload {
|
|
158
|
+
/** The id a tool result references the image by, as `assistant-image:<imageId>`. */
|
|
159
|
+
readonly imageId: string;
|
|
160
|
+
}
|
|
140
161
|
/** A closed assistant thread, as the panel paints it above the thread that continues it. */
|
|
141
162
|
export interface AssistantEarlierThread {
|
|
142
163
|
readonly threadId: string;
|
|
@@ -148,9 +169,29 @@ export interface AssistantEarlierThread {
|
|
|
148
169
|
export declare class AssistantRequestError extends Error {
|
|
149
170
|
/** The HTTP status of the answer, which tells a refusal from an outage. */
|
|
150
171
|
readonly status: number;
|
|
172
|
+
/**
|
|
173
|
+
* True when the server refused because the thread cannot be continued until it is compacted, as
|
|
174
|
+
* its `x-assistant-thread-continuable: false` response header says.
|
|
175
|
+
*/
|
|
176
|
+
readonly threadNotContinuable: boolean;
|
|
177
|
+
/**
|
|
178
|
+
* True when the server refused because the assistant banned the user on the configuration, as its
|
|
179
|
+
* `x-assistant-locked: true` response header says.
|
|
180
|
+
*/
|
|
181
|
+
readonly locked: boolean;
|
|
151
182
|
constructor(message: string,
|
|
152
183
|
/** The HTTP status of the answer, which tells a refusal from an outage. */
|
|
153
|
-
status: number
|
|
184
|
+
status: number,
|
|
185
|
+
/**
|
|
186
|
+
* True when the server refused because the thread cannot be continued until it is compacted, as
|
|
187
|
+
* its `x-assistant-thread-continuable: false` response header says.
|
|
188
|
+
*/
|
|
189
|
+
threadNotContinuable?: boolean,
|
|
190
|
+
/**
|
|
191
|
+
* True when the server refused because the assistant banned the user on the configuration, as its
|
|
192
|
+
* `x-assistant-locked: true` response header says.
|
|
193
|
+
*/
|
|
194
|
+
locked?: boolean);
|
|
154
195
|
}
|
|
155
196
|
export declare class InvalidDeploymentError extends Error {
|
|
156
197
|
constructor();
|
package/dist/client/contract.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export class AssistantRequestError extends Error{status;constructor(e,r){super(e),this.status=r,this.name="AssistantRequestError"}}export class InvalidDeploymentError extends Error{constructor(){super(),this.name="InvalidDeployment",this.message="The referenced deployment is invalid."}}export class InvalidAccessKeyError extends Error{constructor(){super("The access token is no longer valid because it expired or the server rejected it. Open the configuration from a fresh link."),this.name="InvalidAccessKey"}}export class ChunkNotFoundError extends Error{chunkKey;constructor(e){super(`Published chunk "${e}" not found`),this.chunkKey=e,this.name="ChunkNotFound"}}export class OAuthStaleConnectionError extends Error{constructor(){super("OAuth connection is stale"),this.name="OAuthStaleConnectionError"}}export class ConfigurationSchemaMismatchError extends Error{details;constructor(e){super("Preset data does not match the configuration schema registered on the server. Why: the preset/demo entity data was changed without re-registering the schema, or the schema drifted. Fix: re-register/redeploy the domain schema, or update the preset data to match the current schema."),this.details=e,this.name="ConfigurationSchemaMismatchError"}}export const isConfigurationSchemaMismatchError=e=>e instanceof ConfigurationSchemaMismatchError;
|
|
1
|
+
export class AssistantRequestError extends Error{status;threadNotContinuable;locked;constructor(e,t,r=!1,s=!1){super(e),this.status=t,this.threadNotContinuable=r,this.locked=s,this.name="AssistantRequestError"}}export class InvalidDeploymentError extends Error{constructor(){super(),this.name="InvalidDeployment",this.message="The referenced deployment is invalid."}}export class InvalidAccessKeyError extends Error{constructor(){super("The access token is no longer valid because it expired or the server rejected it. Open the configuration from a fresh link."),this.name="InvalidAccessKey"}}export class ChunkNotFoundError extends Error{chunkKey;constructor(e){super(`Published chunk "${e}" not found`),this.chunkKey=e,this.name="ChunkNotFound"}}export class OAuthStaleConnectionError extends Error{constructor(){super("OAuth connection is stale"),this.name="OAuthStaleConnectionError"}}export class ConfigurationSchemaMismatchError extends Error{details;constructor(e){super("Preset data does not match the configuration schema registered on the server. Why: the preset/demo entity data was changed without re-registering the schema, or the schema drifted. Fix: re-register/redeploy the domain schema, or update the preset data to match the current schema."),this.details=e,this.name="ConfigurationSchemaMismatchError"}}export const isConfigurationSchemaMismatchError=e=>e instanceof ConfigurationSchemaMismatchError;
|
package/dist/client/index.d.ts
CHANGED
|
@@ -9,5 +9,5 @@ export { MemoryAuthorizedPhoenixApiClient } from './memory-authorized-client.js'
|
|
|
9
9
|
export { MemoryAuthenticatedClientPhoenixApiClient, memoryStorage } from './memory-authenticated-client.js';
|
|
10
10
|
export { createUnsignedJWT } from './unsigned-jwt.js';
|
|
11
11
|
export type { components as ApiTypes } from './phoenix-api.js';
|
|
12
|
-
export type { ConfigurationPayload, ConfigurationSchema, ChatConfiguration, ChatConversation, ChatEmbedding, ChatMessageParam, ChatToolCallResult, Entity, UnauthenticatedPhoenixApiClient, AuthenticatedClientPhoenixApiClient, AuthorizedPhoenixApiClient, AssistantChatConnection, AssistantEarlierThread, AssistantThreadCompaction, OAuthProvider, OAuthAccessTokenResult, GoogleOAuthConfig, ReleaseToProductionResult, SharePointSiteConfig, } from './contract.js';
|
|
12
|
+
export type { ConfigurationPayload, ConfigurationSchema, ChatConfiguration, ChatConversation, ChatEmbedding, ChatMessageParam, ChatToolCallResult, Entity, UnauthenticatedPhoenixApiClient, AuthenticatedClientPhoenixApiClient, AuthorizedPhoenixApiClient, AssistantChatConnection, AssistantEarlierThread, AssistantImageUpload, AssistantThreadCompaction, OAuthProvider, OAuthAccessTokenResult, GoogleOAuthConfig, ReleaseToProductionResult, SharePointSiteConfig, } from './contract.js';
|
|
13
13
|
export { AssistantRequestError, InvalidAccessKeyError, InvalidDeploymentError, ChunkNotFoundError, OAuthStaleConnectionError, ConfigurationSchemaMismatchError, isConfigurationSchemaMismatchError, } from './contract.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ChatMessageContentChunk, ChatToolCalls } from '@salsita-ai/contracts/chat';
|
|
2
|
-
import type { AssistantChatConnection, AssistantEarlierThread, AssistantThreadCompaction, AuthorizedPhoenixApiClient, ConfigurationPayload, ConfigurationSchema } from './contract.js';
|
|
2
|
+
import type { AssistantChatConnection, AssistantEarlierThread, AssistantImageUpload, AssistantThreadCompaction, AuthorizedPhoenixApiClient, ConfigurationPayload, ConfigurationSchema } from './contract.js';
|
|
3
3
|
import { LocalStorageAuthenticatedClientPhoenixApiClient } from './local-authenticated-client.js';
|
|
4
4
|
/**
|
|
5
5
|
* Local storage implementation for local dev, it does not check for schema changes, so you may need to create new configuration if the schema changes and
|
|
@@ -17,6 +17,8 @@ export declare class LocalStorageAuthorizedPhoenixApiClient<FINALIZE_DATA extend
|
|
|
17
17
|
getAssistantChatConnection: () => AssistantChatConnection;
|
|
18
18
|
compactAssistantThread: () => Promise<AssistantThreadCompaction>;
|
|
19
19
|
getAssistantEarlierThread: () => Promise<AssistantEarlierThread>;
|
|
20
|
+
uploadAssistantImage: () => Promise<AssistantImageUpload>;
|
|
21
|
+
getAssistantImage: () => Promise<Blob>;
|
|
20
22
|
getChatConversation: (configurationId: string) => Promise<readonly {
|
|
21
23
|
readonly augmentation?: import("./phoenix-api.js").components['schemas']['ChatMessageAugmentation'];
|
|
22
24
|
readonly content?: string;
|