@builder.io/sdk-svelte 0.4.5 → 0.5.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.
Files changed (382) hide show
  1. package/package/--package.json +40 -29
  2. package/package/CHANGELOG.md +4 -0
  3. package/package/blocks/BaseText.svelte +1 -1
  4. package/package/blocks/button/button.svelte +18 -33
  5. package/package/blocks/button/button.svelte.d.ts +3 -1
  6. package/package/blocks/button/component-info.d.ts +1 -1
  7. package/package/blocks/button/component-info.js +9 -13
  8. package/package/blocks/columns/columns.svelte +12 -18
  9. package/package/blocks/columns/columns.svelte.d.ts +11 -7
  10. package/package/blocks/columns/component-info.d.ts +1 -1
  11. package/package/blocks/columns/component-info.js +62 -83
  12. package/package/blocks/custom-code/component-info.d.ts +1 -1
  13. package/package/blocks/custom-code/component-info.js +7 -11
  14. package/package/blocks/embed/component-info.d.ts +1 -1
  15. package/package/blocks/embed/component-info.js +8 -15
  16. package/package/blocks/embed/helpers.js +1 -5
  17. package/package/blocks/form/component-info.d.ts +1 -1
  18. package/package/blocks/form/component-info.js +94 -129
  19. package/package/blocks/form/form.svelte +2 -289
  20. package/package/blocks/form/form.svelte.d.ts +1 -57
  21. package/package/blocks/fragment/component-info.d.ts +1 -1
  22. package/package/blocks/fragment/component-info.js +1 -1
  23. package/package/blocks/helpers.d.ts +13 -0
  24. package/package/blocks/helpers.js +40 -0
  25. package/package/blocks/image/component-info.d.ts +1 -1
  26. package/package/blocks/image/component-info.js +33 -63
  27. package/package/blocks/image/image.helpers.js +2 -11
  28. package/package/blocks/image/image.svelte.d.ts +0 -1
  29. package/package/blocks/img/component-info.d.ts +1 -1
  30. package/package/blocks/img/component-info.js +4 -6
  31. package/package/blocks/img/img.svelte +4 -29
  32. package/package/blocks/img/img.svelte.d.ts +3 -1
  33. package/package/blocks/input/component-info.d.ts +1 -1
  34. package/package/blocks/input/component-info.js +15 -40
  35. package/package/blocks/input/input.svelte +4 -29
  36. package/package/blocks/input/input.svelte.d.ts +3 -1
  37. package/package/blocks/raw-text/component-info.d.ts +1 -1
  38. package/package/blocks/raw-text/component-info.js +3 -5
  39. package/package/blocks/raw-text/raw-text.svelte +3 -5
  40. package/package/blocks/raw-text/raw-text.svelte.d.ts +1 -1
  41. package/package/blocks/section/component-info.d.ts +1 -1
  42. package/package/blocks/section/component-info.js +13 -18
  43. package/package/blocks/section/section.svelte +4 -29
  44. package/package/blocks/section/section.svelte.d.ts +3 -1
  45. package/package/blocks/select/component-info.d.ts +1 -1
  46. package/package/blocks/select/component-info.js +22 -34
  47. package/package/blocks/select/select.svelte +4 -29
  48. package/package/blocks/select/select.svelte.d.ts +3 -1
  49. package/package/blocks/submit-button/component-info.d.ts +1 -1
  50. package/package/blocks/submit-button/component-info.js +5 -7
  51. package/package/blocks/submit-button/submit-button.svelte +4 -29
  52. package/package/blocks/submit-button/submit-button.svelte.d.ts +3 -1
  53. package/package/blocks/symbol/component-info.d.ts +1 -1
  54. package/package/blocks/symbol/component-info.js +12 -17
  55. package/package/blocks/symbol/symbol.helpers.d.ts +14 -0
  56. package/package/blocks/symbol/symbol.helpers.js +31 -0
  57. package/package/blocks/symbol/symbol.svelte +37 -87
  58. package/package/blocks/symbol/symbol.svelte.d.ts +13 -7
  59. package/package/blocks/text/component-info.d.ts +1 -1
  60. package/package/blocks/text/component-info.js +6 -7
  61. package/package/blocks/text/text.svelte +1 -1
  62. package/package/blocks/textarea/component-info.d.ts +1 -1
  63. package/package/blocks/textarea/component-info.js +13 -19
  64. package/package/blocks/textarea/textarea.svelte +4 -29
  65. package/package/blocks/textarea/textarea.svelte.d.ts +3 -1
  66. package/package/blocks/video/component-info.d.ts +1 -1
  67. package/package/blocks/video/component-info.js +35 -55
  68. package/package/blocks/video/video.svelte +4 -30
  69. package/package/blocks/video/video.svelte.d.ts +2 -0
  70. package/package/components/block/block.helpers.d.ts +13 -0
  71. package/package/components/{render-block/render-block.helpers.js → block/block.helpers.js} +12 -29
  72. package/package/components/block/block.svelte +135 -0
  73. package/package/components/block/block.svelte.d.ts +26 -0
  74. package/package/components/{render-block → block/components}/block-styles.svelte +20 -22
  75. package/package/components/{render-block → block/components}/block-styles.svelte.d.ts +2 -2
  76. package/package/components/block/components/block-wrapper.svelte +53 -0
  77. package/package/components/block/components/block-wrapper.svelte.d.ts +33 -0
  78. package/package/components/block/components/component-ref/component-ref.helpers.d.ts +36 -0
  79. package/package/components/block/components/component-ref/component-ref.helpers.js +22 -0
  80. package/package/components/block/components/component-ref/component-ref.svelte +37 -0
  81. package/package/components/block/components/component-ref/component-ref.svelte.d.ts +24 -0
  82. package/package/components/block/components/interactive-element.svelte +29 -0
  83. package/package/components/block/components/interactive-element.svelte.d.ts +31 -0
  84. package/package/components/{render-block/render-repeated-block.svelte → block/components/repeated-block.svelte} +4 -3
  85. package/package/components/block/components/repeated-block.svelte.d.ts +25 -0
  86. package/package/components/{render-blocks.svelte → blocks/blocks-wrapper.svelte} +3 -20
  87. package/package/components/blocks/blocks-wrapper.svelte.d.ts +29 -0
  88. package/package/components/blocks/blocks.svelte +26 -0
  89. package/package/components/blocks/blocks.svelte.d.ts +28 -0
  90. package/package/components/{render-content/render-content.svelte → content/components/enable-editor.svelte} +47 -166
  91. package/package/components/content/components/enable-editor.svelte.d.ts +36 -0
  92. package/package/components/{render-content/components/render-styles.helpers.d.ts → content/components/styles.helpers.d.ts} +1 -1
  93. package/package/components/{render-content/components/render-styles.helpers.js → content/components/styles.helpers.js} +3 -4
  94. package/package/components/{render-content/components/render-styles.svelte → content/components/styles.svelte} +2 -2
  95. package/package/components/{render-content/components/render-styles.svelte.d.ts → content/components/styles.svelte.d.ts} +5 -5
  96. package/package/components/content/content.helpers.d.ts +7 -0
  97. package/package/components/content/content.helpers.js +30 -0
  98. package/package/components/content/content.svelte +113 -0
  99. package/package/components/content/content.svelte.d.ts +30 -0
  100. package/package/components/{render-content/render-content.types.d.ts → content/content.types.d.ts} +4 -4
  101. package/package/components/content/index.d.ts +1 -0
  102. package/package/components/content/index.js +1 -0
  103. package/package/components/{render-content-variants/render-content-variants.svelte → content-variants/content-variants.svelte} +20 -19
  104. package/package/components/{render-content-variants/render-content-variants.svelte.d.ts → content-variants/content-variants.svelte.d.ts} +6 -6
  105. package/package/components/{render-content-variants/render-content-variants.types.d.ts → content-variants/content-variants.types.d.ts} +5 -5
  106. package/package/components/{render-content-variants → content-variants}/helpers.d.ts +7 -7
  107. package/package/components/{render-content-variants → content-variants}/helpers.js +13 -22
  108. package/package/constants/builder-registered-components.js +34 -13
  109. package/package/constants/device-sizes.js +9 -8
  110. package/package/constants/sdk-version.d.ts +1 -1
  111. package/package/constants/sdk-version.js +1 -1
  112. package/package/constants/target.d.ts +1 -1
  113. package/package/context/builder.context.d.ts +1 -1
  114. package/package/context/builder.context.js +1 -1
  115. package/package/context/types.d.ts +1 -1
  116. package/package/functions/apply-patch-with-mutation.d.ts +10 -0
  117. package/package/functions/apply-patch-with-mutation.js +54 -0
  118. package/package/functions/evaluate/acorn.d.ts +0 -0
  119. package/package/functions/evaluate/acorn.js +2433 -0
  120. package/package/functions/{evaluate.d.ts → evaluate/evaluate.d.ts} +5 -2
  121. package/package/functions/{evaluate.js → evaluate/evaluate.js} +34 -13
  122. package/package/functions/evaluate/index.d.ts +1 -0
  123. package/package/functions/evaluate/index.js +1 -0
  124. package/package/functions/evaluate/interpreter.d.ts +2 -0
  125. package/package/functions/evaluate/interpreter.js +3853 -0
  126. package/package/functions/evaluate/non-node-runtime.d.ts +2 -0
  127. package/package/functions/evaluate/non-node-runtime.js +84 -0
  128. package/package/functions/evaluate/types.d.ts +10 -0
  129. package/package/functions/extract-text-styles.js +2 -14
  130. package/package/functions/get-block-actions-handler.js +3 -3
  131. package/package/functions/get-block-actions.d.ts +1 -0
  132. package/package/functions/get-block-actions.js +14 -1
  133. package/package/functions/get-block-component-options.js +1 -1
  134. package/package/functions/get-block-properties.d.ts +5 -1
  135. package/package/functions/get-block-properties.js +15 -9
  136. package/package/functions/get-builder-search-params/index.js +3 -7
  137. package/package/functions/get-content/generate-content-url.js +7 -5
  138. package/package/functions/get-content/index.d.ts +2 -6
  139. package/package/functions/get-content/index.js +26 -6
  140. package/package/functions/get-processed-block.d.ts +1 -1
  141. package/package/functions/get-processed-block.js +11 -7
  142. package/package/functions/get-react-native-block-styles.d.ts +1 -1
  143. package/package/functions/get-react-native-block-styles.js +2 -2
  144. package/package/functions/if-target.d.ts +1 -1
  145. package/package/functions/if-target.js +1 -1
  146. package/package/functions/is-editing.js +1 -3
  147. package/package/functions/is-non-node-server.d.ts +4 -0
  148. package/package/functions/is-non-node-server.js +8 -0
  149. package/package/functions/on-change.js +1 -1
  150. package/package/functions/register-component.d.ts +2 -1
  151. package/package/functions/register-component.js +20 -8
  152. package/package/functions/register.js +2 -2
  153. package/package/functions/sanitize-react-native-block-styles.js +13 -5
  154. package/package/functions/set-editor-settings.js +1 -1
  155. package/package/functions/set.js +2 -9
  156. package/package/functions/track/helpers.js +6 -11
  157. package/package/functions/track/index.js +26 -14
  158. package/package/functions/track/interaction.js +15 -16
  159. package/package/helpers/ab-tests.d.ts +2 -2
  160. package/package/helpers/ab-tests.js +42 -30
  161. package/package/helpers/canTrack.js +1 -1
  162. package/package/helpers/cookie.d.ts +2 -2
  163. package/package/helpers/cookie.js +13 -26
  164. package/package/helpers/css.d.ts +1 -1
  165. package/package/helpers/css.js +1 -1
  166. package/package/helpers/flatten.js +8 -8
  167. package/package/helpers/localStorage.d.ts +2 -2
  168. package/package/helpers/localStorage.js +2 -2
  169. package/package/helpers/logger.js +1 -1
  170. package/package/helpers/preview-lru-cache/get.d.ts +1 -0
  171. package/package/helpers/preview-lru-cache/get.js +7 -0
  172. package/package/helpers/preview-lru-cache/helpers.d.ts +1 -0
  173. package/package/helpers/preview-lru-cache/helpers.js +9 -0
  174. package/package/helpers/preview-lru-cache/init.d.ts +6 -0
  175. package/package/helpers/preview-lru-cache/init.js +15 -0
  176. package/package/helpers/preview-lru-cache/set.d.ts +7 -0
  177. package/package/helpers/preview-lru-cache/set.js +9 -0
  178. package/package/helpers/preview-lru-cache/types.d.ts +12 -0
  179. package/package/helpers/preview-lru-cache/types.js +6 -0
  180. package/package/helpers/sessionId.d.ts +2 -2
  181. package/package/helpers/sessionId.js +11 -4
  182. package/package/helpers/uuid.js +1 -1
  183. package/package/helpers/visitorId.d.ts +1 -1
  184. package/package/helpers/visitorId.js +7 -4
  185. package/package/index-helpers/blocks-exports.d.ts +2 -2
  186. package/package/index-helpers/blocks-exports.js +2 -2
  187. package/package/index.d.ts +2 -2
  188. package/package/index.js +1 -1
  189. package/package/scripts/init-editing.js +65 -57
  190. package/package/types/builder-props.d.ts +10 -0
  191. package/package/types/components.d.ts +8 -2
  192. package/package/types/enforced-partials.d.ts +1 -1
  193. package/package/types/targets.d.ts +1 -3
  194. package/package/types/typescript.d.ts +3 -0
  195. package/package.json +2 -2
  196. package/src/blocks/BaseText.svelte +1 -1
  197. package/src/blocks/button/button.svelte +21 -34
  198. package/src/blocks/button/component-info.ts +20 -27
  199. package/src/blocks/columns/columns.svelte +26 -30
  200. package/src/blocks/columns/component-info.ts +205 -240
  201. package/src/blocks/custom-code/component-info.ts +20 -27
  202. package/src/blocks/embed/component-info.ts +34 -51
  203. package/src/blocks/embed/helpers.ts +2 -8
  204. package/src/blocks/form/component-info.ts +204 -253
  205. package/src/blocks/form/form.svelte +1 -368
  206. package/src/blocks/fragment/component-info.ts +3 -5
  207. package/src/blocks/helpers.ts +43 -0
  208. package/src/blocks/image/component-info.ts +113 -161
  209. package/src/blocks/image/image.helpers.ts +5 -33
  210. package/src/blocks/img/component-info.ts +11 -16
  211. package/src/blocks/img/img.svelte +7 -31
  212. package/src/blocks/input/component-info.ts +35 -66
  213. package/src/blocks/input/input.svelte +7 -31
  214. package/src/blocks/raw-text/component-info.ts +8 -12
  215. package/src/blocks/raw-text/raw-text.svelte +2 -5
  216. package/src/blocks/section/component-info.ts +28 -37
  217. package/src/blocks/section/section.svelte +7 -30
  218. package/src/blocks/select/component-info.ts +38 -55
  219. package/src/blocks/select/select.svelte +7 -31
  220. package/src/blocks/submit-button/component-info.ts +10 -15
  221. package/src/blocks/submit-button/submit-button.svelte +7 -30
  222. package/src/blocks/symbol/component-info.ts +31 -39
  223. package/src/blocks/symbol/symbol.helpers.ts +47 -0
  224. package/src/blocks/symbol/symbol.svelte +50 -97
  225. package/src/blocks/text/component-info.ts +14 -18
  226. package/src/blocks/text/text.svelte +1 -1
  227. package/src/blocks/textarea/component-info.ts +26 -36
  228. package/src/blocks/textarea/textarea.svelte +7 -30
  229. package/src/blocks/video/component-info.ts +77 -103
  230. package/src/blocks/video/video.svelte +4 -31
  231. package/src/components/{render-block/render-block.helpers.ts → block/block.helpers.ts} +22 -49
  232. package/src/components/block/block.svelte +158 -0
  233. package/src/components/{render-block → block/components}/block-styles.svelte +23 -24
  234. package/src/components/block/components/block-wrapper.svelte +70 -0
  235. package/src/components/block/components/component-ref/component-ref.helpers.ts +53 -0
  236. package/src/components/block/components/component-ref/component-ref.svelte +41 -0
  237. package/src/components/block/components/interactive-element.svelte +42 -0
  238. package/src/components/block/components/repeated-block.svelte +30 -0
  239. package/src/components/{render-block → block}/types.ts +1 -2
  240. package/src/components/{render-blocks.svelte → blocks/blocks-wrapper.svelte} +14 -32
  241. package/src/components/blocks/blocks.svelte +39 -0
  242. package/src/components/{render-content/render-content.svelte → content/components/enable-editor.svelte} +71 -199
  243. package/src/components/{render-content/components/render-styles.helpers.ts → content/components/styles.helpers.ts} +9 -11
  244. package/src/components/{render-content/components/render-styles.svelte → content/components/styles.svelte} +3 -3
  245. package/src/components/content/content.helpers.ts +42 -0
  246. package/src/components/content/content.svelte +138 -0
  247. package/src/components/{render-content/render-content.types.ts → content/content.types.ts} +5 -9
  248. package/src/components/content/index.ts +1 -0
  249. package/src/components/{render-content → content}/wrap-component-ref.ts +1 -1
  250. package/src/components/{render-content-variants/render-content-variants.svelte → content-variants/content-variants.svelte} +26 -24
  251. package/src/components/{render-content-variants/render-content-variants.types.ts → content-variants/content-variants.types.ts} +9 -11
  252. package/src/components/{render-content-variants → content-variants}/helpers.ts +27 -73
  253. package/src/constants/builder-registered-components.ts +34 -14
  254. package/src/constants/device-sizes.ts +16 -22
  255. package/src/constants/sdk-version.ts +1 -1
  256. package/src/constants/target.ts +3 -1
  257. package/src/context/builder.context.ts +1 -1
  258. package/src/context/types.ts +2 -7
  259. package/src/functions/apply-patch-with-mutation.ts +61 -0
  260. package/src/functions/camel-to-kebab-case.ts +1 -2
  261. package/src/functions/evaluate/acorn.ts +2501 -0
  262. package/src/functions/evaluate/evaluate.ts +90 -0
  263. package/src/functions/evaluate/index.ts +1 -0
  264. package/src/functions/evaluate/interpreter.ts +3887 -0
  265. package/src/functions/evaluate/non-node-runtime.ts +94 -0
  266. package/src/functions/evaluate/types.ts +10 -0
  267. package/src/functions/extract-text-styles.ts +3 -18
  268. package/src/functions/fast-clone.ts +1 -2
  269. package/src/functions/get-block-actions-handler.ts +11 -20
  270. package/src/functions/get-block-actions.ts +22 -14
  271. package/src/functions/get-block-component-options.ts +2 -3
  272. package/src/functions/get-block-properties.ts +24 -17
  273. package/src/functions/get-builder-search-params/index.ts +5 -21
  274. package/src/functions/get-content/generate-content-url.ts +10 -25
  275. package/src/functions/get-content/index.ts +34 -37
  276. package/src/functions/get-content/types.ts +4 -2
  277. package/src/functions/get-fetch.ts +3 -10
  278. package/src/functions/get-global-this.ts +1 -2
  279. package/src/functions/get-processed-block.ts +14 -21
  280. package/src/functions/get-react-native-block-styles.ts +6 -12
  281. package/src/functions/if-target.ts +2 -3
  282. package/src/functions/is-browser.ts +1 -1
  283. package/src/functions/is-editing.ts +2 -7
  284. package/src/functions/is-iframe.ts +1 -2
  285. package/src/functions/is-non-node-server.ts +9 -0
  286. package/src/functions/is-previewing.ts +1 -4
  287. package/src/functions/on-change.ts +2 -2
  288. package/src/functions/register-component.ts +24 -26
  289. package/src/functions/register.ts +6 -8
  290. package/src/functions/sanitize-react-native-block-styles.ts +17 -24
  291. package/src/functions/set-editor-settings.ts +5 -6
  292. package/src/functions/set.ts +3 -15
  293. package/src/functions/track/helpers.ts +8 -24
  294. package/src/functions/track/index.ts +37 -42
  295. package/src/functions/track/interaction.ts +21 -38
  296. package/src/functions/transform-block-properties.ts +1 -1
  297. package/src/functions/transform-block.ts +1 -1
  298. package/src/helpers/ab-tests.ts +64 -79
  299. package/src/helpers/canTrack.ts +2 -4
  300. package/src/helpers/cookie.ts +15 -46
  301. package/src/helpers/css.ts +4 -13
  302. package/src/helpers/flatten.ts +11 -16
  303. package/src/helpers/localStorage.ts +4 -8
  304. package/src/helpers/logger.ts +2 -2
  305. package/src/helpers/nullable.ts +1 -3
  306. package/src/helpers/preview-lru-cache/get.ts +8 -0
  307. package/src/helpers/preview-lru-cache/helpers.ts +9 -0
  308. package/src/helpers/preview-lru-cache/init.ts +17 -0
  309. package/src/helpers/preview-lru-cache/set.ts +18 -0
  310. package/src/helpers/preview-lru-cache/types.ts +12 -0
  311. package/src/helpers/sessionId.ts +12 -13
  312. package/src/helpers/time.ts +1 -3
  313. package/src/helpers/url.ts +1 -2
  314. package/src/helpers/uuid.ts +3 -3
  315. package/src/helpers/visitorId.ts +14 -17
  316. package/src/index-helpers/blocks-exports.ts +2 -2
  317. package/src/index-helpers/top-of-file.ts +1 -1
  318. package/src/index.ts +2 -13
  319. package/src/scripts/init-editing.ts +85 -98
  320. package/src/types/api-version.ts +1 -1
  321. package/src/types/builder-block.ts +1 -3
  322. package/src/types/builder-content.ts +7 -4
  323. package/src/types/builder-props.ts +10 -0
  324. package/src/types/can-track.ts +1 -1
  325. package/src/types/components.ts +17 -13
  326. package/src/types/deep-partial.ts +1 -7
  327. package/src/types/element.ts +1 -3
  328. package/src/types/enforced-partials.ts +6 -20
  329. package/src/types/input.ts +6 -9
  330. package/src/types/targets.ts +1 -6
  331. package/src/types/typescript.ts +9 -9
  332. package/package/blocks/util.d.ts +0 -4
  333. package/package/blocks/util.js +0 -13
  334. package/package/components/render-block/render-block.helpers.d.ts +0 -12
  335. package/package/components/render-block/render-block.svelte +0 -152
  336. package/package/components/render-block/render-block.svelte.d.ts +0 -24
  337. package/package/components/render-block/render-component.svelte +0 -21
  338. package/package/components/render-block/render-component.svelte.d.ts +0 -34
  339. package/package/components/render-block/render-repeated-block.svelte.d.ts +0 -23
  340. package/package/components/render-blocks.svelte.d.ts +0 -26
  341. package/package/components/render-content/builder-editing.svelte +0 -4
  342. package/package/components/render-content/builder-editing.svelte.d.ts +0 -14
  343. package/package/components/render-content/index.d.ts +0 -1
  344. package/package/components/render-content/index.js +0 -1
  345. package/package/components/render-content/render-content.helpers.d.ts +0 -7
  346. package/package/components/render-content/render-content.helpers.js +0 -30
  347. package/package/components/render-content/render-content.svelte.d.ts +0 -30
  348. package/package/functions/evaluate.test.js +0 -17
  349. package/package/functions/get-builder-search-params/fn.test.js +0 -13
  350. package/package/functions/get-content/generate-content-url.test.d.ts +0 -1
  351. package/package/functions/get-content/generate-content-url.test.js +0 -97
  352. package/package/functions/get-processed-block.test.d.ts +0 -1
  353. package/package/functions/get-processed-block.test.js +0 -33
  354. package/package/functions/on-change.test.d.ts +0 -1
  355. package/package/functions/on-change.test.js +0 -20
  356. package/package/functions/set.test.d.ts +0 -1
  357. package/package/functions/set.test.js +0 -16
  358. package/package/helpers/url.test.d.ts +0 -1
  359. package/package/helpers/url.test.js +0 -21
  360. package/src/blocks/util.ts +0 -18
  361. package/src/components/render-block/render-block.svelte +0 -173
  362. package/src/components/render-block/render-component.svelte +0 -40
  363. package/src/components/render-block/render-repeated-block.svelte +0 -25
  364. package/src/components/render-content/builder-editing.svelte +0 -4
  365. package/src/components/render-content/index.ts +0 -1
  366. package/src/components/render-content/render-content.helpers.ts +0 -48
  367. package/src/functions/evaluate.test.ts +0 -21
  368. package/src/functions/evaluate.ts +0 -99
  369. package/src/functions/get-builder-search-params/fn.test.ts +0 -19
  370. package/src/functions/get-content/generate-content-url.test.ts +0 -112
  371. package/src/functions/get-processed-block.test.ts +0 -35
  372. package/src/functions/on-change.test.ts +0 -23
  373. package/src/functions/set.test.ts +0 -19
  374. package/src/helpers/url.test.ts +0 -23
  375. /package/package/components/{render-block → block}/types.d.ts +0 -0
  376. /package/package/components/{render-block → block}/types.js +0 -0
  377. /package/package/components/{render-content/render-content.types.js → content/content.types.js} +0 -0
  378. /package/package/components/{render-content → content}/wrap-component-ref.d.ts +0 -0
  379. /package/package/components/{render-content → content}/wrap-component-ref.js +0 -0
  380. /package/package/components/{render-content-variants/render-content-variants.types.js → content-variants/content-variants.types.js} +0 -0
  381. /package/package/functions/{evaluate.test.d.ts → evaluate/types.js} +0 -0
  382. /package/package/{functions/get-builder-search-params/fn.test.d.ts → types/builder-props.js} +0 -0
