@makeswift/runtime 0.26.4-canary.1 → 0.26.5

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 (700) hide show
  1. package/dist/cjs/api/client.js +2 -13
  2. package/dist/cjs/api/client.js.map +1 -1
  3. package/dist/cjs/api/react.js +256 -0
  4. package/dist/cjs/api/react.js.map +1 -0
  5. package/dist/cjs/api-handler/handlers/element-tree.js.map +1 -1
  6. package/dist/cjs/api-handler/handlers/manifest.js +1 -1
  7. package/dist/cjs/api-handler/handlers/merge-translated-data.js.map +1 -1
  8. package/dist/cjs/api-handler/handlers/translatable-data.js.map +1 -1
  9. package/dist/cjs/api-handler/handlers/webhook/diff-projection.js +62 -0
  10. package/dist/cjs/api-handler/handlers/webhook/diff-projection.js.map +1 -0
  11. package/dist/cjs/builder/host-to-builder-actions.js +3 -3
  12. package/dist/cjs/builder/host-to-builder-actions.js.map +1 -1
  13. package/dist/cjs/builder/index.js +2 -2
  14. package/dist/cjs/builder/index.js.map +1 -1
  15. package/dist/cjs/builder/serialization.js +78 -0
  16. package/dist/cjs/builder/serialization.js.map +1 -0
  17. package/dist/cjs/client/index.js +8 -8
  18. package/dist/cjs/client/index.js.map +1 -1
  19. package/dist/cjs/components/builtin/Box/Box.js +1 -1
  20. package/dist/cjs/components/builtin/Box/Box.js.map +1 -1
  21. package/dist/cjs/components/builtin/Form/Form.js +1 -1
  22. package/dist/cjs/components/builtin/Form/Form.js.map +1 -1
  23. package/dist/cjs/components/hooks/useTableFormFieldRefs.js +1 -1
  24. package/dist/cjs/components/hooks/useTableFormFieldRefs.js.map +1 -1
  25. package/dist/cjs/controls/serialization/base/index.js +78 -0
  26. package/dist/cjs/controls/serialization/base/index.js.map +1 -0
  27. package/dist/cjs/controls/serialization/base/visitor.js +59 -0
  28. package/dist/cjs/controls/serialization/base/visitor.js.map +1 -0
  29. package/dist/cjs/controls/serialization/index.js +55 -0
  30. package/dist/cjs/controls/serialization/index.js.map +1 -0
  31. package/dist/cjs/controls/serialization/message-port/function-serialization.js +79 -0
  32. package/dist/cjs/controls/serialization/message-port/function-serialization.js.map +1 -0
  33. package/dist/cjs/controls/serialization/message-port/index.js +25 -0
  34. package/dist/cjs/controls/serialization/message-port/index.js.map +1 -0
  35. package/dist/cjs/controls/serialization/message-port/visitor.js +48 -0
  36. package/dist/cjs/controls/serialization/message-port/visitor.js.map +1 -0
  37. package/dist/cjs/next/api-handler/config/app-router.js +10 -1
  38. package/dist/cjs/next/api-handler/config/app-router.js.map +1 -1
  39. package/dist/cjs/next/api-handler/config/pages-router.js +1 -1
  40. package/dist/cjs/next/api-handler/config/pages-router.js.map +1 -1
  41. package/dist/cjs/next/components/framework-provider/index.js +1 -1
  42. package/dist/cjs/next/components/framework-provider/index.js.map +1 -1
  43. package/dist/cjs/next/components/tests/controls/color-control/fixtures.js.map +1 -1
  44. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js +2 -1
  45. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  46. package/dist/cjs/next/components/tests/controls/rich-text-v2-control/fixtures.js.map +1 -1
  47. package/dist/cjs/next/components/tests/makeswift-component/fixtures.js +2 -1
  48. package/dist/cjs/next/components/tests/makeswift-component/fixtures.js.map +1 -1
  49. package/dist/cjs/next/components/tests/prop-controllers/page-prop-controller.js +3 -2
  50. package/dist/cjs/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -1
  51. package/dist/cjs/next/fetch.js +30 -0
  52. package/dist/cjs/next/fetch.js.map +1 -0
  53. package/dist/cjs/next/runtime.js +35 -0
  54. package/dist/cjs/next/runtime.js.map +1 -0
  55. package/dist/cjs/next/testing/element-data.js +3 -3
  56. package/dist/cjs/next/testing/element-data.js.map +1 -1
  57. package/dist/cjs/next/testing/index.js +0 -2
  58. package/dist/cjs/next/testing/index.js.map +1 -1
  59. package/dist/cjs/next/testing/page-rendering.js +3 -3
  60. package/dist/cjs/next/testing/page-rendering.js.map +1 -1
  61. package/dist/cjs/prop-controllers/descriptors.js.map +1 -1
  62. package/dist/cjs/prop-controllers/instances.js.map +1 -1
  63. package/dist/cjs/prop-controllers/serialization.js +355 -0
  64. package/dist/cjs/prop-controllers/serialization.js.map +1 -0
  65. package/dist/cjs/runtimes/react/components/Document.js +2 -2
  66. package/dist/cjs/runtimes/react/components/Document.js.map +1 -1
  67. package/dist/cjs/runtimes/react/components/DocumentRoot.js.map +1 -1
  68. package/dist/cjs/runtimes/react/components/Element.js +2 -2
  69. package/dist/cjs/runtimes/react/components/Element.js.map +1 -1
  70. package/dist/cjs/runtimes/react/components/ElementData.js.map +1 -1
  71. package/dist/cjs/runtimes/react/components/ElementReference.js.map +1 -1
  72. package/dist/cjs/runtimes/react/components/ElementRegistration.js +2 -2
  73. package/dist/cjs/runtimes/react/components/ElementRegistration.js.map +1 -1
  74. package/dist/cjs/runtimes/react/components/GoogleFontLink.js +55 -0
  75. package/dist/cjs/runtimes/react/components/GoogleFontLink.js.map +1 -0
  76. package/dist/cjs/runtimes/react/components/MakeswiftComponent.js +2 -2
  77. package/dist/cjs/runtimes/react/components/MakeswiftComponent.js.map +1 -1
  78. package/dist/cjs/runtimes/react/components/MakeswiftFonts.js +33 -0
  79. package/dist/cjs/runtimes/react/components/MakeswiftFonts.js.map +1 -0
  80. package/dist/cjs/runtimes/react/components/RuntimeProvider.js +5 -6
  81. package/dist/cjs/runtimes/react/components/RuntimeProvider.js.map +1 -1
  82. package/dist/cjs/runtimes/react/components/framework-context.js +13 -3
  83. package/dist/cjs/runtimes/react/components/framework-context.js.map +1 -1
  84. package/dist/cjs/runtimes/react/components/page/Page.js.map +1 -1
  85. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js +3 -2
  86. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  87. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -2
  88. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  89. package/dist/cjs/runtimes/react/controls.js +2 -2
  90. package/dist/cjs/runtimes/react/controls.js.map +1 -1
  91. package/dist/cjs/runtimes/react/element-imperative-handle.js +1 -1
  92. package/dist/cjs/runtimes/react/element-imperative-handle.js.map +1 -1
  93. package/dist/cjs/runtimes/react/hooks/use-async-effect.js +55 -0
  94. package/dist/cjs/runtimes/react/hooks/use-async-effect.js.map +1 -0
  95. package/dist/cjs/runtimes/react/hooks/use-breakpoints.js +2 -2
  96. package/dist/cjs/runtimes/react/hooks/use-breakpoints.js.map +1 -1
  97. package/dist/cjs/runtimes/react/hooks/use-builder-edit-mode.js +2 -2
  98. package/dist/cjs/runtimes/react/hooks/use-builder-edit-mode.js.map +1 -1
  99. package/dist/cjs/runtimes/react/hooks/use-cache-data.js +2 -2
  100. package/dist/cjs/runtimes/react/hooks/use-cache-data.js.map +1 -1
  101. package/dist/cjs/runtimes/react/hooks/use-component.js +3 -3
  102. package/dist/cjs/runtimes/react/hooks/use-component.js.map +1 -1
  103. package/dist/cjs/runtimes/react/hooks/use-current-breakpoint.js +39 -0
  104. package/dist/cjs/runtimes/react/hooks/use-current-breakpoint.js.map +1 -0
  105. package/dist/cjs/runtimes/react/hooks/use-dispatch.js.map +1 -1
  106. package/dist/cjs/runtimes/react/hooks/use-document.js +2 -2
  107. package/dist/cjs/runtimes/react/hooks/use-document.js.map +1 -1
  108. package/dist/cjs/runtimes/react/hooks/use-element-id.js +2 -2
  109. package/dist/cjs/runtimes/react/hooks/use-element-id.js.map +1 -1
  110. package/dist/cjs/runtimes/react/hooks/use-is-in-builder.js +2 -2
  111. package/dist/cjs/runtimes/react/hooks/use-is-in-builder.js.map +1 -1
  112. package/dist/cjs/runtimes/react/hooks/use-is-preview.js +33 -0
  113. package/dist/cjs/runtimes/react/hooks/use-is-preview.js.map +1 -0
  114. package/dist/cjs/runtimes/react/hooks/use-register-document.js.map +1 -1
  115. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js +2 -2
  116. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  117. package/dist/cjs/runtimes/react/hooks/use-resource-resolver.js +1 -1
  118. package/dist/cjs/runtimes/react/hooks/use-resource-resolver.js.map +1 -1
  119. package/dist/cjs/runtimes/react/hooks/use-selector.js.map +1 -1
  120. package/dist/cjs/runtimes/react/hooks/use-store.js.map +1 -1
  121. package/dist/cjs/runtimes/react/hooks/use-universal-dispatch.js.map +1 -1
  122. package/dist/cjs/runtimes/react/host-api-client.js +3 -4
  123. package/dist/cjs/runtimes/react/host-api-client.js.map +1 -1
  124. package/dist/cjs/runtimes/react/index.js +3 -3
  125. package/dist/cjs/runtimes/react/index.js.map +1 -1
  126. package/dist/cjs/runtimes/react/lib/resolved-style-to-css.js +59 -0
  127. package/dist/cjs/runtimes/react/lib/resolved-style-to-css.js.map +1 -0
  128. package/dist/cjs/runtimes/react/poll-box-model.js +1 -1
  129. package/dist/cjs/runtimes/react/poll-box-model.js.map +1 -1
  130. package/dist/cjs/runtimes/react/react-runtime-core.js +3 -3
  131. package/dist/cjs/runtimes/react/react-runtime-core.js.map +1 -1
  132. package/dist/cjs/runtimes/react/runtime-core.js +2 -4
  133. package/dist/cjs/runtimes/react/runtime-core.js.map +1 -1
  134. package/dist/cjs/runtimes/react/testing/react-runtime.js +3 -2
  135. package/dist/cjs/runtimes/react/testing/react-runtime.js.map +1 -1
  136. package/dist/cjs/runtimes/react/utils/can-accept-ref.js.map +1 -1
  137. package/dist/cjs/runtimes/react/utils/google-fonts-url.js +49 -0
  138. package/dist/cjs/runtimes/react/utils/google-fonts-url.js.map +1 -0
  139. package/dist/cjs/state/actions/internal/read-only-actions.js +25 -17
  140. package/dist/cjs/state/actions/internal/read-only-actions.js.map +1 -1
  141. package/dist/cjs/state/actions/internal/read-write-actions.js +7 -1
  142. package/dist/cjs/state/actions/internal/read-write-actions.js.map +1 -1
  143. package/dist/cjs/state/actions/internal.js +205 -0
  144. package/dist/cjs/state/actions/internal.js.map +1 -0
  145. package/dist/cjs/state/builder-api/actions.js +8 -11
  146. package/dist/cjs/state/builder-api/actions.js.map +1 -1
  147. package/dist/cjs/state/builder-api/api.js +17 -0
  148. package/dist/cjs/state/builder-api/api.js.map +1 -0
  149. package/dist/cjs/state/builder-api/navigation-listener.js +110 -0
  150. package/dist/cjs/state/builder-api/navigation-listener.js.map +1 -0
  151. package/dist/cjs/state/host-api.js.map +1 -1
  152. package/dist/cjs/state/makeswift-api-client.js +20 -34
  153. package/dist/cjs/state/makeswift-api-client.js.map +1 -1
  154. package/dist/cjs/state/middleware/{read-write/makeswift-api-client-sync.js → makeswift-api-client-sync.js} +1 -1
  155. package/dist/cjs/state/middleware/makeswift-api-client-sync.js.map +1 -0
  156. package/dist/cjs/state/middleware/read-write/builder-api/index.js +11 -2
  157. package/dist/cjs/state/middleware/read-write/builder-api/index.js.map +1 -1
  158. package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js +3 -0
  159. package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js.map +1 -1
  160. package/dist/cjs/state/middleware/read-write/index.js +40 -0
  161. package/dist/cjs/state/middleware/read-write/index.js.map +1 -0
  162. package/dist/cjs/state/middleware/{prop-controller-handles.js → read-write/prop-controller-handles.js} +8 -8
  163. package/dist/cjs/state/middleware/read-write/prop-controller-handles.js.map +1 -0
  164. package/dist/cjs/state/mixins/breakpoint-watch.js +72 -0
  165. package/dist/cjs/state/mixins/breakpoint-watch.js.map +1 -0
  166. package/dist/cjs/state/modules/api-resources.js +4 -7
  167. package/dist/cjs/state/modules/api-resources.js.map +1 -1
  168. package/dist/cjs/state/modules/box-models.js +127 -0
  169. package/dist/cjs/state/modules/box-models.js.map +1 -0
  170. package/dist/cjs/state/modules/breakpoints.js +1 -2
  171. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  172. package/dist/cjs/state/modules/builder-edit-mode.js +1 -2
  173. package/dist/cjs/state/modules/builder-edit-mode.js.map +1 -1
  174. package/dist/cjs/state/modules/components-meta.js +2 -3
  175. package/dist/cjs/state/modules/components-meta.js.map +1 -1
  176. package/dist/cjs/state/modules/element-imperative-handles.js +60 -0
  177. package/dist/cjs/state/modules/element-imperative-handles.js.map +1 -0
  178. package/dist/cjs/state/modules/element-trees.js +3 -5
  179. package/dist/cjs/state/modules/element-trees.js.map +1 -1
  180. package/dist/cjs/state/modules/is-in-builder.js +1 -2
  181. package/dist/cjs/state/modules/is-in-builder.js.map +1 -1
  182. package/dist/cjs/state/modules/is-preview.js +47 -0
  183. package/dist/cjs/state/modules/is-preview.js.map +1 -0
  184. package/dist/cjs/state/modules/locale.js +1 -4
  185. package/dist/cjs/state/modules/locale.js.map +1 -1
  186. package/dist/cjs/state/modules/localized-resources-map.js +2 -4
  187. package/dist/cjs/state/modules/localized-resources-map.js.map +1 -1
  188. package/dist/cjs/state/modules/pointer.js +47 -0
  189. package/dist/cjs/state/modules/pointer.js.map +1 -0
  190. package/dist/cjs/state/modules/prop-controllers.js +2 -3
  191. package/dist/cjs/state/modules/prop-controllers.js.map +1 -1
  192. package/dist/cjs/state/modules/react-components.js +2 -3
  193. package/dist/cjs/state/modules/react-components.js.map +1 -1
  194. package/dist/cjs/state/modules/read-only-documents.js +2 -3
  195. package/dist/cjs/state/modules/read-only-documents.js.map +1 -1
  196. package/dist/cjs/state/modules/read-write/box-models.js +17 -2
  197. package/dist/cjs/state/modules/read-write/box-models.js.map +1 -1
  198. package/dist/cjs/state/modules/read-write-documents.js +98 -0
  199. package/dist/cjs/state/modules/read-write-documents.js.map +1 -0
  200. package/dist/cjs/state/modules/site-version.js +0 -3
  201. package/dist/cjs/state/modules/site-version.js.map +1 -1
  202. package/dist/cjs/state/react-builder-preview.js +508 -18
  203. package/dist/cjs/state/react-builder-preview.js.map +1 -1
  204. package/dist/cjs/state/react-page.js +250 -6
  205. package/dist/cjs/state/react-page.js.map +1 -1
  206. package/dist/cjs/state/read-only-state.js +23 -1
  207. package/dist/cjs/state/read-only-state.js.map +1 -1
  208. package/dist/cjs/state/read-write-state.js +9 -2
  209. package/dist/cjs/state/read-write-state.js.map +1 -1
  210. package/dist/cjs/state/shared-api.js.map +1 -1
  211. package/dist/cjs/state/store.js +219 -0
  212. package/dist/cjs/state/store.js.map +1 -0
  213. package/dist/cjs/state/translations/get.js +2 -2
  214. package/dist/cjs/state/translations/get.js.map +1 -1
  215. package/dist/cjs/state/translations/merge.js +2 -2
  216. package/dist/cjs/state/translations/merge.js.map +1 -1
  217. package/dist/cjs/state/unified-state.js +17 -0
  218. package/dist/cjs/state/unified-state.js.map +1 -0
  219. package/dist/cjs/translations/index.js +32 -0
  220. package/dist/cjs/translations/index.js.map +1 -0
  221. package/dist/cjs/unstable-framework-support/index.js +4 -2
  222. package/dist/cjs/unstable-framework-support/index.js.map +1 -1
  223. package/dist/cjs/utils/deferred.js +39 -0
  224. package/dist/cjs/utils/deferred.js.map +1 -0
  225. package/dist/cjs/utils/ref-counted-map.js +120 -0
  226. package/dist/cjs/utils/ref-counted-map.js.map +1 -0
  227. package/dist/esm/api/client.js +2 -13
  228. package/dist/esm/api/client.js.map +1 -1
  229. package/dist/esm/api/react.js +223 -0
  230. package/dist/esm/api/react.js.map +1 -0
  231. package/dist/esm/api-handler/handlers/element-tree.js.map +1 -1
  232. package/dist/esm/api-handler/handlers/manifest.js +1 -1
  233. package/dist/esm/api-handler/handlers/merge-translated-data.js.map +1 -1
  234. package/dist/esm/api-handler/handlers/translatable-data.js.map +1 -1
  235. package/dist/esm/api-handler/handlers/webhook/diff-projection.js +38 -0
  236. package/dist/esm/api-handler/handlers/webhook/diff-projection.js.map +1 -0
  237. package/dist/esm/builder/host-to-builder-actions.js +4 -4
  238. package/dist/esm/builder/host-to-builder-actions.js.map +1 -1
  239. package/dist/esm/builder/index.js +1 -1
  240. package/dist/esm/builder/index.js.map +1 -1
  241. package/dist/esm/builder/serialization.js +59 -0
  242. package/dist/esm/builder/serialization.js.map +1 -0
  243. package/dist/esm/client/index.js +5 -5
  244. package/dist/esm/client/index.js.map +1 -1
  245. package/dist/esm/components/builtin/Box/Box.js +1 -1
  246. package/dist/esm/components/builtin/Box/Box.js.map +1 -1
  247. package/dist/esm/components/builtin/Form/Form.js +1 -1
  248. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  249. package/dist/esm/components/hooks/useTableFormFieldRefs.js +1 -1
  250. package/dist/esm/components/hooks/useTableFormFieldRefs.js.map +1 -1
  251. package/dist/esm/controls/serialization/base/index.js +78 -0
  252. package/dist/esm/controls/serialization/base/index.js.map +1 -0
  253. package/dist/esm/controls/serialization/base/visitor.js +39 -0
  254. package/dist/esm/controls/serialization/base/visitor.js.map +1 -0
  255. package/dist/esm/controls/serialization/index.js +30 -0
  256. package/dist/esm/controls/serialization/index.js.map +1 -0
  257. package/dist/esm/controls/serialization/message-port/function-serialization.js +52 -0
  258. package/dist/esm/controls/serialization/message-port/function-serialization.js.map +1 -0
  259. package/dist/esm/controls/serialization/message-port/index.js +3 -0
  260. package/dist/esm/controls/serialization/message-port/index.js.map +1 -0
  261. package/dist/esm/controls/serialization/message-port/visitor.js +24 -0
  262. package/dist/esm/controls/serialization/message-port/visitor.js.map +1 -0
  263. package/dist/esm/next/api-handler/config/app-router.js +10 -1
  264. package/dist/esm/next/api-handler/config/app-router.js.map +1 -1
  265. package/dist/esm/next/api-handler/config/pages-router.js +1 -1
  266. package/dist/esm/next/api-handler/config/pages-router.js.map +1 -1
  267. package/dist/esm/next/components/framework-provider/index.js +5 -2
  268. package/dist/esm/next/components/framework-provider/index.js.map +1 -1
  269. package/dist/esm/next/components/tests/controls/color-control/fixtures.js.map +1 -1
  270. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +2 -1
  271. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  272. package/dist/esm/next/components/tests/controls/rich-text-v2-control/fixtures.js.map +1 -1
  273. package/dist/esm/next/components/tests/makeswift-component/fixtures.js +2 -1
  274. package/dist/esm/next/components/tests/makeswift-component/fixtures.js.map +1 -1
  275. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js +3 -2
  276. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -1
  277. package/dist/esm/next/fetch.js +6 -0
  278. package/dist/esm/next/fetch.js.map +1 -0
  279. package/dist/esm/next/runtime.js +11 -0
  280. package/dist/esm/next/runtime.js.map +1 -0
  281. package/dist/esm/next/testing/element-data.js +1 -1
  282. package/dist/esm/next/testing/element-data.js.map +1 -1
  283. package/dist/esm/next/testing/index.js +0 -1
  284. package/dist/esm/next/testing/index.js.map +1 -1
  285. package/dist/esm/next/testing/page-rendering.js +3 -3
  286. package/dist/esm/next/testing/page-rendering.js.map +1 -1
  287. package/dist/esm/prop-controllers/descriptors.js.map +1 -1
  288. package/dist/esm/prop-controllers/instances.js.map +1 -1
  289. package/dist/esm/prop-controllers/serialization.js +338 -0
  290. package/dist/esm/prop-controllers/serialization.js.map +1 -0
  291. package/dist/esm/runtimes/react/components/Document.js +1 -1
  292. package/dist/esm/runtimes/react/components/Document.js.map +1 -1
  293. package/dist/esm/runtimes/react/components/DocumentRoot.js.map +1 -1
  294. package/dist/esm/runtimes/react/components/Element.js +1 -3
  295. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  296. package/dist/esm/runtimes/react/components/ElementData.js.map +1 -1
  297. package/dist/esm/runtimes/react/components/ElementReference.js.map +1 -1
  298. package/dist/esm/runtimes/react/components/ElementRegistration.js +1 -1
  299. package/dist/esm/runtimes/react/components/ElementRegistration.js.map +1 -1
  300. package/dist/esm/runtimes/react/components/GoogleFontLink.js +35 -0
  301. package/dist/esm/runtimes/react/components/GoogleFontLink.js.map +1 -0
  302. package/dist/esm/runtimes/react/components/MakeswiftComponent.js +1 -1
  303. package/dist/esm/runtimes/react/components/MakeswiftComponent.js.map +1 -1
  304. package/dist/esm/runtimes/react/components/MakeswiftFonts.js +9 -0
  305. package/dist/esm/runtimes/react/components/MakeswiftFonts.js.map +1 -0
  306. package/dist/esm/runtimes/react/components/RuntimeProvider.js +4 -5
  307. package/dist/esm/runtimes/react/components/RuntimeProvider.js.map +1 -1
  308. package/dist/esm/runtimes/react/components/framework-context.js +14 -2
  309. package/dist/esm/runtimes/react/components/framework-context.js.map +1 -1
  310. package/dist/esm/runtimes/react/components/page/Page.js.map +1 -1
  311. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js +3 -2
  312. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  313. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -2
  314. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  315. package/dist/esm/runtimes/react/controls.js +2 -2
  316. package/dist/esm/runtimes/react/controls.js.map +1 -1
  317. package/dist/esm/runtimes/react/element-imperative-handle.js +1 -1
  318. package/dist/esm/runtimes/react/element-imperative-handle.js.map +1 -1
  319. package/dist/esm/runtimes/react/hooks/use-async-effect.js +31 -0
  320. package/dist/esm/runtimes/react/hooks/use-async-effect.js.map +1 -0
  321. package/dist/esm/runtimes/react/hooks/use-breakpoints.js +1 -1
  322. package/dist/esm/runtimes/react/hooks/use-breakpoints.js.map +1 -1
  323. package/dist/esm/runtimes/react/hooks/use-builder-edit-mode.js +1 -1
  324. package/dist/esm/runtimes/react/hooks/use-builder-edit-mode.js.map +1 -1
  325. package/dist/esm/runtimes/react/hooks/use-cache-data.js +1 -1
  326. package/dist/esm/runtimes/react/hooks/use-cache-data.js.map +1 -1
  327. package/dist/esm/runtimes/react/hooks/use-component.js +1 -1
  328. package/dist/esm/runtimes/react/hooks/use-component.js.map +1 -1
  329. package/dist/esm/runtimes/react/hooks/use-current-breakpoint.js +15 -0
  330. package/dist/esm/runtimes/react/hooks/use-current-breakpoint.js.map +1 -0
  331. package/dist/esm/runtimes/react/hooks/use-dispatch.js.map +1 -1
  332. package/dist/esm/runtimes/react/hooks/use-document.js +1 -1
  333. package/dist/esm/runtimes/react/hooks/use-document.js.map +1 -1
  334. package/dist/esm/runtimes/react/hooks/use-element-id.js +1 -1
  335. package/dist/esm/runtimes/react/hooks/use-element-id.js.map +1 -1
  336. package/dist/esm/runtimes/react/hooks/use-is-in-builder.js +1 -1
  337. package/dist/esm/runtimes/react/hooks/use-is-in-builder.js.map +1 -1
  338. package/dist/esm/runtimes/react/hooks/use-is-preview.js +9 -0
  339. package/dist/esm/runtimes/react/hooks/use-is-preview.js.map +1 -0
  340. package/dist/esm/runtimes/react/hooks/use-register-document.js.map +1 -1
  341. package/dist/esm/runtimes/react/hooks/use-resolved-props.js +2 -2
  342. package/dist/esm/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  343. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js +1 -1
  344. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js.map +1 -1
  345. package/dist/esm/runtimes/react/hooks/use-selector.js.map +1 -1
  346. package/dist/esm/runtimes/react/hooks/use-store.js.map +1 -1
  347. package/dist/esm/runtimes/react/hooks/use-universal-dispatch.js.map +1 -1
  348. package/dist/esm/runtimes/react/host-api-client.js +2 -3
  349. package/dist/esm/runtimes/react/host-api-client.js.map +1 -1
  350. package/dist/esm/runtimes/react/index.js +2 -2
  351. package/dist/esm/runtimes/react/index.js.map +1 -1
  352. package/dist/esm/runtimes/react/lib/resolved-style-to-css.js +38 -0
  353. package/dist/esm/runtimes/react/lib/resolved-style-to-css.js.map +1 -0
  354. package/dist/esm/runtimes/react/poll-box-model.js +1 -1
  355. package/dist/esm/runtimes/react/poll-box-model.js.map +1 -1
  356. package/dist/esm/runtimes/react/react-runtime-core.js +1 -4
  357. package/dist/esm/runtimes/react/react-runtime-core.js.map +1 -1
  358. package/dist/esm/runtimes/react/runtime-core.js +5 -3
  359. package/dist/esm/runtimes/react/runtime-core.js.map +1 -1
  360. package/dist/esm/runtimes/react/testing/react-runtime.js +3 -2
  361. package/dist/esm/runtimes/react/testing/react-runtime.js.map +1 -1
  362. package/dist/esm/runtimes/react/utils/can-accept-ref.js.map +1 -1
  363. package/dist/esm/runtimes/react/utils/google-fonts-url.js +23 -0
  364. package/dist/esm/runtimes/react/utils/google-fonts-url.js.map +1 -0
  365. package/dist/esm/state/actions/internal/read-only-actions.js +21 -14
  366. package/dist/esm/state/actions/internal/read-only-actions.js.map +1 -1
  367. package/dist/esm/state/actions/internal/read-write-actions.js +6 -1
  368. package/dist/esm/state/actions/internal/read-write-actions.js.map +1 -1
  369. package/dist/esm/state/actions/internal.js +162 -0
  370. package/dist/esm/state/actions/internal.js.map +1 -0
  371. package/dist/esm/state/builder-api/actions.js +7 -8
  372. package/dist/esm/state/builder-api/actions.js.map +1 -1
  373. package/dist/esm/state/builder-api/api.js +1 -0
  374. package/dist/esm/state/builder-api/api.js.map +1 -0
  375. package/dist/esm/state/builder-api/navigation-listener.js +86 -0
  376. package/dist/esm/state/builder-api/navigation-listener.js.map +1 -0
  377. package/dist/esm/state/host-api.js.map +1 -1
  378. package/dist/esm/state/makeswift-api-client.js +19 -33
  379. package/dist/esm/state/makeswift-api-client.js.map +1 -1
  380. package/dist/esm/state/middleware/{read-write/makeswift-api-client-sync.js → makeswift-api-client-sync.js} +1 -1
  381. package/dist/esm/state/middleware/makeswift-api-client-sync.js.map +1 -0
  382. package/dist/esm/state/middleware/read-write/builder-api/index.js +11 -2
  383. package/dist/esm/state/middleware/read-write/builder-api/index.js.map +1 -1
  384. package/dist/esm/state/middleware/read-write/builder-api/initialize-connection.js +3 -0
  385. package/dist/esm/state/middleware/read-write/builder-api/initialize-connection.js.map +1 -1
  386. package/dist/esm/state/middleware/read-write/index.js +16 -0
  387. package/dist/esm/state/middleware/read-write/index.js.map +1 -0
  388. package/dist/esm/state/middleware/{prop-controller-handles.js → read-write/prop-controller-handles.js} +8 -8
  389. package/dist/esm/state/middleware/read-write/prop-controller-handles.js.map +1 -0
  390. package/dist/esm/state/mixins/breakpoint-watch.js +48 -0
  391. package/dist/esm/state/mixins/breakpoint-watch.js.map +1 -0
  392. package/dist/esm/state/modules/api-resources.js +5 -8
  393. package/dist/esm/state/modules/api-resources.js.map +1 -1
  394. package/dist/esm/state/modules/box-models.js +98 -0
  395. package/dist/esm/state/modules/box-models.js.map +1 -0
  396. package/dist/esm/state/modules/breakpoints.js +2 -3
  397. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  398. package/dist/esm/state/modules/builder-edit-mode.js +2 -3
  399. package/dist/esm/state/modules/builder-edit-mode.js.map +1 -1
  400. package/dist/esm/state/modules/components-meta.js +3 -4
  401. package/dist/esm/state/modules/components-meta.js.map +1 -1
  402. package/dist/esm/state/modules/element-imperative-handles.js +35 -0
  403. package/dist/esm/state/modules/element-imperative-handles.js.map +1 -0
  404. package/dist/esm/state/modules/element-trees.js +4 -6
  405. package/dist/esm/state/modules/element-trees.js.map +1 -1
  406. package/dist/esm/state/modules/is-in-builder.js +2 -3
  407. package/dist/esm/state/modules/is-in-builder.js.map +1 -1
  408. package/dist/esm/state/modules/is-preview.js +21 -0
  409. package/dist/esm/state/modules/is-preview.js.map +1 -0
  410. package/dist/esm/state/modules/locale.js +1 -4
  411. package/dist/esm/state/modules/locale.js.map +1 -1
  412. package/dist/esm/state/modules/localized-resources-map.js +3 -5
  413. package/dist/esm/state/modules/localized-resources-map.js.map +1 -1
  414. package/dist/esm/state/modules/pointer.js +22 -0
  415. package/dist/esm/state/modules/pointer.js.map +1 -0
  416. package/dist/esm/state/modules/prop-controllers.js +3 -4
  417. package/dist/esm/state/modules/prop-controllers.js.map +1 -1
  418. package/dist/esm/state/modules/react-components.js +3 -4
  419. package/dist/esm/state/modules/react-components.js.map +1 -1
  420. package/dist/esm/state/modules/read-only-documents.js +6 -4
  421. package/dist/esm/state/modules/read-only-documents.js.map +1 -1
  422. package/dist/esm/state/modules/read-write/box-models.js +16 -2
  423. package/dist/esm/state/modules/read-write/box-models.js.map +1 -1
  424. package/dist/esm/state/modules/read-write-documents.js +60 -0
  425. package/dist/esm/state/modules/read-write-documents.js.map +1 -0
  426. package/dist/esm/state/modules/site-version.js +0 -3
  427. package/dist/esm/state/modules/site-version.js.map +1 -1
  428. package/dist/esm/state/react-builder-preview.js +500 -15
  429. package/dist/esm/state/react-builder-preview.js.map +1 -1
  430. package/dist/esm/state/react-page.js +240 -7
  431. package/dist/esm/state/react-page.js.map +1 -1
  432. package/dist/esm/state/read-only-state.js +20 -1
  433. package/dist/esm/state/read-only-state.js.map +1 -1
  434. package/dist/esm/state/read-write-state.js +7 -1
  435. package/dist/esm/state/read-write-state.js.map +1 -1
  436. package/dist/esm/state/shared-api.js.map +1 -1
  437. package/dist/esm/state/store.js +188 -0
  438. package/dist/esm/state/store.js.map +1 -0
  439. package/dist/esm/state/translations/get.js +1 -1
  440. package/dist/esm/state/translations/get.js.map +1 -1
  441. package/dist/esm/state/translations/merge.js +1 -1
  442. package/dist/esm/state/translations/merge.js.map +1 -1
  443. package/dist/esm/state/unified-state.js +1 -0
  444. package/dist/esm/state/unified-state.js.map +1 -0
  445. package/dist/esm/translations/index.js +7 -0
  446. package/dist/esm/translations/index.js.map +1 -0
  447. package/dist/esm/unstable-framework-support/index.js +4 -2
  448. package/dist/esm/unstable-framework-support/index.js.map +1 -1
  449. package/dist/esm/utils/deferred.js +15 -0
  450. package/dist/esm/utils/deferred.js.map +1 -0
  451. package/dist/esm/utils/ref-counted-map.js +96 -0
  452. package/dist/esm/utils/ref-counted-map.js.map +1 -0
  453. package/dist/types/api/client.d.ts +2 -5
  454. package/dist/types/api/client.d.ts.map +1 -1
  455. package/dist/types/api/react.d.ts +82 -0
  456. package/dist/types/api/react.d.ts.map +1 -0
  457. package/dist/types/api-handler/handlers/element-tree.d.ts +1 -1
  458. package/dist/types/api-handler/handlers/element-tree.d.ts.map +1 -1
  459. package/dist/types/api-handler/handlers/merge-translated-data.d.ts +1 -1
  460. package/dist/types/api-handler/handlers/merge-translated-data.d.ts.map +1 -1
  461. package/dist/types/api-handler/handlers/translatable-data.d.ts +1 -1
  462. package/dist/types/api-handler/handlers/translatable-data.d.ts.map +1 -1
  463. package/dist/types/api-handler/handlers/webhook/diff-projection.d.ts +201 -0
  464. package/dist/types/api-handler/handlers/webhook/diff-projection.d.ts.map +1 -0
  465. package/dist/types/api-handler/handlers/webhook/types.d.ts +4 -4
  466. package/dist/types/builder/host-to-builder-actions.d.ts +2 -2
  467. package/dist/types/builder/host-to-builder-actions.d.ts.map +1 -1
  468. package/dist/types/builder/index.d.ts +2 -2
  469. package/dist/types/builder/index.d.ts.map +1 -1
  470. package/dist/types/builder/serialization.d.ts +23 -0
  471. package/dist/types/builder/serialization.d.ts.map +1 -0
  472. package/dist/types/builder/serialization.test.d.ts +2 -0
  473. package/dist/types/builder/serialization.test.d.ts.map +1 -0
  474. package/dist/types/client/index.d.ts +2 -2
  475. package/dist/types/client/index.d.ts.map +1 -1
  476. package/dist/types/client/tests/client.get-component-snapshots.test.d.ts +2 -0
  477. package/dist/types/client/tests/client.get-component-snapshots.test.d.ts.map +1 -0
  478. package/dist/types/client/tests/client.get-fonts.test.d.ts +2 -0
  479. package/dist/types/client/tests/client.get-fonts.test.d.ts.map +1 -0
  480. package/dist/types/client/tests/client.introspect-many.test.d.ts +2 -0
  481. package/dist/types/client/tests/client.introspect-many.test.d.ts.map +1 -0
  482. package/dist/types/components/builtin/Box/Box.d.ts +1 -1
  483. package/dist/types/components/builtin/Box/Box.d.ts.map +1 -1
  484. package/dist/types/components/builtin/Form/Form.d.ts +1 -1
  485. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  486. package/dist/types/components/hooks/__tests__/useMediaQuery.test.d.ts +3 -0
  487. package/dist/types/components/hooks/__tests__/useMediaQuery.test.d.ts.map +1 -0
  488. package/dist/types/controls/serialization/base/index.d.ts +10 -0
  489. package/dist/types/controls/serialization/base/index.d.ts.map +1 -0
  490. package/dist/types/controls/serialization/base/visitor.d.ts +7 -0
  491. package/dist/types/controls/serialization/base/visitor.d.ts.map +1 -0
  492. package/dist/types/controls/serialization/index.d.ts +10 -0
  493. package/dist/types/controls/serialization/index.d.ts.map +1 -0
  494. package/dist/types/controls/serialization/message-port/function-serialization.d.ts +16 -0
  495. package/dist/types/controls/serialization/message-port/function-serialization.d.ts.map +1 -0
  496. package/dist/types/controls/serialization/message-port/function-serialization.test.d.ts +2 -0
  497. package/dist/types/controls/serialization/message-port/function-serialization.test.d.ts.map +1 -0
  498. package/dist/types/controls/serialization/message-port/index.d.ts +3 -0
  499. package/dist/types/controls/serialization/message-port/index.d.ts.map +1 -0
  500. package/dist/types/controls/serialization/message-port/visitor.d.ts +7 -0
  501. package/dist/types/controls/serialization/message-port/visitor.d.ts.map +1 -0
  502. package/dist/types/locale.d.ts +1 -1
  503. package/dist/types/next/api-handler/config/app-router.d.ts.map +1 -1
  504. package/dist/types/next/api-handler/config/pages-router.test.d.ts +2 -0
  505. package/dist/types/next/api-handler/config/pages-router.test.d.ts.map +1 -0
  506. package/dist/types/next/components/framework-provider/index.d.ts.map +1 -1
  507. package/dist/types/next/components/tests/controls/code-control.test.d.ts +2 -0
  508. package/dist/types/next/components/tests/controls/code-control.test.d.ts.map +1 -0
  509. package/dist/types/next/components/tests/controls/color-control/fixtures.d.ts +1 -1
  510. package/dist/types/next/components/tests/controls/color-control/fixtures.d.ts.map +1 -1
  511. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts +3 -3
  512. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  513. package/dist/types/next/components/tests/controls/rich-text-v2-control/fixtures.d.ts +1 -1
  514. package/dist/types/next/components/tests/controls/rich-text-v2-control/fixtures.d.ts.map +1 -1
  515. package/dist/types/next/components/tests/makeswift-component/fixtures.d.ts +1 -1
  516. package/dist/types/next/components/tests/makeswift-component/fixtures.d.ts.map +1 -1
  517. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts +1 -1
  518. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts.map +1 -1
  519. package/dist/types/next/fetch.d.ts +3 -0
  520. package/dist/types/next/fetch.d.ts.map +1 -0
  521. package/dist/types/next/runtime.d.ts +10 -0
  522. package/dist/types/next/runtime.d.ts.map +1 -0
  523. package/dist/types/next/testing/element-data.d.ts +1 -1
  524. package/dist/types/next/testing/element-data.d.ts.map +1 -1
  525. package/dist/types/next/testing/index.d.ts +0 -1
  526. package/dist/types/next/testing/index.d.ts.map +1 -1
  527. package/dist/types/next/testing/page-rendering.d.ts.map +1 -1
  528. package/dist/types/prop-controllers/descriptors.d.ts +1 -1
  529. package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
  530. package/dist/types/prop-controllers/instances.d.ts +1 -1
  531. package/dist/types/prop-controllers/instances.d.ts.map +1 -1
  532. package/dist/types/prop-controllers/serialization.d.ts +228 -0
  533. package/dist/types/prop-controllers/serialization.d.ts.map +1 -0
  534. package/dist/types/runtimes/react/components/Document.d.ts +1 -1
  535. package/dist/types/runtimes/react/components/Document.d.ts.map +1 -1
  536. package/dist/types/runtimes/react/components/DocumentRoot.d.ts +1 -1
  537. package/dist/types/runtimes/react/components/DocumentRoot.d.ts.map +1 -1
  538. package/dist/types/runtimes/react/components/Element.d.ts +1 -1
  539. package/dist/types/runtimes/react/components/Element.d.ts.map +1 -1
  540. package/dist/types/runtimes/react/components/ElementData.d.ts +1 -1
  541. package/dist/types/runtimes/react/components/ElementData.d.ts.map +1 -1
  542. package/dist/types/runtimes/react/components/ElementReference.d.ts +1 -1
  543. package/dist/types/runtimes/react/components/ElementReference.d.ts.map +1 -1
  544. package/dist/types/runtimes/react/components/GoogleFontLink.d.ts +14 -0
  545. package/dist/types/runtimes/react/components/GoogleFontLink.d.ts.map +1 -0
  546. package/dist/types/runtimes/react/components/MakeswiftFonts.d.ts +7 -0
  547. package/dist/types/runtimes/react/components/MakeswiftFonts.d.ts.map +1 -0
  548. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts +1 -1
  549. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts.map +1 -1
  550. package/dist/types/runtimes/react/components/framework-context.d.ts +4 -2
  551. package/dist/types/runtimes/react/components/framework-context.d.ts.map +1 -1
  552. package/dist/types/runtimes/react/components/page/Page.d.ts +1 -1
  553. package/dist/types/runtimes/react/components/page/Page.d.ts.map +1 -1
  554. package/dist/types/runtimes/react/controls.d.ts +2 -2
  555. package/dist/types/runtimes/react/controls.d.ts.map +1 -1
  556. package/dist/types/runtimes/react/element-imperative-handle.d.ts +1 -1
  557. package/dist/types/runtimes/react/element-imperative-handle.d.ts.map +1 -1
  558. package/dist/types/runtimes/react/hooks/__tests__/use-async-effect.test.d.ts +2 -0
  559. package/dist/types/runtimes/react/hooks/__tests__/use-async-effect.test.d.ts.map +1 -0
  560. package/dist/types/runtimes/react/hooks/use-async-effect.d.ts +3 -0
  561. package/dist/types/runtimes/react/hooks/use-async-effect.d.ts.map +1 -0
  562. package/dist/types/runtimes/react/hooks/use-cache-data.d.ts +1 -1
  563. package/dist/types/runtimes/react/hooks/use-cache-data.d.ts.map +1 -1
  564. package/dist/types/runtimes/react/hooks/use-component.d.ts +1 -1
  565. package/dist/types/runtimes/react/hooks/use-component.d.ts.map +1 -1
  566. package/dist/types/runtimes/react/hooks/use-current-breakpoint.d.ts +3 -0
  567. package/dist/types/runtimes/react/hooks/use-current-breakpoint.d.ts.map +1 -0
  568. package/dist/types/runtimes/react/hooks/use-dispatch.d.ts +3 -3
  569. package/dist/types/runtimes/react/hooks/use-dispatch.d.ts.map +1 -1
  570. package/dist/types/runtimes/react/hooks/use-document.d.ts +1 -1
  571. package/dist/types/runtimes/react/hooks/use-document.d.ts.map +1 -1
  572. package/dist/types/runtimes/react/hooks/use-is-preview.d.ts +2 -0
  573. package/dist/types/runtimes/react/hooks/use-is-preview.d.ts.map +1 -0
  574. package/dist/types/runtimes/react/hooks/use-register-document.d.ts +1 -1
  575. package/dist/types/runtimes/react/hooks/use-register-document.d.ts.map +1 -1
  576. package/dist/types/runtimes/react/hooks/use-selector.d.ts +3 -3
  577. package/dist/types/runtimes/react/hooks/use-selector.d.ts.map +1 -1
  578. package/dist/types/runtimes/react/hooks/use-store.d.ts +4 -4
  579. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  580. package/dist/types/runtimes/react/hooks/use-universal-dispatch.d.ts +1 -1
  581. package/dist/types/runtimes/react/hooks/use-universal-dispatch.d.ts.map +1 -1
  582. package/dist/types/runtimes/react/host-api-client.d.ts +1 -1
  583. package/dist/types/runtimes/react/host-api-client.d.ts.map +1 -1
  584. package/dist/types/runtimes/react/index.d.ts +1 -1
  585. package/dist/types/runtimes/react/index.d.ts.map +1 -1
  586. package/dist/types/runtimes/react/lib/resolved-style-to-css.d.ts +4 -0
  587. package/dist/types/runtimes/react/lib/resolved-style-to-css.d.ts.map +1 -0
  588. package/dist/types/runtimes/react/poll-box-model.d.ts +1 -1
  589. package/dist/types/runtimes/react/poll-box-model.d.ts.map +1 -1
  590. package/dist/types/runtimes/react/react-runtime-core.d.ts +1 -1
  591. package/dist/types/runtimes/react/react-runtime-core.d.ts.map +1 -1
  592. package/dist/types/runtimes/react/runtime-core.d.ts +1 -2
  593. package/dist/types/runtimes/react/runtime-core.d.ts.map +1 -1
  594. package/dist/types/runtimes/react/testing/react-runtime.d.ts +4 -1
  595. package/dist/types/runtimes/react/testing/react-runtime.d.ts.map +1 -1
  596. package/dist/types/runtimes/react/utils/can-accept-ref.d.ts +1 -1
  597. package/dist/types/runtimes/react/utils/can-accept-ref.d.ts.map +1 -1
  598. package/dist/types/runtimes/react/utils/google-fonts-url.d.ts +6 -0
  599. package/dist/types/runtimes/react/utils/google-fonts-url.d.ts.map +1 -0
  600. package/dist/types/state/__tests__/fixtures/serialized-descriptors-from-builder.d.ts +5 -0
  601. package/dist/types/state/__tests__/fixtures/serialized-descriptors-from-builder.d.ts.map +1 -0
  602. package/dist/types/state/__tests__/fixtures/translatable-content-sample.d.ts +3 -0
  603. package/dist/types/state/__tests__/fixtures/translatable-content-sample.d.ts.map +1 -0
  604. package/dist/types/state/__tests__/get-translatable-content.test.d.ts +2 -0
  605. package/dist/types/state/__tests__/get-translatable-content.test.d.ts.map +1 -0
  606. package/dist/types/state/__tests__/react-page.test.d.ts +2 -0
  607. package/dist/types/state/__tests__/react-page.test.d.ts.map +1 -0
  608. package/dist/types/state/__tests__/store.read-write-state.test.d.ts +2 -0
  609. package/dist/types/state/__tests__/store.read-write-state.test.d.ts.map +1 -0
  610. package/dist/types/state/__tests__/test-store.d.ts +31 -0
  611. package/dist/types/state/__tests__/test-store.d.ts.map +1 -0
  612. package/dist/types/state/actions/index.d.ts +5 -8
  613. package/dist/types/state/actions/index.d.ts.map +1 -1
  614. package/dist/types/state/actions/internal/index.d.ts +4 -2
  615. package/dist/types/state/actions/internal/index.d.ts.map +1 -1
  616. package/dist/types/state/actions/internal/read-only-actions.d.ts +25 -13
  617. package/dist/types/state/actions/internal/read-only-actions.d.ts.map +1 -1
  618. package/dist/types/state/actions/internal/read-write-actions.d.ts +6 -1
  619. package/dist/types/state/actions/internal/read-write-actions.d.ts.map +1 -1
  620. package/dist/types/state/actions/internal.d.ts +181 -0
  621. package/dist/types/state/actions/internal.d.ts.map +1 -0
  622. package/dist/types/state/builder-api/actions.d.ts +14 -14
  623. package/dist/types/state/builder-api/actions.d.ts.map +1 -1
  624. package/dist/types/state/builder-api/api.d.ts +9 -0
  625. package/dist/types/state/builder-api/api.d.ts.map +1 -0
  626. package/dist/types/state/builder-api/navigation-listener.d.ts +3 -0
  627. package/dist/types/state/builder-api/navigation-listener.d.ts.map +1 -0
  628. package/dist/types/state/host-api.d.ts +1 -1
  629. package/dist/types/state/host-api.d.ts.map +1 -1
  630. package/dist/types/state/makeswift-api-client.d.ts +2 -11
  631. package/dist/types/state/makeswift-api-client.d.ts.map +1 -1
  632. package/dist/types/state/middleware/makeswift-api-client-sync.d.ts +5 -0
  633. package/dist/types/state/middleware/makeswift-api-client-sync.d.ts.map +1 -0
  634. package/dist/types/state/middleware/read-write/builder-api/index.d.ts.map +1 -1
  635. package/dist/types/state/middleware/read-write/builder-api/initialize-connection.d.ts.map +1 -1
  636. package/dist/types/state/middleware/read-write/index.d.ts +5 -0
  637. package/dist/types/state/middleware/read-write/index.d.ts.map +1 -0
  638. package/dist/types/state/middleware/{prop-controller-handles.d.ts → read-write/prop-controller-handles.d.ts} +1 -1
  639. package/dist/types/state/middleware/read-write/prop-controller-handles.d.ts.map +1 -0
  640. package/dist/types/state/mixins/breakpoint-watch.d.ts +11 -0
  641. package/dist/types/state/mixins/breakpoint-watch.d.ts.map +1 -0
  642. package/dist/types/state/modules/api-resources.d.ts.map +1 -1
  643. package/dist/types/state/modules/box-models.d.ts +23 -0
  644. package/dist/types/state/modules/box-models.d.ts.map +1 -0
  645. package/dist/types/state/modules/breakpoints.d.ts.map +1 -1
  646. package/dist/types/state/modules/builder-edit-mode.d.ts.map +1 -1
  647. package/dist/types/state/modules/components-meta.d.ts.map +1 -1
  648. package/dist/types/state/modules/element-imperative-handles.d.ts +7 -0
  649. package/dist/types/state/modules/element-imperative-handles.d.ts.map +1 -0
  650. package/dist/types/state/modules/element-trees.d.ts.map +1 -1
  651. package/dist/types/state/modules/is-in-builder.d.ts.map +1 -1
  652. package/dist/types/state/modules/is-preview.d.ts +6 -0
  653. package/dist/types/state/modules/is-preview.d.ts.map +1 -0
  654. package/dist/types/state/modules/locale.d.ts.map +1 -1
  655. package/dist/types/state/modules/localized-resources-map.d.ts.map +1 -1
  656. package/dist/types/state/modules/pointer.d.ts +12 -0
  657. package/dist/types/state/modules/pointer.d.ts.map +1 -0
  658. package/dist/types/state/modules/prop-controllers.d.ts.map +1 -1
  659. package/dist/types/state/modules/react-components.d.ts.map +1 -1
  660. package/dist/types/state/modules/read-only-documents.d.ts.map +1 -1
  661. package/dist/types/state/modules/read-write/box-models.d.ts +12 -9
  662. package/dist/types/state/modules/read-write/box-models.d.ts.map +1 -1
  663. package/dist/types/state/modules/read-write-documents.d.ts +14 -0
  664. package/dist/types/state/modules/read-write-documents.d.ts.map +1 -0
  665. package/dist/types/state/modules/site-version.d.ts.map +1 -1
  666. package/dist/types/state/react-builder-preview.d.ts +93 -26
  667. package/dist/types/state/react-builder-preview.d.ts.map +1 -1
  668. package/dist/types/state/react-page.d.ts +136 -20
  669. package/dist/types/state/react-page.d.ts.map +1 -1
  670. package/dist/types/state/read-only-state.d.ts +10 -1
  671. package/dist/types/state/read-only-state.d.ts.map +1 -1
  672. package/dist/types/state/read-write-state.d.ts +12 -6
  673. package/dist/types/state/read-write-state.d.ts.map +1 -1
  674. package/dist/types/state/shared-api.d.ts.map +1 -1
  675. package/dist/types/state/store.d.ts +86 -0
  676. package/dist/types/state/store.d.ts.map +1 -0
  677. package/dist/types/state/translations/get.d.ts +1 -1
  678. package/dist/types/state/translations/get.d.ts.map +1 -1
  679. package/dist/types/state/translations/merge.d.ts +1 -1
  680. package/dist/types/state/translations/merge.d.ts.map +1 -1
  681. package/dist/types/state/unified-state.d.ts +9 -0
  682. package/dist/types/state/unified-state.d.ts.map +1 -0
  683. package/dist/types/translations/index.d.ts +6 -0
  684. package/dist/types/translations/index.d.ts.map +1 -0
  685. package/dist/types/unstable-framework-support/index.d.ts +1 -1
  686. package/dist/types/unstable-framework-support/index.d.ts.map +1 -1
  687. package/dist/types/utils/__tests__/ref-counted-map.test.d.ts +2 -0
  688. package/dist/types/utils/__tests__/ref-counted-map.test.d.ts.map +1 -0
  689. package/dist/types/utils/deferred.d.ts +7 -0
  690. package/dist/types/utils/deferred.d.ts.map +1 -0
  691. package/dist/types/utils/ref-counted-map.d.ts +32 -0
  692. package/dist/types/utils/ref-counted-map.d.ts.map +1 -0
  693. package/package.json +3 -3
  694. package/dist/cjs/state/middleware/prop-controller-handles.js.map +0 -1
  695. package/dist/cjs/state/middleware/read-write/makeswift-api-client-sync.js.map +0 -1
  696. package/dist/esm/state/middleware/prop-controller-handles.js.map +0 -1
  697. package/dist/esm/state/middleware/read-write/makeswift-api-client-sync.js.map +0 -1
  698. package/dist/types/state/middleware/prop-controller-handles.d.ts.map +0 -1
  699. package/dist/types/state/middleware/read-write/makeswift-api-client-sync.d.ts +0 -5
  700. package/dist/types/state/middleware/read-write/makeswift-api-client-sync.d.ts.map +0 -1
