@salsita-ai/sdk 0.50.0-develop.f6390cb584 → 0.50.0-develop.f9cd9b3a12
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/dist/application-spec/errors/diagnostic-codes.d.ts +9 -0
- package/dist/application-spec/errors/diagnostic-codes.js +1 -1
- package/dist/application-spec/errors/diagnostic-messages.d.ts +10 -1
- package/dist/application-spec/errors/diagnostic-messages.js +1 -1
- package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
- package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
- package/dist/application-spec/generate-application/code/templates/common/doc-comment.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/common/doc-comment.js +1 -0
- package/dist/application-spec/generate-application/code/templates/configurator-globals.d.ts +2 -1
- package/dist/application-spec/generate-application/code/templates/configurator-globals.js +19 -6
- package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
- package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
- package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
- package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +24 -22
- package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
- package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +13 -6
- package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +2 -2
- package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +33 -3
- package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
- package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
- package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
- package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +4 -1
- package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
- package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +4 -3
- 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 +33 -7
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
- package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
- package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
- package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
- package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +14 -1
- 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 +45 -4
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
- 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 +1 -1
- package/dist/configurator/common/configurator-interface.d.ts +38 -2
- package/dist/configurator/common/configurator-interface.js +1 -1
- package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +3 -3
- package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -1
- package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
- package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +4 -0
- package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +1 -1
- package/dist/configurator/pages/default-configurator-elements.d.ts +3 -2
- package/dist/configurator/pages/default-configurator-elements.js +1 -1
- package/dist/configurator/pages/default-elements/index.d.ts +1 -0
- package/dist/configurator/pages/default-elements/index.js +1 -1
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
- package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
- package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
- package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
- package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
- package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
- package/dist/configurator/scene/index.d.ts +1 -0
- package/dist/configurator/scene/index.js +1 -1
- package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
- package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
- package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
- package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
- package/dist/configurator/toolbar-actions/index.d.ts +1 -0
- package/dist/configurator/toolbar-actions/index.js +1 -1
- package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
- package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
- package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
- package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
- package/dist/configurator/ui/assistant/AssistantChips.d.ts +3 -2
- package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
- package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +1 -1
- package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
- package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
- package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
- package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
- package/dist/configurator/ui/assistant/alert/index.js +1 -0
- package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
- package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
- package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -1
- package/dist/configurator/ui/assistant/form/compose-answer.d.ts +1 -1
- package/dist/configurator/ui/assistant/form/compose-answer.js +1 -1
- package/dist/configurator/ui/assistant/form/form-model.d.ts +3 -4
- package/dist/configurator/ui/assistant/form/form-state.d.ts +1 -1
- package/dist/configurator/ui/assistant/form/index.d.ts +2 -0
- package/dist/configurator/ui/assistant/form/index.js +1 -1
- package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +3 -2
- package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -1
- package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +1 -1
- package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -1
- package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
- package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
- package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
- package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
- package/dist/configurator/ui/assistant/form/{form-element-definition.d.ts → registry/form-element-definition.d.ts} +3 -1
- package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
- package/dist/configurator/ui/assistant/form/{form-registry.d.ts → registry/form-registry.d.ts} +2 -2
- package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
- package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
- package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
- package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
- package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
- package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
- package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +4 -1
- package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
- package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +4 -1
- package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +4 -1
- package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -1
- package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
- package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +4 -1
- package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -1
- package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
- package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +20 -16
- package/dist/configurator/ui/assistant/form-elements/index.d.ts +4 -0
- package/dist/configurator/ui/assistant/form-elements/index.js +1 -1
- package/dist/configurator/ui/assistant/index.d.ts +3 -0
- package/dist/configurator/ui/assistant/index.js +1 -1
- package/dist/configurator/ui/assistant/resource-image/index.d.ts +1 -1
- package/dist/configurator/ui/assistant/resource-image/index.js +1 -1
- package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +0 -9
- package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -1
- package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
- package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
- package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
- package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
- package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +14 -0
- package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
- package/dist/configurator/ui/assistant/streamed-markdown.d.ts +2 -2
- package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
- package/dist/configurator/ui/assistant/tool-chip.js +1 -1
- package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
- package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
- package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
- package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -1
- package/dist/configurator/ui/index.d.ts +1 -0
- package/dist/configurator/ui/index.js +1 -1
- package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -1
- package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
- package/dist/docs/fabs/basic.mdx +4 -0
- package/dist/docs/index.json +62 -1
- package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
- package/dist/docs/layouts/custom-layout.mdx +320 -158
- package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
- package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
- package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
- package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
- package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
- package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
- package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
- package/dist/docs/phoenix/configurator-interface.mdx +68 -11
- package/dist/docs/phoenix/sdk-builder-workflow.mdx +1 -1
- package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
- package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
- package/dist/domain/application/assistant/assistant-manifest.d.ts +16 -1
- package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +8 -1
- package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
- package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
- package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
- package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
- package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
- package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
- package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
- package/dist/domain/application/assistant/form/index.d.ts +4 -0
- package/dist/domain/application/assistant/form/index.js +1 -0
- package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
- package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
- package/dist/domain/application/assistant/index.d.ts +2 -3
- package/dist/domain/application/assistant/index.js +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 +2 -0
- package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -1
- package/dist/domain/application/web-component-property.d.ts +3 -1
- package/dist/domain/application/web-component-property.js +1 -1
- package/dist/domain/available-system-components.d.ts +1 -1
- package/dist/domain/available-system-components.js +1 -1
- package/dist/domain/domain-context/store-system/store-system.d.ts +5 -0
- package/dist/domain/domain-context/store-system/store-system.js +1 -1
- package/dist/domain/domain-runtime/domain-context/selectors.d.ts +1 -0
- package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
- package/dist/domain/domain-runtime/domain-runtime.d.ts +8 -0
- package/dist/domain/domain-runtime/environment/types.d.ts +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/element-registration.d.ts +15 -1
- package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -1
- package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
- package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
- package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +2 -1
- package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
- package/dist/domain/domain-runtime/spec/selectors.d.ts +3 -1
- package/dist/domain/domain-runtime/spec/selectors.js +1 -1
- package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
- package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
- package/dist/domain/extensions/{client-side-image.d.ts → export-images/client-side-image.d.ts} +2 -2
- package/dist/domain/extensions/export-images/client-side-image.js +1 -0
- package/dist/domain/extensions/export-images/index.d.ts +3 -0
- package/dist/domain/extensions/export-images/index.js +1 -0
- package/dist/domain/extensions/{save-template-thumbnail.d.ts → export-images/save-template-thumbnail.d.ts} +2 -2
- package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
- package/dist/domain/extensions/index.d.ts +1 -2
- package/dist/domain/extensions/index.js +1 -1
- package/dist/domain/mocks/create-mock-domain-runtime.d.ts +4 -0
- package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
- package/dist/editor/domain-editors/apply-spec-update.d.ts +8 -1
- package/dist/editor/domain-editors/apply-spec-update.js +1 -1
- package/dist/editor/domain-editors/use-implementation-files.js +1 -1
- package/dist/editor/screenshot/ScreenshotHandler.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/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 +16 -0
- package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
- package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
- package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
- package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
- package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +11 -5
- package/dist/react-sdk/application-runtime/hooks/index.d.ts +1 -0
- package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
- package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
- package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
- package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +5 -0
- package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
- package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
- package/dist/react-sdk/application-runtime/index.d.ts +1 -0
- package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
- package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
- package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
- package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
- package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
- package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
- package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
- package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
- package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
- package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
- package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
- package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
- package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
- package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
- package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
- package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
- package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
- package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +95 -2
- package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
- package/dist/react-sdk/domain-context/common-hooks/index.d.ts +1 -0
- package/dist/react-sdk/domain-context/common-hooks/index.js +1 -1
- package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
- package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
- package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +1 -0
- package/dist/react-sdk/domain-context/index.d.ts +1 -0
- package/dist/react-sdk/domain-context/index.js +1 -1
- package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -1
- package/dist/react-sdk/index.d.ts +1 -1
- package/dist/react-sdk/index.js +1 -1
- package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
- package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
- package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
- package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
- package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
- package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
- package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
- package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
- package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
- package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
- package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
- package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
- package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
- package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
- package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
- package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
- package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
- package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
- package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
- package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
- package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
- package/dist/react-sdk/scene-control-elements/index.js +1 -0
- package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
- package/dist/react-sdk/web-component/create-web-component.js +1 -1
- package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
- package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
- package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
- package/dist/react-sdk/web-component/god-mode/index.js +1 -0
- package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
- package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
- package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
- package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
- package/dist/ui-sdk/icons/__generated/index.d.ts +4 -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/responsive-application/ResponsiveApplicationProvider.d.ts +2 -2
- package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +11 -9
- package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -1
- package/dist/ui-sdk/theme/types.d.ts +5 -1
- package/package.json +13 -3
- package/schema/domain-spec.json +140 -0
- package/dist/configurator/ui/assistant/form/built-in-form-registry.d.ts +0 -10
- package/dist/configurator/ui/assistant/form/built-in-form-registry.js +0 -1
- package/dist/configurator/ui/assistant/form/form-registry.js +0 -8
- package/dist/domain/application/assistant/assistant-form-elements.d.ts +0 -28
- package/dist/domain/application/assistant/assistant-form-elements.js +0 -1
- package/dist/domain/extensions/client-side-image.js +0 -1
- package/dist/domain/extensions/save-template-thumbnail.js +0 -1
- package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
- package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
- package/dist/react-sdk/responsive-state/ResponsiveStateProvider.d.ts +0 -25
- package/dist/react-sdk/responsive-state/ResponsiveStateProvider.js +0 -1
- package/dist/react-sdk/responsive-state/canvas-padding.d.ts +0 -14
- package/dist/react-sdk/responsive-state/index.d.ts +0 -5
- package/dist/react-sdk/responsive-state/index.js +0 -1
- package/dist/react-sdk/responsive-state/responsive-state-manager.d.ts +0 -111
- package/dist/react-sdk/responsive-state/responsive-state-manager.js +0 -1
- package/dist/react-sdk/responsive-state/use-responsive-state-manager.d.ts +0 -10
- package/dist/react-sdk/responsive-state/use-responsive-state-manager.js +0 -1
- package/dist/react-sdk/responsive-state/use-responsive-state.d.ts +0 -11
- package/dist/react-sdk/responsive-state/use-responsive-state.js +0 -1
- /package/dist/{configurator/ui/assistant/form/form-element-definition.js → react-sdk/application-runtime/responsive/types.js} +0 -0
- /package/dist/react-sdk/{responsive-state/canvas-padding.js → scene-control-elements/scene-control-tooltip-visibility.js} +0 -0
|
@@ -2,11 +2,13 @@ import { BehaviorSubject } from 'rxjs';
|
|
|
2
2
|
import { type AnyApplicationConfig, type DomainRuntimeState, type WebComponentOptions } from '#package/domain';
|
|
3
3
|
import { type AnyApplicationRuntimeExtension, type DomainApplicationContextSelectors } from '../domain-application-context/index.js';
|
|
4
4
|
import { type IntegrationState } from '../integration/index.js';
|
|
5
|
+
import { type ResponsiveRuntimeState } from '../responsive/index.js';
|
|
5
6
|
import { type RoutingRuntimeState } from '../routing/index.js';
|
|
6
7
|
import { type ApplicationSessionRuntime, SessionService } from '../session/index.js';
|
|
7
8
|
import type { WebComponentApi } from '../web-component/index.js';
|
|
8
9
|
export interface ApplicationRuntimeState extends DomainRuntimeState {
|
|
9
10
|
readonly integration: IntegrationState;
|
|
11
|
+
readonly responsive: ResponsiveRuntimeState;
|
|
10
12
|
readonly routing: RoutingRuntimeState;
|
|
11
13
|
readonly session: ApplicationSessionRuntime;
|
|
12
14
|
}
|
|
@@ -48,6 +50,7 @@ export declare function createApplicationRuntimeSlices<State extends Application
|
|
|
48
50
|
webComponent: import("#package/domain").ApplicationWebComponentState;
|
|
49
51
|
domainContext: import("#package/domain").ApplicationDomainContextState;
|
|
50
52
|
integration: IntegrationState;
|
|
53
|
+
responsive: ResponsiveRuntimeState;
|
|
51
54
|
routing: RoutingRuntimeState;
|
|
52
55
|
session: ApplicationSessionRuntime;
|
|
53
56
|
};
|
|
@@ -93,6 +96,7 @@ export declare function createApplicationRuntimeSlices<State extends Application
|
|
|
93
96
|
selectElementSlots: import("@salsita-ai/common/utils").Selector<import("#package/domain").SpecSelectorState, {
|
|
94
97
|
entityElements: Record<string, (props: import("#package/domain").CustomPhoenixEntityElementProps) => JSX.Element>;
|
|
95
98
|
layoutElements: Record<string, (props: import("react").PropsWithChildren) => JSX.Element>;
|
|
99
|
+
assistantFormElements: Record<string, import("react").ComponentType<never>>;
|
|
96
100
|
hashes: Record<string, string>;
|
|
97
101
|
}>;
|
|
98
102
|
selectDataConfig: import("@salsita-ai/common/utils").Selector<import("#package/domain").SpecSelectorState, import("#package/domain").DataSpec | null>;
|
|
@@ -136,6 +140,7 @@ export declare function createApplicationRuntimeSlices<State extends Application
|
|
|
136
140
|
getElementSlots: () => {
|
|
137
141
|
entityElements: Record<string, (props: import("#package/domain").CustomPhoenixEntityElementProps) => JSX.Element>;
|
|
138
142
|
layoutElements: Record<string, (props: import("react").PropsWithChildren) => JSX.Element>;
|
|
143
|
+
assistantFormElements: Record<string, import("react").ComponentType<never>>;
|
|
139
144
|
hashes: Record<string, string>;
|
|
140
145
|
};
|
|
141
146
|
getDataConfig: () => import("#package/domain").DataSpec | null;
|
|
@@ -422,6 +427,7 @@ export declare function createApplicationRuntimeSlices<State extends Application
|
|
|
422
427
|
getMigrate: () => import("#package/domain").MigrateFunction<import("#package/domain").DomainEntity<string>>;
|
|
423
428
|
getActiveMode: () => import("#package/domain").DomainMode;
|
|
424
429
|
getIsInitialized: () => boolean;
|
|
430
|
+
getIsViewMode: () => boolean;
|
|
425
431
|
getComponentReaderIndexes: () => import("#package/domain").ComponentReaderIndexes;
|
|
426
432
|
getStoreRuntimeDependencies: () => {
|
|
427
433
|
componentReaderIndexes: import("#package/domain").ComponentReaderIndexes;
|
|
@@ -531,6 +537,7 @@ export declare function createApplicationRuntimeSlices<State extends Application
|
|
|
531
537
|
getMigrate: () => import("#package/domain").MigrateFunction<import("#package/domain").DomainEntity<string>>;
|
|
532
538
|
getActiveMode: () => import("#package/domain").DomainMode;
|
|
533
539
|
getIsInitialized: () => boolean;
|
|
540
|
+
getIsViewMode: () => boolean;
|
|
534
541
|
getComponentReaderIndexes: () => import("#package/domain").ComponentReaderIndexes;
|
|
535
542
|
getStoreRuntimeDependencies: () => {
|
|
536
543
|
componentReaderIndexes: import("#package/domain").ComponentReaderIndexes;
|
|
@@ -596,7 +603,6 @@ export declare function createApplicationRuntimeSlices<State extends Application
|
|
|
596
603
|
getUnauthenticatedClient: () => import("../../../client/contract.js").UnauthenticatedPhoenixApiClient;
|
|
597
604
|
};
|
|
598
605
|
integration: {
|
|
599
|
-
selectAdminIntegrationService: import("@salsita-ai/common/utils").Selector<import("../index.js").IntegrationSelectorState, import("../index.js").AdminIntegrationService>;
|
|
600
606
|
selectIntegrationState: import("@salsita-ai/common/utils").Selector<import("../index.js").IntegrationSelectorState, IntegrationState>;
|
|
601
607
|
selectEmbeddedView: import("@salsita-ai/common/utils").Selector<import("../index.js").IntegrationSelectorState, import("../index.js").EmbeddedView>;
|
|
602
608
|
selectPresetEmbeddedState: import("@salsita-ai/common/utils").Selector<import("../index.js").IntegrationSelectorState, import("../index.js").PresetEmbeddedView | null>;
|
|
@@ -607,6 +613,24 @@ export declare function createApplicationRuntimeSlices<State extends Application
|
|
|
607
613
|
getPresetEmbeddedState: () => import("../index.js").PresetEmbeddedView | null;
|
|
608
614
|
getRecipeEmbeddedState: () => import("../index.js").RecipeEmbeddedView | null;
|
|
609
615
|
};
|
|
616
|
+
responsive: {
|
|
617
|
+
configurator: {
|
|
618
|
+
selectResponsiveState: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").ResponsiveState>;
|
|
619
|
+
selectViewportSize: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").ResponsiveViewportSize>;
|
|
620
|
+
selectCanvasPadding: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").CanvasPadding>;
|
|
621
|
+
getResponsiveState: () => import("../index.js").ResponsiveState;
|
|
622
|
+
getViewportSize: () => import("../index.js").ResponsiveViewportSize;
|
|
623
|
+
getCanvasPadding: () => import("../index.js").CanvasPadding;
|
|
624
|
+
};
|
|
625
|
+
admin: {
|
|
626
|
+
selectResponsiveState: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").ResponsiveState>;
|
|
627
|
+
selectViewportSize: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").ResponsiveViewportSize>;
|
|
628
|
+
selectCanvasPadding: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").CanvasPadding>;
|
|
629
|
+
getResponsiveState: () => import("../index.js").ResponsiveState;
|
|
630
|
+
getViewportSize: () => import("../index.js").ResponsiveViewportSize;
|
|
631
|
+
getCanvasPadding: () => import("../index.js").CanvasPadding;
|
|
632
|
+
};
|
|
633
|
+
};
|
|
610
634
|
routing: {
|
|
611
635
|
selectRoutingState: import("@salsita-ai/common/utils").Selector<import("../index.js").RoutingSelectorState, import("../index.js").RoutingState>;
|
|
612
636
|
selectEffectiveRoutingState: import("@salsita-ai/common/utils").Selector<import("../index.js").RoutingSelectorState, import("../index.js").RoutingState>;
|
|
@@ -702,6 +726,30 @@ export declare function createApplicationRuntimeSlices<State extends Application
|
|
|
702
726
|
enterEmbeddedView: (view: import("../index.js").EmbeddedView) => void;
|
|
703
727
|
exitEmbeddedView: () => void;
|
|
704
728
|
};
|
|
729
|
+
responsive: {
|
|
730
|
+
configurator: {
|
|
731
|
+
setViewport: (viewport: import("../index.js").ResponsiveViewport) => void;
|
|
732
|
+
setBreakpoints: (breakpoints: import("../index.js").ResponsiveBreakpoints) => void;
|
|
733
|
+
setCanvasPadding: (canvasPadding: import("../index.js").CanvasPadding) => void;
|
|
734
|
+
expand: () => void;
|
|
735
|
+
collapse: () => void;
|
|
736
|
+
hide: () => void;
|
|
737
|
+
show: () => void;
|
|
738
|
+
setAnimating: (isAnimating: boolean) => void;
|
|
739
|
+
reset: () => void;
|
|
740
|
+
};
|
|
741
|
+
admin: {
|
|
742
|
+
setViewport: (viewport: import("../index.js").ResponsiveViewport) => void;
|
|
743
|
+
setBreakpoints: (breakpoints: import("../index.js").ResponsiveBreakpoints) => void;
|
|
744
|
+
setCanvasPadding: (canvasPadding: import("../index.js").CanvasPadding) => void;
|
|
745
|
+
expand: () => void;
|
|
746
|
+
collapse: () => void;
|
|
747
|
+
hide: () => void;
|
|
748
|
+
show: () => void;
|
|
749
|
+
setAnimating: (isAnimating: boolean) => void;
|
|
750
|
+
reset: () => void;
|
|
751
|
+
};
|
|
752
|
+
};
|
|
705
753
|
routing: {
|
|
706
754
|
setRoutingState: (routingState: import("../index.js").RoutingState) => void;
|
|
707
755
|
};
|
|
@@ -761,6 +809,7 @@ declare const createApplicationRuntimeImpl: <EXTENSIONS extends readonly AnyAppl
|
|
|
761
809
|
selectElementSlots: import("@salsita-ai/common/utils").Selector<import("#package/domain").SpecSelectorState, {
|
|
762
810
|
entityElements: Record<string, (props: import("#package/domain").CustomPhoenixEntityElementProps) => JSX.Element>;
|
|
763
811
|
layoutElements: Record<string, (props: import("react").PropsWithChildren) => JSX.Element>;
|
|
812
|
+
assistantFormElements: Record<string, import("react").ComponentType<never>>;
|
|
764
813
|
hashes: Record<string, string>;
|
|
765
814
|
}>;
|
|
766
815
|
selectDataConfig: import("@salsita-ai/common/utils").Selector<import("#package/domain").SpecSelectorState, import("#package/domain").DataSpec | null>;
|
|
@@ -804,6 +853,7 @@ declare const createApplicationRuntimeImpl: <EXTENSIONS extends readonly AnyAppl
|
|
|
804
853
|
getElementSlots: () => {
|
|
805
854
|
entityElements: Record<string, (props: import("#package/domain").CustomPhoenixEntityElementProps) => JSX.Element>;
|
|
806
855
|
layoutElements: Record<string, (props: import("react").PropsWithChildren) => JSX.Element>;
|
|
856
|
+
assistantFormElements: Record<string, import("react").ComponentType<never>>;
|
|
807
857
|
hashes: Record<string, string>;
|
|
808
858
|
};
|
|
809
859
|
getDataConfig: () => import("#package/domain").DataSpec | null;
|
|
@@ -1090,6 +1140,7 @@ declare const createApplicationRuntimeImpl: <EXTENSIONS extends readonly AnyAppl
|
|
|
1090
1140
|
getMigrate: () => import("#package/domain").MigrateFunction<import("#package/domain").DomainEntity<string>>;
|
|
1091
1141
|
getActiveMode: () => import("#package/domain").DomainMode;
|
|
1092
1142
|
getIsInitialized: () => boolean;
|
|
1143
|
+
getIsViewMode: () => boolean;
|
|
1093
1144
|
getComponentReaderIndexes: () => import("#package/domain").ComponentReaderIndexes;
|
|
1094
1145
|
getStoreRuntimeDependencies: () => {
|
|
1095
1146
|
componentReaderIndexes: import("#package/domain").ComponentReaderIndexes;
|
|
@@ -1199,6 +1250,7 @@ declare const createApplicationRuntimeImpl: <EXTENSIONS extends readonly AnyAppl
|
|
|
1199
1250
|
getMigrate: () => import("#package/domain").MigrateFunction<import("#package/domain").DomainEntity<string>>;
|
|
1200
1251
|
getActiveMode: () => import("#package/domain").DomainMode;
|
|
1201
1252
|
getIsInitialized: () => boolean;
|
|
1253
|
+
getIsViewMode: () => boolean;
|
|
1202
1254
|
getComponentReaderIndexes: () => import("#package/domain").ComponentReaderIndexes;
|
|
1203
1255
|
getStoreRuntimeDependencies: () => {
|
|
1204
1256
|
componentReaderIndexes: import("#package/domain").ComponentReaderIndexes;
|
|
@@ -1264,7 +1316,6 @@ declare const createApplicationRuntimeImpl: <EXTENSIONS extends readonly AnyAppl
|
|
|
1264
1316
|
getUnauthenticatedClient: () => import("../../../client/contract.js").UnauthenticatedPhoenixApiClient;
|
|
1265
1317
|
};
|
|
1266
1318
|
integration: {
|
|
1267
|
-
selectAdminIntegrationService: import("@salsita-ai/common/utils").Selector<import("../index.js").IntegrationSelectorState, import("../index.js").AdminIntegrationService>;
|
|
1268
1319
|
selectIntegrationState: import("@salsita-ai/common/utils").Selector<import("../index.js").IntegrationSelectorState, IntegrationState>;
|
|
1269
1320
|
selectEmbeddedView: import("@salsita-ai/common/utils").Selector<import("../index.js").IntegrationSelectorState, import("../index.js").EmbeddedView>;
|
|
1270
1321
|
selectPresetEmbeddedState: import("@salsita-ai/common/utils").Selector<import("../index.js").IntegrationSelectorState, import("../index.js").PresetEmbeddedView | null>;
|
|
@@ -1275,6 +1326,24 @@ declare const createApplicationRuntimeImpl: <EXTENSIONS extends readonly AnyAppl
|
|
|
1275
1326
|
getPresetEmbeddedState: () => import("../index.js").PresetEmbeddedView | null;
|
|
1276
1327
|
getRecipeEmbeddedState: () => import("../index.js").RecipeEmbeddedView | null;
|
|
1277
1328
|
};
|
|
1329
|
+
responsive: {
|
|
1330
|
+
configurator: {
|
|
1331
|
+
selectResponsiveState: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").ResponsiveState>;
|
|
1332
|
+
selectViewportSize: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").ResponsiveViewportSize>;
|
|
1333
|
+
selectCanvasPadding: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").CanvasPadding>;
|
|
1334
|
+
getResponsiveState: () => import("../index.js").ResponsiveState;
|
|
1335
|
+
getViewportSize: () => import("../index.js").ResponsiveViewportSize;
|
|
1336
|
+
getCanvasPadding: () => import("../index.js").CanvasPadding;
|
|
1337
|
+
};
|
|
1338
|
+
admin: {
|
|
1339
|
+
selectResponsiveState: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").ResponsiveState>;
|
|
1340
|
+
selectViewportSize: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").ResponsiveViewportSize>;
|
|
1341
|
+
selectCanvasPadding: import("@salsita-ai/common/utils").Selector<import("../responsive/selectors.js").ResponsiveSelectorState, import("../index.js").CanvasPadding>;
|
|
1342
|
+
getResponsiveState: () => import("../index.js").ResponsiveState;
|
|
1343
|
+
getViewportSize: () => import("../index.js").ResponsiveViewportSize;
|
|
1344
|
+
getCanvasPadding: () => import("../index.js").CanvasPadding;
|
|
1345
|
+
};
|
|
1346
|
+
};
|
|
1278
1347
|
routing: {
|
|
1279
1348
|
selectRoutingState: import("@salsita-ai/common/utils").Selector<import("../index.js").RoutingSelectorState, import("../index.js").RoutingState>;
|
|
1280
1349
|
selectEffectiveRoutingState: import("@salsita-ai/common/utils").Selector<import("../index.js").RoutingSelectorState, import("../index.js").RoutingState>;
|
|
@@ -1370,6 +1439,30 @@ declare const createApplicationRuntimeImpl: <EXTENSIONS extends readonly AnyAppl
|
|
|
1370
1439
|
enterEmbeddedView: (view: import("../index.js").EmbeddedView) => void;
|
|
1371
1440
|
exitEmbeddedView: () => void;
|
|
1372
1441
|
};
|
|
1442
|
+
responsive: {
|
|
1443
|
+
configurator: {
|
|
1444
|
+
setViewport: (viewport: import("../index.js").ResponsiveViewport) => void;
|
|
1445
|
+
setBreakpoints: (breakpoints: import("../index.js").ResponsiveBreakpoints) => void;
|
|
1446
|
+
setCanvasPadding: (canvasPadding: import("../index.js").CanvasPadding) => void;
|
|
1447
|
+
expand: () => void;
|
|
1448
|
+
collapse: () => void;
|
|
1449
|
+
hide: () => void;
|
|
1450
|
+
show: () => void;
|
|
1451
|
+
setAnimating: (isAnimating: boolean) => void;
|
|
1452
|
+
reset: () => void;
|
|
1453
|
+
};
|
|
1454
|
+
admin: {
|
|
1455
|
+
setViewport: (viewport: import("../index.js").ResponsiveViewport) => void;
|
|
1456
|
+
setBreakpoints: (breakpoints: import("../index.js").ResponsiveBreakpoints) => void;
|
|
1457
|
+
setCanvasPadding: (canvasPadding: import("../index.js").CanvasPadding) => void;
|
|
1458
|
+
expand: () => void;
|
|
1459
|
+
collapse: () => void;
|
|
1460
|
+
hide: () => void;
|
|
1461
|
+
show: () => void;
|
|
1462
|
+
setAnimating: (isAnimating: boolean) => void;
|
|
1463
|
+
reset: () => void;
|
|
1464
|
+
};
|
|
1465
|
+
};
|
|
1373
1466
|
routing: {
|
|
1374
1467
|
setRoutingState: (routingState: import("../index.js").RoutingState) => void;
|
|
1375
1468
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{BehaviorSubject as e}from"rxjs";import{memoOnce as t}from"@salsita-ai/common/utils";import{
|
|
1
|
+
import{BehaviorSubject as e}from"rxjs";import{memoOnce as t}from"@salsita-ai/common/utils";import{ImplementationErrors as i,createDomainRuntimeSlices as n,findAssistantFormElementErrors as o,resolveIsDev as s}from"#package/domain";import{initializeAnalyticsService as r}from"../common-services/analytics/analytics-service.js";import{initializeI18n as a,initializeLogger as c}from"../common-services/initialize.js";import{createCommonServicesSelectors as l}from"../common-services/selectors.js";import{createDomainApplicationContextSelectors as m}from"../domain-application-context/index.js";import{createIntegrationActions as p,createIntegrationSelectors as u,initializeIntegration as g}from"../integration/index.js";import{createResponsiveActions as v,createResponsiveSelectors as d,initializeResponsive as S}from"../responsive/index.js";import{createRoutingActions as x,createRoutingSelectors as f,initializeRouting as C}from"../routing/index.js";import{SessionService as y,createSessionRuntimeActions as A,createSessionRuntimeSelectors as b,initializeSessionRuntime as j}from"../session/index.js";export function createApplicationRuntimeSlices(e){let{config:w,bootConfig:R,getSubject:h,getConfiguratorExtensions:E}=e,I=s(w),T=c(w,I),z={analyticsService:r(w,T,I),i18n:a(w),logger:T},{initialize:D,selectors:L,actions:O}=n({config:w,services:z,getSubject:h,getExtensionSystems:e=>Z[e].getInitializableSystems()}),U=D(),{assistant:k,elements:G}=U.spec.configurator,$=o(k?.formElements??[],G);if($.length>0)throw new i($);let q=p({setIntegration:e=>{let t=h(),i=e(t.value.integration);t.next({...t.value,integration:i})}}),B=u({getState:()=>h().value,actions:q}),F=g(),H=x({setRouting:e=>{let t=h(),i=e(t.value.routing);t.next({...t.value,routing:i})}}),J=f({getState:()=>h().value,actions:H,accessActions:O.access,loadedDataActions:O.loadedData,domainServicesSelectors:L.domainServices,overridesSelectors:L.overrides}),K=C(),M=v({setResponsive:e=>{let t=h(),i=e(t.value.responsive);i!==t.value.responsive&&t.next({...t.value,responsive:i})}}),N={configurator:d({getState:()=>h().value,applicationType:"configurator"}),admin:d({getState:()=>h().value,applicationType:"admin"})},P=S(),Q=l({getState:()=>h().value,environmentSelectors:L.environment,specSelectors:L.spec,accessSelectors:L.access,domainServicesSelectors:L.domainServices,webComponentOptions:R.webComponentOptions,webComponentApi:R.webComponentApi,getSessionService:()=>Y(),routingSelectors:J}),V=A({setSessionRuntime:e=>{let t=h(),i=e(t.value.session);t.next({...t.value,session:i})}}),W=b({getState:()=>h().value,sessionContextSelectors:L.sessionContext}),X=j(),Y=t(()=>new y({getLogger:()=>L.domainServices.getLogger(),getAnalyticsService:()=>L.domainServices.getAnalyticsService(),getUnauthenticatedClient:Q.getUnauthenticatedClient,environmentSelectors:L.environment,sessionActions:V,setSessionContext:O.sessionContext.setSessionContext,sessionSelectors:W,specSelectors:L.spec})),Z={configurator:m({applicationType:"configurator",commonServicesSelectors:Q,domainServicesSelectors:L.domainServices,domainContextSelectors:L.domainContext.configurator,getApplicationRuntimeExtensions:E}),admin:m({applicationType:"admin",commonServicesSelectors:Q,domainServicesSelectors:L.domainServices,domainContextSelectors:L.domainContext.admin,getApplicationRuntimeExtensions:()=>[]})};return T.info(`Configurator Application loaded with deployment ID: ${w.deploymentId}!`),T.appendToGlobalContext({deploymentId:w.deploymentId}),{getState:()=>h().value,initialize:()=>({...U,integration:F,responsive:P,routing:K,session:X}),selectors:{...L,commonServices:Q,integration:B,responsive:N,routing:J,session:W,domainApplicationContext:Z},actions:{...O,integration:q,responsive:M,routing:H,session:V}}}export function createApplicationRuntime(t,i,n){return((t,i,n)=>{let o=null,s=null,r=()=>{if(!o)throw Error("Subject not yet initialized!");return o},{initialize:a,...c}=createApplicationRuntimeSlices({config:t,bootConfig:i,getSubject:r,getConfiguratorExtensions:()=>s});return s=n?n(c):[],c.selectors.domainApplicationContext.configurator.getSystems(),o=new e(a()),{...c,getState:()=>r().value,subscribe:e=>{let t=r().subscribe(()=>e());return()=>t.unsubscribe()}}})(t,i,n)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export*from"./use-configurator-messages.js";export*from"./use-domain-context.js";export*from"./use-entity-selector.js";export*from"./use-observable-selector.js";export*from"./use-slices.js";export*from"./use-state-slice.js";export*from"./use-state-validity.js";export*from"./use-store-selector.js";
|
|
1
|
+
export*from"./use-configuration-save-state.js";export*from"./use-configurator-messages.js";export*from"./use-domain-context.js";export*from"./use-entity-selector.js";export*from"./use-observable-selector.js";export*from"./use-slices.js";export*from"./use-state-slice.js";export*from"./use-state-validity.js";export*from"./use-store-selector.js";
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type ConfigurationPersistSystemFailure } from '../../application-runtime/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* The save status of the configuration, as `useConfigurationSaveState()` returns it.
|
|
4
|
+
*/
|
|
5
|
+
export interface ConfigurationSaveState {
|
|
6
|
+
/** The revision the configuration is at: the loaded one, then the one the latest save created. */
|
|
7
|
+
readonly revisionId: string;
|
|
8
|
+
/** Whether a save is running. */
|
|
9
|
+
readonly isSaving: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* The latest failed save, `{ error, timestamp }` with `timestamp` in milliseconds since the epoch, or `null` once a
|
|
12
|
+
* later save succeeds or another configuration loads.
|
|
13
|
+
*/
|
|
14
|
+
readonly failure: ConfigurationPersistSystemFailure | null;
|
|
15
|
+
}
|
|
16
|
+
export type UseConfigurationSaveState = () => ConfigurationSaveState;
|
|
17
|
+
/**
|
|
18
|
+
* The save status of the configuration of the application this component is mounted in, read from its persist system:
|
|
19
|
+
* `revisionId`, `isSaving` and `failure`. An editable configuration saves committed changes on its own, three seconds
|
|
20
|
+
* after the last one; a read-only one never saves. Loading a configuration resets the status. Re-renders when any of
|
|
21
|
+
* the three changes; the returned object keeps its identity otherwise.
|
|
22
|
+
*/
|
|
23
|
+
export declare const useConfigurationSaveState: UseConfigurationSaveState;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useMemo as e}from"react";import{useDomainApplication as r}from"../../application-runtime/index.js";import{useEagerObservableValue as o}from"./use-observable-selector.js";export const useConfigurationSaveState=()=>{let{configurationPersistSystem:t}=r(),i=o(t.revisionId$),a=o(t.saving$),n=o(t.failure$);return e(()=>({revisionId:i,isSaving:a,failure:n}),[i,a,n])};
|
|
@@ -69,6 +69,7 @@ export declare const useDomainContextSelectors: () => {
|
|
|
69
69
|
getMigrate: () => import("#package/domain").MigrateFunction<DomainEntity<string>>;
|
|
70
70
|
getActiveMode: () => import("#package/domain").DomainMode;
|
|
71
71
|
getIsInitialized: () => boolean;
|
|
72
|
+
getIsViewMode: () => boolean;
|
|
72
73
|
getComponentReaderIndexes: () => import("#package/domain").ComponentReaderIndexes;
|
|
73
74
|
getStoreRuntimeDependencies: () => {
|
|
74
75
|
componentReaderIndexes: import("#package/domain").ComponentReaderIndexes;
|
|
@@ -2,6 +2,7 @@ export { useDomain, type UseDomainContext } from './common-hooks/use-domain-cont
|
|
|
2
2
|
export { useStoreSelector, useRenderedSelector, useRenderedSelector$, useStoreSelector$, type UseSynchronizedSelector, type UseSynchronizedSelector$, } from './common-hooks/use-store-selector.js';
|
|
3
3
|
export { useEagerObservableSelector, usePatientObservableSelector, usePatientObservableValue, useEagerObservableValue, } from './common-hooks/use-observable-selector.js';
|
|
4
4
|
export { useStateValidity, type UseStateValidity, useMapViolationHints, type UseMapViolationHints, useControlViolations, type UseControlViolations, useFinalizeViolations, type UseFinalizeViolations, } from './common-hooks/use-state-validity.js';
|
|
5
|
+
export { useConfigurationSaveState, type UseConfigurationSaveState, type ConfigurationSaveState, } from './common-hooks/use-configuration-save-state.js';
|
|
5
6
|
export { useConfiguratorMessages, type UseConfiguratorMessages, type ConfiguratorMessage, } from './common-hooks/use-configurator-messages.js';
|
|
6
7
|
export { useComponent, useRenderedComponent, type UseComponent, useComponents, useDynamicComponents, useRenderedComponents, type UseComponents, useRootComponents, useRootRenderedComponents, type UseRootComponents, useFirstComponent, useFirstRenderedComponent, type UseFirstComponent, useFirstRootComponent, useFirstRootRenderedComponent, type UseFirstRootComponent, } from './component-hooks/use-component.js';
|
|
7
8
|
export { useCommittedState, useCommittedSlice, useRenderedSlice, useRenderedState, type UseSlice, type UseState, } from './common-hooks/use-slices.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{useDomain}from"./common-hooks/use-domain-context.js";export{useStoreSelector,useRenderedSelector,useRenderedSelector$,useStoreSelector$}from"./common-hooks/use-store-selector.js";export{useEagerObservableSelector,usePatientObservableSelector,usePatientObservableValue,useEagerObservableValue}from"./common-hooks/use-observable-selector.js";export{useStateValidity,useMapViolationHints,useControlViolations,useFinalizeViolations}from"./common-hooks/use-state-validity.js";export{useConfiguratorMessages}from"./common-hooks/use-configurator-messages.js";export{useComponent,useRenderedComponent,useComponents,useDynamicComponents,useRenderedComponents,useRootComponents,useRootRenderedComponents,useFirstComponent,useFirstRenderedComponent,useFirstRootComponent,useFirstRootRenderedComponent}from"./component-hooks/use-component.js";export{useCommittedState,useCommittedSlice,useRenderedSlice,useRenderedState}from"./common-hooks/use-slices.js";export{useDomainEntityState,useDomainEntityRenderedState}from"./entity-hooks/use-domain-entity-state.js";export{useEntityPrice,useRootEntityPrice}from"./entity-hooks/use-entity-price.js";export{useSelectEntity,useSelectedEntity,useSelectedEntityId,useSelectedDomainEntityId,useDeselect,useSelectParent}from"./system-hooks/selection-hooks.js";export{useActiveNavigationState,useActiveViewState,useSetViewState,useActiveToolState,useIsFullscreenActive,useSetFullscreen,useActiveViewports,useDraggedDomainEntityId,useNavigate,usePushNavigate,usePopNavigate}from"./system-hooks/navigation-hooks.js";export{useComposition}from"./system-hooks/composition-hooks.js";export{useUndoRedo}from"./system-hooks/undo-redo-hooks.js";export{useTabNavigation}from"./system-hooks/tab-navigation-hooks.js";export{useStepNavigation}from"./system-hooks/step-navigation-hooks.js";export{useLocaleSwitch}from"./system-hooks/locale-switch-hooks.js";export{useGenerateShareLink}from"./system-hooks/generate-share-link-hooks.js";export{useShareLinks}from"./system-hooks/share-links-hooks.js";export{useHoveredDomainEntityId,useHoveredEntity,useHoveredEntityId}from"./system-hooks/hover-hooks.js";export{useRootEntityState,useRootEntityRenderedState}from"./entity-hooks/use-root-entity-state.js";export{useRootEntityId,useRootEntityRenderedId}from"./entity-hooks/use-root-entity-id.js";export{useEntitySelector,useRootEntitySelector,useRenderedEntitySelector,useRenderedRootEntitySelector}from"./common-hooks/use-entity-selector.js";export{useDimensionState,useDimensions,useDimensionConfig}from"./system-hooks/dimension-hooks.js";
|
|
1
|
+
export{useDomain}from"./common-hooks/use-domain-context.js";export{useStoreSelector,useRenderedSelector,useRenderedSelector$,useStoreSelector$}from"./common-hooks/use-store-selector.js";export{useEagerObservableSelector,usePatientObservableSelector,usePatientObservableValue,useEagerObservableValue}from"./common-hooks/use-observable-selector.js";export{useStateValidity,useMapViolationHints,useControlViolations,useFinalizeViolations}from"./common-hooks/use-state-validity.js";export{useConfigurationSaveState}from"./common-hooks/use-configuration-save-state.js";export{useConfiguratorMessages}from"./common-hooks/use-configurator-messages.js";export{useComponent,useRenderedComponent,useComponents,useDynamicComponents,useRenderedComponents,useRootComponents,useRootRenderedComponents,useFirstComponent,useFirstRenderedComponent,useFirstRootComponent,useFirstRootRenderedComponent}from"./component-hooks/use-component.js";export{useCommittedState,useCommittedSlice,useRenderedSlice,useRenderedState}from"./common-hooks/use-slices.js";export{useDomainEntityState,useDomainEntityRenderedState}from"./entity-hooks/use-domain-entity-state.js";export{useEntityPrice,useRootEntityPrice}from"./entity-hooks/use-entity-price.js";export{useSelectEntity,useSelectedEntity,useSelectedEntityId,useSelectedDomainEntityId,useDeselect,useSelectParent}from"./system-hooks/selection-hooks.js";export{useActiveNavigationState,useActiveViewState,useSetViewState,useActiveToolState,useIsFullscreenActive,useSetFullscreen,useActiveViewports,useDraggedDomainEntityId,useNavigate,usePushNavigate,usePopNavigate}from"./system-hooks/navigation-hooks.js";export{useComposition}from"./system-hooks/composition-hooks.js";export{useUndoRedo}from"./system-hooks/undo-redo-hooks.js";export{useTabNavigation}from"./system-hooks/tab-navigation-hooks.js";export{useStepNavigation}from"./system-hooks/step-navigation-hooks.js";export{useLocaleSwitch}from"./system-hooks/locale-switch-hooks.js";export{useGenerateShareLink}from"./system-hooks/generate-share-link-hooks.js";export{useShareLinks}from"./system-hooks/share-links-hooks.js";export{useHoveredDomainEntityId,useHoveredEntity,useHoveredEntityId}from"./system-hooks/hover-hooks.js";export{useRootEntityState,useRootEntityRenderedState}from"./entity-hooks/use-root-entity-state.js";export{useRootEntityId,useRootEntityRenderedId}from"./entity-hooks/use-root-entity-id.js";export{useEntitySelector,useRootEntitySelector,useRenderedEntitySelector,useRenderedRootEntitySelector}from"./common-hooks/use-entity-selector.js";export{useDimensionState,useDimensions,useDimensionConfig}from"./system-hooks/dimension-hooks.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useCallback as o}from"react";import{FrontendAnalyticsFactory as
|
|
1
|
+
import{useCallback as o,useMemo as n}from"react";import{FrontendAnalyticsFactory as e,useAnalyticsService as t}from"../../application-runtime/index.js";import{useDomain as d,useEagerObservableValue as r}from"../common-hooks/index.js";export const useUndoRedo=()=>{let i=t(),{undoSystem:c}=d(),{canUndo:m,canRedo:p}=r(c.can$),u=o(()=>{c.canUndo()&&(i.push(e.UndoButtonClicked()),c.undo())},[i,c]),s=o(()=>{c.canRedo()&&(i.push(e.RedoButtonClicked()),c.redo())},[i,c]);return n(()=>({canUndo:m,canRedo:p,undo:u,redo:s}),[m,p,u,s])};
|
|
@@ -8,7 +8,7 @@ export * from './invalid-deployment/index.js';
|
|
|
8
8
|
export * from './web-component/index.js';
|
|
9
9
|
export * from './localizable/index.js';
|
|
10
10
|
export * from './loading-state/index.js';
|
|
11
|
-
export * from './responsive-state/index.js';
|
|
12
11
|
export * from './elements/index.js';
|
|
12
|
+
export * from './scene-control-elements/index.js';
|
|
13
13
|
export * from './handlers/index.js';
|
|
14
14
|
export * from './application-runtime/index.js';
|
package/dist/react-sdk/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export*from"./theme/index.js";export*from"./utils/index.js";export*from"./session/index.js";export*from"./domain-context/index.js";export*from"./domain-application-context/index.js";export*from"./domain-controls/index.js";export*from"./invalid-deployment/index.js";export*from"./web-component/index.js";export*from"./localizable/index.js";export*from"./loading-state/index.js";export*from"./
|
|
1
|
+
export*from"./theme/index.js";export*from"./utils/index.js";export*from"./session/index.js";export*from"./domain-context/index.js";export*from"./domain-application-context/index.js";export*from"./domain-controls/index.js";export*from"./invalid-deployment/index.js";export*from"./web-component/index.js";export*from"./localizable/index.js";export*from"./loading-state/index.js";export*from"./elements/index.js";export*from"./scene-control-elements/index.js";export*from"./handlers/index.js";export*from"./application-runtime/index.js";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { Localizable } from '@salsita-ai/common/utils';
|
|
2
|
+
import type { DomainEntityId } from '#package/domain';
|
|
3
|
+
import type { SceneControlTooltipVisibility } from './scene-control-tooltip-visibility.js';
|
|
4
|
+
/**
|
|
5
|
+
* The name of the entity element that renders a `sceneEntityAddFab`. Its default, the built-in
|
|
6
|
+
* add-entity FAB, is registered in `defaultConfiguratorElements`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const AddEntityFabName = "AddEntityFab";
|
|
9
|
+
/**
|
|
10
|
+
* Props of the `AddEntityFab` element, rendered for each `sceneEntityAddFab` of an entity, at the
|
|
11
|
+
* position the component sets. The recipes it can add are not computed up front: the built-in FAB
|
|
12
|
+
* reads them with `useGroupedRecipeOptions(entityId, instanceNames, fixableViolations)` when it
|
|
13
|
+
* opens its menu, and a replacement does the same.
|
|
14
|
+
*/
|
|
15
|
+
export interface AddEntityFabElementProps {
|
|
16
|
+
/** The entity the FAB adds children to. */
|
|
17
|
+
readonly entityId: DomainEntityId<string>;
|
|
18
|
+
/** The `childEntityRecipes` instances whose recipes the FAB offers; all of them when not set. */
|
|
19
|
+
readonly instanceNames?: readonly string[];
|
|
20
|
+
/** Violations a new entity may cause without disabling its recipe (the component's `hiddenViolations`). */
|
|
21
|
+
readonly fixableViolations?: readonly string[];
|
|
22
|
+
/** The name of a Phoenix icon. */
|
|
23
|
+
readonly icon?: string;
|
|
24
|
+
/** A visible text label. */
|
|
25
|
+
readonly label?: Localizable;
|
|
26
|
+
/** The tooltip text. */
|
|
27
|
+
readonly title?: Localizable;
|
|
28
|
+
/** When the tooltip shows: `on-hover` unless the component sets it. */
|
|
29
|
+
readonly tooltipVisibility: SceneControlTooltipVisibility;
|
|
30
|
+
/** Add the only recipe directly, without a menu. */
|
|
31
|
+
readonly skipMenuWhenOnlyOne?: boolean;
|
|
32
|
+
/** Render nothing when there is no recipe. */
|
|
33
|
+
readonly hideWhenNone?: boolean;
|
|
34
|
+
}
|
|
35
|
+
/** Renders the `AddEntityFab` element for an entity. */
|
|
36
|
+
export declare const AddEntityFabElement: import("react").MemoExoticComponent<(props: AddEntityFabElementProps) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{memo as e,useMemo as n}from"react";import{PhoenixEntityElementWithChildren as r}from"../elements/index.js";export const AddEntityFabName="AddEntityFab";export const AddEntityFabElement=e(e=>{let{entityId:d,instanceNames:i,fixableViolations:m,icon:o,label:a,title:s,tooltipVisibility:p,skipMenuWhenOnlyOne:x,hideWhenNone:y}=e,E=n(()=>({instanceNames:i,fixableViolations:m,icon:o,label:a,title:s,tooltipVisibility:p,skipMenuWhenOnlyOne:x,hideWhenNone:y}),[i,m,o,a,s,p,x,y]);return t(r,{kind:"AddEntityFab",entityId:d,elementProps:E})});
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { type SyntheticEvent } from 'react';
|
|
2
|
+
import type { Localizable } from '@salsita-ai/common/utils';
|
|
3
|
+
import type { DomainEntityId } from '#package/domain';
|
|
4
|
+
import type { SceneControlTooltipVisibility } from './scene-control-tooltip-visibility.js';
|
|
5
|
+
/**
|
|
6
|
+
* The name of the entity element that renders a `sceneEntityDeleteFab`. Its default, the built-in
|
|
7
|
+
* delete-entity FAB, is registered in `defaultConfiguratorElements`.
|
|
8
|
+
*/
|
|
9
|
+
export declare const DeleteEntityFabName = "DeleteEntityFab";
|
|
10
|
+
/**
|
|
11
|
+
* Props of the `DeleteEntityFab` element, rendered for each `sceneEntityDeleteFab` of an entity, at
|
|
12
|
+
* the position the component sets.
|
|
13
|
+
*/
|
|
14
|
+
export interface DeleteEntityFabElementProps {
|
|
15
|
+
/** The entity the FAB deletes. */
|
|
16
|
+
readonly entityId: DomainEntityId<string>;
|
|
17
|
+
/** The name of a Phoenix icon. */
|
|
18
|
+
readonly icon?: string;
|
|
19
|
+
/** A visible text label. */
|
|
20
|
+
readonly label?: Localizable;
|
|
21
|
+
/** The tooltip text. */
|
|
22
|
+
readonly title?: Localizable;
|
|
23
|
+
/** When the tooltip shows: `on-hover` unless the component sets it. */
|
|
24
|
+
readonly tooltipVisibility: SceneControlTooltipVisibility;
|
|
25
|
+
/**
|
|
26
|
+
* Deletes the entity and pushes the delete analytics event. Pass it straight to `onClick`: given
|
|
27
|
+
* an event, it stops the event's propagation so the click does not reach the scene.
|
|
28
|
+
*/
|
|
29
|
+
readonly onDelete: (event?: SyntheticEvent) => void;
|
|
30
|
+
/** True when deleting would cause a violation the component does not allow. */
|
|
31
|
+
readonly disabled: boolean;
|
|
32
|
+
/** Why deleting is disabled, when it is. */
|
|
33
|
+
readonly disabledHint: string | undefined;
|
|
34
|
+
/** Logs the dry run of the deletion to the console, for debugging. */
|
|
35
|
+
readonly trace: () => void;
|
|
36
|
+
}
|
|
37
|
+
type DeleteEntityFabElementConfig = Omit<DeleteEntityFabElementProps, 'onDelete' | 'disabled' | 'disabledHint' | 'trace'>;
|
|
38
|
+
interface Props extends DeleteEntityFabElementConfig {
|
|
39
|
+
/** Violations deleting may cause without disabling the FAB (the component's `hiddenViolations`). */
|
|
40
|
+
readonly fixableViolations?: readonly string[];
|
|
41
|
+
}
|
|
42
|
+
/** Renders the `DeleteEntityFab` element for an entity, with the deletion it performs. */
|
|
43
|
+
export declare const DeleteEntityFabElement: import("react").MemoExoticComponent<(props: Props) => import("react/jsx-runtime").JSX.Element>;
|
|
44
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{memo as e,useCallback as i,useMemo as o}from"react";import{FrontendAnalyticsFactory as n}from"../application-runtime/index.js";import{useDeletedEntity as r}from"../domain-controls/index.js";import{PhoenixEntityElementWithChildren as m}from"../elements/index.js";export const DeleteEntityFabName="DeleteEntityFab";export const DeleteEntityFabElement=e(e=>{let{entityId:a,fixableViolations:s,icon:l,label:p,title:d,tooltipVisibility:c}=e,x=i(()=>n.EntityDeleteHotspotClicked(a),[a]),{disabled:y,hints:E,remove:b,trace:f}=r(a,s,x),j=i(t=>{t?.stopPropagation(),b()},[b]),D=o(()=>({icon:l,label:p,title:d,tooltipVisibility:c,onDelete:j,disabled:y,disabledHint:E,trace:f}),[l,p,d,c,j,y,E,f]);return t(m,{kind:"DeleteEntityFab",entityId:a,elementProps:D})});
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type SyntheticEvent } from 'react';
|
|
2
|
+
import type { Localizable } from '@salsita-ai/common/utils';
|
|
3
|
+
import type { DomainEntityId } from '#package/domain';
|
|
4
|
+
import type { SceneControlTooltipVisibility } from './scene-control-tooltip-visibility.js';
|
|
5
|
+
/**
|
|
6
|
+
* The name of the entity element that renders a `sceneEntityNavigationHotspot`. Its default, the
|
|
7
|
+
* built-in navigation hotspot, is registered in `defaultConfiguratorElements`.
|
|
8
|
+
*/
|
|
9
|
+
export declare const NavigationHotspotName = "NavigationHotspot";
|
|
10
|
+
/**
|
|
11
|
+
* Props of the `NavigationHotspot` element, rendered for each `sceneEntityNavigationHotspot` of an
|
|
12
|
+
* entity, at the position the component sets.
|
|
13
|
+
*/
|
|
14
|
+
export interface NavigationHotspotElementProps {
|
|
15
|
+
/** The entity the hotspot is attached to. */
|
|
16
|
+
readonly entityId: DomainEntityId<string>;
|
|
17
|
+
/** The navigation state the hotspot goes to. */
|
|
18
|
+
readonly navigationState: string;
|
|
19
|
+
/** The tooltip text. */
|
|
20
|
+
readonly title?: Localizable;
|
|
21
|
+
/** When the tooltip shows: `on-hover` unless the component sets it. */
|
|
22
|
+
readonly tooltipVisibility: SceneControlTooltipVisibility;
|
|
23
|
+
/**
|
|
24
|
+
* Goes to `navigationState`, pushed onto the navigation stack or replacing the current state as
|
|
25
|
+
* the component sets. Pass it straight to `onClick`: given an event, it prevents the event's
|
|
26
|
+
* default and stops its propagation so the click does not reach the scene.
|
|
27
|
+
*/
|
|
28
|
+
readonly onNavigate: (event?: SyntheticEvent) => void;
|
|
29
|
+
}
|
|
30
|
+
interface Props extends Omit<NavigationHotspotElementProps, 'onNavigate'> {
|
|
31
|
+
/** Push `navigationState` onto the navigation stack instead of replacing the current state. */
|
|
32
|
+
readonly pushToStack?: boolean;
|
|
33
|
+
/** The states `navigationState` can be stacked onto. */
|
|
34
|
+
readonly canStackOnto?: readonly string[];
|
|
35
|
+
}
|
|
36
|
+
/** Renders the `NavigationHotspot` element for an entity, with the navigation it performs. */
|
|
37
|
+
export declare const NavigationHotspotElement: import("react").MemoExoticComponent<(props: Props) => import("react/jsx-runtime").JSX.Element>;
|
|
38
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{memo as e,useCallback as o,useMemo as a}from"react";import{useDomain as i}from"../domain-context/index.js";import{PhoenixEntityElementWithChildren as n}from"../elements/index.js";export const NavigationHotspotName="NavigationHotspot";export const NavigationHotspotElement=e(e=>{let{entityId:s,navigationState:m,pushToStack:r,canStackOnto:p,title:g,tooltipVisibility:d}=e,{navigationSystem:l,storeSystem:v}=i(),c=o(t=>{t?.preventDefault(),t?.stopPropagation();let e=r?l.getPushNavigationUpdate(m,v.stateSlices.committed.value.state,{canStackOnto:p}):l.getNavigationUpdate(m);v.stageAndCommit([e])},[l,m,r,v,p]);return t(n,{kind:"NavigationHotspot",entityId:s,elementProps:a(()=>({navigationState:m,title:g,tooltipVisibility:d,onNavigate:c}),[m,g,d,c])})});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type SyntheticEvent } from 'react';
|
|
2
|
+
import type { Localizable } from '@salsita-ai/common/utils';
|
|
3
|
+
import type { DomainEntityId } from '#package/domain';
|
|
4
|
+
import type { SceneControlTooltipVisibility } from './scene-control-tooltip-visibility.js';
|
|
5
|
+
/**
|
|
6
|
+
* The name of the entity element that renders a `sceneEntitySelectHotspot`. Its default, the
|
|
7
|
+
* built-in selection hotspot, is registered in `defaultConfiguratorElements`.
|
|
8
|
+
*/
|
|
9
|
+
export declare const SelectionHotspotName = "SelectionHotspot";
|
|
10
|
+
/**
|
|
11
|
+
* Props of the `SelectionHotspot` element, rendered for each `sceneEntitySelectHotspot` of an
|
|
12
|
+
* entity, at the position the component sets.
|
|
13
|
+
*/
|
|
14
|
+
export interface SelectionHotspotElementProps {
|
|
15
|
+
/** The entity the hotspot selects. */
|
|
16
|
+
readonly entityId: DomainEntityId<string>;
|
|
17
|
+
/** The tooltip text. */
|
|
18
|
+
readonly title?: Localizable;
|
|
19
|
+
/** When the tooltip shows: `on-hover` unless the component sets it. */
|
|
20
|
+
readonly tooltipVisibility: SceneControlTooltipVisibility;
|
|
21
|
+
/**
|
|
22
|
+
* Selects the entity and pushes the selection-hotspot analytics event. Pass it straight to
|
|
23
|
+
* `onClick`: given an event, it stops the event's propagation so the click does not reach the scene.
|
|
24
|
+
*/
|
|
25
|
+
readonly onSelect: (event?: SyntheticEvent) => void;
|
|
26
|
+
}
|
|
27
|
+
type Props = Omit<SelectionHotspotElementProps, 'onSelect'>;
|
|
28
|
+
/** Renders the `SelectionHotspot` element for an entity, with the selection it performs. */
|
|
29
|
+
export declare const SelectionHotspotElement: import("react").MemoExoticComponent<(props: Props) => import("react/jsx-runtime").JSX.Element>;
|
|
30
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{memo as o,useCallback as e,useMemo as i}from"react";import{FrontendAnalyticsFactory as n}from"../application-runtime/index.js";import{useSelectEntity as r}from"../domain-context/index.js";import{PhoenixEntityElementWithChildren as m}from"../elements/index.js";export const SelectionHotspotName="SelectionHotspot";export const SelectionHotspotElement=o(o=>{let{entityId:p,title:s,tooltipVisibility:c}=o,l=r(n.SelectionHotspotClicked),a=e(t=>{t?.stopPropagation(),l(p)},[p,l]);return t(m,{kind:"SelectionHotspot",entityId:p,elementProps:i(()=>({title:s,tooltipVisibility:c,onSelect:a}),[s,c,a])})});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { Localizable } from '@salsita-ai/common/utils';
|
|
2
|
+
import type { DomainEntityId, ToolMenuFabOption } from '#package/domain';
|
|
3
|
+
import type { SceneControlTooltipVisibility } from './scene-control-tooltip-visibility.js';
|
|
4
|
+
/**
|
|
5
|
+
* The name of the entity element that renders a `toolMenuFab`. Its default, the built-in tool-menu
|
|
6
|
+
* FAB, is registered in `defaultConfiguratorElements`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const ToolMenuFabName = "ToolMenuFab";
|
|
9
|
+
/**
|
|
10
|
+
* Props of the `ToolMenuFab` element, rendered for each `toolMenuFab` of an entity, at the position
|
|
11
|
+
* the component sets.
|
|
12
|
+
*/
|
|
13
|
+
export interface ToolMenuFabElementProps {
|
|
14
|
+
/** The entity the FAB is attached to. */
|
|
15
|
+
readonly entityId: DomainEntityId<string>;
|
|
16
|
+
/** The tools the menu offers, each with its `label`, optional `icon` and `toolState`. */
|
|
17
|
+
readonly options: readonly ToolMenuFabOption[];
|
|
18
|
+
/** The name of a Phoenix icon; the built-in FAB shows `PencilSimpleBold` when it is not set. */
|
|
19
|
+
readonly icon?: string;
|
|
20
|
+
/** The tooltip text, which the built-in menu also shows as its heading. */
|
|
21
|
+
readonly title?: Localizable;
|
|
22
|
+
/** When the tooltip shows: `on-hover` unless the component sets it. */
|
|
23
|
+
readonly tooltipVisibility: SceneControlTooltipVisibility;
|
|
24
|
+
/** Switches to the given tool state, the `toolState` of one of the `options`. */
|
|
25
|
+
readonly onSelectTool: (toolState: string) => void;
|
|
26
|
+
}
|
|
27
|
+
type Props = Omit<ToolMenuFabElementProps, 'onSelectTool'>;
|
|
28
|
+
/** Renders the `ToolMenuFab` element for an entity, with the tool switch it performs. */
|
|
29
|
+
export declare const ToolMenuFabElement: import("react").MemoExoticComponent<(props: Props) => import("react/jsx-runtime").JSX.Element>;
|
|
30
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{memo as o,useCallback as t,useMemo as n}from"react";import{useDomain as m}from"../domain-context/index.js";import{PhoenixEntityElementWithChildren as r}from"../elements/index.js";export const ToolMenuFabName="ToolMenuFab";export const ToolMenuFabElement=o(o=>{let{entityId:a,options:i,icon:s,title:l,tooltipVisibility:p}=o,{navigationSystem:d,storeSystem:x}=m(),u=t(e=>{x.stageAndCommit([d.getToolUpdate(e)])},[d,x]);return e(r,{kind:"ToolMenuFab",entityId:a,elementProps:n(()=>({options:i,icon:s,title:l,tooltipVisibility:p,onSelectTool:u}),[i,s,l,p,u])})});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type PhoenixEntityElementRegistration } from '#package/domain';
|
|
2
|
+
import { type AddEntityFabElementProps } from './AddEntityFabElement.js';
|
|
3
|
+
/**
|
|
4
|
+
* Registers a project's add-entity FAB as the `AddEntityFab` entity element, with its props typed.
|
|
5
|
+
* Registering an entity element under that name with `createCustomPhoenixEntityElement` works too,
|
|
6
|
+
* but its component is then typed as taking only `entityId` and `children`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const createAddEntityFab: (Element: (props: AddEntityFabElementProps) => JSX.Element | null) => PhoenixEntityElementRegistration;
|
|
9
|
+
export type CreateAddEntityFab = (Element: (props: AddEntityFabElementProps) => JSX.Element | null) => PhoenixEntityElementRegistration;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{createCustomPhoenixEntityElement as t}from"#package/domain";import{AddEntityFabName as o}from"./AddEntityFabElement.js";export const createAddEntityFab=a=>t(o,a);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type PhoenixEntityElementRegistration } from '#package/domain';
|
|
2
|
+
import { type DeleteEntityFabElementProps } from './DeleteEntityFabElement.js';
|
|
3
|
+
/**
|
|
4
|
+
* Registers a project's delete-entity FAB as the `DeleteEntityFab` entity element, with its props
|
|
5
|
+
* typed. Registering an entity element under that name with `createCustomPhoenixEntityElement`
|
|
6
|
+
* works too, but its component is then typed as taking only `entityId` and `children`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const createDeleteEntityFab: (Element: (props: DeleteEntityFabElementProps) => JSX.Element | null) => PhoenixEntityElementRegistration;
|
|
9
|
+
export type CreateDeleteEntityFab = (Element: (props: DeleteEntityFabElementProps) => JSX.Element | null) => PhoenixEntityElementRegistration;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{createCustomPhoenixEntityElement as e}from"#package/domain";import{DeleteEntityFabName as t}from"./DeleteEntityFabElement.js";export const createDeleteEntityFab=o=>e(t,o);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type PhoenixEntityElementRegistration } from '#package/domain';
|
|
2
|
+
import { type NavigationHotspotElementProps } from './NavigationHotspotElement.js';
|
|
3
|
+
/**
|
|
4
|
+
* Registers a project's navigation hotspot as the `NavigationHotspot` entity element, with its
|
|
5
|
+
* props typed. Registering an entity element under that name with
|
|
6
|
+
* `createCustomPhoenixEntityElement` works too, but its component is then typed as taking only
|
|
7
|
+
* `entityId` and `children`.
|
|
8
|
+
*/
|
|
9
|
+
export declare const createNavigationHotspot: (Element: (props: NavigationHotspotElementProps) => JSX.Element | null) => PhoenixEntityElementRegistration;
|
|
10
|
+
export type CreateNavigationHotspot = (Element: (props: NavigationHotspotElementProps) => JSX.Element | null) => PhoenixEntityElementRegistration;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{createCustomPhoenixEntityElement as o}from"#package/domain";import{NavigationHotspotName as t}from"./NavigationHotspotElement.js";export const createNavigationHotspot=a=>o(t,a);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type PhoenixEntityElementRegistration } from '#package/domain';
|
|
2
|
+
import { type SelectionHotspotElementProps } from './SelectionHotspotElement.js';
|
|
3
|
+
/**
|
|
4
|
+
* Registers a project's selection hotspot as the `SelectionHotspot` entity element, with its props
|
|
5
|
+
* typed. Registering an entity element under that name with `createCustomPhoenixEntityElement`
|
|
6
|
+
* works too, but its component is then typed as taking only `entityId` and `children`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const createSelectionHotspot: (Element: (props: SelectionHotspotElementProps) => JSX.Element | null) => PhoenixEntityElementRegistration;
|
|
9
|
+
export type CreateSelectionHotspot = (Element: (props: SelectionHotspotElementProps) => JSX.Element | null) => PhoenixEntityElementRegistration;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{createCustomPhoenixEntityElement as o}from"#package/domain";import{SelectionHotspotName as t}from"./SelectionHotspotElement.js";export const createSelectionHotspot=e=>o(t,e);
|