@salsita-ai/sdk 0.50.0-develop.996c9540be → 0.50.0-develop.9c1e52435a
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 -4
- package/dist/admin/default-admin-elements.d.ts +9 -0
- package/dist/admin/default-admin-elements.js +1 -0
- package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
- package/dist/admin/default-elements/built-in-entity-element.js +1 -0
- package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
- package/dist/admin/default-elements/built-in-layout-element.js +1 -0
- package/dist/admin/default-elements/index.d.ts +2 -0
- package/dist/admin/default-elements/index.js +1 -0
- package/dist/admin/index.d.ts +1 -0
- package/dist/admin/index.js +1 -1
- package/dist/application-spec/caching/content-diff.js +1 -1
- package/dist/application-spec/core/application-file.d.ts +0 -2
- package/dist/application-spec/core/application-file.js +1 -1
- package/dist/application-spec/errors/diagnostic-codes.d.ts +3 -0
- package/dist/application-spec/errors/diagnostic-codes.js +1 -1
- package/dist/application-spec/errors/diagnostic-messages.d.ts +3 -0
- package/dist/application-spec/errors/diagnostic-messages.js +1 -1
- package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
- package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
- package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/common/index.js +1 -1
- package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
- package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
- package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
- package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +10 -14
- package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
- package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
- package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
- package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
- package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
- package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
- package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +6 -6
- package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
- package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +13 -13
- package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
- package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
- package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
- package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
- package/dist/application-spec/generate-application/code/templates/gitignore.js +1 -3
- package/dist/application-spec/generate-application/code/templates/globals.js +7 -4
- package/dist/application-spec/generate-application/code/templates/index.d.ts +2 -2
- package/dist/application-spec/generate-application/code/templates/index.js +1 -1
- package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
- package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
- package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
- package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +1 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +3 -3
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
- package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
- package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +13 -2
- package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +2 -2
- package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
- package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
- package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
- package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
- package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
- package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
- package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
- package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
- package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
- package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
- package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
- package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
- package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
- package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +3 -2
- package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
- package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
- package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +13 -6
- package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
- package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +6 -4
- package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
- package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +3 -2
- package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
- package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
- package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +2 -2
- package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +2 -2
- package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +2 -1
- package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
- package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
- package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
- package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +3 -0
- package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
- package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
- package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +7 -4
- package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
- package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
- package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
- package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
- package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
- package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
- package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +3 -3
- package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
- package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
- package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
- package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
- package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
- package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.js +1 -0
- package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
- package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
- package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
- package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
- package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +27 -0
- package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
- package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
- package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
- package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +68 -0
- package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
- package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
- package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
- package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +18 -0
- package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
- package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
- package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
- package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
- package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
- package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
- package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +1 -0
- package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -1
- package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
- package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
- package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +3 -0
- 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 +3 -0
- package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
- package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
- package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
- package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
- package/dist/application-spec/parse-application-files/spec/expressions/expression-read.js +1 -0
- package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
- package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
- package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +6 -2
- package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
- package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
- package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +7 -1
- package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +1 -1
- package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
- package/dist/configurator/common/configurator-interface.d.ts +6 -1
- package/dist/configurator/common/configurator-interface.js +1 -1
- package/dist/configurator/common/index.d.ts +1 -1
- package/dist/configurator/common/index.js +1 -1
- package/dist/configurator/common/use-finalize-action.js +1 -1
- package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +12 -0
- package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
- package/dist/configurator/configuration-not-found-page/index.d.ts +1 -0
- package/dist/configurator/configuration-not-found-page/index.js +1 -0
- package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
- package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
- package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +3 -2
- package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
- package/dist/configurator/pages/RootPage.js +1 -1
- package/dist/configurator/pages/default-configurator-elements.d.ts +3 -1
- package/dist/configurator/pages/default-configurator-elements.js +1 -1
- package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
- package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
- package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
- package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
- package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
- package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
- package/dist/configurator/pages/default-elements/index.d.ts +4 -0
- package/dist/configurator/pages/default-elements/index.js +1 -0
- package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
- package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
- package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
- package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
- package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
- package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
- package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
- package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
- package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
- package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
- package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
- package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
- package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +1 -1
- package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -1
- package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +1 -1
- package/dist/configurator/ui/assistant/entity-link/index.d.ts +0 -1
- package/dist/configurator/ui/assistant/entity-link/index.js +1 -1
- package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
- package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
- package/dist/configurator/ui/assistant/form/built-in-form-registry.d.ts +10 -0
- package/dist/configurator/ui/assistant/form/built-in-form-registry.js +1 -0
- package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
- package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
- package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
- package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
- package/dist/configurator/ui/assistant/form/form-element-definition.d.ts +14 -0
- package/dist/configurator/ui/assistant/form/form-element-definition.js +1 -0
- package/dist/configurator/ui/assistant/form/form-model.d.ts +38 -0
- package/dist/configurator/ui/assistant/form/form-model.js +1 -0
- package/dist/configurator/ui/assistant/form/form-registry.d.ts +31 -0
- package/dist/configurator/ui/assistant/form/form-registry.js +8 -0
- package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
- package/dist/configurator/ui/assistant/form/form-state.js +1 -0
- package/dist/configurator/ui/assistant/form/index.d.ts +2 -0
- package/dist/configurator/ui/assistant/form/index.js +1 -0
- package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +9 -0
- package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
- package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
- package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +3 -0
- package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +3 -0
- package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +3 -0
- package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +3 -0
- package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +34 -0
- package/dist/configurator/ui/assistant/form-elements/form-element-props.js +1 -0
- package/dist/configurator/ui/assistant/form-elements/index.d.ts +5 -0
- package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
- package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
- package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
- package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
- package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
- package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
- package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
- package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
- package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
- package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
- package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
- package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
- package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
- package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
- package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
- package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
- package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
- package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +11 -0
- package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
- package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
- package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
- package/dist/configurator/ui/assistant/streamed-markdown.d.ts +2 -0
- package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
- package/dist/configurator/ui/assistant/thread-items.d.ts +8 -1
- package/dist/configurator/ui/assistant/thread-items.js +1 -1
- package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
- package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
- package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
- package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
- package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
- package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
- package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
- package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
- package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.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/StepsSidebarFooter.js +1 -1
- package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
- package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
- package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
- package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
- package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
- package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
- package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
- package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
- package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.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/horizontal-tabs/DesktopHorizontalTabs.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/measurements/DimensionUnitSelector.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
- package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.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.d.ts +10 -0
- package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
- package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
- package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
- package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
- package/dist/docs/fabs/basic.mdx +2 -2
- package/dist/docs/index.json +1 -1
- package/dist/docs/layouts/custom-layout.mdx +325 -15
- package/dist/docs/other-features/not-found-404.mdx +1 -1
- package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
- package/dist/docs/phoenix/configurator-interface.mdx +36 -11
- package/dist/docs/phoenix/domain-model.mdx +2 -0
- package/dist/docs/phoenix/getting-started.mdx +5 -3
- package/dist/docs/phoenix/layout-slots.mdx +9 -9
- package/dist/docs/phoenix/localization.mdx +6 -2
- package/dist/docs/phoenix/migration-guide.mdx +12 -10
- package/dist/docs/phoenix/phoenix-cli.mdx +31 -16
- package/dist/docs/phoenix/project-structure.mdx +52 -30
- package/dist/docs/phoenix/quickstart.mdx +7 -7
- package/dist/docs/phoenix/sdk-builder-workflow.mdx +6 -6
- package/dist/docs/phoenix/testing.mdx +8 -0
- package/dist/domain/application/assistant/assistant-form-elements.d.ts +28 -0
- package/dist/domain/application/assistant/assistant-form-elements.js +1 -0
- package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
- package/dist/domain/application/assistant/index.d.ts +2 -0
- package/dist/domain/application/assistant/index.js +1 -1
- package/dist/domain/application/assistant-recipe-groups.d.ts +3 -1
- package/dist/domain/core/schema/extended-schema-validator.js +1 -1
- package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +12 -11
- package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -1
- package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +1 -1
- package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
- package/dist/domain/domain-runtime/spec/selectors.js +1 -1
- package/dist/domain/system-components/child-entity-selection.js +1 -1
- package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
- package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
- package/dist/editor/Editor.d.ts +7 -0
- package/dist/editor/Editor.js +1 -1
- package/dist/editor/mocks/CreateMockYaml.js +2 -2
- package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
- package/dist/editor/mocks/EditorMockContext.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 +79 -80
- package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +10 -11
- package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +9 -10
- package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
- package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
- package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
- package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
- package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
- package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
- package/dist/phoenix/application-spec/project-files.js +1 -1
- package/dist/phoenix/bin.d.ts +2 -0
- package/dist/phoenix/bin.js +2 -0
- package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
- package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
- package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
- package/dist/phoenix/check-configs/eslint-config.js +1 -0
- package/dist/phoenix/check-configs/index.d.ts +8 -0
- package/dist/phoenix/check-configs/index.js +1 -0
- package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
- package/dist/phoenix/check-configs/typescript-project.js +1 -0
- package/dist/phoenix/cli.d.ts +0 -1
- package/dist/phoenix/cli.js +1 -2
- package/dist/phoenix/commands/build.js +1 -1
- package/dist/phoenix/commands/check.js +1 -1
- package/dist/phoenix/commands/clean.js +1 -1
- package/dist/phoenix/commands/deploy.js +2 -2
- package/dist/phoenix/commands/deps/deps.d.ts +22 -1
- package/dist/phoenix/commands/deps/deps.js +2 -2
- package/dist/phoenix/commands/deps/index.d.ts +1 -1
- package/dist/phoenix/commands/deps/index.js +1 -1
- package/dist/phoenix/commands/deps/sdk-manifest.js +1 -1
- package/dist/phoenix/commands/dev.js +4 -4
- package/dist/phoenix/commands/fix.js +1 -1
- package/dist/phoenix/commands/init.d.ts +17 -5
- package/dist/phoenix/commands/init.js +1 -1
- package/dist/phoenix/commands/link.js +1 -1
- package/dist/phoenix/commands/prettier.js +1 -1
- package/dist/phoenix/commands/sync.js +1 -1
- package/dist/phoenix/commands/unlink.js +1 -1
- package/dist/phoenix/services/application-spec-project-watcher.d.ts +0 -2
- package/dist/phoenix/services/application-spec-project-watcher.js +2 -2
- package/dist/phoenix/services/lingui.d.ts +8 -0
- package/dist/phoenix/services/lingui.js +1 -1
- package/dist/phoenix/services/swc.js +1 -1
- package/dist/phoenix/services/vite-config.js +1 -1
- package/dist/phoenix/utils/index.d.ts +3 -2
- package/dist/phoenix/utils/index.js +1 -1
- package/dist/phoenix/utils/node-version/index.d.ts +1 -0
- package/dist/phoenix/utils/node-version/index.js +1 -0
- package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
- package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
- package/dist/phoenix/utils/package-info.d.ts +0 -9
- package/dist/phoenix/utils/package-info.js +1 -1
- package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
- package/dist/phoenix/utils/package-manager/index.js +1 -0
- package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
- package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
- package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
- package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
- package/dist/phoenix/utils/run-command.d.ts +11 -0
- package/dist/phoenix/utils/run-command.js +1 -1
- package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
- package/dist/phoenix/utils/sdk-tool/index.js +1 -0
- package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
- package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
- package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
- package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
- package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
- package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +15 -4
- package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -1
- 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.d.ts +20 -0
- package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
- package/dist/ui-sdk/theme/types.d.ts +1 -1
- package/package.json +16 -9
- package/schema/domain-spec.json +86 -8
- package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
- package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
- package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
- package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
- package/dist/configurator/ui/assistant/entity-link/entity-link-target.d.ts +0 -5
- package/dist/configurator/ui/assistant/entity-link/entity-link-target.js +0 -1
- package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
- package/dist/phoenix/commands/generate-project-files.js +0 -1
- /package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.d.ts +0 -0
- /package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{useCallback as a,useMemo as i}from"react";import{customPriceFooterComponent as n,navigationStepsComponent as r,sidebarTabsComponent as s}from"#package/domain";import{useActiveNavigationState as m,useComponents as l,useDomain as p,useFirstRootComponent as c,usePresetEmbeddedState as f,useResolveLocalizable as d,useRootEntityPrice as g,useSelectedDomainEntityId as u,useStoreSelector as v}from"#package/react-sdk";import{MobileControls as b}from"#package/ui-sdk";import{useConfiguratorRouting as j,usePresetSelection as S}from"../../../../configurator-context/index.js";import{LayoutSlots as x}from"../../../configurator-layout/index.js";import{LayoutDialog as C}from"../../../phoenix-layout-elements/LayoutDialog.js";import{LayoutFooter as y,LayoutToolbarDesktop as k,LayoutToolbarDesktopFullScreen as T}from"../../../phoenix-layout-elements/index.js";import{
|
|
1
|
+
import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{useCallback as a,useMemo as i}from"react";import{customPriceFooterComponent as n,navigationStepsComponent as r,sidebarTabsComponent as s}from"#package/domain";import{useActiveNavigationState as m,useComponents as l,useDomain as p,useFirstRootComponent as c,usePresetEmbeddedState as f,useResolveLocalizable as d,useRootEntityPrice as g,useSelectedDomainEntityId as u,useStoreSelector as v}from"#package/react-sdk";import{MobileControls as b}from"#package/ui-sdk";import{useConfiguratorRouting as j,usePresetSelection as S}from"../../../../configurator-context/index.js";import{LayoutSlots as x}from"../../../configurator-layout/index.js";import{LayoutDialog as C}from"../../../phoenix-layout-elements/LayoutDialog.js";import{LayoutFooter as y,LayoutToolbarDesktop as k,LayoutToolbarDesktopFullScreen as T}from"../../../phoenix-layout-elements/index.js";import{SaveMessageSnackbars as I}from"../../../save-message-snackbars/index.js";import{FullscreenDesktopToolbar as h}from"../../toolbar/desktop-toolbar/FullscreenDesktopToolbar.js";import{CommonDesktopToolbar as N}from"../common/CommonDesktopToolbar.js";import{CommonFinalizePage as w}from"../common/CommonFinalizePage.js";import{DefaultViewOnlyMessage as A}from"../common/DefaultViewOnlyMessage.js";import{InvariantViolations as D}from"../common/InvariantViolations.js";import{ReactiveInterfaceLayout as E}from"../common/ReactiveInterfaceLayout.js";import{SideEffects as L}from"../common/SideEffects.js";import{ToolControls as M}from"../common/ToolControls.js";import{ViewControls as P}from"../common/ViewControls.js";import{StepsNavigation as V}from"./StepsNavigation.js";import{StepsSideBar as F}from"./StepsSideBar.js";export const StepsOwnerLayout=()=>{let{storeSystem:O,navigationSystem:B}=p(),H=d(),R=m(),U=u(),z=c(r),$=c(n),q=l({componentTypes:[s],entityIds:[U]}),G=i(()=>z?.state.steps??[],[z]),J=i(()=>(q??[]).flatMap(o=>o.state.tabs).map(o=>{let t=o.navigationStates[0];if(!t)throw Error(`Tab ${t} has no navigation states!`);return{label:H(o.label),icon:o.icon,value:t,isActive:o.navigationStates.includes(R)}}),[q,R,H]),K=i(()=>{let o=J.find(o=>o.isActive);return o?.value??"none"},[J]),Q=v(o=>U===o.state.rootEntityId,[U]),W=g(),X=j(),{presetCategories:Y}=S(),Z=f(),_=Y.flatMap(o=>o.presets).length>1,oo=!Z&&_,ot=a(()=>{let o=G.findIndex(o=>o.navigationStates.includes(R)),t=G[o-1];if(!t){oo&&X.goToIndex();return}let e=t.navigationStates[0];e&&O.stageAndCommit([B.getNavigationUpdate(e)])},[B,R,G,oo,X,O]),oe=a(()=>{let o=G.findIndex(o=>o.navigationStates.includes(R)),t=G[o+1];if(!t)return;let e=t.navigationStates[0];e&&O.stageAndCommit([B.getNavigationUpdate(e)])},[B,R,G,O]),oa=i(()=>G.findIndex(o=>o.navigationStates.includes(R))===G.length-1,[G,R]);return o(E,{canvas:o(x.Canvas,{}),sidebar:o(F,{price:W,tabs:J,activeTab:K,isRootPage:Q,customPriceNode:$?.state.node,isLastStep:oa,onNextStepClick:oe,onPreviousStepClick:ot}),viewControls:o(P,{}),toolControls:o(M,{}),topNavigation:o(V,{steps:G}),branding:null,toolbar:o(k,{defaultSlot:()=>o(N,{})}),fullScreenToolbar:o(T,{defaultSlot:()=>o(h,{})}),overlay:t(e,{children:[o(D,{}),o(I,{}),o(w,{}),o(C,{})]}),mobileControls:o(b.ViewOnlyMode,{message:o(A,{})}),mobileTopNavigation:null,mobileHeaderActionButton:null,mobileHeaderCenter:null,sideEffects:o(L,{}),footer:o(y,{})})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import{Trans as o}from"@lingui/react";import{Button as i,Stack as n}from"@mui/material";import{useCallback as a}from"react";import{FrontendAnalyticsFactory as l,useAnalyticsService as s,usePresetEmbeddedState as m,useResolveLocalizable as c,useSession as p}from"#package/react-sdk";import{PhxIcon as u,SidebarPrice as d,StepsSidebarFooterLayout as k}from"#package/ui-sdk";import{CommonFinalizeButton as f}from"../common/CommonFinalizeButton.js";import{SaveTemplateButton as g}from"../common/SaveTemplateButton.js";import{SetAsTemplateButton as h}from"../common/SetAsTemplateButton.js";let x={id:"sdk.totalPrice",message:"Total price"},S=t=>{let{onClick:r}=t,n=s(),m=a(()=>{n.push(l.PreviousStepButtonClicked()),r()},[n,r]);return e(i,{size:"large",startIcon:e(u,{name:"ArrowLeft"}),fullWidth:!0,onClick:m,children:e(o,{id:"sdk.layout.sidebar.previousStep.label",message:"Previous step"})})},B=t=>{let{onClick:r}=t,n=s(),m=a(()=>{n.push(l.NextStepButtonClicked()),r()},[n,r]);return e(i,{variant:"contained",size:"large",endIcon:e(u,{name:"ArrowRight"}),fullWidth:!0,onClick:m,children:e(o,{id:"sdk.layout.sidebar.nextStep.label",message:"Next step"})})};export const StepsSidebarFooter=o=>{let{formattedPrice:i,customPriceNode:a,isLastStep:l,onPreviousStepClick:s,onNextStepClick:u}=o,b=m(),C=c(),j=null!=p().rawAdminSessionToken,v=j&&b,A=j&&!b;return e(k,{priceNode:t(r,{children:[a,!a&&i&&t(n,{alignItems:"center",flexWrap:"wrap",direction:"row",children:[e(d.Label,{label:C(x),sx:{marginInlineEnd:"auto"}}),e(d.Value,{value:i})]})]}),startActionButton:e(S,{onClick:s}),endActionButton:t(r,{children:[!l&&e(B,{onClick:u}),l&&!v&&e(f,{}),l&&v&&e(g,{})]}),templateButton:l&&A&&e(h,{})})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{useMemo as r}from"react";import{match as a}from"ts-pattern";import{customPriceFooterComponent as m,isCustomSummaryComponentSnapshot as n,isSimpleSummaryComponentSnapshot as i,sidebarTabsComponent as s}from"#package/domain";import{useActiveNavigationState as l,useComponents as c,useFirstRootComponent as p,useResolveLocalizable as f,useRootEntityPrice as u,useSelectedDomainEntityId as d,useStoreSelector as b}from"#package/react-sdk";import{MobileControls as g}from"#package/ui-sdk";import{useEnterSidebarSummary as v,useHasSidebarSummary as j,useLeaveSidebarSummary as y,useSidebarSummary as T}from"../../../../configurator-context/index.js";import{LayoutSlots as h}from"../../../configurator-layout/index.js";import{LayoutDialog as w,LayoutFooter as
|
|
1
|
+
import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{useMemo as r}from"react";import{match as a}from"ts-pattern";import{customPriceFooterComponent as m,isCustomSummaryComponentSnapshot as n,isSimpleSummaryComponentSnapshot as i,sidebarTabsComponent as s}from"#package/domain";import{useActiveNavigationState as l,useComponents as c,useFirstRootComponent as p,useResolveLocalizable as f,useRootEntityPrice as u,useSelectedDomainEntityId as d,useStoreSelector as b}from"#package/react-sdk";import{MobileControls as g}from"#package/ui-sdk";import{useEnterSidebarSummary as v,useHasSidebarSummary as j,useLeaveSidebarSummary as y,useSidebarSummary as T}from"../../../../configurator-context/index.js";import{LayoutSlots as h}from"../../../configurator-layout/index.js";import{LayoutDialog as w,LayoutFooter as x,SimpleSummary as C}from"../../../phoenix-layout-elements/index.js";import{SaveMessageSnackbars as k}from"../../../save-message-snackbars/index.js";import{FullscreenDesktopToolbar as S}from"../../toolbar/desktop-toolbar/FullscreenDesktopToolbar.js";import{CommonDesktopToolbar as E}from"../common/CommonDesktopToolbar.js";import{CommonFinalizePage as A}from"../common/CommonFinalizePage.js";import{CommonTopNavigation as I}from"../common/CommonTopNavigation.js";import{DefaultViewOnlyMessage as N}from"../common/DefaultViewOnlyMessage.js";import{InvariantViolations as P}from"../common/InvariantViolations.js";import{ReactiveInterfaceLayout as V}from"../common/ReactiveInterfaceLayout.js";import{SideEffects as D}from"../common/SideEffects.js";import{ToolControls as F}from"../common/ToolControls.js";import{ViewControls as L}from"../common/ViewControls.js";import{TabsSidebar as M}from"./TabsSidebar.js";export const TabsOwnerLayout=()=>{let O=f(),H=l(),R=d(),{isSummaryActive:z,page:B}=T(),$=a(B).with(null,()=>null).when(n,o=>o.state.page).when(i,t=>o(C,{summary:t.state.items})).otherwise(()=>null),q=j(),G=v(),J=y(),K=c({componentTypes:[s],entityIds:[R]}),Q=p(m),U=b(o=>R===o.state.rootEntityId,[R]),W=r(()=>(K??[]).flatMap(o=>o.state.tabs).map(o=>{let t=o.navigationStates[0];if(!t)throw Error(`Tab ${t} has no navigation states!`);return{label:O(o.label),icon:o.icon,value:t,isActive:o.navigationStates.includes(H)}}),[K,H,O]),X=r(()=>{let o=W.find(o=>o.isActive);return o?.value??"none"},[W]),Y=u();return o(e,{children:o(V,{canvas:o(h.Canvas,{}),sidebar:o(M,{hasSummary:q,isSummaryActive:z,summaryPage:$,price:Y,onEnterSummary:G,onLeaveSummary:J,tabs:W,activeTab:X,isRootPage:U,customPriceNode:Q?.state.node}),topNavigation:o(I,{}),branding:null,toolbar:o(E,{}),fullScreenToolbar:o(S,{}),viewControls:o(L,{}),toolControls:o(F,{}),overlay:t(e,{children:[o(P,{}),o(k,{}),o(A,{}),o(w,{})]}),mobileControls:o(g.ViewOnlyMode,{message:o(N,{})}),mobileTopNavigation:null,mobileHeaderActionButton:null,mobileHeaderCenter:null,sideEffects:o(D,{}),footer:o(x,{})})})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{useCallback as e,useMemo as i}from"react";import{match as m}from"ts-pattern";import{DimensionUnit as r}from"#package/domain";import{
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{useCallback as e,useMemo as i}from"react";import{match as m}from"ts-pattern";import{DimensionUnit as r}from"#package/domain";import{FrontendAnalyticsFactory as a,useAnalyticsService as n,useDimensionConfig as o,useDimensionState as l,useDimensions as s,useLocalizable as u}from"#package/react-sdk";import{ToggleSelector as c}from"#package/ui-sdk";let h=o=>{let{value:l}=o,u=n(),{setGlobalUnit:h}=s(),p=e(()=>{u.push(a.GlobalDimensionsButtonClicked(l)),h(l)},[u,l,h]),f=i(()=>m(l).with(r.mm,()=>"mm").with(r.cm,()=>"cm").with(r.m,()=>"m").with(r.inch,()=>"in").with(r.feet,()=>"ft").exhaustive(),[l]),w=i(()=>m(l).with(r.mm,()=>"millimeter").with(r.cm,()=>"centimeter").with(r.m,()=>"meter").with(r.inch,()=>"inches").with(r.feet,()=>"feet").exhaustive(),[l]);return t(c.Item,{value:l,"aria-label":w,onClick:p,children:f})},p={id:"sdk.toolbar.measurements.units.aria",message:"Measurement unit setup"};export const DimensionUnitSelector=()=>{let{availableDimensions:e}=o(),{unit:i}=l(),m=u(p);return e.length<=1?null:t(c.Root,{"aria-label":m,value:i,exclusive:!0,columnCount:"auto-fit",sx:{maxWidth:500},children:e.map(e=>t(h,{value:e},e))})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useLingui as i,Trans as t}from"@lingui/react";import{Switch as a}from"@mui/material";import{useObservableEagerState as r}from"observable-hooks";import{useCallback as o}from"react";import{applicationConfigComponent as m}from"#package/domain";import{FrontendAnalyticsFactory as n,useAnalyticsService as s,useFirstRootComponent as c}from"#package/react-sdk";import{MobileToolbar as l}from"#package/ui-sdk";import{useConfigurator as p}from"../../../../application-runtime/index.js";let d={"aria-label":{id:"sdk.toolbar.measurements.input.aria",message:"Switch measurements"}};export const MeasurementsIndicatorsSwitch=()=>{let{_:u}=i(),g=c(m),f=g?.state.indicatorSwitch??!0,k=s(),{canvasSystem:b}=p(),h=r(b.dimensionIndicatorShown$),I=o(()=>{k.push(n.DimensionIndicatorsToggled()),b.toggleDimensionIndicator()},[k,b]);return f?e(l.SectionItem,{title:e(t,{id:"sdk.toolbar.measurements.indicators.label",message:"Dimension indicators"}),content:e(a,{inputProps:{...d,"aria-label":u(d["aria-label"])},checked:h,onChange:I})}):null};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{memo as l,useCallback as t}from"react";import{useAnalyticsService as o,useDomain as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{memo as l,useCallback as t}from"react";import{FrontendAnalyticsFactory as r,useAnalyticsService as o,useDomain as s,useLocalizable as n}from"#package/react-sdk";import{DesktopToolbar as i,PhxIcon as a}from"#package/ui-sdk";let c={id:"sdk.toolbar.fullscreen.enter.label",message:"Open fullscreen"};export const EnterFullscreenToolbarAction=l(({openFullscreenButtonTitle:l=c,showTitle:m=!1})=>{let u=o(),{navigationSystem:d,storeSystem:g}=s(),p=t(()=>{u.push(r.FullScreenModeToggled()),g.stageAndCommit([d.getToggleFullscreenUpdate()])},[d,u,g]),f=n(l);return e(i.Button,{title:f,size:"small",onClick:p,showTitle:m,children:e(a,{name:"ArrowsOut"})})});let m={id:"sdk.toolbar.fullscreen.exit.label",message:"Exit fullscreen"};export const ExitFullscreenToolbarAction=l(({exitFullscreenButtonTitle:l=m,showTitle:c=!1})=>{let u=o(),{navigationSystem:d,storeSystem:g}=s(),p=t(()=>{u.push(r.FullScreenModeToggled()),g.stageAndCommit([d.getToggleFullscreenUpdate()])},[u,d,g]),f=n(l);return e(i.Button,{title:f,size:"small",onClick:p,showTitle:c,children:e(a,{name:"ArrowsIn"})})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as e,jsxs as o,Fragment as t}from"react/jsx-runtime";import{Trans as r}from"@lingui/react";import{Button as l}from"@mui/material";import{useCallback as a,useState as i}from"react";import{FrontendAnalyticsFactory as s,useAnalyticsService as n,useResolveLocalizable as m}from"#package/react-sdk";import{DesktopToolbar as p,Dialog as c,PhxIcon as d}from"#package/ui-sdk";let u={id:"sdk.toolbar.help.label",message:"Help"};export const HelpToolbarAction=g=>{let{content:h}=g,[k,b]=i(!1),f=n(),C=a(()=>{f.push(s.HelpDialogOpened()),b(!0)},[f]),x=a(()=>{f.push(s.HelpDialogClosed()),b(!1)},[f]),H=m();return o(t,{children:[e(p.Button,{title:H(u),onClick:C,children:e(d,{name:"Question"})}),e(c.Root,{isOpen:k,onClose:x,children:e(c.ContentLayout,{body:h,controls:e(l,{variant:"contained",onClick:x,children:e(r,{id:"sdk.toolbar.help.close.label",message:"Close"})})})})]})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import{useLingui as a}from"@lingui/react";import{Box as
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import{useLingui as a}from"@lingui/react";import{Box as n,Stack as m}from"@mui/material";import{memo as s,useCallback as o,useMemo as i}from"react";import{match as u}from"ts-pattern";import{DimensionUnit as c}from"#package/domain";import{FrontendAnalyticsFactory as p,useAnalyticsService as l,useDimensionState as h}from"#package/react-sdk";import{DesktopToolbar as d,PhxIcon as M}from"#package/ui-sdk";import{DimensionUnitSelector as g}from"../common/DimensionUnitSelector.js";import{MeasurementsIndicatorsSwitch as f}from"../common/MeasurementsIndicatorsSwitch.js";export const MeasurementIcon=t=>{let{unit:r}=t;return u(r).with(c.mm,()=>e(M,{name:"CustomMeasureMm"})).with(c.cm,()=>e(M,{name:"CustomMeasureCm"})).with(c.m,()=>e(M,{name:"CustomMeasureM"})).with(c.inch,()=>e(M,{name:"CustomMeasureIn"})).with(c.feet,()=>e(M,{name:"CustomMeasureFt"})).exhaustive()};let C="measurements";export const MeasurementsToolbarAction=s(s=>{let{anchorRef:u,onClose:c,onToggle:M,openedKey:k,i18n:x}=s,{_:w}=a(),b=i(()=>({changeMeasureButtonTitle:w({id:"sdk.measurements",message:"Change measure"}),changeMeasureButtonAriaLabel:w({id:"sdk.toolbar.measurements.change.aria",message:"open measure menu"}),...x}),[x,w]),j=l(),{unit:B}=h(),I=o(()=>{j.push(p.MeasurementsMenuToggled()),M(C)},[j,M]),T=o(e=>{j.push(p.MeasurementsMenuClosed()),c(e)},[j,c]);return t(r,{children:[e(d.Button,{title:b.changeMeasureButtonTitle,size:"small","aria-expanded":k===C?"true":void 0,"aria-label":b.changeMeasureButtonAriaLabel,"aria-haspopup":"menu",onClick:I,children:e(MeasurementIcon,{unit:B})}),e(d.Popper,{placement:"top-start",anchorEl:u.current,isOpen:k===C,onClose:T,children:e(n,{component:"div",sx:{p:2},children:t(m,{spacing:2,direction:"column",children:[e(f,{}),e(g,{})]})})})]})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o,jsxs as e}from"react/jsx-runtime";import{useThemeProps as r}from"@mui/material";import{useObservableEagerState as t}from"observable-hooks";import{memo as d,useCallback as i}from"react";import{
|
|
1
|
+
import{jsx as o,jsxs as e}from"react/jsx-runtime";import{useThemeProps as r}from"@mui/material";import{useObservableEagerState as t}from"observable-hooks";import{memo as d,useCallback as i}from"react";import{FrontendAnalyticsFactory as l,useAnalyticsService as a,useDomain as s,useResolveLocalizable as n}from"#package/react-sdk";import{DesktopToolbar as m,PhxIcon as u}from"#package/ui-sdk";let p={id:"sdk.toolbar.undoRedo.undo.label",message:"Undo"},c={id:"sdk.toolbar.undoRedo.redo.label",message:"Redo"};export const UndoRedoToolbarGroup=d(d=>{let{showLabels:k=!1,disableTooltip:b=!1,undoButtonTitle:h=p,redoButtonTitle:C=c}=r({name:"PhxToolbarUndoRedo",props:d}),f=a(),{undoSystem:w}=s(),{canUndo:R,canRedo:T}=t(w.can$),x=n(),B=i(()=>{f.push(l.UndoButtonClicked()),w.undo()},[f,w]),g=i(()=>{f.push(l.RedoButtonClicked()),w.redo()},[f,w]);return e(m.ButtonGroup,{children:[o(m.Button,{title:x(h),onClick:B,disabled:!R,showTitle:k,disableTooltip:b,children:o(u,{name:"ArrowCounterClockwise"})}),o(m.Button,{title:x(C),onClick:g,disabled:!T,showTitle:k,disableTooltip:b,children:o(u,{name:"ArrowClockwise"})})]})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{memo as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{memo as t,useCallback as r}from"react";import{createPhoenixLayoutElement as o,enterFullscreenToolbarButtonSchema as l}from"#package/domain";import{FrontendAnalyticsFactory as a,useAnalyticsService as n,useDomain as s,useLocalizable as m}from"#package/react-sdk";import{DesktopToolbar as c,PhxIcon as i}from"#package/ui-sdk";let p={id:"sdk.toolbar.fullscreen.enter.label",message:"Open fullscreen"};export const EnterFullscreenToolbarButton=o({schema:l,component:t(t=>{let{icon:o,showTitle:l=!1}=t,u=n(),{navigationSystem:d,storeSystem:g}=s(),f=r(()=>{u.push(a.FullScreenModeToggled()),g.stageAndCommit([d.getToggleFullscreenUpdate()])},[d,u,g]),k=m(p);return e(c.Button,{title:k,size:"small",onClick:f,showTitle:l,children:e(i,{name:o??"ArrowsOut"})})})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{memo as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{memo as t,useCallback as o}from"react";import{createPhoenixLayoutElement as r,exitFullscreenToolbarButtonSchema as l}from"#package/domain";import{FrontendAnalyticsFactory as a,useAnalyticsService as s,useDomain as m,useLocalizable as i}from"#package/react-sdk";import{DesktopToolbar as n,PhxIcon as c}from"#package/ui-sdk";let p={id:"sdk.toolbar.fullscreen.exit.label",message:"Exit fullscreen"};export const ExitFullscreenToolbarButton=r({schema:l,component:t(t=>{let{icon:r,showTitle:l=!1}=t,u=s(),{navigationSystem:d,storeSystem:g}=m(),f=o(()=>{u.push(a.FullScreenModeToggled()),g.stageAndCommit([d.getToggleFullscreenUpdate()])},[u,d,g]),k=i(p);return e(n.Button,{title:k,size:"small",onClick:f,showTitle:l,children:e(c,{name:r??"ArrowsIn"})})})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o,jsxs as e,Fragment as r}from"react/jsx-runtime";import{Trans as t}from"@lingui/react";import{Button as a}from"@mui/material";import{memo as l,useCallback as i,useState as
|
|
1
|
+
import{jsx as o,jsxs as e,Fragment as r}from"react/jsx-runtime";import{Trans as t}from"@lingui/react";import{Button as a}from"@mui/material";import{memo as l,useCallback as i,useState as s}from"react";import{createPhoenixLayoutElement as n,helpToolbarButtonSchema as m}from"#package/domain";import{FrontendAnalyticsFactory as p,useAnalyticsService as c,useLocalizable as d}from"#package/react-sdk";import{DesktopToolbar as u,Dialog as g,PhxIcon as h}from"#package/ui-sdk";import{ToolbarHelp as k}from"./ToolbarHelp.js";let f={id:"sdk.toolbar.help.label",message:"Help"};export const HelpToolbarButton=n({schema:m,component:l(l=>{let{children:n,icon:m}=l,[b,C]=s(!1),H=c(),j=i(()=>{H.push(p.HelpDialogOpened()),C(!0)},[H]),x=i(()=>{H.push(p.HelpDialogClosed()),C(!1)},[H]),T=d(f);return e(r,{children:[o(u.Button,{title:T,onClick:j,children:o(h,{name:m??"Question"})}),o(g.Root,{isOpen:b,onClose:x,children:o(g.ContentLayout,{body:n??o(k,{}),controls:o(a,{variant:"contained",onClick:x,children:o(t,{id:"sdk.toolbar.help.close.label",message:"Close"})})})})]})})});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PhoenixLayoutElementRegistration } from '#package/domain';
|
|
2
2
|
export declare const createLayoutCustomOwnerUi: (Element: () => JSX.Element) => PhoenixLayoutElementRegistration;
|
|
3
3
|
export type CreateLayoutCustomOwnerUi = (Element: () => JSX.Element) => PhoenixLayoutElementRegistration;
|
|
4
|
+
/** The owner UI of `layout: custom`. The project's element mounts no message services, so the save snackbars come from here. */
|
|
4
5
|
export declare const LayoutCustomOwnerUi: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as o}from"#package/domain";import{PhoenixLayoutElement as
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as o}from"#package/domain";import{PhoenixLayoutElement as r}from"#package/react-sdk";import{SaveMessageSnackbars as s}from"../save-message-snackbars/index.js";let m="LayoutCustomOwnerUi";export const createLayoutCustomOwnerUi=e=>o(m,e);export const LayoutCustomOwnerUi=()=>t(a,{children:[e(s,{}),e(r,{name:m,elementProps:{},defaultSlot:()=>null})]});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PhoenixLayoutElementRegistration } from '#package/domain';
|
|
2
2
|
export declare const createLayoutCustomReadUi: (Element: () => JSX.Element) => PhoenixLayoutElementRegistration;
|
|
3
3
|
export type CreateLayoutCustomReadUi = (Element: () => JSX.Element) => PhoenixLayoutElementRegistration;
|
|
4
|
+
/** The read UI of `layout: custom`. Read mode shows no save messages; the save snackbars are mounted so that one left from owner mode closes. */
|
|
4
5
|
export declare const LayoutCustomReadUi: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as o}from"#package/domain";import{PhoenixLayoutElement as
|
|
1
|
+
import{jsx as a,jsxs as e,Fragment as t}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as o}from"#package/domain";import{PhoenixLayoutElement as s}from"#package/react-sdk";import{SaveMessageSnackbars as r}from"../save-message-snackbars/index.js";let m="LayoutCustomReadUi";export const createLayoutCustomReadUi=a=>o(m,a);export const LayoutCustomReadUi=()=>e(t,{children:[a(r,{}),a(s,{name:m,elementProps:{},defaultSlot:()=>null})]});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as r,Fragment as s}from"react/jsx-runtime";import{Box as m,Stack as
|
|
1
|
+
import{jsx as e,jsxs as r,Fragment as s}from"react/jsx-runtime";import{Box as m,Stack as a}from"@mui/material";import{memo as n,useCallback as t}from"react";import{createPhoenixLayoutElement as o,measurementsToolbarButtonSchema as i}from"#package/domain";import{FrontendAnalyticsFactory as u,useAnalyticsService as p,useDimensionState as l,useLocalizable as c}from"#package/react-sdk";import{DesktopToolbar as d}from"#package/ui-sdk";import{DimensionUnitSelector as h}from"./measurements/DimensionUnitSelector.js";import{MeasurementsIcon as g}from"./measurements/MeasurementsIcon.js";import{MeasurementsIndicatorsSwitch as f}from"./measurements/MeasurementsIndicatorsSwitch.js";import{useMeasurementsVisibility as k}from"./measurements/use-measurements-visibility.js";let j="measurements",M={id:"sdk.measurements",message:"Change measure"},x={id:"sdk.toolbar.measurements.change.aria",message:"open measure menu"};export const MeasurementsToolbarButton=o({schema:i,component:n(n=>{let{showIndicatorSwitch:o,icons:i}=n,{ref:b,handleClose:C,handleToggle:T,openedKey:v}=d.useToolbarPopper(),B=p(),{unit:I}=l(),{indicatorSwitchShown:P,measurementsShown:S}=k(o),w=t(()=>{B.push(u.MeasurementsMenuToggled()),T(j)},[B,T]),y=t(e=>{B.push(u.MeasurementsMenuClosed()),C(e)},[B,C]),z=c(M),D=c(x);return S?r(s,{children:[e(d.Button,{ref:b,title:z,size:"small","aria-expanded":v===j?"true":void 0,"aria-label":D,"aria-haspopup":"menu",onClick:w,children:e(g,{unit:I,icons:i})}),e(d.Popper,{placement:"top-start",anchorEl:b.current,isOpen:v===j,onClose:y,children:e(m,{component:"div",sx:{p:2},children:r(a,{spacing:2,direction:"column",children:[P&&e(f,{}),e(h,{})]})})})]}):null})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o}from"react/jsx-runtime";import{memo as e
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{memo as e}from"react";import{createPhoenixLayoutElement as r,redoToolbarButtonSchema as t}from"#package/domain";import{useLocalizable as a,useUndoRedo as m}from"#package/react-sdk";import{DesktopToolbar as i,PhxIcon as d}from"#package/ui-sdk";let s={id:"sdk.toolbar.undoRedo.redo.label",message:"Redo"};export const RedoToolbarButton=r({schema:t,component:e(e=>{let{icon:r,showTitle:t=!1}=e,{canRedo:c,redo:l}=m(),n=a(s);return o(i.Button,{title:n,onClick:l,disabled:!c,showTitle:t,children:o(d,{name:r??"ArrowClockwise"})})})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o}from"react/jsx-runtime";import{memo as
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{memo as e}from"react";import{createPhoenixLayoutElement as t,undoToolbarButtonSchema as r}from"#package/domain";import{useLocalizable as a,useUndoRedo as m}from"#package/react-sdk";import{DesktopToolbar as n,PhxIcon as i}from"#package/ui-sdk";let d={id:"sdk.toolbar.undoRedo.undo.label",message:"Undo"};export const UndoToolbarButton=t({schema:r,component:e(e=>{let{icon:t,showTitle:r=!1}=e,{canUndo:s,undo:c}=m(),l=a(d);return o(n.Button,{title:l,onClick:c,disabled:!s,showTitle:r,children:o(i,{name:t??"ArrowCounterClockwise"})})})});
|
package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useMemo as e}from"react";import{
|
|
1
|
+
import{useMemo as e}from"react";import{FrontendAnalyticsFactory as o,useAccessService as t,useAnalyticsService as i,useDomainApplication as a,useIntegrationState as r}from"#package/react-sdk";import{useConfiguratorRouting as d,usePresetSelection as n,usePreview as s}from"../../../../../configurator-context/index.js";import{useCloseAction as c}from"../../../../../integration/index.js";export const useGoBackAction=()=>{let l=i(),{configurationPersistSystem:p}=a(),u=d(),{presetCategories:m}=n(),{isPreview:w,isPreviewEnabled:f,leave:g}=s(),{accessInfo:x}=t(),k=m.flatMap(e=>e.presets).length>1,v=r(),C=c();return e(()=>v.embeddedView?null:k?async()=>{l.push(o.GoToProductsClicked()),x.viewMode||await p.save(),u.goToIndex()}:null!==C?async()=>{l.push(o.CloseConfiguratorClicked()),x.viewMode||await p.save(),await C()}:f&&!w?()=>{l.push(o.ExpandedViewClosed()),g()}:null,[l,p,k,v.embeddedView,w,f,g,u,C,x.viewMode])};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{Tab as a,Tabs as
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{Tab as a,Tabs as e}from"@mui/material";import{memo as o,useCallback as n}from"react";import{horizontalTabsComponent as i}from"#package/domain";import{FrontendAnalyticsFactory as r,getI18nKey as s,useActiveNavigationState as l,useAnalyticsService as m,useComponents as c,useDomain as p,useResolveLocalizable as b}from"#package/react-sdk";import{PhxIcon as u}from"#package/ui-sdk";let d=o(o=>{let{component:i}=o,c=l(),d=m(),{navigationSystem:g,storeSystem:f}=p(),h=b(),v=i.state.tabs.findIndex(t=>t.navigationStates.includes(c));return t(e,{variant:"scrollable",value:-1!==v&&v,onChange:n((t,a)=>{let e=i.state.tabs[a];if(!e)return;let o=e.navigationStates[0];o&&(d.push(r.TopNavigationStepClicked(o)),f.stageAndCommit([g.getNavigationUpdate(o)]))},[i.state.tabs,d,f,g]),children:i.state.tabs.map(e=>t(a,{label:h(e.label),icon:e.icon?t(u,{name:e.icon}):void 0,iconPosition:"start"},s(e.label)))})});export const DesktopHorizontalTabs=o(()=>{let a=c({componentTypes:[i]});if(0===a.length)return null;if(a.length>1)throw Error("Multiple horizontal tabs components are active, only one horizontal tabs component can be active at a time, check your domain configuration to ensure only one horizontalTabs component is defined");return t(d,{component:a.at(0)})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t,jsxs as e}from"react/jsx-runtime";import{Trans as
|
|
1
|
+
import{jsx as t,jsxs as e}from"react/jsx-runtime";import{Trans as a}from"@lingui/react";import{memo as i,useCallback as o}from"react";import{FrontendAnalyticsFactory as s,useActiveNavigationState as n,useAnalyticsService as r,useDomain as p,usePresetEmbeddedState as c,useResolveLocalizable as l}from"#package/react-sdk";import{TopNavigation as d,useResponsive as m}from"#package/ui-sdk";import{useConfiguratorRouting as g,usePresetSelection as u}from"../../../../../configurator-context/index.js";export const StepsNavigation=i(i=>{let{steps:f}=i,k=r(),{navigationSystem:v,storeSystem:x}=p(),h=n(),C=g(),S=l(),{presetCategories:T}=u(),j=c(),N=T.flatMap(t=>t.presets).length>1,b=!j&&N,I=f.findIndex(t=>t.navigationStates.includes(h))+ +!!b,{isTablet:P}=m(),y=o(()=>{k.push(s.GoToProductsClicked()),C.goToIndex()},[k,C]);return e(d.Root,{activeStep:I,nonLinear:!0,compact:P,fullWidth:!0,children:[b&&t(d.Step,{isCompleted:!0,onClick:y,compact:P,children:t(a,{id:"sdk.layout.navigation.steps.first.label",message:"Products"})}),f.map((e,a)=>{let i=b?a<I-1:a<I,o=S(e.label);return t(d.Step,{isCompleted:i,isDisabled:!i,compact:P,onClick:()=>{let t=e.navigationStates[0];t&&(k.push(s.TopNavigationStepClicked(t)),x.stageAndCommit([v.getNavigationUpdate(t)]))},children:o},o)})]})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{useCallback as e,useMemo as i}from"react";import{match as m}from"ts-pattern";import{DimensionUnit as r}from"#package/domain";import{
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{useCallback as e,useMemo as i}from"react";import{match as m}from"ts-pattern";import{DimensionUnit as r}from"#package/domain";import{FrontendAnalyticsFactory as a,useAnalyticsService as n,useDimensionConfig as o,useDimensionState as l,useDimensions as s,useLocalizable as u}from"#package/react-sdk";import{ToggleSelector as c}from"#package/ui-sdk";let h=o=>{let{value:l}=o,u=n(),{setGlobalUnit:h}=s(),p=e(()=>{u.push(a.GlobalDimensionsButtonClicked(l)),h(l)},[u,l,h]),f=i(()=>m(l).with(r.mm,()=>"mm").with(r.cm,()=>"cm").with(r.m,()=>"m").with(r.inch,()=>"in").with(r.feet,()=>"ft").exhaustive(),[l]),w=i(()=>m(l).with(r.mm,()=>"millimeter").with(r.cm,()=>"centimeter").with(r.m,()=>"meter").with(r.inch,()=>"inches").with(r.feet,()=>"feet").exhaustive(),[l]);return t(c.Item,{value:l,"aria-label":w,onClick:p,children:f})},p={id:"sdk.toolbar.measurements.units.aria",message:"Measurement unit setup"};export const DimensionUnitSelector=()=>{let{availableDimensions:e}=o(),{unit:i}=l(),m=u(p);return e.length<=1?null:t(c.Root,{"aria-label":m,value:i,exclusive:!0,columnCount:"auto-fit",sx:{maxWidth:500},children:e.map(e=>t(h,{value:e},e))})};
|
package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{Trans as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{Trans as i}from"@lingui/react";import{Switch as t}from"@mui/material";import{useObservableEagerState as o}from"observable-hooks";import{useCallback as r}from"react";import{FrontendAnalyticsFactory as a,useAnalyticsService as s,useLocalizable as m}from"#package/react-sdk";import{MobileToolbar as n}from"#package/ui-sdk";import{useConfigurator as c}from"../../../application-runtime/index.js";let p={id:"sdk.toolbar.measurements.input.aria",message:"Switch measurements"};export const MeasurementsIndicatorsSwitch=()=>{let d=s(),{canvasSystem:l}=c(),u=o(l.dimensionIndicatorShown$),g=r(()=>{d.push(a.DimensionIndicatorsToggled()),l.toggleDimensionIndicator()},[d,l]),f=m(p);return e(n.SectionItem,{title:e(i,{id:"sdk.toolbar.measurements.indicators.label",message:"Dimension indicators"}),content:e(t,{inputProps:{"aria-label":f},checked:u,onChange:g})})};
|
package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import i from"lodash/noop.js";import{useCallback as e}from"react";import{finalizeButtonComponent as
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import i from"lodash/noop.js";import{useCallback as e}from"react";import{finalizeButtonComponent as a,finalizePageComponent as o}from"#package/domain";import{FrontendAnalyticsFactory as n,useAnalyticsService as s,useDomain as r,useFinalizeViolations as m,useFirstRootComponent as l}from"#package/react-sdk";import{CustomFinalizeButton as c}from"../common/CustomFinalizeButton.js";let u=()=>t(c,{hints:"Finalize feature is not configured.",disabled:!0,onClick:i}),d=i=>{let{finalizeNavigationStates:a}=i,{navigationSystem:o,storeSystem:l}=r(),u=s(),d=e(async()=>{let t=a[0];t&&(u.push(n.FinalizeButtonClicked()),l.stageAndCommit([o.getPushNavigationUpdate(t,l.stateSlices.committed.value.state)]))},[a,o,u,l]),{disabled:p,hints:f}=m();return t(c,{hints:f,disabled:p,onClick:d})};export const BasicFinalizeButton=()=>{let i=l(a),e=l(o);return i?i?.state.button:e?t(d,{finalizeNavigationStates:e.state.finalizeNavigationStates}):t(u,{})};
|
package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{Trans as o}from"@lingui/react";import{useCallback as
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{Trans as o}from"@lingui/react";import{useCallback as a}from"react";import{FrontendAnalyticsFactory as e,useAnalyticsService as i,useResolveLocalizable as r}from"#package/react-sdk";import{PhxIcon as s,ResponsiveSidebarFooterButton as n}from"#package/ui-sdk";export const CustomFinalizeButton=l=>{let{busy:m,disabled:p,hints:u,icon:c,onClick:d,title:f}=l,k=r(),g=i();return t(n,{tooltip:u,busy:m,disabled:p,onClick:a(t=>{t.preventDefault(),t.stopPropagation(),g.push(e.FinalizeButtonClicked()),d?.()},[g,d]),slotProps:{button:{startIcon:c?t(s,{name:c}):void 0}},children:f?k(f):t(o,{id:"sdk.layout.sidebar.finalizePage.label",message:"Finalize"})})};
|
package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{Trans as
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{Trans as t}from"@lingui/react";import{memo as m,useCallback as o}from"react";import{createPhoenixLayoutElement as a,enterSummaryButtonSchema as e}from"#package/domain";import{FrontendAnalyticsFactory as i,useAnalyticsService as n}from"#package/react-sdk";import{ResponsiveSidebarFooterButton as c}from"#package/ui-sdk";import{useEnterSidebarSummary as s}from"../../../../configurator-context/index.js";export const EnterSummaryButton=a({schema:e,component:m(()=>{let m=n(),a=s();return r(c,{onClick:o(()=>{m.push(i.SummaryButtonClicked()),a()},[m,a]),children:r(t,{id:"sdk.layout.summary.button.label",message:"Summary"})})})});
|
package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{Trans as e}from"@lingui/react";import{Button as a}from"@mui/material";import{memo as i,useCallback as o}from"react";import{createPhoenixLayoutElement as r,nextStepButtonSchema as n}from"#package/domain";import{
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{Trans as e}from"@lingui/react";import{Button as a}from"@mui/material";import{memo as i,useCallback as o}from"react";import{createPhoenixLayoutElement as r,nextStepButtonSchema as n}from"#package/domain";import{FrontendAnalyticsFactory as m,useAnalyticsService as s,useDomain as l}from"#package/react-sdk";import{useResponsive as c}from"#package/ui-sdk";import{useConfigurator as p}from"../../../../application-runtime/index.js";export const NextStepButton=r({schema:n,component:i(()=>{let i=s(),{layoutSystem:r}=p(),{navigationSystem:n,storeSystem:d}=l(),{isDesktop:g}=c(),u=o(()=>{let t=n.getActiveNavigationState(d.stateSlices.committed.value.state),e=r.getNavigationSteps(d.stateSlices.committed.value.state);i.push(m.NextStepButtonClicked());let a=e.findIndex(e=>e.navigationStates.includes(t)),o=e[a+1];if(!o)return;let s=o.navigationStates[0];s&&d.stageAndCommit([n.getNavigationUpdate(s)])},[i,n,d,r]);return g?t(a,{variant:"contained",color:"primary",size:"large",onClick:u,children:t(e,{id:"sdk.layout.sidebar.nextStep.label",message:"Next step"})}):t(a,{variant:"contained",color:"primary",size:"small",onClick:u,children:t(e,{id:"sdk.layout.sidebar.nextStepShort.label",message:"Next"})})})});
|
package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{IconButton as e,Tooltip as i}from"@mui/material";import{memo as a,useCallback as o}from"react";import{createPhoenixLayoutElement as r,previousStepButtonSchema as
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{IconButton as e,Tooltip as i}from"@mui/material";import{memo as a,useCallback as o}from"react";import{createPhoenixLayoutElement as r,previousStepButtonSchema as n}from"#package/domain";import{FrontendAnalyticsFactory as m,useAnalyticsService as s,useDomain as l,useLocalizable as c}from"#package/react-sdk";import{PhxIcon as p,useResponsive as d}from"#package/ui-sdk";import{useConfigurator as u}from"../../../../application-runtime/index.js";import{useBackToPresetEnabled as g,useConfiguratorRouting as f,useSteps as v}from"../../../../configurator-context/index.js";let S={id:"sdk.layout.sidebar.previousStep.label",message:"Previous step"};export const PreviousStepButton=r({schema:n,component:a(a=>{let{icon:r}=a,n=c(S),k=s(),x=g(),{layoutSystem:h}=u(),j=f(),{navigationSystem:C,storeSystem:b}=l(),{isDesktop:N}=d(),{previousStepDisabled:P}=v();return t(i,{title:n,placement:"top",children:t("span",{style:{alignSelf:"center"},children:t(e,{variant:"muted",color:"default",size:N?"medium":"small",disabled:P,onClick:o(()=>{let t=C.getActiveNavigationState(b.stateSlices.committed.value.state),e=h.getNavigationSteps(b.stateSlices.committed.value.state);k.push(m.PreviousStepButtonClicked());let i=e.findIndex(e=>e.navigationStates.includes(t)),a=e[i-1];if(!a){x&&j.goToIndex();return}let o=a.navigationStates[0];o&&b.stageAndCommit([C.getNavigationUpdate(o)])},[k,C,x,j,b,h]),children:t(p,{name:r??"CaretLeft"})})})})})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as i}from"react/jsx-runtime";import{useCallback as r,useState as s}from"react";import{
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as i}from"react/jsx-runtime";import{useCallback as r,useState as s}from"react";import{useResolveLocalizable as o,useResourceUrl as l}from"#package/react-sdk";import{Preset as n}from"#package/ui-sdk";import{ConfigurationNotFoundPageElement as a}from"../../configuration-not-found-page/index.js";import{usePresetSelection as d,usePreview as m}from"../../configurator-context/index.js";import{ClosePresetScreenButton as c}from"./ClosePresetScreenButton.js";import{PresetBackButton as g}from"./PresetBackButton.js";import{PresetPreviewLayout as p}from"./PresetPreviewLayout.js";import{PresetSnackbarsRoot as u}from"./PresetSnackbarsRoot.js";let f={id:"sdk.presets.select.button.label",message:"Select"},k={id:"sdk.presets.detail.close.label",message:"Close"},S={id:"sdk.presets.detail.learnMore.label",message:"Learn more"},h={id:"sdk.presets.detail.select.label",message:"Select"},B=t=>{let{id:i,name:s,description:a,img:m,imgAlt:c,detailTitle:g,detailDescription:p}=t,{selectPreset:u,creatingPresetId:B}=d(),b=o(),{getResourceUrl:C}=l(),T=r(()=>{u(i)},[u,i]),j=(m&&C(m))??"",y=B===i;return e(n.Card,{title:b(s),description:b(a),imgSrc:j,imgAlt:b(c),selectButtonTitle:b(f),loading:y,disabled:null!==B&&!y,onSelect:T,additionalInfoButton:void 0!==g&&void 0!==p&&e(n.DetailDialog,{img:j,imgAlt:b(c),detailTitle:b(g),detailDescription:b(p),closeButtonTitle:b(k),learnMoreLinkTitle:b(S),selectButtonTitle:b(h),onSelect:T})},b(s))},b=t=>{let{id:i,name:s,description:a,img:d,imgAlt:m,onSelect:c}=t,g=o(),{getResourceUrl:p}=l(),u=r(()=>{c(i)},[c,i]);return e(n.Card,{title:g(s),description:g(a),imgSrc:(d&&p(d))??"",imgAlt:g(m),selectButtonTitle:g(f),onSelect:u},g(s))},C={id:"sdk.presets.category.count.message",message:"{presetCount, plural, one {# preset} other {# presets}}"},T=t=>{let{selectedCategory:r,onCategorySelected:s}=t,{presetCategories:l}=d(),n=o();if(1===l.length)return e(i,{children:l[0].presets.map(t=>e(B,{id:t.id,name:t.name,description:t.description,img:t.img,imgAlt:t.imgAlt,detailTitle:t.detailTitle,detailDescription:t.detailDescription},t.id))});if(null!==r){let t=l.find(e=>e.id===r);if(void 0===t)throw Error(`Category with id ${r} not found!`);return e(i,{children:t.presets.map(t=>e(B,{id:t.id,name:t.name,description:t.description,img:t.img,imgAlt:t.imgAlt,detailTitle:t.detailTitle,detailDescription:t.detailDescription},t.id))})}return e(i,{children:l.map(t=>e(b,{id:t.id,name:t.name,description:t.description??n({...C,values:{presetCount:t.presets.length}}),img:t.img,imgAlt:t.imgAlt,onSelect:s},t.id))})},j={id:"sdk.presets.category.heading.title",message:"Select starting preset"},y={id:"sdk.presets.preview.title",message:"Customize product"},A={id:"sdk.presets.start.button.label",message:"Start configuring"};export const CategoryPresetUi=l=>{let{action:f,footer:k,overlay:S}=l,[h,B]=s(null),{isPreview:b}=m(),C=o(),v=r(()=>{B(null)},[]),{presetCategories:x}=d();return b?e(p,{title:C(y),startButtonLabel:C(A)}):0===x.length?e(a,{}):t(i,{children:[e(n.ScreenLayout,{heading:C(j),action:f,footer:k,overlay:S,backButton:h&&e(g,{onBack:v}),closeButton:!h&&e(c,{}),children:e(T,{selectedCategory:h,onCategorySelected:B})}),e(u,{})]})};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shows the save messages of `useConfiguratorMessages` as snackbars: a `saveError` as an error snackbar that stays
|
|
3
|
+
* until it is dismissed or a later save succeeds, and a `saveRecovery` as an informational one. Mounted wherever a
|
|
4
|
+
* layout mounts its message services: `LayoutSlots.Services`, the legacy layouts' overlays and the `custom` owner UI.
|
|
5
|
+
* In read mode, from the access or the web component's `readonly`, nothing is saved: an error snackbar left from
|
|
6
|
+
* owner mode is closed and no message is shown. The read UIs that replace an owner UI in read mode
|
|
7
|
+
* (`SummaryReadLayout`, the `custom` read UI) mount it too, since the owner UI's instance unmounts before it can close
|
|
8
|
+
* the snackbar.
|
|
9
|
+
*/
|
|
10
|
+
export declare const SaveMessageSnackbars: () => null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{Trans as e}from"@lingui/react";import{Button as s}from"@mui/material";import{useSnackbar as i}from"notistack";import{useEffect as t}from"react";import{useApplicationRuntime as o,useApplicationRuntimeSelector as a,useConfiguratorMessages as n}from"#package/react-sdk";let m="phx-configuration-persist-system-failure";export const SaveMessageSnackbars=()=>{let c=a(o().selectors.domainContext.configurator.getInitializationState).isViewMode,{enqueueSnackbar:d,closeSnackbar:p}=i();return t(()=>{c&&p(m)},[c,p]),n(i=>{c||("saveError"===i.kind&&d(r(e,{id:"sdk.persist.system.error.message",message:"An error occured when trying to update a configuration"}),{variant:"error",key:m,persist:!0,preventDuplicate:!0,action:i=>r(s,{color:"inherit",size:"small",onClick:()=>{p(i)},children:r(e,{id:"sdk.persist.system.error.dismiss",message:"Dismiss"})})}),"saveRecovery"===i.kind&&(p(m),d(r(e,{id:"sdk.persist.system.error.recovered",message:"Configuration updated"}),{variant:"info"})))}),null};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { SaveMessageSnackbars } from './SaveMessageSnackbars.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{SaveMessageSnackbars}from"./SaveMessageSnackbars.js";
|
|
@@ -189,6 +189,7 @@ interface ChildEntityCardSelectorSchema {
|
|
|
189
189
|
interface ChildEntitySelectionComponentState {
|
|
190
190
|
value: { $read: string } // Read-only - system manages DomainEntityId updates
|
|
191
191
|
options: { $read: string } // Expression returning ChildEntitySelectionOption[]
|
|
192
|
+
keepChildren?: boolean // Keep the children of the replaced entity; by default they are deleted
|
|
192
193
|
}
|
|
193
194
|
|
|
194
195
|
// Each selectable option configuration
|
package/dist/docs/fabs/basic.mdx
CHANGED
|
@@ -62,8 +62,8 @@ Lastly as both `sceneEntityDeleteFab` and `sceneEntityAddFab` are controls that
|
|
|
62
62
|
|
|
63
63
|
All on-scene controls allow definition of `azimuthAngleLimits`, `polarAngleLimits` and `distanceLimits` properties to limit the visibility of the control based on the camera position. These properties optionally take an object with the following properties:
|
|
64
64
|
|
|
65
|
-
- `min`, `max` - the range of the angle or distance where the control is visible
|
|
66
|
-
- `minOpacity` - the opacity of the control when the camera is out of the range (default is `0
|
|
65
|
+
- `min`, `max` (both required) - the range of the angle or distance where the control is visible
|
|
66
|
+
- `minOpacity` - the opacity of the control when the camera is out of the range (default is `0`)
|
|
67
67
|
- `smoothZone` - zone that eats from both sides of the range, where the opacity is interpolated from `minOpacity` to `1.0` (default is `(max - min) / 8`)
|
|
68
68
|
|
|
69
69
|
All three limits can be used separately or combined. The angle limits are in radians and the distance limits respect the `unit` defined on the component.
|
package/dist/docs/index.json
CHANGED