@picked/client 0.0.1-dev.1788925875333 → 0.0.1-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -0
- package/dist/cjs/index.js +1 -4
- package/dist/cjs/plugins/create-experience/index.js +1 -1
- package/dist/cjs/plugins/experience-browserstorage-plugin/index.js +1 -0
- package/dist/cjs/plugins/history-browserstorage-plugin/index.js +1 -0
- package/dist/cjs/plugins/responses-browserstorage-plugin/index.js +1 -0
- package/dist/cjs/plugins/responses-indexeddb-plugin/index.js +1 -0
- package/dist/cjs/plugins/shopify/index.js +1 -0
- package/dist/cjs/plugins/single-page-app/index.js +1 -1
- package/dist/cjs/plugins/window-object/index.js +1 -1
- package/dist/cjs/server/index.js +1 -1
- package/dist/esm/index.js +733 -1814
- package/dist/esm/plugins/create-experience/index.js +398 -490
- package/dist/esm/plugins/experience-browserstorage-plugin/index.js +38 -0
- package/dist/esm/plugins/history-browserstorage-plugin/index.js +26 -0
- package/dist/esm/plugins/responses-browserstorage-plugin/index.js +36 -0
- package/dist/esm/plugins/responses-indexeddb-plugin/index.js +101 -0
- package/dist/esm/plugins/shopify/index.js +59 -0
- package/dist/esm/plugins/single-page-app/index.js +35 -31
- package/dist/esm/plugins/window-object/index.js +9 -9
- package/dist/esm/server/index.js +89 -141
- package/dist/experience-instance-6ZKZS7dF.cjs +1 -0
- package/dist/experience-instance-BA0EXYg5.js +712 -0
- package/dist/id-BKIWbSTy.cjs +1 -0
- package/dist/id-BW-g3y32.js +6 -0
- package/dist/logger-BsmHUUw1.cjs +1 -0
- package/dist/logger-C9a75KZn.js +5 -0
- package/dist/object-BbFTsGh3.cjs +1 -0
- package/dist/object-JwZ58NOH.js +28 -0
- package/dist/storage-BPJwmlva.cjs +1 -0
- package/dist/storage-D87xFySf.js +85 -0
- package/dist/supports-BvrzQAVk.js +79 -0
- package/dist/supports-C0y3-V5V.cjs +1 -0
- package/dist/types/client.d.ts +23 -119
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/entities/component/component.d.ts +6 -45
- package/dist/types/entities/component/component.d.ts.map +1 -1
- package/dist/types/entities/experience/experience.d.ts +99 -152
- package/dist/types/entities/experience/experience.d.ts.map +1 -1
- package/dist/types/entities/experience-instance/experience-instance.d.ts +113 -83
- package/dist/types/entities/experience-instance/experience-instance.d.ts.map +1 -1
- package/dist/types/entities/feature/feature.d.ts +8 -118
- package/dist/types/entities/feature/feature.d.ts.map +1 -1
- package/dist/types/entities/field/field.d.ts +64 -96
- package/dist/types/entities/field/field.d.ts.map +1 -1
- package/dist/types/entities/framework/framework.d.ts +7 -32
- package/dist/types/entities/framework/framework.d.ts.map +1 -1
- package/dist/types/entities/history/history.d.ts +6 -6
- package/dist/types/entities/history/history.d.ts.map +1 -1
- package/dist/types/entities/plugin/plugin.d.ts +2 -41
- package/dist/types/entities/plugin/plugin.d.ts.map +1 -1
- package/dist/types/entities/predicate/predicate.d.ts +7 -30
- package/dist/types/entities/predicate/predicate.d.ts.map +1 -1
- package/dist/types/entities/project/project.d.ts +9 -0
- package/dist/types/entities/project/project.d.ts.map +1 -0
- package/dist/types/entities/response/response.d.ts +21 -57
- package/dist/types/entities/response/response.d.ts.map +1 -1
- package/dist/types/exports.d.ts +4 -22
- package/dist/types/exports.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -12
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/logic-engine.d.ts +11 -13
- package/dist/types/logic-engine.d.ts.map +1 -1
- package/dist/types/picked.d.ts +184 -381
- package/dist/types/picked.d.ts.map +1 -1
- package/dist/types/ping.d.ts +10 -0
- package/dist/types/ping.d.ts.map +1 -0
- package/dist/types/plugins/create-experience/create-experience.d.ts +44 -119
- package/dist/types/plugins/create-experience/create-experience.d.ts.map +1 -1
- package/dist/types/plugins/create-experience/index.d.ts +2 -2
- package/dist/types/plugins/create-experience/index.d.ts.map +1 -1
- package/dist/types/plugins/create-experience/plugin.d.ts +2 -3
- package/dist/types/plugins/create-experience/plugin.d.ts.map +1 -1
- package/dist/types/plugins/create-experience/serialization.d.ts.map +1 -1
- package/dist/types/plugins/experience-browserstorage-plugin/index.d.ts.map +1 -0
- package/dist/types/plugins/experience-browserstorage-plugin/plugin.d.ts +6 -0
- package/dist/types/plugins/experience-browserstorage-plugin/plugin.d.ts.map +1 -0
- package/dist/types/plugins/history-browserstorage-plugin/index.d.ts.map +1 -0
- package/dist/types/plugins/{history-browser-storage → history-browserstorage-plugin}/plugin.d.ts +1 -2
- package/dist/types/plugins/history-browserstorage-plugin/plugin.d.ts.map +1 -0
- package/dist/types/plugins/responses-browserstorage-plugin/index.d.ts.map +1 -0
- package/dist/types/plugins/responses-browserstorage-plugin/plugin.d.ts +6 -0
- package/dist/types/plugins/responses-browserstorage-plugin/plugin.d.ts.map +1 -0
- package/dist/types/plugins/responses-indexeddb-plugin/index.d.ts.map +1 -0
- package/dist/types/plugins/responses-indexeddb-plugin/plugin.d.ts +3 -0
- package/dist/types/plugins/responses-indexeddb-plugin/plugin.d.ts.map +1 -0
- package/dist/types/plugins/shopify/index.d.ts +2 -0
- package/dist/types/plugins/shopify/index.d.ts.map +1 -0
- package/dist/types/plugins/shopify/plugin.d.ts +3 -0
- package/dist/types/plugins/shopify/plugin.d.ts.map +1 -0
- package/dist/types/plugins/shopify/shopify.d.ts +28 -0
- package/dist/types/plugins/shopify/shopify.d.ts.map +1 -0
- package/dist/types/plugins/single-page-app/plugin.d.ts +2 -2
- package/dist/types/plugins/single-page-app/plugin.d.ts.map +1 -1
- package/dist/types/plugins/window-object/plugin.d.ts +2 -2
- package/dist/types/server/index.d.ts +3 -18
- package/dist/types/server/index.d.ts.map +1 -1
- package/dist/types/utils/dom.d.ts +6 -4
- package/dist/types/utils/dom.d.ts.map +1 -1
- package/dist/types/utils/events.d.ts +38 -83
- package/dist/types/utils/events.d.ts.map +1 -1
- package/dist/types/utils/global-obj.d.ts +2 -1
- package/dist/types/utils/global-obj.d.ts.map +1 -1
- package/dist/types/utils/id.d.ts.map +1 -1
- package/dist/types/utils/indexed-db.d.ts +1 -2
- package/dist/types/utils/indexed-db.d.ts.map +1 -1
- package/dist/types/utils/logger.d.ts +1 -2
- package/dist/types/utils/logger.d.ts.map +1 -1
- package/dist/types/utils/node-tree/get-next-node-from-conditional.d.ts +3 -0
- package/dist/types/utils/node-tree/get-next-node-from-conditional.d.ts.map +1 -0
- package/dist/types/utils/node-tree/get-next-node.d.ts +1 -1
- package/dist/types/utils/node-tree/get-next-node.d.ts.map +1 -1
- package/dist/types/utils/node-tree/get-origin-node.d.ts +1 -1
- package/dist/types/utils/node-tree/get-origin-node.d.ts.map +1 -1
- package/dist/types/utils/node-tree/min-max-steps-to-leaf.d.ts +1 -1
- package/dist/types/utils/node-tree/min-max-steps-to-leaf.d.ts.map +1 -1
- package/dist/types/utils/node-tree/min-max-steps-to-origin.d.ts +1 -1
- package/dist/types/utils/node-tree/min-max-steps-to-origin.d.ts.map +1 -1
- package/dist/types/utils/node-tree/next-reachable-step-nodes.d.ts +1 -1
- package/dist/types/utils/node-tree/next-reachable-step-nodes.d.ts.map +1 -1
- package/dist/types/utils/nodes.d.ts +2 -3
- package/dist/types/utils/nodes.d.ts.map +1 -1
- package/dist/types/utils/object.d.ts +8 -0
- package/dist/types/utils/object.d.ts.map +1 -1
- package/dist/types/utils/rules-logic.d.ts +3 -33
- package/dist/types/utils/rules-logic.d.ts.map +1 -1
- package/dist/types/utils/search-params.d.ts.map +1 -1
- package/dist/types/utils/state-snaphot.d.ts +16 -0
- package/dist/types/utils/state-snaphot.d.ts.map +1 -0
- package/dist/types/utils/storage.d.ts +11 -374
- package/dist/types/utils/storage.d.ts.map +1 -1
- package/dist/types/utils/supports.d.ts +0 -87
- package/dist/types/utils/supports.d.ts.map +1 -1
- package/package.json +49 -182
- package/dist/.tsbuildinfo +0 -1
- package/dist/api-DbMJli3H.js +0 -22
- package/dist/api-qiqq8lgz.cjs +0 -1
- package/dist/cjs/form/index.js +0 -1
- package/dist/cjs/plugins/dom-observer/index.js +0 -1
- package/dist/cjs/plugins/dynamic-experiences/index.js +0 -1
- package/dist/cjs/plugins/experience-browser-storage/index.js +0 -1
- package/dist/cjs/plugins/history-browser-storage/index.js +0 -1
- package/dist/cjs/plugins/responses-browser-storage/index.js +0 -1
- package/dist/cjs/plugins/responses-indexeddb/index.js +0 -1
- package/dist/cjs/plugins/telemetry/index.js +0 -1
- package/dist/cjs/plugins/web-components/index.js +0 -1
- package/dist/cjs/preview/index.js +0 -1
- package/dist/docs/_root.css +0 -101
- package/dist/docs/explanation/conditions-and-the-logic-engine.md +0 -94
- package/dist/docs/explanation/content-references.md +0 -99
- package/dist/docs/explanation/feature-flag-allocation.md +0 -218
- package/dist/docs/explanation/how-picked-works.md +0 -124
- package/dist/docs/explanation/how-pickedql-works.md +0 -76
- package/dist/docs/explanation/pages-and-flows.md +0 -64
- package/dist/docs/explanation/the-content-model.md +0 -87
- package/dist/docs/explanation/the-two-apis.md +0 -68
- package/dist/docs/explanation/why-server-side-rendering.md +0 -76
- package/dist/docs/explanation/workspaces-and-versions.md +0 -71
- package/dist/docs/how-to/add-a-step-field-or-action.md +0 -43
- package/dist/docs/how-to/analytics/index.md +0 -316
- package/dist/docs/how-to/archive-or-delete-a-workspace.md +0 -46
- package/dist/docs/how-to/authenticate-the-cli.md +0 -97
- package/dist/docs/how-to/authenticate-with-a-magic-link.md +0 -40
- package/dist/docs/how-to/authenticate-with-a-password.md +0 -51
- package/dist/docs/how-to/authenticate-with-an-api-key.md +0 -51
- package/dist/docs/how-to/authenticate-with-oauth.md +0 -40
- package/dist/docs/how-to/build-a-flow.md +0 -83
- package/dist/docs/how-to/connect-the-mcp-server.md +0 -38
- package/dist/docs/how-to/create-a-content-entry.md +0 -48
- package/dist/docs/how-to/create-a-project.md +0 -29
- package/dist/docs/how-to/create-an-experience.md +0 -42
- package/dist/docs/how-to/create-and-revoke-an-api-key.md +0 -42
- package/dist/docs/how-to/debug-with-the-chrome-extension.md +0 -57
- package/dist/docs/how-to/define-a-page-layout.md +0 -46
- package/dist/docs/how-to/fill-and-publish-a-page.md +0 -66
- package/dist/docs/how-to/install-the-gtm-template.md +0 -84
- package/dist/docs/how-to/install-the-sdk.md +0 -93
- package/dist/docs/how-to/install-the-vite-plugin.md +0 -69
- package/dist/docs/how-to/invite-and-remove-members.md +0 -34
- package/dist/docs/how-to/point-one-entry-at-another.md +0 -61
- package/dist/docs/how-to/preview-a-workspace.md +0 -28
- package/dist/docs/how-to/publish-a-workspace.md +0 -30
- package/dist/docs/how-to/read-a-feature-flag.md +0 -113
- package/dist/docs/how-to/read-a-referenced-entry.md +0 -109
- package/dist/docs/how-to/register-a-component.md +0 -55
- package/dist/docs/how-to/register-an-action-handler.md +0 -67
- package/dist/docs/how-to/render-a-step-form.md +0 -131
- package/dist/docs/how-to/render-an-unpublished-preview.md +0 -41
- package/dist/docs/how-to/reuse-a-section.md +0 -53
- package/dist/docs/how-to/reuse-a-step-field-or-action.md +0 -28
- package/dist/docs/how-to/roll-back-a-published-version.md +0 -26
- package/dist/docs/how-to/run-an-ab-test.md +0 -49
- package/dist/docs/how-to/run-code-on-a-form-submission.md +0 -125
- package/dist/docs/how-to/server-render-a-page.md +0 -81
- package/dist/docs/how-to/set-a-content-security-policy.md +0 -32
- package/dist/docs/how-to/set-up-mfa.md +0 -69
- package/dist/docs/how-to/switch-workspaces.md +0 -122
- package/dist/docs/how-to/upload-and-use-an-asset.mdx +0 -73
- package/dist/docs/how-to/validate-a-field.md +0 -52
- package/dist/docs/how-to/write-a-condition.md +0 -45
- package/dist/docs/how-to/write-a-predicate.md +0 -60
- package/dist/docs/index.md +0 -59
- package/dist/docs/reference/dashboard/actions.mdx +0 -53
- package/dist/docs/reference/dashboard/api-keys.mdx +0 -38
- package/dist/docs/reference/dashboard/conditions.mdx +0 -42
- package/dist/docs/reference/dashboard/content/asset-library.mdx +0 -63
- package/dist/docs/reference/dashboard/content/blocks.mdx +0 -57
- package/dist/docs/reference/dashboard/content/content-entries.mdx +0 -95
- package/dist/docs/reference/dashboard/content/models.mdx +0 -108
- package/dist/docs/reference/dashboard/content/pages.mdx +0 -61
- package/dist/docs/reference/dashboard/experiences.mdx +0 -51
- package/dist/docs/reference/dashboard/features.mdx +0 -154
- package/dist/docs/reference/dashboard/fields.mdx +0 -106
- package/dist/docs/reference/dashboard/flow-builder/canvas.mdx +0 -58
- package/dist/docs/reference/dashboard/flow-builder/condition-builder.md +0 -57
- package/dist/docs/reference/dashboard/flow-builder/keyboard-shortcuts.md +0 -72
- package/dist/docs/reference/dashboard/flow-builder/nodes.md +0 -63
- package/dist/docs/reference/dashboard/projects.mdx +0 -44
- package/dist/docs/reference/dashboard/reports.mdx +0 -43
- package/dist/docs/reference/dashboard/steps.mdx +0 -37
- package/dist/docs/reference/dashboard/team-management.md +0 -29
- package/dist/docs/reference/dashboard/workspace-versioning.mdx +0 -30
- package/dist/docs/reference/dashboard/workspaces.mdx +0 -76
- package/dist/docs/reference/delivery-api/experience-content.md +0 -152
- package/dist/docs/reference/delivery-api/index.md +0 -45
- package/dist/docs/reference/delivery-api/preview-caching-crawling.md +0 -79
- package/dist/docs/reference/delivery-api/project-config.md +0 -65
- package/dist/docs/reference/delivery-api/workspace-schema.md +0 -85
- package/dist/docs/reference/glossary.md +0 -181
- package/dist/docs/reference/management-api/authentication.md +0 -74
- package/dist/docs/reference/management-api/authorization-and-scopes.md +0 -285
- package/dist/docs/reference/management-api/error-handling.md +0 -233
- package/dist/docs/reference/management-api/pagination.md +0 -192
- package/dist/docs/reference/pickedql/data-sources.md +0 -174
- package/dist/docs/reference/pickedql/dimensions.md +0 -103
- package/dist/docs/reference/pickedql/filtering.md +0 -64
- package/dist/docs/reference/pickedql/index.md +0 -18
- package/dist/docs/reference/pickedql/schema.md +0 -172
- package/dist/docs/reference/pickedql/virtual-functions.md +0 -248
- package/dist/docs/reference/sdk/actions.md +0 -30
- package/dist/docs/reference/sdk/analytics-events.md +0 -445
- package/dist/docs/reference/sdk/conditions.md +0 -147
- package/dist/docs/reference/sdk/content-security-policy.md +0 -21
- package/dist/docs/reference/sdk/content.md +0 -213
- package/dist/docs/reference/sdk/experiences.md +0 -51
- package/dist/docs/reference/sdk/features.md +0 -256
- package/dist/docs/reference/sdk/fields.md +0 -255
- package/dist/docs/reference/sdk/index.md +0 -68
- package/dist/docs/reference/sdk/plugins/create-experience.md +0 -123
- package/dist/docs/reference/sdk/plugins/dynamic-experiences.md +0 -74
- package/dist/docs/reference/sdk/plugins/index.md +0 -29
- package/dist/docs/reference/sdk/plugins/window-object.md +0 -25
- package/dist/docs/reference/sdk/predicates.md +0 -43
- package/dist/docs/reference/sdk/ssr/index.md +0 -33
- package/dist/docs/reference/sdk/ssr/rendering-and-hydration.md +0 -103
- package/dist/docs/reference/sdk/ssr/serialize.md +0 -80
- package/dist/docs/reference/sdk/ssr/slots-and-placements.md +0 -59
- package/dist/docs/reference/sdk/steps.md +0 -86
- package/dist/docs/reference/sdk/type-generation.md +0 -196
- package/dist/docs/reference/tools/chrome-extension.md +0 -16
- package/dist/docs/reference/tools/cli.md +0 -146
- package/dist/docs/reference/tools/image-optimisation-service.md +0 -104
- package/dist/docs/reference/tools/mcp.md +0 -90
- package/dist/docs/reference/tools/vite-plugin.md +0 -163
- package/dist/docs/tutorials/first-api-call.md +0 -228
- package/dist/docs/tutorials/first-experience-in-the-dashboard.mdx +0 -143
- package/dist/docs/tutorials/first-experience.mdx +0 -254
- package/dist/docs/tutorials/first-server-rendered-page.mdx +0 -186
- package/dist/dom-BqcToNL0.js +0 -82
- package/dist/dom-DlLH3FxV.cjs +0 -1
- package/dist/emit-D-tLiWL1.cjs +0 -1
- package/dist/emit-Ds2EG7CB.js +0 -14
- package/dist/esm/form/index.js +0 -565
- package/dist/esm/plugins/dom-observer/index.js +0 -87
- package/dist/esm/plugins/dynamic-experiences/index.js +0 -5
- package/dist/esm/plugins/experience-browser-storage/index.js +0 -38
- package/dist/esm/plugins/history-browser-storage/index.js +0 -26
- package/dist/esm/plugins/responses-browser-storage/index.js +0 -71
- package/dist/esm/plugins/responses-indexeddb/index.js +0 -89
- package/dist/esm/plugins/telemetry/index.js +0 -100
- package/dist/esm/plugins/web-components/index.js +0 -19
- package/dist/esm/preview/index.js +0 -2
- package/dist/experience-instance-DGk11d8a.js +0 -563
- package/dist/experience-instance-Dej3P1sE.cjs +0 -1
- package/dist/id-Bo4RBeOs.js +0 -4
- package/dist/id-Js-62re-.cjs +0 -1
- package/dist/inert-script-report-B_bMPRzp.js +0 -18
- package/dist/inert-script-report-ijRHPtcY.cjs +0 -1
- package/dist/logger-CSTvAyyB.cjs +0 -1
- package/dist/logger-DMN6TxJJ.js +0 -4
- package/dist/object-BUDGxEqy.js +0 -25
- package/dist/object-CIkt7Fkr.cjs +0 -1
- package/dist/plugin-BcLaCLm1.cjs +0 -1
- package/dist/plugin-De_BJSwE.js +0 -194
- package/dist/preview-channel-CSr96XAo.js +0 -98
- package/dist/preview-channel-Cx0e6fye.cjs +0 -1
- package/dist/protocol-Bb_vpLKE.cjs +0 -1
- package/dist/protocol-C5KkkiZc.js +0 -84
- package/dist/provider-C_9u0yGJ.cjs +0 -1
- package/dist/provider-ovM-CBX_.js +0 -98
- package/dist/registry-C1t8l3t9.cjs +0 -1
- package/dist/registry-CXZv0uLg.js +0 -18
- package/dist/rules-logic-CGZIYgAI.cjs +0 -1
- package/dist/rules-logic-HesIUCu6.js +0 -13
- package/dist/storage-1MW3-_As.js +0 -103
- package/dist/storage-DUw9UJ2h.cjs +0 -1
- package/dist/supports-CO9bJGNl.js +0 -92
- package/dist/supports-DBzjGaWD.cjs +0 -1
- package/dist/types/data-source/api.d.ts +0 -60
- package/dist/types/data-source/api.d.ts.map +0 -1
- package/dist/types/data-source/provider.d.ts +0 -103
- package/dist/types/data-source/provider.d.ts.map +0 -1
- package/dist/types/data-source/registry.d.ts +0 -26
- package/dist/types/data-source/registry.d.ts.map +0 -1
- package/dist/types/data-source/request-observer.d.ts +0 -62
- package/dist/types/data-source/request-observer.d.ts.map +0 -1
- package/dist/types/data-source/virtual-data.d.ts +0 -19
- package/dist/types/data-source/virtual-data.d.ts.map +0 -1
- package/dist/types/entities/action/action.d.ts +0 -85
- package/dist/types/entities/action/action.d.ts.map +0 -1
- package/dist/types/entities/component/lazyComponent.d.ts +0 -11
- package/dist/types/entities/component/lazyComponent.d.ts.map +0 -1
- package/dist/types/entities/condition/condition.d.ts +0 -29
- package/dist/types/entities/condition/condition.d.ts.map +0 -1
- package/dist/types/entities/content/content.d.ts +0 -53
- package/dist/types/entities/content/content.d.ts.map +0 -1
- package/dist/types/entities/content/reference.d.ts +0 -101
- package/dist/types/entities/content/reference.d.ts.map +0 -1
- package/dist/types/entities/field/policies.d.ts +0 -35
- package/dist/types/entities/field/policies.d.ts.map +0 -1
- package/dist/types/entities/response/response-validation.d.ts +0 -75
- package/dist/types/entities/response/response-validation.d.ts.map +0 -1
- package/dist/types/entities/session/session.d.ts +0 -46
- package/dist/types/entities/session/session.d.ts.map +0 -1
- package/dist/types/entities/step/step.d.ts +0 -56
- package/dist/types/entities/step/step.d.ts.map +0 -1
- package/dist/types/form/build-responses.d.ts +0 -18
- package/dist/types/form/build-responses.d.ts.map +0 -1
- package/dist/types/form/create-field-evaluator.d.ts +0 -28
- package/dist/types/form/create-field-evaluator.d.ts.map +0 -1
- package/dist/types/form/create-field-validation.d.ts +0 -60
- package/dist/types/form/create-field-validation.d.ts.map +0 -1
- package/dist/types/form/create-form.d.ts +0 -153
- package/dist/types/form/create-form.d.ts.map +0 -1
- package/dist/types/form/create-submit-pipeline.d.ts +0 -116
- package/dist/types/form/create-submit-pipeline.d.ts.map +0 -1
- package/dist/types/form/get-step-fields.d.ts +0 -19
- package/dist/types/form/get-step-fields.d.ts.map +0 -1
- package/dist/types/form/index.d.ts +0 -11
- package/dist/types/form/index.d.ts.map +0 -1
- package/dist/types/lifecycle/condition-selection.d.ts +0 -146
- package/dist/types/lifecycle/condition-selection.d.ts.map +0 -1
- package/dist/types/lifecycle/lifecycle.d.ts +0 -48
- package/dist/types/lifecycle/lifecycle.d.ts.map +0 -1
- package/dist/types/lifecycle/rules-logic.d.ts +0 -25
- package/dist/types/lifecycle/rules-logic.d.ts.map +0 -1
- package/dist/types/lifecycle/state-snapshot.d.ts +0 -38
- package/dist/types/lifecycle/state-snapshot.d.ts.map +0 -1
- package/dist/types/plugins/dom-observer/index.d.ts +0 -3
- package/dist/types/plugins/dom-observer/index.d.ts.map +0 -1
- package/dist/types/plugins/dom-observer/plugin.d.ts +0 -50
- package/dist/types/plugins/dom-observer/plugin.d.ts.map +0 -1
- package/dist/types/plugins/dynamic-experiences/hash.d.ts +0 -105
- package/dist/types/plugins/dynamic-experiences/hash.d.ts.map +0 -1
- package/dist/types/plugins/dynamic-experiences/index.d.ts +0 -7
- package/dist/types/plugins/dynamic-experiences/index.d.ts.map +0 -1
- package/dist/types/plugins/dynamic-experiences/plugin.d.ts +0 -49
- package/dist/types/plugins/dynamic-experiences/plugin.d.ts.map +0 -1
- package/dist/types/plugins/dynamic-experiences/types.d.ts +0 -45
- package/dist/types/plugins/dynamic-experiences/types.d.ts.map +0 -1
- package/dist/types/plugins/experience-browser-storage/index.d.ts.map +0 -1
- package/dist/types/plugins/experience-browser-storage/plugin.d.ts +0 -7
- package/dist/types/plugins/experience-browser-storage/plugin.d.ts.map +0 -1
- package/dist/types/plugins/history-browser-storage/index.d.ts.map +0 -1
- package/dist/types/plugins/history-browser-storage/plugin.d.ts.map +0 -1
- package/dist/types/plugins/responses-browser-storage/index.d.ts.map +0 -1
- package/dist/types/plugins/responses-browser-storage/plugin.d.ts +0 -18
- package/dist/types/plugins/responses-browser-storage/plugin.d.ts.map +0 -1
- package/dist/types/plugins/responses-indexeddb/index.d.ts.map +0 -1
- package/dist/types/plugins/responses-indexeddb/plugin.d.ts +0 -3
- package/dist/types/plugins/responses-indexeddb/plugin.d.ts.map +0 -1
- package/dist/types/plugins/telemetry/emit.d.ts +0 -18
- package/dist/types/plugins/telemetry/emit.d.ts.map +0 -1
- package/dist/types/plugins/telemetry/index.d.ts +0 -4
- package/dist/types/plugins/telemetry/index.d.ts.map +0 -1
- package/dist/types/plugins/telemetry/plugin-summary.d.ts +0 -10
- package/dist/types/plugins/telemetry/plugin-summary.d.ts.map +0 -1
- package/dist/types/plugins/telemetry/plugin.d.ts +0 -45
- package/dist/types/plugins/telemetry/plugin.d.ts.map +0 -1
- package/dist/types/plugins/web-components/index.d.ts +0 -2
- package/dist/types/plugins/web-components/index.d.ts.map +0 -1
- package/dist/types/plugins/web-components/plugin.d.ts +0 -4
- package/dist/types/plugins/web-components/plugin.d.ts.map +0 -1
- package/dist/types/preview/index.d.ts +0 -18
- package/dist/types/preview/index.d.ts.map +0 -1
- package/dist/types/preview-bridge/index.d.ts +0 -14
- package/dist/types/preview-bridge/index.d.ts.map +0 -1
- package/dist/types/preview-channel.d.ts +0 -16
- package/dist/types/preview-channel.d.ts.map +0 -1
- package/dist/types/preview-receiver/apply-ops.d.ts +0 -32
- package/dist/types/preview-receiver/apply-ops.d.ts.map +0 -1
- package/dist/types/preview-receiver/index.d.ts +0 -32
- package/dist/types/preview-receiver/index.d.ts.map +0 -1
- package/dist/types/preview-receiver/protocol.d.ts +0 -69
- package/dist/types/preview-receiver/protocol.d.ts.map +0 -1
- package/dist/types/schema-registry.d.ts +0 -206
- package/dist/types/schema-registry.d.ts.map +0 -1
- package/dist/types/server/serialize.d.ts +0 -87
- package/dist/types/server/serialize.d.ts.map +0 -1
- package/dist/types/typed-content.d.ts +0 -17
- package/dist/types/typed-content.d.ts.map +0 -1
- package/dist/types/utils/client-telemetry.d.ts +0 -25
- package/dist/types/utils/client-telemetry.d.ts.map +0 -1
- package/dist/types/utils/content-path.d.ts +0 -37
- package/dist/types/utils/content-path.d.ts.map +0 -1
- package/dist/types/utils/html-asset-value.d.ts +0 -20
- package/dist/types/utils/html-asset-value.d.ts.map +0 -1
- package/dist/types/utils/inert-script-report.d.ts +0 -40
- package/dist/types/utils/inert-script-report.d.ts.map +0 -1
- package/dist/types/utils/node-tree/get-next-node-from-action.d.ts +0 -25
- package/dist/types/utils/node-tree/get-next-node-from-action.d.ts.map +0 -1
- package/dist/types/utils/node-tree/get-next-node-from-condition.d.ts +0 -17
- package/dist/types/utils/node-tree/get-next-node-from-condition.d.ts.map +0 -1
- package/dist/types/utils/picked-config.d.ts +0 -39
- package/dist/types/utils/picked-config.d.ts.map +0 -1
- package/dist/types/utils/preview-session.d.ts +0 -12
- package/dist/types/utils/preview-session.d.ts.map +0 -1
- package/dist/types/utils/rehydrate-scripts.d.ts +0 -50
- package/dist/types/utils/rehydrate-scripts.d.ts.map +0 -1
- package/dist/types/utils/render-string.d.ts +0 -24
- package/dist/types/utils/render-string.d.ts.map +0 -1
- package/dist/types/utils/user-timing.d.ts +0 -21
- package/dist/types/utils/user-timing.d.ts.map +0 -1
- package/dist/version-BvLZaTMC.cjs +0 -1
- package/dist/version-VvasRUfR.js +0 -256
- /package/dist/types/plugins/{experience-browser-storage → experience-browserstorage-plugin}/index.d.ts +0 -0
- /package/dist/types/plugins/{history-browser-storage → history-browserstorage-plugin}/index.d.ts +0 -0
- /package/dist/types/plugins/{responses-browser-storage → responses-browserstorage-plugin}/index.d.ts +0 -0
- /package/dist/types/plugins/{responses-indexeddb → responses-indexeddb-plugin}/index.d.ts +0 -0
|
@@ -1,172 +1,114 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import type { ExperienceStep } from '../step/step';
|
|
6
|
-
import type { Framework } from '../framework/framework';
|
|
7
|
-
import type { Picked } from '../../picked';
|
|
8
|
-
import type { LogicRule, LogicValue } from '../../logic-engine';
|
|
1
|
+
import { AdaptedComponent } from '../component/component';
|
|
2
|
+
import { Picked } from '../../picked';
|
|
3
|
+
import { LogicRule } from '../../logic-engine';
|
|
4
|
+
import { Field } from '../field/field';
|
|
9
5
|
export type ExperiencesListStore = ReturnType<typeof createExperienceIndex>;
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
export type ExperienceStore = ReturnType<typeof createExperience>;
|
|
7
|
+
declare const createExperienceFactory: ({ client, experience }: {
|
|
8
|
+
client: Picked;
|
|
9
|
+
experience: Experience;
|
|
10
|
+
}) => {
|
|
12
11
|
id: string;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
configStore: Store<{
|
|
12
|
+
configStore: import('effector').Store<{
|
|
13
|
+
type: string;
|
|
16
14
|
name: string;
|
|
17
|
-
decisionLogic
|
|
15
|
+
decisionLogic: LogicRule | undefined;
|
|
18
16
|
targetSelectors: ExperienceTarget[];
|
|
19
|
-
initializeOpenLogic?: LogicRule | LogicValue;
|
|
20
17
|
}>;
|
|
21
|
-
treeStore: Store<{
|
|
18
|
+
treeStore: import('effector').Store<{
|
|
22
19
|
steps: ExperienceStep[];
|
|
23
20
|
nodes: ExperienceNode[];
|
|
24
21
|
edges: ExperienceEdge[];
|
|
25
|
-
|
|
22
|
+
conditionals: ExperienceConditional[];
|
|
26
23
|
}>;
|
|
27
|
-
componentStore: Store<{
|
|
24
|
+
componentStore: import('effector').Store<{
|
|
28
25
|
name: string;
|
|
29
|
-
component: AdaptedComponent
|
|
30
|
-
frameworkStore: Store<Framework | undefined>;
|
|
26
|
+
component: AdaptedComponent<string, unknown>;
|
|
27
|
+
frameworkStore: import('effector').Store<import('../..').Framework | undefined>;
|
|
31
28
|
} | undefined>;
|
|
32
|
-
|
|
33
|
-
/** Effector event that merges a partial experience update into this store. */
|
|
34
|
-
merge: (payload: {
|
|
29
|
+
merge: import('effector').EventCallable<{
|
|
35
30
|
experience: Partial<Experience>;
|
|
36
|
-
strategy:
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
* instance per matched DOM target.
|
|
41
|
-
*/
|
|
42
|
-
initialiseFx: Effect<LaunchExperienceOptions | undefined, void, Error>;
|
|
43
|
-
/**
|
|
44
|
-
* Per-experience gate evaluation effect. Attaches over `client.preconditionPassedStore`,
|
|
45
|
-
* the session's `isUser` slice, and `configStore`. Returns true when the experience
|
|
46
|
-
* should be initialised.
|
|
47
|
-
*/
|
|
48
|
-
shouldInitialiseFx: Effect<void, boolean, Error>;
|
|
49
|
-
/**
|
|
50
|
-
* Public event — requests initialisation, gated by `shouldInitialiseFx`. When the
|
|
51
|
-
* gate passes, the sample graph fires `prepareExperienceContentFx` and `initialiseFx`
|
|
52
|
-
* in parallel so content loading does not delay initialisation.
|
|
53
|
-
*/
|
|
54
|
-
initialiseRequested: EventCallable<LaunchExperienceOptions | undefined>;
|
|
55
|
-
/**
|
|
56
|
-
* Public event — requests initialisation directly, bypassing the `shouldInitialiseFx`
|
|
57
|
-
* gate. Fires `prepareExperienceContentFx` and `initialiseFx` in parallel.
|
|
58
|
-
*/
|
|
59
|
-
initialiseDirectly: EventCallable<LaunchExperienceOptions | undefined>;
|
|
60
|
-
/**
|
|
61
|
-
* Prepares per-experience CMS content by calling `client.contentLoader` and
|
|
62
|
-
* registering returned blobs into `client.contents`. Driven by the sample graph
|
|
63
|
-
* on `initialiseRequested`/`initialiseDirectly`; can also be called directly for
|
|
64
|
-
* speculative prefetch (e.g. Visibility-driven warm-up). Failure-tolerant:
|
|
65
|
-
* always resolves `true` even when the loader rejects, so initialisation is
|
|
66
|
-
* never blocked by content failures.
|
|
67
|
-
*/
|
|
68
|
-
prepareExperienceContentFx: Effect<void, boolean, Error>;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Creates an Effector store for a single experience.
|
|
72
|
-
*
|
|
73
|
-
* @template T - Factory parameter type.
|
|
74
|
-
* @param {T} params - The client instance and experience data.
|
|
75
|
-
* @param {Picked} params.client - The Picked client instance the experience is bound to.
|
|
76
|
-
* @param {Experience} params.experience - The experience definition to wrap in stores and effects.
|
|
77
|
-
* @returns {ReturnType<typeof createExperienceFactory>} An experience store with config, tree, fields, and component sub-stores.
|
|
78
|
-
* @example
|
|
79
|
-
* ```typescript
|
|
80
|
-
* const store = createExperience({ client, experience })
|
|
81
|
-
* ```
|
|
82
|
-
*/
|
|
83
|
-
export declare function createExperience(params: {
|
|
84
|
-
client: Picked;
|
|
85
|
-
experience: Experience;
|
|
86
|
-
}): ExperienceStore;
|
|
87
|
-
/** Options for launching an experience. */
|
|
88
|
-
export interface LaunchExperienceOptions {
|
|
89
|
-
/** When true, the experience will be opened immediately after initialization. */
|
|
90
|
-
initialiseOpen?: boolean;
|
|
91
|
-
/** When true, the experience's condition logic is skipped and it is launched unconditionally. */
|
|
92
|
-
bypassCondition?: boolean;
|
|
93
|
-
}
|
|
94
|
-
/** Options for opening an experience. Same as {@link LaunchExperienceOptions} without `initialiseOpen`. */
|
|
95
|
-
export type OpenExperienceOptions = Omit<LaunchExperienceOptions, 'initialiseOpen'>;
|
|
31
|
+
strategy: "override";
|
|
32
|
+
}>;
|
|
33
|
+
};
|
|
34
|
+
export declare function createExperience<T extends Parameters<typeof createExperienceFactory>[0]>(params: T): ReturnType<typeof createExperienceFactory>;
|
|
96
35
|
declare const createExperienceIndexFactory: ({ client }: {
|
|
97
36
|
client: Picked;
|
|
98
37
|
}) => {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
/** Returns a derived store for an experience by its ID. The store value is `undefined` when no match exists. */
|
|
102
|
-
get: (id: Experience['id']) => Store<ExperienceStore | undefined>;
|
|
103
|
-
/** @deprecated Use `experiences.get(id)` instead. */
|
|
104
|
-
getById: (id: Experience['id']) => Store<ExperienceStore | undefined>;
|
|
105
|
-
/** Returns a derived store for an experience by its key. The store value is `undefined` when no match exists. */
|
|
106
|
-
getByKey: (key: Experience['key']) => Store<ExperienceStore | undefined>;
|
|
107
|
-
/** Effector effect that launches an experience by its key. */
|
|
108
|
-
launch: Effect<{
|
|
109
|
-
key: string;
|
|
110
|
-
options?: LaunchExperienceOptions;
|
|
111
|
-
} | {
|
|
38
|
+
register: (experience: Experience) => void;
|
|
39
|
+
getById: (id: Experience["id"]) => import('effector').Store<{
|
|
112
40
|
id: string;
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
41
|
+
configStore: import('effector').Store<{
|
|
42
|
+
type: string;
|
|
43
|
+
name: string;
|
|
44
|
+
decisionLogic: LogicRule | undefined;
|
|
45
|
+
targetSelectors: ExperienceTarget[];
|
|
46
|
+
}>;
|
|
47
|
+
treeStore: import('effector').Store<{
|
|
48
|
+
steps: ExperienceStep[];
|
|
49
|
+
nodes: ExperienceNode[];
|
|
50
|
+
edges: ExperienceEdge[];
|
|
51
|
+
conditionals: ExperienceConditional[];
|
|
52
|
+
}>;
|
|
53
|
+
componentStore: import('effector').Store<{
|
|
54
|
+
name: string;
|
|
55
|
+
component: AdaptedComponent<string, unknown>;
|
|
56
|
+
frameworkStore: import('effector').Store<import('../..').Framework | undefined>;
|
|
57
|
+
} | undefined>;
|
|
58
|
+
merge: import('effector').EventCallable<{
|
|
59
|
+
experience: Partial<Experience>;
|
|
60
|
+
strategy: "override";
|
|
61
|
+
}>;
|
|
62
|
+
} | undefined>;
|
|
63
|
+
listStore: import('effector').Store<{
|
|
120
64
|
id: string;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
65
|
+
configStore: import('effector').Store<{
|
|
66
|
+
type: string;
|
|
67
|
+
name: string;
|
|
68
|
+
decisionLogic: LogicRule | undefined;
|
|
69
|
+
targetSelectors: ExperienceTarget[];
|
|
70
|
+
}>;
|
|
71
|
+
treeStore: import('effector').Store<{
|
|
72
|
+
steps: ExperienceStep[];
|
|
73
|
+
nodes: ExperienceNode[];
|
|
74
|
+
edges: ExperienceEdge[];
|
|
75
|
+
conditionals: ExperienceConditional[];
|
|
76
|
+
}>;
|
|
77
|
+
componentStore: import('effector').Store<{
|
|
78
|
+
name: string;
|
|
79
|
+
component: AdaptedComponent<string, unknown>;
|
|
80
|
+
frameworkStore: import('effector').Store<import('../..').Framework | undefined>;
|
|
81
|
+
} | undefined>;
|
|
82
|
+
merge: import('effector').EventCallable<{
|
|
83
|
+
experience: Partial<Experience>;
|
|
84
|
+
strategy: "override";
|
|
85
|
+
}>;
|
|
86
|
+
}[]>;
|
|
127
87
|
};
|
|
128
|
-
/**
|
|
129
|
-
* Creates an Effector-based index for registering and retrieving experiences.
|
|
130
|
-
*
|
|
131
|
-
* @template T - Factory parameter type.
|
|
132
|
-
* @param {T} params - The client instance.
|
|
133
|
-
* @returns {ReturnType<typeof createExperienceIndexFactory>} An experience index with register, getById, getByKey, launch, and open methods.
|
|
134
|
-
* @example
|
|
135
|
-
* ```typescript
|
|
136
|
-
* const index = createExperienceIndex({ client })
|
|
137
|
-
* ```
|
|
138
|
-
*/
|
|
139
88
|
export declare function createExperienceIndex<T extends Parameters<typeof createExperienceIndexFactory>[0]>(params: T): ReturnType<typeof createExperienceIndexFactory>;
|
|
140
|
-
export
|
|
141
|
-
export interface ExperienceAction {
|
|
89
|
+
export interface ExperienceStep {
|
|
142
90
|
id: string;
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
export interface ActionNode extends BaseNode {
|
|
146
|
-
type: 'action';
|
|
147
|
-
actionId?: string;
|
|
148
|
-
actionKey?: string;
|
|
149
|
-
name?: string;
|
|
91
|
+
label: string;
|
|
92
|
+
fieldIds: string[];
|
|
150
93
|
}
|
|
94
|
+
export type ExperienceNode = StepNode | ConditionalNode | LaunchExperienceNode | OriginNode;
|
|
151
95
|
export interface BaseNode {
|
|
152
96
|
id: string;
|
|
153
97
|
type: string;
|
|
98
|
+
position: [number, number];
|
|
154
99
|
}
|
|
155
100
|
export interface StepNode extends BaseNode {
|
|
156
101
|
type: 'step';
|
|
157
102
|
stepId: string;
|
|
158
|
-
|
|
159
|
-
name?: string;
|
|
103
|
+
label: string;
|
|
160
104
|
}
|
|
161
|
-
export interface
|
|
162
|
-
type: '
|
|
163
|
-
|
|
164
|
-
conditionKey?: string;
|
|
105
|
+
export interface ConditionalNode extends BaseNode {
|
|
106
|
+
type: 'conditional';
|
|
107
|
+
conditionalId: string;
|
|
165
108
|
}
|
|
166
109
|
export interface LaunchExperienceNode extends BaseNode {
|
|
167
110
|
type: 'experience';
|
|
168
111
|
experienceId: string;
|
|
169
|
-
experienceKey: string;
|
|
170
112
|
}
|
|
171
113
|
export interface OriginNode extends BaseNode {
|
|
172
114
|
type: 'origin';
|
|
@@ -175,7 +117,11 @@ export interface ExperienceEdge {
|
|
|
175
117
|
id: string;
|
|
176
118
|
sourceNodeId: string;
|
|
177
119
|
destinationNodeId: string;
|
|
178
|
-
|
|
120
|
+
sourceNodeHandle?: string;
|
|
121
|
+
}
|
|
122
|
+
export interface ExperienceConditional {
|
|
123
|
+
id: string;
|
|
124
|
+
condition: LogicRule;
|
|
179
125
|
}
|
|
180
126
|
export interface ExperienceTarget {
|
|
181
127
|
selector: string;
|
|
@@ -183,30 +129,31 @@ export interface ExperienceTarget {
|
|
|
183
129
|
}
|
|
184
130
|
export interface Experience {
|
|
185
131
|
id: string;
|
|
186
|
-
key: string;
|
|
187
132
|
name: string;
|
|
188
|
-
|
|
133
|
+
type: string;
|
|
189
134
|
component?: AdaptedComponent;
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
/** Decision logic that controls whether this experience is initialised. */
|
|
193
|
-
condition?: LogicRule | LogicValue;
|
|
135
|
+
conditionals: ExperienceConditional[];
|
|
136
|
+
decide: LogicRule | undefined;
|
|
194
137
|
edges: ExperienceEdge[];
|
|
195
138
|
nodes: ExperienceNode[];
|
|
139
|
+
fields: Field[];
|
|
140
|
+
steps: ExperienceStep[];
|
|
196
141
|
targets: ExperienceTarget[];
|
|
197
142
|
}
|
|
143
|
+
export declare const setupExperience: (experience: Experience, experienceStore: ExperiencesListStore) => void;
|
|
144
|
+
/**
|
|
145
|
+
* Initializes an experience for each target that exists in the DOM
|
|
146
|
+
*
|
|
147
|
+
* @param client
|
|
148
|
+
* @param experience
|
|
149
|
+
*/
|
|
150
|
+
export declare const initialiseExperience: (client: Picked, experience: ExperienceStore) => void;
|
|
198
151
|
/**
|
|
199
|
-
* Conditionally
|
|
200
|
-
* `initialiseExperiencesFx` effect, which attaches over `client.experiences.listStore`
|
|
201
|
-
* and runs each experience's per-store `shouldInitialiseFx` and `initialiseFx`.
|
|
152
|
+
* Conditionally initializes experiences
|
|
202
153
|
*
|
|
203
|
-
* @param
|
|
204
|
-
* @returns {Promise<void>} Resolves when all per-experience initialisations settle.
|
|
205
|
-
* @example
|
|
206
|
-
* ```typescript
|
|
207
|
-
* await initialiseExperiences(client)
|
|
208
|
-
* ```
|
|
154
|
+
* @param client
|
|
209
155
|
*/
|
|
210
156
|
export declare const initialiseExperiences: (client: Picked) => Promise<void>;
|
|
157
|
+
export declare const shouldInitialiseExperience: (client: Picked, experience: ExperienceStore) => Promise<boolean>;
|
|
211
158
|
export {};
|
|
212
159
|
//# sourceMappingURL=experience.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"experience.d.ts","sourceRoot":"","sources":["../../../../src/entities/experience/experience.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"experience.d.ts","sourceRoot":"","sources":["../../../../src/entities/experience/experience.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,99 +1,129 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
import type { Component } from '../component/component';
|
|
5
|
-
import type { Framework } from '../framework/framework';
|
|
6
|
-
import type { ExperienceStep } from '../step/step';
|
|
7
|
-
import type { Picked } from '../../picked';
|
|
8
|
-
import type { HistoryEntry } from '../history/history';
|
|
9
|
-
export interface ExperienceInstance {
|
|
10
|
-
id: string;
|
|
11
|
-
experienceKey: Experience['key'];
|
|
12
|
-
experienceId: Experience['id'];
|
|
13
|
-
/** Static name snapshot captured at spawn time. Use `configStore` for the latest (reactive) value. */
|
|
14
|
-
experienceName: string;
|
|
15
|
-
configStore: ExperienceStore['configStore'];
|
|
16
|
-
target: HTMLElement | undefined;
|
|
17
|
-
componentStore: ExperienceStore['componentStore'];
|
|
18
|
-
/**
|
|
19
|
-
* Reactive store of the resolved `{ component, framework }` pair for this instance, derived via `combine` over the instance's `componentStore` and `client.frameworks.listStore`. Resolves to `null` when either side is missing.
|
|
20
|
-
*/
|
|
21
|
-
componentAndFrameworkStore: Store<{
|
|
22
|
-
component: Component;
|
|
23
|
-
framework: Framework;
|
|
24
|
-
} | null>;
|
|
25
|
-
stateStore: Store<'transitioning' | 'ready'>;
|
|
26
|
-
isOpenStore: Store<boolean>;
|
|
27
|
-
open: EventCallable<void>;
|
|
28
|
-
close: EventCallable<void>;
|
|
29
|
-
toggleOpen: EventCallable<void>;
|
|
30
|
-
setOpen: EventCallable<boolean>;
|
|
31
|
-
treeStore: ExperienceStore['treeStore'];
|
|
32
|
-
currentNodeStore: Store<ExperienceNode | null>;
|
|
33
|
-
/**
|
|
34
|
-
* The step currently on screen. Only step nodes update it, so it deliberately
|
|
35
|
-
* retains the last resolved step — rather than blanking to `null` — while the
|
|
36
|
-
* engine transits ANY non-step node (an action running or a condition
|
|
37
|
-
* evaluating). Both `StepRouter` bindings keep rendering this step during those
|
|
38
|
-
* transits instead of flashing empty; it is `null` only before the first step
|
|
39
|
-
* resolves. This "hold last step" contract intentionally applies to every
|
|
40
|
-
* non-step transit, not just async actions.
|
|
41
|
-
*/
|
|
42
|
-
currentStepStore: Store<ExperienceStep | null>;
|
|
43
|
-
previousStepStore: Store<ExperienceStep | null>;
|
|
44
|
-
nextReachableStepNodesStore: Store<ExperienceNode[]>;
|
|
45
|
-
stepsToOriginStore: Store<number[]>;
|
|
46
|
-
stepsToLeafStore: Store<number[]>;
|
|
47
|
-
goToNextStep: EventCallable<void>;
|
|
48
|
-
goToPreviousStep: EventCallable<void>;
|
|
49
|
-
goToStepById: EventCallable<string>;
|
|
50
|
-
goToStepByKey: EventCallable<string>;
|
|
51
|
-
stepsHistoryStore: Store<HistoryEntry[]>;
|
|
52
|
-
/**
|
|
53
|
-
* Per-instance mount effect. Attached over `componentAndFrameworkStore` so the render call always receives the current resolved component+framework pair.
|
|
54
|
-
*/
|
|
55
|
-
mountFx: Effect<void, void, Error>;
|
|
56
|
-
}
|
|
1
|
+
import { Experience, ExperienceNode, ExperienceStore, ExperienceTarget } from '../experience/experience';
|
|
2
|
+
import { Picked } from '../../picked';
|
|
3
|
+
export type ExperienceInstance = ReturnType<typeof createExperienceInstance>;
|
|
57
4
|
export type ExperienceInstanceIndex = ReturnType<typeof createExperienceInstanceIndex>;
|
|
58
5
|
export interface ExperienceInstanceTarget {
|
|
59
6
|
selector: HTMLElement[];
|
|
60
7
|
placement: ExperienceTarget['placement'];
|
|
61
8
|
}
|
|
62
|
-
declare const createExperienceInstanceFactory: ({ client, experience, target,
|
|
9
|
+
declare const createExperienceInstanceFactory: ({ client, experience, target, }: {
|
|
63
10
|
client: Picked;
|
|
64
11
|
experience: ExperienceStore;
|
|
65
12
|
target?: HTMLElement;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
13
|
+
}) => {
|
|
14
|
+
experienceId: string;
|
|
15
|
+
configStore: import('effector').Store<{
|
|
16
|
+
type: string;
|
|
17
|
+
name: string;
|
|
18
|
+
decisionLogic: import('../../logic-engine').LogicRule | undefined;
|
|
19
|
+
targetSelectors: ExperienceTarget[];
|
|
20
|
+
}>;
|
|
21
|
+
target: HTMLElement | undefined;
|
|
22
|
+
componentStore: import('effector').Store<{
|
|
23
|
+
name: string;
|
|
24
|
+
component: import('../..').AdaptedComponent<string, unknown>;
|
|
25
|
+
frameworkStore: import('effector').Store<import('../..').Framework | undefined>;
|
|
26
|
+
} | undefined>;
|
|
27
|
+
stateStore: import('effector').StoreWritable<"transitioning" | "ready">;
|
|
28
|
+
isOpenStore: import('effector').StoreWritable<boolean>;
|
|
29
|
+
open: import('effector').EventCallable<void>;
|
|
30
|
+
close: import('effector').EventCallable<void>;
|
|
31
|
+
toggleOpen: import('effector').EventCallable<void>;
|
|
32
|
+
setOpen: import('effector').EventCallable<boolean>;
|
|
33
|
+
treeStore: import('effector').Store<{
|
|
34
|
+
steps: import('../..').ExperienceStep[];
|
|
35
|
+
nodes: ExperienceNode[];
|
|
36
|
+
edges: import('../..').ExperienceEdge[];
|
|
37
|
+
conditionals: import('../..').ExperienceConditional[];
|
|
38
|
+
}>;
|
|
39
|
+
currentNodeStore: import('effector').Store<ExperienceNode | null>;
|
|
40
|
+
currentStepStore: import('effector').Store<import('../..').ExperienceStep | null>;
|
|
41
|
+
nextReachableStepNodesStore: import('effector').Store<ExperienceNode[]>;
|
|
42
|
+
stepsToOriginStore: import('effector').Store<number[]>;
|
|
43
|
+
stepsToLeafStore: import('effector').Store<number[]>;
|
|
44
|
+
goToNextStep: import('effector').EventCallable<void>;
|
|
45
|
+
goToPreviousStep: import('effector').EventCallable<void>;
|
|
46
|
+
goToStepById: import('effector').EventCallable<string>;
|
|
47
|
+
stepsHistoryStore: import('effector').Store<import('../..').HistoryEntry[]>;
|
|
48
|
+
};
|
|
78
49
|
export declare function createExperienceInstance<T extends Parameters<typeof createExperienceInstanceFactory>[0]>(params: T): ReturnType<typeof createExperienceInstanceFactory>;
|
|
79
50
|
declare const createExperienceInstanceIndexFactory: ({ client }: {
|
|
80
51
|
client: Picked;
|
|
81
52
|
}) => {
|
|
82
|
-
spawn: (experience: ExperienceStore, target: HTMLElement
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
53
|
+
spawn: (experience: ExperienceStore, target: HTMLElement) => void;
|
|
54
|
+
getByExperienceId: (id: Experience["id"]) => import('effector').Store<{
|
|
55
|
+
experienceId: string;
|
|
56
|
+
configStore: import('effector').Store<{
|
|
57
|
+
type: string;
|
|
58
|
+
name: string;
|
|
59
|
+
decisionLogic: import('../../logic-engine').LogicRule | undefined;
|
|
60
|
+
targetSelectors: ExperienceTarget[];
|
|
61
|
+
}>;
|
|
62
|
+
target: HTMLElement | undefined;
|
|
63
|
+
componentStore: import('effector').Store<{
|
|
64
|
+
name: string;
|
|
65
|
+
component: import('../..').AdaptedComponent<string, unknown>;
|
|
66
|
+
frameworkStore: import('effector').Store<import('../..').Framework | undefined>;
|
|
67
|
+
} | undefined>;
|
|
68
|
+
stateStore: import('effector').StoreWritable<"transitioning" | "ready">;
|
|
69
|
+
isOpenStore: import('effector').StoreWritable<boolean>;
|
|
70
|
+
open: import('effector').EventCallable<void>;
|
|
71
|
+
close: import('effector').EventCallable<void>;
|
|
72
|
+
toggleOpen: import('effector').EventCallable<void>;
|
|
73
|
+
setOpen: import('effector').EventCallable<boolean>;
|
|
74
|
+
treeStore: import('effector').Store<{
|
|
75
|
+
steps: import('../..').ExperienceStep[];
|
|
76
|
+
nodes: ExperienceNode[];
|
|
77
|
+
edges: import('../..').ExperienceEdge[];
|
|
78
|
+
conditionals: import('../..').ExperienceConditional[];
|
|
79
|
+
}>;
|
|
80
|
+
currentNodeStore: import('effector').Store<ExperienceNode | null>;
|
|
81
|
+
currentStepStore: import('effector').Store<import('../..').ExperienceStep | null>;
|
|
82
|
+
nextReachableStepNodesStore: import('effector').Store<ExperienceNode[]>;
|
|
83
|
+
stepsToOriginStore: import('effector').Store<number[]>;
|
|
84
|
+
stepsToLeafStore: import('effector').Store<number[]>;
|
|
85
|
+
goToNextStep: import('effector').EventCallable<void>;
|
|
86
|
+
goToPreviousStep: import('effector').EventCallable<void>;
|
|
87
|
+
goToStepById: import('effector').EventCallable<string>;
|
|
88
|
+
stepsHistoryStore: import('effector').Store<import('../..').HistoryEntry[]>;
|
|
89
|
+
}[]>;
|
|
90
|
+
listStore: import('effector').Store<{
|
|
91
|
+
experienceId: string;
|
|
92
|
+
configStore: import('effector').Store<{
|
|
93
|
+
type: string;
|
|
94
|
+
name: string;
|
|
95
|
+
decisionLogic: import('../../logic-engine').LogicRule | undefined;
|
|
96
|
+
targetSelectors: ExperienceTarget[];
|
|
97
|
+
}>;
|
|
98
|
+
target: HTMLElement | undefined;
|
|
99
|
+
componentStore: import('effector').Store<{
|
|
100
|
+
name: string;
|
|
101
|
+
component: import('../..').AdaptedComponent<string, unknown>;
|
|
102
|
+
frameworkStore: import('effector').Store<import('../..').Framework | undefined>;
|
|
103
|
+
} | undefined>;
|
|
104
|
+
stateStore: import('effector').StoreWritable<"transitioning" | "ready">;
|
|
105
|
+
isOpenStore: import('effector').StoreWritable<boolean>;
|
|
106
|
+
open: import('effector').EventCallable<void>;
|
|
107
|
+
close: import('effector').EventCallable<void>;
|
|
108
|
+
toggleOpen: import('effector').EventCallable<void>;
|
|
109
|
+
setOpen: import('effector').EventCallable<boolean>;
|
|
110
|
+
treeStore: import('effector').Store<{
|
|
111
|
+
steps: import('../..').ExperienceStep[];
|
|
112
|
+
nodes: ExperienceNode[];
|
|
113
|
+
edges: import('../..').ExperienceEdge[];
|
|
114
|
+
conditionals: import('../..').ExperienceConditional[];
|
|
115
|
+
}>;
|
|
116
|
+
currentNodeStore: import('effector').Store<ExperienceNode | null>;
|
|
117
|
+
currentStepStore: import('effector').Store<import('../..').ExperienceStep | null>;
|
|
118
|
+
nextReachableStepNodesStore: import('effector').Store<ExperienceNode[]>;
|
|
119
|
+
stepsToOriginStore: import('effector').Store<number[]>;
|
|
120
|
+
stepsToLeafStore: import('effector').Store<number[]>;
|
|
121
|
+
goToNextStep: import('effector').EventCallable<void>;
|
|
122
|
+
goToPreviousStep: import('effector').EventCallable<void>;
|
|
123
|
+
goToStepById: import('effector').EventCallable<string>;
|
|
124
|
+
stepsHistoryStore: import('effector').Store<import('../..').HistoryEntry[]>;
|
|
125
|
+
}[]>;
|
|
86
126
|
};
|
|
87
|
-
/**
|
|
88
|
-
* Creates an index that tracks all experience instances keyed by experience ID.
|
|
89
|
-
*
|
|
90
|
-
* @param {Parameters<typeof createExperienceInstanceIndexFactory>[0]} params - Factory parameters including the client.
|
|
91
|
-
* @returns {ExperienceInstanceIndex} The created experience-instance index.
|
|
92
|
-
* @example
|
|
93
|
-
* ```typescript
|
|
94
|
-
* const index = createExperienceInstanceIndex({ client })
|
|
95
|
-
* ```
|
|
96
|
-
*/
|
|
97
127
|
export declare function createExperienceInstanceIndex<T extends Parameters<typeof createExperienceInstanceIndexFactory>[0]>(params: T): ReturnType<typeof createExperienceInstanceIndexFactory>;
|
|
98
128
|
export {};
|
|
99
129
|
//# sourceMappingURL=experience-instance.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"experience-instance.d.ts","sourceRoot":"","sources":["../../../../src/entities/experience-instance/experience-instance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"experience-instance.d.ts","sourceRoot":"","sources":["../../../../src/entities/experience-instance/experience-instance.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAEV,UAAU,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAGjB,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAmB1C,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAC5E,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAA;AACtF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,WAAW,EAAE,CAAA;IACvB,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAA;CACzC;AAED,QAAA,MAAM,+BAA+B,oCAKhC;IACD,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,eAAe,CAAA;IAC3B,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkTF,CAAA;AAED,wBAAgB,wBAAwB,CACtC,CAAC,SAAS,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC,CAAC,CAAC,EAC/D,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAE/D;AAED,QAAA,MAAM,oCAAoC,eAA8B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;wBAoI7D,eAAe,UAAU,WAAW;4BAQhC,UAAU,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAS/C,CAAA;AAEF,wBAAgB,6BAA6B,CAC3C,CAAC,SAAS,UAAU,CAAC,OAAO,oCAAoC,CAAC,CAAC,CAAC,CAAC,EACpE,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,OAAO,oCAAoC,CAAC,CAEpE"}
|