@@ -2,37 +2,36 @@ import type { CanTrack } from '../types/can-track.js';
2
2
  import { getCookie, setCookie } from './cookie.js';
3
3
  import { checkIsDefined } from './nullable.js';
4
4
  import { uuid } from './uuid.js';
5
-
6
5
  const SESSION_LOCAL_STORAGE_KEY = 'builderSessionId';
7
-
8
6
  export const getSessionId = async ({
9
- canTrack,
7
+ canTrack
10
8
  }: CanTrack): Promise<string | undefined> => {
11
9
  if (!canTrack) {
12
10
  return undefined;
13
11
  }
14
-
15
12
  const sessionId = await getCookie({
16
13
  name: SESSION_LOCAL_STORAGE_KEY,
17
- canTrack,
14
+ canTrack
18
15
  });
19
-
20
16
  if (checkIsDefined(sessionId)) {
21
17
  return sessionId;
22
18
  } else {
23
19
  const newSessionId = createSessionId();
24
- setSessionId({ id: newSessionId, canTrack });
25
-
20
+ setSessionId({
21
+ id: newSessionId,
22
+ canTrack
23
+ });
26
24
  return newSessionId;
27
25
  }
28
26
  };
29
-
30
27
  export const createSessionId = () => uuid();
31
-
32
28
  export const setSessionId = ({
33
29
  id,
34
- canTrack,
30
+ canTrack
35
31
  }: {
36
32
  id: string;
37
- } & CanTrack) =>
38
- setCookie({ name: SESSION_LOCAL_STORAGE_KEY, value: id, canTrack });
33
+ } & CanTrack) => setCookie({
34
+ name: SESSION_LOCAL_STORAGE_KEY,
35
+ value: id,
36
+ canTrack
37
+ })
@@ -1,4 +1,2 @@
1
1
  const MINUTE_TO_MILLESECONDS_MULTIPLIER = 60000;
