@builder.io/sdk-svelte 0.11.2 → 0.11.4

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.
Files changed (176) hide show
  1. package/lib/browser/blocks/button/button.svelte +0 -5
  2. package/lib/browser/blocks/button/button.svelte.d.ts +20 -0
  3. package/lib/browser/blocks/button/button.types.d.ts +6 -0
  4. package/lib/browser/blocks/button/button.types.js +1 -0
  5. package/lib/browser/blocks/columns/columns.svelte.d.ts +2 -14
  6. package/lib/browser/blocks/columns/columns.types.d.ts +15 -0
  7. package/lib/browser/blocks/columns/columns.types.js +1 -0
  8. package/lib/browser/blocks/fragment/fragment.svelte +0 -2
  9. package/lib/browser/blocks/fragment/fragment.svelte.d.ts +17 -0
  10. package/lib/browser/blocks/fragment/fragment.types.d.ts +5 -0
  11. package/lib/browser/blocks/fragment/fragment.types.js +1 -0
  12. package/lib/browser/blocks/image/image.svelte +0 -2
  13. package/lib/browser/blocks/image/image.svelte.d.ts +30 -0
  14. package/lib/browser/blocks/image/image.types.d.ts +19 -0
  15. package/lib/browser/blocks/image/image.types.js +1 -0
  16. package/lib/browser/blocks/section/section.svelte +0 -5
  17. package/lib/browser/blocks/section/section.svelte.d.ts +20 -0
  18. package/lib/browser/blocks/section/section.types.d.ts +6 -0
  19. package/lib/browser/blocks/section/section.types.js +1 -0
  20. package/lib/browser/blocks/symbol/symbol.svelte +0 -5
  21. package/lib/browser/blocks/symbol/symbol.svelte.d.ts +23 -0
  22. package/lib/browser/blocks/symbol/symbol.types.d.ts +18 -0
  23. package/lib/browser/blocks/symbol/symbol.types.js +1 -0
  24. package/lib/browser/blocks/text/text.svelte +0 -2
  25. package/lib/browser/blocks/text/text.svelte.d.ts +17 -0
  26. package/lib/browser/blocks/text/text.types.d.ts +3 -0
  27. package/lib/browser/blocks/text/text.types.js +1 -0
  28. package/lib/browser/blocks/video/video.svelte +0 -2
  29. package/lib/browser/blocks/video/video.svelte.d.ts +33 -0
  30. package/lib/browser/blocks/video/video.types.d.ts +21 -0
  31. package/lib/browser/blocks/video/video.types.js +1 -0
  32. package/lib/browser/components/block/block.svelte +3 -5
  33. package/lib/browser/components/block/components/component-ref/component-ref.svelte +1 -6
  34. package/lib/browser/components/blocks/blocks.svelte +1 -10
  35. package/lib/browser/components/blocks/blocks.svelte.d.ts +22 -0
  36. package/lib/browser/components/blocks/blocks.types.d.ts +8 -0
  37. package/lib/browser/components/blocks/blocks.types.js +1 -0
  38. package/lib/browser/components/content/components/enable-editor.svelte +28 -0
  39. package/lib/browser/components/content/components/enable-editor.svelte.d.ts +2 -1
  40. package/lib/browser/components/content/content.helpers.d.ts +1 -1
  41. package/lib/browser/components/content/content.helpers.js +1 -1
  42. package/lib/browser/components/content/content.svelte +3 -2
  43. package/lib/browser/components/content-variants/content-variants.types.d.ts +30 -1
  44. package/lib/browser/constants/sdk-version.d.ts +1 -1
  45. package/lib/browser/constants/sdk-version.js +1 -1
  46. package/lib/browser/functions/get-content/index.d.ts +1 -1
  47. package/lib/browser/functions/get-content/index.js +1 -1
  48. package/lib/browser/functions/get-content/types.d.ts +2 -2
  49. package/lib/browser/server-index.d.ts +10 -1
  50. package/lib/edge/blocks/button/button.svelte +0 -5
  51. package/lib/edge/blocks/button/button.svelte.d.ts +20 -0
  52. package/lib/edge/blocks/button/button.types.d.ts +6 -0
  53. package/lib/edge/blocks/button/button.types.js +1 -0
  54. package/lib/edge/blocks/columns/columns.svelte.d.ts +2 -14
  55. package/lib/edge/blocks/columns/columns.types.d.ts +15 -0
  56. package/lib/edge/blocks/columns/columns.types.js +1 -0
  57. package/lib/edge/blocks/fragment/fragment.svelte +0 -2
  58. package/lib/edge/blocks/fragment/fragment.svelte.d.ts +17 -0
  59. package/lib/edge/blocks/fragment/fragment.types.d.ts +5 -0
  60. package/lib/edge/blocks/fragment/fragment.types.js +1 -0
  61. package/lib/edge/blocks/image/image.svelte +0 -2
  62. package/lib/edge/blocks/image/image.svelte.d.ts +30 -0
  63. package/lib/edge/blocks/image/image.types.d.ts +19 -0
  64. package/lib/edge/blocks/image/image.types.js +1 -0
  65. package/lib/edge/blocks/section/section.svelte +0 -5
  66. package/lib/edge/blocks/section/section.svelte.d.ts +20 -0
  67. package/lib/edge/blocks/section/section.types.d.ts +6 -0
  68. package/lib/edge/blocks/section/section.types.js +1 -0
  69. package/lib/edge/blocks/symbol/symbol.svelte +0 -5
  70. package/lib/edge/blocks/symbol/symbol.svelte.d.ts +23 -0
  71. package/lib/edge/blocks/symbol/symbol.types.d.ts +18 -0
  72. package/lib/edge/blocks/symbol/symbol.types.js +1 -0
  73. package/lib/edge/blocks/text/text.svelte +0 -2
  74. package/lib/edge/blocks/text/text.svelte.d.ts +17 -0
  75. package/lib/edge/blocks/text/text.types.d.ts +3 -0
  76. package/lib/edge/blocks/text/text.types.js +1 -0
  77. package/lib/edge/blocks/video/video.svelte +0 -2
  78. package/lib/edge/blocks/video/video.svelte.d.ts +33 -0
  79. package/lib/edge/blocks/video/video.types.d.ts +21 -0
  80. package/lib/edge/blocks/video/video.types.js +1 -0
  81. package/lib/edge/components/block/block.svelte +3 -5
  82. package/lib/edge/components/block/components/component-ref/component-ref.svelte +1 -6
  83. package/lib/edge/components/blocks/blocks.svelte +1 -10
  84. package/lib/edge/components/blocks/blocks.svelte.d.ts +22 -0
  85. package/lib/edge/components/blocks/blocks.types.d.ts +8 -0
  86. package/lib/edge/components/blocks/blocks.types.js +1 -0
  87. package/lib/edge/components/content/components/enable-editor.svelte +28 -0
  88. package/lib/edge/components/content/components/enable-editor.svelte.d.ts +2 -1
  89. package/lib/edge/components/content/content.helpers.d.ts +1 -1
  90. package/lib/edge/components/content/content.helpers.js +1 -1
  91. package/lib/edge/components/content/content.svelte +3 -2
  92. package/lib/edge/components/content-variants/content-variants.types.d.ts +30 -1
  93. package/lib/edge/constants/sdk-version.d.ts +1 -1
  94. package/lib/edge/constants/sdk-version.js +1 -1
  95. package/lib/edge/functions/get-content/index.d.ts +1 -1
  96. package/lib/edge/functions/get-content/index.js +1 -1
  97. package/lib/edge/functions/get-content/types.d.ts +2 -2
  98. package/lib/edge/server-index.d.ts +10 -1
  99. package/lib/node/blocks/button/button.svelte +0 -5
  100. package/lib/node/blocks/button/button.svelte.d.ts +20 -0
  101. package/lib/node/blocks/button/button.types.d.ts +6 -0
  102. package/lib/node/blocks/button/button.types.js +1 -0
  103. package/lib/node/blocks/columns/columns.svelte.d.ts +2 -14
  104. package/lib/node/blocks/columns/columns.types.d.ts +15 -0
  105. package/lib/node/blocks/columns/columns.types.js +1 -0
  106. package/lib/node/blocks/fragment/fragment.svelte +0 -2
  107. package/lib/node/blocks/fragment/fragment.svelte.d.ts +17 -0
  108. package/lib/node/blocks/fragment/fragment.types.d.ts +5 -0
  109. package/lib/node/blocks/fragment/fragment.types.js +1 -0
  110. package/lib/node/blocks/image/image.svelte +0 -2
  111. package/lib/node/blocks/image/image.svelte.d.ts +30 -0
  112. package/lib/node/blocks/image/image.types.d.ts +19 -0
  113. package/lib/node/blocks/image/image.types.js +1 -0
  114. package/lib/node/blocks/section/section.svelte +0 -5
  115. package/lib/node/blocks/section/section.svelte.d.ts +20 -0
  116. package/lib/node/blocks/section/section.types.d.ts +6 -0
  117. package/lib/node/blocks/section/section.types.js +1 -0
  118. package/lib/node/blocks/symbol/symbol.svelte +0 -5
  119. package/lib/node/blocks/symbol/symbol.svelte.d.ts +23 -0
  120. package/lib/node/blocks/symbol/symbol.types.d.ts +18 -0
  121. package/lib/node/blocks/symbol/symbol.types.js +1 -0
  122. package/lib/node/blocks/text/text.svelte +0 -2
  123. package/lib/node/blocks/text/text.svelte.d.ts +17 -0
  124. package/lib/node/blocks/text/text.types.d.ts +3 -0
  125. package/lib/node/blocks/text/text.types.js +1 -0
  126. package/lib/node/blocks/video/video.svelte +0 -2
  127. package/lib/node/blocks/video/video.svelte.d.ts +33 -0
  128. package/lib/node/blocks/video/video.types.d.ts +21 -0
  129. package/lib/node/blocks/video/video.types.js +1 -0
  130. package/lib/node/components/block/block.svelte +3 -5
  131. package/lib/node/components/block/components/component-ref/component-ref.svelte +1 -6
  132. package/lib/node/components/blocks/blocks.svelte +1 -10
  133. package/lib/node/components/blocks/blocks.svelte.d.ts +22 -0
  134. package/lib/node/components/blocks/blocks.types.d.ts +8 -0
  135. package/lib/node/components/blocks/blocks.types.js +1 -0
  136. package/lib/node/components/content/components/enable-editor.svelte +28 -0
  137. package/lib/node/components/content/components/enable-editor.svelte.d.ts +2 -1
  138. package/lib/node/components/content/content.helpers.d.ts +1 -1
  139. package/lib/node/components/content/content.helpers.js +1 -1
  140. package/lib/node/components/content/content.svelte +3 -2
  141. package/lib/node/components/content-variants/content-variants.types.d.ts +30 -1
  142. package/lib/node/constants/sdk-version.d.ts +1 -1
  143. package/lib/node/constants/sdk-version.js +1 -1
  144. package/lib/node/functions/get-content/index.d.ts +1 -1
  145. package/lib/node/functions/get-content/index.js +1 -1
  146. package/lib/node/functions/get-content/types.d.ts +2 -2
  147. package/lib/node/server-index.d.ts +10 -1
  148. package/package.json +1 -1
  149. package/src/blocks/button/button.svelte +1 -13
  150. package/src/blocks/button/button.types.ts +6 -0
  151. package/src/blocks/columns/columns.svelte +2 -20
  152. package/src/blocks/columns/columns.types.ts +14 -0
  153. package/src/blocks/fragment/fragment.svelte +1 -8
  154. package/src/blocks/fragment/fragment.types.ts +5 -0
  155. package/src/blocks/image/image.svelte +1 -22
  156. package/src/blocks/image/image.types.ts +19 -0
  157. package/src/blocks/section/section.svelte +1 -13
  158. package/src/blocks/section/section.types.ts +6 -0
  159. package/src/blocks/symbol/symbol.svelte +2 -31
  160. package/src/blocks/symbol/symbol.types.ts +17 -0
  161. package/src/blocks/text/text.svelte +2 -6
  162. package/src/blocks/text/text.types.ts +3 -0
  163. package/src/blocks/video/video.svelte +1 -33
  164. package/src/blocks/video/video.types.ts +21 -0
  165. package/src/components/block/block.svelte +3 -5
  166. package/src/components/block/components/component-ref/component-ref.svelte +1 -6
  167. package/src/components/blocks/blocks.svelte +2 -23
  168. package/src/components/blocks/blocks.types.ts +7 -0
  169. package/src/components/content/components/enable-editor.svelte +29 -1
  170. package/src/components/content/content.helpers.ts +1 -1
  171. package/src/components/content/content.svelte +3 -2
  172. package/src/components/content-variants/content-variants.types.ts +43 -1
  173. package/src/constants/sdk-version.ts +1 -1
  174. package/src/functions/get-content/index.ts +1 -1
  175. package/src/functions/get-content/types.ts +2 -2
  176. package/src/server-index.ts +10 -1
