@makeswift/runtime 0.22.3 → 0.23.0-canary.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 (499) hide show
  1. package/dist/cjs/api/{graphql/fragments.js → fragments.js} +1 -1
  2. package/dist/cjs/api/fragments.js.map +1 -0
  3. package/dist/cjs/api/index.js +4 -4
  4. package/dist/cjs/api/index.js.map +1 -1
  5. package/dist/cjs/api/react.js +46 -46
  6. package/dist/cjs/api/react.js.map +1 -1
  7. package/dist/cjs/api/{graphql/types.js → types.js} +9 -4
  8. package/dist/cjs/api/types.js.map +1 -0
  9. package/dist/cjs/builder/serialization/control-serialization.js +13 -9
  10. package/dist/cjs/builder/serialization/control-serialization.js.map +1 -1
  11. package/dist/cjs/components/builtin/Form/Form.js +2 -2
  12. package/dist/cjs/components/builtin/Form/Form.js.map +1 -1
  13. package/dist/cjs/components/builtin/Slot/Slot.js +33 -0
  14. package/dist/cjs/components/builtin/Slot/Slot.js.map +1 -0
  15. package/dist/cjs/components/builtin/Slot/index.js +35 -0
  16. package/dist/cjs/components/builtin/Slot/index.js.map +1 -0
  17. package/dist/cjs/components/builtin/Slot/register.js +56 -0
  18. package/dist/cjs/components/builtin/Slot/register.js.map +1 -0
  19. package/dist/cjs/components/builtin/constants.js +1 -0
  20. package/dist/cjs/components/builtin/constants.js.map +1 -1
  21. package/dist/cjs/components/builtin/index.js +3 -0
  22. package/dist/cjs/components/builtin/index.js.map +1 -1
  23. package/dist/cjs/components/builtin/register.js +9 -6
  24. package/dist/cjs/components/builtin/register.js.map +1 -1
  25. package/dist/cjs/components/hooks/usePageSnippets.js +2 -2
  26. package/dist/cjs/components/hooks/usePageSnippets.js.map +1 -1
  27. package/dist/cjs/components/page/Page.js +2 -3
  28. package/dist/cjs/components/page/Page.js.map +1 -1
  29. package/dist/cjs/components/page/PageHead.js +2 -2
  30. package/dist/cjs/components/page/PageHead.js.map +1 -1
  31. package/dist/cjs/components/shared/BackgroundsContainer/index.js +5 -3
  32. package/dist/cjs/components/shared/BackgroundsContainer/index.js.map +1 -1
  33. package/dist/cjs/controls/index.js +10 -0
  34. package/dist/cjs/controls/index.js.map +1 -1
  35. package/dist/cjs/core/index.js +4 -2
  36. package/dist/cjs/core/index.js.map +1 -1
  37. package/dist/cjs/index.js +2 -2
  38. package/dist/cjs/index.js.map +1 -1
  39. package/dist/cjs/jest-setup.js +2 -1
  40. package/dist/cjs/jest-setup.js.map +1 -1
  41. package/dist/cjs/next/api-handler/handlers/manifest.js +4 -2
  42. package/dist/cjs/next/api-handler/handlers/manifest.js.map +1 -1
  43. package/dist/cjs/next/api-handler/handlers/webhook/index.js +55 -0
  44. package/dist/cjs/next/api-handler/handlers/webhook/index.js.map +1 -0
  45. package/dist/cjs/next/api-handler/handlers/webhook/site-published.js +36 -0
  46. package/dist/cjs/next/api-handler/handlers/webhook/site-published.js.map +1 -0
  47. package/dist/cjs/next/api-handler/handlers/webhook/types.js +46 -0
  48. package/dist/cjs/next/api-handler/handlers/webhook/types.js.map +1 -0
  49. package/dist/cjs/next/api-handler/index.js +7 -7
  50. package/dist/cjs/next/api-handler/index.js.map +1 -1
  51. package/dist/cjs/next/client.js +136 -18
  52. package/dist/cjs/next/client.js.map +1 -1
  53. package/dist/cjs/next/components/MakeswiftComponent.js +50 -0
  54. package/dist/cjs/next/components/MakeswiftComponent.js.map +1 -0
  55. package/dist/cjs/next/components/Slot.js +50 -0
  56. package/dist/cjs/next/components/Slot.js.map +1 -0
  57. package/dist/cjs/next/components/SlotProvider.js +41 -0
  58. package/dist/cjs/next/components/SlotProvider.js.map +1 -0
  59. package/dist/cjs/next/components/page.js +20 -18
  60. package/dist/cjs/next/components/page.js.map +1 -1
  61. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js +6 -5
  62. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  63. package/dist/cjs/next/components/tests/prop-controllers/page-prop-controller.js +6 -6
  64. package/dist/cjs/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -1
  65. package/dist/cjs/next/document.js +1 -1
  66. package/dist/cjs/next/document.js.map +1 -1
  67. package/dist/cjs/next/draft-mode/draft-mode-script.js +17 -3
  68. package/dist/cjs/next/draft-mode/draft-mode-script.js.map +1 -1
  69. package/dist/cjs/next/index.js +10 -4
  70. package/dist/cjs/next/index.js.map +1 -1
  71. package/dist/cjs/next/preview-mode.js +4 -1
  72. package/dist/cjs/next/preview-mode.js.map +1 -1
  73. package/dist/cjs/prop-controllers/introspection.js +1 -1
  74. package/dist/cjs/prop-controllers/introspection.js.map +1 -1
  75. package/dist/cjs/react.js +2 -4
  76. package/dist/cjs/react.js.map +1 -1
  77. package/dist/cjs/runtimes/react/components/Document.js +3 -2
  78. package/dist/cjs/runtimes/react/components/Document.js.map +1 -1
  79. package/dist/cjs/runtimes/react/components/{DocumentReference.js → DocumentRoot.js} +9 -9
  80. package/dist/cjs/runtimes/react/components/DocumentRoot.js.map +1 -0
  81. package/dist/cjs/runtimes/react/components/Element.js +10 -22
  82. package/dist/cjs/runtimes/react/components/Element.js.map +1 -1
  83. package/dist/cjs/runtimes/react/components/ElementReference.js +3 -1
  84. package/dist/cjs/runtimes/react/components/ElementReference.js.map +1 -1
  85. package/dist/cjs/runtimes/react/components/ElementRegistration.js +55 -0
  86. package/dist/cjs/runtimes/react/components/ElementRegistration.js.map +1 -0
  87. package/dist/cjs/runtimes/react/components/LiveProvider.js +10 -8
  88. package/dist/cjs/runtimes/react/components/LiveProvider.js.map +1 -1
  89. package/dist/cjs/runtimes/react/components/PreviewProvider.js +9 -22
  90. package/dist/cjs/runtimes/react/components/PreviewProvider.js.map +1 -1
  91. package/dist/cjs/runtimes/react/components/RuntimeProvider.js +23 -5
  92. package/dist/cjs/runtimes/react/components/RuntimeProvider.js.map +1 -1
  93. package/dist/cjs/runtimes/react/controls/group.js +45 -0
  94. package/dist/cjs/runtimes/react/controls/group.js.map +1 -0
  95. package/dist/cjs/runtimes/react/hooks/makeswift-api.js +20 -18
  96. package/dist/cjs/runtimes/react/hooks/makeswift-api.js.map +1 -1
  97. package/dist/cjs/runtimes/react/hooks/use-cache-data.js +35 -0
  98. package/dist/cjs/runtimes/react/hooks/use-cache-data.js.map +1 -0
  99. package/dist/cjs/runtimes/react/hooks/use-dispatch.js +1 -2
  100. package/dist/cjs/runtimes/react/hooks/use-dispatch.js.map +1 -1
  101. package/dist/cjs/runtimes/react/hooks/use-document-context.js +49 -0
  102. package/dist/cjs/runtimes/react/hooks/use-document-context.js.map +1 -0
  103. package/dist/cjs/runtimes/react/hooks/use-element-id.js +2 -2
  104. package/dist/cjs/runtimes/react/hooks/use-element-id.js.map +1 -1
  105. package/dist/cjs/{next/context/react-runtime.js → runtimes/react/hooks/use-react-runtime.js} +12 -16
  106. package/dist/cjs/runtimes/react/hooks/use-react-runtime.js.map +1 -0
  107. package/dist/cjs/runtimes/react/hooks/use-register-document.js +42 -0
  108. package/dist/cjs/runtimes/react/hooks/use-register-document.js.map +1 -0
  109. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js +2 -2
  110. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  111. package/dist/cjs/runtimes/react/hooks/use-resource-resolver.js +6 -6
  112. package/dist/cjs/runtimes/react/hooks/use-resource-resolver.js.map +1 -1
  113. package/dist/cjs/runtimes/react/hooks/use-store.js +6 -3
  114. package/dist/cjs/runtimes/react/hooks/use-store.js.map +1 -1
  115. package/dist/cjs/runtimes/react/hooks/use-universal-dispatch.js +38 -0
  116. package/dist/cjs/runtimes/react/hooks/use-universal-dispatch.js.map +1 -0
  117. package/dist/cjs/{next/context/makeswift-host-api-client.js → runtimes/react/host-api-client.js} +4 -4
  118. package/dist/cjs/runtimes/react/host-api-client.js.map +1 -0
  119. package/dist/cjs/runtimes/react/index.js +8 -8
  120. package/dist/cjs/runtimes/react/index.js.map +1 -1
  121. package/dist/cjs/runtimes/react/react-runtime.js +0 -24
  122. package/dist/cjs/runtimes/react/react-runtime.js.map +1 -1
  123. package/dist/cjs/runtimes/react/runtime-core.js +2 -17
  124. package/dist/cjs/runtimes/react/runtime-core.js.map +1 -1
  125. package/dist/cjs/state/actions.js +33 -16
  126. package/dist/cjs/state/actions.js.map +1 -1
  127. package/dist/cjs/state/makeswift-api-client.js +98 -18
  128. package/dist/cjs/state/makeswift-api-client.js.map +1 -1
  129. package/dist/cjs/{runtimes/react/hooks/use-document-key.js → state/mixins/setup-teardown.js} +12 -13
  130. package/dist/cjs/state/mixins/setup-teardown.js.map +1 -0
  131. package/dist/cjs/state/modules/api-resources.js +62 -24
  132. package/dist/cjs/state/modules/api-resources.js.map +1 -1
  133. package/dist/cjs/state/modules/element-trees.js +14 -7
  134. package/dist/cjs/state/modules/element-trees.js.map +1 -1
  135. package/dist/cjs/state/modules/localized-resources-map.js +80 -0
  136. package/dist/cjs/state/modules/localized-resources-map.js.map +1 -0
  137. package/dist/cjs/state/modules/read-only-documents.js +16 -13
  138. package/dist/cjs/state/modules/read-only-documents.js.map +1 -1
  139. package/dist/cjs/state/modules/read-write-documents.js +9 -8
  140. package/dist/cjs/state/modules/read-write-documents.js.map +1 -1
  141. package/dist/cjs/state/react-builder-preview.js +18 -61
  142. package/dist/cjs/state/react-builder-preview.js.map +1 -1
  143. package/dist/cjs/state/react-page.js +64 -8
  144. package/dist/cjs/state/react-page.js.map +1 -1
  145. package/dist/cjs/{api/resource-types.js → utils/branded.js} +3 -10
  146. package/dist/cjs/utils/branded.js.map +1 -0
  147. package/dist/cjs/utils/canonicalize.js +39 -0
  148. package/dist/cjs/utils/canonicalize.js.map +1 -0
  149. package/dist/cjs/utils/deterministic-uuid.js +35 -0
  150. package/dist/cjs/utils/deterministic-uuid.js.map +1 -0
  151. package/dist/cjs/utils/is-server.js +31 -0
  152. package/dist/cjs/utils/is-server.js.map +1 -0
  153. package/dist/cjs/utils/serializeState.js +42 -0
  154. package/dist/cjs/utils/serializeState.js.map +1 -0
  155. package/dist/cjs/utils/tests/element-data-test-test.js +10 -9
  156. package/dist/cjs/utils/tests/element-data-test-test.js.map +1 -1
  157. package/dist/esm/api/fragments.js +6 -0
  158. package/dist/esm/api/fragments.js.map +1 -0
  159. package/dist/esm/api/index.js +2 -2
  160. package/dist/esm/api/index.js.map +1 -1
  161. package/dist/esm/api/react.js +45 -46
  162. package/dist/esm/api/react.js.map +1 -1
  163. package/dist/esm/api/{graphql/types.js → types.js} +7 -3
  164. package/dist/esm/api/types.js.map +1 -0
  165. package/dist/esm/builder/serialization/control-serialization.js +19 -11
  166. package/dist/esm/builder/serialization/control-serialization.js.map +1 -1
  167. package/dist/esm/components/builtin/Form/Form.js +1 -1
  168. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  169. package/dist/esm/components/builtin/Slot/Slot.js +13 -0
  170. package/dist/esm/components/builtin/Slot/Slot.js.map +1 -0
  171. package/dist/esm/components/builtin/Slot/index.js +5 -0
  172. package/dist/esm/components/builtin/Slot/index.js.map +1 -0
  173. package/dist/esm/components/builtin/Slot/register.js +22 -0
  174. package/dist/esm/components/builtin/Slot/register.js.map +1 -0
  175. package/dist/esm/components/builtin/constants.js +1 -0
  176. package/dist/esm/components/builtin/constants.js.map +1 -1
  177. package/dist/esm/components/builtin/index.js +8 -6
  178. package/dist/esm/components/builtin/index.js.map +1 -1
  179. package/dist/esm/components/builtin/register.js +3 -0
  180. package/dist/esm/components/builtin/register.js.map +1 -1
  181. package/dist/esm/components/hooks/usePageSnippets.js +1 -1
  182. package/dist/esm/components/hooks/usePageSnippets.js.map +1 -1
  183. package/dist/esm/components/page/Page.js +3 -4
  184. package/dist/esm/components/page/Page.js.map +1 -1
  185. package/dist/esm/components/page/PageHead.js +1 -1
  186. package/dist/esm/components/page/PageHead.js.map +1 -1
  187. package/dist/esm/components/shared/BackgroundsContainer/index.js +5 -3
  188. package/dist/esm/components/shared/BackgroundsContainer/index.js.map +1 -1
  189. package/dist/esm/controls/index.js +17 -7
  190. package/dist/esm/controls/index.js.map +1 -1
  191. package/dist/esm/core/index.js +4 -2
  192. package/dist/esm/core/index.js.map +1 -1
  193. package/dist/esm/index.js +2 -2
  194. package/dist/esm/index.js.map +1 -1
  195. package/dist/esm/jest-setup.js +2 -1
  196. package/dist/esm/jest-setup.js.map +1 -1
  197. package/dist/esm/next/api-handler/handlers/manifest.js +4 -2
  198. package/dist/esm/next/api-handler/handlers/manifest.js.map +1 -1
  199. package/dist/esm/next/api-handler/handlers/webhook/index.js +38 -0
  200. package/dist/esm/next/api-handler/handlers/webhook/index.js.map +1 -0
  201. package/dist/esm/next/api-handler/handlers/webhook/site-published.js +11 -0
  202. package/dist/esm/next/api-handler/handlers/webhook/site-published.js.map +1 -0
  203. package/dist/esm/next/api-handler/handlers/webhook/types.js +21 -0
  204. package/dist/esm/next/api-handler/handlers/webhook/types.js.map +1 -0
  205. package/dist/esm/next/api-handler/index.js +7 -7
  206. package/dist/esm/next/api-handler/index.js.map +1 -1
  207. package/dist/esm/next/client.js +133 -17
  208. package/dist/esm/next/client.js.map +1 -1
  209. package/dist/esm/next/components/MakeswiftComponent.js +26 -0
  210. package/dist/esm/next/components/MakeswiftComponent.js.map +1 -0
  211. package/dist/esm/next/components/Slot.js +16 -0
  212. package/dist/esm/next/components/Slot.js.map +1 -0
  213. package/dist/esm/next/components/SlotProvider.js +17 -0
  214. package/dist/esm/next/components/SlotProvider.js.map +1 -0
  215. package/dist/esm/next/components/page.js +24 -20
  216. package/dist/esm/next/components/page.js.map +1 -1
  217. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +4 -3
  218. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  219. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js +3 -3
  220. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -1
  221. package/dist/esm/next/document.js +1 -1
  222. package/dist/esm/next/document.js.map +1 -1
  223. package/dist/esm/next/draft-mode/draft-mode-script.js +7 -3
  224. package/dist/esm/next/draft-mode/draft-mode-script.js.map +1 -1
  225. package/dist/esm/next/index.js +6 -2
  226. package/dist/esm/next/index.js.map +1 -1
  227. package/dist/esm/next/preview-mode.js +4 -1
  228. package/dist/esm/next/preview-mode.js.map +1 -1
  229. package/dist/esm/prop-controllers/introspection.js +2 -2
  230. package/dist/esm/prop-controllers/introspection.js.map +1 -1
  231. package/dist/esm/react.js +2 -4
  232. package/dist/esm/react.js.map +1 -1
  233. package/dist/esm/runtimes/react/components/Document.js +3 -2
  234. package/dist/esm/runtimes/react/components/Document.js.map +1 -1
  235. package/dist/esm/runtimes/react/components/{DocumentReference.js → DocumentRoot.js} +7 -7
  236. package/dist/esm/runtimes/react/components/DocumentRoot.js.map +1 -0
  237. package/dist/esm/runtimes/react/components/Element.js +11 -23
  238. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  239. package/dist/esm/runtimes/react/components/ElementReference.js +3 -1
  240. package/dist/esm/runtimes/react/components/ElementReference.js.map +1 -1
  241. package/dist/esm/runtimes/react/components/ElementRegistration.js +31 -0
  242. package/dist/esm/runtimes/react/components/ElementRegistration.js.map +1 -0
  243. package/dist/esm/runtimes/react/components/LiveProvider.js +9 -7
  244. package/dist/esm/runtimes/react/components/LiveProvider.js.map +1 -1
  245. package/dist/esm/runtimes/react/components/PreviewProvider.js +8 -21
  246. package/dist/esm/runtimes/react/components/PreviewProvider.js.map +1 -1
  247. package/dist/esm/runtimes/react/components/RuntimeProvider.js +23 -5
  248. package/dist/esm/runtimes/react/components/RuntimeProvider.js.map +1 -1
  249. package/dist/esm/runtimes/react/controls/group.js +23 -0
  250. package/dist/esm/runtimes/react/controls/group.js.map +1 -0
  251. package/dist/esm/runtimes/react/hooks/makeswift-api.js +11 -9
  252. package/dist/esm/runtimes/react/hooks/makeswift-api.js.map +1 -1
  253. package/dist/esm/runtimes/react/hooks/use-cache-data.js +11 -0
  254. package/dist/esm/runtimes/react/hooks/use-cache-data.js.map +1 -0
  255. package/dist/esm/runtimes/react/hooks/use-dispatch.js +2 -3
  256. package/dist/esm/runtimes/react/hooks/use-dispatch.js.map +1 -1
  257. package/dist/esm/runtimes/react/hooks/use-document-context.js +22 -0
  258. package/dist/esm/runtimes/react/hooks/use-document-context.js.map +1 -0
  259. package/dist/esm/runtimes/react/hooks/use-element-id.js +1 -1
  260. package/dist/esm/runtimes/react/hooks/use-element-id.js.map +1 -1
  261. package/dist/esm/runtimes/react/hooks/use-react-runtime.js +15 -0
  262. package/dist/esm/runtimes/react/hooks/use-react-runtime.js.map +1 -0
  263. package/dist/esm/runtimes/react/hooks/use-register-document.js +18 -0
  264. package/dist/esm/runtimes/react/hooks/use-register-document.js.map +1 -0
  265. package/dist/esm/runtimes/react/hooks/use-resolved-props.js +1 -1
  266. package/dist/esm/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  267. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js +5 -5
  268. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js.map +1 -1
  269. package/dist/esm/runtimes/react/hooks/use-store.js +6 -3
  270. package/dist/esm/runtimes/react/hooks/use-store.js.map +1 -1
  271. package/dist/esm/runtimes/react/hooks/use-universal-dispatch.js +14 -0
  272. package/dist/esm/runtimes/react/hooks/use-universal-dispatch.js.map +1 -0
  273. package/dist/esm/{next/context/makeswift-host-api-client.js → runtimes/react/host-api-client.js} +1 -1
  274. package/dist/esm/runtimes/react/host-api-client.js.map +1 -0
  275. package/dist/esm/runtimes/react/index.js +5 -5
  276. package/dist/esm/runtimes/react/index.js.map +1 -1
  277. package/dist/esm/runtimes/react/react-runtime.js +0 -24
  278. package/dist/esm/runtimes/react/react-runtime.js.map +1 -1
  279. package/dist/esm/runtimes/react/runtime-core.js +2 -17
  280. package/dist/esm/runtimes/react/runtime-core.js.map +1 -1
  281. package/dist/esm/state/actions.js +29 -14
  282. package/dist/esm/state/actions.js.map +1 -1
  283. package/dist/esm/state/makeswift-api-client.js +103 -18
  284. package/dist/esm/state/makeswift-api-client.js.map +1 -1
  285. package/dist/esm/state/mixins/setup-teardown.js +11 -0
  286. package/dist/esm/state/mixins/setup-teardown.js.map +1 -0
  287. package/dist/esm/state/modules/api-resources.js +66 -25
  288. package/dist/esm/state/modules/api-resources.js.map +1 -1
  289. package/dist/esm/state/modules/element-trees.js +14 -7
  290. package/dist/esm/state/modules/element-trees.js.map +1 -1
  291. package/dist/esm/state/modules/localized-resources-map.js +53 -0
  292. package/dist/esm/state/modules/localized-resources-map.js.map +1 -0
  293. package/dist/esm/state/modules/read-only-documents.js +13 -12
  294. package/dist/esm/state/modules/read-only-documents.js.map +1 -1
  295. package/dist/esm/state/modules/read-write-documents.js +9 -8
  296. package/dist/esm/state/modules/read-write-documents.js.map +1 -1
  297. package/dist/esm/state/react-builder-preview.js +18 -64
  298. package/dist/esm/state/react-builder-preview.js.map +1 -1
  299. package/dist/esm/state/react-page.js +73 -9
  300. package/dist/esm/state/react-page.js.map +1 -1
  301. package/dist/esm/utils/branded.js +1 -0
  302. package/dist/esm/utils/branded.js.map +1 -0
  303. package/dist/esm/utils/canonicalize.js +15 -0
  304. package/dist/esm/utils/canonicalize.js.map +1 -0
  305. package/dist/esm/utils/deterministic-uuid.js +11 -0
  306. package/dist/esm/utils/deterministic-uuid.js.map +1 -0
  307. package/dist/esm/utils/is-server.js +7 -0
  308. package/dist/esm/utils/is-server.js.map +1 -0
  309. package/dist/esm/utils/serializeState.js +18 -0
  310. package/dist/esm/utils/serializeState.js.map +1 -0
  311. package/dist/esm/utils/tests/element-data-test-test.js +10 -9
  312. package/dist/esm/utils/tests/element-data-test-test.js.map +1 -1
  313. package/dist/types/api/{graphql/fragments.d.ts → fragments.d.ts} +1 -1
  314. package/dist/types/api/fragments.d.ts.map +1 -0
  315. package/dist/types/api/index.d.ts +2 -2
  316. package/dist/types/api/index.d.ts.map +1 -1
  317. package/dist/types/api/react.d.ts +28 -22
  318. package/dist/types/api/react.d.ts.map +1 -1
  319. package/dist/types/api/types.d.ts +18 -0
  320. package/dist/types/api/types.d.ts.map +1 -0
  321. package/dist/types/builder/serialization/control-serialization.d.ts.map +1 -1
  322. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  323. package/dist/types/components/builtin/Slot/Slot.d.ts +8 -0
  324. package/dist/types/components/builtin/Slot/Slot.d.ts.map +1 -0
  325. package/dist/types/components/builtin/Slot/index.d.ts +2 -0
  326. package/dist/types/components/builtin/Slot/index.d.ts.map +1 -0
  327. package/dist/types/components/builtin/Slot/register.d.ts +3 -0
  328. package/dist/types/components/builtin/Slot/register.d.ts.map +1 -0
  329. package/dist/types/components/builtin/constants.d.ts +1 -0
  330. package/dist/types/components/builtin/constants.d.ts.map +1 -1
  331. package/dist/types/components/builtin/index.d.ts +1 -0
  332. package/dist/types/components/builtin/index.d.ts.map +1 -1
  333. package/dist/types/components/builtin/register.d.ts.map +1 -1
  334. package/dist/types/components/hooks/usePageSnippets.d.ts +1 -1
  335. package/dist/types/components/hooks/usePageSnippets.d.ts.map +1 -1
  336. package/dist/types/components/page/Page.d.ts +4 -3
  337. package/dist/types/components/page/Page.d.ts.map +1 -1
  338. package/dist/types/components/shared/BackgroundsContainer/index.d.ts.map +1 -1
  339. package/dist/types/controls/index.d.ts +1 -1
  340. package/dist/types/controls/index.d.ts.map +1 -1
  341. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts +4 -4
  342. package/dist/types/core/index.d.ts +1 -1
  343. package/dist/types/core/index.d.ts.map +1 -1
  344. package/dist/types/index.d.ts +1 -1
  345. package/dist/types/index.d.ts.map +1 -1
  346. package/dist/types/locale.d.ts +1 -1
  347. package/dist/types/next/api-handler/handlers/manifest.d.ts +1 -0
  348. package/dist/types/next/api-handler/handlers/manifest.d.ts.map +1 -1
  349. package/dist/types/next/api-handler/handlers/webhook/index.d.ts +21 -0
  350. package/dist/types/next/api-handler/handlers/webhook/index.d.ts.map +1 -0
  351. package/dist/types/next/api-handler/handlers/webhook/site-published.d.ts +4 -0
  352. package/dist/types/next/api-handler/handlers/webhook/site-published.d.ts.map +1 -0
  353. package/dist/types/next/api-handler/handlers/webhook/types.d.ts +121 -0
  354. package/dist/types/next/api-handler/handlers/webhook/types.d.ts.map +1 -0
  355. package/dist/types/next/api-handler/index.d.ts +4 -3
  356. package/dist/types/next/api-handler/index.d.ts.map +1 -1
  357. package/dist/types/next/client.d.ts +356 -50
  358. package/dist/types/next/client.d.ts.map +1 -1
  359. package/dist/types/next/components/MakeswiftComponent.d.ts +10 -0
  360. package/dist/types/next/components/MakeswiftComponent.d.ts.map +1 -0
  361. package/dist/types/next/components/Slot.d.ts +10 -0
  362. package/dist/types/next/components/Slot.d.ts.map +1 -0
  363. package/dist/types/next/components/SlotProvider.d.ts +12 -0
  364. package/dist/types/next/components/SlotProvider.d.ts.map +1 -0
  365. package/dist/types/next/components/page.d.ts +1 -1
  366. package/dist/types/next/components/page.d.ts.map +1 -1
  367. package/dist/types/next/components/tests/controls/font-control.test.d.ts +2 -0
  368. package/dist/types/next/components/tests/controls/font-control.test.d.ts.map +1 -0
  369. package/dist/types/next/components/tests/controls/group-control.test.d.ts +2 -0
  370. package/dist/types/next/components/tests/controls/group-control.test.d.ts.map +1 -0
  371. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts +3 -2
  372. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  373. package/dist/types/next/components/tests/global-element-rendering.test.d.ts +3 -0
  374. package/dist/types/next/components/tests/global-element-rendering.test.d.ts.map +1 -0
  375. package/dist/types/next/components/tests/makeswift-component-rendering.test.d.ts +3 -0
  376. package/dist/types/next/components/tests/makeswift-component-rendering.test.d.ts.map +1 -0
  377. package/dist/types/next/document.d.ts +5 -1
  378. package/dist/types/next/document.d.ts.map +1 -1
  379. package/dist/types/next/draft-mode/draft-mode-script.d.ts.map +1 -1
  380. package/dist/types/next/index.d.ts +3 -1
  381. package/dist/types/next/index.d.ts.map +1 -1
  382. package/dist/types/next/preview-mode.d.ts.map +1 -1
  383. package/dist/types/next/tests/client.get-component-snapshot.test.d.ts +2 -0
  384. package/dist/types/next/tests/client.get-component-snapshot.test.d.ts.map +1 -0
  385. package/dist/types/react.d.ts +1 -1
  386. package/dist/types/react.d.ts.map +1 -1
  387. package/dist/types/runtimes/react/components/Document.d.ts +1 -1
  388. package/dist/types/runtimes/react/components/Document.d.ts.map +1 -1
  389. package/dist/types/runtimes/react/components/DocumentRoot.d.ts +9 -0
  390. package/dist/types/runtimes/react/components/DocumentRoot.d.ts.map +1 -0
  391. package/dist/types/runtimes/react/components/Element.d.ts +3 -3
  392. package/dist/types/runtimes/react/components/Element.d.ts.map +1 -1
  393. package/dist/types/runtimes/react/components/ElementReference.d.ts.map +1 -1
  394. package/dist/types/runtimes/react/components/ElementRegistration.d.ts +10 -0
  395. package/dist/types/runtimes/react/components/ElementRegistration.d.ts.map +1 -0
  396. package/dist/types/runtimes/react/components/LiveProvider.d.ts +2 -10
  397. package/dist/types/runtimes/react/components/LiveProvider.d.ts.map +1 -1
  398. package/dist/types/runtimes/react/components/PreviewProvider.d.ts +2 -10
  399. package/dist/types/runtimes/react/components/PreviewProvider.d.ts.map +1 -1
  400. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts +7 -11
  401. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts.map +1 -1
  402. package/dist/types/runtimes/react/controls/group.d.ts +11 -0
  403. package/dist/types/runtimes/react/controls/group.d.ts.map +1 -0
  404. package/dist/types/runtimes/react/hooks/makeswift-api.d.ts +2 -3
  405. package/dist/types/runtimes/react/hooks/makeswift-api.d.ts.map +1 -1
  406. package/dist/types/runtimes/react/hooks/use-cache-data.d.ts +3 -0
  407. package/dist/types/runtimes/react/hooks/use-cache-data.d.ts.map +1 -0
  408. package/dist/types/runtimes/react/hooks/use-dispatch.d.ts.map +1 -1
  409. package/dist/types/runtimes/react/hooks/use-document-context.d.ts +11 -0
  410. package/dist/types/runtimes/react/hooks/use-document-context.d.ts.map +1 -0
  411. package/dist/types/runtimes/react/hooks/use-react-runtime.d.ts +5 -0
  412. package/dist/types/runtimes/react/hooks/use-react-runtime.d.ts.map +1 -0
  413. package/dist/types/runtimes/react/hooks/use-register-document.d.ts +6 -0
  414. package/dist/types/runtimes/react/hooks/use-register-document.d.ts.map +1 -0
  415. package/dist/types/runtimes/react/hooks/use-store.d.ts +1 -1
  416. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  417. package/dist/types/runtimes/react/hooks/use-universal-dispatch.d.ts +6 -0
  418. package/dist/types/runtimes/react/hooks/use-universal-dispatch.d.ts.map +1 -0
  419. package/dist/types/{next/context/makeswift-host-api-client.d.ts → runtimes/react/host-api-client.d.ts} +1 -1
  420. package/dist/types/runtimes/react/host-api-client.d.ts.map +1 -0
  421. package/dist/types/runtimes/react/index.d.ts +3 -3
  422. package/dist/types/runtimes/react/index.d.ts.map +1 -1
  423. package/dist/types/runtimes/react/react-runtime.d.ts +0 -9
  424. package/dist/types/runtimes/react/react-runtime.d.ts.map +1 -1
  425. package/dist/types/runtimes/react/runtime-core.d.ts +0 -5
  426. package/dist/types/runtimes/react/runtime-core.d.ts.map +1 -1
  427. package/dist/types/slate/test-helpers/slate-test-helper.d.ts +4 -4
  428. package/dist/types/state/actions.d.ts +45 -13
  429. package/dist/types/state/actions.d.ts.map +1 -1
  430. package/dist/types/state/makeswift-api-client.d.ts +18 -11
  431. package/dist/types/state/makeswift-api-client.d.ts.map +1 -1
  432. package/dist/types/state/mixins/setup-teardown.d.ts +7 -0
  433. package/dist/types/state/mixins/setup-teardown.d.ts.map +1 -0
  434. package/dist/types/state/modules/__tests__/api-resources.test.d.ts +2 -0
  435. package/dist/types/state/modules/__tests__/api-resources.test.d.ts.map +1 -0
  436. package/dist/types/state/modules/__tests__/fixtures/element-trees.d.ts +1 -1
  437. package/dist/types/state/modules/__tests__/localized-resources-map.test.d.ts +2 -0
  438. package/dist/types/state/modules/__tests__/localized-resources-map.test.d.ts.map +1 -0
  439. package/dist/types/state/modules/api-resources.d.ts +8 -5
  440. package/dist/types/state/modules/api-resources.d.ts.map +1 -1
  441. package/dist/types/state/modules/element-trees.d.ts +2 -1
  442. package/dist/types/state/modules/element-trees.d.ts.map +1 -1
  443. package/dist/types/state/modules/localized-resources-map.d.ts +13 -0
  444. package/dist/types/state/modules/localized-resources-map.d.ts.map +1 -0
  445. package/dist/types/state/modules/read-only-documents.d.ts +22 -5
  446. package/dist/types/state/modules/read-only-documents.d.ts.map +1 -1
  447. package/dist/types/state/modules/read-write-documents.d.ts +2 -2
  448. package/dist/types/state/modules/read-write-documents.d.ts.map +1 -1
  449. package/dist/types/state/react-builder-preview.d.ts +5 -11
  450. package/dist/types/state/react-builder-preview.d.ts.map +1 -1
  451. package/dist/types/state/react-page.d.ts +8 -6
  452. package/dist/types/state/react-page.d.ts.map +1 -1
  453. package/dist/types/utils/__tests__/serializeState.test.d.ts +2 -0
  454. package/dist/types/utils/__tests__/serializeState.test.d.ts.map +1 -0
  455. package/dist/types/utils/branded.d.ts +7 -0
  456. package/dist/types/utils/branded.d.ts.map +1 -0
  457. package/dist/types/utils/canonicalize.d.ts +7 -0
  458. package/dist/types/utils/canonicalize.d.ts.map +1 -0
  459. package/dist/types/utils/canonicalize.test.d.ts +2 -0
  460. package/dist/types/utils/canonicalize.test.d.ts.map +1 -0
  461. package/dist/types/utils/deterministic-uuid.d.ts +2 -0
  462. package/dist/types/utils/deterministic-uuid.d.ts.map +1 -0
  463. package/dist/types/utils/is-server.d.ts +2 -0
  464. package/dist/types/utils/is-server.d.ts.map +1 -0
  465. package/dist/types/utils/serializeState.d.ts +3 -0
  466. package/dist/types/utils/serializeState.d.ts.map +1 -0
  467. package/dist/types/utils/tests/element-data-test-test.d.ts +6 -3
  468. package/dist/types/utils/tests/element-data-test-test.d.ts.map +1 -1
  469. package/package.json +5 -4
  470. package/dist/cjs/api/graphql/fragments.js.map +0 -1
  471. package/dist/cjs/api/graphql/types.js.map +0 -1
  472. package/dist/cjs/api/resource-types.js.map +0 -1
  473. package/dist/cjs/next/context/makeswift-host-api-client.js.map +0 -1
  474. package/dist/cjs/next/context/react-runtime.js.map +0 -1
  475. package/dist/cjs/runtimes/react/components/DocumentReference.js.map +0 -1
  476. package/dist/cjs/runtimes/react/hooks/use-document-key.js.map +0 -1
  477. package/dist/esm/api/graphql/fragments.js +0 -6
  478. package/dist/esm/api/graphql/fragments.js.map +0 -1
  479. package/dist/esm/api/graphql/types.js.map +0 -1
  480. package/dist/esm/api/resource-types.js +0 -8
  481. package/dist/esm/api/resource-types.js.map +0 -1
  482. package/dist/esm/next/context/makeswift-host-api-client.js.map +0 -1
  483. package/dist/esm/next/context/react-runtime.js +0 -19
  484. package/dist/esm/next/context/react-runtime.js.map +0 -1
  485. package/dist/esm/runtimes/react/components/DocumentReference.js.map +0 -1
  486. package/dist/esm/runtimes/react/hooks/use-document-key.js +0 -11
  487. package/dist/esm/runtimes/react/hooks/use-document-key.js.map +0 -1
  488. package/dist/types/api/graphql/fragments.d.ts.map +0 -1
  489. package/dist/types/api/graphql/types.d.ts +0 -8
  490. package/dist/types/api/graphql/types.d.ts.map +0 -1
  491. package/dist/types/api/resource-types.d.ts +0 -20
  492. package/dist/types/api/resource-types.d.ts.map +0 -1
  493. package/dist/types/next/context/makeswift-host-api-client.d.ts.map +0 -1
  494. package/dist/types/next/context/react-runtime.d.ts +0 -8
  495. package/dist/types/next/context/react-runtime.d.ts.map +0 -1
  496. package/dist/types/runtimes/react/components/DocumentReference.d.ts +0 -9
  497. package/dist/types/runtimes/react/components/DocumentReference.d.ts.map +0 -1
  498. package/dist/types/runtimes/react/hooks/use-document-key.d.ts +0 -4
  499. package/dist/types/runtimes/react/hooks/use-document-key.d.ts.map +0 -1
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
+ var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
5
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
8
  var __export = (target, all) => {
7
9
  for (var name in all)
@@ -15,6 +17,14 @@ var __copyProps = (to, from, except, desc) => {
15
17
  }
16
18
  return to;
17
19
  };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