2
-
3
- export const getCurrentDatePlusMinutes = (minutes = 30) =>
4
- new Date(Date.now() + minutes * MINUTE_TO_MILLESECONDS_MULTIPLIER);
2
+ export const getCurrentDatePlusMinutes = (minutes = 30) => new Date(Date.now() + minutes * MINUTE_TO_MILLESECONDS_MULTIPLIER)
@@ -7,10 +7,9 @@ export const getTopLevelDomain = (host: string) => {
7
7
  if (host === 'localhost' || host === '127.0.0.1') {
8
8
  return host;
9
9
  }
10
-
11
10
  const parts = host.split('.');
12
11
  if (parts.length > 2) {
13
12
  return parts.slice(1).join('.');
14
13
  }
15
14
  return host;
16
- };
15
+ }
@@ -3,8 +3,8 @@
3
3
  */
4
4
  export function uuidv4() {
5
5
  return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
6
- const r = (Math.random() * 16) | 0,
7
- v = c == 'x' ? r : (r & 0x3) | 0x8;
6
+ const r = Math.random() * 16 | 0,
7
+ v = c == 'x' ? r : r & 0x3 | 0x8;
8
8
  return v.toString(16);
9
9
  });
10
10
  }
@@ -14,4 +14,4 @@ export function uuidv4() {
14
14
  */
15
15
  export function uuid() {
16
16
  return uuidv4().replace(/-/g, '');
17
- }
17
+ }
@@ -2,39 +2,36 @@ import type { CanTrack } from '../types/can-track.js';
2
2
  import { getLocalStorageItem, setLocalStorageItem } from './localStorage.js';