@@ -33,14 +33,14 @@ __export(controls_exports, {
33
33
  module.exports = __toCommonJS(controls_exports);
34
34
  var import_react = require("react");
35
35
  var import_partition = require("../../utils/partition");
36
- var State = __toESM(require("../../state/read-only-state"));
36
+ var ReactPage = __toESM(require("../../state/react-page"));
37
37
  var import_descriptors = require("../../prop-controllers/descriptors");
38
38
  var import_use_store = require("./hooks/use-store");
39
39
  var import_legacy_controls = require("./legacy-controls");
40
40
  var import_use_resolved_props = require("./hooks/use-resolved-props");
41
41
  function useControlDefs(elementType) {
42
42
  const store = (0, import_use_store.useStore)();
43
- const all = State.getComponentPropControllerDescriptors(store.getState(), elementType) ?? {};
43
+ const all = ReactPage.getComponentPropControllerDescriptors(store.getState(), elementType) ?? {};
44
44
  return (0, import_react.useRef)((0, import_partition.partitionRecord)(all, import_descriptors.isLegacyDescriptor)).current;
45
45
  }
46
46
  function ResolveProps({ element, children: renderComponent }) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/controls.tsx"],"sourcesContent":["import { useRef, ReactNode } from 'react'\n\nimport { ControlDefinition } from '@makeswift/controls'\n\nimport { partitionRecord } from '../../utils/partition'\n\nimport * as State from '../../state/read-only-state'\nimport { isLegacyDescriptor, LegacyDescriptor } from '../../prop-controllers/descriptors'\n\nimport { useStore } from './hooks/use-store'\n\nimport { resolveLegacyDescriptorProp } from './legacy-controls'\nimport { useResolvedProps } from './hooks/use-resolved-props'\n\ntype PropsValueProps = {\n element: State.ElementData\n children(props: Record<string, unknown>): ReactNode\n}\n\nfunction useControlDefs(\n elementType: string,\n): readonly [Record<string, LegacyDescriptor>, Record<string, ControlDefinition>] {\n const store = useStore()\n const all = State.getComponentPropControllerDescriptors(store.getState(), elementType) ?? {}\n return useRef(partitionRecord(all, isLegacyDescriptor)).current\n}\n\nexport function ResolveProps({ element, children: renderComponent }: PropsValueProps): ReactNode {\n const [legacyDescriptors, definitions] = useControlDefs(element.type)\n\n const resolvedProps = useResolvedProps(definitions, element.props, element.key)\n\n const renderFn = Object.entries(legacyDescriptors).reduceRight(\n (renderFn, [propName, descriptor]) =>\n props =>\n resolveLegacyDescriptorProp(descriptor, propName, element.props[propName], props, renderFn),\n renderComponent,\n )\n\n return renderFn(resolvedProps)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAIlC,uBAAgC;AAEhC,YAAuB;AACvB,yBAAqD;AAErD,uBAAyB;AAEzB,6BAA4C;AAC5C,gCAAiC;AAOjC,SAAS,eACP,aACgF;AAChF,QAAM,YAAQ,2BAAS;AACvB,QAAM,MAAM,MAAM,sCAAsC,MAAM,SAAS,GAAG,WAAW,KAAK,CAAC;AAC3F,aAAO,yBAAO,kCAAgB,KAAK,qCAAkB,CAAC,EAAE;AAC1D;AAEO,SAAS,aAAa,EAAE,SAAS,UAAU,gBAAgB,GAA+B;AAC/F,QAAM,CAAC,mBAAmB,WAAW,IAAI,eAAe,QAAQ,IAAI;AAEpE,QAAM,oBAAgB,4CAAiB,aAAa,QAAQ,OAAO,QAAQ,GAAG;AAE9E,QAAM,WAAW,OAAO,QAAQ,iBAAiB,EAAE;AAAA,IACjD,CAACA,WAAU,CAAC,UAAU,UAAU,MAC9B,eACE,oDAA4B,YAAY,UAAU,QAAQ,MAAM,QAAQ,GAAG,OAAOA,SAAQ;AAAA,IAC9F;AAAA,EACF;AAEA,SAAO,SAAS,aAAa;AAC/B;","names":["renderFn"]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/controls.tsx"],"sourcesContent":["import { useRef, ReactNode } from 'react'\n\nimport { ControlDefinition } from '@makeswift/controls'\n\nimport { partitionRecord } from '../../utils/partition'\n\nimport * as ReactPage from '../../state/react-page'\nimport { isLegacyDescriptor, LegacyDescriptor } from '../../prop-controllers/descriptors'\n\nimport { useStore } from './hooks/use-store'\n\nimport { resolveLegacyDescriptorProp } from './legacy-controls'\nimport { useResolvedProps } from './hooks/use-resolved-props'\n\ntype PropsValueProps = {\n element: ReactPage.ElementData\n children(props: Record<string, unknown>): ReactNode\n}\n\nfunction useControlDefs(\n elementType: string,\n): readonly [Record<string, LegacyDescriptor>, Record<string, ControlDefinition>] {\n const store = useStore()\n const all = ReactPage.getComponentPropControllerDescriptors(store.getState(), elementType) ?? {}\n return useRef(partitionRecord(all, isLegacyDescriptor)).current\n}\n\nexport function ResolveProps({ element, children: renderComponent }: PropsValueProps): ReactNode {\n const [legacyDescriptors, definitions] = useControlDefs(element.type)\n\n const resolvedProps = useResolvedProps(definitions, element.props, element.key)\n\n const renderFn = Object.entries(legacyDescriptors).reduceRight(\n (renderFn, [propName, descriptor]) =>\n props =>\n resolveLegacyDescriptorProp(descriptor, propName, element.props[propName], props, renderFn),\n renderComponent,\n )\n\n return renderFn(resolvedProps)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkC;AAIlC,uBAAgC;AAEhC,gBAA2B;AAC3B,yBAAqD;AAErD,uBAAyB;AAEzB,6BAA4C;AAC5C,gCAAiC;AAOjC,SAAS,eACP,aACgF;AAChF,QAAM,YAAQ,2BAAS;AACvB,QAAM,MAAM,UAAU,sCAAsC,MAAM,SAAS,GAAG,WAAW,KAAK,CAAC;AAC/F,aAAO,yBAAO,kCAAgB,KAAK,qCAAkB,CAAC,EAAE;AAC1D;AAEO,SAAS,aAAa,EAAE,SAAS,UAAU,gBAAgB,GAA+B;AAC/F,QAAM,CAAC,mBAAmB,WAAW,IAAI,eAAe,QAAQ,IAAI;AAEpE,QAAM,oBAAgB,4CAAiB,aAAa,QAAQ,OAAO,QAAQ,GAAG;AAE9E,QAAM,WAAW,OAAO,QAAQ,iBAAiB,EAAE;AAAA,IACjD,CAACA,WAAU,CAAC,UAAU,UAAU,MAC9B,eACE,oDAA4B,YAAY,UAAU,QAAQ,MAAM,QAAQ,GAAG,OAAOA,SAAQ;AAAA,IAC9F;AAAA,EACF;AAEA,SAAO,SAAS,aAAa;AAC/B;","names":["renderFn"]}
@@ -22,7 +22,7 @@ __export(element_imperative_handle_exports, {
22
22
  isDomNodeHandle: () => isDomNodeHandle
23
23
  });
24
24
  module.exports = __toCommonJS(element_imperative_handle_exports);
25
- var import_box_models2 = require("../../state/modules/read-write/box-models");
25
+ var import_box_models2 = require("../../state/modules/box-models");
26
26
  var import_prop_controller_handles = require("../../state/modules/prop-controller-handles");
27
27
  class ElementImperativeHandle {
28
28
  getCurrent = () => null;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/element-imperative-handle.ts"],"sourcesContent":["import { BoxModel } from '@makeswift/controls'\nimport { BoxModelHandle } from '../../state/modules/read-write/box-models'\nimport { Descriptor } from '../../prop-controllers/descriptors'\nimport { DescriptorsPropControllers } from '../../prop-controllers/instances'\nimport { isMeasurable, measure } from '../../state/modules/read-write/box-models'\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../state/modules/prop-controller-handles'\n\nexport class ElementImperativeHandle<\n T extends Record<string, Descriptor> = Record<string, Descriptor>,\n >\n implements BoxModelHandle, PropControllersHandle<T>\n{\n private getCurrent: () => unknown = () => null\n private lastPropControllers: DescriptorsPropControllers<T> | null = null\n\n callback(getCurrent: () => unknown) {\n const current = this.getCurrent()\n\n if (current === null) this.setPropControllers(null)\n\n this.getCurrent = getCurrent\n\n if (this.lastPropControllers !== null) this.setPropControllers(this.lastPropControllers)\n }\n\n getBoxModel(): BoxModel | null {\n const current = this.getCurrent()\n\n return isMeasurable(current) ? measure(current) : null\n }\n\n setPropControllers(propControllers: DescriptorsPropControllers<T> | null): void {\n const current = this.getCurrent()\n\n if (isPropControllersHandle(current)) current.setPropControllers(propControllers)\n\n this.lastPropControllers = propControllers\n }\n\n getDomNode(): Element | null {\n const current = this.getCurrent()\n\n if (isDomNodeHandle(current)) return current.getDomNode()\n\n return current instanceof Element ? current : null\n }\n}\n\ntype DomNodeHandle = {\n getDomNode(): Element | null\n}\n\nexport function isDomNodeHandle(value: unknown): value is DomNodeHandle {\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getDomNode' in value &&\n typeof (value as { getDomNode: unknown }).getDomNode === 'function'\n ) {\n return true\n }\n\n return false\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,IAAAA,qBAAsC;AACtC,qCAGO;AAEA,MAAM,wBAIb;AAAA,EACU,aAA4B,MAAM;AAAA,EAClC,sBAA4D;AAAA,EAEpE,SAAS,YAA2B;AAClC,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,YAAY;AAAM,WAAK,mBAAmB,IAAI;AAElD,SAAK,aAAa;AAElB,QAAI,KAAK,wBAAwB;AAAM,WAAK,mBAAmB,KAAK,mBAAmB;AAAA,EACzF;AAAA,EAEA,cAA+B;AAC7B,UAAM,UAAU,KAAK,WAAW;AAEhC,eAAO,iCAAa,OAAO,QAAI,4BAAQ,OAAO,IAAI;AAAA,EACpD;AAAA,EAEA,mBAAmB,iBAA6D;AAC9E,UAAM,UAAU,KAAK,WAAW;AAEhC,YAAI,wDAAwB,OAAO;AAAG,cAAQ,mBAAmB,eAAe;AAEhF,SAAK,sBAAsB;AAAA,EAC7B;AAAA,EAEA,aAA6B;AAC3B,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,gBAAgB,OAAO;AAAG,aAAO,QAAQ,WAAW;AAExD,WAAO,mBAAmB,UAAU,UAAU;AAAA,EAChD;AACF;AAMO,SAAS,gBAAgB,OAAwC;AACtE,MACE,OAAO,UAAU,YACjB,UAAU,QACV,gBAAgB,SAChB,OAAQ,MAAkC,eAAe,YACzD;AACA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;","names":["import_box_models"]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/element-imperative-handle.ts"],"sourcesContent":["import { BoxModel } from '@makeswift/controls'\nimport { BoxModelHandle } from '../../state/modules/box-models'\nimport { Descriptor } from '../../prop-controllers/descriptors'\nimport { DescriptorsPropControllers } from '../../prop-controllers/instances'\nimport { isMeasurable, measure } from '../../state/modules/box-models'\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../state/modules/prop-controller-handles'\n\nexport class ElementImperativeHandle<\n T extends Record<string, Descriptor> = Record<string, Descriptor>,\n >\n implements BoxModelHandle, PropControllersHandle<T>\n{\n private getCurrent: () => unknown = () => null\n private lastPropControllers: DescriptorsPropControllers<T> | null = null\n\n callback(getCurrent: () => unknown) {\n const current = this.getCurrent()\n\n if (current === null) this.setPropControllers(null)\n\n this.getCurrent = getCurrent\n\n if (this.lastPropControllers !== null) this.setPropControllers(this.lastPropControllers)\n }\n\n getBoxModel(): BoxModel | null {\n const current = this.getCurrent()\n\n return isMeasurable(current) ? measure(current) : null\n }\n\n setPropControllers(propControllers: DescriptorsPropControllers<T> | null): void {\n const current = this.getCurrent()\n\n if (isPropControllersHandle(current)) current.setPropControllers(propControllers)\n\n this.lastPropControllers = propControllers\n }\n\n getDomNode(): Element | null {\n const current = this.getCurrent()\n\n if (isDomNodeHandle(current)) return current.getDomNode()\n\n return current instanceof Element ? current : null\n }\n}\n\ntype DomNodeHandle = {\n getDomNode(): Element | null\n}\n\nexport function isDomNodeHandle(value: unknown): value is DomNodeHandle {\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getDomNode' in value &&\n typeof (value as { getDomNode: unknown }).getDomNode === 'function'\n ) {\n return true\n }\n\n return false\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,IAAAA,qBAAsC;AACtC,qCAGO;AAEA,MAAM,wBAIb;AAAA,EACU,aAA4B,MAAM;AAAA,EAClC,sBAA4D;AAAA,EAEpE,SAAS,YAA2B;AAClC,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,YAAY;AAAM,WAAK,mBAAmB,IAAI;AAElD,SAAK,aAAa;AAElB,QAAI,KAAK,wBAAwB;AAAM,WAAK,mBAAmB,KAAK,mBAAmB;AAAA,EACzF;AAAA,EAEA,cAA+B;AAC7B,UAAM,UAAU,KAAK,WAAW;AAEhC,eAAO,iCAAa,OAAO,QAAI,4BAAQ,OAAO,IAAI;AAAA,EACpD;AAAA,EAEA,mBAAmB,iBAA6D;AAC9E,UAAM,UAAU,KAAK,WAAW;AAEhC,YAAI,wDAAwB,OAAO;AAAG,cAAQ,mBAAmB,eAAe;AAEhF,SAAK,sBAAsB;AAAA,EAC7B;AAAA,EAEA,aAA6B;AAC3B,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,gBAAgB,OAAO;AAAG,aAAO,QAAQ,WAAW;AAExD,WAAO,mBAAmB,UAAU,UAAU;AAAA,EAChD;AACF;AAMO,SAAS,gBAAgB,OAAwC;AACtE,MACE,OAAO,UAAU,YACjB,UAAU,QACV,gBAAgB,SAChB,OAAQ,MAAkC,eAAe,YACzD;AACA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;","names":["import_box_models"]}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var use_async_effect_exports = {};
20
+ __export(use_async_effect_exports, {
21
+ useAsyncEffect: () => useAsyncEffect
22
+ });
23
+ module.exports = __toCommonJS(use_async_effect_exports);
24
+ var import_react = require("react");
25
+ function useAsyncEffect(effect, deps) {
26
+ (0, import_react.useEffect)(() => {
27
+ let cancelled = false;
28
+ let cleanup = null;
29
+ const runAsyncEffect = async () => {
30
+ try {
31
+ cleanup = await effect();
32
+ if (cancelled) {
33
+ cleanup?.();
34
+ cleanup = null;
35
+ }
36
+ } catch (error) {
37
+ console.error("Async effect error:", { error, deps });
38
+ }
39
+ };
40
+ runAsyncEffect();
41
+ return () => {
42
+ cancelled = true;
43
+ try {
44
+ cleanup?.();
45
+ } catch (error) {
46
+ console.error("Async effect cleanup error:", { error, deps });
47
+ }
48
+ };
49
+ }, deps);
50
+ }
51
+ // Annotate the CommonJS export names for ESM import in node:
52
+ 0 && (module.exports = {
53
+ useAsyncEffect
54
+ });
55
+ //# sourceMappingURL=use-async-effect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-async-effect.ts"],"sourcesContent":["import { type DependencyList, useEffect } from 'react'\n\nexport function useAsyncEffect(effect: () => Promise<void | (() => void)>, deps: DependencyList) {\n useEffect(() => {\n let cancelled = false\n let cleanup: void | (() => void) | null = null\n\n const runAsyncEffect = async () => {\n try {\n cleanup = await effect()\n\n if (cancelled) {\n cleanup?.()\n cleanup = null\n }\n } catch (error) {\n console.error('Async effect error:', { error, deps })\n }\n }\n\n runAsyncEffect()\n\n return () => {\n cancelled = true\n try {\n cleanup?.()\n } catch (error) {\n console.error('Async effect cleanup error:', { error, deps })\n }\n }\n }, deps)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA+C;AAExC,SAAS,eAAe,QAA4C,MAAsB;AAC/F,8BAAU,MAAM;AACd,QAAI,YAAY;AAChB,QAAI,UAAsC;AAE1C,UAAM,iBAAiB,YAAY;AACjC,UAAI;AACF,kBAAU,MAAM,OAAO;AAEvB,YAAI,WAAW;AACb,oBAAU;AACV,oBAAU;AAAA,QACZ;AAAA,MACF,SAAS,OAAO;AACd,gBAAQ,MAAM,uBAAuB,EAAE,OAAO,KAAK,CAAC;AAAA,MACtD;AAAA,IACF;AAEA,mBAAe;AAEf,WAAO,MAAM;AACX,kBAAY;AACZ,UAAI;AACF,kBAAU;AAAA,MACZ,SAAS,OAAO;AACd,gBAAQ,MAAM,+BAA+B,EAAE,OAAO,KAAK,CAAC;AAAA,MAC9D;AAAA,IACF;AAAA,EACF,GAAG,IAAI;AACT;","names":[]}
@@ -21,10 +21,10 @@ __export(use_breakpoints_exports, {
21
21
  useBreakpoints: () => useBreakpoints
22
22
  });
23
23
  module.exports = __toCommonJS(use_breakpoints_exports);
24
- var import_read_only_state = require("../../../state/read-only-state");
24
+ var import_react_page = require("../../../state/react-page");
25
25
  var import_use_selector = require("./use-selector");
26
26
  function useBreakpoints() {
27
- return (0, import_use_selector.useSelector)((state) => (0, import_read_only_state.getBreakpoints)(state));
27
+ return (0, import_use_selector.useSelector)((state) => (0, import_react_page.getBreakpoints)(state));
28
28
  }
29
29
  // Annotate the CommonJS export names for ESM import in node:
30
30
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-breakpoints.ts"],"sourcesContent":["import { Breakpoints } from '../../../state/modules/breakpoints'\nimport { getBreakpoints } from '../../../state/read-only-state'\nimport { useSelector } from './use-selector'\n\nexport function useBreakpoints(): Breakpoints {\n return useSelector(state => getBreakpoints(state))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,6BAA+B;AAC/B,0BAA4B;AAErB,SAAS,iBAA8B;AAC5C,aAAO,iCAAY,eAAS,uCAAe,KAAK,CAAC;AACnD;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-breakpoints.ts"],"sourcesContent":["import { Breakpoints } from '../../../state/modules/breakpoints'\nimport { getBreakpoints } from '../../../state/react-page'\nimport { useSelector } from './use-selector'\n\nexport function useBreakpoints(): Breakpoints {\n return useSelector(state => getBreakpoints(state))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,wBAA+B;AAC/B,0BAA4B;AAErB,SAAS,iBAA8B;AAC5C,aAAO,iCAAY,eAAS,kCAAe,KAAK,CAAC;AACnD;","names":[]}
@@ -21,10 +21,10 @@ __export(use_builder_edit_mode_exports, {
21
21
  useBuilderEditMode: () => useBuilderEditMode
22
22
  });
23
23
  module.exports = __toCommonJS(use_builder_edit_mode_exports);
24
- var import_read_only_state = require("../../../state/read-only-state");
24
+ var import_react_page = require("../../../state/react-page");
25
25
  var import_use_selector = require("./use-selector");
26
26
  function useBuilderEditMode() {
27
- return (0, import_use_selector.useSelector)((state) => (0, import_read_only_state.getBuilderEditMode)(state));
27
+ return (0, import_use_selector.useSelector)((state) => (0, import_react_page.getBuilderEditMode)(state));
28
28
  }
29
29
  // Annotate the CommonJS export names for ESM import in node:
30
30
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-builder-edit-mode.ts"],"sourcesContent":["import { BuilderEditMode } from '../../../state/modules/builder-edit-mode'\nimport { getBuilderEditMode } from '../../../state/read-only-state'\nimport { useSelector } from './use-selector'\n\nexport function useBuilderEditMode(): BuilderEditMode | null {\n return useSelector(state => getBuilderEditMode(state))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,6BAAmC;AACnC,0BAA4B;AAErB,SAAS,qBAA6C;AAC3D,aAAO,iCAAY,eAAS,2CAAmB,KAAK,CAAC;AACvD;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-builder-edit-mode.ts"],"sourcesContent":["import { BuilderEditMode } from '../../../state/modules/builder-edit-mode'\nimport { getBuilderEditMode } from '../../../state/react-page'\nimport { useSelector } from './use-selector'\n\nexport function useBuilderEditMode(): BuilderEditMode | null {\n return useSelector(state => getBuilderEditMode(state))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,wBAAmC;AACnC,0BAA4B;AAErB,SAAS,qBAA6C;AAC3D,aAAO,iCAAY,eAAS,sCAAmB,KAAK,CAAC;AACvD;","names":[]}
@@ -22,11 +22,11 @@ __export(use_cache_data_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(use_cache_data_exports);
24
24
  var import_react = require("react");
25
- var import_read_write_actions = require("../../../state/actions/internal/read-write-actions");
25
+ var import_internal = require("../../../state/actions/internal");
26
26
  var import_host_api_client = require("../host-api-client");
27
27
  function useCacheData(cacheData) {
28
28
  const { makeswiftApiClient: apiStore } = (0, import_host_api_client.useMakeswiftHostApiClient)();
29
- (0, import_react.useMemo)(() => apiStore.dispatch((0, import_read_write_actions.updateAPIClientCache)(cacheData)), [cacheData]);
29
+ (0, import_react.useMemo)(() => apiStore.dispatch((0, import_internal.updateAPIClientCache)(cacheData)), [cacheData]);
30
30
  }
31
31
  // Annotate the CommonJS export names for ESM import in node:
32
32
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-cache-data.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { type CacheData } from '../../../api/client'\nimport { updateAPIClientCache } from '../../../state/actions/internal/read-write-actions'\n\nimport { useMakeswiftHostApiClient } from '../host-api-client'\n\nexport function useCacheData(cacheData: CacheData) {\n const { makeswiftApiClient: apiStore } = useMakeswiftHostApiClient()\n\n // We perform cache hydration immediately on render - this is safe to do per\n // render because updating the API cache is idempotent. For precedence, see:\n //\n // https://github.com/TanStack/query/blob/8f9f183f11df3709a1a38c4efce1452788041f88/packages/react-query/src/HydrationBoundary.tsx#L41\n useMemo(() => apiStore.dispatch(updateAPIClientCache(cacheData)), [cacheData])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAwB;AAExB,gCAAqC;AAErC,6BAA0C;AAEnC,SAAS,aAAa,WAAsB;AACjD,QAAM,EAAE,oBAAoB,SAAS,QAAI,kDAA0B;AAMnE,4BAAQ,MAAM,SAAS,aAAS,gDAAqB,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;AAC/E;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-cache-data.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { type CacheData } from '../../../api/react'\nimport { updateAPIClientCache } from '../../../state/actions/internal'\n\nimport { useMakeswiftHostApiClient } from '../host-api-client'\n\nexport function useCacheData(cacheData: CacheData) {\n const { makeswiftApiClient: apiStore } = useMakeswiftHostApiClient()\n\n // We perform cache hydration immediately on render - this is safe to do per\n // render because updating the API cache is idempotent. For precedence, see:\n //\n // https://github.com/TanStack/query/blob/8f9f183f11df3709a1a38c4efce1452788041f88/packages/react-query/src/HydrationBoundary.tsx#L41\n useMemo(() => apiStore.dispatch(updateAPIClientCache(cacheData)), [cacheData])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAwB;AAExB,sBAAqC;AAErC,6BAA0C;AAEnC,SAAS,aAAa,WAAsB;AACjD,QAAM,EAAE,oBAAoB,SAAS,QAAI,kDAA0B;AAMnE,4BAAQ,MAAM,SAAS,aAAS,sCAAqB,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;AAC/E;","names":[]}
@@ -22,13 +22,13 @@ __export(use_component_exports, {
22
22
  useComponentMeta: () => useComponentMeta
23
23
  });
24
24
  module.exports = __toCommonJS(use_component_exports);
25
- var import_read_only_state = require("../../../state/read-only-state");
25
+ var import_react_page = require("../../../state/react-page");
26
26
  var import_use_selector = require("./use-selector");
27
27
  function useComponent(type) {
28
- return (0, import_use_selector.useSelector)((state) => (0, import_read_only_state.getReactComponent)(state, type));
28
+ return (0, import_use_selector.useSelector)((state) => (0, import_react_page.getReactComponent)(state, type));
29
29
  }
30
30
  function useComponentMeta(type) {
31
- return (0, import_use_selector.useSelector)((state) => (0, import_read_only_state.getComponentMeta)(state, type));
31
+ return (0, import_use_selector.useSelector)((state) => (0, import_react_page.getComponentMeta)(state, type));
32
32
  }
33
33
  // Annotate the CommonJS export names for ESM import in node:
34
34
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-component.ts"],"sourcesContent":["import {\n type ComponentType,\n type ComponentMeta,\n getReactComponent,\n getComponentMeta,\n} from '../../../state/read-only-state'\nimport { useSelector } from './use-selector'\n\nexport function useComponent(type: string): ComponentType | null {\n return useSelector(state => getReactComponent(state, type))\n}\n\nexport function useComponentMeta(type: string): ComponentMeta | null {\n return useSelector(state => getComponentMeta(state, type))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAKO;AACP,0BAA4B;AAErB,SAAS,aAAa,MAAoC;AAC/D,aAAO,iCAAY,eAAS,0CAAkB,OAAO,IAAI,CAAC;AAC5D;AAEO,SAAS,iBAAiB,MAAoC;AACnE,aAAO,iCAAY,eAAS,yCAAiB,OAAO,IAAI,CAAC;AAC3D;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-component.ts"],"sourcesContent":["import {\n type ComponentType,\n type ComponentMeta,\n getReactComponent,\n getComponentMeta,\n} from '../../../state/react-page'\nimport { useSelector } from './use-selector'\n\nexport function useComponent(type: string): ComponentType | null {\n return useSelector(state => getReactComponent(state, type))\n}\n\nexport function useComponentMeta(type: string): ComponentMeta | null {\n return useSelector(state => getComponentMeta(state, type))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAKO;AACP,0BAA4B;AAErB,SAAS,aAAa,MAAoC;AAC/D,aAAO,iCAAY,eAAS,qCAAkB,OAAO,IAAI,CAAC;AAC5D;AAEO,SAAS,iBAAiB,MAAoC;AACnE,aAAO,iCAAY,eAAS,oCAAiB,OAAO,IAAI,CAAC;AAC3D;","names":[]}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var use_current_breakpoint_exports = {};
20
+ __export(use_current_breakpoint_exports, {
21
+ useCurrentBreakpoint: () => useCurrentBreakpoint
22
+ });
23
+ module.exports = __toCommonJS(use_current_breakpoint_exports);
24
+ var import_react = require("react");
25
+ var import_read_only_state = require("../../../state/read-only-state");
26
+ var import_use_store = require("./use-store");
27
+ function useCurrentBreakpoint() {
28
+ const store = (0, import_use_store.useStore)();
29
+ return (0, import_react.useSyncExternalStore)(
30
+ store.subscribe,
31
+ () => (0, import_read_only_state.getClientBreakpoint)(store.getState()),
32
+ () => (0, import_read_only_state.getBaseBreakpoint)(store.getState())
33
+ );
34
+ }
35
+ // Annotate the CommonJS export names for ESM import in node:
36
+ 0 && (module.exports = {
37
+ useCurrentBreakpoint
38
+ });
39
+ //# sourceMappingURL=use-current-breakpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-current-breakpoint.ts"],"sourcesContent":["import { useSyncExternalStore } from 'react'\n\nimport { type BreakpointId } from '../../../state/modules/breakpoints'\nimport { getBaseBreakpoint, getClientBreakpoint } from '../../../state/read-only-state'\n\nimport { useStore } from './use-store'\n\nexport function useCurrentBreakpoint(): BreakpointId {\n const store = useStore()\n\n return useSyncExternalStore(\n store.subscribe,\n () => getClientBreakpoint(store.getState()),\n () => getBaseBreakpoint(store.getState()),\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAqC;AAGrC,6BAAuD;AAEvD,uBAAyB;AAElB,SAAS,uBAAqC;AACnD,QAAM,YAAQ,2BAAS;AAEvB,aAAO;AAAA,IACL,MAAM;AAAA,IACN,UAAM,4CAAoB,MAAM,SAAS,CAAC;AAAA,IAC1C,UAAM,0CAAkB,MAAM,SAAS,CAAC;AAAA,EAC1C;AACF;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-dispatch.ts"],"sourcesContent":["import { useStore } from './use-store'\nimport { type Dispatch as ReadOnlyDispatch } from '../../../state/read-only-state'\nimport { type Dispatch as ReadWriteDispatch } from '../../../state/read-write-state'\n\ntype Dispatch = ReadOnlyDispatch & ReadWriteDispatch\n\nexport function useDispatch(): Dispatch {\n const store = useStore()\n\n return store.dispatch\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAyB;AAMlB,SAAS,cAAwB;AACtC,QAAM,YAAQ,2BAAS;AAEvB,SAAO,MAAM;AACf;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-dispatch.ts"],"sourcesContent":["import { useStore } from './use-store'\nimport { Dispatch as ReactPageDispatch } from '../../../state/react-page'\nimport { Dispatch as ReactBuilderPreviewDispatch } from '../../../state/react-builder-preview'\n\ntype Dispatch = ReactPageDispatch & ReactBuilderPreviewDispatch\n\nexport function useDispatch(): Dispatch {\n const store = useStore()\n\n return store.dispatch\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAyB;AAMlB,SAAS,cAAwB;AACtC,QAAM,YAAQ,2BAAS;AAEvB,SAAO,MAAM;AACf;","names":[]}
@@ -21,10 +21,10 @@ __export(use_document_exports, {
21
21
  useDocument: () => useDocument
22
22
  });
23
23
  module.exports = __toCommonJS(use_document_exports);
24
- var import_read_only_state = require("../../../state/read-only-state");
24
+ var import_react_page = require("../../../state/react-page");
25
25
  var import_use_selector = require("./use-selector");
26
26
  function useDocument(documentKey) {
27
- return (0, import_use_selector.useSelector)((state) => (0, import_read_only_state.getDocument)(state, documentKey));
27
+ return (0, import_use_selector.useSelector)((state) => (0, import_react_page.getDocument)(state, documentKey));
28
28
  }
29
29
  // Annotate the CommonJS export names for ESM import in node:
30
30
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-document.ts"],"sourcesContent":["import { Document, getDocument } from '../../../state/read-only-state'\nimport { useSelector } from './use-selector'\n\nexport function useDocument(documentKey: string): Document | null {\n return useSelector(state => getDocument(state, documentKey))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAAsC;AACtC,0BAA4B;AAErB,SAAS,YAAY,aAAsC;AAChE,aAAO,iCAAY,eAAS,oCAAY,OAAO,WAAW,CAAC;AAC7D;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-document.ts"],"sourcesContent":["import { Document, getDocument } from '../../../state/react-page'\nimport { useSelector } from './use-selector'\n\nexport function useDocument(documentKey: string): Document | null {\n return useSelector(state => getDocument(state, documentKey))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAsC;AACtC,0BAA4B;AAErB,SAAS,YAAY,aAAsC;AAChE,aAAO,iCAAY,eAAS,+BAAY,OAAO,WAAW,CAAC;AAC7D;","names":[]}
@@ -21,13 +21,13 @@ __export(use_element_id_exports, {
21
21
  useElementId: () => useElementId
22
22
  });
23
23
  module.exports = __toCommonJS(use_element_id_exports);
24
- var import_read_only_state = require("../../../state/read-only-state");
24
+ var import_react_page = require("../../../state/react-page");
25
25
  var import_use_document_context = require("./use-document-context");
26
26
  var import_use_selector = require("./use-selector");
27
27
  function useElementId(elementKey) {
28
28
  const documentKey = (0, import_use_document_context.useDocumentKey)();
29
29
  return (0, import_use_selector.useSelector)(
30
- (state) => documentKey == null || elementKey == null ? null : (0, import_read_only_state.getElementId)(state, documentKey, elementKey)
30
+ (state) => documentKey == null || elementKey == null ? null : (0, import_react_page.getElementId)(state, documentKey, elementKey)
31
31
  );
32
32
  }
33
33
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-element-id.ts"],"sourcesContent":["import { getElementId } from '../../../state/read-only-state'\nimport { useDocumentKey } from './use-document-context'\nimport { useSelector } from './use-selector'\n\nexport function useElementId(elementKey: string | null | undefined): string | null {\n const documentKey = useDocumentKey()\n\n return useSelector(state =>\n documentKey == null || elementKey == null ? null : getElementId(state, documentKey, elementKey),\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAA6B;AAC7B,kCAA+B;AAC/B,0BAA4B;AAErB,SAAS,aAAa,YAAsD;AACjF,QAAM,kBAAc,4CAAe;AAEnC,aAAO;AAAA,IAAY,WACjB,eAAe,QAAQ,cAAc,OAAO,WAAO,qCAAa,OAAO,aAAa,UAAU;AAAA,EAChG;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-element-id.ts"],"sourcesContent":["import { getElementId } from '../../../state/react-page'\nimport { useDocumentKey } from './use-document-context'\nimport { useSelector } from './use-selector'\n\nexport function useElementId(elementKey: string | null | undefined): string | null {\n const documentKey = useDocumentKey()\n\n return useSelector(state =>\n documentKey == null || elementKey == null ? null : getElementId(state, documentKey, elementKey),\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAA6B;AAC7B,kCAA+B;AAC/B,0BAA4B;AAErB,SAAS,aAAa,YAAsD;AACjF,QAAM,kBAAc,4CAAe;AAEnC,aAAO;AAAA,IAAY,WACjB,eAAe,QAAQ,cAAc,OAAO,WAAO,gCAAa,OAAO,aAAa,UAAU;AAAA,EAChG;AACF;","names":[]}
@@ -21,10 +21,10 @@ __export(use_is_in_builder_exports, {
21
21
  useIsInBuilder: () => useIsInBuilder
22
22
  });
23
23
  module.exports = __toCommonJS(use_is_in_builder_exports);
24
- var import_read_only_state = require("../../../state/read-only-state");
24
+ var import_react_page = require("../../../state/react-page");
25
25
  var import_use_selector = require("./use-selector");
26
26
  function useIsInBuilder() {
27
- return (0, import_use_selector.useSelector)((state) => (0, import_read_only_state.getIsInBuilder)(state));
27
+ return (0, import_use_selector.useSelector)((state) => (0, import_react_page.getIsInBuilder)(state));
28
28
  }
29
29
  // Annotate the CommonJS export names for ESM import in node:
30
30
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-is-in-builder.ts"],"sourcesContent":["import { getIsInBuilder } from '../../../state/read-only-state'\nimport { useSelector } from './use-selector'\n\nexport function useIsInBuilder(): boolean {\n return useSelector(state => getIsInBuilder(state))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAA+B;AAC/B,0BAA4B;AAErB,SAAS,iBAA0B;AACxC,aAAO,iCAAY,eAAS,uCAAe,KAAK,CAAC;AACnD;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-is-in-builder.ts"],"sourcesContent":["import { getIsInBuilder } from '../../../state/react-page'\nimport { useSelector } from './use-selector'\n\nexport function useIsInBuilder(): boolean {\n return useSelector(state => getIsInBuilder(state))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAA+B;AAC/B,0BAA4B;AAErB,SAAS,iBAA0B;AACxC,aAAO,iCAAY,eAAS,kCAAe,KAAK,CAAC;AACnD;","names":[]}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var use_is_preview_exports = {};
20
+ __export(use_is_preview_exports, {
21
+ useIsPreview: () => useIsPreview
22
+ });
23
+ module.exports = __toCommonJS(use_is_preview_exports);
24
+ var import_react_page = require("../../../state/react-page");
25
+ var import_use_selector = require("./use-selector");
26
+ function useIsPreview() {
27
+ return (0, import_use_selector.useSelector)((state) => (0, import_react_page.getIsPreview)(state));
28
+ }
29
+ // Annotate the CommonJS export names for ESM import in node:
30
+ 0 && (module.exports = {
31
+ useIsPreview
32
+ });
33
+ //# sourceMappingURL=use-is-preview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-is-preview.ts"],"sourcesContent":["import { getIsPreview } from '../../../state/react-page'\nimport { useSelector } from './use-selector'\n\nexport function useIsPreview(): boolean {\n return useSelector(state => getIsPreview(state))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAA6B;AAC7B,0BAA4B;AAErB,SAAS,eAAwB;AACtC,aAAO,iCAAY,eAAS,gCAAa,KAAK,CAAC;AACjD;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-register-document.ts"],"sourcesContent":["import { useEffect } from 'react'\nimport { type Document } from '../../../state/read-only-state'\nimport { useDispatch } from './use-dispatch'\nimport { useIsInBuilder } from './use-is-in-builder'\nimport { registerDocument, registerDocumentsEffect } from '../../../state/shared-api'\nimport { registerBuilderDocumentsEffect } from '../../../state/builder-api/actions'\n\nimport { isServer } from '../../../utils/is-server'\nimport { useIsomorphicLayoutEffect } from '../../../components/hooks/useIsomorphicLayoutEffect'\n\n/**\n * @param document Document to register\n */\nexport function useRegisterDocument(document: Document): void {\n const isInBuilder = useIsInBuilder()\n const dispatch = useDispatch()\n\n if (isServer()) {\n dispatch(registerDocument(document))\n }\n\n /*\n Layout effect is to ensure that the document registration happens prior to the\n attempted creation/registration of prop controllers in child components.\n */\n useIsomorphicLayoutEffect(() => {\n return dispatch(registerDocumentsEffect([document]))\n }, [dispatch, document])\n\n // TODO: Decide whether to do this via middleware or via explicit action (like\n // what we're doing below)\n useEffect(() => {\n if (!isInBuilder) return\n return dispatch(registerBuilderDocumentsEffect([document]))\n }, [isInBuilder, document])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA0B;AAE1B,0BAA4B;AAC5B,+BAA+B;AAC/B,wBAA0D;AAC1D,qBAA+C;AAE/C,uBAAyB;AACzB,uCAA0C;AAKnC,SAAS,oBAAoB,UAA0B;AAC5D,QAAM,kBAAc,yCAAe;AACnC,QAAM,eAAW,iCAAY;AAE7B,UAAI,2BAAS,GAAG;AACd,iBAAS,oCAAiB,QAAQ,CAAC;AAAA,EACrC;AAMA,kEAA0B,MAAM;AAC9B,WAAO,aAAS,2CAAwB,CAAC,QAAQ,CAAC,CAAC;AAAA,EACrD,GAAG,CAAC,UAAU,QAAQ,CAAC;AAIvB,8BAAU,MAAM;AACd,QAAI,CAAC;AAAa;AAClB,WAAO,aAAS,+CAA+B,CAAC,QAAQ,CAAC,CAAC;AAAA,EAC5D,GAAG,CAAC,aAAa,QAAQ,CAAC;AAC5B;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-register-document.ts"],"sourcesContent":["import { useEffect } from 'react'\nimport { type Document } from '../../../state/react-page'\nimport { useDispatch } from './use-dispatch'\nimport { useIsInBuilder } from './use-is-in-builder'\nimport { registerDocument, registerDocumentsEffect } from '../../../state/shared-api'\nimport { registerBuilderDocumentsEffect } from '../../../state/builder-api/actions'\n\nimport { isServer } from '../../../utils/is-server'\nimport { useIsomorphicLayoutEffect } from '../../../components/hooks/useIsomorphicLayoutEffect'\n\n/**\n * @param document Document to register\n */\nexport function useRegisterDocument(document: Document): void {\n const isInBuilder = useIsInBuilder()\n const dispatch = useDispatch()\n\n if (isServer()) {\n dispatch(registerDocument(document))\n }\n\n /*\n Layout effect is to ensure that the document registration happens prior to the\n attempted creation/registration of prop controllers in child components.\n */\n useIsomorphicLayoutEffect(() => {\n return dispatch(registerDocumentsEffect([document]))\n }, [dispatch, document])\n\n // TODO: Decide whether to do this via middleware or via explicit action (like\n // what we're doing below)\n useEffect(() => {\n if (!isInBuilder) return\n return dispatch(registerBuilderDocumentsEffect([document]))\n }, [isInBuilder, document])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA0B;AAE1B,0BAA4B;AAC5B,+BAA+B;AAC/B,wBAA0D;AAC1D,qBAA+C;AAE/C,uBAAyB;AACzB,uCAA0C;AAKnC,SAAS,oBAAoB,UAA0B;AAC5D,QAAM,kBAAc,yCAAe;AACnC,QAAM,eAAW,iCAAY;AAE7B,UAAI,2BAAS,GAAG;AACd,iBAAS,oCAAiB,QAAQ,CAAC;AAAA,EACrC;AAMA,kEAA0B,MAAM;AAC9B,WAAO,aAAS,2CAAwB,CAAC,QAAQ,CAAC,CAAC;AAAA,EACrD,GAAG,CAAC,UAAU,QAAQ,CAAC;AAIvB,8BAAU,MAAM;AACd,QAAI,CAAC;AAAa;AAClB,WAAO,aAAS,+CAA+B,CAAC,QAAQ,CAAC,CAAC;AAAA,EAC5D,GAAG,CAAC,aAAa,QAAQ,CAAC;AAC5B;","names":[]}
@@ -33,7 +33,7 @@ __export(use_resolved_props_exports, {
33
33
  module.exports = __toCommonJS(use_resolved_props_exports);
34
34
  var import_react = require("react");
35
35
  var import_controls = require("@makeswift/controls");
36
- var ReactPage = __toESM(require("../../../state/read-only-state"));
36
+ var ReactPage = __toESM(require("../../../state/react-page"));
37
37
  var import_use_resource_resolver = require("./use-resource-resolver");
38
38
  var import_use_document_context = require("./use-document-context");
39
39
  var import_use_selector = require("./use-selector");
@@ -45,7 +45,7 @@ function useControlInstances(elementKey) {
45
45
  return (0, import_use_selector.useSelector)((state) => {
46
46
  if (documentKey == null)
47
47
  return null;
48
- return ReactPage.getPropControllers(state, { documentKey, elementKey });
48
+ return ReactPage.getPropControllers(state, documentKey, elementKey);
49
49
  });
50
50
  }
51
51
  function useResolvedProps(propDefs, elementData, elementKey) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-resolved-props.ts"],"sourcesContent":["import { useMemo, useEffect, useRef, useSyncExternalStore, useCallback } from 'react'\nimport {\n ControlDefinition,\n ControlInstance,\n mapValues,\n type Data,\n type Resolvable,\n} from '@makeswift/controls'\n\nimport * as ReactPage from '../../../state/read-only-state'\nimport { useResourceResolver } from './use-resource-resolver'\nimport { useDocumentKey } from './use-document-context'\nimport { useSelector } from './use-selector'\n\nimport { useStylesheetFactory } from './use-stylesheet-factory'\n\nimport { useResolvableRecord } from './use-resolvable-record'\nimport { propErrorHandlingProxy } from '../utils/prop-error-handling-proxy'\n\nfunction useControlInstances(elementKey: string): Record<string, ControlInstance> | null {\n const documentKey = useDocumentKey()\n\n return useSelector(state => {\n if (documentKey == null) return null\n\n return ReactPage.getPropControllers(state, { documentKey, elementKey })\n })\n}\n\ntype CacheItem = {\n data: Data\n control: ControlInstance | undefined\n resolvedValue: Resolvable<unknown>\n}\n\nexport function useResolvedProps(\n propDefs: Record<string, ControlDefinition>,\n elementData: Record<string, Data>,\n elementKey: string,\n): Record<string, unknown> {\n const stylesheetFactory = useStylesheetFactory()\n const resourceResolver = useResourceResolver()\n const controls = useControlInstances(elementKey)\n\n const cache = useRef<Record<string, CacheItem>>({}).current\n const resolveProp = useCallback(\n (def: ControlDefinition, propName: string) => {\n const data = elementData[propName]\n const control = controls?.[propName]\n\n if (\n cache[propName] != null &&\n data === cache[propName].data &&\n control === cache[propName].control\n ) {\n return cache[propName].resolvedValue\n }\n\n const resolvedValue = def.resolveValue(\n data,\n resourceResolver,\n stylesheetFactory.get(propName),\n control,\n )\n\n cache[propName] = { data, control, resolvedValue }\n return resolvedValue\n },\n [controls, elementData, resourceResolver, stylesheetFactory],\n )\n\n const resolvables = useMemo<Record<string, Resolvable<unknown>>>(\n () =>\n mapValues(propDefs, (def, propName) => {\n const defaultValue = (def.config as any)?.defaultValue\n return propErrorHandlingProxy(resolveProp(def, propName), defaultValue, error => {\n console.warn(\n `Error reading value for prop \"${propName}\", falling back to \\`${defaultValue}\\`.`,\n { control: def, error },\n )\n })\n }),\n [propDefs, resolveProp],\n )\n\n const props = useResolvableRecord(resolvables)\n\n // no need to call `triggerResolve` on the server, all the resources should already be in\n // the host API client's cache (populated from the snapshot's cache)\n useEffect(() => {\n props.triggerResolve()\n }, [props])\n\n // the order is important here, the styles are defined in the process of the props resolution,\n // calling `useDefinedStyles` before the props are resolved would effectively be a noop\n const resolvedProps = useSyncExternalStore(props.subscribe, props.readStable, props.readStable)\n\n stylesheetFactory.useDefinedStyles()\n\n return resolvedProps\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8E;AAC9E,sBAMO;AAEP,gBAA2B;AAC3B,mCAAoC;AACpC,kCAA+B;AAC/B,0BAA4B;AAE5B,oCAAqC;AAErC,mCAAoC;AACpC,uCAAuC;AAEvC,SAAS,oBAAoB,YAA4D;AACvF,QAAM,kBAAc,4CAAe;AAEnC,aAAO,iCAAY,WAAS;AAC1B,QAAI,eAAe;AAAM,aAAO;AAEhC,WAAO,UAAU,mBAAmB,OAAO,EAAE,aAAa,WAAW,CAAC;AAAA,EACxE,CAAC;AACH;AAQO,SAAS,iBACd,UACA,aACA,YACyB;AACzB,QAAM,wBAAoB,oDAAqB;AAC/C,QAAM,uBAAmB,kDAAoB;AAC7C,QAAM,WAAW,oBAAoB,UAAU;AAE/C,QAAM,YAAQ,qBAAkC,CAAC,CAAC,EAAE;AACpD,QAAM,kBAAc;AAAA,IAClB,CAAC,KAAwB,aAAqB;AAC5C,YAAM,OAAO,YAAY,QAAQ;AACjC,YAAM,UAAU,WAAW,QAAQ;AAEnC,UACE,MAAM,QAAQ,KAAK,QACnB,SAAS,MAAM,QAAQ,EAAE,QACzB,YAAY,MAAM,QAAQ,EAAE,SAC5B;AACA,eAAO,MAAM,QAAQ,EAAE;AAAA,MACzB;AAEA,YAAM,gBAAgB,IAAI;AAAA,QACxB;AAAA,QACA;AAAA,QACA,kBAAkB,IAAI,QAAQ;AAAA,QAC9B;AAAA,MACF;AAEA,YAAM,QAAQ,IAAI,EAAE,MAAM,SAAS,cAAc;AACjD,aAAO;AAAA,IACT;AAAA,IACA,CAAC,UAAU,aAAa,kBAAkB,iBAAiB;AAAA,EAC7D;AAEA,QAAM,kBAAc;AAAA,IAClB,UACE,2BAAU,UAAU,CAAC,KAAK,aAAa;AACrC,YAAM,eAAgB,IAAI,QAAgB;AAC1C,iBAAO,yDAAuB,YAAY,KAAK,QAAQ,GAAG,cAAc,WAAS;AAC/E,gBAAQ;AAAA,UACN,iCAAiC,QAAQ,wBAAwB,YAAY;AAAA,UAC7E,EAAE,SAAS,KAAK,MAAM;AAAA,QACxB;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,IACH,CAAC,UAAU,WAAW;AAAA,EACxB;AAEA,QAAM,YAAQ,kDAAoB,WAAW;AAI7C,8BAAU,MAAM;AACd,UAAM,eAAe;AAAA,EACvB,GAAG,CAAC,KAAK,CAAC;AAIV,QAAM,oBAAgB,mCAAqB,MAAM,WAAW,MAAM,YAAY,MAAM,UAAU;AAE9F,oBAAkB,iBAAiB;AAEnC,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-resolved-props.ts"],"sourcesContent":["import { useMemo, useEffect, useRef, useSyncExternalStore, useCallback } from 'react'\nimport {\n ControlDefinition,\n ControlInstance,\n mapValues,\n type Data,\n type Resolvable,\n} from '@makeswift/controls'\n\nimport * as ReactPage from '../../../state/react-page'\nimport { useResourceResolver } from './use-resource-resolver'\nimport { useDocumentKey } from './use-document-context'\nimport { useSelector } from './use-selector'\n\nimport { useStylesheetFactory } from './use-stylesheet-factory'\n\nimport { useResolvableRecord } from './use-resolvable-record'\nimport { propErrorHandlingProxy } from '../utils/prop-error-handling-proxy'\n\nfunction useControlInstances(elementKey: string): Record<string, ControlInstance> | null {\n const documentKey = useDocumentKey()\n\n return useSelector(state => {\n if (documentKey == null) return null\n\n return ReactPage.getPropControllers(state, documentKey, elementKey)\n })\n}\n\ntype CacheItem = {\n data: Data\n control: ControlInstance | undefined\n resolvedValue: Resolvable<unknown>\n}\n\nexport function useResolvedProps(\n propDefs: Record<string, ControlDefinition>,\n elementData: Record<string, Data>,\n elementKey: string,\n): Record<string, unknown> {\n const stylesheetFactory = useStylesheetFactory()\n const resourceResolver = useResourceResolver()\n const controls = useControlInstances(elementKey)\n\n const cache = useRef<Record<string, CacheItem>>({}).current\n const resolveProp = useCallback(\n (def: ControlDefinition, propName: string) => {\n const data = elementData[propName]\n const control = controls?.[propName]\n\n if (\n cache[propName] != null &&\n data === cache[propName].data &&\n control === cache[propName].control\n ) {\n return cache[propName].resolvedValue\n }\n\n const resolvedValue = def.resolveValue(\n data,\n resourceResolver,\n stylesheetFactory.get(propName),\n control,\n )\n\n cache[propName] = { data, control, resolvedValue }\n return resolvedValue\n },\n [controls, elementData, resourceResolver, stylesheetFactory],\n )\n\n const resolvables = useMemo<Record<string, Resolvable<unknown>>>(\n () =>\n mapValues(propDefs, (def, propName) => {\n const defaultValue = (def.config as any)?.defaultValue\n return propErrorHandlingProxy(resolveProp(def, propName), defaultValue, error => {\n console.warn(\n `Error reading value for prop \"${propName}\", falling back to \\`${defaultValue}\\`.`,\n { control: def, error },\n )\n })\n }),\n [propDefs, resolveProp],\n )\n\n const props = useResolvableRecord(resolvables)\n\n // no need to call `triggerResolve` on the server, all the resources should already be in\n // the host API client's cache (populated from the snapshot's cache)\n useEffect(() => {\n props.triggerResolve()\n }, [props])\n\n // the order is important here, the styles are defined in the process of the props resolution,\n // calling `useDefinedStyles` before the props are resolved would effectively be a noop\n const resolvedProps = useSyncExternalStore(props.subscribe, props.readStable, props.readStable)\n\n stylesheetFactory.useDefinedStyles()\n\n return resolvedProps\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8E;AAC9E,sBAMO;AAEP,gBAA2B;AAC3B,mCAAoC;AACpC,kCAA+B;AAC/B,0BAA4B;AAE5B,oCAAqC;AAErC,mCAAoC;AACpC,uCAAuC;AAEvC,SAAS,oBAAoB,YAA4D;AACvF,QAAM,kBAAc,4CAAe;AAEnC,aAAO,iCAAY,WAAS;AAC1B,QAAI,eAAe;AAAM,aAAO;AAEhC,WAAO,UAAU,mBAAmB,OAAO,aAAa,UAAU;AAAA,EACpE,CAAC;AACH;AAQO,SAAS,iBACd,UACA,aACA,YACyB;AACzB,QAAM,wBAAoB,oDAAqB;AAC/C,QAAM,uBAAmB,kDAAoB;AAC7C,QAAM,WAAW,oBAAoB,UAAU;AAE/C,QAAM,YAAQ,qBAAkC,CAAC,CAAC,EAAE;AACpD,QAAM,kBAAc;AAAA,IAClB,CAAC,KAAwB,aAAqB;AAC5C,YAAM,OAAO,YAAY,QAAQ;AACjC,YAAM,UAAU,WAAW,QAAQ;AAEnC,UACE,MAAM,QAAQ,KAAK,QACnB,SAAS,MAAM,QAAQ,EAAE,QACzB,YAAY,MAAM,QAAQ,EAAE,SAC5B;AACA,eAAO,MAAM,QAAQ,EAAE;AAAA,MACzB;AAEA,YAAM,gBAAgB,IAAI;AAAA,QACxB;AAAA,QACA;AAAA,QACA,kBAAkB,IAAI,QAAQ;AAAA,QAC9B;AAAA,MACF;AAEA,YAAM,QAAQ,IAAI,EAAE,MAAM,SAAS,cAAc;AACjD,aAAO;AAAA,IACT;AAAA,IACA,CAAC,UAAU,aAAa,kBAAkB,iBAAiB;AAAA,EAC7D;AAEA,QAAM,kBAAc;AAAA,IAClB,UACE,2BAAU,UAAU,CAAC,KAAK,aAAa;AACrC,YAAM,eAAgB,IAAI,QAAgB;AAC1C,iBAAO,yDAAuB,YAAY,KAAK,QAAQ,GAAG,cAAc,WAAS;AAC/E,gBAAQ;AAAA,UACN,iCAAiC,QAAQ,wBAAwB,YAAY;AAAA,UAC7E,EAAE,SAAS,KAAK,MAAM;AAAA,QACxB;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,IACH,CAAC,UAAU,WAAW;AAAA,EACxB;AAEA,QAAM,YAAQ,kDAAoB,WAAW;AAI7C,8BAAU,MAAM;AACd,UAAM,eAAe;AAAA,EACvB,GAAG,CAAC,KAAK,CAAC;AAIV,QAAM,oBAAgB,mCAAqB,MAAM,WAAW,MAAM,YAAY,MAAM,UAAU;AAE9F,oBAAkB,iBAAiB;AAEnC,SAAO;AACT;","names":[]}
@@ -32,7 +32,7 @@ __export(use_resource_resolver_exports, {
32
32
  });
33
33
  module.exports = __toCommonJS(use_resource_resolver_exports);
34
34
  var import_react = require("react");
35
- var ReactPage = __toESM(require("../../../state/read-only-state"));
35
+ var ReactPage = __toESM(require("../../../state/react-page"));
36
36
  var import_host_api_client = require("../host-api-client");
37
37
  var import_use_store = require("./use-store");
38
38
  var import_use_document_context = require("./use-document-context");
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-resource-resolver.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { type ResourceResolver } from '@makeswift/controls'\n\nimport * as ReactPage from '../../../state/read-only-state'\nimport { useMakeswiftHostApiClient } from '../host-api-client'\nimport { useStore } from './use-store'\nimport { useDocumentKey, useDocumentLocale } from './use-document-context'\n\nexport function useResourceResolver(): ResourceResolver {\n const store = useStore()\n const client = useMakeswiftHostApiClient()\n\n const documentKey = useDocumentKey()\n const locale = useDocumentLocale()\n\n return useMemo<ResourceResolver>(() => {\n return {\n resolveSwatch: swatchId => client.resolveSwatch(swatchId),\n resolveFile: fileId => client.resolveFile(fileId),\n resolveTypography: typographyId => client.resolveTypography(typographyId),\n resolvePagePathnameSlice: pageId => client.resolvePagePathnameSlice({ pageId, locale }),\n resolveElementId: elementKey => {\n const read = () =>\n documentKey == null\n ? null\n : ReactPage.getElementId(store.getState(), documentKey, elementKey)\n\n let lastValue: string | null = null\n return {\n name: `element-id:${documentKey}:${elementKey}`,\n readStable: () => (lastValue = read()),\n subscribe: (onUpdate: () => void) =>\n store.subscribe(() => {\n if (read() !== lastValue) onUpdate()\n }),\n }\n },\n }\n }, [client, store, documentKey, locale])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAwB;AAGxB,gBAA2B;AAC3B,6BAA0C;AAC1C,uBAAyB;AACzB,kCAAkD;AAE3C,SAAS,sBAAwC;AACtD,QAAM,YAAQ,2BAAS;AACvB,QAAM,aAAS,kDAA0B;AAEzC,QAAM,kBAAc,4CAAe;AACnC,QAAM,aAAS,+CAAkB;AAEjC,aAAO,sBAA0B,MAAM;AACrC,WAAO;AAAA,MACL,eAAe,cAAY,OAAO,cAAc,QAAQ;AAAA,MACxD,aAAa,YAAU,OAAO,YAAY,MAAM;AAAA,MAChD,mBAAmB,kBAAgB,OAAO,kBAAkB,YAAY;AAAA,MACxE,0BAA0B,YAAU,OAAO,yBAAyB,EAAE,QAAQ,OAAO,CAAC;AAAA,MACtF,kBAAkB,gBAAc;AAC9B,cAAM,OAAO,MACX,eAAe,OACX,OACA,UAAU,aAAa,MAAM,SAAS,GAAG,aAAa,UAAU;AAEtE,YAAI,YAA2B;AAC/B,eAAO;AAAA,UACL,MAAM,cAAc,WAAW,IAAI,UAAU;AAAA,UAC7C,YAAY,MAAO,YAAY,KAAK;AAAA,UACpC,WAAW,CAAC,aACV,MAAM,UAAU,MAAM;AACpB,gBAAI,KAAK,MAAM;AAAW,uBAAS;AAAA,UACrC,CAAC;AAAA,QACL;AAAA,MACF;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,OAAO,aAAa,MAAM,CAAC;AACzC;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-resource-resolver.ts"],"sourcesContent":["import { useMemo } from 'react'\nimport { type ResourceResolver } from '@makeswift/controls'\n\nimport * as ReactPage from '../../../state/react-page'\nimport { useMakeswiftHostApiClient } from '../host-api-client'\nimport { useStore } from './use-store'\nimport { useDocumentKey, useDocumentLocale } from './use-document-context'\n\nexport function useResourceResolver(): ResourceResolver {\n const store = useStore()\n const client = useMakeswiftHostApiClient()\n\n const documentKey = useDocumentKey()\n const locale = useDocumentLocale()\n\n return useMemo<ResourceResolver>(() => {\n return {\n resolveSwatch: swatchId => client.resolveSwatch(swatchId),\n resolveFile: fileId => client.resolveFile(fileId),\n resolveTypography: typographyId => client.resolveTypography(typographyId),\n resolvePagePathnameSlice: pageId => client.resolvePagePathnameSlice({ pageId, locale }),\n resolveElementId: elementKey => {\n const read = () =>\n documentKey == null\n ? null\n : ReactPage.getElementId(store.getState(), documentKey, elementKey)\n\n let lastValue: string | null = null\n return {\n name: `element-id:${documentKey}:${elementKey}`,\n readStable: () => (lastValue = read()),\n subscribe: (onUpdate: () => void) =>\n store.subscribe(() => {\n if (read() !== lastValue) onUpdate()\n }),\n }\n },\n }\n }, [client, store, documentKey, locale])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAwB;AAGxB,gBAA2B;AAC3B,6BAA0C;AAC1C,uBAAyB;AACzB,kCAAkD;AAE3C,SAAS,sBAAwC;AACtD,QAAM,YAAQ,2BAAS;AACvB,QAAM,aAAS,kDAA0B;AAEzC,QAAM,kBAAc,4CAAe;AACnC,QAAM,aAAS,+CAAkB;AAEjC,aAAO,sBAA0B,MAAM;AACrC,WAAO;AAAA,MACL,eAAe,cAAY,OAAO,cAAc,QAAQ;AAAA,MACxD,aAAa,YAAU,OAAO,YAAY,MAAM;AAAA,MAChD,mBAAmB,kBAAgB,OAAO,kBAAkB,YAAY;AAAA,MACxE,0BAA0B,YAAU,OAAO,yBAAyB,EAAE,QAAQ,OAAO,CAAC;AAAA,MACtF,kBAAkB,gBAAc;AAC9B,cAAM,OAAO,MACX,eAAe,OACX,OACA,UAAU,aAAa,MAAM,SAAS,GAAG,aAAa,UAAU;AAEtE,YAAI,YAA2B;AAC/B,eAAO;AAAA,UACL,MAAM,cAAc,WAAW,IAAI,UAAU;AAAA,UAC7C,YAAY,MAAO,YAAY,KAAK;AAAA,UACpC,WAAW,CAAC,aACV,MAAM,UAAU,MAAM;AACpB,gBAAI,KAAK,MAAM;AAAW,uBAAS;AAAA,UACrC,CAAC;AAAA,QACL;AAAA,MACF;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,OAAO,aAAa,MAAM,CAAC;AACzC;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-selector.ts"],"sourcesContent":["import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/with-selector'\n\nimport { useStore } from './use-store'\nimport { type State as ReadOnlyState } from '../../../state/read-only-state'\nimport { type State as ReadWriteState } from '../../../state/read-write-state'\n\ntype State = ReadOnlyState | ReadWriteState\n\nexport function useSelector<R>(selector: (state: State) => R): R {\n const store = useStore()\n\n return useSyncExternalStoreWithSelector(store.subscribe, store.getState, store.getState, selector)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAAiD;AAEjD,uBAAyB;AAMlB,SAAS,YAAe,UAAkC;AAC/D,QAAM,YAAQ,2BAAS;AAEvB,aAAO,uDAAiC,MAAM,WAAW,MAAM,UAAU,MAAM,UAAU,QAAQ;AACnG;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-selector.ts"],"sourcesContent":["import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/with-selector'\n\nimport { useStore } from './use-store'\nimport { State as ReactPageState } from '../../../state/react-page'\nimport { State as ReactBuilderPreviewState } from '../../../state/react-builder-preview'\n\ntype State = ReactPageState | ReactBuilderPreviewState\n\nexport function useSelector<R>(selector: (state: State) => R): R {\n const store = useStore()\n\n return useSyncExternalStoreWithSelector(store.subscribe, store.getState, store.getState, selector)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAAiD;AAEjD,uBAAyB;AAMlB,SAAS,YAAe,UAAkC;AAC/D,QAAM,YAAQ,2BAAS;AAEvB,aAAO,uDAAiC,MAAM,WAAW,MAAM,UAAU,MAAM,UAAU,QAAQ;AACnG;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-store.ts"],"sourcesContent":["'use client'\n\nimport { createContext, useContext } from 'react'\nimport { type Store } from '../../../state/react-page'\n\nexport const StoreContext = createContext<Store | null>(null)\n\nexport function useStore(): Store {\n const store = useContext(StoreContext)\n if (store == null) {\n throw new Error('`useStore` must be used within a `StoreProvider`')\n }\n\n return store\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA0C;AAGnC,MAAM,mBAAe,4BAA4B,IAAI;AAErD,SAAS,WAAkB;AAChC,QAAM,YAAQ,yBAAW,YAAY;AACrC,MAAI,SAAS,MAAM;AACjB,UAAM,IAAI,MAAM,kDAAkD;AAAA,EACpE;AAEA,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-store.ts"],"sourcesContent":["'use client'\n\nimport { createContext, useContext } from 'react'\nimport { Store } from '../../../state/react-page'\n\nexport const StoreContext = createContext<Store | null>(null)\n\nexport function useStore(): Store {\n const store = useContext(StoreContext)\n if (store == null) {\n throw new Error('`useStore` must be used within a `StoreProvider`')\n }\n\n return store\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA0C;AAGnC,MAAM,mBAAe,4BAA4B,IAAI;AAErD,SAAS,WAAkB;AAChC,QAAM,YAAQ,yBAAW,YAAY;AACrC,MAAI,SAAS,MAAM;AACjB,UAAM,IAAI,MAAM,kDAAkD;AAAA,EACpE;AAEA,SAAO;AACT;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-universal-dispatch.ts"],"sourcesContent":["import { useEffect } from 'react'\nimport type { ThunkAction } from '@reduxjs/toolkit'\n\nimport { type Dispatch } from '../../../state/read-only-state'\nimport { type Action } from '../../../state/actions'\n\nimport { isServer } from '../../../utils/is-server'\n\n// overloaded signatures\nexport function useUniversalDispatch<Args extends any[], A extends Action>(\n dispatch: Dispatch,\n action: (...args: Args) => A,\n args: Args,\n): void\nexport function useUniversalDispatch<Args extends any[], A extends Action>(\n dispatch: Dispatch,\n action: (...args: Args) => ThunkAction<() => void, any, any, A>,\n args: Args,\n): void\n// implementation\nexport function useUniversalDispatch<Args extends any[], A extends Action>(\n dispatch: Dispatch,\n action: (...args: Args) => ThunkAction<() => void, any, any, A>,\n args: Args,\n) {\n if (isServer()) {\n dispatch(action(...args))\n }\n\n useEffect(() => {\n dispatch(action(...args))\n }, [dispatch, action, ...args])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA0B;AAM1B,uBAAyB;AAclB,SAAS,qBACd,UACA,QACA,MACA;AACA,UAAI,2BAAS,GAAG;AACd,aAAS,OAAO,GAAG,IAAI,CAAC;AAAA,EAC1B;AAEA,8BAAU,MAAM;AACd,aAAS,OAAO,GAAG,IAAI,CAAC;AAAA,EAC1B,GAAG,CAAC,UAAU,QAAQ,GAAG,IAAI,CAAC;AAChC;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-universal-dispatch.ts"],"sourcesContent":["import { useEffect } from 'react'\nimport type { ThunkAction } from '@reduxjs/toolkit'\n\nimport { type Dispatch } from '../../../state/react-page'\nimport { type Action } from '../../../state/actions'\n\nimport { isServer } from '../../../utils/is-server'\n\n// overloaded signatures\nexport function useUniversalDispatch<Args extends any[], A extends Action>(\n dispatch: Dispatch,\n action: (...args: Args) => A,\n args: Args,\n): void\nexport function useUniversalDispatch<Args extends any[], A extends Action>(\n dispatch: Dispatch,\n action: (...args: Args) => ThunkAction<() => void, any, any, A>,\n args: Args,\n): void\n// implementation\nexport function useUniversalDispatch<Args extends any[], A extends Action>(\n dispatch: Dispatch,\n action: (...args: Args) => ThunkAction<() => void, any, any, A>,\n args: Args,\n) {\n if (isServer()) {\n dispatch(action(...args))\n }\n\n useEffect(() => {\n dispatch(action(...args))\n }, [dispatch, action, ...args])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA0B;AAM1B,uBAAyB;AAclB,SAAS,qBACd,UACA,QACA,MACA;AACA,UAAI,2BAAS,GAAG;AACd,aAAS,OAAO,GAAG,IAAI,CAAC;AAAA,EAC1B;AAEA,8BAAU,MAAM;AACd,aAAS,OAAO,GAAG,IAAI,CAAC;AAAA,EAC1B,GAAG,CAAC,UAAU,QAAQ,GAAG,IAAI,CAAC;AAChC;","names":[]}
@@ -25,9 +25,9 @@ __export(host_api_client_exports, {
25
25
  module.exports = __toCommonJS(host_api_client_exports);
26
26
  var import_jsx_runtime = require("react/jsx-runtime");
27
27
  var import_react = require("react");
28
- var import_client = require("../../api/client");
28
+ var import_react2 = require("../../api/react");
29
29
  const Context = (0, import_react.createContext)(
30
- new import_client.MakeswiftHostApiClient({
30
+ new import_react2.MakeswiftHostApiClient({
31
31
  uri: "https://api.makeswift.com/graphql",
32
32
  fetch: async (url, init) => {
33
33
  console.warn(
@@ -35,8 +35,7 @@ const Context = (0, import_react.createContext)(
35
35
  { url }
36
36
  );
37
37
  return fetch(url, init);
38
- },
39
- siteVersion: null
38
+ }
40
39
  })
41
40
  );
42
41
  function useMakeswiftHostApiClient() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/host-api-client.tsx"],"sourcesContent":["'use client'\n\nimport { ReactNode, createContext, useContext } from 'react'\nimport { MakeswiftHostApiClient } from '../../api/client'\n\nconst Context = createContext(\n new MakeswiftHostApiClient({\n uri: 'https://api.makeswift.com/graphql',\n fetch: async (url, init) => {\n console.warn(\n 'Using fallback `fetch` implementation, resource revalidation may not work as expected.',\n { url },\n )\n return fetch(url, init)\n },\n siteVersion: null,\n }),\n)\n\nexport function useMakeswiftHostApiClient(): MakeswiftHostApiClient {\n return useContext(Context)\n}\n\nexport function MakeswiftHostApiClientProvider({\n client,\n children,\n}: {\n client: MakeswiftHostApiClient\n children: ReactNode\n}) {\n return <Context.Provider value={client}>{children}</Context.Provider>\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA8BS;AA5BT,mBAAqD;AACrD,oBAAuC;AAEvC,MAAM,cAAU;AAAA,EACd,IAAI,qCAAuB;AAAA,IACzB,KAAK;AAAA,IACL,OAAO,OAAO,KAAK,SAAS;AAC1B,cAAQ;AAAA,QACN;AAAA,QACA,EAAE,IAAI;AAAA,MACR;AACA,aAAO,MAAM,KAAK,IAAI;AAAA,IACxB;AAAA,IACA,aAAa;AAAA,EACf,CAAC;AACH;AAEO,SAAS,4BAAoD;AAClE,aAAO,yBAAW,OAAO;AAC3B;AAEO,SAAS,+BAA+B;AAAA,EAC7C;AAAA,EACA;AACF,GAGG;AACD,SAAO,4CAAC,QAAQ,UAAR,EAAiB,OAAO,QAAS,UAAS;AACpD;","names":[]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/host-api-client.tsx"],"sourcesContent":["'use client'\n\nimport { ReactNode, createContext, useContext } from 'react'\nimport { MakeswiftHostApiClient } from '../../api/react'\n\nconst Context = createContext(\n new MakeswiftHostApiClient({\n uri: 'https://api.makeswift.com/graphql',\n fetch: async (url, init) => {\n console.warn(\n 'Using fallback `fetch` implementation, resource revalidation may not work as expected.',\n { url },\n )\n return fetch(url, init)\n },\n }),\n)\n\nexport function useMakeswiftHostApiClient(): MakeswiftHostApiClient {\n return useContext(Context)\n}\n\nexport function MakeswiftHostApiClientProvider({\n client,\n children,\n}: {\n client: MakeswiftHostApiClient\n children: ReactNode\n}) {\n return <Context.Provider value={client}>{children}</Context.Provider>\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA6BS;AA3BT,mBAAqD;AACrD,IAAAA,gBAAuC;AAEvC,MAAM,cAAU;AAAA,EACd,IAAI,qCAAuB;AAAA,IACzB,KAAK;AAAA,IACL,OAAO,OAAO,KAAK,SAAS;AAC1B,cAAQ;AAAA,QACN;AAAA,QACA,EAAE,IAAI;AAAA,MACR;AACA,aAAO,MAAM,KAAK,IAAI;AAAA,IACxB;AAAA,EACF,CAAC;AACH;AAEO,SAAS,4BAAoD;AAClE,aAAO,yBAAW,OAAO;AAC3B;AAEO,SAAS,+BAA+B;AAAA,EAC7C;AAAA,EACA;AACF,GAGG;AACD,SAAO,4CAAC,QAAQ,UAAR,EAAiB,OAAO,QAAS,UAAS;AACpD;","names":["import_react"]}
@@ -28,7 +28,7 @@ __export(react_exports, {
28
28
  useDocumentKey: () => import_use_document_context.useDocumentKey,
29
29
  useElementId: () => import_use_element_id.useElementId,
30
30
  useIsInBuilder: () => import_use_is_in_builder.useIsInBuilder,
31
- useIsReadOnly: () => import_use_is_read_only.useIsReadOnly,
31
+ useIsPreview: () => import_use_is_preview.useIsPreview,
32
32
  useSelector: () => import_use_selector.useSelector,
33
33
  useStore: () => import_use_store.useStore
34
34
  });
@@ -42,7 +42,7 @@ var import_use_builder_edit_mode = require("./hooks/use-builder-edit-mode");
42
42
  var import_use_document_context = require("./hooks/use-document-context");
43
43
  var import_use_element_id = require("./hooks/use-element-id");
44
44
  var import_use_is_in_builder = require("./hooks/use-is-in-builder");
45
- var import_use_is_read_only = require("./hooks/use-is-read-only");
45
+ var import_use_is_preview = require("./hooks/use-is-preview");
46
46
  var import_use_selector = require("./hooks/use-selector");
47
47
  var import_use_store = require("./hooks/use-store");
48
48
  // Annotate the CommonJS export names for ESM import in node:
@@ -57,7 +57,7 @@ var import_use_store = require("./hooks/use-store");
57
57
  useDocumentKey,
58
58
  useElementId,
59
59
  useIsInBuilder,
60
- useIsReadOnly,
60
+ useIsPreview,
61
61
  useSelector,
62
62
  useStore
63
63
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/index.ts"],"sourcesContent":["export { ReactRuntime } from './react-runtime'\n\nexport { Element } from './components/Element'\nexport { DocumentRoot } from './components/DocumentRoot'\nexport { RuntimeProvider } from './components/RuntimeProvider'\n\nexport { useBreakpoints } from './hooks/use-breakpoints'\nexport { useBuilderEditMode } from './hooks/use-builder-edit-mode'\nexport { useDocumentKey } from './hooks/use-document-context'\nexport { useElementId } from './hooks/use-element-id'\nexport { useIsInBuilder } from './hooks/use-is-in-builder'\nexport { useIsReadOnly } from './hooks/use-is-read-only'\nexport { useSelector } from './hooks/use-selector'\nexport { StoreContext, useStore } from './hooks/use-store'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAA6B;AAE7B,qBAAwB;AACxB,0BAA6B;AAC7B,6BAAgC;AAEhC,6BAA+B;AAC/B,mCAAmC;AACnC,kCAA+B;AAC/B,4BAA6B;AAC7B,+BAA+B;AAC/B,8BAA8B;AAC9B,0BAA4B;AAC5B,uBAAuC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/index.ts"],"sourcesContent":["export { ReactRuntime } from './react-runtime'\n\nexport { Element } from './components/Element'\nexport { DocumentRoot } from './components/DocumentRoot'\nexport { RuntimeProvider } from './components/RuntimeProvider'\n\nexport { useBreakpoints } from './hooks/use-breakpoints'\nexport { useBuilderEditMode } from './hooks/use-builder-edit-mode'\nexport { useDocumentKey } from './hooks/use-document-context'\nexport { useElementId } from './hooks/use-element-id'\nexport { useIsInBuilder } from './hooks/use-is-in-builder'\nexport { useIsPreview } from './hooks/use-is-preview'\nexport { useSelector } from './hooks/use-selector'\nexport { StoreContext, useStore } from './hooks/use-store'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAA6B;AAE7B,qBAAwB;AACxB,0BAA6B;AAC7B,6BAAgC;AAEhC,6BAA+B;AAC/B,mCAAmC;AACnC,kCAA+B;AAC/B,4BAA6B;AAC7B,+BAA+B;AAC/B,4BAA6B;AAC7B,0BAA4B;AAC5B,uBAAuC;","names":[]}