@builder.io/sdk-qwik 0.0.16 → 0.0.17
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/lib/index.qwik.cjs +218 -510
- package/lib/index.qwik.mjs +218 -510
- package/package.json +6 -5
- package/types/blocks/button/button.d.ts +9 -0
- package/types/blocks/button/component-info.d.ts +2 -0
- package/types/blocks/columns/columns.d.ts +32 -0
- package/types/blocks/columns/component-info.d.ts +2 -0
- package/types/blocks/custom-code/component-info.d.ts +2 -0
- package/types/blocks/custom-code/custom-code.d.ts +7 -0
- package/types/blocks/embed/component-info.d.ts +2 -0
- package/types/blocks/embed/embed.d.ts +6 -0
- package/types/blocks/embed/helpers.d.ts +1 -0
- package/types/blocks/form/component-info.d.ts +2 -0
- package/types/blocks/fragment/component-info.d.ts +2 -0
- package/types/blocks/fragment/fragment.d.ts +7 -0
- package/types/blocks/image/component-info.d.ts +2 -0
- package/types/blocks/image/image.d.ts +25 -0
- package/types/blocks/image/image.helpers.d.ts +1 -0
- package/types/blocks/img/component-info.d.ts +2 -0
- package/types/blocks/img/img.d.ts +10 -0
- package/types/blocks/input/component-info.d.ts +2 -0
- package/types/blocks/input/input.d.ts +11 -0
- package/types/blocks/raw-text/component-info.d.ts +2 -0
- package/types/blocks/raw-text/raw-text.d.ts +6 -0
- package/types/blocks/section/component-info.d.ts +2 -0
- package/types/blocks/section/section.d.ts +8 -0
- package/types/blocks/select/component-info.d.ts +2 -0
- package/types/blocks/select/select.d.ts +12 -0
- package/types/blocks/submit-button/component-info.d.ts +2 -0
- package/types/blocks/submit-button/submit-button.d.ts +6 -0
- package/types/blocks/symbol/component-info.d.ts +2 -0
- package/types/blocks/symbol/symbol.d.ts +20 -0
- package/types/blocks/text/component-info.d.ts +2 -0
- package/types/blocks/text/text.d.ts +5 -0
- package/types/blocks/textarea/component-info.d.ts +2 -0
- package/types/blocks/textarea/textarea.d.ts +9 -0
- package/types/blocks/util.d.ts +1 -0
- package/types/blocks/video/component-info.d.ts +2 -0
- package/types/blocks/video/video.d.ts +25 -0
- package/types/components/render-block/block-styles.d.ts +12 -0
- package/types/components/render-block/render-block.d.ts +32 -0
- package/types/components/render-block/render-block.helpers.d.ts +1 -0
- package/types/components/render-block/render-component.d.ts +12 -0
- package/types/components/render-block/render-repeated-block.d.ts +17 -0
- package/types/components/render-block/types.d.ts +6 -0
- package/types/components/render-blocks.d.ts +12 -0
- package/types/components/render-content/components/render-styles.d.ts +19 -0
- package/types/components/render-content/index.d.ts +1 -0
- package/types/components/render-content/render-content.d.ts +33 -0
- package/types/components/render-inlined-styles.d.ts +9 -0
- package/types/constants/builder-registered-components.d.ts +6 -0
- package/types/constants/device-sizes.d.ts +2 -0
- package/types/constants/target.d.ts +2 -0
- package/types/context/builder.context.d.ts +2 -0
- package/types/context/types.d.ts +16 -0
- package/types/functions/camel-to-kebab-case.d.ts +1 -0
- package/types/functions/convert-style-object.d.ts +1 -0
- package/types/functions/evaluate.d.ts +5 -0
- package/types/functions/event-handler-name.d.ts +1 -0
- package/types/functions/get-block-actions.d.ts +9 -0
- package/types/functions/get-block-component-options.d.ts +2 -0
- package/types/functions/get-block-properties.d.ts +5 -0
- package/types/functions/get-block-styles.d.ts +2 -0
- package/types/functions/get-block-tag.d.ts +10 -0
- package/types/functions/get-builder-search-params/fn.test.d.ts +1 -0
- package/types/functions/get-builder-search-params/index.d.ts +6 -0
- package/types/functions/get-content/ab-testing.d.ts +3 -0
- package/types/functions/get-content/fn.test.d.ts +1 -0
- package/types/functions/get-content/index.d.ts +9 -0
- package/types/functions/get-content/types.d.ts +26 -0
- package/types/functions/get-fetch.d.ts +1 -0
- package/types/functions/get-global-this.d.ts +1 -0
- package/types/functions/get-processed-block.d.ts +10 -0
- package/types/functions/get-processed-block.test.d.ts +1 -0
- package/types/functions/if-target.d.ts +7 -0
- package/types/functions/is-browser.d.ts +1 -0
- package/types/functions/is-editing.d.ts +1 -0
- package/types/functions/is-iframe.d.ts +1 -0
- package/types/functions/is-previewing.d.ts +1 -0
- package/types/functions/mark-mutable.d.ts +2 -0
- package/types/functions/on-change.d.ts +7 -0
- package/types/functions/on-change.test.d.ts +1 -0
- package/types/functions/register-component.d.ts +14 -0
- package/types/functions/register.d.ts +16 -0
- package/types/functions/sanitize-styles.d.ts +4 -0
- package/types/functions/set-editor-settings.d.ts +4 -0
- package/types/functions/set.d.ts +7 -0
- package/types/functions/set.test.d.ts +1 -0
- package/types/functions/track.d.ts +21 -0
- package/types/functions/transform-block.d.ts +2 -0
- package/types/helpers/cookie.d.ts +9 -0
- package/types/helpers/css.d.ts +1 -0
- package/types/helpers/flatten.d.ts +6 -0
- package/types/helpers/localStorage.d.ts +9 -0
- package/types/helpers/nullable.d.ts +2 -0
- package/types/helpers/sessionId.d.ts +7 -0
- package/types/helpers/time.d.ts +1 -0
- package/types/helpers/url.d.ts +6 -0
- package/types/helpers/url.test.d.ts +1 -0
- package/types/helpers/uuid.d.ts +8 -0
- package/types/helpers/visitorId.d.ts +8 -0
- package/types/index-helpers/blocks-exports.d.ts +10 -0
- package/types/index-helpers/top-of-file.d.ts +1 -0
- package/types/index.d.ts +10 -0
- package/types/scripts/init-editing.d.ts +2 -0
- package/types/types/builder-block.d.ts +57 -0
- package/types/types/builder-content.d.ts +38 -0
- package/types/types/can-track.d.ts +3 -0
- package/types/types/components.d.ts +177 -0
- package/types/types/deep-partial.d.ts +3 -0
- package/types/types/element.d.ts +59 -0
- package/types/types/targets.d.ts +3 -0
- package/types/types/typescript.d.ts +4 -0
- package/types-hacks.d.ts +6 -0
- package/.yarn/cache/@builder.io-qwik-npm-0.0.103-bdc7786a46-98363e9103.zip +0 -0
- package/.yarn/cache/@gar-promisify-npm-1.1.3-ac1a325862-4059f790e2.zip +0 -0
- package/.yarn/cache/@npmcli-fs-npm-2.1.2-08d434e77b-405074965e.zip +0 -0
- package/.yarn/cache/@npmcli-move-file-npm-2.0.1-b593d8f741-52dc02259d.zip +0 -0
- package/.yarn/cache/@tootallnate-once-npm-2.0.0-e36cf4f140-ad87447820.zip +0 -0
- package/.yarn/cache/@types-node-npm-18.7.6-c1eafa3d9a-5122988c32.zip +0 -0
- package/.yarn/cache/abbrev-npm-1.1.1-3659247eab-a4a97ec07d.zip +0 -0
- package/.yarn/cache/agent-base-npm-6.0.2-428f325a93-f52b6872cc.zip +0 -0
- package/.yarn/cache/agentkeepalive-npm-4.2.1-b86a9fb343-39cb49ed8c.zip +0 -0
- package/.yarn/cache/aggregate-error-npm-3.1.0-415a406f4e-1101a33f21.zip +0 -0
- package/.yarn/cache/ansi-regex-npm-5.0.1-c963a48615-2aa4bb54ca.zip +0 -0
- package/.yarn/cache/aproba-npm-2.0.0-8716bcfde6-5615cadcfb.zip +0 -0
- package/.yarn/cache/are-we-there-yet-npm-3.0.1-3395b1512f-52590c2486.zip +0 -0
- package/.yarn/cache/balanced-match-npm-1.0.2-a53c126459-9706c088a2.zip +0 -0
- package/.yarn/cache/brace-expansion-npm-1.1.11-fb95eb05ad-faf34a7bb0.zip +0 -0
- package/.yarn/cache/brace-expansion-npm-2.0.1-17aa2616f9-a61e7cd2e8.zip +0 -0
- package/.yarn/cache/cacache-npm-16.1.2-0d36d1aaf1-defe1d6f55.zip +0 -0
- package/.yarn/cache/chownr-npm-2.0.0-638f1c9c61-c57cf9dd07.zip +0 -0
- package/.yarn/cache/clean-stack-npm-2.2.0-a8ce435a5c-2ac8cd2b2f.zip +0 -0
- package/.yarn/cache/color-support-npm-1.1.3-3be5c53455-9b73568176.zip +0 -0
- package/.yarn/cache/concat-map-npm-0.0.1-85a921b7ee-902a9f5d89.zip +0 -0
- package/.yarn/cache/console-control-strings-npm-1.1.0-e3160e5275-8755d76787.zip +0 -0
- package/.yarn/cache/debug-npm-4.3.4-4513954577-3dbad3f94e.zip +0 -0
- package/.yarn/cache/delegates-npm-1.0.0-9b1942d75f-a51744d9b5.zip +0 -0
- package/.yarn/cache/depd-npm-1.1.2-b0c8414da7-6b406620d2.zip +0 -0
- package/.yarn/cache/emoji-regex-npm-8.0.0-213764015c-d4c5c39d5a.zip +0 -0
- package/.yarn/cache/encoding-npm-0.1.13-82a1837d30-bb98632f8f.zip +0 -0
- package/.yarn/cache/env-paths-npm-2.2.1-7c7577428c-65b5df55a8.zip +0 -0
- package/.yarn/cache/err-code-npm-2.0.3-082e0ff9a7-8b7b1be20d.zip +0 -0
- package/.yarn/cache/esbuild-darwin-arm64-npm-0.14.54-ec53803fa6-8.zip +0 -0
- package/.yarn/cache/esbuild-npm-0.14.54-b3dcd8a41e-49e360b118.zip +0 -0
- package/.yarn/cache/fs-minipass-npm-2.1.0-501ef87306-1b8d128dae.zip +0 -0
- package/.yarn/cache/fs.realpath-npm-1.0.0-c8f05d8126-99ddea01a7.zip +0 -0
- package/.yarn/cache/fsevents-npm-2.3.2-a881d6ac9f-97ade64e75.zip +0 -0
- package/.yarn/cache/fsevents-patch-3340e2eb10-8.zip +0 -0
- package/.yarn/cache/function-bind-npm-1.1.1-b56b322ae9-b32fbaebb3.zip +0 -0
- package/.yarn/cache/gauge-npm-4.0.4-8f878385e9-788b6bfe52.zip +0 -0
- package/.yarn/cache/glob-npm-7.2.3-2d866d17a5-29452e97b3.zip +0 -0
- package/.yarn/cache/glob-npm-8.0.3-750f909025-50bcdea19d.zip +0 -0
- package/.yarn/cache/graceful-fs-npm-4.2.10-79c70989ca-3f109d70ae.zip +0 -0
- package/.yarn/cache/has-npm-1.0.3-b7f00631c1-b9ad53d53b.zip +0 -0
- package/.yarn/cache/has-unicode-npm-2.0.1-893adb4747-1eab07a743.zip +0 -0
- package/.yarn/cache/http-cache-semantics-npm-4.1.0-860520a31f-974de94a81.zip +0 -0
- package/.yarn/cache/http-proxy-agent-npm-5.0.0-7f1f121b83-e2ee1ff165.zip +0 -0
- package/.yarn/cache/https-proxy-agent-npm-5.0.1-42d65f358e-571fccdf38.zip +0 -0
- package/.yarn/cache/humanize-ms-npm-1.2.1-e942bd7329-9c7a74a282.zip +0 -0
- package/.yarn/cache/iconv-lite-npm-0.6.3-24b8aae27e-3f60d47a5c.zip +0 -0
- package/.yarn/cache/imurmurhash-npm-0.1.4-610c5068a0-7cae75c8cd.zip +0 -0
- package/.yarn/cache/indent-string-npm-4.0.0-7b717435b2-824cfb9929.zip +0 -0
- package/.yarn/cache/infer-owner-npm-1.0.4-685ac3d2af-181e732764.zip +0 -0
- package/.yarn/cache/inflight-npm-1.0.6-ccedb4b908-f4f76aa072.zip +0 -0
- package/.yarn/cache/inherits-npm-2.0.4-c66b3957a0-4a48a73384.zip +0 -0
- package/.yarn/cache/ip-npm-2.0.0-204facb3cc-cfcfac6b87.zip +0 -0
- package/.yarn/cache/is-core-module-npm-2.10.0-6dff9310aa-0f3f77811f.zip +0 -0
- package/.yarn/cache/is-fullwidth-code-point-npm-3.0.0-1ecf4ebee5-44a30c2945.zip +0 -0
- package/.yarn/cache/is-lambda-npm-1.0.1-7ab55bc8a8-93a32f0194.zip +0 -0
- package/.yarn/cache/isexe-npm-2.0.0-b58870bd2e-26bf6c5480.zip +0 -0
- package/.yarn/cache/lru-cache-npm-6.0.0-b4c8668fe1-f97f499f89.zip +0 -0
- package/.yarn/cache/lru-cache-npm-7.14.0-354cf654ec-efdd329f2c.zip +0 -0
- package/.yarn/cache/make-fetch-happen-npm-10.2.1-f1cc7cd2df-2332eb9a8e.zip +0 -0
- package/.yarn/cache/minimatch-npm-3.1.2-9405269906-c154e56640.zip +0 -0
- package/.yarn/cache/minimatch-npm-5.1.0-34f6240621-15ce53d31a.zip +0 -0
- package/.yarn/cache/minipass-collect-npm-1.0.2-3b4676eab5-14df761028.zip +0 -0
- package/.yarn/cache/minipass-fetch-npm-2.1.1-c4a8efdb09-1aae0c2240.zip +0 -0
- package/.yarn/cache/minipass-flush-npm-1.0.5-efe79d9826-56269a0b22.zip +0 -0
- package/.yarn/cache/minipass-npm-3.3.5-a555b091e7-f89f02bcaa.zip +0 -0
- package/.yarn/cache/minipass-pipeline-npm-1.2.4-5924cb077f-b14240dac0.zip +0 -0
- package/.yarn/cache/minipass-sized-npm-1.0.3-306d86f432-79076749fc.zip +0 -0
- package/.yarn/cache/minizlib-npm-2.1.2-ea89cd0cfb-f1fdeac0b0.zip +0 -0
- package/.yarn/cache/mkdirp-npm-1.0.4-37f6ef56b9-a96865108c.zip +0 -0
- package/.yarn/cache/ms-npm-2.1.2-ec0c1512ff-673cdb2c31.zip +0 -0
- package/.yarn/cache/ms-npm-2.1.3-81ff3cfac1-aa92de6080.zip +0 -0
- package/.yarn/cache/nanoid-npm-3.3.4-3d250377d6-2fddd6dee9.zip +0 -0
- package/.yarn/cache/negotiator-npm-0.6.3-9d50e36171-b8ffeb1e26.zip +0 -0
- package/.yarn/cache/node-gyp-npm-9.1.0-2091059b31-1437fa4a87.zip +0 -0
- package/.yarn/cache/nopt-npm-5.0.0-304b40fbfe-d35fdec187.zip +0 -0
- package/.yarn/cache/npmlog-npm-6.0.2-e0e69455c7-ae238cd264.zip +0 -0
- package/.yarn/cache/once-npm-1.4.0-ccf03ef07a-cd0a885013.zip +0 -0
- package/.yarn/cache/p-map-npm-4.0.0-4677ae07c7-cb0ab21ec0.zip +0 -0
- package/.yarn/cache/path-is-absolute-npm-1.0.1-31bc695ffd-060840f92c.zip +0 -0
- package/.yarn/cache/path-parse-npm-1.0.7-09564527b7-49abf3d811.zip +0 -0
- package/.yarn/cache/picocolors-npm-1.0.0-d81e0b1927-a2e8092dd8.zip +0 -0
- package/.yarn/cache/postcss-npm-8.4.16-7367383579-10eee25efd.zip +0 -0
- package/.yarn/cache/promise-inflight-npm-1.0.1-5bb925afac-2274948309.zip +0 -0
- package/.yarn/cache/promise-retry-npm-2.0.1-871f0b01b7-f96a3f6d90.zip +0 -0
- package/.yarn/cache/readable-stream-npm-3.6.0-23a4a5eb56-d4ea81502d.zip +0 -0
- package/.yarn/cache/resolve-npm-1.22.1-3980488690-07af5fc1e8.zip +0 -0
- package/.yarn/cache/resolve-patch-46f9469d0d-5656f4d0be.zip +0 -0
- package/.yarn/cache/retry-npm-0.12.0-72ac7fb4cc-623bd7d2e5.zip +0 -0
- package/.yarn/cache/rimraf-npm-3.0.2-2cb7dac69a-87f4164e39.zip +0 -0
- package/.yarn/cache/rollup-npm-2.78.0-09284f4c78-01b5a7ae08.zip +0 -0
- package/.yarn/cache/safe-buffer-npm-5.2.1-3481c8aa9b-b99c4b41fd.zip +0 -0
- package/.yarn/cache/safer-buffer-npm-2.1.2-8d5c0b705e-cab8f25ae6.zip +0 -0
- package/.yarn/cache/semver-npm-7.3.7-3bfe704194-2fa3e87756.zip +0 -0
- package/.yarn/cache/set-blocking-npm-2.0.0-49e2cffa24-6e65a05f7c.zip +0 -0
- package/.yarn/cache/signal-exit-npm-3.0.7-bd270458a3-a2f098f247.zip +0 -0
- package/.yarn/cache/smart-buffer-npm-4.2.0-5ac3f668bb-b5167a7142.zip +0 -0
- package/.yarn/cache/socks-npm-2.7.0-cc1cb019db-0b5d94e2b3.zip +0 -0
- package/.yarn/cache/socks-proxy-agent-npm-7.0.0-7aacf32ea0-7205543701.zip +0 -0
- package/.yarn/cache/source-map-js-npm-1.0.2-ee4f9f9b30-c049a7fc4d.zip +0 -0
- package/.yarn/cache/ssri-npm-9.0.1-33ce27f4f8-fb58f5e46b.zip +0 -0
- package/.yarn/cache/string-width-npm-4.2.3-2c27177bae-e52c10dc3f.zip +0 -0
- package/.yarn/cache/string_decoder-npm-1.3.0-2422117fd0-8417646695.zip +0 -0
- package/.yarn/cache/strip-ansi-npm-6.0.1-caddc7cb40-f3cd25890a.zip +0 -0
- package/.yarn/cache/supports-preserve-symlinks-flag-npm-1.0.0-f17c4d0028-53b1e247e6.zip +0 -0
- package/.yarn/cache/tar-npm-6.1.11-e6ac3cba9c-a04c07bb9e.zip +0 -0
- package/.yarn/cache/typescript-npm-4.7.4-65aa6ffb42-5750181b1c.zip +0 -0
- package/.yarn/cache/typescript-patch-ae154b3216-96d3030cb0.zip +0 -0
- package/.yarn/cache/unique-filename-npm-1.1.1-c885c5095b-cf4998c922.zip +0 -0
- package/.yarn/cache/unique-slug-npm-2.0.2-f6ba1ddeb7-5b6876a645.zip +0 -0
- package/.yarn/cache/util-deprecate-npm-1.0.2-e3fe1a219c-474acf1146.zip +0 -0
- package/.yarn/cache/vite-npm-3.0.2-a17ab24a12-10aebec0df.zip +0 -0
- package/.yarn/cache/which-npm-2.0.2-320ddf72f7-1a5c563d3c.zip +0 -0
- package/.yarn/cache/wide-align-npm-1.1.5-889d77e592-d5fc37cd56.zip +0 -0
- package/.yarn/cache/wrappy-npm-1.0.2-916de4d4b3-159da4805f.zip +0 -0
- package/.yarn/cache/yallist-npm-4.0.0-b493d9e907-343617202a.zip +0 -0
- package/.yarn/install-state.gz +0 -0
- package/DEVELOPER.md +0 -118
- package/src/blocks/button/button.jsx +0 -27
- package/src/blocks/button/component-info.js +0 -41
- package/src/blocks/columns/columns.jsx +0 -102
- package/src/blocks/columns/component-info.js +0 -242
- package/src/blocks/custom-code/component-info.js +0 -31
- package/src/blocks/custom-code/custom-code.jsx +0 -71
- package/src/blocks/embed/component-info.js +0 -44
- package/src/blocks/embed/embed.jsx +0 -63
- package/src/blocks/embed/helpers.js +0 -9
- package/src/blocks/form/component-info.js +0 -262
- package/src/blocks/form/form.jsx +0 -303
- package/src/blocks/fragment/component-info.js +0 -11
- package/src/blocks/fragment/fragment.jsx +0 -11
- package/src/blocks/image/component-info.js +0 -151
- package/src/blocks/image/image.helpers.js +0 -48
- package/src/blocks/image/image.jsx +0 -110
- package/src/blocks/img/component-info.js +0 -20
- package/src/blocks/img/img.jsx +0 -19
- package/src/blocks/input/component-info.js +0 -74
- package/src/blocks/input/input.jsx +0 -21
- package/src/blocks/raw-text/component-info.js +0 -16
- package/src/blocks/raw-text/raw-text.jsx +0 -12
- package/src/blocks/section/component-info.js +0 -49
- package/src/blocks/section/section.jsx +0 -20
- package/src/blocks/select/component-info.js +0 -59
- package/src/blocks/select/select.jsx +0 -24
- package/src/blocks/submit-button/component-info.js +0 -28
- package/src/blocks/submit-button/submit-button.jsx +0 -11
- package/src/blocks/symbol/component-info.js +0 -43
- package/src/blocks/symbol/symbol.jsx +0 -78
- package/src/blocks/text/component-info.js +0 -24
- package/src/blocks/text/text.jsx +0 -7
- package/src/blocks/textarea/component-info.js +0 -47
- package/src/blocks/textarea/textarea.jsx +0 -15
- package/src/blocks/util.js +0 -7
- package/src/blocks/video/component-info.js +0 -106
- package/src/blocks/video/video.jsx +0 -53
- package/src/components/render-block/block-styles.jsx +0 -60
- package/src/components/render-block/render-block.helpers.js +0 -23
- package/src/components/render-block/render-block.jsx +0 -220
- package/src/components/render-block/render-component.jsx +0 -35
- package/src/components/render-block/render-repeated-block.jsx +0 -40
- package/src/components/render-block/types.js +0 -0
- package/src/components/render-blocks.jsx +0 -93
- package/src/components/render-content/components/render-styles.jsx +0 -76
- package/src/components/render-content/index.js +0 -4
- package/src/components/render-content/render-content.jsx +0 -368
- package/src/components/render-inlined-styles.jsx +0 -26
- package/src/constants/builder-registered-components.js +0 -51
- package/src/constants/device-sizes.js +0 -21
- package/src/constants/target.js +0 -4
- package/src/context/builder.context.js +0 -5
- package/src/functions/camel-to-kebab-case.js +0 -4
- package/src/functions/convert-style-object.js +0 -6
- package/src/functions/evaluate.js +0 -28
- package/src/functions/event-handler-name.js +0 -7
- package/src/functions/get-block-actions.js +0 -23
- package/src/functions/get-block-component-options.js +0 -28
- package/src/functions/get-block-properties.js +0 -29
- package/src/functions/get-block-styles.js +0 -34
- package/src/functions/get-block-tag.js +0 -6
- package/src/functions/get-builder-search-params/fn.test.js +0 -13
- package/src/functions/get-builder-search-params/index.js +0 -33
- package/src/functions/get-content/ab-testing.js +0 -38
- package/src/functions/get-content/fn.test.js +0 -31
- package/src/functions/get-content/index.js +0 -96
- package/src/functions/get-content/types.js +0 -0
- package/src/functions/get-fetch.js +0 -34
- package/src/functions/get-global-this.js +0 -18
- package/src/functions/get-processed-block.js +0 -57
- package/src/functions/get-processed-block.test.js +0 -32
- package/src/functions/if-target.js +0 -15
- package/src/functions/is-browser.js +0 -6
- package/src/functions/is-editing.js +0 -7
- package/src/functions/is-iframe.js +0 -7
- package/src/functions/is-previewing.js +0 -14
- package/src/functions/mark-mutable.js +0 -14
- package/src/functions/on-change.js +0 -27
- package/src/functions/on-change.test.js +0 -19
- package/src/functions/register-component.js +0 -72
- package/src/functions/register.js +0 -29
- package/src/functions/sanitize-styles.js +0 -5
- package/src/functions/set-editor-settings.js +0 -15
- package/src/functions/set.js +0 -11
- package/src/functions/set.test.js +0 -16
- package/src/functions/track.js +0 -115
- package/src/functions/transform-block.js +0 -6
- package/src/helpers/cookie.js +0 -59
- package/src/helpers/css.js +0 -12
- package/src/helpers/flatten.js +0 -34
- package/src/helpers/localStorage.js +0 -34
- package/src/helpers/nullable.js +0 -4
- package/src/helpers/sessionId.js +0 -26
- package/src/helpers/time.js +0 -5
- package/src/helpers/url.js +0 -10
- package/src/helpers/url.test.js +0 -15
- package/src/helpers/uuid.js +0 -13
- package/src/helpers/visitorId.js +0 -33
- package/src/index-helpers/blocks-exports.js +0 -22
- package/src/index-helpers/top-of-file.js +0 -4
- package/src/index.js +0 -10
- package/src/scripts/init-editing.js +0 -79
- package/src/types/builder-block.js +0 -0
- package/src/types/builder-content.js +0 -0
- package/src/types/can-track.js +0 -0
- package/src/types/components.js +0 -0
- package/src/types/deep-partial.js +0 -0
- package/src/types/element.js +0 -0
- package/src/types/targets.js +0 -0
- package/src/types/typescript.js +0 -0
- package/tsconfig.json +0 -110
- package/types.d.ts +0 -8
- package/vite.config.ts +0 -17
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { BuilderContent } from '../../types/builder-content.js';
|
|
2
|
+
export declare type GetContentOptions = import('./types.js').GetContentOptions;
|
|
3
|
+
export declare function getContent(options: GetContentOptions): Promise<BuilderContent | null>;
|
|
4
|
+
export declare const generateContentUrl: (options: GetContentOptions) => URL;
|
|
5
|
+
interface ContentResponse {
|
|
6
|
+
results: BuilderContent[];
|
|
7
|
+
}
|
|
8
|
+
export declare function getAllContent(options: GetContentOptions): Promise<ContentResponse>;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface GetContentOptions {
|
|
2
|
+
/** The model to get content for */
|
|
3
|
+
model: string;
|
|
4
|
+
/** Your public API key */
|
|
5
|
+
apiKey: string;
|
|
6
|
+
/** A/B test groups the current visitor is in. Key is the content ID, value is the variation ID */
|
|
7
|
+
testGroups?: Record<string, string> | null;
|
|
8
|
+
/** Number of items to fetch. Default is 1 */
|
|
9
|
+
limit?: number;
|
|
10
|
+
/** User attributes to target on, such as { urlPath: '/foo', device: 'mobile', ...etc } */
|
|
11
|
+
userAttributes?: (Record<string, string> & {
|
|
12
|
+
urlPath?: string;
|
|
13
|
+
}) | null;
|
|
14
|
+
/** Custom query */
|
|
15
|
+
query?: Record<string, any>;
|
|
16
|
+
/**
|
|
17
|
+
* Any other API options.
|
|
18
|
+
* Accepts both a key/value object or a `URLSearchParams` instance
|
|
19
|
+
* */
|
|
20
|
+
options?: Record<string, any> | URLSearchParams;
|
|
21
|
+
/**
|
|
22
|
+
* If set to `true`, it will lazy load symbols/references.
|
|
23
|
+
* If set to `false`, it will render the entire content tree eagerly.
|
|
24
|
+
*/
|
|
25
|
+
noTraverse?: boolean;
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getFetch(): Promise<typeof global.fetch>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getGlobalThis(): any;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BuilderContextInterface } from '../context/types.js';
|
|
2
|
+
import { BuilderBlock } from '../types/builder-block.js';
|
|
3
|
+
export declare function getProcessedBlock({ block, context, shouldEvaluateBindings, state, }: {
|
|
4
|
+
block: BuilderBlock;
|
|
5
|
+
/**
|
|
6
|
+
* In some cases, we want to avoid evaluating bindings and only want framework-specific block transformation. It is
|
|
7
|
+
* also sometimes too early to consider bindings, e.g. when we might be looking at a repeated block.
|
|
8
|
+
*/
|
|
9
|
+
shouldEvaluateBindings: boolean;
|
|
10
|
+
} & Pick<BuilderContextInterface, 'state' | 'context'>): BuilderBlock;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isBrowser(): boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isEditing(): boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isIframe(): boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isPreviewing(): boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RegisteredComponent } from '../context/types.js';
|
|
2
|
+
import type { ComponentInfo } from '../types/components.js';
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated. Use the `customComponents` prop in RenderContent instead to provide your custom components to the builder SDK.
|
|
5
|
+
*/
|
|
6
|
+
export declare const components: RegisteredComponent[];
|
|
7
|
+
/**
|
|
8
|
+
* @deprecated. Use the `customComponents` prop in RenderContent instead to provide your custom components to the builder SDK.
|
|
9
|
+
*/
|
|
10
|
+
export declare function registerComponent(component: any, info: ComponentInfo): void;
|
|
11
|
+
export declare const createRegisterComponentMessage: ({ component: _, ...info }: RegisteredComponent) => {
|
|
12
|
+
type: string;
|
|
13
|
+
data: ComponentInfo;
|
|
14
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BuilderBlock } from '../types/builder-block.js';
|
|
2
|
+
import { DeepPartial } from '../types/deep-partial.js';
|
|
3
|
+
export interface InsertMenuItem {
|
|
4
|
+
name: string;
|
|
5
|
+
icon?: string;
|
|
6
|
+
item: DeepPartial<BuilderBlock>;
|
|
7
|
+
}
|
|
8
|
+
export interface InsertMenuConfig {
|
|
9
|
+
name: string;
|
|
10
|
+
priority?: number;
|
|
11
|
+
persist?: boolean;
|
|
12
|
+
advanced?: boolean;
|
|
13
|
+
items: InsertMenuItem[];
|
|
14
|
+
}
|
|
15
|
+
export declare function register(type: 'insertMenu', info: InsertMenuConfig): void;
|
|
16
|
+
export declare function register(type: string, info: any): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { CanTrack } from '../types/can-track.js';
|
|
2
|
+
interface Event {
|
|
3
|
+
type: 'click' | 'impression';
|
|
4
|
+
data: {
|
|
5
|
+
contentId?: string;
|
|
6
|
+
ownerId: string;
|
|
7
|
+
metadata?: string;
|
|
8
|
+
sessionId: string | undefined;
|
|
9
|
+
visitorId: string | undefined;
|
|
10
|
+
[index: string]: any;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
declare type EventProperties = {
|
|
14
|
+
type: Event['type'];
|
|
15
|
+
orgId: Event['data']['ownerId'];
|
|
16
|
+
contentId: Event['data']['contentId'];
|
|
17
|
+
[index: string]: any;
|
|
18
|
+
};
|
|
19
|
+
export declare type EventProps = EventProperties & CanTrack;
|
|
20
|
+
export declare function track(eventProps: EventProps): Promise<void | Response>;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CanTrack } from '../types/can-track.js';
|
|
2
|
+
export declare const getCookie: ({ name, canTrack, }: {
|
|
3
|
+
name: string;
|
|
4
|
+
} & CanTrack) => string | undefined;
|
|
5
|
+
export declare const setCookie: ({ name, value, expires, canTrack, }: {
|
|
6
|
+
name: string;
|
|
7
|
+
value: string;
|
|
8
|
+
expires?: Date | undefined;
|
|
9
|
+
} & CanTrack) => undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const convertStyleMaptoCSS: (style: Partial<CSSStyleDeclaration>) => string;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const getLocalStorageItem: ({ key, canTrack, }: {
|
|
2
|
+
key: string;
|
|
3
|
+
canTrack: boolean;
|
|
4
|
+
}) => string | null | undefined;
|
|
5
|
+
export declare const setLocalStorageItem: ({ key, canTrack, value, }: {
|
|
6
|
+
key: string;
|
|
7
|
+
value: string;
|
|
8
|
+
canTrack: boolean;
|
|
9
|
+
}) => void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CanTrack } from '../types/can-track.js';
|
|
2
|
+
export declare const getSessionId: ({ canTrack }: CanTrack) => string | undefined;
|
|
3
|
+
export declare const createSessionId: () => string;
|
|
4
|
+
export declare const setSessionId: ({ id, canTrack, }: {
|
|
5
|
+
id: string;
|
|
6
|
+
canTrack: boolean;
|
|
7
|
+
}) => undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getCurrentDatePlusMinutes: (minutes?: number) => Date;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { default as Columns } from '../blocks/columns/columns.jsx';
|
|
2
|
+
export { default as Image } from '../blocks/image/image.jsx';
|
|
3
|
+
export { default as Text } from '../blocks/text/text.jsx';
|
|
4
|
+
export { default as Video } from '../blocks/video/video.jsx';
|
|
5
|
+
export { default as Symbol } from '../blocks/symbol/symbol.jsx';
|
|
6
|
+
export { default as Button } from '../blocks/button/button.jsx';
|
|
7
|
+
export { default as Section } from '../blocks/section/section.jsx';
|
|
8
|
+
export { default as Fragment } from '../blocks/fragment/fragment.jsx';
|
|
9
|
+
export { default as RenderContent } from '../components/render-content/render-content.jsx';
|
|
10
|
+
export { default as RenderBlocks } from '../components/render-blocks.jsx';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default undefined;
|
package/types/index.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import './index-helpers/top-of-file.js';
|
|
2
|
+
import './scripts/init-editing.js';
|
|
3
|
+
export * from './index-helpers/blocks-exports.js';
|
|
4
|
+
export * from './functions/is-editing.js';
|
|
5
|
+
export * from './functions/is-previewing.js';
|
|
6
|
+
export * from './functions/register-component.js';
|
|
7
|
+
export * from './functions/register.js';
|
|
8
|
+
export * from './functions/set-editor-settings.js';
|
|
9
|
+
export * from './functions/get-content/index.js';
|
|
10
|
+
export * from './functions/get-builder-search-params/index.js';
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
declare type JSONValue = string | number | boolean | JSONObject | JSONArray;
|
|
2
|
+
interface JSONObject {
|
|
3
|
+
[x: string]: JSONValue;
|
|
4
|
+
}
|
|
5
|
+
interface JSONArray extends Array<JSONValue> {
|
|
6
|
+
}
|
|
7
|
+
/** @todo typedoc this */
|
|
8
|
+
export interface BuilderBlock {
|
|
9
|
+
'@type': '@builder.io/sdk:Element';
|
|
10
|
+
'@version'?: number;
|
|
11
|
+
id?: string;
|
|
12
|
+
tagName?: string;
|
|
13
|
+
layerName?: string;
|
|
14
|
+
groupLocked?: boolean;
|
|
15
|
+
layerLocked?: boolean;
|
|
16
|
+
/** @todo make alias for properties.class */
|
|
17
|
+
class?: string;
|
|
18
|
+
children?: BuilderBlock[];
|
|
19
|
+
responsiveStyles?: {
|
|
20
|
+
large?: Partial<CSSStyleDeclaration>;
|
|
21
|
+
medium?: Partial<CSSStyleDeclaration>;
|
|
22
|
+
small?: Partial<CSSStyleDeclaration>;
|
|
23
|
+
/** @deprecated */
|
|
24
|
+
xsmall?: Partial<CSSStyleDeclaration>;
|
|
25
|
+
};
|
|
26
|
+
component?: {
|
|
27
|
+
name: string;
|
|
28
|
+
options?: any;
|
|
29
|
+
tag?: string;
|
|
30
|
+
};
|
|
31
|
+
bindings?: {
|
|
32
|
+
[key: string]: string;
|
|
33
|
+
};
|
|
34
|
+
meta?: {
|
|
35
|
+
[key: string]: JSONValue;
|
|
36
|
+
};
|
|
37
|
+
actions?: {
|
|
38
|
+
[key: string]: string;
|
|
39
|
+
};
|
|
40
|
+
properties?: {
|
|
41
|
+
[key: string]: string;
|
|
42
|
+
};
|
|
43
|
+
code?: {
|
|
44
|
+
bindings?: {
|
|
45
|
+
[key: string]: string;
|
|
46
|
+
};
|
|
47
|
+
actions?: {
|
|
48
|
+
[key: string]: string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
repeat?: {
|
|
52
|
+
collection: string;
|
|
53
|
+
itemName?: string;
|
|
54
|
+
} | null;
|
|
55
|
+
animations?: any[];
|
|
56
|
+
}
|
|
57
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { BuilderBlock } from './builder-block.js';
|
|
2
|
+
declare type Input = any;
|
|
3
|
+
export interface BuilderContentVariation {
|
|
4
|
+
data?: {
|
|
5
|
+
title?: string;
|
|
6
|
+
blocks?: BuilderBlock[];
|
|
7
|
+
inputs?: Input[];
|
|
8
|
+
state?: {
|
|
9
|
+
[key: string]: any;
|
|
10
|
+
};
|
|
11
|
+
jsCode?: string;
|
|
12
|
+
tsCode?: string;
|
|
13
|
+
httpRequests?: {
|
|
14
|
+
[key: string]: string;
|
|
15
|
+
};
|
|
16
|
+
[key: string]: any;
|
|
17
|
+
};
|
|
18
|
+
name?: string;
|
|
19
|
+
testRatio?: number;
|
|
20
|
+
id?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface BuilderContent extends BuilderContentVariation {
|
|
23
|
+
'@version'?: number;
|
|
24
|
+
id?: string;
|
|
25
|
+
name?: string;
|
|
26
|
+
published?: 'published' | 'draft' | 'archived';
|
|
27
|
+
modelId?: string;
|
|
28
|
+
priority?: number;
|
|
29
|
+
lastUpdated?: number;
|
|
30
|
+
startDate?: number;
|
|
31
|
+
endDate?: number;
|
|
32
|
+
variations?: {
|
|
33
|
+
[id: string]: BuilderContentVariation | undefined;
|
|
34
|
+
};
|
|
35
|
+
testVariationId?: string;
|
|
36
|
+
testVariationName?: string;
|
|
37
|
+
}
|
|
38
|
+
export {};
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import type { BuilderElement } from './element';
|
|
2
|
+
export interface Input {
|
|
3
|
+
name: string;
|
|
4
|
+
friendlyName?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
defaultValue?: any;
|
|
7
|
+
type: string;
|
|
8
|
+
valueType?: {
|
|
9
|
+
type?: string;
|
|
10
|
+
};
|
|
11
|
+
required?: boolean;
|
|
12
|
+
autoFocus?: boolean;
|
|
13
|
+
subFields?: Input[];
|
|
14
|
+
helperText?: string;
|
|
15
|
+
allowedFileTypes?: string[];
|
|
16
|
+
imageHeight?: number;
|
|
17
|
+
imageWidth?: number;
|
|
18
|
+
mediaHeight?: number;
|
|
19
|
+
mediaWidth?: number;
|
|
20
|
+
hideFromUI?: boolean;
|
|
21
|
+
modelId?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Number field type validation maximum accepted input
|
|
24
|
+
*/
|
|
25
|
+
max?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Number field type validation minimum accepted input
|
|
28
|
+
*/
|
|
29
|
+
min?: number;
|
|
30
|
+
/**
|
|
31
|
+
* Number field type step size when using arrows
|
|
32
|
+
*/
|
|
33
|
+
step?: number;
|
|
34
|
+
/**
|
|
35
|
+
* Set this to `true` to show the editor for this input when
|
|
36
|
+
* children of this component are selected. This is useful for things
|
|
37
|
+
* like Tabs, such that users may not always select the Tabs component
|
|
38
|
+
* directly but will still be looking for how to add additional tabs
|
|
39
|
+
*/
|
|
40
|
+
broadcast?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Set this to `true` to show the editor for this input when
|
|
43
|
+
* group locked parents of this component are selected. This is useful
|
|
44
|
+
* to bubble up important inputs for locked groups, like text and images
|
|
45
|
+
*/
|
|
46
|
+
bubble?: boolean;
|
|
47
|
+
options?: {
|
|
48
|
+
[key: string]: any;
|
|
49
|
+
};
|
|
50
|
+
enum?: string[] | {
|
|
51
|
+
label: string;
|
|
52
|
+
value: any;
|
|
53
|
+
helperText?: string;
|
|
54
|
+
}[];
|
|
55
|
+
/** Regex field validation for all string types (text, longText, html, url, etc) */
|
|
56
|
+
regex?: {
|
|
57
|
+
/** pattern to test, like "^\/[a-z]$" */
|
|
58
|
+
pattern: string;
|
|
59
|
+
/** flags for the RegExp constructor, e.g. "gi" */
|
|
60
|
+
options?: string;
|
|
61
|
+
/**
|
|
62
|
+
* Friendly message to display to end-users if the regex fails, e.g.
|
|
63
|
+
* "You must use a relative url starting with '/...' "
|
|
64
|
+
*/
|
|
65
|
+
message: string;
|
|
66
|
+
};
|
|
67
|
+
advanced?: boolean;
|
|
68
|
+
onChange?: ((options: Map<string, any>) => void | Promise<void>) | string;
|
|
69
|
+
code?: boolean;
|
|
70
|
+
richText?: boolean;
|
|
71
|
+
showIf?: ((options: Map<string, any>) => boolean) | string;
|
|
72
|
+
copyOnAdd?: boolean;
|
|
73
|
+
}
|
|
74
|
+
export interface ComponentInfo {
|
|
75
|
+
/**
|
|
76
|
+
* Name your component something unique, e.g. 'MyButton'. You can override built-in components
|
|
77
|
+
* by registering a component with the same name, e.g. 'Text', to replace the built-in text component
|
|
78
|
+
*/
|
|
79
|
+
name: string;
|
|
80
|
+
description?: string;
|
|
81
|
+
/**
|
|
82
|
+
* Link to a documentation page for this component
|
|
83
|
+
*/
|
|
84
|
+
docsLink?: string;
|
|
85
|
+
image?: string;
|
|
86
|
+
/**
|
|
87
|
+
* Input schema for your component for users to fill in the options
|
|
88
|
+
*/
|
|
89
|
+
inputs?: Input[];
|
|
90
|
+
class?: any;
|
|
91
|
+
type?: 'angular' | 'webcomponent' | 'react' | 'vue';
|
|
92
|
+
defaultStyles?: {
|
|
93
|
+
[key: string]: string;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Turn on if your component can accept children. Be sure to use in combination with
|
|
97
|
+
* withChildren(YourComponent) like here
|
|
98
|
+
* github.com/BuilderIO/builder/blob/master/examples/react-design-system/src/components/HeroWithChildren/HeroWithChildren.builder.js#L5
|
|
99
|
+
*/
|
|
100
|
+
canHaveChildren?: boolean;
|
|
101
|
+
fragment?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Do not wrap a component in a dom element. Be sure to use {...props.attributes} with this option
|
|
104
|
+
* like here github.com/BuilderIO/builder/blob/master/packages/react/src/blocks/forms/Input.tsx#L34
|
|
105
|
+
*/
|
|
106
|
+
noWrap?: boolean;
|
|
107
|
+
/**
|
|
108
|
+
* Default children
|
|
109
|
+
*/
|
|
110
|
+
defaultChildren?: BuilderElement[];
|
|
111
|
+
defaults?: Partial<BuilderElement>;
|
|
112
|
+
hooks?: {
|
|
113
|
+
[key: string]: string | Function;
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* Hide your component in editor, useful for gradually deprecating components
|
|
117
|
+
*/
|
|
118
|
+
hideFromInsertMenu?: boolean;
|
|
119
|
+
tag?: string;
|
|
120
|
+
static?: boolean;
|
|
121
|
+
/**
|
|
122
|
+
* Passing a list of model names will restrict using the component to only the models listed here, otherwise it'll be available for all models
|
|
123
|
+
*/
|
|
124
|
+
models?: string[];
|
|
125
|
+
builtIn: true;
|
|
126
|
+
/**
|
|
127
|
+
* Specify restrictions direct children must match
|
|
128
|
+
*/
|
|
129
|
+
childRequirements?: {
|
|
130
|
+
/** Message to show when this doesn't match, e.g. "Children of 'Columns' must be a 'Column'" */
|
|
131
|
+
message: string;
|
|
132
|
+
/** Simple way to say children must be a specific component name */
|
|
133
|
+
component?: string;
|
|
134
|
+
/**
|
|
135
|
+
* More advanced - specify a MongoDB-style query (using sift.js github.com/crcn/sift.js)
|
|
136
|
+
* of what the children objects should match, e.g.
|
|
137
|
+
*
|
|
138
|
+
* @example
|
|
139
|
+
* query: {
|
|
140
|
+
* // Child of this element must be a 'Button' or 'Text' component
|
|
141
|
+
* 'component.name': { $in: ['Button', 'Text'] }
|
|
142
|
+
* }
|
|
143
|
+
*/
|
|
144
|
+
query?: any;
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* Specify restrictions any parent must match
|
|
148
|
+
*/
|
|
149
|
+
requiresParent?: {
|
|
150
|
+
/** Message to show when this doesn't match, e.g. "'Add to cart' buttons must be within a 'Product box'" */
|
|
151
|
+
message: string;
|
|
152
|
+
/** Simple way to say a parent must be a specific component name, e.g. 'Product box' */
|
|
153
|
+
component?: string;
|
|
154
|
+
/**
|
|
155
|
+
* More advanced - specify a MongoDB-style query (using sift.js github.com/crcn/sift.js)
|
|
156
|
+
* of what at least one parent in the parents hierarchy should match, e.g.
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* query: {
|
|
160
|
+
* // Thils element must be somewhere inside either a 'Product box' or 'Collection' component
|
|
161
|
+
* 'component.name': { $in: ['Product Box', 'Collection'] }
|
|
162
|
+
* }
|
|
163
|
+
*/
|
|
164
|
+
query?: any;
|
|
165
|
+
};
|
|
166
|
+
/** not yet implemented */
|
|
167
|
+
friendlyName?: string;
|
|
168
|
+
/**
|
|
169
|
+
* Use to restrict access to your component based on a the current user permissions
|
|
170
|
+
* By default components will show to all users
|
|
171
|
+
* for more information on permissions in builder check https://www.builder.io/c/docs/guides/roles-and-permissions
|
|
172
|
+
*/
|
|
173
|
+
requiredPermissions?: Array<Permission>;
|
|
174
|
+
hidden?: boolean;
|
|
175
|
+
}
|
|
176
|
+
declare type Permission = 'read' | 'publish' | 'editCode' | 'editDesigns' | 'admin' | 'create';
|
|
177
|
+
export {};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
declare type JSONValue = string | number | boolean | JSONObject | JSONArray;
|
|
2
|
+
interface JSONObject {
|
|
3
|
+
[x: string]: JSONValue;
|
|
4
|
+
}
|
|
5
|
+
interface JSONArray extends Array<JSONValue> {
|
|
6
|
+
}
|
|
7
|
+
/** @todo typedoc this */
|
|
8
|
+
export interface BuilderElement {
|
|
9
|
+
'@type': '@builder.io/sdk:Element';
|
|
10
|
+
'@version'?: number;
|
|
11
|
+
id?: string;
|
|
12
|
+
tagName?: string;
|
|
13
|
+
layerName?: string;
|
|
14
|
+
groupLocked?: boolean;
|
|
15
|
+
layerLocked?: boolean;
|
|
16
|
+
/** @todo make alias for properties.class */
|
|
17
|
+
class?: string;
|
|
18
|
+
children?: BuilderElement[];
|
|
19
|
+
responsiveStyles?: {
|
|
20
|
+
large?: Partial<CSSStyleDeclaration>;
|
|
21
|
+
medium?: Partial<CSSStyleDeclaration>;
|
|
22
|
+
small?: Partial<CSSStyleDeclaration>;
|
|
23
|
+
/** @deprecated */
|
|
24
|
+
xsmall?: Partial<CSSStyleDeclaration>;
|
|
25
|
+
};
|
|
26
|
+
component?: {
|
|
27
|
+
name: string;
|
|
28
|
+
options?: any;
|
|
29
|
+
tag?: string;
|
|
30
|
+
};
|
|
31
|
+
bindings?: {
|
|
32
|
+
[key: string]: string;
|
|
33
|
+
};
|
|
34
|
+
meta?: {
|
|
35
|
+
[key: string]: JSONValue;
|
|
36
|
+
};
|
|
37
|
+
actions?: {
|
|
38
|
+
[key: string]: string;
|
|
39
|
+
};
|
|
40
|
+
properties?: {
|
|
41
|
+
[key: string]: string;
|
|
42
|
+
};
|
|
43
|
+
code?: {
|
|
44
|
+
bindings?: {
|
|
45
|
+
[key: string]: string;
|
|
46
|
+
};
|
|
47
|
+
actions?: {
|
|
48
|
+
[key: string]: string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
repeat?: {
|
|
52
|
+
collection: string;
|
|
53
|
+
itemName?: string;
|
|
54
|
+
} | null;
|
|
55
|
+
animations?: Animation[];
|
|
56
|
+
}
|
|
57
|
+
interface Animation {
|
|
58
|
+
}
|
|
59
|
+
export {};
|