3
3
  import { checkIsDefined } from './nullable.js';
4
4
  import { uuid } from './uuid.js';
5
-
6
5
  const VISITOR_LOCAL_STORAGE_KEY = 'builderVisitorId';
7
-
8
- export const getVisitorId = ({ canTrack }: CanTrack): string | undefined => {
6
+ export const getVisitorId = ({
7
+ canTrack
8
+ }: CanTrack): string | undefined => {
9
9
  if (!canTrack) {
10
10
  return undefined;
11
11
  }
12
-
13
12
  const visitorId = getLocalStorageItem({
14
13
  key: VISITOR_LOCAL_STORAGE_KEY,
15
- canTrack,
14
+ canTrack
16
15
  });
17
-
18
16
  if (checkIsDefined(visitorId)) {
19
17
  return visitorId;
20
18
  } else {
21
19
  const newVisitorId = createVisitorId();
22
- setVisitorId({ id: newVisitorId, canTrack });
23
-
20
+ setVisitorId({
21
+ id: newVisitorId,
22
+ canTrack
23
+ });
24
24
  return newVisitorId;
25
25
  }
26
26
  };
27
-
28
27
  export const createVisitorId = () => uuid();
29
-
30
28
  export const setVisitorId = ({
31
29
  id,
32
- canTrack,
30
+ canTrack
33
31
  }: {
34
32
  id: string;
35
- } & CanTrack) =>
36
- setLocalStorageItem({
37
- key: VISITOR_LOCAL_STORAGE_KEY,
38
- value: id,
39
- canTrack,
40
- });
33
+ } & CanTrack) => setLocalStorageItem({
34
+ key: VISITOR_LOCAL_STORAGE_KEY,
35
+ value: id,
36
+ canTrack
37
+ })
@@ -2,9 +2,9 @@ export { default as Button } from '../blocks/button/button.svelte';
2
2
  export { default as Columns } from '../blocks/columns/columns.svelte';