18
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
29
  var draft_mode_script_exports = {};
20
30
  __export(draft_mode_script_exports, {
@@ -23,6 +33,7 @@ __export(draft_mode_script_exports, {
23
33
  module.exports = __toCommonJS(draft_mode_script_exports);
24
34
  var import_jsx_runtime = require("react/jsx-runtime");
25
35
  var import_headers = require("next/headers");
36
+ var import_script = __toESM(require("next/script"));
26
37
  var import_react = require("../../react");
27
38
  async function DraftModeScript({ appOrigin = "https://app.makeswift.com" }) {
28
39
  const { isEnabled: isDraftModeEnabled } = await (0, import_headers.draftMode)();
@@ -54,9 +65,12 @@ if (window.parent !== window) {
54
65
  return originalFetch.call(this, resource, options)
55
66
  }
56
67
 
68
+ const newHeaders = new Headers(request.headers)
69
+ newHeaders.set(headerName, secret)
70
+
57
71
  return originalFetch.call(
58
72
  this,
59
- new Request(request, { headers: { [headerName]: secret } }),
73
+ new Request(request, { headers: newHeaders })
60
74
  )
61
75
  }
62
76
  }
@@ -99,7 +113,7 @@ if (window.parent !== window) {
99
113
  `;
100
114
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
101
115
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
102
- "script",
116
+ import_script.default,
103
117
  {
104
118
  id: "makeswift-draft-mode",
105
119
  type: "module",
@@ -107,7 +121,7 @@ if (window.parent !== window) {
107
121
  }
108
122
  ),
109
123
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
110
- "script",
124
+ import_script.default,
111
125
  {
112
126
  id: "makeswift-connection-check",
113
127
  type: "module",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/next/draft-mode/draft-mode-script.tsx"],"sourcesContent":["import { draftMode } from 'next/headers'\nimport { ActionTypes } from '../../react'\n\ntype Props = {\n appOrigin?: string\n}\n\nexport async function DraftModeScript({ appOrigin = 'https://app.makeswift.com' }: Props) {\n const { isEnabled: isDraftModeEnabled } = await draftMode()\n const draftModeScript = `\nconst isDraft = ${isDraftModeEnabled}\nconst appOrigin = '${appOrigin.replace(\"'\", \"\\\\'\")}'\nconst searchParamName = 'x-makeswift-draft-mode'\nconst headerName = 'X-Makeswift-Draft-Mode'\nconst originalUrl = new URL(window.location.href)\n\nif (window.parent !== window) {\n window.addEventListener('message', event => {\n if (event.origin === appOrigin && event.data.type === 'makeswift_draft_mode') {\n const { secret } = event.data\n\n if (!isDraft && !originalUrl.searchParams.has(searchParamName)) {\n const url = new URL(originalUrl)\n\n url.searchParams.set(searchParamName, secret)\n\n window.location.replace(url)\n } else {\n const originalFetch = window.fetch\n\n window.fetch = function patchedFetch(resource, options) {\n const request = new Request(resource, options)\n\n if (new URL(request.url).origin !== window.location.origin) {\n return originalFetch.call(this, resource, options)\n }\n\n return originalFetch.call(\n this,\n new Request(request, { headers: { [headerName]: secret } }),\n )\n }\n }\n }\n })\n\n window.parent.postMessage({ type: 'makeswift_draft_mode' }, appOrigin)\n}\n\nif (originalUrl.searchParams.has(searchParamName)) {\n const url = new URL(originalUrl)\n\n url.searchParams.delete(searchParamName)\n\n window.history.replaceState(null, '', url)\n}\n`\n\n const makeswiftConnectionCheckScript = `\nconst appOrigin = '${appOrigin.replace(\"'\", \"\\\\'\")}'\n\nif (window.parent !== window) {\n window.addEventListener('message', event => {\n if (\n event.origin === appOrigin && \n event.data.type === '${ActionTypes.MAKESWIFT_CONNECTION_INIT}'\n ) {\n setInterval(() => {\n window.parent.postMessage({ \n type: '${ActionTypes.MAKESWIFT_CONNECTION_CHECK}',\n payload: { \n currentUrl: window.location.href \n }\n }, appOrigin)\n }, 20)\n }\n })\n\n window.parent.postMessage({ type: '${ActionTypes.MAKESWIFT_CONNECTION_INIT}' }, appOrigin)\n}\n`\n\n return (\n <>\n <script\n id=\"makeswift-draft-mode\"\n type=\"module\"\n dangerouslySetInnerHTML={{ __html: draftModeScript }}\n />\n <script\n id=\"makeswift-connection-check\"\n type=\"module\"\n dangerouslySetInnerHTML={{ __html: makeswiftConnectionCheckScript }}\n />\n </>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAmFI;AAnFJ,qBAA0B;AAC1B,mBAA4B;AAM5B,eAAsB,gBAAgB,EAAE,YAAY,4BAA4B,GAAU;AACxF,QAAM,EAAE,WAAW,mBAAmB,IAAI,UAAM,0BAAU;AAC1D,QAAM,kBAAkB;AAAA,kBACR,kBAAkB;AAAA,qBACf,UAAU,QAAQ,KAAK,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA+ChD,QAAM,iCAAiC;AAAA,qBACpB,UAAU,QAAQ,KAAK,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAMrB,yBAAY,yBAAyB;AAAA;AAAA;AAAA;AAAA,mBAI/C,yBAAY,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uCASlB,yBAAY,yBAAyB;AAAA;AAAA;AAI1E,SACE,4EACE;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,MAAK;AAAA,QACL,yBAAyB,EAAE,QAAQ,gBAAgB;AAAA;AAAA,IACrD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,MAAK;AAAA,QACL,yBAAyB,EAAE,QAAQ,+BAA+B;AAAA;AAAA,IACpE;AAAA,KACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../src/next/draft-mode/draft-mode-script.tsx"],"sourcesContent":["import { draftMode } from 'next/headers'\nimport Script from 'next/script'\nimport { ActionTypes } from '../../react'\n\ntype Props = {\n appOrigin?: string\n}\n\nexport async function DraftModeScript({ appOrigin = 'https://app.makeswift.com' }: Props) {\n const { isEnabled: isDraftModeEnabled } = await draftMode()\n const draftModeScript = `\nconst isDraft = ${isDraftModeEnabled}\nconst appOrigin = '${appOrigin.replace(\"'\", \"\\\\'\")}'\nconst searchParamName = 'x-makeswift-draft-mode'\nconst headerName = 'X-Makeswift-Draft-Mode'\nconst originalUrl = new URL(window.location.href)\n\nif (window.parent !== window) {\n window.addEventListener('message', event => {\n if (event.origin === appOrigin && event.data.type === 'makeswift_draft_mode') {\n const { secret } = event.data\n\n if (!isDraft && !originalUrl.searchParams.has(searchParamName)) {\n const url = new URL(originalUrl)\n\n url.searchParams.set(searchParamName, secret)\n\n window.location.replace(url)\n } else {\n const originalFetch = window.fetch\n\n window.fetch = function patchedFetch(resource, options) {\n const request = new Request(resource, options)\n\n if (new URL(request.url).origin !== window.location.origin) {\n return originalFetch.call(this, resource, options)\n }\n\n const newHeaders = new Headers(request.headers)\n newHeaders.set(headerName, secret)\n\n return originalFetch.call(\n this,\n new Request(request, { headers: newHeaders })\n )\n }\n }\n }\n })\n\n window.parent.postMessage({ type: 'makeswift_draft_mode' }, appOrigin)\n}\n\nif (originalUrl.searchParams.has(searchParamName)) {\n const url = new URL(originalUrl)\n\n url.searchParams.delete(searchParamName)\n\n window.history.replaceState(null, '', url)\n}\n`\n\n const makeswiftConnectionCheckScript = `\nconst appOrigin = '${appOrigin.replace(\"'\", \"\\\\'\")}'\n\nif (window.parent !== window) {\n window.addEventListener('message', event => {\n if (\n event.origin === appOrigin && \n event.data.type === '${ActionTypes.MAKESWIFT_CONNECTION_INIT}'\n ) {\n setInterval(() => {\n window.parent.postMessage({ \n type: '${ActionTypes.MAKESWIFT_CONNECTION_CHECK}',\n payload: { \n currentUrl: window.location.href \n }\n }, appOrigin)\n }, 20)\n }\n })\n\n window.parent.postMessage({ type: '${ActionTypes.MAKESWIFT_CONNECTION_INIT}' }, appOrigin)\n}\n`\n\n return (\n <>\n <Script\n id=\"makeswift-draft-mode\"\n type=\"module\"\n dangerouslySetInnerHTML={{ __html: draftModeScript }}\n />\n <Script\n id=\"makeswift-connection-check\"\n type=\"module\"\n dangerouslySetInnerHTML={{ __html: makeswiftConnectionCheckScript }}\n />\n </>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuFI;AAvFJ,qBAA0B;AAC1B,oBAAmB;AACnB,mBAA4B;AAM5B,eAAsB,gBAAgB,EAAE,YAAY,4BAA4B,GAAU;AACxF,QAAM,EAAE,WAAW,mBAAmB,IAAI,UAAM,0BAAU;AAC1D,QAAM,kBAAkB;AAAA,kBACR,kBAAkB;AAAA,qBACf,UAAU,QAAQ,KAAK,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkDhD,QAAM,iCAAiC;AAAA,qBACpB,UAAU,QAAQ,KAAK,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAMrB,yBAAY,yBAAyB;AAAA;AAAA;AAAA;AAAA,mBAI/C,yBAAY,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uCASlB,yBAAY,yBAAyB;AAAA;AAAA;AAI1E,SACE,4EACE;AAAA;AAAA,MAAC,cAAAA;AAAA,MAAA;AAAA,QACC,IAAG;AAAA,QACH,MAAK;AAAA,QACL,yBAAyB,EAAE,QAAQ,gBAAgB;AAAA;AAAA,IACrD;AAAA,IACA;AAAA,MAAC,cAAAA;AAAA,MAAA;AAAA,QACC,IAAG;AAAA,QACH,MAAK;AAAA,QACL,yBAAyB,EAAE,QAAQ,+BAA+B;AAAA;AAAA,IACpE;AAAA,KACF;AAEJ;","names":["Script"]}
@@ -19,23 +19,29 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var next_exports = {};
20
20
  __export(next_exports, {
21
21
  Makeswift: () => import_client.Makeswift,
22
+ MakeswiftComponent: () => import_MakeswiftComponent.MakeswiftComponent,
22
23
  Page: () => import_page.Page,
23
24
  PreviewModeScript: () => import_preview_mode.PreviewModeScript,
24
- ReactRuntimeProvider: () => import_react_runtime.ReactRuntimeProvider,
25
- RootStyleRegistry: () => import_root_style_registry.RootStyleRegistry
25
+ ReactRuntimeProvider: () => import_react.ReactRuntimeProvider,
26
+ RootStyleRegistry: () => import_root_style_registry.RootStyleRegistry,
27
+ Slot: () => import_Slot.Slot
26
28
  });
27
29
  module.exports = __toCommonJS(next_exports);
28
30
  var import_page = require("./components/page");
31
+ var import_MakeswiftComponent = require("./components/MakeswiftComponent");
32
+ var import_Slot = require("./components/Slot");
29
33
  var import_client = require("./client");
30
34
  var import_preview_mode = require("./preview-mode");
31
35
  var import_root_style_registry = require("./root-style-registry");
32
- var import_react_runtime = require("./context/react-runtime");
36
+ var import_react = require("../runtimes/react/");
33
37
  // Annotate the CommonJS export names for ESM import in node:
34
38
  0 && (module.exports = {
35
39
  Makeswift,
40
+ MakeswiftComponent,
36
41
  Page,
37
42
  PreviewModeScript,
38
43
  ReactRuntimeProvider,
39
- RootStyleRegistry
44
+ RootStyleRegistry,
45
+ Slot
40
46
  });
41
47
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/next/index.tsx"],"sourcesContent":["export type { PageProps } from './components/page'\nexport { Page } from './components/page'\nexport type { MakeswiftPage, MakeswiftPageDocument, MakeswiftPageSnapshot, Sitemap } from './client'\nexport { Makeswift } from './client'\nexport type { MakeswiftPreviewData } from './preview-mode'\nexport { PreviewModeScript } from './preview-mode'\nexport { RootStyleRegistry } from './root-style-registry'\nexport { ReactRuntimeProvider } from './context/react-runtime'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAqB;AAErB,oBAA0B;AAE1B,0BAAkC;AAClC,iCAAkC;AAClC,2BAAqC;","names":[]}
1
+ {"version":3,"sources":["../../../src/next/index.tsx"],"sourcesContent":["export type { PageProps } from './components/page'\nexport { Page } from './components/page'\nexport { MakeswiftComponent } from './components/MakeswiftComponent'\nexport { Slot } from './components/Slot'\nexport type { MakeswiftPage, MakeswiftPageDocument, MakeswiftPageSnapshot, Sitemap } from './client'\nexport { Makeswift } from './client'\nexport type { MakeswiftPreviewData } from './preview-mode'\nexport { PreviewModeScript } from './preview-mode'\nexport { RootStyleRegistry } from './root-style-registry'\nexport { ReactRuntimeProvider } from '../runtimes/react/'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAqB;AACrB,gCAAmC;AACnC,kBAAqB;AAErB,oBAA0B;AAE1B,0BAAkC;AAClC,iCAAkC;AAClC,mBAAqC;","names":[]}
@@ -70,10 +70,13 @@ if (window.parent !== window) {
70
70
  if (new URL(request.url).origin !== window.location.origin) {
71
71
  return originalFetch.call(this, resource, options)
72
72
  }
73
+
74
+ const newHeaders = new Headers(request.headers)
75
+ newHeaders.set(headerName, secret)
73
76
 
74
77
  return originalFetch.call(
75
78
  this,
76
- new Request(request, { headers: { [headerName]: secret } }),
79
+ new Request(request, { headers: newHeaders })
77
80
  )
78
81
  }
79
82
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/next/preview-mode.tsx"],"sourcesContent":["import { PreviewData } from 'next'\nimport { z } from 'zod'\nimport { ActionTypes } from '../react'\n\nexport const makeswiftSiteVersionSchema = z.enum(['Live', 'Working'])\nexport const MakeswiftSiteVersion = makeswiftSiteVersionSchema.Enum\nexport type MakeswiftSiteVersion = z.infer<typeof makeswiftSiteVersionSchema>\n\nconst makeswiftPreviewDataSchema = z.object({\n makeswift: z.literal(true),\n siteVersion: makeswiftSiteVersionSchema,\n})\nexport type MakeswiftPreviewData = z.infer<typeof makeswiftPreviewDataSchema>\n\nexport function getMakeswiftSiteVersion(previewData: PreviewData): MakeswiftSiteVersion | null {\n const result = makeswiftPreviewDataSchema.safeParse(previewData)\n\n if (result.success) return result.data.siteVersion\n\n return null\n}\n\ntype Props = {\n isPreview?: boolean\n appOrigin?: string\n}\n\nexport function PreviewModeScript({\n isPreview = false,\n appOrigin = 'https://app.makeswift.com',\n}: Props) {\n const previewModeScript = `\nconst isPreview = ${isPreview}\nconst appOrigin = '${appOrigin.replace(\"'\", \"\\\\'\")}'\nconst searchParamName = 'x-makeswift-preview-mode'\nconst headerName = 'X-Makeswift-Preview-Mode'\nconst originalUrl = new URL(window.location.href)\n\nif (window.parent !== window) {\n window.addEventListener('message', event => {\n if (event.origin === appOrigin && event.data.type === 'makeswift_preview_mode') {\n const { secret } = event.data\n\n if (!isPreview && !originalUrl.searchParams.has(searchParamName)) {\n const url = new URL(originalUrl)\n\n url.searchParams.set(searchParamName, secret)\n\n window.location.replace(url)\n } else {\n const originalFetch = window.fetch\n\n window.fetch = function patchedFetch(resource, options) {\n const request = new Request(resource, options)\n\n if (new URL(request.url).origin !== window.location.origin) {\n return originalFetch.call(this, resource, options)\n }\n\n return originalFetch.call(\n this,\n new Request(request, { headers: { [headerName]: secret } }),\n )\n }\n }\n }\n })\n\n window.parent.postMessage({ type: 'makeswift_preview_mode' }, appOrigin)\n}\n\nif (originalUrl.searchParams.has(searchParamName)) {\n const url = new URL(originalUrl)\n\n url.searchParams.delete(searchParamName)\n\n window.history.replaceState(null, '', url)\n}\n`\n\n const makeswiftConnectionCheckScript = `\nconst appOrigin = '${appOrigin.replace(\"'\", \"\\\\'\")}'\n\nif (window.parent !== window) {\n window.addEventListener('message', event => {\n if (\n event.origin === appOrigin && \n event.data.type === '${ActionTypes.MAKESWIFT_CONNECTION_INIT}'\n ) {\n setInterval(() => {\n window.parent.postMessage({ \n type: '${ActionTypes.MAKESWIFT_CONNECTION_CHECK}',\n payload: { \n currentUrl: window.location.href \n }\n }, appOrigin)\n }, 20)\n }\n })\n\n window.parent.postMessage({ type: '${ActionTypes.MAKESWIFT_CONNECTION_INIT}' }, appOrigin)\n}\n`\n\n return (\n <>\n <script\n id=\"makeswift-preview-mode\"\n type=\"module\"\n dangerouslySetInnerHTML={{ __html: previewModeScript }}\n />\n <script\n id=\"makeswift-connection-check\"\n type=\"module\"\n dangerouslySetInnerHTML={{ __html: makeswiftConnectionCheckScript }}\n />\n </>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyGI;AAxGJ,iBAAkB;AAClB,mBAA4B;AAErB,MAAM,6BAA6B,aAAE,KAAK,CAAC,QAAQ,SAAS,CAAC;AAC7D,MAAM,uBAAuB,2BAA2B;AAG/D,MAAM,6BAA6B,aAAE,OAAO;AAAA,EAC1C,WAAW,aAAE,QAAQ,IAAI;AAAA,EACzB,aAAa;AACf,CAAC;AAGM,SAAS,wBAAwB,aAAuD;AAC7F,QAAM,SAAS,2BAA2B,UAAU,WAAW;AAE/D,MAAI,OAAO;AAAS,WAAO,OAAO,KAAK;AAEvC,SAAO;AACT;AAOO,SAAS,kBAAkB;AAAA,EAChC,YAAY;AAAA,EACZ,YAAY;AACd,GAAU;AACR,QAAM,oBAAoB;AAAA,oBACR,SAAS;AAAA,qBACR,UAAU,QAAQ,KAAK,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA+ChD,QAAM,iCAAiC;AAAA,qBACpB,UAAU,QAAQ,KAAK,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAMrB,yBAAY,yBAAyB;AAAA;AAAA;AAAA;AAAA,mBAI/C,yBAAY,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uCASlB,yBAAY,yBAAyB;AAAA;AAAA;AAI1E,SACE,4EACE;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,MAAK;AAAA,QACL,yBAAyB,EAAE,QAAQ,kBAAkB;AAAA;AAAA,IACvD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,MAAK;AAAA,QACL,yBAAyB,EAAE,QAAQ,+BAA+B;AAAA;AAAA,IACpE;AAAA,KACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../src/next/preview-mode.tsx"],"sourcesContent":["import { PreviewData } from 'next'\nimport { z } from 'zod'\nimport { ActionTypes } from '../react'\n\nexport const makeswiftSiteVersionSchema = z.enum(['Live', 'Working'])\nexport const MakeswiftSiteVersion = makeswiftSiteVersionSchema.Enum\nexport type MakeswiftSiteVersion = z.infer<typeof makeswiftSiteVersionSchema>\n\nconst makeswiftPreviewDataSchema = z.object({\n makeswift: z.literal(true),\n siteVersion: makeswiftSiteVersionSchema,\n})\nexport type MakeswiftPreviewData = z.infer<typeof makeswiftPreviewDataSchema>\n\nexport function getMakeswiftSiteVersion(previewData: PreviewData): MakeswiftSiteVersion | null {\n const result = makeswiftPreviewDataSchema.safeParse(previewData)\n\n if (result.success) return result.data.siteVersion\n\n return null\n}\n\ntype Props = {\n isPreview?: boolean\n appOrigin?: string\n}\n\nexport function PreviewModeScript({\n isPreview = false,\n appOrigin = 'https://app.makeswift.com',\n}: Props) {\n const previewModeScript = `\nconst isPreview = ${isPreview}\nconst appOrigin = '${appOrigin.replace(\"'\", \"\\\\'\")}'\nconst searchParamName = 'x-makeswift-preview-mode'\nconst headerName = 'X-Makeswift-Preview-Mode'\nconst originalUrl = new URL(window.location.href)\n\nif (window.parent !== window) {\n window.addEventListener('message', event => {\n if (event.origin === appOrigin && event.data.type === 'makeswift_preview_mode') {\n const { secret } = event.data\n\n if (!isPreview && !originalUrl.searchParams.has(searchParamName)) {\n const url = new URL(originalUrl)\n\n url.searchParams.set(searchParamName, secret)\n\n window.location.replace(url)\n } else {\n const originalFetch = window.fetch\n\n window.fetch = function patchedFetch(resource, options) {\n const request = new Request(resource, options)\n\n if (new URL(request.url).origin !== window.location.origin) {\n return originalFetch.call(this, resource, options)\n }\n \n const newHeaders = new Headers(request.headers)\n newHeaders.set(headerName, secret)\n\n return originalFetch.call(\n this,\n new Request(request, { headers: newHeaders })\n )\n }\n }\n }\n })\n\n window.parent.postMessage({ type: 'makeswift_preview_mode' }, appOrigin)\n}\n\nif (originalUrl.searchParams.has(searchParamName)) {\n const url = new URL(originalUrl)\n\n url.searchParams.delete(searchParamName)\n\n window.history.replaceState(null, '', url)\n}\n`\n\n const makeswiftConnectionCheckScript = `\nconst appOrigin = '${appOrigin.replace(\"'\", \"\\\\'\")}'\n\nif (window.parent !== window) {\n window.addEventListener('message', event => {\n if (\n event.origin === appOrigin && \n event.data.type === '${ActionTypes.MAKESWIFT_CONNECTION_INIT}'\n ) {\n setInterval(() => {\n window.parent.postMessage({ \n type: '${ActionTypes.MAKESWIFT_CONNECTION_CHECK}',\n payload: { \n currentUrl: window.location.href \n }\n }, appOrigin)\n }, 20)\n }\n })\n\n window.parent.postMessage({ type: '${ActionTypes.MAKESWIFT_CONNECTION_INIT}' }, appOrigin)\n}\n`\n\n return (\n <>\n <script\n id=\"makeswift-preview-mode\"\n type=\"module\"\n dangerouslySetInnerHTML={{ __html: previewModeScript }}\n />\n <script\n id=\"makeswift-connection-check\"\n type=\"module\"\n dangerouslySetInnerHTML={{ __html: makeswiftConnectionCheckScript }}\n />\n </>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA4GI;AA3GJ,iBAAkB;AAClB,mBAA4B;AAErB,MAAM,6BAA6B,aAAE,KAAK,CAAC,QAAQ,SAAS,CAAC;AAC7D,MAAM,uBAAuB,2BAA2B;AAG/D,MAAM,6BAA6B,aAAE,OAAO;AAAA,EAC1C,WAAW,aAAE,QAAQ,IAAI;AAAA,EACzB,aAAa;AACf,CAAC;AAGM,SAAS,wBAAwB,aAAuD;AAC7F,QAAM,SAAS,2BAA2B,UAAU,WAAW;AAE/D,MAAI,OAAO;AAAS,WAAO,OAAO,KAAK;AAEvC,SAAO;AACT;AAOO,SAAS,kBAAkB;AAAA,EAChC,YAAY;AAAA,EACZ,YAAY;AACd,GAAU;AACR,QAAM,oBAAoB;AAAA,oBACR,SAAS;AAAA,qBACR,UAAU,QAAQ,KAAK,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkDhD,QAAM,iCAAiC;AAAA,qBACpB,UAAU,QAAQ,KAAK,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAMrB,yBAAY,yBAAyB;AAAA;AAAA;AAAA;AAAA,mBAI/C,yBAAY,0BAA0B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uCASlB,yBAAY,yBAAyB;AAAA;AAAA;AAI1E,SACE,4EACE;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,MAAK;AAAA,QACL,yBAAyB,EAAE,QAAQ,kBAAkB;AAAA;AAAA,IACvD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,IAAG;AAAA,QACH,MAAK;AAAA,QACL,yBAAyB,EAAE,QAAQ,+BAA+B;AAAA;AAAA,IACpE;AAAA,KACF;AAEJ;","names":[]}
@@ -72,7 +72,7 @@ function getSwatchIds(descriptor, prop) {
72
72
  return (0, import_prop_controllers.getNavigationLinksPropControllerSwatchIds)(prop);
73
73
  }
74
74
  case import_prop_controllers.Types.ResponsiveColor:
75
- return (0, import_prop_controllers.getResponsiveColorPropControllerDataSawtchIds)(prop);
75
+ return (0, import_prop_controllers.getResponsiveColorPropControllerDataSwatchIds)(prop);
76
76
  case import_prop_controllers.Types.Shadows:
77
77
  return (0, import_prop_controllers.getShadowsPropControllerDataSwatchIds)(prop);
78
78
  case import_deleted.DELETED_PROP_CONTROLLER_TYPES.RichText: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prop-controllers/introspection.ts"],"sourcesContent":["import { type Descriptor, isLegacyDescriptor } from './descriptors'\nimport {\n introspectRichTextData,\n Targets,\n type Data,\n type Element,\n type RichTextValue,\n} from '@makeswift/controls'\n\nimport {\n getLinkPropControllerPageIds,\n getResponsiveColorPropControllerDataSawtchIds,\n getShadowsPropControllerDataSwatchIds,\n LinkPropControllerData,\n Types as PropControllerTypes,\n ResponsiveColorData,\n ShadowsPropControllerData,\n getBorderPropControllerDataSwatchIds,\n TablePropControllerData,\n getTablePropControllerDataTableIds,\n getNavigationLinksPropControllerPageIds,\n NavigationLinksPropControllerData,\n getNavigationLinksPropControllerSwatchIds,\n BorderPropControllerData,\n getElementIDPropControllerDataElementID,\n ElementIDPropControllerData,\n getGridPropControllerElementChildren,\n GridPropControllerData,\n getImagePropControllerFileIds,\n ImagePropControllerData,\n getImagesPropControllerFileIds,\n ImagesPropControllerData,\n getBackgroundsPropControllerFileIds,\n getBackgroundsPropControllerSwatchIds,\n BackgroundsPropControllerData,\n} from '@makeswift/prop-controllers'\n\nimport { DELETED_PROP_CONTROLLER_TYPES } from './deleted'\n\nexport function getElementChildren<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): Element[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.ChildrenElement)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Grid:\n return getGridPropControllerElementChildren(prop as GridPropControllerData | undefined)\n\n default:\n return []\n }\n}\n\nexport function getElementId<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string | null {\n if (prop == null) return null\n\n if (!isLegacyDescriptor(descriptor)) {\n return null\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.ElementID:\n return getElementIDPropControllerDataElementID(prop as ElementIDPropControllerData) ?? null\n\n default:\n return null\n }\n}\n\nexport function getSwatchIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.Swatch)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Backgrounds:\n return getBackgroundsPropControllerSwatchIds(prop as BackgroundsPropControllerData)\n\n case PropControllerTypes.Border:\n return getBorderPropControllerDataSwatchIds(prop as BorderPropControllerData)\n\n case PropControllerTypes.NavigationLinks: {\n return getNavigationLinksPropControllerSwatchIds(prop as NavigationLinksPropControllerData)\n }\n\n case PropControllerTypes.ResponsiveColor:\n return getResponsiveColorPropControllerDataSawtchIds(prop as ResponsiveColorData)\n\n case PropControllerTypes.Shadows:\n return getShadowsPropControllerDataSwatchIds(prop as ShadowsPropControllerData)\n\n case DELETED_PROP_CONTROLLER_TYPES.RichText: {\n return introspectRichTextData(prop as RichTextValue, Targets.Swatch)\n }\n\n default:\n return []\n }\n}\n\nexport function getFileIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.File)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Backgrounds:\n return getBackgroundsPropControllerFileIds(prop as BackgroundsPropControllerData)\n\n case PropControllerTypes.Image: {\n return getImagePropControllerFileIds(prop as ImagePropControllerData)\n }\n\n case PropControllerTypes.Images: {\n return getImagesPropControllerFileIds(prop as ImagesPropControllerData)\n }\n\n default:\n return []\n }\n}\n\nexport function getTypographyIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.Typography)\n }\n\n switch (descriptor.type) {\n case DELETED_PROP_CONTROLLER_TYPES.RichText: {\n return introspectRichTextData(prop as RichTextValue, Targets.Typography)\n }\n\n default:\n return []\n }\n}\n\nexport function getTableIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.Table)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Table: {\n return getTablePropControllerDataTableIds(prop as TablePropControllerData)\n }\n\n default:\n return []\n }\n}\n\nexport function getPageIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.Page)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Link: {\n return getLinkPropControllerPageIds(prop as LinkPropControllerData)\n }\n\n case PropControllerTypes.NavigationLinks: {\n return getNavigationLinksPropControllerPageIds(prop as NavigationLinksPropControllerData)\n }\n\n case DELETED_PROP_CONTROLLER_TYPES.RichText: {\n return introspectRichTextData(prop as RichTextValue, Targets.Page)\n }\n\n default:\n return []\n }\n}\n"],"mappings":"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","names":["PropControllerTypes"]}