@@ -1,6 +1,5 @@
1
1
  <script>import "../../../content/wrap-component-ref.js";
2
2
  import Block from "../../block.svelte";
3
- import BlockStyles from "../block-styles.svelte";
4
3
  import InteractiveElement from "../interactive-element.svelte";
5
4
  import { getWrapperProps } from "./component-ref.helpers.js";
6
5
  export let isInteractive;
@@ -27,12 +26,8 @@ let Wrapper = isInteractive ? InteractiveElement : componentRef;
27
26
  contextValue: $context,
28
27
  })}
29
28
  >
30
- {#each blockChildren as child ("block-" + child.id)}
29
+ {#each blockChildren as child (child.id)}
31
30
  <Block block={child} {context} {registeredComponents} />
32
31
  {/each}
33
-
34
- {#each blockChildren as child ("block-style-" + child.id)}
35
- <BlockStyles block={child} context={$context} />
36
- {/each}
37
32
  </svelte:component>
38
33
  {/if}
@@ -1,10 +1,7 @@
1
- <script context="module"></script>
2
-
3
1
  <script>import { getContext } from "svelte";
4
2
  import BuilderContext from "../../context/builder.context.js";
5
3
  import ComponentsContext from "../../context/components.context.js";
6
4
  import Block from "../block/block.svelte";
7
- import BlockStyles from "../block/components/block-styles.svelte";
8
5
  import BlocksWrapper from "./blocks-wrapper.svelte";
9
6
  export let blocks;
10
7
  export let parent;
@@ -25,7 +22,7 @@ let componentsContext = getContext(ComponentsContext.key);
25
22
  BlocksWrapperProps={$context?.BlocksWrapperProps}
26
23
  >
27
24
  {#if blocks}
28
- {#each blocks as block ("render-block-" + block.id)}
25
+ {#each blocks as block (block.id)}
29
26
  <Block
30
27
  {block}
31
28
  context={context || builderContext}
@@ -34,10 +31,4 @@ let componentsContext = getContext(ComponentsContext.key);
34
31
  />
35
32
  {/each}
36
33
  {/if}
37
-
38
- {#if blocks}
39
- {#each blocks as block ("block-style-" + block.id)}
40
- <BlockStyles {block} context={$context || $builderContext} />
41
- {/each}
42
- {/if}
43
34
  </BlocksWrapper>
@@ -0,0 +1,22 @@
1
+ import { SvelteComponent } from "svelte";
2
+ import type { BlocksProps } from "./blocks.types.js";
3
+ declare const __propDef: {
4
+ props: {
5
+ blocks: BlocksProps["blocks"];
6
+ parent: BlocksProps["parent"];
7
+ path: BlocksProps["path"];
8
+ styleProp: BlocksProps["styleProp"];
9
+ context?: BlocksProps["context"];
10
+ registeredComponents?: BlocksProps["registeredComponents"];
11
+ };
12
+ events: {
13
+ [evt: string]: CustomEvent<any>;
14
+ };
15
+ slots: {};
16
+ };
17
+ type BlocksProps_ = typeof __propDef.props;
18
+ export { BlocksProps_ as BlocksProps };
19
+ export type BlocksEvents = typeof __propDef.events;
20
+ export type BlocksSlots = typeof __propDef.slots;
21
+ export default class Blocks extends SvelteComponent<BlocksProps, BlocksEvents, BlocksSlots> {
22
+ }
@@ -0,0 +1,8 @@
1
+ /// <reference types="svelte" />
2
+ import type { Writable } from "svelte/store";
3
+ import type { BuilderContextInterface, RegisteredComponents } from '../../context/types.js';
4
+ import type { BlocksWrapperProps } from './blocks-wrapper.svelte';
5
+ export type BlocksProps = Partial<Omit<BlocksWrapperProps, 'BlocksWrapper' | 'BlocksWrapperProps'>> & {
6
+ context?: Writable<BuilderContextInterface>;
7
+ registeredComponents?: RegisteredComponents;
8
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -28,6 +28,19 @@ export let enrich = undefined;
28
28
  export let content = undefined;
29
29
  export let showContent;
30
30
  export let contentWrapperProps = undefined;
31
+ export let data = undefined;
32
+ function mergeNewRootState(newData) {
33
+ const combinedState = {
34
+ ...$builderContextSignal.rootState,
35
+ ...newData,
36
+ };
37
+ if ($builderContextSignal.rootSetState) {
38
+ $builderContextSignal.rootSetState?.(combinedState);
39
+ }
40
+ else {
41
+ $builderContextSignal.rootState = combinedState;
42
+ }
43
+ }
31
44
  function mergeNewContent(newContent) {
32
45
  const newContentValue = {
33
46
  ...$builderContextSignal.content,
@@ -217,6 +230,7 @@ function elementRef_onInitpreviewingbldr(event) {
217
230
  }
218
231
  let elementRef;
219
232
  let forceReRenderCount = 0;
233
+ let firstRender = true;
220
234
  let lastUpdated = 0;
221
235
  let shouldSendResetCookie = false;
222
236
  let ContentWrapper = contentWrapper || "div";
@@ -277,6 +291,20 @@ function onUpdateFn_4(..._args) {
277
291
  emitStateUpdate();
278
292
  }
279
293
  $: onUpdateFn_4(...[$builderContextSignal.rootState]);
294
+ function onUpdateFn_5(..._args) {
295
+ if (data) {
296
+ mergeNewRootState(data);
297
+ }
298
+ }
299
+ $: onUpdateFn_5(...[data]);
300
+ function onUpdateFn_6(..._args) {
301
+ if (locale) {
302
+ mergeNewRootState({
303
+ locale: locale,
304
+ });
305
+ }
306
+ }
307
+ $: onUpdateFn_6(...[locale]);
280
308
  setContext(builderContext.key, builderContextSignal);
281
309
  onDestroy(() => {
282
310
  if (isBrowser()) {
@@ -1,5 +1,5 @@
1
1
  import { SvelteComponent } from "svelte";
2
- type BuilderEditorProps = Omit<ContentProps, "customComponents" | "data" | "apiVersion" | "isSsrAbTest" | "blocksWrapper" | "blocksWrapperProps"> & {
2
+ type BuilderEditorProps = Omit<ContentProps, "customComponents" | "apiVersion" | "isSsrAbTest" | "blocksWrapper" | "blocksWrapperProps"> & {
3
3
  builderContextSignal: Writable<BuilderContextInterface>;
4
4
  setBuilderContextSignal?: (signal: any) => any;
5
5
  children?: any;
@@ -21,6 +21,7 @@ declare const __propDef: {
21
21
  content?: BuilderEditorProps["content"];
22
22
  showContent: BuilderEditorProps["showContent"];
23
23
  contentWrapperProps?: BuilderEditorProps["contentWrapperProps"];
24
+ data?: BuilderEditorProps["data"];
24
25
  };
25
26
  events: {
26
27
  [evt: string]: CustomEvent<any>;
@@ -1,7 +1,7 @@
1
1
  import type { BuilderContent } from '../../types/builder-content.js';
2
2
  import type { Nullable } from '../../types/typescript.js';
3
3
  import type { ContentProps } from './content.types.js';
4
- export declare const getContextStateInitialValue: ({ content, data, locale }: Pick<ContentProps, 'content' | 'data' | 'locale'>) => {
4
+ export declare const getRootStateInitialValue: ({ content, data, locale }: Pick<ContentProps, 'content' | 'data' | 'locale'>) => {
5
5
  locale?: string | undefined;
6
6
  };
7
7
  export declare const getContentInitialValue: ({ content, data }: Pick<ContentProps, 'content' | 'data'>) => Nullable<BuilderContent>;
@@ -1,4 +1,4 @@
1
- export const getContextStateInitialValue = ({ content, data, locale }) => {
1
+ export const getRootStateInitialValue = ({ content, data, locale }) => {
2
2
  const defaultValues = {};
3
3
  const initialState = content?.data?.state || {};
4
4
  // set default values for content state inputs
@@ -9,7 +9,7 @@ import { getUpdateVariantVisibilityScript } from "../content-variants/helpers.js
9
9
  import InlinedScript from "../inlined-script.svelte";
10
10
  import EnableEditor from "./components/enable-editor.svelte";
11
11
  import ContentStyles from "./components/styles.svelte";
12
- import { getContentInitialValue, getContextStateInitialValue, } from "./content.helpers.js";
12
+ import { getContentInitialValue, getRootStateInitialValue, } from "./content.helpers.js";
13
13
  import "./wrap-component-ref.js";
14
14
  export let content = undefined;
15
15
  export let customComponents = undefined;
@@ -59,7 +59,7 @@ let builderContextSignal = writable({
59
59
  data: data,
60
60
  }),
61
61
  localState: undefined,
62
- rootState: getContextStateInitialValue({
62
+ rootState: getRootStateInitialValue({
63
63
  content: content,
64
64
  data: data,
65
65
  locale: locale,
@@ -92,6 +92,7 @@ setContext(ComponentsContext.key, {
92
92
 
93
93
  <EnableEditor
94
94
  {content}
95
+ {data}
95
96
  {model}
96
97
  {context}
97
98
  {apiKey}
@@ -3,19 +3,48 @@ import type { ApiVersion } from '../../types/api-version.js';
3
3
  import type { BuilderContent } from '../../types/builder-content.js';
4
4
  import type { Nullable } from '../../types/typescript.js';
5
5
  export interface ContentVariantsPrps {
6
+ /**
7
+ * The Builder content JSON to render (required).
8
+ */
6
9
  content?: Nullable<BuilderContent>;
10
+ /**
11
+ * The Builder content `model` to render (required).
12
+ */
7
13
  model?: string;
14
+ /**
15
+ * Additional data to inject into your Builder content (optional).
16
+ */
8
17
  data?: {
9
18
  [key: string]: any;
10
19
  };
20
+ /**
21
+ *
22
+ */
11
23
  context?: BuilderRenderContext;
24
+ /**
25
+ * Your API Key: needed to dynamically fetch symbols (required).
26
+ */
12
27
  apiKey: string;
13
28
  apiVersion?: ApiVersion;
29
+ /**
30
+ * An array of custom components to register (optional).
31
+ */
14
32
  customComponents?: RegisteredComponent[];
33
+ /**
34
+ * A boolean to enable or disable tracking (optional). Defaults to `true`.
35
+ */
15
36
  canTrack?: boolean;
37
+ /**
38
+ * If provided, the API will auto-resolve localized objects to the value of this `locale` key (optional).
39
+ */
16
40
  locale?: string;
17
- /** @deprecated use `enrich` instead **/
41
+ /** @deprecated use `enrich` instead */
18
42
  includeRefs?: boolean;
43
+ /**
44
+ * A boolean to enable or disable enriching API content (optional).
45
+ *
46
+ * Enriching will Include multilevel references in the response. Defaults to `false`.
47
+ */
19
48
  enrich?: boolean;
20
49
  /**
21
50
  * The element that wraps your content. Defaults to `div` ('ScrollView' in React Native).
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "0.11.2";
1
+ export declare const SDK_VERSION = "0.11.4";
@@ -1 +1 @@
1
- export const SDK_VERSION = "0.11.2";
1
+ export const SDK_VERSION = "0.11.4";
@@ -1,7 +1,7 @@
1
1
  import type { BuilderContent } from '../../types/builder-content.js';
2
2
  import type { GetContentOptions } from './types.js';
3
3
  /**
4
- * Returns a the first entry that matches the given options.
4
+ * Returns the first content entry that matches the given options.
5
5
  */
6
6
  export declare function fetchOneEntry(options: GetContentOptions): Promise<BuilderContent | null>;
7
7
  /**
@@ -8,7 +8,7 @@ import { isBrowser } from '../is-browser.js';
8
8
  import { generateContentUrl } from './generate-content-url.js';
9
9
  const checkContentHasResults = (content) => 'results' in content;
10
10
  /**
11
- * Returns a the first entry that matches the given options.
11
+ * Returns the first content entry that matches the given options.
12
12
  */
13
13
  export async function fetchOneEntry(options) {
14
14
  const allContent = await fetchEntries({
@@ -1,7 +1,7 @@
1
1
  export interface GetContentOptions {
2
- /** The model to get content for */
2
+ /** The model to get content for (required) */
3
3
  model: string;
4
- /** Your public API key */
4
+ /** Your public API key (required) */
5
5
  apiKey: string;
6
6
  /** Number of items to fetch. Default is 1 */
7
7
  limit?: number;
@@ -1,4 +1,14 @@
1
1
  export * from './index-helpers/top-of-file.js';
2
+ export type { ButtonProps } from './blocks/button/button.types.js';
3
+ export type { ColumnProps } from './blocks/columns/columns.types.js';
4
+ export type { FragmentProps } from './blocks/fragment/fragment.types.js';
5
+ export type { ImageProps } from './blocks/image/image.types.js';
6
+ export type { SectionProps } from './blocks/section/section.types.js';
7
+ export type { SymbolProps } from './blocks/symbol/symbol.types.js';
8
+ export type { TextProps } from './blocks/text/text.types.js';
9
+ export type { VideoProps } from './blocks/video/video.types.js';
10
+ export type { BlocksProps } from './components/blocks/blocks.types.js';
11
+ export type { ContentVariantsPrps as ContentProps } from './components/content-variants/content-variants.types.js';
2
12
  export { isEditing } from './functions/is-editing.js';
3
13
  export { isPreviewing } from './functions/is-previewing.js';
4
14
  export { createRegisterComponentMessage } from './functions/register-component.js';
@@ -9,7 +19,6 @@ export type { Settings } from './functions/set-editor-settings.js';
9
19
  export { _processContentResult, fetchEntries, fetchOneEntry, getAllContent, getContent } from './functions/get-content/index.js';
10
20
  export { getBuilderSearchParams } from './functions/get-builder-search-params/index.js';
11
21
  export { track } from './functions/track/index.js';
12
- export type { ContentProps } from './components/content/content.types.js';
13
22
  export type { RegisteredComponent } from './context/types.js';
14
23
  export type { ComponentInfo } from './types/components.js';
15
24
  export { fetchBuilderProps } from './functions/fetch-builder-props.js';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@builder.io/sdk-svelte",
3
3
  "description": "Builder.io SDK for Svelte",
4
- "version": "0.11.2",
4
+ "version": "0.11.4",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "lib",
@@ -1,19 +1,7 @@
1
- <script context="module" lang="ts">
2
- /**
3
- * This import is used by the Svelte SDK. Do not remove.
4
- */
5
-
6
- export interface ButtonProps {
7
- attributes?: any;
8
- text?: string;
9
- link?: string;
10
- openLinkInNewTab?: boolean;
11
- }
12
- </script>
13
-
14
1
  <script lang="ts">
15
2
  import { filterAttrs } from "../helpers.js";
16
3
  import { setAttrs } from "../helpers.js";
4
+ import type { ButtonProps } from "./button.types.js";
17
5
 
18
6
  export let attributes: ButtonProps["attributes"] = undefined;
19
7
  export let text: ButtonProps["text"] = undefined;
@@ -0,0 +1,6 @@
1
+ export interface ButtonProps {
2
+ attributes?: any;
3
+ text?: string;
4
+ link?: string;
5
+ openLinkInNewTab?: boolean;
6
+ }
@@ -1,20 +1,5 @@
1
1
  <script context="module" lang="ts">
2
- type Column = {
3
- blocks: BuilderBlock[];
4
- width?: number;
5
- };
6
-
7
2
  type CSSVal = string | number;
8
-
9
- type StackColumnsAt = "tablet" | "mobile" | "never";
10
-
11
- export interface ColumnProps extends BuilderComponentsProp {
12
- columns?: Column[];
13
- builderBlock: BuilderBlock;
14
- space?: number;
15
- stackColumnsAt?: StackColumnsAt;
16
- reverseColumnsWhenStacked?: boolean;
17
- }
18
3
  </script>
19
4
 
20
5
  <script lang="ts">
@@ -24,12 +9,9 @@
24
9
  import { getSizesForBreakpoints } from "../../constants/device-sizes.js";
25
10
  import { TARGET } from "../../constants/target.js";
26
11
  import { deoptSignal } from "../../functions/deopt.js";
27
- import type { BuilderBlock } from "../../types/builder-block.js";
28
- import type {
29
- BuilderComponentsProp,
30
- PropsWithBuilderData,
31
- } from "../../types/builder-props.js";
12
+ import type { PropsWithBuilderData } from "../../types/builder-props.js";
32
13
  import type { Dictionary } from "../../types/typescript.js";
14
+ import type { ColumnProps } from "./columns.types.js";
33
15
 
34
16
  export let js: PropsWithBuilderData<ColumnProps>["js"];
35
17
  export let space: PropsWithBuilderData<ColumnProps>["space"] = undefined;
@@ -0,0 +1,14 @@
1
+ import type { BuilderBlock } from '../../types/builder-block.js';
2
+ import type { BuilderComponentsProp } from '../../types/builder-props.js';
3
+ type Column = {
4
+ blocks: BuilderBlock[];
5
+ width?: number;
6
+ };
7
+ type StackColumnsAt = 'tablet' | 'mobile' | 'never';
8
+ export interface ColumnProps extends BuilderComponentsProp {
9
+ columns?: Column[];
10
+ builderBlock: BuilderBlock;
11
+ space?: number;
12
+ stackColumnsAt?: StackColumnsAt;
13
+ reverseColumnsWhenStacked?: boolean;
14
+ }
@@ -1,12 +1,5 @@
1
- <script context="module" lang="ts">
2
- export interface FragmentProps {
3
- maxWidth?: number;
4
- attributes?: any;
5
- children?: any;
6
- }
7
- </script>
8
-
9
1
  <script lang="ts">
2
+ import type { FragmentProps } from "./fragment.types.js";
10
3
  </script>
11
4
 
12
5
  <span><slot /></span>
@@ -0,0 +1,5 @@
1
+ export interface FragmentProps {
2
+ maxWidth?: number;
3
+ attributes?: any;
4
+ children?: any;
5
+ }
@@ -1,27 +1,6 @@
1
- <script context="module" lang="ts">
2
- export interface ImageProps {
3
- className?: string;
4
- image: string;
5
- sizes?: string;
6
- lazy?: boolean;
7
- height?: number;
8
- width?: number;
9
- altText?: string;
10
- backgroundSize?: "cover" | "contain";
11
- backgroundPosition?: string;
12
- srcset?: string;
13
- aspectRatio?: number;
14
- children?: any;
15
- fitContent?: boolean;
16
- builderBlock?: BuilderBlock;
17
- noWebp?: boolean;
18
- src?: string;
19
- }
20
- </script>
21
-
22
1
  <script lang="ts">
23
- import type { BuilderBlock } from "../../types/builder-block.js";
24
2
  import { getSrcSet } from "./image.helpers.js";
3
+ import type { ImageProps } from "./image.types.js";
25
4
 
26
5
  export let image: ImageProps["image"];
27
6
  export let src: ImageProps["src"] = undefined;
@@ -0,0 +1,19 @@
1
+ import type { BuilderBlock } from '../../types/builder-block.js';
2
+ export interface ImageProps {
3
+ className?: string;
4
+ image: string;
5
+ sizes?: string;
6
+ lazy?: boolean;
7
+ height?: number;
8
+ width?: number;
9
+ altText?: string;
10
+ backgroundSize?: 'cover' | 'contain';
11
+ backgroundPosition?: string;
12
+ srcset?: string;
13
+ aspectRatio?: number;
14
+ children?: any;
15
+ fitContent?: boolean;
16
+ builderBlock?: BuilderBlock;
17
+ noWebp?: boolean;
18
+ src?: string;
19
+ }
@@ -1,18 +1,6 @@
1
- <script context="module" lang="ts">
2
- /**
3
- * This import is used by the Svelte SDK. Do not remove.
4
- */
5
-
6
- export interface SectionProps {
7
- maxWidth?: number;
8
- attributes?: any;
9
- children?: any;
10
- builderBlock?: any;
11
- }
12
- </script>
13
-
14
1
  <script lang="ts">
15
2
  import { filterAttrs } from "../helpers.js";
3
+ import type { SectionProps } from "./section.types.js";
16
4
  import { setAttrs } from "../helpers.js";
17
5
 
18
6
  export let attributes: SectionProps["attributes"] = undefined;
@@ -0,0 +1,6 @@
1
+ export interface SectionProps {
2
+ maxWidth?: number;
3
+ attributes?: any;
4
+ children?: any;
5
+ builderBlock?: any;
6
+ }
@@ -1,43 +1,14 @@
1
- <script context="module" lang="ts">
2
- /**
3
- * This import is used by the Svelte SDK. Do not remove.
4
- */
5
-
6
- export interface SymbolInfo {
7
- model?: string;
8
- entry?: string;
9
- data?: any;
10
- content?: BuilderContent;
11
- inline?: boolean;
12
- dynamic?: boolean;
13
- }
14
-
15
- /**
16
- * This import is used by the Svelte SDK. Do not remove.
17
- */
18
-
19
- export interface SymbolProps extends BuilderComponentsProp {
20
- symbol?: SymbolInfo;
21
- dataOnly?: boolean;
22
- dynamic?: boolean;
23
- attributes?: any;
24
- inheritState?: boolean;
25
- }
26
- </script>
27
-
28
1
  <script lang="ts">
29
2
  import { onMount } from "svelte";
30
3
 
31
4
  import ContentVariants from "../../components/content-variants/content-variants.svelte";
32
5
  import type { BuilderContent } from "../../types/builder-content.js";
33
- import type {
34
- BuilderComponentsProp,
35
- PropsWithBuilderData,
36
- } from "../../types/builder-props.js";
6
+ import type { PropsWithBuilderData } from "../../types/builder-props.js";
37
7
  import { filterAttrs } from "../helpers.js";
38
8
  import type { Nullable } from "../../types/typescript.js";
39
9
  import { setAttrs } from "../helpers.js";
40
10
  import { fetchSymbolContent } from "./symbol.helpers.js";
11
+ import type { SymbolProps } from "./symbol.types.js";
41
12
 
42
13
  export let js: PropsWithBuilderData<SymbolProps>["js"];
43
14
  export let attributes: PropsWithBuilderData<SymbolProps>["attributes"] =
@@ -0,0 +1,17 @@
1
+ import type { BuilderContent } from '../../types/builder-content.js';
2
+ import type { BuilderComponentsProp } from '../../types/builder-props.js';
3
+ interface SymbolInfo {
4
+ model?: string;
5
+ entry?: string;
6
+ data?: any;
7
+ content?: BuilderContent;
8
+ inline?: boolean;
9
+ dynamic?: boolean;
10
+ }
11
+ export interface SymbolProps extends BuilderComponentsProp {
12
+ symbol?: SymbolInfo;
13
+ dataOnly?: boolean;
14
+ dynamic?: boolean;
15
+ attributes?: any;
16
+ inheritState?: boolean;
17
+ }
@@ -1,10 +1,6 @@
1
- <script context="module" lang="ts">
2
- export interface TextProps {
3
- text?: string;
4
- }
5
- </script>
6
-
7
1
  <script lang="ts">
2
+ import type { TextProps } from "./text.types.js";
3
+
8
4
  export let text: TextProps["text"] = undefined;
9
5
 
10
6
  function mitosis_styling(node, vars) {
@@ -0,0 +1,3 @@
1
+ export type TextProps = {
2
+ text?: string;
3
+ }
@@ -1,37 +1,5 @@
1
- <script context="module" lang="ts">
2
- export interface VideoProps {
3
- attributes?: any;
4
- video?: string;
5
- autoPlay?: boolean;
6
- controls?: boolean;
7
- muted?: boolean;
8
- loop?: boolean;
9
- playsInline?: boolean;
10
- aspectRatio?: number;
11
- width?: number;
12
- height?: number;
13
- fit?: "contain" | "cover" | "fill";
14
- preload?: "auto" | "metadata" | "none";
15
- position?:
16
- | "center"
17
- | "top"
18
- | "left"
19
- | "right"
20
- | "bottom"
21
- | "top left"
22
- | "top right"
23
- | "bottom left"
24
- | "bottom right";
25
- posterImage?: string;
26
- lazyLoad?: boolean;
27
- children?: any;
28
- fitContent?: boolean;
29
- builderBlock?: BuilderBlock;
30
- }
31
- </script>
32
-
33
1
  <script lang="ts">
34
- import type { BuilderBlock } from "../../types/builder-block.js";
2
+ import type { VideoProps } from "./video.types.js";
35
3
 
36
4
  export let autoPlay: VideoProps["autoPlay"] = undefined;
37
5
  export let muted: VideoProps["muted"] = undefined;
@@ -0,0 +1,21 @@
1
+ import type { BuilderBlock } from '../../types/builder-block.js';
2
+ export interface VideoProps {
3
+ attributes?: any;
4
+ video?: string;
5
+ autoPlay?: boolean;
6
+ controls?: boolean;
7
+ muted?: boolean;
8
+ loop?: boolean;
9
+ playsInline?: boolean;
10
+ aspectRatio?: number;
11
+ width?: number;
12
+ height?: number;
13
+ fit?: 'contain' | 'cover' | 'fill';
14
+ preload?: 'auto' | 'metadata' | 'none';
15
+ position?: 'center' | 'top' | 'left' | 'right' | 'bottom' | 'top left' | 'top right' | 'bottom left' | 'bottom right';
16
+ posterImage?: string;
17
+ lazyLoad?: boolean;
18
+ children?: any;
19
+ fitContent?: boolean;
20
+ builderBlock?: BuilderBlock;
21
+ }