3
3
  export { default as Fragment } from '../blocks/fragment/fragment.svelte';
4
4
  export { default as Image } from '../blocks/image/image.svelte';
5
- export { default as RenderBlocks } from '../components/render-blocks.svelte';
5
+ export { default as RenderBlocks } from '../components/blocks/blocks.svelte';
6
6
  export { default as Section } from '../blocks/section/section.svelte';
7
7
  export { default as Symbol } from '../blocks/symbol/symbol.svelte';
8
8
  export { default as Text } from '../blocks/text/text.svelte';
9
9
  export { default as Video } from '../blocks/video/video.svelte';
10
- export { default as RenderContent } from '../components/render-content-variants/render-content-variants.svelte';
10
+ export { default as RenderContent } from '../components/content-variants/content-variants.svelte'
@@ -1,4 +1,4 @@
1
1
  // no-op
2
2
  // this file exists in case a target needs to add logic to the top of the index file in an
3
3
  // override.
4
- export default undefined;
4
+ export default undefined
package/src/index.ts CHANGED
@@ -1,26 +1,15 @@
1
1
  export * from './index-helpers/top-of-file.js';
2
2
  export * from './index-helpers/blocks-exports.js';
3
-
4
3
  export { isEditing } from './functions/is-editing.js';
5
4
  export { isPreviewing } from './functions/is-previewing.js';