1
+ {"version":3,"sources":["../../../src/prop-controllers/introspection.ts"],"sourcesContent":["import { type Descriptor, isLegacyDescriptor } from './descriptors'\nimport {\n introspectRichTextData,\n Targets,\n type Data,\n type Element,\n type RichTextValue,\n} from '@makeswift/controls'\n\nimport {\n getLinkPropControllerPageIds,\n getResponsiveColorPropControllerDataSwatchIds,\n getShadowsPropControllerDataSwatchIds,\n LinkPropControllerData,\n Types as PropControllerTypes,\n ResponsiveColorData,\n ShadowsPropControllerData,\n getBorderPropControllerDataSwatchIds,\n TablePropControllerData,\n getTablePropControllerDataTableIds,\n getNavigationLinksPropControllerPageIds,\n NavigationLinksPropControllerData,\n getNavigationLinksPropControllerSwatchIds,\n BorderPropControllerData,\n getElementIDPropControllerDataElementID,\n ElementIDPropControllerData,\n getGridPropControllerElementChildren,\n GridPropControllerData,\n getImagePropControllerFileIds,\n ImagePropControllerData,\n getImagesPropControllerFileIds,\n ImagesPropControllerData,\n getBackgroundsPropControllerFileIds,\n getBackgroundsPropControllerSwatchIds,\n BackgroundsPropControllerData,\n} from '@makeswift/prop-controllers'\n\nimport { DELETED_PROP_CONTROLLER_TYPES } from './deleted'\n\nexport function getElementChildren<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): Element[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.ChildrenElement)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Grid:\n return getGridPropControllerElementChildren(prop as GridPropControllerData | undefined)\n\n default:\n return []\n }\n}\n\nexport function getElementId<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string | null {\n if (prop == null) return null\n\n if (!isLegacyDescriptor(descriptor)) {\n return null\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.ElementID:\n return getElementIDPropControllerDataElementID(prop as ElementIDPropControllerData) ?? null\n\n default:\n return null\n }\n}\n\nexport function getSwatchIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.Swatch)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Backgrounds:\n return getBackgroundsPropControllerSwatchIds(prop as BackgroundsPropControllerData)\n\n case PropControllerTypes.Border:\n return getBorderPropControllerDataSwatchIds(prop as BorderPropControllerData)\n\n case PropControllerTypes.NavigationLinks: {\n return getNavigationLinksPropControllerSwatchIds(prop as NavigationLinksPropControllerData)\n }\n\n case PropControllerTypes.ResponsiveColor:\n return getResponsiveColorPropControllerDataSwatchIds(prop as ResponsiveColorData)\n\n case PropControllerTypes.Shadows:\n return getShadowsPropControllerDataSwatchIds(prop as ShadowsPropControllerData)\n\n case DELETED_PROP_CONTROLLER_TYPES.RichText: {\n return introspectRichTextData(prop as RichTextValue, Targets.Swatch)\n }\n\n default:\n return []\n }\n}\n\nexport function getFileIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.File)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Backgrounds:\n return getBackgroundsPropControllerFileIds(prop as BackgroundsPropControllerData)\n\n case PropControllerTypes.Image: {\n return getImagePropControllerFileIds(prop as ImagePropControllerData)\n }\n\n case PropControllerTypes.Images: {\n return getImagesPropControllerFileIds(prop as ImagesPropControllerData)\n }\n\n default:\n return []\n }\n}\n\nexport function getTypographyIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.Typography)\n }\n\n switch (descriptor.type) {\n case DELETED_PROP_CONTROLLER_TYPES.RichText: {\n return introspectRichTextData(prop as RichTextValue, Targets.Typography)\n }\n\n default:\n return []\n }\n}\n\nexport function getTableIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.Table)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Table: {\n return getTablePropControllerDataTableIds(prop as TablePropControllerData)\n }\n\n default:\n return []\n }\n}\n\nexport function getPageIds<T extends Data>(\n descriptor: Descriptor<T>,\n prop: T | undefined,\n): string[] {\n if (prop == null) return []\n\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.introspect(prop, Targets.Page)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Link: {\n return getLinkPropControllerPageIds(prop as LinkPropControllerData)\n }\n\n case PropControllerTypes.NavigationLinks: {\n return getNavigationLinksPropControllerPageIds(prop as NavigationLinksPropControllerData)\n }\n\n case DELETED_PROP_CONTROLLER_TYPES.RichText: {\n return introspectRichTextData(prop as RichTextValue, Targets.Page)\n }\n\n default:\n return []\n }\n}\n"],"mappings":"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","names":["PropControllerTypes"]}
package/dist/cjs/react.js CHANGED
@@ -19,11 +19,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var react_exports = {};
20
20
  __export(react_exports, {
21
21
  ActionTypes: () => import_actions.ActionTypes,
22
- DocumentReference: () => import_react.DocumentReference,
22
+ DocumentRoot: () => import_react.DocumentRoot,
23
23
  Element: () => import_react.Element,
24
24
  PageProvider: () => import_react.PageProvider,
25
25
  ReactRuntime: () => import_react.ReactRuntime,
26
- RuntimeProvider: () => import_react.RuntimeProvider,
27
26
  changeDocument: () => import_actions.changeDocument,
28
27
  useIsInBuilder: () => import_react.useIsInBuilder,
29
28
  usePageId: () => import_react.usePageId
@@ -34,11 +33,10 @@ var import_react = require("./runtimes/react");
34
33
  // Annotate the CommonJS export names for ESM import in node:
35
34
  0 && (module.exports = {
36
35
  ActionTypes,
37
- DocumentReference,
36
+ DocumentRoot,
38
37
  Element,
39
38
  PageProvider,
40
39
  ReactRuntime,
41
- RuntimeProvider,
42
40
  changeDocument,
43
41
  useIsInBuilder,
44
42
  usePageId
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/react.ts"],"sourcesContent":["export type { Action } from './state/actions'\nexport { ActionTypes, changeDocument } from './state/actions'\nexport {\n Element,\n RuntimeProvider,\n ReactRuntime,\n useIsInBuilder,\n DocumentReference,\n PageProvider,\n usePageId,\n} from './runtimes/react'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,qBAA4C;AAC5C,mBAQO;","names":[]}
1
+ {"version":3,"sources":["../../src/react.ts"],"sourcesContent":["export type { Action } from './state/actions'\nexport { ActionTypes, changeDocument } from './state/actions'\nexport {\n Element,\n ReactRuntime,\n useIsInBuilder,\n DocumentRoot,\n PageProvider,\n usePageId,\n} from './runtimes/react'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,qBAA4C;AAC5C,mBAOO;","names":[]}
@@ -23,11 +23,12 @@ __export(Document_exports, {
23
23
  module.exports = __toCommonJS(Document_exports);
24
24
  var import_jsx_runtime = require("react/jsx-runtime");
25
25
  var import_react = require("react");
26
- var import_use_document_key = require("../hooks/use-document-key");
26
+ var import_react_page = require("../../../state/react-page");
27
+ var import_use_document_context = require("../hooks/use-document-context");
27
28
  var import_Element = require("./Element");
28
29
  const Document = (0, import_react.memo)(
29
30
  (0, import_react.forwardRef)(function Document2({ document }, ref) {
30
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_use_document_key.DocumentContext.Provider, { value: document.key, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Element.Element, { ref, element: document.rootElement }) });
31
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_use_document_context.DocumentContext.Provider, { value: document, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Element.Element, { ref, element: (0, import_react_page.getRootElement)(document) }) });
31
32
  })
32
33
  );
33
34
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/Document.tsx"],"sourcesContent":["import { Ref, forwardRef, memo } from 'react'\nimport { Document as ReactPageDocument } from '../../../state/react-page'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { DocumentContext } from '../hooks/use-document-key'\nimport { Element } from './Element'\n\ntype DocumentProps = {\n document: ReactPageDocument\n}\n\nexport const Document = memo(\n forwardRef(function Document(\n { document }: DocumentProps,\n ref: Ref<ElementImperativeHandle>,\n ): JSX.Element {\n return (\n <DocumentContext.Provider value={document.key}>\n <Element ref={ref} element={document.rootElement} />\n </DocumentContext.Provider>\n )\n }),\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAiBQ;AAjBR,mBAAsC;AAGtC,8BAAgC;AAChC,qBAAwB;AAMjB,MAAM,eAAW;AAAA,MACtB,yBAAW,SAASA,UAClB,EAAE,SAAS,GACX,KACa;AACb,WACE,4CAAC,wCAAgB,UAAhB,EAAyB,OAAO,SAAS,KACxC,sDAAC,0BAAQ,KAAU,SAAS,SAAS,aAAa,GACpD;AAAA,EAEJ,CAAC;AACH;","names":["Document"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/Document.tsx"],"sourcesContent":["import { Ref, forwardRef, memo } from 'react'\nimport { type Document as ReactPageDocument, getRootElement } from '../../../state/react-page'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { DocumentContext } from '../hooks/use-document-context'\nimport { Element } from './Element'\n\ntype DocumentProps = {\n document: ReactPageDocument\n}\n\nexport const Document = memo(\n forwardRef(function Document(\n { document }: DocumentProps,\n ref: Ref<ElementImperativeHandle>,\n ): JSX.Element {\n return (\n <DocumentContext.Provider value={document}>\n <Element ref={ref} element={getRootElement(document)} />\n </DocumentContext.Provider>\n )\n }),\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAiBQ;AAjBR,mBAAsC;AACtC,wBAAmE;AAEnE,kCAAgC;AAChC,qBAAwB;AAMjB,MAAM,eAAW;AAAA,MACtB,yBAAW,SAASA,UAClB,EAAE,SAAS,GACX,KACa;AACb,WACE,4CAAC,4CAAgB,UAAhB,EAAyB,OAAO,UAC/B,sDAAC,0BAAQ,KAAU,aAAS,kCAAe,QAAQ,GAAG,GACxD;AAAA,EAEJ,CAAC;AACH;","names":["Document"]}
@@ -16,19 +16,19 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var DocumentReference_exports = {};
20
- __export(DocumentReference_exports, {
21
- DocumentReference: () => DocumentReference
19
+ var DocumentRoot_exports = {};
20
+ __export(DocumentRoot_exports, {
21
+ DocumentRoot: () => DocumentRoot
22
22
  });
23
- module.exports = __toCommonJS(DocumentReference_exports);
23
+ module.exports = __toCommonJS(DocumentRoot_exports);
24
24
  var import_jsx_runtime = require("react/jsx-runtime");
25
25
  var import_react = require("react");
26
26
  var import_use_document = require("../hooks/use-document");
27
27
  var import_FallbackComponent = require("../../../components/shared/FallbackComponent");
28
28
  var import_Document = require("./Document");
29
- const DocumentReference = (0, import_react.memo)(
30
- (0, import_react.forwardRef)(function DocumentReference2({ documentReference }, ref) {
31
- const document = (0, import_use_document.useDocument)(documentReference.key);
29
+ const DocumentRoot = (0, import_react.memo)(
30
+ (0, import_react.forwardRef)(function DocumentRoot2({ rootDocument }, ref) {
31
+ const document = (0, import_use_document.useDocument)(rootDocument.key) ?? rootDocument;
32
32
  if (document == null) {
33
33
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FallbackComponent.FallbackComponent, { ref, text: "Document not found" });
34
34
  }
@@ -37,6 +37,6 @@ const DocumentReference = (0, import_react.memo)(
37
37
  );
38
38
  // Annotate the CommonJS export names for ESM import in node:
39
39
  0 && (module.exports = {
40
- DocumentReference
40
+ DocumentRoot
41
41
  });
42
- //# sourceMappingURL=DocumentReference.js.map
42
+ //# sourceMappingURL=DocumentRoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/DocumentRoot.tsx"],"sourcesContent":["import { Ref, forwardRef, memo } from 'react'\nimport { type Document } from '../../../state/react-page'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { useDocument } from '../hooks/use-document'\nimport { FallbackComponent } from '../../../components/shared/FallbackComponent'\nimport { Document as DocumentComponent } from './Document'\n\ntype Props = {\n rootDocument: Document\n}\n\nexport const DocumentRoot = memo(\n forwardRef(function DocumentRoot(\n { rootDocument }: Props,\n ref: Ref<ElementImperativeHandle>,\n ): JSX.Element {\n const document = useDocument(rootDocument.key) ?? rootDocument\n\n if (document == null) {\n return <FallbackComponent ref={ref as Ref<HTMLDivElement>} text=\"Document not found\" />\n }\n\n return <DocumentComponent ref={ref} document={document} />\n }),\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAmBa;AAnBb,mBAAsC;AAGtC,0BAA4B;AAC5B,+BAAkC;AAClC,sBAA8C;AAMvC,MAAM,mBAAe;AAAA,MAC1B,yBAAW,SAASA,cAClB,EAAE,aAAa,GACf,KACa;AACb,UAAM,eAAW,iCAAY,aAAa,GAAG,KAAK;AAElD,QAAI,YAAY,MAAM;AACpB,aAAO,4CAAC,8CAAkB,KAAiC,MAAK,sBAAqB;AAAA,IACvF;AAEA,WAAO,4CAAC,gBAAAC,UAAA,EAAkB,KAAU,UAAoB;AAAA,EAC1D,CAAC;AACH;","names":["DocumentRoot","DocumentComponent"]}
@@ -25,19 +25,13 @@ module.exports = __toCommonJS(Element_exports);
25
25
  var import_jsx_runtime = require("react/jsx-runtime");
26
26
  var import_react = require("react");
27
27
  var import_react_page = require("../../../state/react-page");
28
- var import_element_imperative_handle = require("../element-imperative-handle");
29
- var import_use_dispatch = require("../hooks/use-dispatch");
30
- var import_use_document_key = require("../hooks/use-document-key");
31
- var import_use_disable_register_element = require("../hooks/use-disable-register-element");
32
- var import_actions = require("../../../state/actions");
28
+ var import_ElementRegistration = require("./ElementRegistration");
33
29
  var import_ElementReference = require("./ElementReference");
34
30
  var import_ElementData = require("./ElementData");
31
+ var import_element_imperative_handle = require("../element-imperative-handle");
35
32
  var import_find_dom_node = require("../find-dom-node");
36
33
  const Element = (0, import_react.memo)(
37
34
  (0, import_react.forwardRef)(function Element2({ element }, ref) {
38
- const elementKey = element.key;
39
- const dispatch = (0, import_use_dispatch.useDispatch)();
40
- const documentKey = (0, import_use_document_key.useDocumentKey)();
41
35
  const useFindDomNodeRef = (0, import_react.useRef)(true);
42
36
  const imperativeHandleRef = (0, import_react.useRef)(new import_element_imperative_handle.ElementImperativeHandle());
43
37
  const findDomNodeCallbackRef = (0, import_react.useCallback)((current) => {
@@ -49,21 +43,15 @@ const Element = (0, import_react.memo)(
49
43
  useFindDomNodeRef.current = false;
50
44
  imperativeHandleRef.current.callback(() => current);
51
45
  }, []);
52
- const isRegisterElementDisabled = (0, import_use_disable_register_element.useDisableRegisterElement)();
53
46
  (0, import_react.useImperativeHandle)(ref, () => imperativeHandleRef.current, []);
54
- (0, import_react.useEffect)(() => {
55
- if (documentKey == null || isRegisterElementDisabled)
56
- return;
57
- return dispatch(
58
- (0, import_actions.registerComponentHandleEffect)(documentKey, elementKey, imperativeHandleRef.current)
59
- );
60
- }, [dispatch, documentKey, elementKey, isRegisterElementDisabled]);
61
- (0, import_react.useEffect)(() => {
62
- if (documentKey == null || isRegisterElementDisabled)
63
- return;
64
- return dispatch((0, import_actions.mountComponentEffect)(documentKey, elementKey));
65
- }, [dispatch, documentKey, elementKey, isRegisterElementDisabled]);
66
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_find_dom_node.FindDomNode, { ref: findDomNodeCallbackRef, children: (0, import_react_page.isElementReference)(element) ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ElementReference.ElementReference, { ref: elementCallbackRef, elementReference: element }, elementKey) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ElementData.ElementData, { ref: elementCallbackRef, elementData: element }, elementKey) });
47
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ElementRegistration.ElementRegistration, { componentHandle: imperativeHandleRef.current, elementKey: element.key, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_find_dom_node.FindDomNode, { ref: findDomNodeCallbackRef, children: (0, import_react_page.isElementReference)(element) ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
48
+ import_ElementReference.ElementReference,
49
+ {
50
+ ref: elementCallbackRef,
51
+ elementReference: element
52
+ },
53
+ element.key
54
+ ) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ElementData.ElementData, { ref: elementCallbackRef, elementData: element }, element.key) }) });
67
55
  })
68
56
  );
69
57
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/Element.tsx"],"sourcesContent":["'use client'\n\nimport { Ref, forwardRef, memo, useCallback, useEffect, useImperativeHandle, useRef } from 'react'\nimport { Element as ElementDataOrRef, isElementReference } from '../../../state/react-page'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { useDispatch } from '../hooks/use-dispatch'\nimport { useDocumentKey } from '../hooks/use-document-key'\nimport { useDisableRegisterElement } from '../hooks/use-disable-register-element'\nimport { mountComponentEffect, registerComponentHandleEffect } from '../../../state/actions'\nimport { ElementReference } from './ElementReference'\nimport { ElementData } from './ElementData'\nimport { FindDomNode } from '../find-dom-node'\n\ntype ElementProps = {\n element: ElementDataOrRef\n}\n\nexport const Element = memo(\n forwardRef(function Element(\n { element }: ElementProps,\n ref: Ref<ElementImperativeHandle>,\n ): JSX.Element {\n const elementKey = element.key\n const dispatch = useDispatch()\n const documentKey = useDocumentKey()\n const useFindDomNodeRef = useRef(true)\n const imperativeHandleRef = useRef(new ElementImperativeHandle())\n const findDomNodeCallbackRef = useCallback((current: (() => Element | Text | null) | null) => {\n if (useFindDomNodeRef.current === true) {\n imperativeHandleRef.current.callback(() => current?.() ?? null)\n }\n }, [])\n const elementCallbackRef = useCallback((current: unknown | null) => {\n useFindDomNodeRef.current = false\n\n imperativeHandleRef.current.callback(() => current)\n }, [])\n const isRegisterElementDisabled = useDisableRegisterElement()\n\n useImperativeHandle(ref, () => imperativeHandleRef.current, [])\n\n useEffect(() => {\n if (documentKey == null || isRegisterElementDisabled) return\n\n return dispatch(\n registerComponentHandleEffect(documentKey, elementKey, imperativeHandleRef.current),\n )\n }, [dispatch, documentKey, elementKey, isRegisterElementDisabled])\n\n useEffect(() => {\n if (documentKey == null || isRegisterElementDisabled) return\n\n return dispatch(mountComponentEffect(documentKey, elementKey))\n }, [dispatch, documentKey, elementKey, isRegisterElementDisabled])\n\n return (\n <FindDomNode ref={findDomNodeCallbackRef}>\n {isElementReference(element) ? (\n <ElementReference key={elementKey} ref={elementCallbackRef} elementReference={element} />\n ) : (\n <ElementData key={elementKey} ref={elementCallbackRef} elementData={element} />\n )}\n </FindDomNode>\n )\n }),\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA0DU;AAxDV,mBAA2F;AAC3F,wBAAgE;AAChE,uCAAwC;AACxC,0BAA4B;AAC5B,8BAA+B;AAC/B,0CAA0C;AAC1C,qBAAoE;AACpE,8BAAiC;AACjC,yBAA4B;AAC5B,2BAA4B;AAMrB,MAAM,cAAU;AAAA,MACrB,yBAAW,SAASA,SAClB,EAAE,QAAQ,GACV,KACa;AACb,UAAM,aAAa,QAAQ;AAC3B,UAAM,eAAW,iCAAY;AAC7B,UAAM,kBAAc,wCAAe;AACnC,UAAM,wBAAoB,qBAAO,IAAI;AACrC,UAAM,0BAAsB,qBAAO,IAAI,yDAAwB,CAAC;AAChE,UAAM,6BAAyB,0BAAY,CAAC,YAAkD;AAC5F,UAAI,kBAAkB,YAAY,MAAM;AACtC,4BAAoB,QAAQ,SAAS,MAAM,UAAU,KAAK,IAAI;AAAA,MAChE;AAAA,IACF,GAAG,CAAC,CAAC;AACL,UAAM,yBAAqB,0BAAY,CAAC,YAA4B;AAClE,wBAAkB,UAAU;AAE5B,0BAAoB,QAAQ,SAAS,MAAM,OAAO;AAAA,IACpD,GAAG,CAAC,CAAC;AACL,UAAM,gCAA4B,+DAA0B;AAE5D,0CAAoB,KAAK,MAAM,oBAAoB,SAAS,CAAC,CAAC;AAE9D,gCAAU,MAAM;AACd,UAAI,eAAe,QAAQ;AAA2B;AAEtD,aAAO;AAAA,YACL,8CAA8B,aAAa,YAAY,oBAAoB,OAAO;AAAA,MACpF;AAAA,IACF,GAAG,CAAC,UAAU,aAAa,YAAY,yBAAyB,CAAC;AAEjE,gCAAU,MAAM;AACd,UAAI,eAAe,QAAQ;AAA2B;AAEtD,aAAO,aAAS,qCAAqB,aAAa,UAAU,CAAC;AAAA,IAC/D,GAAG,CAAC,UAAU,aAAa,YAAY,yBAAyB,CAAC;AAEjE,WACE,4CAAC,oCAAY,KAAK,wBACf,oDAAmB,OAAO,IACzB,4CAAC,4CAAkC,KAAK,oBAAoB,kBAAkB,WAAvD,UAAgE,IAEvF,4CAAC,kCAA6B,KAAK,oBAAoB,aAAa,WAAlD,UAA2D,GAEjF;AAAA,EAEJ,CAAC;AACH;","names":["Element"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/Element.tsx"],"sourcesContent":["'use client'\n\nimport { forwardRef, memo, Ref, useCallback, useImperativeHandle, useRef } from 'react'\nimport { isElementReference, type Element as ElementDataOrRef } from '../../../state/react-page'\nimport { ElementRegistration } from './ElementRegistration'\nimport { ElementReference } from './ElementReference'\nimport { ElementData } from './ElementData'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { FindDomNode } from '../find-dom-node'\n\ntype Props = {\n element: ElementDataOrRef\n}\n\nexport const Element = memo(\n forwardRef(function Element(\n { element }: Props,\n ref: Ref<ElementImperativeHandle>,\n ): JSX.Element | null {\n const useFindDomNodeRef = useRef(true)\n const imperativeHandleRef = useRef(new ElementImperativeHandle())\n\n const findDomNodeCallbackRef = useCallback((current: (() => Element | Text | null) | null) => {\n if (useFindDomNodeRef.current === true) {\n imperativeHandleRef.current.callback(() => current?.() ?? null)\n }\n }, [])\n\n const elementCallbackRef = useCallback((current: unknown | null) => {\n useFindDomNodeRef.current = false\n\n imperativeHandleRef.current.callback(() => current)\n }, [])\n\n useImperativeHandle(ref, () => imperativeHandleRef.current, [])\n\n return (\n <ElementRegistration componentHandle={imperativeHandleRef.current} elementKey={element.key}>\n <FindDomNode ref={findDomNodeCallbackRef}>\n {isElementReference(element) ? (\n <ElementReference\n key={element.key}\n ref={elementCallbackRef}\n elementReference={element}\n />\n ) : (\n <ElementData key={element.key} ref={elementCallbackRef} elementData={element} />\n )}\n </FindDomNode>\n </ElementRegistration>\n )\n }),\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAwCY;AAtCZ,mBAAgF;AAChF,wBAAqE;AACrE,iCAAoC;AACpC,8BAAiC;AACjC,yBAA4B;AAC5B,uCAAwC;AACxC,2BAA4B;AAMrB,MAAM,cAAU;AAAA,MACrB,yBAAW,SAASA,SAClB,EAAE,QAAQ,GACV,KACoB;AACpB,UAAM,wBAAoB,qBAAO,IAAI;AACrC,UAAM,0BAAsB,qBAAO,IAAI,yDAAwB,CAAC;AAEhE,UAAM,6BAAyB,0BAAY,CAAC,YAAkD;AAC5F,UAAI,kBAAkB,YAAY,MAAM;AACtC,4BAAoB,QAAQ,SAAS,MAAM,UAAU,KAAK,IAAI;AAAA,MAChE;AAAA,IACF,GAAG,CAAC,CAAC;AAEL,UAAM,yBAAqB,0BAAY,CAAC,YAA4B;AAClE,wBAAkB,UAAU;AAE5B,0BAAoB,QAAQ,SAAS,MAAM,OAAO;AAAA,IACpD,GAAG,CAAC,CAAC;AAEL,0CAAoB,KAAK,MAAM,oBAAoB,SAAS,CAAC,CAAC;AAE9D,WACE,4CAAC,kDAAoB,iBAAiB,oBAAoB,SAAS,YAAY,QAAQ,KACrF,sDAAC,oCAAY,KAAK,wBACf,oDAAmB,OAAO,IACzB;AAAA,MAAC;AAAA;AAAA,QAEC,KAAK;AAAA,QACL,kBAAkB;AAAA;AAAA,MAFb,QAAQ;AAAA,IAGf,IAEA,4CAAC,kCAA8B,KAAK,oBAAoB,aAAa,WAAnD,QAAQ,GAAoD,GAElF,GACF;AAAA,EAEJ,CAAC;AACH;","names":["Element"]}
@@ -30,10 +30,12 @@ var import_FallbackComponent = require("../../../components/shared/FallbackCompo
30
30
  var import_Element = require("./Element");
31
31
  var import_Document = require("./Document");
32
32
  var import_use_disable_register_element = require("../hooks/use-disable-register-element");
33
+ var import_use_document_context = require("../hooks/use-document-context");
33
34
  const ElementReference = (0, import_react.memo)(
34
35
  (0, import_react.forwardRef)(function ElementReference2({ elementReference }, ref) {
35
36
  const globalElement = (0, import_makeswift_api.useGlobalElement)(elementReference.value);
36
- const localizedGlobalElement = (0, import_makeswift_api.useLocalizedGlobalElement)(elementReference.value);
37
+ const locale = (0, import_use_document_context.useDocumentLocale)();
38
+ const localizedGlobalElement = (0, import_makeswift_api.useLocalizedGlobalElement)(locale, elementReference.value);
37
39
  const globalElementData = localizedGlobalElement?.data ?? globalElement?.data;
38
40
  const elementReferenceDocument = (0, import_use_document.useDocument)(elementReference.key);
39
41
  const documentKey = elementReference.key;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/ElementReference.tsx"],"sourcesContent":["import { Ref, forwardRef, memo, useMemo } from 'react'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { useGlobalElement, useLocalizedGlobalElement } from '../hooks/makeswift-api'\nimport { useDocument } from '../hooks/use-document'\nimport { DocumentCyclesContext, useDocumentCycles } from '../hooks/use-document-cycles'\nimport {\n ElementData as ReactPageElementData,\n ElementReference as ReactPageElementReference,\n} from '../../../state/react-page'\nimport { FallbackComponent } from '../../../components/shared/FallbackComponent'\nimport { Element } from './Element'\nimport { Document } from './Document'\nimport { DisableRegisterElement } from '../hooks/use-disable-register-element'\n\ntype ElementRefereceProps = {\n elementReference: ReactPageElementReference\n}\n\nexport const ElementReference = memo(\n forwardRef(function ElementReference(\n { elementReference }: ElementRefereceProps,\n ref: Ref<ElementImperativeHandle>,\n ): JSX.Element {\n const globalElement = useGlobalElement(elementReference.value)\n // Update the logic here when we can merge element trees\n const localizedGlobalElement = useLocalizedGlobalElement(elementReference.value)\n const globalElementData = (localizedGlobalElement?.data ?? globalElement?.data) as\n | ReactPageElementData\n | undefined\n const elementReferenceDocument = useDocument(elementReference.key)\n const documentKey = elementReference.key\n const documentKeys = useDocumentCycles()\n const providedDocumentKeys = useMemo(\n () => [...documentKeys, documentKey],\n [documentKeys, documentKey],\n )\n\n if (globalElementData == null) {\n return (\n <FallbackComponent\n ref={ref as Ref<HTMLDivElement>}\n text=\"This global component doesn't exist\"\n />\n )\n }\n\n if (documentKeys.includes(documentKey)) {\n return (\n <FallbackComponent\n ref={ref as Ref<HTMLDivElement>}\n text=\"This global component contains itself!\"\n />\n )\n }\n\n return (\n <DocumentCyclesContext.Provider value={providedDocumentKeys}>\n {elementReferenceDocument != null ? (\n <Document document={elementReferenceDocument} ref={ref} />\n ) : (\n <DisableRegisterElement.Provider value={true}>\n {/* We render Element instead of ElementData because we rely on the FindDomNode */}\n <Element element={globalElementData} ref={ref} />\n </DisableRegisterElement.Provider>\n )}\n </DocumentCyclesContext.Provider>\n )\n }),\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuCQ;AAvCR,mBAA+C;AAE/C,2BAA4D;AAC5D,0BAA4B;AAC5B,iCAAyD;AAKzD,+BAAkC;AAClC,qBAAwB;AACxB,sBAAyB;AACzB,0CAAuC;AAMhC,MAAM,uBAAmB;AAAA,MAC9B,yBAAW,SAASA,kBAClB,EAAE,iBAAiB,GACnB,KACa;AACb,UAAM,oBAAgB,uCAAiB,iBAAiB,KAAK;AAE7D,UAAM,6BAAyB,gDAA0B,iBAAiB,KAAK;AAC/E,UAAM,oBAAqB,wBAAwB,QAAQ,eAAe;AAG1E,UAAM,+BAA2B,iCAAY,iBAAiB,GAAG;AACjE,UAAM,cAAc,iBAAiB;AACrC,UAAM,mBAAe,8CAAkB;AACvC,UAAM,2BAAuB;AAAA,MAC3B,MAAM,CAAC,GAAG,cAAc,WAAW;AAAA,MACnC,CAAC,cAAc,WAAW;AAAA,IAC5B;AAEA,QAAI,qBAAqB,MAAM;AAC7B,aACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,MAAK;AAAA;AAAA,MACP;AAAA,IAEJ;AAEA,QAAI,aAAa,SAAS,WAAW,GAAG;AACtC,aACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,MAAK;AAAA;AAAA,MACP;AAAA,IAEJ;AAEA,WACE,4CAAC,iDAAsB,UAAtB,EAA+B,OAAO,sBACpC,sCAA4B,OAC3B,4CAAC,4BAAS,UAAU,0BAA0B,KAAU,IAExD,4CAAC,2DAAuB,UAAvB,EAAgC,OAAO,MAEtC,sDAAC,0BAAQ,SAAS,mBAAmB,KAAU,GACjD,GAEJ;AAAA,EAEJ,CAAC;AACH;","names":["ElementReference"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/ElementReference.tsx"],"sourcesContent":["import { Ref, forwardRef, memo, useMemo } from 'react'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { useGlobalElement, useLocalizedGlobalElement } from '../hooks/makeswift-api'\nimport { useDocument } from '../hooks/use-document'\nimport { DocumentCyclesContext, useDocumentCycles } from '../hooks/use-document-cycles'\nimport {\n ElementData as ReactPageElementData,\n ElementReference as ReactPageElementReference,\n} from '../../../state/react-page'\nimport { FallbackComponent } from '../../../components/shared/FallbackComponent'\nimport { Element } from './Element'\nimport { Document } from './Document'\nimport { DisableRegisterElement } from '../hooks/use-disable-register-element'\nimport { useDocumentLocale } from '../hooks/use-document-context'\n\ntype ElementRefereceProps = {\n elementReference: ReactPageElementReference\n}\n\nexport const ElementReference = memo(\n forwardRef(function ElementReference(\n { elementReference }: ElementRefereceProps,\n ref: Ref<ElementImperativeHandle>,\n ): JSX.Element {\n const globalElement = useGlobalElement(elementReference.value)\n const locale = useDocumentLocale()\n // Update the logic here when we can merge element trees\n const localizedGlobalElement = useLocalizedGlobalElement(locale, elementReference.value)\n const globalElementData = (localizedGlobalElement?.data ?? globalElement?.data) as\n | ReactPageElementData\n | undefined\n const elementReferenceDocument = useDocument(elementReference.key)\n const documentKey = elementReference.key\n const documentKeys = useDocumentCycles()\n const providedDocumentKeys = useMemo(\n () => [...documentKeys, documentKey],\n [documentKeys, documentKey],\n )\n\n if (globalElementData == null) {\n return (\n <FallbackComponent\n ref={ref as Ref<HTMLDivElement>}\n text=\"This global component doesn't exist\"\n />\n )\n }\n\n if (documentKeys.includes(documentKey)) {\n return (\n <FallbackComponent\n ref={ref as Ref<HTMLDivElement>}\n text=\"This global component contains itself!\"\n />\n )\n }\n\n return (\n <DocumentCyclesContext.Provider value={providedDocumentKeys}>\n {elementReferenceDocument != null ? (\n <Document document={elementReferenceDocument} ref={ref} />\n ) : (\n <DisableRegisterElement.Provider value={true}>\n {/* We render Element instead of ElementData because we rely on the FindDomNode */}\n <Element element={globalElementData} ref={ref} />\n </DisableRegisterElement.Provider>\n )}\n </DocumentCyclesContext.Provider>\n )\n }),\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAyCQ;AAzCR,mBAA+C;AAE/C,2BAA4D;AAC5D,0BAA4B;AAC5B,iCAAyD;AAKzD,+BAAkC;AAClC,qBAAwB;AACxB,sBAAyB;AACzB,0CAAuC;AACvC,kCAAkC;AAM3B,MAAM,uBAAmB;AAAA,MAC9B,yBAAW,SAASA,kBAClB,EAAE,iBAAiB,GACnB,KACa;AACb,UAAM,oBAAgB,uCAAiB,iBAAiB,KAAK;AAC7D,UAAM,aAAS,+CAAkB;AAEjC,UAAM,6BAAyB,gDAA0B,QAAQ,iBAAiB,KAAK;AACvF,UAAM,oBAAqB,wBAAwB,QAAQ,eAAe;AAG1E,UAAM,+BAA2B,iCAAY,iBAAiB,GAAG;AACjE,UAAM,cAAc,iBAAiB;AACrC,UAAM,mBAAe,8CAAkB;AACvC,UAAM,2BAAuB;AAAA,MAC3B,MAAM,CAAC,GAAG,cAAc,WAAW;AAAA,MACnC,CAAC,cAAc,WAAW;AAAA,IAC5B;AAEA,QAAI,qBAAqB,MAAM;AAC7B,aACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,MAAK;AAAA;AAAA,MACP;AAAA,IAEJ;AAEA,QAAI,aAAa,SAAS,WAAW,GAAG;AACtC,aACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,MAAK;AAAA;AAAA,MACP;AAAA,IAEJ;AAEA,WACE,4CAAC,iDAAsB,UAAtB,EAA+B,OAAO,sBACpC,sCAA4B,OAC3B,4CAAC,4BAAS,UAAU,0BAA0B,KAAU,IAExD,4CAAC,2DAAuB,UAAvB,EAAgC,OAAO,MAEtC,sDAAC,0BAAQ,SAAS,mBAAmB,KAAU,GACjD,GAEJ;AAAA,EAEJ,CAAC;AACH;","names":["ElementReference"]}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ "use client";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var ElementRegistration_exports = {};
21
+ __export(ElementRegistration_exports, {
22
+ ElementRegistration: () => ElementRegistration
23
+ });
24
+ module.exports = __toCommonJS(ElementRegistration_exports);
25
+ var import_jsx_runtime = require("react/jsx-runtime");
26
+ var import_react = require("react");
27
+ var import_use_dispatch = require("../hooks/use-dispatch");
28
+ var import_use_document_context = require("../hooks/use-document-context");
29
+ var import_use_disable_register_element = require("../hooks/use-disable-register-element");
30
+ var import_actions = require("../../../state/actions");
31
+ const ElementRegistration = (0, import_react.memo)(function ElementRegistration2({
32
+ elementKey,
33
+ componentHandle,
34
+ children
35
+ }) {
36
+ const dispatch = (0, import_use_dispatch.useDispatch)();
37
+ const documentKey = (0, import_use_document_context.useDocumentKey)();
38
+ const isRegisterElementDisabled = (0, import_use_disable_register_element.useDisableRegisterElement)();
39
+ (0, import_react.useEffect)(() => {
40
+ if (documentKey == null || isRegisterElementDisabled)
41
+ return;
42
+ return dispatch((0, import_actions.registerComponentHandleEffect)(documentKey, elementKey, componentHandle));
43
+ }, [dispatch, documentKey, elementKey, isRegisterElementDisabled]);
44
+ (0, import_react.useEffect)(() => {
45
+ if (documentKey == null || isRegisterElementDisabled)
46
+ return;
47
+ return dispatch((0, import_actions.mountComponentEffect)(documentKey, elementKey));
48
+ }, [dispatch, documentKey, elementKey, isRegisterElementDisabled]);
49
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children });
50
+ });
51
+ // Annotate the CommonJS export names for ESM import in node:
52
+ 0 && (module.exports = {
53
+ ElementRegistration
54
+ });
55
+ //# sourceMappingURL=ElementRegistration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/ElementRegistration.tsx"],"sourcesContent":["'use client'\n\nimport { ReactNode, memo, useEffect } from 'react'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { useDispatch } from '../hooks/use-dispatch'\nimport { useDocumentKey } from '../hooks/use-document-context'\nimport { useDisableRegisterElement } from '../hooks/use-disable-register-element'\nimport { mountComponentEffect, registerComponentHandleEffect } from '../../../state/actions'\n\ntype RegisterChildrenAsElementProps = {\n elementKey: string\n componentHandle: ElementImperativeHandle\n children?: ReactNode\n}\n\nexport const ElementRegistration = memo(function ElementRegistration({\n elementKey,\n componentHandle,\n children,\n}: RegisterChildrenAsElementProps): JSX.Element {\n const dispatch = useDispatch()\n const documentKey = useDocumentKey()\n\n const isRegisterElementDisabled = useDisableRegisterElement()\n\n useEffect(() => {\n if (documentKey == null || isRegisterElementDisabled) return\n\n return dispatch(registerComponentHandleEffect(documentKey, elementKey, componentHandle))\n }, [dispatch, documentKey, elementKey, isRegisterElementDisabled])\n\n useEffect(() => {\n if (documentKey == null || isRegisterElementDisabled) return\n\n return dispatch(mountComponentEffect(documentKey, elementKey))\n }, [dispatch, documentKey, elementKey, isRegisterElementDisabled])\n\n return <>{children}</>\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAqCS;AAnCT,mBAA2C;AAE3C,0BAA4B;AAC5B,kCAA+B;AAC/B,0CAA0C;AAC1C,qBAAoE;AAQ7D,MAAM,0BAAsB,mBAAK,SAASA,qBAAoB;AAAA,EACnE;AAAA,EACA;AAAA,EACA;AACF,GAAgD;AAC9C,QAAM,eAAW,iCAAY;AAC7B,QAAM,kBAAc,4CAAe;AAEnC,QAAM,gCAA4B,+DAA0B;AAE5D,8BAAU,MAAM;AACd,QAAI,eAAe,QAAQ;AAA2B;AAEtD,WAAO,aAAS,8CAA8B,aAAa,YAAY,eAAe,CAAC;AAAA,EACzF,GAAG,CAAC,UAAU,aAAa,YAAY,yBAAyB,CAAC;AAEjE,8BAAU,MAAM;AACd,QAAI,eAAe,QAAQ;AAA2B;AAEtD,WAAO,aAAS,qCAAqB,aAAa,UAAU,CAAC;AAAA,EAC/D,GAAG,CAAC,UAAU,aAAa,YAAY,yBAAyB,CAAC;AAEjE,SAAO,2EAAG,UAAS;AACrB,CAAC;","names":["ElementRegistration"]}
@@ -33,16 +33,18 @@ __export(LiveProvider_exports, {
33
33
  module.exports = __toCommonJS(LiveProvider_exports);
34
34
  var import_jsx_runtime = require("react/jsx-runtime");
35
35
  var import_react = require("react");
36
- var import_use_store = require("../hooks/use-store");
37
36
  var ReactPage = __toESM(require("../../../state/react-page"));
38
- var import_react_runtime = require("../../../next/context/react-runtime");
39
- var import_makeswift_host_api_client = require("../../../next/context/makeswift-host-api-client");
40
- function LiveProvider({ client, children, rootElements }) {
41
- const runtime = (0, import_react_runtime.useReactRuntime)();
37
+ var import_use_react_runtime = require("../hooks/use-react-runtime");
38
+ var import_use_store = require("../hooks/use-store");
39
+ function LiveProvider({ children }) {
40
+ const runtime = (0, import_use_react_runtime.useReactRuntime)();
42
41
  const store = (0, import_react.useMemo)(
43
- () => ReactPage.configureStore({ preloadedState: runtime.store.getState(), rootElements }),
44
- [rootElements, runtime]
42
+ () => ReactPage.configureStore({
43
+ name: "Host store",
44
+ preloadedState: runtime.store.getState()
45
+ }),
46
+ [runtime]
45
47
  );
46
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_use_store.StoreContext.Provider, { value: store, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_makeswift_host_api_client.MakeswiftHostApiClientProvider, { client, children }) });
48
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_use_store.StoreContext.Provider, { value: store, children });
47
49
  }
48
50
  //# sourceMappingURL=LiveProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/LiveProvider.tsx"],"sourcesContent":["import { ReactNode, useMemo } from 'react'\n\nimport { StoreContext } from '../hooks/use-store'\nimport * as ReactPage from '../../../state/react-page'\nimport { MakeswiftHostApiClient } from '../../../api/react'\nimport { useReactRuntime } from '../../../next/context/react-runtime'\nimport { MakeswiftHostApiClientProvider } from '../../../next/context/makeswift-host-api-client'\n\ntype Props = {\n client: MakeswiftHostApiClient\n rootElements?: Map<string, ReactPage.Element>\n children?: ReactNode\n}\n\nexport default function LiveProvider({ client, children, rootElements }: Props): JSX.Element {\n const runtime = useReactRuntime()\n const store = useMemo(\n () => ReactPage.configureStore({ preloadedState: runtime.store.getState(), rootElements }),\n [rootElements, runtime],\n )\n\n return (\n <StoreContext.Provider value={store}>\n <MakeswiftHostApiClientProvider client={client}>{children}</MakeswiftHostApiClientProvider>\n </StoreContext.Provider>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuBM;AAvBN,mBAAmC;AAEnC,uBAA6B;AAC7B,gBAA2B;AAE3B,2BAAgC;AAChC,uCAA+C;AAQhC,SAAR,aAA8B,EAAE,QAAQ,UAAU,aAAa,GAAuB;AAC3F,QAAM,cAAU,sCAAgB;AAChC,QAAM,YAAQ;AAAA,IACZ,MAAM,UAAU,eAAe,EAAE,gBAAgB,QAAQ,MAAM,SAAS,GAAG,aAAa,CAAC;AAAA,IACzF,CAAC,cAAc,OAAO;AAAA,EACxB;AAEA,SACE,4CAAC,8BAAa,UAAb,EAAsB,OAAO,OAC5B,sDAAC,mEAA+B,QAAiB,UAAS,GAC5D;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/LiveProvider.tsx"],"sourcesContent":["import { type PropsWithChildren, useMemo } from 'react'\n\nimport * as ReactPage from '../../../state/react-page'\n\nimport { useReactRuntime } from '../hooks/use-react-runtime'\nimport { StoreContext } from '../hooks/use-store'\n\nexport default function LiveProvider({ children }: PropsWithChildren): JSX.Element {\n const runtime = useReactRuntime()\n const store = useMemo(\n () =>\n ReactPage.configureStore({\n name: 'Host store',\n preloadedState: runtime.store.getState(),\n }),\n [runtime],\n )\n\n return <StoreContext.Provider value={store}>{children}</StoreContext.Provider>\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAkBS;AAlBT,mBAAgD;AAEhD,gBAA2B;AAE3B,+BAAgC;AAChC,uBAA6B;AAEd,SAAR,aAA8B,EAAE,SAAS,GAAmC;AACjF,QAAM,cAAU,0CAAgB;AAChC,QAAM,YAAQ;AAAA,IACZ,MACE,UAAU,eAAe;AAAA,MACvB,MAAM;AAAA,MACN,gBAAgB,QAAQ,MAAM,SAAS;AAAA,IACzC,CAAC;AAAA,IACH,CAAC,OAAO;AAAA,EACV;AAEA,SAAO,4CAAC,8BAAa,UAAb,EAAsB,OAAO,OAAQ,UAAS;AACxD;","names":[]}
@@ -34,37 +34,24 @@ __export(PreviewProvider_exports, {
34
34
  module.exports = __toCommonJS(PreviewProvider_exports);
35
35
  var import_jsx_runtime = require("react/jsx-runtime");
36
36
  var import_react = require("react");
37
- var import_react_runtime = require("../react-runtime");
38
- var import_use_store = require("../hooks/use-store");
39
37
  var ReactBuilderPreview = __toESM(require("../../../state/react-builder-preview"));
40
- var ReactPage = __toESM(require("../../../state/react-page"));
41
- var import_actions = require("../../../state/actions");
42
- var import_react_runtime2 = require("../../../next/context/react-runtime");
43
- var import_makeswift_host_api_client = require("../../../next/context/makeswift-host-api-client");
44
- function PreviewProvider({ client, children, rootElements }) {
45
- const runtime = (0, import_react_runtime2.useReactRuntime)();
38
+ var import_use_react_runtime = require("../hooks/use-react-runtime");
39
+ var import_use_store = require("../hooks/use-store");
40
+ var import_host_api_client = require("../host-api-client");
41
+ function PreviewProvider({ children }) {
42
+ const runtime = (0, import_use_react_runtime.useReactRuntime)();
43
+ const client = (0, import_host_api_client.useMakeswiftHostApiClient)();
46
44
  const store = (0, import_react.useMemo)(
47
45
  () => ReactBuilderPreview.configureStore({
48
- preloadedState: runtime ? runtime.store.getState() : import_react_runtime.ReactRuntime.store.getState(),
49
- rootElements,
46
+ preloadedState: runtime.store.getState(),
50
47
  client
51
48
  }),
52
- [client, rootElements, runtime]
49
+ [client, runtime]
53
50
  );
54
51
  (0, import_react.useEffect)(() => {
55
52
  store.setup();
56
53
  return () => store.teardown();
57
54
  }, [store]);
58
- (0, import_react.useEffect)(() => {
59
- const unregisterDocuments = Array.from(rootElements?.entries() ?? []).map(
60
- ([documentKey, rootElement]) => store.dispatch((0, import_actions.registerDocumentEffect)(ReactPage.createDocument(documentKey, rootElement)))
61
- );
62
- return () => {
63
- unregisterDocuments.forEach((unregisterDocument) => {
64
- unregisterDocument();
65
- });
66
- };
67
- }, [store, rootElements]);
68
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_use_store.StoreContext.Provider, { value: store, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_makeswift_host_api_client.MakeswiftHostApiClientProvider, { client, children }) });
55
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_use_store.StoreContext.Provider, { value: store, children });
69
56
  }
70
57
  //# sourceMappingURL=PreviewProvider.js.map