@builder.io/sdk-svelte 0.5.9 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -4
- package/lib/browser/blocks/columns/columns.svelte +156 -0
- package/lib/browser/blocks/columns/columns.svelte.d.ts +37 -0
- package/lib/browser/blocks/form/form.svelte.d.ts +14 -0
- package/lib/browser/blocks/submit-button/submit-button.svelte.d.ts +23 -0
- package/lib/browser/blocks/text/text.svelte +21 -0
- package/lib/browser/components/block/components/block-wrapper.svelte.d.ts +33 -0
- package/lib/browser/components/block/components/component-ref/component-ref.svelte.d.ts +24 -0
- package/lib/browser/components/block/components/repeated-block.svelte.d.ts +25 -0
- package/lib/browser/components/content/components/enable-editor.svelte.d.ts +36 -0
- package/lib/browser/components/content/components/styles.svelte.d.ts +24 -0
- package/lib/browser/components/content/content.svelte.d.ts +30 -0
- package/lib/browser/components/content-variants/content-variants.svelte.d.ts +34 -0
- package/lib/browser/components/inlined-script.svelte.d.ts +21 -0
- package/lib/browser/components/inlined-styles.svelte.d.ts +21 -0
- package/lib/browser/constants/sdk-version.d.ts +1 -0
- package/lib/browser/constants/sdk-version.js +1 -0
- package/lib/browser/context/builder.context.d.ts +16 -0
- package/lib/browser/functions/deopt.d.ts +4 -0
- package/lib/browser/functions/deopt.js +6 -0
- package/lib/browser/functions/evaluate/edge-runtime/edge-runtime.d.ts +2 -0
- package/lib/browser/functions/evaluate/edge-runtime/edge-runtime.js +86 -0
- package/lib/browser/functions/evaluate/edge-runtime/index.d.ts +1 -0
- package/lib/browser/functions/evaluate/edge-runtime/index.js +1 -0
- package/lib/browser/functions/evaluate/evaluate.js +52 -0
- package/lib/browser/functions/evaluate/placeholder-runtime.d.ts +2 -0
- package/lib/browser/functions/evaluate/placeholder-runtime.js +3 -0
- package/lib/browser/functions/fetch-builder-props.d.ts +40 -0
- package/lib/browser/functions/fetch-builder-props.js +26 -0
- package/lib/browser/functions/get-content/index.d.ts +28 -0
- package/lib/browser/functions/get-content/index.js +99 -0
- package/lib/browser/functions/is-edge-runtime.d.ts +4 -0
- package/lib/browser/functions/is-edge-runtime.js +8 -0
- package/lib/browser/index-helpers/blocks-exports.d.ts +19 -0
- package/lib/browser/index-helpers/blocks-exports.js +19 -0
- package/lib/edge/blocks/BaseText.svelte +21 -0
- package/lib/edge/blocks/button/button.svelte +46 -0
- package/lib/edge/blocks/button/component-info.d.ts +2 -0
- package/lib/edge/blocks/button/component-info.js +34 -0
- package/lib/edge/blocks/columns/columns.svelte +156 -0
- package/lib/edge/blocks/columns/columns.svelte.d.ts +37 -0
- package/lib/edge/blocks/columns/component-info.d.ts +2 -0
- package/lib/edge/blocks/columns/component-info.js +219 -0
- package/lib/edge/blocks/custom-code/component-info.d.ts +2 -0
- package/lib/edge/blocks/custom-code/component-info.js +23 -0
- package/lib/edge/blocks/custom-code/custom-code.svelte +55 -0
- package/lib/edge/blocks/embed/component-info.d.ts +2 -0
- package/lib/edge/blocks/embed/component-info.js +39 -0
- package/lib/edge/blocks/embed/embed.svelte +42 -0
- package/lib/edge/blocks/embed/helpers.d.ts +1 -0
- package/lib/edge/blocks/embed/helpers.js +2 -0
- package/lib/edge/blocks/form/component-info.d.ts +2 -0
- package/lib/edge/blocks/form/component-info.js +232 -0
- package/lib/edge/blocks/form/form.svelte +2 -0
- package/lib/edge/blocks/form/form.svelte.d.ts +14 -0
- package/lib/edge/blocks/fragment/component-info.d.ts +2 -0
- package/lib/edge/blocks/fragment/component-info.js +7 -0
- package/lib/edge/blocks/fragment/fragment.svelte +5 -0
- package/lib/edge/blocks/helpers.d.ts +13 -0
- package/lib/edge/blocks/helpers.js +40 -0
- package/lib/edge/blocks/image/component-info.d.ts +2 -0
- package/lib/edge/blocks/image/component-info.js +122 -0
- package/lib/edge/blocks/image/image.helpers.d.ts +1 -0
- package/lib/edge/blocks/image/image.helpers.js +47 -0
- package/lib/edge/blocks/image/image.svelte +126 -0
- package/lib/edge/blocks/img/component-info.d.ts +2 -0
- package/lib/edge/blocks/img/component-info.js +15 -0
- package/lib/edge/blocks/img/img.svelte +34 -0
- package/lib/edge/blocks/input/component-info.d.ts +2 -0
- package/lib/edge/blocks/input/component-info.js +46 -0
- package/lib/edge/blocks/input/input.svelte +25 -0
- package/lib/edge/blocks/raw-text/component-info.d.ts +2 -0
- package/lib/edge/blocks/raw-text/component-info.js +10 -0
- package/lib/edge/blocks/raw-text/raw-text.svelte +7 -0
- package/lib/edge/blocks/section/component-info.d.ts +2 -0
- package/lib/edge/blocks/section/component-info.js +40 -0
- package/lib/edge/blocks/section/section.svelte +36 -0
- package/lib/edge/blocks/select/component-info.d.ts +2 -0
- package/lib/edge/blocks/select/component-info.js +43 -0
- package/lib/edge/blocks/select/select.svelte +24 -0
- package/lib/edge/blocks/submit-button/component-info.d.ts +2 -0
- package/lib/edge/blocks/submit-button/component-info.js +26 -0
- package/lib/edge/blocks/submit-button/submit-button.svelte +15 -0
- package/lib/edge/blocks/submit-button/submit-button.svelte.d.ts +23 -0
- package/lib/edge/blocks/symbol/component-info.d.ts +2 -0
- package/lib/edge/blocks/symbol/component-info.js +34 -0
- package/lib/edge/blocks/symbol/symbol.helpers.d.ts +14 -0
- package/lib/edge/blocks/symbol/symbol.helpers.js +31 -0
- package/lib/edge/blocks/symbol/symbol.svelte +66 -0
- package/lib/edge/blocks/text/component-info.d.ts +2 -0
- package/lib/edge/blocks/text/component-info.js +19 -0
- package/lib/edge/blocks/text/text.svelte +21 -0
- package/lib/edge/blocks/textarea/component-info.d.ts +2 -0
- package/lib/edge/blocks/textarea/component-info.js +37 -0
- package/lib/edge/blocks/textarea/textarea.svelte +19 -0
- package/lib/edge/blocks/video/component-info.d.ts +2 -0
- package/lib/edge/blocks/video/component-info.js +82 -0
- package/lib/edge/blocks/video/video.svelte +76 -0
- package/lib/edge/components/block/block.helpers.d.ts +13 -0
- package/lib/edge/components/block/block.helpers.js +69 -0
- package/lib/edge/components/block/block.svelte +135 -0
- package/lib/edge/components/block/components/block-styles.svelte +66 -0
- package/lib/edge/components/block/components/block-wrapper.svelte +53 -0
- package/lib/edge/components/block/components/block-wrapper.svelte.d.ts +33 -0
- package/lib/edge/components/block/components/component-ref/component-ref.helpers.d.ts +36 -0
- package/lib/edge/components/block/components/component-ref/component-ref.helpers.js +22 -0
- package/lib/edge/components/block/components/component-ref/component-ref.svelte +38 -0
- package/lib/edge/components/block/components/component-ref/component-ref.svelte.d.ts +24 -0
- package/lib/edge/components/block/components/interactive-element.svelte +29 -0
- package/lib/edge/components/block/components/repeated-block.svelte +14 -0
- package/lib/edge/components/block/components/repeated-block.svelte.d.ts +25 -0
- package/lib/edge/components/block/types.d.ts +6 -0
- package/lib/edge/components/block/types.js +1 -0
- package/lib/edge/components/blocks/blocks-wrapper.svelte +70 -0
- package/lib/edge/components/blocks/blocks.svelte +36 -0
- package/lib/edge/components/content/components/enable-editor.svelte +298 -0
- package/lib/edge/components/content/components/enable-editor.svelte.d.ts +36 -0
- package/lib/edge/components/content/components/styles.helpers.d.ts +15 -0
- package/lib/edge/components/content/components/styles.helpers.js +58 -0
- package/lib/edge/components/content/components/styles.svelte +33 -0
- package/lib/edge/components/content/components/styles.svelte.d.ts +24 -0
- package/lib/edge/components/content/content.helpers.d.ts +7 -0
- package/lib/edge/components/content/content.helpers.js +30 -0
- package/lib/edge/components/content/content.svelte +118 -0
- package/lib/edge/components/content/content.svelte.d.ts +30 -0
- package/lib/edge/components/content/content.types.d.ts +24 -0
- package/lib/edge/components/content/content.types.js +1 -0
- package/lib/edge/components/content/index.d.ts +1 -0
- package/lib/edge/components/content/index.js +1 -0
- package/lib/edge/components/content/wrap-component-ref.d.ts +6 -0
- package/lib/edge/components/content/wrap-component-ref.js +6 -0
- package/lib/edge/components/content-variants/content-variants.svelte +104 -0
- package/lib/edge/components/content-variants/content-variants.svelte.d.ts +34 -0
- package/lib/edge/components/content-variants/content-variants.types.d.ts +20 -0
- package/lib/edge/components/content-variants/content-variants.types.js +1 -0
- package/lib/edge/components/content-variants/helpers.d.ts +41 -0
- package/lib/edge/components/content-variants/helpers.js +189 -0
- package/lib/edge/components/inlined-script.svelte +7 -0
- package/lib/edge/components/inlined-script.svelte.d.ts +21 -0
- package/lib/edge/components/inlined-styles.svelte +7 -0
- package/lib/edge/components/inlined-styles.svelte.d.ts +21 -0
- package/lib/edge/constants/builder-registered-components.d.ts +6 -0
- package/lib/edge/constants/builder-registered-components.js +60 -0
- package/lib/edge/constants/device-sizes.d.ts +13 -0
- package/lib/edge/constants/device-sizes.js +45 -0
- package/lib/edge/constants/sdk-version.d.ts +1 -0
- package/lib/edge/constants/sdk-version.js +1 -0
- package/lib/edge/constants/target.d.ts +2 -0
- package/lib/edge/constants/target.js +2 -0
- package/lib/edge/context/builder.context.d.ts +16 -0
- package/lib/edge/context/builder.context.js +16 -0
- package/lib/edge/context/components.context.d.ts +7 -0
- package/lib/edge/context/components.context.js +5 -0
- package/lib/edge/context/types.d.ts +35 -0
- package/lib/edge/context/types.js +1 -0
- package/lib/edge/functions/apply-patch-with-mutation.d.ts +10 -0
- package/lib/edge/functions/apply-patch-with-mutation.js +54 -0
- package/lib/edge/functions/camel-to-kebab-case.d.ts +1 -0
- package/lib/edge/functions/camel-to-kebab-case.js +1 -0
- package/lib/edge/functions/deopt.d.ts +4 -0
- package/lib/edge/functions/deopt.js +6 -0
- package/lib/edge/functions/evaluate/browser-runtime/browser.d.ts +4 -0
- package/lib/edge/functions/evaluate/browser-runtime/browser.js +31 -0
- package/lib/edge/functions/evaluate/browser-runtime/index.d.ts +1 -0
- package/lib/edge/functions/evaluate/browser-runtime/index.js +1 -0
- package/lib/edge/functions/evaluate/edge-runtime/acorn-interpreter.d.ts +2 -0
- package/lib/edge/functions/evaluate/edge-runtime/acorn-interpreter.js +3111 -0
- package/lib/edge/functions/evaluate/edge-runtime/edge-runtime.d.ts +2 -0
- package/lib/edge/functions/evaluate/edge-runtime/edge-runtime.js +86 -0
- package/lib/edge/functions/evaluate/edge-runtime/index.d.ts +1 -0
- package/lib/edge/functions/evaluate/edge-runtime/index.js +1 -0
- package/lib/edge/functions/evaluate/evaluate.d.ts +6 -0
- package/lib/edge/functions/evaluate/evaluate.js +52 -0
- package/lib/edge/functions/evaluate/helpers.d.ts +18 -0
- package/lib/edge/functions/evaluate/helpers.js +10 -0
- package/lib/edge/functions/evaluate/index.d.ts +1 -0
- package/lib/edge/functions/evaluate/index.js +1 -0
- package/lib/edge/functions/evaluate/node-runtime/index.d.ts +1 -0
- package/lib/edge/functions/evaluate/node-runtime/index.js +1 -0
- package/lib/edge/functions/evaluate/placeholder-runtime.d.ts +2 -0
- package/lib/edge/functions/evaluate/placeholder-runtime.js +3 -0
- package/lib/edge/functions/event-handler-name.d.ts +1 -0
- package/lib/edge/functions/event-handler-name.js +1 -0
- package/lib/edge/functions/extract-text-styles.d.ts +4 -0
- package/lib/edge/functions/extract-text-styles.js +22 -0
- package/lib/edge/functions/fast-clone.d.ts +4 -0
- package/lib/edge/functions/fast-clone.js +4 -0
- package/lib/edge/functions/fetch-builder-props.d.ts +40 -0
- package/lib/edge/functions/fetch-builder-props.js +26 -0
- package/lib/edge/functions/get-block-actions-handler.d.ts +8 -0
- package/lib/edge/functions/get-block-actions-handler.js +10 -0
- package/lib/edge/functions/get-block-actions.d.ts +10 -0
- package/lib/edge/functions/get-block-actions.js +28 -0
- package/lib/edge/functions/get-block-component-options.d.ts +2 -0
- package/lib/edge/functions/get-block-component-options.js +10 -0
- package/lib/edge/functions/get-block-properties.d.ts +11 -0
- package/lib/edge/functions/get-block-properties.js +72 -0
- package/lib/edge/functions/get-builder-search-params/index.d.ts +12 -0
- package/lib/edge/functions/get-builder-search-params/index.js +38 -0
- package/lib/edge/functions/get-content/generate-content-url.d.ts +2 -0
- package/lib/edge/functions/get-content/generate-content-url.js +33 -0
- package/lib/edge/functions/get-content/index.d.ts +28 -0
- package/lib/edge/functions/get-content/index.js +99 -0
- package/lib/edge/functions/get-content/types.d.ts +51 -0
- package/lib/edge/functions/get-content/types.js +1 -0
- package/lib/edge/functions/get-fetch.d.ts +1 -0
- package/lib/edge/functions/get-fetch.js +11 -0
- package/lib/edge/functions/get-global-this.d.ts +4 -0
- package/lib/edge/functions/get-global-this.js +15 -0
- package/lib/edge/functions/get-processed-block.d.ts +10 -0
- package/lib/edge/functions/get-processed-block.js +46 -0
- package/lib/edge/functions/get-react-native-block-styles.d.ts +7 -0
- package/lib/edge/functions/get-react-native-block-styles.js +17 -0
- package/lib/edge/functions/is-browser.d.ts +1 -0
- package/lib/edge/functions/is-browser.js +3 -0
- package/lib/edge/functions/is-edge-runtime.d.ts +4 -0
- package/lib/edge/functions/is-edge-runtime.js +8 -0
- package/lib/edge/functions/is-editing.d.ts +1 -0
- package/lib/edge/functions/is-editing.js +5 -0
- package/lib/edge/functions/is-iframe.d.ts +1 -0
- package/lib/edge/functions/is-iframe.js +4 -0
- package/lib/edge/functions/is-previewing.d.ts +1 -0
- package/lib/edge/functions/is-previewing.js +11 -0
- package/lib/edge/functions/on-change.d.ts +7 -0
- package/lib/edge/functions/on-change.js +28 -0
- package/lib/edge/functions/register-component.d.ts +15 -0
- package/lib/edge/functions/register-component.js +38 -0
- package/lib/edge/functions/register.d.ts +16 -0
- package/lib/edge/functions/register.js +27 -0
- package/lib/edge/functions/sanitize-react-native-block-styles.d.ts +3 -0
- package/lib/edge/functions/sanitize-react-native-block-styles.js +61 -0
- package/lib/edge/functions/set-editor-settings.d.ts +4 -0
- package/lib/edge/functions/set-editor-settings.js +12 -0
- package/lib/edge/functions/set.d.ts +7 -0
- package/lib/edge/functions/set.js +14 -0
- package/lib/edge/functions/track/helpers.d.ts +5 -0
- package/lib/edge/functions/track/helpers.js +51 -0
- package/lib/edge/functions/track/index.d.ts +51 -0
- package/lib/edge/functions/track/index.js +71 -0
- package/lib/edge/functions/track/interaction.d.ts +13 -0
- package/lib/edge/functions/track/interaction.js +53 -0
- package/lib/edge/functions/transform-block-properties.d.ts +1 -0
- package/lib/edge/functions/transform-block-properties.js +3 -0
- package/lib/edge/functions/transform-block.d.ts +2 -0
- package/lib/edge/functions/transform-block.js +4 -0
- package/lib/edge/helpers/ab-tests.d.ts +9 -0
- package/lib/edge/helpers/ab-tests.js +122 -0
- package/lib/edge/helpers/canTrack.d.ts +1 -0
- package/lib/edge/helpers/canTrack.js +2 -0
- package/lib/edge/helpers/cookie.d.ts +19 -0
- package/lib/edge/helpers/cookie.js +55 -0
- package/lib/edge/helpers/css.d.ts +7 -0
- package/lib/edge/helpers/css.js +27 -0
- package/lib/edge/helpers/flatten.d.ts +6 -0
- package/lib/edge/helpers/flatten.js +19 -0
- package/lib/edge/helpers/localStorage.d.ts +9 -0
- package/lib/edge/helpers/localStorage.js +24 -0
- package/lib/edge/helpers/logger.d.ts +6 -0
- package/lib/edge/helpers/logger.js +7 -0
- package/lib/edge/helpers/nullable.d.ts +2 -0
- package/lib/edge/helpers/nullable.js +1 -0
- package/lib/edge/helpers/preview-lru-cache/get.d.ts +2 -0
- package/lib/edge/helpers/preview-lru-cache/get.js +3 -0
- package/lib/edge/helpers/preview-lru-cache/helpers.d.ts +0 -0
- package/lib/edge/helpers/preview-lru-cache/helpers.js +1 -0
- package/lib/edge/helpers/preview-lru-cache/init.d.ts +6 -0
- package/lib/edge/helpers/preview-lru-cache/init.js +6 -0
- package/lib/edge/helpers/preview-lru-cache/set.d.ts +7 -0
- package/lib/edge/helpers/preview-lru-cache/set.js +5 -0
- package/lib/edge/helpers/preview-lru-cache/types.d.ts +0 -0
- package/lib/edge/helpers/preview-lru-cache/types.js +1 -0
- package/lib/edge/helpers/sessionId.d.ts +6 -0
- package/lib/edge/helpers/sessionId.js +30 -0
- package/lib/edge/helpers/time.d.ts +1 -0
- package/lib/edge/helpers/time.js +2 -0
- package/lib/edge/helpers/url.d.ts +6 -0
- package/lib/edge/helpers/url.js +15 -0
- package/lib/edge/helpers/uuid.d.ts +8 -0
- package/lib/edge/helpers/uuid.js +15 -0
- package/lib/edge/helpers/visitorId.d.ts +6 -0
- package/lib/edge/helpers/visitorId.js +30 -0
- package/lib/edge/index-helpers/blocks-exports.d.ts +19 -0
- package/lib/edge/index-helpers/blocks-exports.js +19 -0
- package/lib/edge/index-helpers/top-of-file.d.ts +1 -0
- package/lib/edge/index-helpers/top-of-file.js +4 -0
- package/lib/edge/index.d.ts +7 -0
- package/lib/edge/index.js +7 -0
- package/lib/edge/scripts/init-editing.d.ts +6 -0
- package/lib/edge/scripts/init-editing.js +110 -0
- package/lib/edge/server-index.d.ts +15 -0
- package/lib/edge/server-index.js +10 -0
- package/lib/edge/types/api-version.d.ts +2 -0
- package/lib/edge/types/api-version.js +1 -0
- package/lib/edge/types/builder-block.d.ts +66 -0
- package/lib/edge/types/builder-block.js +1 -0
- package/lib/edge/types/builder-content.d.ts +44 -0
- package/lib/edge/types/builder-content.js +1 -0
- package/lib/edge/types/builder-props.d.ts +10 -0
- package/lib/edge/types/builder-props.js +1 -0
- package/lib/edge/types/can-track.d.ts +3 -0
- package/lib/edge/types/can-track.js +1 -0
- package/lib/edge/types/components.d.ts +111 -0
- package/lib/edge/types/components.js +1 -0
- package/lib/edge/types/deep-partial.d.ts +3 -0
- package/lib/edge/types/deep-partial.js +1 -0
- package/lib/edge/types/element.d.ts +59 -0
- package/lib/edge/types/element.js +1 -0
- package/lib/edge/types/enforced-partials.d.ts +21 -0
- package/lib/edge/types/enforced-partials.js +1 -0
- package/lib/edge/types/input.d.ts +121 -0
- package/lib/edge/types/input.js +1 -0
- package/lib/edge/types/targets.d.ts +1 -0
- package/lib/edge/types/targets.js +1 -0
- package/lib/edge/types/typescript.d.ts +11 -0
- package/lib/edge/types/typescript.js +1 -0
- package/lib/node/blocks/BaseText.svelte +21 -0
- package/lib/node/blocks/button/button.svelte +46 -0
- package/lib/node/blocks/button/component-info.d.ts +2 -0
- package/lib/node/blocks/button/component-info.js +34 -0
- package/lib/node/blocks/columns/columns.svelte +156 -0
- package/lib/node/blocks/columns/columns.svelte.d.ts +37 -0
- package/lib/node/blocks/columns/component-info.d.ts +2 -0
- package/lib/node/blocks/columns/component-info.js +219 -0
- package/lib/node/blocks/custom-code/component-info.d.ts +2 -0
- package/lib/node/blocks/custom-code/component-info.js +23 -0
- package/lib/node/blocks/custom-code/custom-code.svelte +55 -0
- package/lib/node/blocks/embed/component-info.d.ts +2 -0
- package/lib/node/blocks/embed/component-info.js +39 -0
- package/lib/node/blocks/embed/embed.svelte +42 -0
- package/lib/node/blocks/embed/helpers.d.ts +1 -0
- package/lib/node/blocks/embed/helpers.js +2 -0
- package/lib/node/blocks/form/component-info.d.ts +2 -0
- package/lib/node/blocks/form/component-info.js +232 -0
- package/lib/node/blocks/form/form.svelte +2 -0
- package/lib/node/blocks/form/form.svelte.d.ts +14 -0
- package/lib/node/blocks/fragment/component-info.d.ts +2 -0
- package/lib/node/blocks/fragment/component-info.js +7 -0
- package/lib/node/blocks/fragment/fragment.svelte +5 -0
- package/lib/node/blocks/helpers.d.ts +13 -0
- package/lib/node/blocks/helpers.js +40 -0
- package/lib/node/blocks/image/component-info.d.ts +2 -0
- package/lib/node/blocks/image/component-info.js +122 -0
- package/lib/node/blocks/image/image.helpers.d.ts +1 -0
- package/lib/node/blocks/image/image.helpers.js +47 -0
- package/lib/node/blocks/image/image.svelte +126 -0
- package/lib/node/blocks/img/component-info.d.ts +2 -0
- package/lib/node/blocks/img/component-info.js +15 -0
- package/lib/node/blocks/img/img.svelte +34 -0
- package/lib/node/blocks/input/component-info.d.ts +2 -0
- package/lib/node/blocks/input/component-info.js +46 -0
- package/lib/node/blocks/input/input.svelte +25 -0
- package/lib/node/blocks/raw-text/component-info.d.ts +2 -0
- package/lib/node/blocks/raw-text/component-info.js +10 -0
- package/lib/node/blocks/raw-text/raw-text.svelte +7 -0
- package/lib/node/blocks/section/component-info.d.ts +2 -0
- package/lib/node/blocks/section/component-info.js +40 -0
- package/lib/node/blocks/section/section.svelte +36 -0
- package/lib/node/blocks/select/component-info.d.ts +2 -0
- package/lib/node/blocks/select/component-info.js +43 -0
- package/lib/node/blocks/select/select.svelte +24 -0
- package/lib/node/blocks/submit-button/component-info.d.ts +2 -0
- package/lib/node/blocks/submit-button/component-info.js +26 -0
- package/lib/node/blocks/submit-button/submit-button.svelte +15 -0
- package/lib/node/blocks/submit-button/submit-button.svelte.d.ts +23 -0
- package/lib/node/blocks/symbol/component-info.d.ts +2 -0
- package/lib/node/blocks/symbol/component-info.js +34 -0
- package/lib/node/blocks/symbol/symbol.helpers.d.ts +14 -0
- package/lib/node/blocks/symbol/symbol.helpers.js +31 -0
- package/lib/node/blocks/symbol/symbol.svelte +66 -0
- package/lib/node/blocks/text/component-info.d.ts +2 -0
- package/lib/node/blocks/text/component-info.js +19 -0
- package/lib/node/blocks/text/text.svelte +21 -0
- package/lib/node/blocks/textarea/component-info.d.ts +2 -0
- package/lib/node/blocks/textarea/component-info.js +37 -0
- package/lib/node/blocks/textarea/textarea.svelte +19 -0
- package/lib/node/blocks/video/component-info.d.ts +2 -0
- package/lib/node/blocks/video/component-info.js +82 -0
- package/lib/node/blocks/video/video.svelte +76 -0
- package/lib/node/components/block/block.helpers.d.ts +13 -0
- package/lib/node/components/block/block.helpers.js +69 -0
- package/lib/node/components/block/block.svelte +135 -0
- package/lib/node/components/block/components/block-styles.svelte +66 -0
- package/lib/node/components/block/components/block-wrapper.svelte +53 -0
- package/lib/node/components/block/components/block-wrapper.svelte.d.ts +33 -0
- package/lib/node/components/block/components/component-ref/component-ref.helpers.d.ts +36 -0
- package/lib/node/components/block/components/component-ref/component-ref.helpers.js +22 -0
- package/lib/node/components/block/components/component-ref/component-ref.svelte +38 -0
- package/lib/node/components/block/components/component-ref/component-ref.svelte.d.ts +24 -0
- package/lib/node/components/block/components/interactive-element.svelte +29 -0
- package/lib/node/components/block/components/repeated-block.svelte +14 -0
- package/lib/node/components/block/components/repeated-block.svelte.d.ts +25 -0
- package/lib/node/components/block/types.d.ts +6 -0
- package/lib/node/components/block/types.js +1 -0
- package/lib/node/components/blocks/blocks-wrapper.svelte +70 -0
- package/lib/node/components/blocks/blocks.svelte +36 -0
- package/lib/node/components/content/components/enable-editor.svelte +298 -0
- package/lib/node/components/content/components/enable-editor.svelte.d.ts +36 -0
- package/lib/node/components/content/components/styles.helpers.d.ts +15 -0
- package/lib/node/components/content/components/styles.helpers.js +58 -0
- package/lib/node/components/content/components/styles.svelte +33 -0
- package/lib/node/components/content/components/styles.svelte.d.ts +24 -0
- package/lib/node/components/content/content.helpers.d.ts +7 -0
- package/lib/node/components/content/content.helpers.js +30 -0
- package/lib/node/components/content/content.svelte +118 -0
- package/lib/node/components/content/content.svelte.d.ts +30 -0
- package/lib/node/components/content/content.types.d.ts +24 -0
- package/lib/node/components/content/content.types.js +1 -0
- package/lib/node/components/content/index.d.ts +1 -0
- package/lib/node/components/content/index.js +1 -0
- package/lib/node/components/content/wrap-component-ref.d.ts +6 -0
- package/lib/node/components/content/wrap-component-ref.js +6 -0
- package/lib/node/components/content-variants/content-variants.svelte +104 -0
- package/lib/node/components/content-variants/content-variants.svelte.d.ts +34 -0
- package/lib/node/components/content-variants/content-variants.types.d.ts +20 -0
- package/lib/node/components/content-variants/content-variants.types.js +1 -0
- package/lib/node/components/content-variants/helpers.d.ts +41 -0
- package/lib/node/components/content-variants/helpers.js +189 -0
- package/lib/node/components/inlined-script.svelte +7 -0
- package/lib/node/components/inlined-script.svelte.d.ts +21 -0
- package/lib/node/components/inlined-styles.svelte +7 -0
- package/lib/node/components/inlined-styles.svelte.d.ts +21 -0
- package/lib/node/constants/builder-registered-components.d.ts +6 -0
- package/lib/node/constants/builder-registered-components.js +60 -0
- package/lib/node/constants/device-sizes.d.ts +13 -0
- package/lib/node/constants/device-sizes.js +45 -0
- package/lib/node/constants/sdk-version.d.ts +1 -0
- package/lib/node/constants/sdk-version.js +1 -0
- package/lib/node/constants/target.d.ts +2 -0
- package/lib/node/constants/target.js +2 -0
- package/lib/node/context/builder.context.d.ts +16 -0
- package/lib/node/context/builder.context.js +16 -0
- package/lib/node/context/components.context.d.ts +7 -0
- package/lib/node/context/components.context.js +5 -0
- package/lib/node/context/types.d.ts +35 -0
- package/lib/node/context/types.js +1 -0
- package/lib/node/functions/apply-patch-with-mutation.d.ts +10 -0
- package/lib/node/functions/apply-patch-with-mutation.js +54 -0
- package/lib/node/functions/camel-to-kebab-case.d.ts +1 -0
- package/lib/node/functions/camel-to-kebab-case.js +1 -0
- package/lib/node/functions/deopt.d.ts +4 -0
- package/lib/node/functions/deopt.js +6 -0
- package/lib/node/functions/evaluate/browser-runtime/browser.d.ts +4 -0
- package/lib/node/functions/evaluate/browser-runtime/browser.js +31 -0
- package/lib/node/functions/evaluate/browser-runtime/index.d.ts +1 -0
- package/lib/node/functions/evaluate/browser-runtime/index.js +1 -0
- package/lib/node/functions/evaluate/edge-runtime/acorn-interpreter.d.ts +2 -0
- package/lib/node/functions/evaluate/edge-runtime/acorn-interpreter.js +3111 -0
- package/lib/node/functions/evaluate/edge-runtime/edge-runtime.d.ts +2 -0
- package/lib/node/functions/evaluate/edge-runtime/edge-runtime.js +86 -0
- package/lib/node/functions/evaluate/edge-runtime/index.d.ts +1 -0
- package/lib/node/functions/evaluate/edge-runtime/index.js +1 -0
- package/lib/node/functions/evaluate/evaluate.d.ts +6 -0
- package/lib/node/functions/evaluate/evaluate.js +52 -0
- package/lib/node/functions/evaluate/helpers.d.ts +18 -0
- package/lib/node/functions/evaluate/helpers.js +10 -0
- package/lib/node/functions/evaluate/index.d.ts +1 -0
- package/lib/node/functions/evaluate/index.js +1 -0
- package/lib/node/functions/evaluate/node-runtime/index.d.ts +1 -0
- package/lib/node/functions/evaluate/node-runtime/index.js +1 -0
- package/lib/node/functions/evaluate/placeholder-runtime.d.ts +2 -0
- package/lib/node/functions/evaluate/placeholder-runtime.js +3 -0
- package/lib/node/functions/event-handler-name.d.ts +1 -0
- package/lib/node/functions/event-handler-name.js +1 -0
- package/lib/node/functions/extract-text-styles.d.ts +4 -0
- package/lib/node/functions/extract-text-styles.js +22 -0
- package/lib/node/functions/fast-clone.d.ts +4 -0
- package/lib/node/functions/fast-clone.js +4 -0
- package/lib/node/functions/fetch-builder-props.d.ts +40 -0
- package/lib/node/functions/fetch-builder-props.js +26 -0
- package/lib/node/functions/get-block-actions-handler.d.ts +8 -0
- package/lib/node/functions/get-block-actions-handler.js +10 -0
- package/lib/node/functions/get-block-actions.d.ts +10 -0
- package/lib/node/functions/get-block-actions.js +28 -0
- package/lib/node/functions/get-block-component-options.d.ts +2 -0
- package/lib/node/functions/get-block-component-options.js +10 -0
- package/lib/node/functions/get-block-properties.d.ts +11 -0
- package/lib/node/functions/get-block-properties.js +72 -0
- package/lib/node/functions/get-builder-search-params/index.d.ts +12 -0
- package/lib/node/functions/get-builder-search-params/index.js +38 -0
- package/lib/node/functions/get-content/generate-content-url.d.ts +2 -0
- package/lib/node/functions/get-content/generate-content-url.js +33 -0
- package/lib/node/functions/get-content/index.d.ts +28 -0
- package/lib/node/functions/get-content/index.js +99 -0
- package/lib/node/functions/get-content/types.d.ts +51 -0
- package/lib/node/functions/get-content/types.js +1 -0
- package/lib/node/functions/get-fetch.d.ts +1 -0
- package/lib/node/functions/get-fetch.js +11 -0
- package/lib/node/functions/get-global-this.d.ts +4 -0
- package/lib/node/functions/get-global-this.js +15 -0
- package/lib/node/functions/get-processed-block.d.ts +10 -0
- package/lib/node/functions/get-processed-block.js +46 -0
- package/lib/node/functions/get-react-native-block-styles.d.ts +7 -0
- package/lib/node/functions/get-react-native-block-styles.js +17 -0
- package/lib/node/functions/is-browser.d.ts +1 -0
- package/lib/node/functions/is-browser.js +3 -0
- package/lib/node/functions/is-edge-runtime.d.ts +4 -0
- package/lib/node/functions/is-edge-runtime.js +8 -0
- package/lib/node/functions/is-editing.d.ts +1 -0
- package/lib/node/functions/is-editing.js +5 -0
- package/lib/node/functions/is-iframe.d.ts +1 -0
- package/lib/node/functions/is-iframe.js +4 -0
- package/lib/node/functions/is-previewing.d.ts +1 -0
- package/lib/node/functions/is-previewing.js +11 -0
- package/lib/node/functions/on-change.d.ts +7 -0
- package/lib/node/functions/on-change.js +28 -0
- package/lib/node/functions/register-component.d.ts +15 -0
- package/lib/node/functions/register-component.js +38 -0
- package/lib/node/functions/register.d.ts +16 -0
- package/lib/node/functions/register.js +27 -0
- package/lib/node/functions/sanitize-react-native-block-styles.d.ts +3 -0
- package/lib/node/functions/sanitize-react-native-block-styles.js +61 -0
- package/lib/node/functions/set-editor-settings.d.ts +4 -0
- package/lib/node/functions/set-editor-settings.js +12 -0
- package/lib/node/functions/set.d.ts +7 -0
- package/lib/node/functions/set.js +14 -0
- package/lib/node/functions/track/helpers.d.ts +5 -0
- package/lib/node/functions/track/helpers.js +51 -0
- package/lib/node/functions/track/index.d.ts +51 -0
- package/lib/node/functions/track/index.js +71 -0
- package/lib/node/functions/track/interaction.d.ts +13 -0
- package/lib/node/functions/track/interaction.js +53 -0
- package/lib/node/functions/transform-block-properties.d.ts +1 -0
- package/lib/node/functions/transform-block-properties.js +3 -0
- package/lib/node/functions/transform-block.d.ts +2 -0
- package/lib/node/functions/transform-block.js +4 -0
- package/lib/node/helpers/ab-tests.d.ts +9 -0
- package/lib/node/helpers/ab-tests.js +122 -0
- package/lib/node/helpers/canTrack.d.ts +1 -0
- package/lib/node/helpers/canTrack.js +2 -0
- package/lib/node/helpers/cookie.d.ts +19 -0
- package/lib/node/helpers/cookie.js +55 -0
- package/lib/node/helpers/css.d.ts +7 -0
- package/lib/node/helpers/css.js +27 -0
- package/lib/node/helpers/flatten.d.ts +6 -0
- package/lib/node/helpers/flatten.js +19 -0
- package/lib/node/helpers/localStorage.d.ts +9 -0
- package/lib/node/helpers/localStorage.js +24 -0
- package/lib/node/helpers/logger.d.ts +6 -0
- package/lib/node/helpers/logger.js +7 -0
- package/lib/node/helpers/nullable.d.ts +2 -0
- package/lib/node/helpers/nullable.js +1 -0
- package/lib/node/helpers/preview-lru-cache/get.d.ts +2 -0
- package/lib/node/helpers/preview-lru-cache/get.js +3 -0
- package/lib/node/helpers/preview-lru-cache/helpers.d.ts +0 -0
- package/lib/node/helpers/preview-lru-cache/helpers.js +1 -0
- package/lib/node/helpers/preview-lru-cache/init.d.ts +6 -0
- package/lib/node/helpers/preview-lru-cache/init.js +6 -0
- package/lib/node/helpers/preview-lru-cache/set.d.ts +7 -0
- package/lib/node/helpers/preview-lru-cache/set.js +5 -0
- package/lib/node/helpers/preview-lru-cache/types.d.ts +0 -0
- package/lib/node/helpers/preview-lru-cache/types.js +1 -0
- package/lib/node/helpers/sessionId.d.ts +6 -0
- package/lib/node/helpers/sessionId.js +30 -0
- package/lib/node/helpers/time.d.ts +1 -0
- package/lib/node/helpers/time.js +2 -0
- package/lib/node/helpers/url.d.ts +6 -0
- package/lib/node/helpers/url.js +15 -0
- package/lib/node/helpers/uuid.d.ts +8 -0
- package/lib/node/helpers/uuid.js +15 -0
- package/lib/node/helpers/visitorId.d.ts +6 -0
- package/lib/node/helpers/visitorId.js +30 -0
- package/lib/node/index-helpers/blocks-exports.d.ts +19 -0
- package/lib/node/index-helpers/blocks-exports.js +19 -0
- package/lib/node/index-helpers/top-of-file.d.ts +1 -0
- package/lib/node/index-helpers/top-of-file.js +4 -0
- package/lib/node/index.d.ts +7 -0
- package/lib/node/index.js +7 -0
- package/lib/node/scripts/init-editing.d.ts +6 -0
- package/lib/node/scripts/init-editing.js +110 -0
- package/lib/node/server-index.d.ts +15 -0
- package/lib/node/server-index.js +10 -0
- package/lib/node/types/api-version.d.ts +2 -0
- package/lib/node/types/api-version.js +1 -0
- package/lib/node/types/builder-block.d.ts +66 -0
- package/lib/node/types/builder-block.js +1 -0
- package/lib/node/types/builder-content.d.ts +44 -0
- package/lib/node/types/builder-content.js +1 -0
- package/lib/node/types/builder-props.d.ts +10 -0
- package/lib/node/types/builder-props.js +1 -0
- package/lib/node/types/can-track.d.ts +3 -0
- package/lib/node/types/can-track.js +1 -0
- package/lib/node/types/components.d.ts +111 -0
- package/lib/node/types/components.js +1 -0
- package/lib/node/types/deep-partial.d.ts +3 -0
- package/lib/node/types/deep-partial.js +1 -0
- package/lib/node/types/element.d.ts +59 -0
- package/lib/node/types/element.js +1 -0
- package/lib/node/types/enforced-partials.d.ts +21 -0
- package/lib/node/types/enforced-partials.js +1 -0
- package/lib/node/types/input.d.ts +121 -0
- package/lib/node/types/input.js +1 -0
- package/lib/node/types/targets.d.ts +1 -0
- package/lib/node/types/targets.js +1 -0
- package/lib/node/types/typescript.d.ts +11 -0
- package/lib/node/types/typescript.js +1 -0
- package/package.json +48 -26
- package/src/blocks/columns/columns.svelte +3 -7
- package/src/blocks/text/text.svelte +1 -2
- package/src/constants/sdk-version.ts +1 -1
- package/src/functions/deopt.ts +6 -0
- package/src/functions/evaluate/edge-runtime/edge-runtime.ts +96 -0
- package/src/functions/evaluate/edge-runtime/index.ts +1 -0
- package/src/functions/evaluate/evaluate.ts +14 -6
- package/src/functions/evaluate/placeholder-runtime.ts +4 -0
- package/src/functions/fetch-builder-props.ts +2 -1
- package/src/functions/get-content/index.ts +4 -5
- package/src/functions/is-edge-runtime.ts +9 -0
- package/src/index-helpers/blocks-exports.ts +2 -2
- package/package/--package.json +0 -207
- package/package/CHANGELOG.md +0 -189
- package/package/README.md +0 -27
- package/package/blocks/BaseText.svelte.d.ts +0 -19
- package/package/blocks/button/button.svelte.d.ts +0 -27
- package/package/blocks/columns/columns.svelte +0 -160
- package/package/blocks/columns/columns.svelte.d.ts +0 -37
- package/package/blocks/custom-code/custom-code.svelte.d.ts +0 -21
- package/package/blocks/embed/embed.svelte.d.ts +0 -19
- package/package/blocks/form/form.svelte.d.ts +0 -14
- package/package/blocks/fragment/fragment.svelte.d.ts +0 -21
- package/package/blocks/image/image.svelte.d.ts +0 -49
- package/package/blocks/img/img.svelte.d.ts +0 -31
- package/package/blocks/input/input.svelte.d.ts +0 -33
- package/package/blocks/raw-text/raw-text.svelte.d.ts +0 -21
- package/package/blocks/section/section.svelte.d.ts +0 -27
- package/package/blocks/select/select.svelte.d.ts +0 -32
- package/package/blocks/submit-button/submit-button.svelte.d.ts +0 -23
- package/package/blocks/symbol/symbol.svelte.d.ts +0 -42
- package/package/blocks/text/text.svelte +0 -22
- package/package/blocks/text/text.svelte.d.ts +0 -19
- package/package/blocks/textarea/textarea.svelte.d.ts +0 -29
- package/package/blocks/video/video.svelte.d.ts +0 -43
- package/package/components/block/block.svelte.d.ts +0 -26
- package/package/components/block/components/block-styles.svelte.d.ts +0 -23
- package/package/components/block/components/block-wrapper.svelte.d.ts +0 -33
- package/package/components/block/components/component-ref/component-ref.svelte.d.ts +0 -24
- package/package/components/block/components/interactive-element.svelte.d.ts +0 -31
- package/package/components/block/components/repeated-block.svelte.d.ts +0 -25
- package/package/components/blocks/blocks-wrapper.svelte.d.ts +0 -29
- package/package/components/blocks/blocks.svelte.d.ts +0 -28
- package/package/components/content/components/enable-editor.svelte.d.ts +0 -36
- package/package/components/content/components/styles.svelte.d.ts +0 -24
- package/package/components/content/content.svelte.d.ts +0 -30
- package/package/components/content-variants/content-variants.svelte.d.ts +0 -34
- package/package/components/inlined-script.svelte.d.ts +0 -21
- package/package/components/inlined-styles.svelte.d.ts +0 -21
- package/package/constants/sdk-version.d.ts +0 -1
- package/package/constants/sdk-version.js +0 -1
- package/package/context/builder.context.d.ts +0 -15
- package/package/functions/evaluate/evaluate.js +0 -47
- package/package/functions/evaluate/non-node-runtime/index.d.ts +0 -6
- package/package/functions/evaluate/non-node-runtime/index.js +0 -22
- package/package/functions/evaluate/non-node-runtime/non-node-runtime.d.ts +0 -2
- package/package/functions/evaluate/non-node-runtime/non-node-runtime.js +0 -83
- package/package/functions/fetch-builder-props.d.ts +0 -39
- package/package/functions/fetch-builder-props.js +0 -25
- package/package/functions/get-content/index.d.ts +0 -29
- package/package/functions/get-content/index.js +0 -100
- package/package/functions/is-non-node-server.d.ts +0 -4
- package/package/functions/is-non-node-server.js +0 -8
- package/package/index-helpers/blocks-exports.d.ts +0 -19
- package/package/index-helpers/blocks-exports.js +0 -19
- package/src/functions/evaluate/non-node-runtime/index.ts +0 -23
- package/src/functions/evaluate/non-node-runtime/non-node-runtime.ts +0 -93
- package/src/functions/is-non-node-server.ts +0 -9
- /package/{package → lib/browser}/blocks/BaseText.svelte +0 -0
- /package/{package → lib/browser}/blocks/button/button.svelte +0 -0
- /package/{package → lib/browser}/blocks/button/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/button/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/columns/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/columns/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/custom-code/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/custom-code/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/custom-code/custom-code.svelte +0 -0
- /package/{package → lib/browser}/blocks/embed/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/embed/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/embed/embed.svelte +0 -0
- /package/{package → lib/browser}/blocks/embed/helpers.d.ts +0 -0
- /package/{package → lib/browser}/blocks/embed/helpers.js +0 -0
- /package/{package → lib/browser}/blocks/form/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/form/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/form/form.svelte +0 -0
- /package/{package → lib/browser}/blocks/fragment/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/fragment/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/fragment/fragment.svelte +0 -0
- /package/{package → lib/browser}/blocks/helpers.d.ts +0 -0
- /package/{package → lib/browser}/blocks/helpers.js +0 -0
- /package/{package → lib/browser}/blocks/image/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/image/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/image/image.helpers.d.ts +0 -0
- /package/{package → lib/browser}/blocks/image/image.helpers.js +0 -0
- /package/{package → lib/browser}/blocks/image/image.svelte +0 -0
- /package/{package → lib/browser}/blocks/img/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/img/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/img/img.svelte +0 -0
- /package/{package → lib/browser}/blocks/input/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/input/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/input/input.svelte +0 -0
- /package/{package → lib/browser}/blocks/raw-text/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/raw-text/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/raw-text/raw-text.svelte +0 -0
- /package/{package → lib/browser}/blocks/section/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/section/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/section/section.svelte +0 -0
- /package/{package → lib/browser}/blocks/select/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/select/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/select/select.svelte +0 -0
- /package/{package → lib/browser}/blocks/submit-button/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/submit-button/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/submit-button/submit-button.svelte +0 -0
- /package/{package → lib/browser}/blocks/symbol/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/symbol/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/symbol/symbol.helpers.d.ts +0 -0
- /package/{package → lib/browser}/blocks/symbol/symbol.helpers.js +0 -0
- /package/{package → lib/browser}/blocks/symbol/symbol.svelte +0 -0
- /package/{package → lib/browser}/blocks/text/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/text/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/textarea/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/textarea/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/textarea/textarea.svelte +0 -0
- /package/{package → lib/browser}/blocks/video/component-info.d.ts +0 -0
- /package/{package → lib/browser}/blocks/video/component-info.js +0 -0
- /package/{package → lib/browser}/blocks/video/video.svelte +0 -0
- /package/{package → lib/browser}/components/block/block.helpers.d.ts +0 -0
- /package/{package → lib/browser}/components/block/block.helpers.js +0 -0
- /package/{package → lib/browser}/components/block/block.svelte +0 -0
- /package/{package → lib/browser}/components/block/components/block-styles.svelte +0 -0
- /package/{package → lib/browser}/components/block/components/block-wrapper.svelte +0 -0
- /package/{package → lib/browser}/components/block/components/component-ref/component-ref.helpers.d.ts +0 -0
- /package/{package → lib/browser}/components/block/components/component-ref/component-ref.helpers.js +0 -0
- /package/{package → lib/browser}/components/block/components/component-ref/component-ref.svelte +0 -0
- /package/{package → lib/browser}/components/block/components/interactive-element.svelte +0 -0
- /package/{package → lib/browser}/components/block/components/repeated-block.svelte +0 -0
- /package/{package → lib/browser}/components/block/types.d.ts +0 -0
- /package/{package → lib/browser}/components/block/types.js +0 -0
- /package/{package → lib/browser}/components/blocks/blocks-wrapper.svelte +0 -0
- /package/{package → lib/browser}/components/blocks/blocks.svelte +0 -0
- /package/{package → lib/browser}/components/content/components/enable-editor.svelte +0 -0
- /package/{package → lib/browser}/components/content/components/styles.helpers.d.ts +0 -0
- /package/{package → lib/browser}/components/content/components/styles.helpers.js +0 -0
- /package/{package → lib/browser}/components/content/components/styles.svelte +0 -0
- /package/{package → lib/browser}/components/content/content.helpers.d.ts +0 -0
- /package/{package → lib/browser}/components/content/content.helpers.js +0 -0
- /package/{package → lib/browser}/components/content/content.svelte +0 -0
- /package/{package → lib/browser}/components/content/content.types.d.ts +0 -0
- /package/{package → lib/browser}/components/content/content.types.js +0 -0
- /package/{package → lib/browser}/components/content/index.d.ts +0 -0
- /package/{package → lib/browser}/components/content/index.js +0 -0
- /package/{package → lib/browser}/components/content/wrap-component-ref.d.ts +0 -0
- /package/{package → lib/browser}/components/content/wrap-component-ref.js +0 -0
- /package/{package → lib/browser}/components/content-variants/content-variants.svelte +0 -0
- /package/{package → lib/browser}/components/content-variants/content-variants.types.d.ts +0 -0
- /package/{package → lib/browser}/components/content-variants/content-variants.types.js +0 -0
- /package/{package → lib/browser}/components/content-variants/helpers.d.ts +0 -0
- /package/{package → lib/browser}/components/content-variants/helpers.js +0 -0
- /package/{package → lib/browser}/components/inlined-script.svelte +0 -0
- /package/{package → lib/browser}/components/inlined-styles.svelte +0 -0
- /package/{package → lib/browser}/constants/builder-registered-components.d.ts +0 -0
- /package/{package → lib/browser}/constants/builder-registered-components.js +0 -0
- /package/{package → lib/browser}/constants/device-sizes.d.ts +0 -0
- /package/{package → lib/browser}/constants/device-sizes.js +0 -0
- /package/{package → lib/browser}/constants/target.d.ts +0 -0
- /package/{package → lib/browser}/constants/target.js +0 -0
- /package/{package → lib/browser}/context/builder.context.js +0 -0
- /package/{package → lib/browser}/context/components.context.d.ts +0 -0
- /package/{package → lib/browser}/context/components.context.js +0 -0
- /package/{package → lib/browser}/context/types.d.ts +0 -0
- /package/{package → lib/browser}/context/types.js +0 -0
- /package/{package → lib/browser}/functions/apply-patch-with-mutation.d.ts +0 -0
- /package/{package → lib/browser}/functions/apply-patch-with-mutation.js +0 -0
- /package/{package → lib/browser}/functions/camel-to-kebab-case.d.ts +0 -0
- /package/{package → lib/browser}/functions/camel-to-kebab-case.js +0 -0
- /package/{package → lib/browser}/functions/evaluate/browser-runtime/browser.d.ts +0 -0
- /package/{package → lib/browser}/functions/evaluate/browser-runtime/browser.js +0 -0
- /package/{package → lib/browser}/functions/evaluate/browser-runtime/index.d.ts +0 -0
- /package/{package → lib/browser}/functions/evaluate/browser-runtime/index.js +0 -0
- /package/{package/functions/evaluate/non-node-runtime → lib/browser/functions/evaluate/edge-runtime}/acorn-interpreter.d.ts +0 -0
- /package/{package/functions/evaluate/non-node-runtime → lib/browser/functions/evaluate/edge-runtime}/acorn-interpreter.js +0 -0
- /package/{package → lib/browser}/functions/evaluate/evaluate.d.ts +0 -0
- /package/{package → lib/browser}/functions/evaluate/helpers.d.ts +0 -0
- /package/{package → lib/browser}/functions/evaluate/helpers.js +0 -0
- /package/{package → lib/browser}/functions/evaluate/index.d.ts +0 -0
- /package/{package → lib/browser}/functions/evaluate/index.js +0 -0
- /package/{package → lib/browser}/functions/evaluate/node-runtime/index.d.ts +0 -0
- /package/{package → lib/browser}/functions/evaluate/node-runtime/index.js +0 -0
- /package/{package → lib/browser}/functions/event-handler-name.d.ts +0 -0
- /package/{package → lib/browser}/functions/event-handler-name.js +0 -0
- /package/{package → lib/browser}/functions/extract-text-styles.d.ts +0 -0
- /package/{package → lib/browser}/functions/extract-text-styles.js +0 -0
- /package/{package → lib/browser}/functions/fast-clone.d.ts +0 -0
- /package/{package → lib/browser}/functions/fast-clone.js +0 -0
- /package/{package → lib/browser}/functions/get-block-actions-handler.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-block-actions-handler.js +0 -0
- /package/{package → lib/browser}/functions/get-block-actions.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-block-actions.js +0 -0
- /package/{package → lib/browser}/functions/get-block-component-options.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-block-component-options.js +0 -0
- /package/{package → lib/browser}/functions/get-block-properties.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-block-properties.js +0 -0
- /package/{package → lib/browser}/functions/get-builder-search-params/index.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-builder-search-params/index.js +0 -0
- /package/{package → lib/browser}/functions/get-content/generate-content-url.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-content/generate-content-url.js +0 -0
- /package/{package → lib/browser}/functions/get-content/types.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-content/types.js +0 -0
- /package/{package → lib/browser}/functions/get-fetch.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-fetch.js +0 -0
- /package/{package → lib/browser}/functions/get-global-this.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-global-this.js +0 -0
- /package/{package → lib/browser}/functions/get-processed-block.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-processed-block.js +0 -0
- /package/{package → lib/browser}/functions/get-react-native-block-styles.d.ts +0 -0
- /package/{package → lib/browser}/functions/get-react-native-block-styles.js +0 -0
- /package/{package → lib/browser}/functions/is-browser.d.ts +0 -0
- /package/{package → lib/browser}/functions/is-browser.js +0 -0
- /package/{package → lib/browser}/functions/is-editing.d.ts +0 -0
- /package/{package → lib/browser}/functions/is-editing.js +0 -0
- /package/{package → lib/browser}/functions/is-iframe.d.ts +0 -0
- /package/{package → lib/browser}/functions/is-iframe.js +0 -0
- /package/{package → lib/browser}/functions/is-previewing.d.ts +0 -0
- /package/{package → lib/browser}/functions/is-previewing.js +0 -0
- /package/{package → lib/browser}/functions/on-change.d.ts +0 -0
- /package/{package → lib/browser}/functions/on-change.js +0 -0
- /package/{package → lib/browser}/functions/register-component.d.ts +0 -0
- /package/{package → lib/browser}/functions/register-component.js +0 -0
- /package/{package → lib/browser}/functions/register.d.ts +0 -0
- /package/{package → lib/browser}/functions/register.js +0 -0
- /package/{package → lib/browser}/functions/sanitize-react-native-block-styles.d.ts +0 -0
- /package/{package → lib/browser}/functions/sanitize-react-native-block-styles.js +0 -0
- /package/{package → lib/browser}/functions/set-editor-settings.d.ts +0 -0
- /package/{package → lib/browser}/functions/set-editor-settings.js +0 -0
- /package/{package → lib/browser}/functions/set.d.ts +0 -0
- /package/{package → lib/browser}/functions/set.js +0 -0
- /package/{package → lib/browser}/functions/track/helpers.d.ts +0 -0
- /package/{package → lib/browser}/functions/track/helpers.js +0 -0
- /package/{package → lib/browser}/functions/track/index.d.ts +0 -0
- /package/{package → lib/browser}/functions/track/index.js +0 -0
- /package/{package → lib/browser}/functions/track/interaction.d.ts +0 -0
- /package/{package → lib/browser}/functions/track/interaction.js +0 -0
- /package/{package → lib/browser}/functions/transform-block-properties.d.ts +0 -0
- /package/{package → lib/browser}/functions/transform-block-properties.js +0 -0
- /package/{package → lib/browser}/functions/transform-block.d.ts +0 -0
- /package/{package → lib/browser}/functions/transform-block.js +0 -0
- /package/{package → lib/browser}/helpers/ab-tests.d.ts +0 -0
- /package/{package → lib/browser}/helpers/ab-tests.js +0 -0
- /package/{package → lib/browser}/helpers/canTrack.d.ts +0 -0
- /package/{package → lib/browser}/helpers/canTrack.js +0 -0
- /package/{package → lib/browser}/helpers/cookie.d.ts +0 -0
- /package/{package → lib/browser}/helpers/cookie.js +0 -0
- /package/{package → lib/browser}/helpers/css.d.ts +0 -0
- /package/{package → lib/browser}/helpers/css.js +0 -0
- /package/{package → lib/browser}/helpers/flatten.d.ts +0 -0
- /package/{package → lib/browser}/helpers/flatten.js +0 -0
- /package/{package → lib/browser}/helpers/localStorage.d.ts +0 -0
- /package/{package → lib/browser}/helpers/localStorage.js +0 -0
- /package/{package → lib/browser}/helpers/logger.d.ts +0 -0
- /package/{package → lib/browser}/helpers/logger.js +0 -0
- /package/{package → lib/browser}/helpers/nullable.d.ts +0 -0
- /package/{package → lib/browser}/helpers/nullable.js +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/get.d.ts +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/get.js +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/helpers.d.ts +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/helpers.js +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/init.d.ts +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/init.js +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/set.d.ts +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/set.js +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/types.d.ts +0 -0
- /package/{package → lib/browser}/helpers/preview-lru-cache/types.js +0 -0
- /package/{package → lib/browser}/helpers/sessionId.d.ts +0 -0
- /package/{package → lib/browser}/helpers/sessionId.js +0 -0
- /package/{package → lib/browser}/helpers/time.d.ts +0 -0
- /package/{package → lib/browser}/helpers/time.js +0 -0
- /package/{package → lib/browser}/helpers/url.d.ts +0 -0
- /package/{package → lib/browser}/helpers/url.js +0 -0
- /package/{package → lib/browser}/helpers/uuid.d.ts +0 -0
- /package/{package → lib/browser}/helpers/uuid.js +0 -0
- /package/{package → lib/browser}/helpers/visitorId.d.ts +0 -0
- /package/{package → lib/browser}/helpers/visitorId.js +0 -0
- /package/{package → lib/browser}/index-helpers/top-of-file.d.ts +0 -0
- /package/{package → lib/browser}/index-helpers/top-of-file.js +0 -0
- /package/{package → lib/browser}/index.d.ts +0 -0
- /package/{package → lib/browser}/index.js +0 -0
- /package/{package → lib/browser}/scripts/init-editing.d.ts +0 -0
- /package/{package → lib/browser}/scripts/init-editing.js +0 -0
- /package/{package → lib/browser}/server-index.d.ts +0 -0
- /package/{package → lib/browser}/server-index.js +0 -0
- /package/{package → lib/browser}/types/api-version.d.ts +0 -0
- /package/{package → lib/browser}/types/api-version.js +0 -0
- /package/{package → lib/browser}/types/builder-block.d.ts +0 -0
- /package/{package → lib/browser}/types/builder-block.js +0 -0
- /package/{package → lib/browser}/types/builder-content.d.ts +0 -0
- /package/{package → lib/browser}/types/builder-content.js +0 -0
- /package/{package → lib/browser}/types/builder-props.d.ts +0 -0
- /package/{package → lib/browser}/types/builder-props.js +0 -0
- /package/{package → lib/browser}/types/can-track.d.ts +0 -0
- /package/{package → lib/browser}/types/can-track.js +0 -0
- /package/{package → lib/browser}/types/components.d.ts +0 -0
- /package/{package → lib/browser}/types/components.js +0 -0
- /package/{package → lib/browser}/types/deep-partial.d.ts +0 -0
- /package/{package → lib/browser}/types/deep-partial.js +0 -0
- /package/{package → lib/browser}/types/element.d.ts +0 -0
- /package/{package → lib/browser}/types/element.js +0 -0
- /package/{package → lib/browser}/types/enforced-partials.d.ts +0 -0
- /package/{package → lib/browser}/types/enforced-partials.js +0 -0
- /package/{package → lib/browser}/types/input.d.ts +0 -0
- /package/{package → lib/browser}/types/input.js +0 -0
- /package/{package → lib/browser}/types/targets.d.ts +0 -0
- /package/{package → lib/browser}/types/targets.js +0 -0
- /package/{package → lib/browser}/types/typescript.d.ts +0 -0
- /package/{package → lib/browser}/types/typescript.js +0 -0
- /package/src/functions/evaluate/{non-node-runtime → edge-runtime}/acorn-interpreter.ts +0 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { logger } from '../../../helpers/logger.js';
|
|
2
|
+
import { set } from '../../set.js';
|
|
3
|
+
import Interpreter from './acorn-interpreter.js';
|
|
4
|
+
import { getFunctionArguments } from '../helpers.js';
|
|
5
|
+
const processCode = (code) => {
|
|
6
|
+
return code.split('\n').map(line => {
|
|
7
|
+
const trimmed = line.trim();
|
|
8
|
+
// this async wrapper doesn't work in JS-interpreter, so we drop it.
|
|
9
|
+
if (line.includes('__awaiter'))
|
|
10
|
+
return undefined;
|
|
11
|
+
// we find all state setter expressions and append a call to setRootState afterwards
|
|
12
|
+
const isStateSetter = trimmed.startsWith('state.');
|
|
13
|
+
if (!isStateSetter)
|
|
14
|
+
return line;
|
|
15
|
+
const [lhs, rhs] = trimmed.split('=');
|
|
16
|
+
const setStr = lhs.replace('state.', '').trim();
|
|
17
|
+
const setExpr = `setRootState('${setStr}', ${rhs.trim()})`;
|
|
18
|
+
return `
|
|
19
|
+
${line}
|
|
20
|
+
${setExpr}
|
|
21
|
+
`;
|
|
22
|
+
}).filter(Boolean).join('\n');
|
|
23
|
+
};
|
|
24
|
+
const getJSONValName = (val) => val + 'JSON';
|
|
25
|
+
export const runInEdge = ({ builder, context, event, rootState, localState, rootSetState, code }) => {
|
|
26
|
+
const state = {
|
|
27
|
+
...rootState,
|
|
28
|
+
...localState
|
|
29
|
+
};
|
|
30
|
+
const properties = getFunctionArguments({
|
|
31
|
+
builder,
|
|
32
|
+
context,
|
|
33
|
+
event,
|
|
34
|
+
state
|
|
35
|
+
});
|
|
36
|
+
/**
|
|
37
|
+
* Deserialize all properties from JSON strings to JS objects
|
|
38
|
+
*/
|
|
39
|
+
const prependedCode = properties.map(([key]) => {
|
|
40
|
+
const jsonValName = getJSONValName(key);
|
|
41
|
+
return `var ${key} = ${jsonValName} === undefined ? undefined : JSON.parse(${jsonValName});`;
|
|
42
|
+
}).join('\n');
|
|
43
|
+
const cleanedCode = processCode(code);
|
|
44
|
+
if (cleanedCode === '') {
|
|
45
|
+
logger.warn('Skipping evaluation of empty code block.');
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const transformed = `
|
|
49
|
+
function theFunction() {
|
|
50
|
+
${prependedCode}
|
|
51
|
+
|
|
52
|
+
${cleanedCode}
|
|
53
|
+
}
|
|
54
|
+
theFunction();
|
|
55
|
+
`;
|
|
56
|
+
const setRootState = (prop, value) => {
|
|
57
|
+
const newState = set(state, prop, value);
|
|
58
|
+
rootSetState?.(newState);
|
|
59
|
+
};
|
|
60
|
+
const initFunc = function (interpreter, globalObject) {
|
|
61
|
+
/**
|
|
62
|
+
* serialize all function args to JSON strings
|
|
63
|
+
*/
|
|
64
|
+
properties.forEach(([key, val]) => {
|
|
65
|
+
const jsonVal = JSON.stringify(val);
|
|
66
|
+
interpreter.setProperty(globalObject, getJSONValName(key), jsonVal);
|
|
67
|
+
});
|
|
68
|
+
/**
|
|
69
|
+
* Add a JavaScript function "setRootState" to the interpreter's global object, that will be called whenever a
|
|
70
|
+
* state property is set. This function will update the state object.
|
|
71
|
+
*/
|
|
72
|
+
interpreter.setProperty(globalObject, 'setRootState', interpreter.createNativeFunction(setRootState));
|
|
73
|
+
};
|
|
74
|
+
try {
|
|
75
|
+
const myInterpreter = new Interpreter(transformed, initFunc);
|
|
76
|
+
myInterpreter.run();
|
|
77
|
+
const output = myInterpreter.pseudoToNative(myInterpreter.value);
|
|
78
|
+
return output;
|
|
79
|
+
}
|
|
80
|
+
catch (e) {
|
|
81
|
+
logger.warn('Custom code error in edge runtime. NOTE: your code must be ES5 JavaScript.', {
|
|
82
|
+
e
|
|
83
|
+
});
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { runInEdge as evaluator } from './edge-runtime.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { runInEdge as evaluator } from './edge-runtime.js';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ExecutorArgs } from './helpers.js';
|
|
2
|
+
export type EvaluatorArgs = Omit<ExecutorArgs, 'builder' | 'event'> & {
|
|
3
|
+
event?: Event;
|
|
4
|
+
isExpression?: boolean;
|
|
5
|
+
};
|
|
6
|
+
export declare function evaluate({ code, context, localState, rootState, rootSetState, event, isExpression }: EvaluatorArgs): any;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { logger } from '../../helpers/logger.js';
|
|
2
|
+
import { isBrowser } from '../is-browser.js';
|
|
3
|
+
import { isEditing } from '../is-editing.js';
|
|
4
|
+
import { getUserAttributes } from '../track/helpers.js';
|
|
5
|
+
/**
|
|
6
|
+
* THIS IS A MAGICAL IMPORT. It is aliased by the build process of every SDK configuration, so that
|
|
7
|
+
* it points to the correct runtime for that configuration, which are expected to live exactly at:
|
|
8
|
+
* - ./browser-runtime/index.js
|
|
9
|
+
* - ./node-runtime/index.js
|
|
10
|
+
* - ./edge-runtime/index.js
|
|
11
|
+
*
|
|
12
|
+
* We have code in `/output-generation` that does this aliasing, and is re-used by each SDK.
|
|
13
|
+
* Also, each individual `tsconfig.json` aliases this import to the browser runtime so that the
|
|
14
|
+
* types can be resolved correctly.
|
|
15
|
+
*/
|
|
16
|
+
import { evaluator } from '../../../node/functions/evaluate/node-runtime/index.js';
|
|
17
|
+
export function evaluate({ code, context, localState, rootState, rootSetState, event, isExpression = true }) {
|
|
18
|
+
if (code === '') {
|
|
19
|
+
logger.warn('Skipping evaluation of empty code block.');
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
const builder = {
|
|
23
|
+
isEditing: isEditing(),
|
|
24
|
+
isBrowser: isBrowser(),
|
|
25
|
+
isServer: !isBrowser(),
|
|
26
|
+
getUserAttributes: () => getUserAttributes()
|
|
27
|
+
};
|
|
28
|
+
// Be able to handle simple expressions like "state.foo" or "1 + 1"
|
|
29
|
+
// as well as full blocks like "var foo = "bar"; return foo"
|
|
30
|
+
const useReturn =
|
|
31
|
+
// we disable this for cases where we definitely don't want a return
|
|
32
|
+
isExpression && !(code.includes(';') || code.includes(' return ') || code.trim().startsWith('return '));
|
|
33
|
+
const useCode = useReturn ? `return (${code});` : code;
|
|
34
|
+
const args = {
|
|
35
|
+
code: useCode,
|
|
36
|
+
builder,
|
|
37
|
+
context,
|
|
38
|
+
event,
|
|
39
|
+
rootSetState,
|
|
40
|
+
rootState,
|
|
41
|
+
localState
|
|
42
|
+
};
|
|
43
|
+
try {
|
|
44
|
+
return evaluator(args);
|
|
45
|
+
}
|
|
46
|
+
catch (e) {
|
|
47
|
+
logger.error('Failed code evaluation: ' + e.message, {
|
|
48
|
+
code
|
|
49
|
+
});
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { BuilderContextInterface, BuilderRenderState } from '../../context/types.js';
|
|
2
|
+
import type { getUserAttributes } from '../track/helpers.js';
|
|
3
|
+
export type BuilderGlobals = {
|
|
4
|
+
isEditing: boolean | undefined;
|
|
5
|
+
isBrowser: boolean | undefined;
|
|
6
|
+
isServer: boolean | undefined;
|
|
7
|
+
getUserAttributes: typeof getUserAttributes;
|
|
8
|
+
};
|
|
9
|
+
export type ExecutorArgs = Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'> & {
|
|
10
|
+
code: string;
|
|
11
|
+
builder: BuilderGlobals;
|
|
12
|
+
event: Event | undefined;
|
|
13
|
+
};
|
|
14
|
+
export type Executor = (args: ExecutorArgs) => any;
|
|
15
|
+
export type FunctionArguments = ReturnType<typeof getFunctionArguments>;
|
|
16
|
+
export declare const getFunctionArguments: ({ builder, context, event, state }: Pick<ExecutorArgs, "context" | "builder" | "event"> & {
|
|
17
|
+
state: BuilderRenderState;
|
|
18
|
+
}) => [string, Event | BuilderRenderState | import("../../context/types.js").BuilderRenderContext | BuilderGlobals | undefined][];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { evaluate } from './evaluate.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { evaluate } from './evaluate.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { evaluator } from '../browser-runtime/index.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { evaluator } from '../browser-runtime/index.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getEventHandlerName: (key: string) => string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const getEventHandlerName = (key) => `on:${key.toLowerCase()}`;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
const TEXT_STYLE_KEYS = ['color', 'whiteSpace', 'direction', 'hyphens', 'overflowWrap'];
|
|
2
|
+
/**
|
|
3
|
+
* Check if the key represent a CSS style property that applies to text
|
|
4
|
+
* See MDN docs for refrence of what properties apply to text.
|
|
5
|
+
* https://developer.mozilla.org/en-US/docs/Learn/CSS/Styling_text/Fundamentals#summary
|
|
6
|
+
*/
|
|
7
|
+
const isTextStyle = (key) => {
|
|
8
|
+
return TEXT_STYLE_KEYS.includes(key) || key.startsWith('font') || key.startsWith('text') || key.startsWith('letter') || key.startsWith('line') || key.startsWith('word') || key.startsWith('writing');
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Extract styles that apply to text from a style object.
|
|
12
|
+
*/
|
|
13
|
+
export const extractTextStyles = (styles) => {
|
|
14
|
+
const textStyles = {};
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
16
|
+
Object.entries(styles).forEach(([key, value]) => {
|
|
17
|
+
if (isTextStyle(key)) {
|
|
18
|
+
textStyles[key] = value;
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
return textStyles;
|
|
22
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { ContentVariantsPrps } from '../components/content-variants/content-variants.types.js';
|
|
2
|
+
import type { Dictionary } from '../types/typescript.js';
|
|
3
|
+
import type { GetContentOptions } from './get-content/types.js';
|
|
4
|
+
type GetBuilderPropsOptions = (Omit<GetContentOptions, 'model'> & {
|
|
5
|
+
model?: string;
|
|
6
|
+
}) & ({
|
|
7
|
+
/**
|
|
8
|
+
* The current URL path. Used to determine the `urlPath` for targeting content.
|
|
9
|
+
*
|
|
10
|
+
* Cannot be used with `url`.
|
|
11
|
+
*/
|
|
12
|
+
path: string;
|
|
13
|
+
/**
|
|
14
|
+
* The current URL search params. Used to parse the `searchParams` for targeting content.
|
|
15
|
+
*
|
|
16
|
+
* Cannot be used with `url`.
|
|
17
|
+
*/
|
|
18
|
+
searchParams?: URLSearchParams | Dictionary<string | string[]>;
|
|
19
|
+
url?: undefined;
|
|
20
|
+
} | {
|
|
21
|
+
/**
|
|
22
|
+
* The current URL. Used to determine the `urlPath` for targeting content and
|
|
23
|
+
* to parse the `searchParams` for targeting content.
|
|
24
|
+
*
|
|
25
|
+
* Cannot be used with `path` or `searchParams`.
|
|
26
|
+
*/
|
|
27
|
+
url: URL;
|
|
28
|
+
path?: undefined;
|
|
29
|
+
searchParams?: undefined;
|
|
30
|
+
} | {
|
|
31
|
+
url?: undefined;
|
|
32
|
+
path?: undefined;
|
|
33
|
+
searchParams?: undefined;
|
|
34
|
+
});
|
|
35
|
+
/**
|
|
36
|
+
* Given an `apiKey` and `url` (or `path` + `searchParams`), provides all props that `Content` needs to render Builder Content.
|
|
37
|
+
*
|
|
38
|
+
*/
|
|
39
|
+
export declare const fetchBuilderProps: (_args: GetBuilderPropsOptions) => Promise<ContentVariantsPrps>;
|
|
40
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { getBuilderSearchParams } from './get-builder-search-params/index.js';
|
|
2
|
+
import { fetchOneEntry } from './get-content/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Given an `apiKey` and `url` (or `path` + `searchParams`), provides all props that `Content` needs to render Builder Content.
|
|
5
|
+
*
|
|
6
|
+
*/
|
|
7
|
+
export const fetchBuilderProps = async (_args) => {
|
|
8
|
+
const urlPath = _args.path || _args.url?.pathname || _args.userAttributes?.urlPath;
|
|
9
|
+
const getContentArgs = {
|
|
10
|
+
..._args,
|
|
11
|
+
apiKey: _args.apiKey,
|
|
12
|
+
model: _args.model || 'page',
|
|
13
|
+
userAttributes: {
|
|
14
|
+
..._args.userAttributes,
|
|
15
|
+
...(urlPath ? {
|
|
16
|
+
urlPath
|
|
17
|
+
} : {})
|
|
18
|
+
},
|
|
19
|
+
options: getBuilderSearchParams(_args.searchParams || _args.url?.searchParams || _args.options)
|
|
20
|
+
};
|
|
21
|
+
return {
|
|
22
|
+
apiKey: getContentArgs.apiKey,
|
|
23
|
+
model: getContentArgs.model,
|
|
24
|
+
content: await fetchOneEntry(getContentArgs)
|
|
25
|
+
};
|
|
26
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BuilderContextInterface } from '../context/types.js';
|
|
2
|
+
import type { BuilderBlock } from '../types/builder-block.js';
|
|
3
|
+
type Options = {
|
|
4
|
+
block: BuilderBlock;
|
|
5
|
+
} & Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'>;
|
|
6
|
+
type EventHandler = (event: Event) => any;
|
|
7
|
+
export declare const createEventHandler: (value: string, options: Options) => EventHandler;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { evaluate } from './evaluate/index.js';
|
|
2
|
+
export const createEventHandler = (value, options) => event => evaluate({
|
|
3
|
+
code: value,
|
|
4
|
+
context: options.context,
|
|
5
|
+
localState: options.localState,
|
|
6
|
+
rootState: options.rootState,
|
|
7
|
+
rootSetState: options.rootSetState,
|
|
8
|
+
event,
|
|
9
|
+
isExpression: false
|
|
10
|
+
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BuilderContextInterface } from '../context/types.js';
|
|
2
|
+
import type { BuilderBlock } from '../types/builder-block.js';
|
|
3
|
+
type Actions = {
|
|
4
|
+
[index: string]: (event: Event) => any;
|
|
5
|
+
};
|
|
6
|
+
export declare function getBlockActions(options: {
|
|
7
|
+
block: BuilderBlock;
|
|
8
|
+
stripPrefix?: boolean;
|
|
9
|
+
} & Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'>): Actions;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { TARGET } from '../constants/target.js';
|
|
2
|
+
import { getEventHandlerName } from './event-handler-name.js';
|
|
3
|
+
import { createEventHandler } from './get-block-actions-handler.js';
|
|
4
|
+
export function getBlockActions(options) {
|
|
5
|
+
const obj = {};
|
|
6
|
+
const optionActions = options.block.actions ?? {};
|
|
7
|
+
for (const key in optionActions) {
|
|
8
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
9
|
+
if (!optionActions.hasOwnProperty(key)) {
|
|
10
|
+
continue;
|
|
11
|
+
}
|
|
12
|
+
const value = optionActions[key];
|
|
13
|
+
let eventHandlerName = getEventHandlerName(key);
|
|
14
|
+
if (options.stripPrefix) {
|
|
15
|
+
switch (TARGET) {
|
|
16
|
+
case 'vue2':
|
|
17
|
+
case 'vue3':
|
|
18
|
+
eventHandlerName = eventHandlerName.replace('v-on:', '');
|
|
19
|
+
break;
|
|
20
|
+
case 'svelte':
|
|
21
|
+
eventHandlerName = eventHandlerName.replace('on:', '');
|
|
22
|
+
break;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
obj[eventHandlerName] = createEventHandler(value, options);
|
|
26
|
+
}
|
|
27
|
+
return obj;
|
|
28
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function getBlockComponentOptions(block) {
|
|
2
|
+
return {
|
|
3
|
+
...block.component?.options,
|
|
4
|
+
...block.options,
|
|
5
|
+
/**
|
|
6
|
+
* Our built-in components frequently make use of the block, so we provide all of it under `builderBlock`
|
|
7
|
+
*/
|
|
8
|
+
builderBlock: block
|
|
9
|
+
};
|
|
10
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { BuilderContextInterface } from '../context/types.js';
|
|
2
|
+
import type { BuilderBlock } from '../types/builder-block.js';
|
|
3
|
+
export declare function getBlockProperties({ block, context }: {
|
|
4
|
+
block: BuilderBlock;
|
|
5
|
+
context: BuilderContextInterface;
|
|
6
|
+
}): {
|
|
7
|
+
'builder-id': string | undefined;
|
|
8
|
+
style: string | Partial<CSSStyleDeclaration> | undefined;
|
|
9
|
+
class: string;
|
|
10
|
+
href: any;
|
|
11
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { TARGET } from '../constants/target.js';
|
|
2
|
+
import { convertStyleMapToCSSArray } from '../helpers/css.js';
|
|
3
|
+
import { getReactNativeBlockStyles } from './get-react-native-block-styles.js';
|
|
4
|
+
import { transformBlockProperties } from './transform-block-properties.js';
|
|
5
|
+
const extractRelevantRootBlockProperties = (block) => {
|
|
6
|
+
// currently we are only spreading the `href` property
|
|
7
|
+
// TO-DO: potentially spread all properties from block, but only if they are not already defined by BuilderBlock
|
|
8
|
+
// const {
|
|
9
|
+
// '@type': _type,
|
|
10
|
+
// '@version': _version,
|
|
11
|
+
// id: _id,
|
|
12
|
+
// tagName: _tagName,
|
|
13
|
+
// layerName: _layerName,
|
|
14
|
+
// groupLocked: _groupLocked,
|
|
15
|
+
// layerLocked: _layerLocked,
|
|
16
|
+
// class: _class,
|
|
17
|
+
// children: _children,
|
|
18
|
+
// responsiveStyles: _responsiveStyles,
|
|
19
|
+
// component: _component,
|
|
20
|
+
// bindings: _bindings,
|
|
21
|
+
// meta: _meta,
|
|
22
|
+
// actions: _actions,
|
|
23
|
+
// properties: _properties,
|
|
24
|
+
// code: _code,
|
|
25
|
+
// repeat: _repeat,
|
|
26
|
+
// animations: _animations,
|
|
27
|
+
// style: _style,
|
|
28
|
+
// hide: _hide,
|
|
29
|
+
// show: _show,
|
|
30
|
+
// // anything set by dynamic bindings outside of predefined `BuilderBlock` properties
|
|
31
|
+
// ...remainingBlockProperties
|
|
32
|
+
// } = block;
|
|
33
|
+
return {
|
|
34
|
+
href: block.href
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
export function getBlockProperties({ block, context }) {
|
|
38
|
+
const properties = {
|
|
39
|
+
...extractRelevantRootBlockProperties(block),
|
|
40
|
+
...block.properties,
|
|
41
|
+
'builder-id': block.id,
|
|
42
|
+
style: block.style ? getStyleAttribute(block.style) : undefined,
|
|
43
|
+
class: [block.id, 'builder-block', block.class, block.properties?.class].filter(Boolean).join(' ')
|
|
44
|
+
};
|
|
45
|
+
if (TARGET === 'reactNative') {
|
|
46
|
+
properties.style = getReactNativeBlockStyles({
|
|
47
|
+
block,
|
|
48
|
+
context,
|
|
49
|
+
blockStyles: properties.style
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
return transformBlockProperties(properties);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Svelte does not support style attribute as an object so we need to flatten it.
|
|
56
|
+
*
|
|
57
|
+
* Additionally, Svelte, Vue and other frameworks use kebab-case styles, so we need to convert them.
|
|
58
|
+
*/
|
|
59
|
+
function getStyleAttribute(style) {
|
|
60
|
+
switch (TARGET) {
|
|
61
|
+
case 'svelte':
|
|
62
|
+
case 'vue2':
|
|
63
|
+
case 'vue3':
|
|
64
|
+
case 'solid':
|
|
65
|
+
return convertStyleMapToCSSArray(style).join(' ');
|
|
66
|
+
case 'qwik':
|
|
67
|
+
case 'reactNative':
|
|
68
|
+
case 'react':
|
|
69
|
+
case 'rsc':
|
|
70
|
+
return style;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
type QueryObject = Record<string, string | string[]>;
|
|
2
|
+
export declare const convertSearchParamsToQueryObject: (searchParams: URLSearchParams) => QueryObject;
|
|
3
|
+
/**
|
|
4
|
+
* Receives a `URLSearchParams` object or a regular query object, and returns the subset of query params that are
|
|
5
|
+
* relevant to the Builder SDK.
|
|
6
|
+
*
|
|
7
|
+
* @returns
|
|
8
|
+
*/
|
|
9
|
+
export declare const getBuilderSearchParams: (_options: QueryObject | URLSearchParams | undefined) => QueryObject;
|
|
10
|
+
export declare const getBuilderSearchParamsFromWindow: () => QueryObject;
|
|
11
|
+
export declare const normalizeSearchParams: (searchParams: QueryObject | URLSearchParams) => QueryObject;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { isBrowser } from '../is-browser.js';
|
|
2
|
+
const BUILDER_SEARCHPARAMS_PREFIX = 'builder.';
|
|
3
|
+
const BUILDER_OPTIONS_PREFIX = 'options.';
|
|
4
|
+
export const convertSearchParamsToQueryObject = (searchParams) => {
|
|
5
|
+
const options = {};
|
|
6
|
+
searchParams.forEach((value, key) => {
|
|
7
|
+
options[key] = value;
|
|
8
|
+
});
|
|
9
|
+
return options;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Receives a `URLSearchParams` object or a regular query object, and returns the subset of query params that are
|
|
13
|
+
* relevant to the Builder SDK.
|
|
14
|
+
*
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
export const getBuilderSearchParams = (_options) => {
|
|
18
|
+
if (!_options) {
|
|
19
|
+
return {};
|
|
20
|
+
}
|
|
21
|
+
const options = normalizeSearchParams(_options);
|
|
22
|
+
const newOptions = {};
|
|
23
|
+
Object.keys(options).forEach(key => {
|
|
24
|
+
if (key.startsWith(BUILDER_SEARCHPARAMS_PREFIX)) {
|
|
25
|
+
const trimmedKey = key.replace(BUILDER_SEARCHPARAMS_PREFIX, '').replace(BUILDER_OPTIONS_PREFIX, '');
|
|
26
|
+
newOptions[trimmedKey] = options[key];
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
return newOptions;
|
|
30
|
+
};
|
|
31
|
+
export const getBuilderSearchParamsFromWindow = () => {
|
|
32
|
+
if (!isBrowser()) {
|
|
33
|
+
return {};
|
|
34
|
+
}
|
|
35
|
+
const searchParams = new URLSearchParams(window.location.search);
|
|
36
|
+
return getBuilderSearchParams(searchParams);
|
|
37
|
+
};
|
|
38
|
+
export const normalizeSearchParams = (searchParams) => searchParams instanceof URLSearchParams ? convertSearchParamsToQueryObject(searchParams) : searchParams;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { flatten } from '../../helpers/flatten.js';
|
|
2
|
+
import { getBuilderSearchParamsFromWindow, normalizeSearchParams } from '../get-builder-search-params/index.js';
|
|
3
|
+
import { DEFAULT_API_VERSION } from '../../types/api-version.js';
|
|
4
|
+
export const generateContentUrl = (options) => {
|
|
5
|
+
const { limit = 30, userAttributes, query, noTraverse = false, model, apiKey, includeRefs = true, enrich, locale, apiVersion = DEFAULT_API_VERSION } = options;
|
|
6
|
+
if (!apiKey) {
|
|
7
|
+
throw new Error('Missing API key');
|
|
8
|
+
}
|
|
9
|
+
if (!['v2', 'v3'].includes(apiVersion)) {
|
|
10
|
+
throw new Error(`Invalid apiVersion: expected 'v2' or 'v3', received '${apiVersion}'`);
|
|
11
|
+
}
|
|
12
|
+
const url = new URL(`https://cdn.builder.io/api/${apiVersion}/content/${model}?apiKey=${apiKey}&limit=${limit}&noTraverse=${noTraverse}&includeRefs=${includeRefs}${locale ? `&locale=${locale}` : ''}${enrich ? `&enrich=${enrich}` : ''}`);
|
|
13
|
+
const queryOptions = {
|
|
14
|
+
...getBuilderSearchParamsFromWindow(),
|
|
15
|
+
...normalizeSearchParams(options.options || {})
|
|
16
|
+
};
|
|
17
|
+
const flattened = flatten(queryOptions);
|
|
18
|
+
for (const key in flattened) {
|
|
19
|
+
url.searchParams.set(key, String(flattened[key]));
|
|
20
|
+
}
|
|
21
|
+
if (userAttributes) {
|
|
22
|
+
url.searchParams.set('userAttributes', JSON.stringify(userAttributes));
|
|
23
|
+
}
|
|
24
|
+
if (query) {
|
|
25
|
+
const flattened = flatten({
|
|
26
|
+
query
|
|
27
|
+
});
|
|
28
|
+
for (const key in flattened) {
|
|
29
|
+
url.searchParams.set(key, JSON.stringify(flattened[key]));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return url;
|
|
33
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { BuilderContent } from '../../types/builder-content.js';
|
|
2
|
+
import type { GetContentOptions } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Returns a the first entry that matches the given options.
|
|
5
|
+
*/
|
|
6
|
+
export declare function fetchOneEntry(options: GetContentOptions): Promise<BuilderContent | null>;
|
|
7
|
+
/**
|
|
8
|
+
* @deprecated `getContent` was renamed to `fetchOneEntry`. This is a temporary alias to avoid breaking changes.
|
|
9
|
+
*
|
|
10
|
+
* NOTE: consider using `fetchBuilderProps` instead for easier setup.
|
|
11
|
+
*/
|
|
12
|
+
export declare const getContent: typeof fetchOneEntry;
|
|
13
|
+
type ContentResults = {
|
|
14
|
+
results: BuilderContent[];
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* @internal Exported only for testing purposes. Do not use.
|
|
18
|
+
*/
|
|
19
|
+
export declare const _processContentResult: (options: GetContentOptions, content: ContentResults, url?: URL) => Promise<ContentResults>;
|
|
20
|
+
/**
|
|
21
|
+
* Returns a paginated array of entries that match the given options.
|
|
22
|
+
*/
|
|
23
|
+
export declare function fetchEntries(options: GetContentOptions): Promise<ContentResults | null>;
|
|
24
|
+
/**
|
|
25
|
+
* @deprecated `getAllContent` was renamed to `fetchEntries`. This is a temporary alias to avoid breaking changes.
|
|
26
|
+
*/
|
|
27
|
+
export declare const getAllContent: typeof fetchEntries;
|
|
28
|
+
export {};
|