6
5
  export { createRegisterComponentMessage } from './functions/register-component.js';
7
-
8
6
  export { register } from './functions/register.js';
9
7
  export type { InsertMenuConfig, InsertMenuItem } from './functions/register.js';
10
-
11
8
  export { setEditorSettings } from './functions/set-editor-settings.js';
12
9
  export type { Settings } from './functions/set-editor-settings.js';
13
-
14
- export {
15
- getAllContent,
16
- getContent,
17
- processContentResult,
18
- } from './functions/get-content/index.js';
19
-
10
+ export { getAllContent, getContent, processContentResult } from './functions/get-content/index.js';
20
11
  export { getBuilderSearchParams } from './functions/get-builder-search-params/index.js';
21
-
22
12
  export { track } from './functions/track/index.js';
23
-
24
13
  export type { RegisteredComponent } from './context/types';
25
14
  export type { ComponentInfo } from './types/components';
26
- export type { RenderContentProps } from './components/render-content/render-content.types.js';
15
+ export type { ContentProps } from './components/content/content.types.js'
@@ -2,125 +2,112 @@ import { SDK_VERSION } from '../constants/sdk-version.js';
2
2
  import { TARGET } from '../constants/target.js';
3
3
  import { isBrowser } from '../functions/is-browser.js';
4
4
  import { register } from '../functions/register.js';
5
-
6
5
  export const registerInsertMenu = () => {
7
6
  register('insertMenu', {
8
7
  name: '_default',
9
8
  default: true,
10
- items: [
11
- { name: 'Box' },
12
- { name: 'Text' },
13
- { name: 'Image' },
14
- { name: 'Columns' },
15
- ...(TARGET === 'reactNative'
16
- ? []
17
- : [
18
- { name: 'Core:Section' },
19
- { name: 'Core:Button' },
20
- { name: 'Embed' },
21
- { name: 'Custom Code' },
22
- ]),
23
- ],
9
+ items: [{
10
+ name: 'Box'
11
+ }, {
12
+ name: 'Text'
13
+ }, {
14
+ name: 'Image'
15
+ }, {
16
+ name: 'Columns'
17
+ }, ...(TARGET === 'reactNative' ? [] : [{
18
+ name: 'Core:Section'
19
+ }, {
20
+ name: 'Core:Button'
21
+ }, {
22
+ name: 'Embed'
23
+ }, {
24
+ name: 'Custom Code'
25
+ }])]
24
26
  });
25
27
  };
26
-
27
28
  let isSetupForEditing = false;
28
- export const setupBrowserForEditing = (
29
- options: {
30
- enrich?: boolean;
31
- includeRefs?: boolean;
32
- locale?: string;
33
- } = {}
34
- ) => {
29
+ export const setupBrowserForEditing = (options: {
30
+ enrich?: boolean;
31
+ includeRefs?: boolean;
32
+ locale?: string;
33
+ } = {}) => {
35
34
  if (isSetupForEditing) {
36
35
  return;
37
36
  }
38
37
  isSetupForEditing = true;
39
38
  if (isBrowser()) {
40
- window.parent?.postMessage(
41
- {
42
- type: 'builder.sdkInfo',
43
- data: {
44
- target: TARGET,
45
- version: SDK_VERSION,
46
- // TODO: compile these in
47
- // type: process.env.SDK_TYPE,
48
- // version: process.env.SDK_VERSION,
49
- supportsPatchUpdates: false,
50
- // Supports builder-model="..." attribute which is needed to
51
- // scope our '+ add block' button styling
52
- supportsAddBlockScoping: true,
53
- supportsCustomBreakpoints: true,
54
- },
55
- },
56
- '*'
57
- );
58
-
59
- window.parent?.postMessage(
60
- {
61
- type: 'builder.updateContent',
62
- data: {
63
- options,
64
- },
65
- },
66
- '*'
67
- );
68
-
69
- window.addEventListener('message', ({ data }) => {
39
+ window.parent?.postMessage({
40
+ type: 'builder.sdkInfo',
41
+ data: {
42
+ target: TARGET,
43
+ version: SDK_VERSION,
44
+ supportsPatchUpdates: false,
45
+ // Supports builder-model="..." attribute which is needed to
46
+ // scope our '+ add block' button styling
47
+ supportsAddBlockScoping: true,
48
+ supportsCustomBreakpoints: true
49
+ }
50
+ }, '*');
51
+ window.parent?.postMessage({
52
+ type: 'builder.updateContent',
53
+ data: {
54
+ options
55
+ }
56
+ }, '*');
57
+ window.addEventListener('message', ({
58
+ data
59
+ }) => {
70
60
  if (!data?.type) {
71
61
  return;
72
62
  }
73
-
74
63
  switch (data.type) {
75
- case 'builder.evaluate': {
76
- const text = data.data.text;
77
- const args = data.data.arguments || [];
78
- const id = data.data.id;
79
- // tslint:disable-next-line:no-function-constructor-with-string-args
80
- const fn = new Function(text);
81
- let result: any;
82
- let error: Error | null = null;
83
- try {
84
- // eslint-disable-next-line prefer-spread
85
- result = fn.apply(null, args);
86
- } catch (err) {
87
- error = err as Error;
88
- }
89
-
90
- if (error) {
91
- window.parent?.postMessage(
92
- {
64
+ case 'builder.evaluate':
65
+ {
66
+ const text = data.data.text;
67
+ const args = data.data.arguments || [];
68
+ const id = data.data.id;
69
+ // tslint:disable-next-line:no-function-constructor-with-string-args
70
+ const fn = new Function(text);
71
+ let result: any;
72
+ let error: Error | null = null;
73
+ try {
74
+ // eslint-disable-next-line prefer-spread
75
+ result = fn.apply(null, args);
76
+ } catch (err) {
77
+ error = (err as Error);
78
+ }
79
+ if (error) {
80
+ window.parent?.postMessage({
93
81
  type: 'builder.evaluateError',
94
- data: { id, error: error.message },
95
- },
96
- '*'
97
- );
98
- } else {
99
- if (result && typeof result.then === 'function') {
100
- (result as Promise<any>)
101
- .then((finalResult) => {
102
- window.parent?.postMessage(
103
- {
104
- type: 'builder.evaluateResult',
105
- data: { id, result: finalResult },
106
- },
107
- '*'
108
- );
109
- })
110
- .catch(console.error);
82
+ data: {
83
+ id,
84
+ error: error.message
85
+ }
86
+ }, '*');
111
87
  } else {
112
- window.parent?.postMessage(
113
- {
88
+ if (result && typeof result.then === 'function') {
89
+ (result as Promise<any>).then(finalResult => {
90
+ window.parent?.postMessage({
91
+ type: 'builder.evaluateResult',
92
+ data: {
93
+ id,
94
+ result: finalResult
95
+ }
96
+ }, '*');
97
+ }).catch(console.error);
98
+ } else {
99
+ window.parent?.postMessage({
114
100
  type: 'builder.evaluateResult',
115
- data: { result, id },
116
- },
117
- '*'
118
- );
101
+ data: {
102
+ result,
103
+ id
104
+ }
105
+ }, '*');
106
+ }
119
107
  }
108
+ break;
120
109
  }
121
- break;
122
- }
123
110
  }
124
111
  });
125
112
  }
126
- };
113
+ }
@@ -1,2 +1,2 @@
1
1
  export type ApiVersion = 'v2' | 'v3';
2
- export const DEFAULT_API_VERSION: ApiVersion = 'v3';
2
+ export const DEFAULT_API_VERSION: ApiVersion = 'v3'
@@ -1,9 +1,7 @@
1
1
  type JSONValue = string | number | boolean | JSONObject | JSONArray;
2
-
3
2
  interface JSONObject {
4
3
  [x: string]: JSONValue;
5
4
  }
6
-
7
5
  interface JSONArray extends Array<JSONValue> {}
8
6
 
9
7
  /** @todo typedoc this */
@@ -66,4 +64,4 @@ export interface BuilderBlock {
66
64
  * generated by the "Show If" binding
67
65
  */
68
66
  show?: boolean;
69
- }
67
+ }
@@ -1,7 +1,6 @@
1
1
  import type { BuilderBlock } from './builder-block.js';
2
2
  import type { Input } from './input.js';
3
3
  import type { Nullable } from './typescript.js';
4
-
5
4
  export interface Breakpoints {
6
5
  small: number;
7
6
  medium: number;
@@ -11,10 +10,14 @@ export interface BuilderContentVariation {
11
10
  title?: string;
12
11
  blocks?: BuilderBlock[];
13
12
  inputs?: Input[];
14
- state?: { [key: string]: any };
13
+ state?: {
14
+ [key: string]: any;
15
+ };
15
16
  jsCode?: string;
16
17
  tsCode?: string;
17
- httpRequests?: { [key: string]: string };
18
+ httpRequests?: {
19
+ [key: string]: string;
20
+ };
18
21
  [key: string]: any;
19
22
  };
20
23
  name?: string;
@@ -41,4 +44,4 @@ export interface BuilderContent extends BuilderContentVariation {
41
44
  };
42
45
  testVariationId?: string;
43
46
  testVariationName?: string;
44
- }
47
+ }
@@ -0,0 +1,10 @@
1
+ import type { Writable } from "svelte/store";
2
+ import type { BuilderContextInterface, RegisteredComponents } from '../context/types.js';
3
+ import type { BuilderBlock } from './builder-block.js';
4
+ export type PropsWithBuilderData<T> = T & {
5
+ builderBlock: BuilderBlock;
6
+ builderContext: Writable<BuilderContextInterface>;
7
+ };
8
+ export type BuilderComponentsProp = {
9
+ builderComponents: RegisteredComponents;
10
+ }
@@ -1,3 +1,3 @@
1
1
  export type CanTrack = {
2
2
  canTrack: boolean;
3
- };
3
+ }
@@ -1,6 +1,5 @@
1
- import type { BuilderElement } from './element';
2
- import type { Input } from './input';
3
-
1
+ import type { BuilderElement } from './element.js';
2
+ import type { Input } from './input.js';
4
3
  export interface ComponentInfo {
5
4
  /**
6
5
  * Name your component something unique, e.g. 'MyButton'. You can override built-in components
@@ -19,7 +18,9 @@ export interface ComponentInfo {
19
18
  inputs?: Input[];
20
19
  class?: any;
21
20
  type?: 'angular' | 'webcomponent' | 'react' | 'vue';
22
- defaultStyles?: { [key: string]: string };
21
+ defaultStyles?: {
22
+ [key: string]: string;
23
+ };
23
24
  /**
24
25
  * Turn on if your component can accept children. Be sure to use in combination with
25
26
  * withChildren(YourComponent) like here
@@ -32,13 +33,23 @@ export interface ComponentInfo {
32
33
  * like here github.com/BuilderIO/builder/blob/master/packages/react/src/blocks/forms/Input.tsx#L34
33
34
  */
34
35
  noWrap?: boolean;
36
+
37
+ /**
38
+ * TO-DO: make this optional only for RSC SDK.
39
+ *
40
+ * Set this to `true` if your component is a React Server Component (RSC).
41
+ */
42
+ isRSC?: boolean;
43
+
35
44
  /**
36
45
  * Default children
37
46
  */
38
47
  defaultChildren?: BuilderElement[];
39
48
  defaults?: Partial<BuilderElement>;
40
49
  // eslint-disable-next-line @typescript-eslint/ban-types
41
- hooks?: { [key: string]: string | Function };
50
+ hooks?: {
51
+ [key: string]: string | Function;
52
+ };
42
53
  /**
43
54
  * Hide your component in editor, useful for gradually deprecating components
44
55
  */
@@ -107,11 +118,4 @@ export interface ComponentInfo {
107
118
  // TO-DO: is this used?
108
119
  hidden?: boolean;
109
120
  }
110
-
111
- type Permission =
112
- | 'read'
113
- | 'publish'
114
- | 'editCode'
115
- | 'editDesigns'
116
- | 'admin'
117
- | 'create';
121
+ type Permission = 'read' | 'publish' | 'editCode' | 'editDesigns' | 'admin' | 'create'
@@ -1,7 +1 @@
1
- export type DeepPartial<T> = {
2
- [P in keyof T]?: T[P] extends Array<infer U>
3
- ? Array<DeepPartial<U>>
4
- : T[P] extends ReadonlyArray<infer U>
5
- ? ReadonlyArray<DeepPartial<U>>
6
- : DeepPartial<T[P]>;
7
- };
1
+ export type DeepPartial<T> = { [P in keyof T]?: T[P] extends Array<infer U> ? Array<DeepPartial<U>> : T[P] extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : DeepPartial<T[P]> }
@@ -1,9 +1,7 @@
1
1
  type JSONValue = string | number | boolean | JSONObject | JSONArray;
2
-
3
2
  interface JSONObject {
4
3
  [x: string]: JSONValue;
5
4
  }
6
-
7
5
  interface JSONArray extends Array<JSONValue> {}
8
6
 
9
7
  /** @todo typedoc this */
@@ -57,4 +55,4 @@ export interface BuilderElement {
57
55
  animations?: Animation[]; // TODO: type the animation spec
58
56
  }
59
57
 
60
- interface Animation {}
58
+ interface Animation {}
@@ -1,20 +1,8 @@
1
- import type { Prettify } from './typescript';
2
-
3
- type OptionalFieldsOnly<T> = {
4
- [K in keyof T as T[K] extends Required<T>[K] ? never : K]: T[K];
5
- };
6
-
7
- type RequiredFieldsOnly<T> = {
8
- [K in keyof T as T[K] extends Required<T>[K] ? K : never]: T[K];
9
- };
10
-
11
- type Enforced<T> = {
12
- [K in keyof T]-?: T[K];
13
- };
14
-
15
- type AndUndefined<T> = {
16
- [K in keyof T]: T[K] | undefined;
17
- };
1
+ import type { Prettify } from './typescript.js';
2
+ type OptionalFieldsOnly<T> = { [K in keyof T as T[K] extends Required<T>[K] ? never : K]: T[K] };
3
+ type RequiredFieldsOnly<T> = { [K in keyof T as T[K] extends Required<T>[K] ? K : never]: T[K] };
4
+ type Enforced<T> = { [K in keyof T]-?: T[K] };
5
+ type AndUndefined<T> = { [K in keyof T]: T[K] | undefined };
18
6
 
19
7
  /**
20
8
  * Enforce that all optional fields are undefined
@@ -22,6 +10,4 @@ type AndUndefined<T> = {
22
10
  * type Foo = { a: string, b?: number }
23
11
  * type Bar = EnforcePartials<Foo> // { a: string, b: number | undefined }
24
12
  */
25
- export type EnforcePartials<From> = Prettify<
26
- AndUndefined<Enforced<OptionalFieldsOnly<From>>> & RequiredFieldsOnly<From>
27
- >;
13
+ export type EnforcePartials<From> = Prettify<AndUndefined<Enforced<OptionalFieldsOnly<From>>> & RequiredFieldsOnly<From>>
@@ -78,13 +78,11 @@ export interface Input {
78
78
  /**
79
79
  * For "text" input type, specifying an enum will show a dropdown of options instead
80
80
  */
81
- enum?:
82
- | string[]
83
- | {
84
- label: string;
85
- value: any;
86
- helperText?: string;
87
- }[];
81
+ enum?: string[] | {
82
+ label: string;
83
+ value: any;
84
+ helperText?: string;
85
+ }[];
88
86
  /** Regex field validation for all string types (text, longText, html, url, etc) */
89
87
  regex?: {
90
88
  /** pattern to test, like "^\/[a-z]$" */
@@ -117,9 +115,8 @@ export interface Input {
117
115
  * Use optionally with inputs of type `reference`. Restricts the content entry picker to a specific model by name.
118
116
  */
119
117
  model?: string;
120
-
121
118
  valueType?: {
122
119
  type?: string;
123
120
  };
124
121
  onChange?: ((options: Map<string, any>) => void | Promise<void>) | string;
125
- }
122
+ }
@@ -1,6 +1 @@
1
- type MitosisTargets = import('@builder.io/mitosis').Target;
2
-
3
- export type Target = Extract<
4
- MitosisTargets,
5
- 'vue3' | 'vue2' | 'reactNative' | 'svelte' | 'qwik' | 'react' | 'solid'
6
- >;
1
+ export type Target = 'vue3' | 'vue2' | 'reactNative' | 'svelte' | 'qwik' | 'react' | 'solid' | 'rsc'
@@ -1,12 +1,12 @@
1
1
  export type Nullable<T> = T | null | undefined;
2
-
3
- export type Dictionary<T> = { [key: string]: T };
4
-
5
- export type Overwrite<T, U> = keyof U extends keyof T
6
- ? Pick<T, Exclude<keyof T, keyof U>> & U
7
- : never;
8
-
2
+ export type Dictionary<T> = {
3
+ [key: string]: T;
4
+ };
5
+ export type Overwrite<T, U> = keyof U extends keyof T ? Pick<T, Exclude<keyof T, keyof U>> & U : never;
9
6
  export type Prettify<T> = {
10
- [K in keyof T]: T[K];
7
+
11
8
  // eslint-disable-next-line @typescript-eslint/ban-types
12
- } & {};
9
+ [K in keyof T]: T[K] } & {};
10
+ export type PropsWithChildren<P> = P & {
11
+ children?: any;
12
+ }
@@ -1,4 +0,0 @@
1
- /**
2
- * Input attributes that are functions must be converted to strings before being serialized to JSON.
3
- */
4
- export declare const serializeFn: (fnValue: Function) => string;