@makeswift/runtime 0.26.4-canary.1 → 0.26.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (565) hide show
  1. package/dist/cjs/api/{client.js → react.js} +7 -14
  2. package/dist/cjs/api/react.js.map +1 -0
  3. package/dist/cjs/api-handler/handlers/element-tree.js.map +1 -1
  4. package/dist/cjs/api-handler/handlers/manifest.js +1 -1
  5. package/dist/cjs/api-handler/handlers/merge-translated-data.js.map +1 -1
  6. package/dist/cjs/api-handler/handlers/translatable-data.js.map +1 -1
  7. package/dist/cjs/builder/host-to-builder-actions.js +3 -3
  8. package/dist/cjs/builder/host-to-builder-actions.js.map +1 -1
  9. package/dist/cjs/builder/index.js +2 -2
  10. package/dist/cjs/builder/index.js.map +1 -1
  11. package/dist/cjs/client/index.js +8 -8
  12. package/dist/cjs/client/index.js.map +1 -1
  13. package/dist/cjs/components/builtin/Box/Box.js +1 -1
  14. package/dist/cjs/components/builtin/Box/Box.js.map +1 -1
  15. package/dist/cjs/components/builtin/Form/Form.js +1 -1
  16. package/dist/cjs/components/builtin/Form/Form.js.map +1 -1
  17. package/dist/cjs/components/hooks/useTableFormFieldRefs.js +1 -1
  18. package/dist/cjs/components/hooks/useTableFormFieldRefs.js.map +1 -1
  19. package/dist/cjs/next/api-handler/config/app-router.js +10 -1
  20. package/dist/cjs/next/api-handler/config/app-router.js.map +1 -1
  21. package/dist/cjs/next/components/framework-provider/index.js +1 -1
  22. package/dist/cjs/next/components/framework-provider/index.js.map +1 -1
  23. package/dist/cjs/next/components/tests/controls/color-control/fixtures.js.map +1 -1
  24. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js +2 -1
  25. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  26. package/dist/cjs/next/components/tests/controls/rich-text-v2-control/fixtures.js.map +1 -1
  27. package/dist/cjs/next/components/tests/makeswift-component/fixtures.js +2 -1
  28. package/dist/cjs/next/components/tests/makeswift-component/fixtures.js.map +1 -1
  29. package/dist/cjs/next/components/tests/prop-controllers/page-prop-controller.js +3 -2
  30. package/dist/cjs/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -1
  31. package/dist/cjs/next/testing/element-data.js +3 -3
  32. package/dist/cjs/next/testing/element-data.js.map +1 -1
  33. package/dist/cjs/next/testing/index.js +0 -2
  34. package/dist/cjs/next/testing/index.js.map +1 -1
  35. package/dist/cjs/next/testing/page-rendering.js +3 -3
  36. package/dist/cjs/next/testing/page-rendering.js.map +1 -1
  37. package/dist/cjs/prop-controllers/descriptors.js.map +1 -1
  38. package/dist/cjs/prop-controllers/instances.js.map +1 -1
  39. package/dist/cjs/runtimes/react/components/Document.js +2 -2
  40. package/dist/cjs/runtimes/react/components/Document.js.map +1 -1
  41. package/dist/cjs/runtimes/react/components/DocumentRoot.js.map +1 -1
  42. package/dist/cjs/runtimes/react/components/Element.js +2 -2
  43. package/dist/cjs/runtimes/react/components/Element.js.map +1 -1
  44. package/dist/cjs/runtimes/react/components/ElementData.js.map +1 -1
  45. package/dist/cjs/runtimes/react/components/ElementReference.js.map +1 -1
  46. package/dist/cjs/runtimes/react/components/ElementRegistration.js +2 -2
  47. package/dist/cjs/runtimes/react/components/ElementRegistration.js.map +1 -1
  48. package/dist/cjs/runtimes/react/components/MakeswiftComponent.js +2 -2
  49. package/dist/cjs/runtimes/react/components/MakeswiftComponent.js.map +1 -1
  50. package/dist/cjs/runtimes/react/components/RuntimeProvider.js +5 -6
  51. package/dist/cjs/runtimes/react/components/RuntimeProvider.js.map +1 -1
  52. package/dist/cjs/runtimes/react/components/framework-context.js +13 -3
  53. package/dist/cjs/runtimes/react/components/framework-context.js.map +1 -1
  54. package/dist/cjs/runtimes/react/components/page/Page.js.map +1 -1
  55. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js +3 -2
  56. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  57. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -2
  58. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  59. package/dist/cjs/runtimes/react/controls.js +2 -2
  60. package/dist/cjs/runtimes/react/controls.js.map +1 -1
  61. package/dist/cjs/runtimes/react/element-imperative-handle.js +1 -1
  62. package/dist/cjs/runtimes/react/element-imperative-handle.js.map +1 -1
  63. package/dist/cjs/runtimes/react/hooks/use-breakpoints.js +2 -2
  64. package/dist/cjs/runtimes/react/hooks/use-breakpoints.js.map +1 -1
  65. package/dist/cjs/runtimes/react/hooks/use-builder-edit-mode.js +2 -2
  66. package/dist/cjs/runtimes/react/hooks/use-builder-edit-mode.js.map +1 -1
  67. package/dist/cjs/runtimes/react/hooks/use-cache-data.js +2 -2
  68. package/dist/cjs/runtimes/react/hooks/use-cache-data.js.map +1 -1
  69. package/dist/cjs/runtimes/react/hooks/use-component.js +3 -3
  70. package/dist/cjs/runtimes/react/hooks/use-component.js.map +1 -1
  71. package/dist/cjs/runtimes/react/hooks/use-dispatch.js.map +1 -1
  72. package/dist/cjs/runtimes/react/hooks/use-document.js +2 -2
  73. package/dist/cjs/runtimes/react/hooks/use-document.js.map +1 -1
  74. package/dist/cjs/runtimes/react/hooks/use-element-id.js +2 -2
  75. package/dist/cjs/runtimes/react/hooks/use-element-id.js.map +1 -1
  76. package/dist/cjs/runtimes/react/hooks/use-is-in-builder.js +2 -2
  77. package/dist/cjs/runtimes/react/hooks/use-is-in-builder.js.map +1 -1
  78. package/dist/cjs/runtimes/react/hooks/{use-is-read-only.js → use-is-preview.js} +9 -9
  79. package/dist/cjs/runtimes/react/hooks/use-is-preview.js.map +1 -0
  80. package/dist/cjs/runtimes/react/hooks/use-register-document.js.map +1 -1
  81. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js +2 -2
  82. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  83. package/dist/cjs/runtimes/react/hooks/use-resource-resolver.js +1 -1
  84. package/dist/cjs/runtimes/react/hooks/use-resource-resolver.js.map +1 -1
  85. package/dist/cjs/runtimes/react/hooks/use-selector.js.map +1 -1
  86. package/dist/cjs/runtimes/react/hooks/use-store.js.map +1 -1
  87. package/dist/cjs/runtimes/react/hooks/use-universal-dispatch.js.map +1 -1
  88. package/dist/cjs/runtimes/react/host-api-client.js +3 -4
  89. package/dist/cjs/runtimes/react/host-api-client.js.map +1 -1
  90. package/dist/cjs/runtimes/react/index.js +3 -3
  91. package/dist/cjs/runtimes/react/index.js.map +1 -1
  92. package/dist/cjs/runtimes/react/poll-box-model.js +1 -1
  93. package/dist/cjs/runtimes/react/poll-box-model.js.map +1 -1
  94. package/dist/cjs/runtimes/react/react-runtime-core.js +3 -3
  95. package/dist/cjs/runtimes/react/react-runtime-core.js.map +1 -1
  96. package/dist/cjs/runtimes/react/runtime-core.js +2 -4
  97. package/dist/cjs/runtimes/react/runtime-core.js.map +1 -1
  98. package/dist/cjs/runtimes/react/utils/can-accept-ref.js.map +1 -1
  99. package/dist/cjs/state/actions/{internal/read-only-actions.js → internal.js} +62 -44
  100. package/dist/cjs/state/actions/internal.js.map +1 -0
  101. package/dist/cjs/state/builder-api/actions.js +8 -11
  102. package/dist/cjs/state/builder-api/actions.js.map +1 -1
  103. package/dist/cjs/state/host-api.js.map +1 -1
  104. package/dist/cjs/state/makeswift-api-client.js +20 -34
  105. package/dist/cjs/state/makeswift-api-client.js.map +1 -1
  106. package/dist/cjs/state/modules/api-resources.js +4 -7
  107. package/dist/cjs/state/modules/api-resources.js.map +1 -1
  108. package/dist/cjs/state/modules/{read-write/box-models.js → box-models.js} +4 -6
  109. package/dist/cjs/state/modules/box-models.js.map +1 -0
  110. package/dist/cjs/state/modules/breakpoints.js +1 -2
  111. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  112. package/dist/cjs/state/modules/builder-edit-mode.js +1 -2
  113. package/dist/cjs/state/modules/builder-edit-mode.js.map +1 -1
  114. package/dist/cjs/state/modules/components-meta.js +2 -3
  115. package/dist/cjs/state/modules/components-meta.js.map +1 -1
  116. package/dist/cjs/state/modules/{read-write/element-imperative-handles.js → element-imperative-handles.js} +3 -4
  117. package/dist/cjs/state/modules/element-imperative-handles.js.map +1 -0
  118. package/dist/cjs/state/modules/element-trees.js +3 -5
  119. package/dist/cjs/state/modules/element-trees.js.map +1 -1
  120. package/dist/cjs/state/modules/is-in-builder.js +1 -2
  121. package/dist/cjs/state/modules/is-in-builder.js.map +1 -1
  122. package/dist/cjs/state/modules/{is-read-only.js → is-preview.js} +9 -12
  123. package/dist/cjs/state/modules/is-preview.js.map +1 -0
  124. package/dist/cjs/state/modules/localized-resources-map.js +2 -4
  125. package/dist/cjs/state/modules/localized-resources-map.js.map +1 -1
  126. package/dist/cjs/state/modules/{read-write/pointer.js → pointer.js} +2 -3
  127. package/dist/cjs/state/modules/pointer.js.map +1 -0
  128. package/dist/cjs/state/modules/prop-controllers.js +2 -3
  129. package/dist/cjs/state/modules/prop-controllers.js.map +1 -1
  130. package/dist/cjs/state/modules/react-components.js +2 -3
  131. package/dist/cjs/state/modules/react-components.js.map +1 -1
  132. package/dist/cjs/state/modules/read-only-documents.js +2 -3
  133. package/dist/cjs/state/modules/read-only-documents.js.map +1 -1
  134. package/dist/cjs/state/modules/{read-write/read-write-documents.js → read-write-documents.js} +3 -3
  135. package/dist/cjs/state/modules/read-write-documents.js.map +1 -0
  136. package/dist/cjs/state/react-builder-preview.js +508 -18
  137. package/dist/cjs/state/react-builder-preview.js.map +1 -1
  138. package/dist/cjs/state/react-page.js +250 -6
  139. package/dist/cjs/state/react-page.js.map +1 -1
  140. package/dist/cjs/state/shared-api.js.map +1 -1
  141. package/dist/cjs/state/translations/get.js +2 -2
  142. package/dist/cjs/state/translations/get.js.map +1 -1
  143. package/dist/cjs/state/translations/merge.js +2 -2
  144. package/dist/cjs/state/translations/merge.js.map +1 -1
  145. package/dist/cjs/unstable-framework-support/index.js +4 -2
  146. package/dist/cjs/unstable-framework-support/index.js.map +1 -1
  147. package/dist/esm/api/{client.js → react.js} +4 -11
  148. package/dist/esm/api/react.js.map +1 -0
  149. package/dist/esm/api-handler/handlers/element-tree.js.map +1 -1
  150. package/dist/esm/api-handler/handlers/manifest.js +1 -1
  151. package/dist/esm/api-handler/handlers/merge-translated-data.js.map +1 -1
  152. package/dist/esm/api-handler/handlers/translatable-data.js.map +1 -1
  153. package/dist/esm/builder/host-to-builder-actions.js +4 -4
  154. package/dist/esm/builder/host-to-builder-actions.js.map +1 -1
  155. package/dist/esm/builder/index.js +1 -1
  156. package/dist/esm/builder/index.js.map +1 -1
  157. package/dist/esm/client/index.js +5 -5
  158. package/dist/esm/client/index.js.map +1 -1
  159. package/dist/esm/components/builtin/Box/Box.js +1 -1
  160. package/dist/esm/components/builtin/Box/Box.js.map +1 -1
  161. package/dist/esm/components/builtin/Form/Form.js +1 -1
  162. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  163. package/dist/esm/components/hooks/useTableFormFieldRefs.js +1 -1
  164. package/dist/esm/components/hooks/useTableFormFieldRefs.js.map +1 -1
  165. package/dist/esm/next/api-handler/config/app-router.js +10 -1
  166. package/dist/esm/next/api-handler/config/app-router.js.map +1 -1
  167. package/dist/esm/next/components/framework-provider/index.js +5 -2
  168. package/dist/esm/next/components/framework-provider/index.js.map +1 -1
  169. package/dist/esm/next/components/tests/controls/color-control/fixtures.js.map +1 -1
  170. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +2 -1
  171. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  172. package/dist/esm/next/components/tests/controls/rich-text-v2-control/fixtures.js.map +1 -1
  173. package/dist/esm/next/components/tests/makeswift-component/fixtures.js +2 -1
  174. package/dist/esm/next/components/tests/makeswift-component/fixtures.js.map +1 -1
  175. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js +3 -2
  176. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -1
  177. package/dist/esm/next/testing/element-data.js +1 -1
  178. package/dist/esm/next/testing/element-data.js.map +1 -1
  179. package/dist/esm/next/testing/index.js +0 -1
  180. package/dist/esm/next/testing/index.js.map +1 -1
  181. package/dist/esm/next/testing/page-rendering.js +3 -3
  182. package/dist/esm/next/testing/page-rendering.js.map +1 -1
  183. package/dist/esm/prop-controllers/descriptors.js.map +1 -1
  184. package/dist/esm/prop-controllers/instances.js.map +1 -1
  185. package/dist/esm/runtimes/react/components/Document.js +1 -1
  186. package/dist/esm/runtimes/react/components/Document.js.map +1 -1
  187. package/dist/esm/runtimes/react/components/DocumentRoot.js.map +1 -1
  188. package/dist/esm/runtimes/react/components/Element.js +1 -3
  189. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  190. package/dist/esm/runtimes/react/components/ElementData.js.map +1 -1
  191. package/dist/esm/runtimes/react/components/ElementReference.js.map +1 -1
  192. package/dist/esm/runtimes/react/components/ElementRegistration.js +1 -1
  193. package/dist/esm/runtimes/react/components/ElementRegistration.js.map +1 -1
  194. package/dist/esm/runtimes/react/components/MakeswiftComponent.js +1 -1
  195. package/dist/esm/runtimes/react/components/MakeswiftComponent.js.map +1 -1
  196. package/dist/esm/runtimes/react/components/RuntimeProvider.js +4 -5
  197. package/dist/esm/runtimes/react/components/RuntimeProvider.js.map +1 -1
  198. package/dist/esm/runtimes/react/components/framework-context.js +14 -2
  199. package/dist/esm/runtimes/react/components/framework-context.js.map +1 -1
  200. package/dist/esm/runtimes/react/components/page/Page.js.map +1 -1
  201. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js +3 -2
  202. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  203. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -2
  204. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  205. package/dist/esm/runtimes/react/controls.js +2 -2
  206. package/dist/esm/runtimes/react/controls.js.map +1 -1
  207. package/dist/esm/runtimes/react/element-imperative-handle.js +1 -1
  208. package/dist/esm/runtimes/react/element-imperative-handle.js.map +1 -1
  209. package/dist/esm/runtimes/react/hooks/use-breakpoints.js +1 -1
  210. package/dist/esm/runtimes/react/hooks/use-breakpoints.js.map +1 -1
  211. package/dist/esm/runtimes/react/hooks/use-builder-edit-mode.js +1 -1
  212. package/dist/esm/runtimes/react/hooks/use-builder-edit-mode.js.map +1 -1
  213. package/dist/esm/runtimes/react/hooks/use-cache-data.js +1 -1
  214. package/dist/esm/runtimes/react/hooks/use-cache-data.js.map +1 -1
  215. package/dist/esm/runtimes/react/hooks/use-component.js +1 -1
  216. package/dist/esm/runtimes/react/hooks/use-component.js.map +1 -1
  217. package/dist/esm/runtimes/react/hooks/use-dispatch.js.map +1 -1
  218. package/dist/esm/runtimes/react/hooks/use-document.js +1 -1
  219. package/dist/esm/runtimes/react/hooks/use-document.js.map +1 -1
  220. package/dist/esm/runtimes/react/hooks/use-element-id.js +1 -1
  221. package/dist/esm/runtimes/react/hooks/use-element-id.js.map +1 -1
  222. package/dist/esm/runtimes/react/hooks/use-is-in-builder.js +1 -1
  223. package/dist/esm/runtimes/react/hooks/use-is-in-builder.js.map +1 -1
  224. package/dist/esm/runtimes/react/hooks/use-is-preview.js +9 -0
  225. package/dist/esm/runtimes/react/hooks/use-is-preview.js.map +1 -0
  226. package/dist/esm/runtimes/react/hooks/use-register-document.js.map +1 -1
  227. package/dist/esm/runtimes/react/hooks/use-resolved-props.js +2 -2
  228. package/dist/esm/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  229. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js +1 -1
  230. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js.map +1 -1
  231. package/dist/esm/runtimes/react/hooks/use-selector.js.map +1 -1
  232. package/dist/esm/runtimes/react/hooks/use-store.js.map +1 -1
  233. package/dist/esm/runtimes/react/hooks/use-universal-dispatch.js.map +1 -1
  234. package/dist/esm/runtimes/react/host-api-client.js +2 -3
  235. package/dist/esm/runtimes/react/host-api-client.js.map +1 -1
  236. package/dist/esm/runtimes/react/index.js +2 -2
  237. package/dist/esm/runtimes/react/index.js.map +1 -1
  238. package/dist/esm/runtimes/react/poll-box-model.js +1 -1
  239. package/dist/esm/runtimes/react/poll-box-model.js.map +1 -1
  240. package/dist/esm/runtimes/react/react-runtime-core.js +1 -4
  241. package/dist/esm/runtimes/react/react-runtime-core.js.map +1 -1
  242. package/dist/esm/runtimes/react/runtime-core.js +5 -3
  243. package/dist/esm/runtimes/react/runtime-core.js.map +1 -1
  244. package/dist/esm/runtimes/react/utils/can-accept-ref.js.map +1 -1
  245. package/dist/esm/state/actions/{internal/read-only-actions.js → internal.js} +52 -36
  246. package/dist/esm/state/actions/internal.js.map +1 -0
  247. package/dist/esm/state/builder-api/actions.js +7 -8
  248. package/dist/esm/state/builder-api/actions.js.map +1 -1
  249. package/dist/esm/state/host-api.js.map +1 -1
  250. package/dist/esm/state/makeswift-api-client.js +19 -33
  251. package/dist/esm/state/makeswift-api-client.js.map +1 -1
  252. package/dist/esm/state/modules/api-resources.js +5 -8
  253. package/dist/esm/state/modules/api-resources.js.map +1 -1
  254. package/dist/esm/state/modules/{read-write/box-models.js → box-models.js} +4 -6
  255. package/dist/esm/state/modules/box-models.js.map +1 -0
  256. package/dist/esm/state/modules/breakpoints.js +2 -3
  257. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  258. package/dist/esm/state/modules/builder-edit-mode.js +2 -3
  259. package/dist/esm/state/modules/builder-edit-mode.js.map +1 -1
  260. package/dist/esm/state/modules/components-meta.js +3 -4
  261. package/dist/esm/state/modules/components-meta.js.map +1 -1
  262. package/dist/esm/state/modules/{read-write/element-imperative-handles.js → element-imperative-handles.js} +3 -4
  263. package/dist/esm/state/modules/element-imperative-handles.js.map +1 -0
  264. package/dist/esm/state/modules/element-trees.js +4 -6
  265. package/dist/esm/state/modules/element-trees.js.map +1 -1
  266. package/dist/esm/state/modules/is-in-builder.js +2 -3
  267. package/dist/esm/state/modules/is-in-builder.js.map +1 -1
  268. package/dist/esm/state/modules/is-preview.js +21 -0
  269. package/dist/esm/state/modules/is-preview.js.map +1 -0
  270. package/dist/esm/state/modules/localized-resources-map.js +3 -5
  271. package/dist/esm/state/modules/localized-resources-map.js.map +1 -1
  272. package/dist/esm/state/modules/{read-write/pointer.js → pointer.js} +2 -3
  273. package/dist/esm/state/modules/pointer.js.map +1 -0
  274. package/dist/esm/state/modules/prop-controllers.js +3 -4
  275. package/dist/esm/state/modules/prop-controllers.js.map +1 -1
  276. package/dist/esm/state/modules/react-components.js +3 -4
  277. package/dist/esm/state/modules/react-components.js.map +1 -1
  278. package/dist/esm/state/modules/read-only-documents.js +6 -4
  279. package/dist/esm/state/modules/read-only-documents.js.map +1 -1
  280. package/dist/esm/state/modules/{read-write/read-write-documents.js → read-write-documents.js} +3 -3
  281. package/dist/esm/state/modules/read-write-documents.js.map +1 -0
  282. package/dist/esm/state/react-builder-preview.js +500 -15
  283. package/dist/esm/state/react-builder-preview.js.map +1 -1
  284. package/dist/esm/state/react-page.js +240 -7
  285. package/dist/esm/state/react-page.js.map +1 -1
  286. package/dist/esm/state/shared-api.js.map +1 -1
  287. package/dist/esm/state/translations/get.js +1 -1
  288. package/dist/esm/state/translations/get.js.map +1 -1
  289. package/dist/esm/state/translations/merge.js +1 -1
  290. package/dist/esm/state/translations/merge.js.map +1 -1
  291. package/dist/esm/unstable-framework-support/index.js +4 -2
  292. package/dist/esm/unstable-framework-support/index.js.map +1 -1
  293. package/dist/types/api/{client.d.ts → react.d.ts} +2 -4
  294. package/dist/types/api/react.d.ts.map +1 -0
  295. package/dist/types/api-handler/handlers/element-tree.d.ts +1 -1
  296. package/dist/types/api-handler/handlers/element-tree.d.ts.map +1 -1
  297. package/dist/types/api-handler/handlers/merge-translated-data.d.ts +1 -1
  298. package/dist/types/api-handler/handlers/merge-translated-data.d.ts.map +1 -1
  299. package/dist/types/api-handler/handlers/translatable-data.d.ts +1 -1
  300. package/dist/types/api-handler/handlers/translatable-data.d.ts.map +1 -1
  301. package/dist/types/api-handler/handlers/webhook/types.d.ts +4 -4
  302. package/dist/types/builder/host-to-builder-actions.d.ts +2 -2
  303. package/dist/types/builder/host-to-builder-actions.d.ts.map +1 -1
  304. package/dist/types/builder/index.d.ts +2 -2
  305. package/dist/types/builder/index.d.ts.map +1 -1
  306. package/dist/types/client/index.d.ts +2 -2
  307. package/dist/types/client/index.d.ts.map +1 -1
  308. package/dist/types/components/builtin/Box/Box.d.ts +1 -1
  309. package/dist/types/components/builtin/Box/Box.d.ts.map +1 -1
  310. package/dist/types/components/builtin/Form/Form.d.ts +1 -1
  311. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  312. package/dist/types/locale.d.ts +1 -1
  313. package/dist/types/next/api-handler/config/app-router.d.ts.map +1 -1
  314. package/dist/types/next/components/framework-provider/index.d.ts.map +1 -1
  315. package/dist/types/next/components/tests/controls/color-control/fixtures.d.ts +1 -1
  316. package/dist/types/next/components/tests/controls/color-control/fixtures.d.ts.map +1 -1
  317. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts +3 -3
  318. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  319. package/dist/types/next/components/tests/controls/rich-text-v2-control/fixtures.d.ts +1 -1
  320. package/dist/types/next/components/tests/controls/rich-text-v2-control/fixtures.d.ts.map +1 -1
  321. package/dist/types/next/components/tests/makeswift-component/fixtures.d.ts +1 -1
  322. package/dist/types/next/components/tests/makeswift-component/fixtures.d.ts.map +1 -1
  323. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts +1 -1
  324. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts.map +1 -1
  325. package/dist/types/next/testing/element-data.d.ts +1 -1
  326. package/dist/types/next/testing/element-data.d.ts.map +1 -1
  327. package/dist/types/next/testing/index.d.ts +0 -1
  328. package/dist/types/next/testing/index.d.ts.map +1 -1
  329. package/dist/types/next/testing/page-rendering.d.ts.map +1 -1
  330. package/dist/types/prop-controllers/descriptors.d.ts +1 -1
  331. package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
  332. package/dist/types/prop-controllers/instances.d.ts +1 -1
  333. package/dist/types/prop-controllers/instances.d.ts.map +1 -1
  334. package/dist/types/runtimes/react/components/Document.d.ts +1 -1
  335. package/dist/types/runtimes/react/components/Document.d.ts.map +1 -1
  336. package/dist/types/runtimes/react/components/DocumentRoot.d.ts +1 -1
  337. package/dist/types/runtimes/react/components/DocumentRoot.d.ts.map +1 -1
  338. package/dist/types/runtimes/react/components/Element.d.ts +1 -1
  339. package/dist/types/runtimes/react/components/Element.d.ts.map +1 -1
  340. package/dist/types/runtimes/react/components/ElementData.d.ts +1 -1
  341. package/dist/types/runtimes/react/components/ElementData.d.ts.map +1 -1
  342. package/dist/types/runtimes/react/components/ElementReference.d.ts +1 -1
  343. package/dist/types/runtimes/react/components/ElementReference.d.ts.map +1 -1
  344. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts +1 -1
  345. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts.map +1 -1
  346. package/dist/types/runtimes/react/components/framework-context.d.ts +4 -2
  347. package/dist/types/runtimes/react/components/framework-context.d.ts.map +1 -1
  348. package/dist/types/runtimes/react/components/page/Page.d.ts +1 -1
  349. package/dist/types/runtimes/react/components/page/Page.d.ts.map +1 -1
  350. package/dist/types/runtimes/react/controls.d.ts +2 -2
  351. package/dist/types/runtimes/react/controls.d.ts.map +1 -1
  352. package/dist/types/runtimes/react/element-imperative-handle.d.ts +1 -1
  353. package/dist/types/runtimes/react/element-imperative-handle.d.ts.map +1 -1
  354. package/dist/types/runtimes/react/hooks/use-cache-data.d.ts +1 -1
  355. package/dist/types/runtimes/react/hooks/use-cache-data.d.ts.map +1 -1
  356. package/dist/types/runtimes/react/hooks/use-component.d.ts +1 -1
  357. package/dist/types/runtimes/react/hooks/use-component.d.ts.map +1 -1
  358. package/dist/types/runtimes/react/hooks/use-dispatch.d.ts +3 -3
  359. package/dist/types/runtimes/react/hooks/use-dispatch.d.ts.map +1 -1
  360. package/dist/types/runtimes/react/hooks/use-document.d.ts +1 -1
  361. package/dist/types/runtimes/react/hooks/use-document.d.ts.map +1 -1
  362. package/dist/types/runtimes/react/hooks/use-is-preview.d.ts +2 -0
  363. package/dist/types/runtimes/react/hooks/use-is-preview.d.ts.map +1 -0
  364. package/dist/types/runtimes/react/hooks/use-register-document.d.ts +1 -1
  365. package/dist/types/runtimes/react/hooks/use-register-document.d.ts.map +1 -1
  366. package/dist/types/runtimes/react/hooks/use-selector.d.ts +3 -3
  367. package/dist/types/runtimes/react/hooks/use-selector.d.ts.map +1 -1
  368. package/dist/types/runtimes/react/hooks/use-store.d.ts +4 -4
  369. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  370. package/dist/types/runtimes/react/hooks/use-universal-dispatch.d.ts +1 -1
  371. package/dist/types/runtimes/react/hooks/use-universal-dispatch.d.ts.map +1 -1
  372. package/dist/types/runtimes/react/host-api-client.d.ts +1 -1
  373. package/dist/types/runtimes/react/host-api-client.d.ts.map +1 -1
  374. package/dist/types/runtimes/react/index.d.ts +1 -1
  375. package/dist/types/runtimes/react/index.d.ts.map +1 -1
  376. package/dist/types/runtimes/react/poll-box-model.d.ts +1 -1
  377. package/dist/types/runtimes/react/poll-box-model.d.ts.map +1 -1
  378. package/dist/types/runtimes/react/react-runtime-core.d.ts +1 -1
  379. package/dist/types/runtimes/react/react-runtime-core.d.ts.map +1 -1
  380. package/dist/types/runtimes/react/runtime-core.d.ts +1 -2
  381. package/dist/types/runtimes/react/runtime-core.d.ts.map +1 -1
  382. package/dist/types/runtimes/react/utils/can-accept-ref.d.ts +1 -1
  383. package/dist/types/runtimes/react/utils/can-accept-ref.d.ts.map +1 -1
  384. package/dist/types/state/__tests__/react-page.test.d.ts +2 -0
  385. package/dist/types/state/__tests__/react-page.test.d.ts.map +1 -0
  386. package/dist/types/state/actions/index.d.ts +5 -8
  387. package/dist/types/state/actions/index.d.ts.map +1 -1
  388. package/dist/types/state/actions/{internal/read-only-actions.d.ts → internal.d.ts} +67 -45
  389. package/dist/types/state/actions/internal.d.ts.map +1 -0
  390. package/dist/types/state/builder-api/actions.d.ts +14 -14
  391. package/dist/types/state/builder-api/actions.d.ts.map +1 -1
  392. package/dist/types/state/host-api.d.ts +1 -1
  393. package/dist/types/state/host-api.d.ts.map +1 -1
  394. package/dist/types/state/makeswift-api-client.d.ts +2 -11
  395. package/dist/types/state/makeswift-api-client.d.ts.map +1 -1
  396. package/dist/types/state/modules/api-resources.d.ts.map +1 -1
  397. package/dist/types/state/modules/{read-write/box-models.d.ts → box-models.d.ts} +1 -1
  398. package/dist/types/state/modules/box-models.d.ts.map +1 -0
  399. package/dist/types/state/modules/breakpoints.d.ts.map +1 -1
  400. package/dist/types/state/modules/builder-edit-mode.d.ts.map +1 -1
  401. package/dist/types/state/modules/components-meta.d.ts.map +1 -1
  402. package/dist/types/state/modules/element-imperative-handles.d.ts +7 -0
  403. package/dist/types/state/modules/element-imperative-handles.d.ts.map +1 -0
  404. package/dist/types/state/modules/element-trees.d.ts.map +1 -1
  405. package/dist/types/state/modules/is-in-builder.d.ts.map +1 -1
  406. package/dist/types/state/modules/{is-read-only.d.ts → is-preview.d.ts} +3 -3
  407. package/dist/types/state/modules/is-preview.d.ts.map +1 -0
  408. package/dist/types/state/modules/localized-resources-map.d.ts.map +1 -1
  409. package/dist/types/state/modules/{read-write/pointer.d.ts → pointer.d.ts} +3 -2
  410. package/dist/types/state/modules/pointer.d.ts.map +1 -0
  411. package/dist/types/state/modules/prop-controllers.d.ts.map +1 -1
  412. package/dist/types/state/modules/react-components.d.ts.map +1 -1
  413. package/dist/types/state/modules/read-only-documents.d.ts.map +1 -1
  414. package/dist/types/state/modules/{read-write/read-write-documents.d.ts → read-write-documents.d.ts} +4 -4
  415. package/dist/types/state/modules/read-write-documents.d.ts.map +1 -0
  416. package/dist/types/state/react-builder-preview.d.ts +93 -26
  417. package/dist/types/state/react-builder-preview.d.ts.map +1 -1
  418. package/dist/types/state/react-page.d.ts +136 -20
  419. package/dist/types/state/react-page.d.ts.map +1 -1
  420. package/dist/types/state/shared-api.d.ts.map +1 -1
  421. package/dist/types/state/translations/get.d.ts +1 -1
  422. package/dist/types/state/translations/get.d.ts.map +1 -1
  423. package/dist/types/state/translations/merge.d.ts +1 -1
  424. package/dist/types/state/translations/merge.d.ts.map +1 -1
  425. package/dist/types/unstable-framework-support/index.d.ts +1 -1
  426. package/dist/types/unstable-framework-support/index.d.ts.map +1 -1
  427. package/package.json +3 -3
  428. package/dist/cjs/api/client.js.map +0 -1
  429. package/dist/cjs/next/testing/react-runtime.js +0 -29
  430. package/dist/cjs/next/testing/react-runtime.js.map +0 -1
  431. package/dist/cjs/runtimes/react/hooks/use-is-read-only.js.map +0 -1
  432. package/dist/cjs/runtimes/react/testing/react-runtime.js +0 -32
  433. package/dist/cjs/runtimes/react/testing/react-runtime.js.map +0 -1
  434. package/dist/cjs/state/actions/internal/index.js +0 -34
  435. package/dist/cjs/state/actions/internal/index.js.map +0 -1
  436. package/dist/cjs/state/actions/internal/read-only-actions.js.map +0 -1
  437. package/dist/cjs/state/actions/internal/read-write-actions.js +0 -70
  438. package/dist/cjs/state/actions/internal/read-write-actions.js.map +0 -1
  439. package/dist/cjs/state/middleware/prop-controller-handles.js +0 -114
  440. package/dist/cjs/state/middleware/prop-controller-handles.js.map +0 -1
  441. package/dist/cjs/state/middleware/read-only-element-tree.js +0 -52
  442. package/dist/cjs/state/middleware/read-only-element-tree.js.map +0 -1
  443. package/dist/cjs/state/middleware/read-write/builder-api/element-size.js +0 -40
  444. package/dist/cjs/state/middleware/read-write/builder-api/element-size.js.map +0 -1
  445. package/dist/cjs/state/middleware/read-write/builder-api/index.js +0 -76
  446. package/dist/cjs/state/middleware/read-write/builder-api/index.js.map +0 -1
  447. package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js +0 -278
  448. package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js.map +0 -1
  449. package/dist/cjs/state/middleware/read-write/makeswift-api-client-sync.js +0 -37
  450. package/dist/cjs/state/middleware/read-write/makeswift-api-client-sync.js.map +0 -1
  451. package/dist/cjs/state/middleware/read-write/measure-box-models.js +0 -71
  452. package/dist/cjs/state/middleware/read-write/measure-box-models.js.map +0 -1
  453. package/dist/cjs/state/middleware/read-write/update-element-tree.js +0 -59
  454. package/dist/cjs/state/middleware/read-write/update-element-tree.js.map +0 -1
  455. package/dist/cjs/state/modules/is-read-only.js.map +0 -1
  456. package/dist/cjs/state/modules/locale.js +0 -53
  457. package/dist/cjs/state/modules/locale.js.map +0 -1
  458. package/dist/cjs/state/modules/read-write/box-models.js.map +0 -1
  459. package/dist/cjs/state/modules/read-write/element-imperative-handles.js.map +0 -1
  460. package/dist/cjs/state/modules/read-write/pointer.js.map +0 -1
  461. package/dist/cjs/state/modules/read-write/read-write-documents.js.map +0 -1
  462. package/dist/cjs/state/modules/site-version.js +0 -50
  463. package/dist/cjs/state/modules/site-version.js.map +0 -1
  464. package/dist/cjs/state/ops/copy-element-tree.js +0 -67
  465. package/dist/cjs/state/ops/copy-element-tree.js.map +0 -1
  466. package/dist/cjs/state/ops/merge-element.js +0 -73
  467. package/dist/cjs/state/ops/merge-element.js.map +0 -1
  468. package/dist/cjs/state/read-only-state.js +0 -209
  469. package/dist/cjs/state/read-only-state.js.map +0 -1
  470. package/dist/cjs/state/read-write-state.js +0 -121
  471. package/dist/cjs/state/read-write-state.js.map +0 -1
  472. package/dist/esm/api/client.js.map +0 -1
  473. package/dist/esm/next/testing/react-runtime.js +0 -5
  474. package/dist/esm/next/testing/react-runtime.js.map +0 -1
  475. package/dist/esm/runtimes/react/hooks/use-is-read-only.js +0 -9
  476. package/dist/esm/runtimes/react/hooks/use-is-read-only.js.map +0 -1
  477. package/dist/esm/runtimes/react/testing/react-runtime.js +0 -8
  478. package/dist/esm/runtimes/react/testing/react-runtime.js.map +0 -1
  479. package/dist/esm/state/actions/internal/index.js +0 -10
  480. package/dist/esm/state/actions/internal/index.js.map +0 -1
  481. package/dist/esm/state/actions/internal/read-only-actions.js.map +0 -1
  482. package/dist/esm/state/actions/internal/read-write-actions.js +0 -41
  483. package/dist/esm/state/actions/internal/read-write-actions.js.map +0 -1
  484. package/dist/esm/state/middleware/prop-controller-handles.js +0 -80
  485. package/dist/esm/state/middleware/prop-controller-handles.js.map +0 -1
  486. package/dist/esm/state/middleware/read-only-element-tree.js +0 -28
  487. package/dist/esm/state/middleware/read-only-element-tree.js.map +0 -1
  488. package/dist/esm/state/middleware/read-write/builder-api/element-size.js +0 -16
  489. package/dist/esm/state/middleware/read-write/builder-api/element-size.js.map +0 -1
  490. package/dist/esm/state/middleware/read-write/builder-api/index.js +0 -52
  491. package/dist/esm/state/middleware/read-write/builder-api/index.js.map +0 -1
  492. package/dist/esm/state/middleware/read-write/builder-api/initialize-connection.js +0 -251
  493. package/dist/esm/state/middleware/read-write/builder-api/initialize-connection.js.map +0 -1
  494. package/dist/esm/state/middleware/read-write/makeswift-api-client-sync.js +0 -13
  495. package/dist/esm/state/middleware/read-write/makeswift-api-client-sync.js.map +0 -1
  496. package/dist/esm/state/middleware/read-write/measure-box-models.js +0 -37
  497. package/dist/esm/state/middleware/read-write/measure-box-models.js.map +0 -1
  498. package/dist/esm/state/middleware/read-write/update-element-tree.js +0 -35
  499. package/dist/esm/state/middleware/read-write/update-element-tree.js.map +0 -1
  500. package/dist/esm/state/modules/is-read-only.js +0 -24
  501. package/dist/esm/state/modules/is-read-only.js.map +0 -1
  502. package/dist/esm/state/modules/locale.js +0 -27
  503. package/dist/esm/state/modules/locale.js.map +0 -1
  504. package/dist/esm/state/modules/read-write/box-models.js.map +0 -1
  505. package/dist/esm/state/modules/read-write/element-imperative-handles.js.map +0 -1
  506. package/dist/esm/state/modules/read-write/pointer.js.map +0 -1
  507. package/dist/esm/state/modules/read-write/read-write-documents.js.map +0 -1
  508. package/dist/esm/state/modules/site-version.js +0 -24
  509. package/dist/esm/state/modules/site-version.js.map +0 -1
  510. package/dist/esm/state/ops/copy-element-tree.js +0 -37
  511. package/dist/esm/state/ops/copy-element-tree.js.map +0 -1
  512. package/dist/esm/state/ops/merge-element.js +0 -39
  513. package/dist/esm/state/ops/merge-element.js.map +0 -1
  514. package/dist/esm/state/read-only-state.js +0 -157
  515. package/dist/esm/state/read-only-state.js.map +0 -1
  516. package/dist/esm/state/read-write-state.js +0 -76
  517. package/dist/esm/state/read-write-state.js.map +0 -1
  518. package/dist/types/api/client.d.ts.map +0 -1
  519. package/dist/types/next/testing/react-runtime.d.ts +0 -2
  520. package/dist/types/next/testing/react-runtime.d.ts.map +0 -1
  521. package/dist/types/runtimes/react/hooks/use-is-read-only.d.ts +0 -2
  522. package/dist/types/runtimes/react/hooks/use-is-read-only.d.ts.map +0 -1
  523. package/dist/types/runtimes/react/testing/react-runtime.d.ts +0 -3
  524. package/dist/types/runtimes/react/testing/react-runtime.d.ts.map +0 -1
  525. package/dist/types/state/__tests__/merge-element.test.d.ts +0 -2
  526. package/dist/types/state/__tests__/merge-element.test.d.ts.map +0 -1
  527. package/dist/types/state/actions/internal/index.d.ts +0 -27
  528. package/dist/types/state/actions/internal/index.d.ts.map +0 -1
  529. package/dist/types/state/actions/internal/read-only-actions.d.ts.map +0 -1
  530. package/dist/types/state/actions/internal/read-write-actions.d.ts +0 -48
  531. package/dist/types/state/actions/internal/read-write-actions.d.ts.map +0 -1
  532. package/dist/types/state/middleware/prop-controller-handles.d.ts +0 -4
  533. package/dist/types/state/middleware/prop-controller-handles.d.ts.map +0 -1
  534. package/dist/types/state/middleware/read-only-element-tree.d.ts +0 -4
  535. package/dist/types/state/middleware/read-only-element-tree.d.ts.map +0 -1
  536. package/dist/types/state/middleware/read-write/builder-api/element-size.d.ts +0 -12
  537. package/dist/types/state/middleware/read-write/builder-api/element-size.d.ts.map +0 -1
  538. package/dist/types/state/middleware/read-write/builder-api/index.d.ts +0 -5
  539. package/dist/types/state/middleware/read-write/builder-api/index.d.ts.map +0 -1
  540. package/dist/types/state/middleware/read-write/builder-api/initialize-connection.d.ts +0 -6
  541. package/dist/types/state/middleware/read-write/builder-api/initialize-connection.d.ts.map +0 -1
  542. package/dist/types/state/middleware/read-write/makeswift-api-client-sync.d.ts +0 -5
  543. package/dist/types/state/middleware/read-write/makeswift-api-client-sync.d.ts.map +0 -1
  544. package/dist/types/state/middleware/read-write/measure-box-models.d.ts +0 -4
  545. package/dist/types/state/middleware/read-write/measure-box-models.d.ts.map +0 -1
  546. package/dist/types/state/middleware/read-write/update-element-tree.d.ts +0 -4
  547. package/dist/types/state/middleware/read-write/update-element-tree.d.ts.map +0 -1
  548. package/dist/types/state/modules/is-read-only.d.ts.map +0 -1
  549. package/dist/types/state/modules/locale.d.ts +0 -6
  550. package/dist/types/state/modules/locale.d.ts.map +0 -1
  551. package/dist/types/state/modules/read-write/box-models.d.ts.map +0 -1
  552. package/dist/types/state/modules/read-write/element-imperative-handles.d.ts +0 -6
  553. package/dist/types/state/modules/read-write/element-imperative-handles.d.ts.map +0 -1
  554. package/dist/types/state/modules/read-write/pointer.d.ts.map +0 -1
  555. package/dist/types/state/modules/read-write/read-write-documents.d.ts.map +0 -1
  556. package/dist/types/state/modules/site-version.d.ts +0 -7
  557. package/dist/types/state/modules/site-version.d.ts.map +0 -1
  558. package/dist/types/state/ops/copy-element-tree.d.ts +0 -37
  559. package/dist/types/state/ops/copy-element-tree.d.ts.map +0 -1
  560. package/dist/types/state/ops/merge-element.d.ts +0 -4
  561. package/dist/types/state/ops/merge-element.d.ts.map +0 -1
  562. package/dist/types/state/read-only-state.d.ts +0 -122
  563. package/dist/types/state/read-only-state.d.ts.map +0 -1
  564. package/dist/types/state/read-write-state.d.ts +0 -56
  565. package/dist/types/state/read-write-state.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/state/modules/read-only-documents.ts"],"sourcesContent":["import { type Element } from '@makeswift/controls'\n\nimport { type Action, type UnknownAction, type DocumentPayload, isKnownAction } from '../actions'\n\nimport { SharedActionTypes } from '../shared-api'\n\nexport {\n type Data,\n type ElementData,\n type ElementReference,\n type Element,\n isElementReference,\n} from '@makeswift/controls'\n\nexport type DocumentReference = {\n key: string\n}\n\nexport function createDocumentReference(key: string): DocumentReference {\n return { key }\n}\n\ntype BaseDocument = {\n key: string\n rootElement: Element\n locale: string | null\n}\n\nexport const EMBEDDED_DOCUMENT_TYPE = 'EMBEDDED_DOCUMENT' as const\n\nexport type EmbeddedDocument = {\n key: string\n locale: string | null\n id: string\n type: string\n name: string\n rootElement: Element\n meta: { allowLocaleFallback: boolean; requestedLocale: string | null; description?: string }\n __type: typeof EMBEDDED_DOCUMENT_TYPE\n}\n\nexport type Document = BaseDocument | EmbeddedDocument\n\nexport function getRootElement(document: Document | DocumentPayload): Element {\n return document.rootElement\n}\n\nexport function createBaseDocument(\n key: string,\n rootElement: Element,\n locale: string | null,\n): Document {\n return { key, rootElement, locale }\n}\n\nexport type State = Map<string, Document>\n\nexport function getInitialState({ documents = [] }: { documents?: Document[] } = {}): State {\n return new Map(documents.map(document => [document.key, document]))\n}\n\nexport function getDocuments(state: State): State {\n return state\n}\n\nexport function getDocument(state: State, documentKey: string): Document | null {\n return getDocuments(state).get(documentKey) ?? null\n}\n\nexport function reducer(state: State = getInitialState(), action: Action | UnknownAction): State {\n if (!isKnownAction(action)) return state\n\n switch (action.type) {\n case SharedActionTypes.REGISTER_DOCUMENT:\n const { documentKey, document } = action.payload\n return new Map(state).set(documentKey, { ...document, locale: document.locale ?? null })\n\n case SharedActionTypes.UNREGISTER_DOCUMENT: {\n const nextState = new Map(state)\n\n const deleted = nextState.delete(action.payload.documentKey)\n\n return deleted ? nextState : state\n }\n\n default:\n return state\n }\n}\n"],"mappings":"AAEA,SAAgE,qBAAqB;AAErF,SAAS,yBAAyB;AAElC;AAAA,EAKE;AAAA,OACK;AAMA,SAAS,wBAAwB,KAAgC;AACtE,SAAO,EAAE,IAAI;AACf;AAQO,MAAM,yBAAyB;AAe/B,SAAS,eAAe,UAA+C;AAC5E,SAAO,SAAS;AAClB;AAEO,SAAS,mBACd,KACA,aACA,QACU;AACV,SAAO,EAAE,KAAK,aAAa,OAAO;AACpC;AAIO,SAAS,gBAAgB,EAAE,YAAY,CAAC,EAAE,IAAgC,CAAC,GAAU;AAC1F,SAAO,IAAI,IAAI,UAAU,IAAI,cAAY,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC;AACpE;AAEO,SAAS,aAAa,OAAqB;AAChD,SAAO;AACT;AAEO,SAAS,YAAY,OAAc,aAAsC;AAC9E,SAAO,aAAa,KAAK,EAAE,IAAI,WAAW,KAAK;AACjD;AAEO,SAAS,QAAQ,QAAe,gBAAgB,GAAG,QAAuC;AAC/F,MAAI,CAAC,cAAc,MAAM;AAAG,WAAO;AAEnC,UAAQ,OAAO,MAAM;AAAA,IACnB,KAAK,kBAAkB;AACrB,YAAM,EAAE,aAAa,SAAS,IAAI,OAAO;AACzC,aAAO,IAAI,IAAI,KAAK,EAAE,IAAI,aAAa,EAAE,GAAG,UAAU,QAAQ,SAAS,UAAU,KAAK,CAAC;AAAA,IAEzF,KAAK,kBAAkB,qBAAqB;AAC1C,YAAM,YAAY,IAAI,IAAI,KAAK;AAE/B,YAAM,UAAU,UAAU,OAAO,OAAO,QAAQ,WAAW;AAE3D,aAAO,UAAU,YAAY;AAAA,IAC/B;AAAA,IAEA;AACE,aAAO;AAAA,EACX;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../src/state/modules/read-only-documents.ts"],"sourcesContent":["import { type Element } from '@makeswift/controls'\n\nimport {\n type Action,\n type UnknownAction,\n type DocumentPayload,\n ActionTypes,\n isKnownAction,\n} from '../actions'\n\nexport {\n type Data,\n type ElementData,\n type ElementReference,\n type Element,\n isElementReference,\n} from '@makeswift/controls'\n\nexport type DocumentReference = {\n key: string\n}\n\nexport function createDocumentReference(key: string): DocumentReference {\n return { key }\n}\n\ntype BaseDocument = {\n key: string\n rootElement: Element\n locale: string | null\n}\n\nexport const EMBEDDED_DOCUMENT_TYPE = 'EMBEDDED_DOCUMENT' as const\n\nexport type EmbeddedDocument = {\n key: string\n locale: string | null\n id: string\n type: string\n name: string\n rootElement: Element\n meta: { allowLocaleFallback: boolean; requestedLocale: string | null; description?: string }\n __type: typeof EMBEDDED_DOCUMENT_TYPE\n}\n\nexport type Document = BaseDocument | EmbeddedDocument\n\nexport function getRootElement(document: Document | DocumentPayload): Element {\n return document.rootElement\n}\n\nexport function createBaseDocument(\n key: string,\n rootElement: Element,\n locale: string | null,\n): Document {\n return { key, rootElement, locale }\n}\n\nexport type State = Map<string, Document>\n\nexport function getInitialState({ documents = [] }: { documents?: Document[] } = {}): State {\n return new Map(documents.map(document => [document.key, document]))\n}\n\nexport function getDocuments(state: State): State {\n return state\n}\n\nexport function getDocument(state: State, documentKey: string): Document | null {\n return getDocuments(state).get(documentKey) ?? null\n}\n\nexport function reducer(state: State = getInitialState(), action: Action | UnknownAction): State {\n if (!isKnownAction(action)) return state\n\n switch (action.type) {\n case ActionTypes.REGISTER_DOCUMENT:\n const { documentKey, document } = action.payload\n return new Map(state).set(documentKey, { ...document, locale: document.locale ?? null })\n\n case ActionTypes.UNREGISTER_DOCUMENT: {\n const nextState = new Map(state)\n\n const deleted = nextState.delete(action.payload.documentKey)\n\n return deleted ? nextState : state\n }\n\n default:\n return state\n }\n}\n"],"mappings":"AAEA;AAAA,EAIE;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EAKE;AAAA,OACK;AAMA,SAAS,wBAAwB,KAAgC;AACtE,SAAO,EAAE,IAAI;AACf;AAQO,MAAM,yBAAyB;AAe/B,SAAS,eAAe,UAA+C;AAC5E,SAAO,SAAS;AAClB;AAEO,SAAS,mBACd,KACA,aACA,QACU;AACV,SAAO,EAAE,KAAK,aAAa,OAAO;AACpC;AAIO,SAAS,gBAAgB,EAAE,YAAY,CAAC,EAAE,IAAgC,CAAC,GAAU;AAC1F,SAAO,IAAI,IAAI,UAAU,IAAI,cAAY,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC;AACpE;AAEO,SAAS,aAAa,OAAqB;AAChD,SAAO;AACT;AAEO,SAAS,YAAY,OAAc,aAAsC;AAC9E,SAAO,aAAa,KAAK,EAAE,IAAI,WAAW,KAAK;AACjD;AAEO,SAAS,QAAQ,QAAe,gBAAgB,GAAG,QAAuC;AAC/F,MAAI,CAAC,cAAc,MAAM;AAAG,WAAO;AAEnC,UAAQ,OAAO,MAAM;AAAA,IACnB,KAAK,YAAY;AACf,YAAM,EAAE,aAAa,SAAS,IAAI,OAAO;AACzC,aAAO,IAAI,IAAI,KAAK,EAAE,IAAI,aAAa,EAAE,GAAG,UAAU,QAAQ,SAAS,UAAU,KAAK,CAAC;AAAA,IAEzF,KAAK,YAAY,qBAAqB;AACpC,YAAM,YAAY,IAAI,IAAI,KAAK;AAE/B,YAAM,UAAU,UAAU,OAAO,OAAO,QAAQ,WAAW;AAE3D,aAAO,UAAU,YAAY;AAAA,IAC/B;AAAA,IAEA;AACE,aAAO;AAAA,EACX;AACF;","names":[]}
@@ -1,7 +1,7 @@
1
1
  import { removeIn, setIn } from "immutable";
2
- import * as ReadOnlyDocuments from "../read-only-documents";
3
- import { ActionTypes, isKnownAction } from "../../actions";
4
- import { isElementReference } from "../read-only-documents";
2
+ import * as ReadOnlyDocuments from "./read-only-documents";
3
+ import { ActionTypes, isKnownAction } from "../actions";
4
+ import { isElementReference } from "./read-only-documents";
5
5
  function apply(data, operation) {
6
6
  let applied = data;
7
7
  operation.forEach((component) => {
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/state/modules/read-write-documents.ts"],"sourcesContent":["import { type Operation } from 'ot-json0'\nimport { removeIn, setIn } from 'immutable'\n\nimport * as ReadOnlyDocuments from './read-only-documents'\nimport { type Action, type UnknownAction, ActionTypes, isKnownAction } from '../actions'\n\nexport type { Document, Element, ElementData, ElementReference } from './read-only-documents'\nexport { isElementReference } from './read-only-documents'\nexport type { Operation }\n\nfunction apply(data: ReadOnlyDocuments.Element, operation: Operation): ReadOnlyDocuments.Element {\n let applied = data\n\n operation.forEach(component => {\n // @ts-expect-error: `ld` isn't in all possible values of `component`\n if (component.ld != null) applied = removeIn(applied, component.p)\n\n // @ts-expect-error: `od` isn't in all possible values of `component`\n if (component.od != null) applied = removeIn(applied, component.p)\n\n // @ts-expect-error: `li` isn't in all possible values of `component`\n if (component.li != null) applied = setIn(applied, component.p, component.li)\n\n // @ts-expect-error: `oi` isn't in all possible values of `component`\n if (component.oi != null) applied = setIn(applied, component.p, component.oi)\n })\n\n return applied\n}\n\nexport type State = ReadOnlyDocuments.State\n\nexport function getInitialState({\n documents = [],\n}: { documents?: ReadOnlyDocuments.Document[] } = {}): State {\n return ReadOnlyDocuments.getInitialState({ documents })\n}\n\nfunction getReadOnlyDocumentsStateSlice(state: State): ReadOnlyDocuments.State {\n return state\n}\n\nexport function getDocument(state: State, documentKey: string): ReadOnlyDocuments.Document | null {\n return ReadOnlyDocuments.getDocument(getReadOnlyDocumentsStateSlice(state), documentKey)\n}\n\nexport function getDocuments(state: State): ReadOnlyDocuments.State {\n return ReadOnlyDocuments.getDocuments(getReadOnlyDocumentsStateSlice(state))\n}\n\nexport function reducer(state: State = getInitialState(), action: Action | UnknownAction): State {\n const nextState = ReadOnlyDocuments.reducer(state, action)\n\n if (!isKnownAction(action)) return state\n\n switch (action.type) {\n case ActionTypes.CHANGE_DOCUMENT: {\n const document = getDocument(nextState, action.payload.documentKey)\n if (document == null) return nextState\n\n const currentRootElement = ReadOnlyDocuments.getRootElement(document)\n\n const nextRootElement = apply(currentRootElement, action.payload.operation)\n\n return currentRootElement === nextRootElement\n ? nextState\n : new Map(nextState).set(action.payload.documentKey, {\n ...document,\n rootElement: nextRootElement,\n })\n }\n\n default:\n return nextState\n }\n}\n"],"mappings":"AACA,SAAS,UAAU,aAAa;AAEhC,YAAY,uBAAuB;AACnC,SAA0C,aAAa,qBAAqB;AAG5E,SAAS,0BAA0B;AAGnC,SAAS,MAAM,MAAiC,WAAiD;AAC/F,MAAI,UAAU;AAEd,YAAU,QAAQ,eAAa;AAE7B,QAAI,UAAU,MAAM;AAAM,gBAAU,SAAS,SAAS,UAAU,CAAC;AAGjE,QAAI,UAAU,MAAM;AAAM,gBAAU,SAAS,SAAS,UAAU,CAAC;AAGjE,QAAI,UAAU,MAAM;AAAM,gBAAU,MAAM,SAAS,UAAU,GAAG,UAAU,EAAE;AAG5E,QAAI,UAAU,MAAM;AAAM,gBAAU,MAAM,SAAS,UAAU,GAAG,UAAU,EAAE;AAAA,EAC9E,CAAC;AAED,SAAO;AACT;AAIO,SAAS,gBAAgB;AAAA,EAC9B,YAAY,CAAC;AACf,IAAkD,CAAC,GAAU;AAC3D,SAAO,kBAAkB,gBAAgB,EAAE,UAAU,CAAC;AACxD;AAEA,SAAS,+BAA+B,OAAuC;AAC7E,SAAO;AACT;AAEO,SAAS,YAAY,OAAc,aAAwD;AAChG,SAAO,kBAAkB,YAAY,+BAA+B,KAAK,GAAG,WAAW;AACzF;AAEO,SAAS,aAAa,OAAuC;AAClE,SAAO,kBAAkB,aAAa,+BAA+B,KAAK,CAAC;AAC7E;AAEO,SAAS,QAAQ,QAAe,gBAAgB,GAAG,QAAuC;AAC/F,QAAM,YAAY,kBAAkB,QAAQ,OAAO,MAAM;AAEzD,MAAI,CAAC,cAAc,MAAM;AAAG,WAAO;AAEnC,UAAQ,OAAO,MAAM;AAAA,IACnB,KAAK,YAAY,iBAAiB;AAChC,YAAM,WAAW,YAAY,WAAW,OAAO,QAAQ,WAAW;AAClE,UAAI,YAAY;AAAM,eAAO;AAE7B,YAAM,qBAAqB,kBAAkB,eAAe,QAAQ;AAEpE,YAAM,kBAAkB,MAAM,oBAAoB,OAAO,QAAQ,SAAS;AAE1E,aAAO,uBAAuB,kBAC1B,YACA,IAAI,IAAI,SAAS,EAAE,IAAI,OAAO,QAAQ,aAAa;AAAA,QACjD,GAAG;AAAA,QACH,aAAa;AAAA,MACf,CAAC;AAAA,IACP;AAAA,IAEA;AACE,aAAO;AAAA,EACX;AACF;","names":[]}
@@ -1,16 +1,494 @@
1
- import { configureStore as configureReduxStore } from "@reduxjs/toolkit";
1
+ import {
2
+ configureStore as configureReduxStore,
3
+ combineReducers
4
+ } from "@reduxjs/toolkit";
5
+ import deepEqual from "../utils/deepEqual";
6
+ import * as Documents from "./modules/read-write-documents";
7
+ import * as ElementTrees from "./modules/element-trees";
8
+ import * as ReactComponents from "./modules/react-components";
9
+ import * as BoxModels from "./modules/box-models";
10
+ import * as ComponentsMeta from "./modules/components-meta";
11
+ import * as PropControllers from "./modules/prop-controllers";
12
+ import * as PropControllerHandles from "./modules/prop-controller-handles";
13
+ import * as IsInBuilder from "./modules/is-in-builder";
14
+ import * as IsPreview from "./modules/is-preview";
15
+ import * as BuilderEditMode from "./modules/builder-edit-mode";
16
+ import * as Pointer from "./modules/pointer";
17
+ import * as ElementImperativeHandles from "./modules/element-imperative-handles";
18
+ import * as Breakpoints from "./modules/breakpoints";
2
19
  import { withSetupTeardown } from "./mixins/setup-teardown";
20
+ import * as ReactPage from "./react-page";
21
+ import * as Shared from "./shared-api";
3
22
  import { BuilderActionTypes } from "./builder-api/actions";
4
- import { middlewareOptions, devToolsConfig } from "./toolkit";
23
+ import * as Builder from "./builder-api/actions";
24
+ import { InternalActionTypes } from "./actions/internal";
25
+ import * as Internal from "./actions/internal";
26
+ import { actionMiddleware, middlewareOptions, devToolsConfig } from "./toolkit";
27
+ import { createPropController } from "../prop-controllers/instances";
28
+ import { serializeControls } from "../builder";
5
29
  import { HostActionTypes } from "./host-api";
6
- import { createRootReducer } from "./read-write-state";
7
- import * as IsReadOnly from "./modules/is-read-only";
8
- import { propControllerHandlesMiddleware } from "./middleware/prop-controller-handles";
9
- import { readOnlyElementTreeMiddleware } from "./middleware/read-only-element-tree";
10
- import { updateElementTreeMiddleware } from "./middleware/read-write/update-element-tree";
11
- import { measureBoxModelsMiddleware } from "./middleware/read-write/measure-box-models";
12
- import { builderAPIMiddleware } from "./middleware/read-write/builder-api";
13
- import { makeswiftApiClientSyncMiddleware } from "./middleware/read-write/makeswift-api-client-sync";
30
+ import { createBox, getBox, parse } from "./modules/box-models";
31
+ const reducer = combineReducers({
32
+ documents: Documents.reducer,
33
+ elementTrees: ElementTrees.reducer,
34
+ reactComponents: ReactComponents.reducer,
35
+ boxModels: BoxModels.reducer,
36
+ componentsMeta: ComponentsMeta.reducer,
37
+ propControllers: PropControllers.reducer,
38
+ propControllerHandles: PropControllerHandles.reducer,
39
+ isInBuilder: IsInBuilder.reducer,
40
+ isPreview: IsPreview.reducer,
41
+ builderEditMode: BuilderEditMode.reducer,
42
+ pointer: Pointer.reducer,
43
+ elementImperativeHandles: ElementImperativeHandles.reducer,
44
+ breakpoints: Breakpoints.reducer
45
+ });
46
+ function getDocumentsStateSlice(state) {
47
+ return state.documents;
48
+ }
49
+ function getBoxModelsStateSlice(state) {
50
+ return state.boxModels;
51
+ }
52
+ function getMeasurables(state) {
53
+ return BoxModels.getMeasurables(getBoxModelsStateSlice(state));
54
+ }
55
+ function getBoxModels(state) {
56
+ return BoxModels.getBoxModels(getBoxModelsStateSlice(state));
57
+ }
58
+ function getBoxModel(state, documentKey, elementKey) {
59
+ return BoxModels.getBoxModel(getBoxModelsStateSlice(state), documentKey, elementKey);
60
+ }
61
+ function getComponentsMetaStateSlice(state) {
62
+ return state.componentsMeta;
63
+ }
64
+ function getComponentsMeta(state) {
65
+ return ComponentsMeta.getComponentsMeta(getComponentsMetaStateSlice(state));
66
+ }
67
+ function getPropControllersStateSlice(state) {
68
+ return state.propControllers;
69
+ }
70
+ function getComponentPropControllerDescriptors(state, componentType) {
71
+ return PropControllers.getComponentPropControllerDescriptors(
72
+ getPropControllersStateSlice(state),
73
+ componentType
74
+ );
75
+ }
76
+ function getPropControllerHandlesStateSlice(state) {
77
+ return state.propControllerHandles;
78
+ }
79
+ function getPointer(state) {
80
+ return Pointer.getPointer(state.pointer);
81
+ }
82
+ function getElementImperativeHandles(state) {
83
+ return ElementImperativeHandles.getElementImperativeHandles(state.elementImperativeHandles);
84
+ }
85
+ function getElementImperativeHandlesContainingElement(state, element) {
86
+ const elementImperativeHandles = getElementImperativeHandles(state);
87
+ const filteredElementImperativeHandles = /* @__PURE__ */ new Map();
88
+ for (const [documentKey, byElementKey] of elementImperativeHandles) {
89
+ const filteredByElementKey = /* @__PURE__ */ new Map();
90
+ for (const [elementKey, elementImperativeHandle] of byElementKey) {
91
+ const handleElement = elementImperativeHandle.getDomNode();
92
+ if (handleElement?.contains(element)) {
93
+ filteredByElementKey.set(elementKey, elementImperativeHandle);
94
+ }
95
+ }
96
+ if (filteredByElementKey.size > 0) {
97
+ filteredElementImperativeHandles.set(documentKey, filteredByElementKey);
98
+ }
99
+ }
100
+ return filteredElementImperativeHandles;
101
+ }
102
+ function measureElements() {
103
+ return (dispatch, getState) => {
104
+ const measurables = getMeasurables(getState());
105
+ const currentBoxModels = getBoxModels(getState());
106
+ const measuredBoxModels = /* @__PURE__ */ new Map();
107
+ measurables.forEach((documentMeasurables, documentKey) => {
108
+ const measuredDocumentBoxModels = /* @__PURE__ */ new Map();
109
+ documentMeasurables.forEach((measurable, elementKey) => {
110
+ const boxModel = BoxModels.measure(measurable);
111
+ if (boxModel != null)
112
+ measuredDocumentBoxModels.set(elementKey, boxModel);
113
+ });
114
+ if (measuredDocumentBoxModels.size > 0) {
115
+ measuredBoxModels.set(documentKey, measuredDocumentBoxModels);
116
+ }
117
+ });
118
+ const changedBoxModels = /* @__PURE__ */ new Map();
119
+ currentBoxModels.forEach((currentDocumentBoxModels, documentKey) => {
120
+ const changedDocumentBoxModels = /* @__PURE__ */ new Map();
121
+ currentDocumentBoxModels.forEach((_boxModel, elementKey) => {
122
+ if (!measuredBoxModels.get(documentKey)?.has(elementKey)) {
123
+ changedDocumentBoxModels.set(elementKey, null);
124
+ }
125
+ if (changedDocumentBoxModels.size > 0) {
126
+ changedBoxModels.set(documentKey, changedDocumentBoxModels);
127
+ }
128
+ });
129
+ });
130
+ measuredBoxModels.forEach((measuredDocumentBoxModels, documentKey) => {
131
+ const changedDocumentBoxModels = /* @__PURE__ */ new Map();
132
+ measuredDocumentBoxModels.forEach((measuredBoxModel, elementKey) => {
133
+ const currentBoxModel = getBoxModel(getState(), documentKey, elementKey);
134
+ if (currentBoxModel == null || !deepEqual(currentBoxModel, measuredBoxModel)) {
135
+ changedDocumentBoxModels.set(elementKey, measuredBoxModel);
136
+ }
137
+ });
138
+ if (changedDocumentBoxModels.size > 0) {
139
+ changedBoxModels.set(documentKey, changedDocumentBoxModels);
140
+ }
141
+ });
142
+ if (changedBoxModels.size > 0)
143
+ dispatch(Builder.changeElementBoxModels(changedBoxModels));
144
+ };
145
+ }
146
+ function startMeasuringElements() {
147
+ return (dispatch) => {
148
+ let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
149
+ return () => {
150
+ cancelAnimationFrame(animationFrameHandle);
151
+ };
152
+ function handleAnimationFrameRequest() {
153
+ dispatch(measureElements());
154
+ animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
155
+ }
156
+ };
157
+ }
158
+ function getElementSize(element) {
159
+ return {
160
+ offsetWidth: element.offsetWidth,
161
+ offsetHeight: element.offsetHeight,
162
+ clientWidth: element.clientWidth,
163
+ clientHeight: element.clientHeight,
164
+ scrollWidth: element.scrollWidth,
165
+ scrollHeight: element.scrollHeight,
166
+ scrollTop: element.scrollTop,
167
+ scrollLeft: element.scrollLeft
168
+ };
169
+ }
170
+ function lockDocumentScroll() {
171
+ return (dispatch) => {
172
+ const lastDocumentOverflow = window.document.documentElement.style.overflow;
173
+ window.document.documentElement.style.overflow = "hidden";
174
+ window.document.documentElement.addEventListener("wheel", handleWheelEvent);
175
+ return () => {
176
+ window.document.documentElement.style.overflow = lastDocumentOverflow;
177
+ window.document.documentElement.removeEventListener("wheel", handleWheelEvent);
178
+ };
179
+ function handleWheelEvent({ deltaX, deltaY }) {
180
+ dispatch(Builder.handleWheel({ deltaX, deltaY }));
181
+ }
182
+ };
183
+ }
184
+ function startHandlingPointerMoveEvent() {
185
+ return (dispatch) => {
186
+ window.document.documentElement.addEventListener("pointermove", handlePointerMoveEvent);
187
+ return () => {
188
+ window.document.documentElement.removeEventListener("pointermove", handlePointerMoveEvent);
189
+ };
190
+ function handlePointerMoveEvent({ clientX, clientY }) {
191
+ dispatch(Builder.handlePointerMove({ clientX, clientY }));
192
+ }
193
+ };
194
+ }
195
+ function startHandlingFocusEvents() {
196
+ return (_dispatch, getState) => {
197
+ window.addEventListener("focusin", handleFocusIn);
198
+ window.addEventListener("focusout", handleFocusOut);
199
+ return () => {
200
+ window.removeEventListener("focusin", handleFocusIn);
201
+ window.removeEventListener("focusout", handleFocusOut);
202
+ };
203
+ function handleFocusIn(event) {
204
+ if (ReactPage.getBuilderEditMode(getState()) === BuilderEditMode.BuilderEditMode.INTERACT) {
205
+ return;
206
+ }
207
+ if (!(event.target instanceof window.HTMLElement) || !event.target.isContentEditable) {
208
+ window.parent.focus();
209
+ }
210
+ }
211
+ function handleFocusOut(event) {
212
+ if (ReactPage.getBuilderEditMode(getState()) === BuilderEditMode.BuilderEditMode.INTERACT) {
213
+ return;
214
+ }
215
+ if (!(event.relatedTarget instanceof window.HTMLElement) || !event.relatedTarget.isContentEditable) {
216
+ window.parent.focus();
217
+ }
218
+ }
219
+ };
220
+ }
221
+ function startMeasuringDocumentElement() {
222
+ return (dispatch) => {
223
+ let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
224
+ let lastSize;
225
+ return () => {
226
+ cancelAnimationFrame(animationFrameHandle);
227
+ };
228
+ function handleAnimationFrameRequest() {
229
+ const nextSize = getElementSize(window.document.documentElement);
230
+ if (!deepEqual(lastSize, nextSize)) {
231
+ lastSize = nextSize;
232
+ dispatch(Builder.changeDocumentElementSize(nextSize));
233
+ }
234
+ animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
235
+ }
236
+ };
237
+ }
238
+ function elementKeysFromElementFromPoint(elementFromPoint) {
239
+ return (_dispatch, getState) => {
240
+ if (elementFromPoint == null)
241
+ return null;
242
+ const elementImperativeHandles = getElementImperativeHandlesContainingElement(
243
+ getState(),
244
+ elementFromPoint
245
+ );
246
+ const ascendingDepthDocumentKeys = ReactPage.getDocumentKeysSortedByDepth(getState());
247
+ const descendingDepthDocumentKeys = ascendingDepthDocumentKeys.slice().reverse();
248
+ let currentElement = elementFromPoint;
249
+ let keys = null;
250
+ while (currentElement != null) {
251
+ for (const documentKey of descendingDepthDocumentKeys) {
252
+ const byElementKey = elementImperativeHandles.get(documentKey);
253
+ if (byElementKey == null)
254
+ continue;
255
+ for (const [elementKey, elementImperativeHandle] of byElementKey) {
256
+ if (elementImperativeHandle.getDomNode() === currentElement) {
257
+ return { documentKey, elementKey };
258
+ }
259
+ }
260
+ }
261
+ currentElement = currentElement.parentElement;
262
+ }
263
+ return keys;
264
+ };
265
+ }
266
+ function startPollingElementFromPoint() {
267
+ return (dispatch, getState) => {
268
+ let lastElementFromPoint = null;
269
+ let animationFrameRequestId = requestAnimationFrame(handleAnimationFrameRequest);
270
+ return () => {
271
+ cancelAnimationFrame(animationFrameRequestId);
272
+ };
273
+ function handleAnimationFrameRequest() {
274
+ const pointer = getPointer(getState());
275
+ const elementFromPoint = pointer == null ? null : document.elementFromPoint(pointer.x, pointer.y);
276
+ if (elementFromPoint !== lastElementFromPoint) {
277
+ lastElementFromPoint = elementFromPoint;
278
+ const keys = dispatch(elementKeysFromElementFromPoint(elementFromPoint));
279
+ dispatch(Builder.elementFromPointChange(keys));
280
+ }
281
+ animationFrameRequestId = requestAnimationFrame(handleAnimationFrameRequest);
282
+ }
283
+ };
284
+ }
285
+ function registerBuilderComponents() {
286
+ return (dispatch, getState) => {
287
+ const state = getState();
288
+ const componentsMeta = getComponentsMeta(state);
289
+ componentsMeta.forEach((meta, type) => {
290
+ const descriptors = getComponentPropControllerDescriptors(state, type);
291
+ if (descriptors != null) {
292
+ const [serializedControls, transferables] = serializeControls(descriptors);
293
+ dispatch(
294
+ Builder.registerBuilderComponent({ type, meta, serializedControls }, transferables)
295
+ );
296
+ }
297
+ });
298
+ return () => {
299
+ componentsMeta.forEach((_, type) => {
300
+ dispatch(Builder.unregisterBuilderComponent({ type }));
301
+ });
302
+ };
303
+ };
304
+ }
305
+ function registerBuilderDocuments() {
306
+ return (dispatch, getState) => {
307
+ const documents = Documents.getDocuments(getDocumentsStateSlice(getState()));
308
+ documents.forEach((document2) => {
309
+ dispatch(Builder.registerBuilderDocument(document2));
310
+ });
311
+ return () => {
312
+ documents.forEach((_document, documentKey) => {
313
+ dispatch(Builder.unregisterBuilderDocument(documentKey));
314
+ });
315
+ };
316
+ };
317
+ }
318
+ function initialize(builderProxy) {
319
+ return (dispatch, getState) => {
320
+ const unregisterBuilderDocuments = dispatch(registerBuilderDocuments());
321
+ const stopMeasuringElements = dispatch(startMeasuringElements());
322
+ const stopMeasuringDocumentElement = dispatch(startMeasuringDocumentElement());
323
+ const stopHandlingFocusEvent = dispatch(startHandlingFocusEvents());
324
+ const unlockDocumentScroll = dispatch(lockDocumentScroll());
325
+ const stopHandlingPointerMoveEvent = dispatch(startHandlingPointerMoveEvent());
326
+ const stopPollingElementFromPoint = dispatch(startPollingElementFromPoint());
327
+ const unregisterBuilderComponents = dispatch(registerBuilderComponents());
328
+ const breakpoints = ReactPage.getBreakpoints(getState());
329
+ dispatch(Shared.setBreakpoints(breakpoints));
330
+ dispatch(Internal.setIsInBuilder(true));
331
+ builderProxy.dispatchBuffered();
332
+ return () => {
333
+ unregisterBuilderDocuments();
334
+ stopMeasuringElements();
335
+ stopMeasuringDocumentElement();
336
+ stopHandlingFocusEvent();
337
+ unlockDocumentScroll();
338
+ stopHandlingPointerMoveEvent();
339
+ stopPollingElementFromPoint();
340
+ unregisterBuilderComponents();
341
+ dispatch(Internal.setIsInBuilder(false));
342
+ };
343
+ };
344
+ }
345
+ function measureBoxModelsMiddleware() {
346
+ return actionMiddleware(({ dispatch }) => (next) => {
347
+ return (action) => {
348
+ switch (action.type) {
349
+ case InternalActionTypes.REGISTER_COMPONENT_HANDLE: {
350
+ if (BoxModels.isMeasurable(action.payload.componentHandle)) {
351
+ dispatch(
352
+ Internal.registerMeasurable(
353
+ action.payload.documentKey,
354
+ action.payload.elementKey,
355
+ action.payload.componentHandle
356
+ )
357
+ );
358
+ }
359
+ break;
360
+ }
361
+ case InternalActionTypes.UNREGISTER_COMPONENT_HANDLE:
362
+ dispatch(
363
+ Internal.unregisterMeasurable(action.payload.documentKey, action.payload.elementKey)
364
+ );
365
+ break;
366
+ }
367
+ return next(action);
368
+ };
369
+ });
370
+ }
371
+ function builderAPIMiddleware(builderProxy) {
372
+ return actionMiddleware(({ dispatch }) => (next) => {
373
+ if (typeof window === "undefined")
374
+ return (action) => next(action);
375
+ let cleanUp = () => {
376
+ };
377
+ return (action) => {
378
+ switch (action.type) {
379
+ case BuilderActionTypes.CHANGE_ELEMENT_BOX_MODELS:
380
+ case BuilderActionTypes.MOUNT_COMPONENT:
381
+ case BuilderActionTypes.UNMOUNT_COMPONENT:
382
+ case BuilderActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE:
383
+ case BuilderActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER:
384
+ case BuilderActionTypes.HANDLE_WHEEL:
385
+ case BuilderActionTypes.HANDLE_POINTER_MOVE:
386
+ case BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE:
387
+ case BuilderActionTypes.SET_LOCALE:
388
+ case BuilderActionTypes.SET_BREAKPOINTS:
389
+ case BuilderActionTypes.REGISTER_BUILDER_DOCUMENT:
390
+ case BuilderActionTypes.UNREGISTER_BUILDER_DOCUMENT:
391
+ case BuilderActionTypes.REGISTER_BUILDER_COMPONENT:
392
+ case BuilderActionTypes.UNREGISTER_BUILDER_COMPONENT:
393
+ builderProxy.execute(action);
394
+ break;
395
+ case HostActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP:
396
+ window.document.documentElement.scrollTop = action.payload.scrollTop;
397
+ break;
398
+ case HostActionTypes.SCROLL_DOCUMENT_ELEMENT:
399
+ window.document.documentElement.scrollTop += action.payload.scrollTopDelta;
400
+ break;
401
+ case HostActionTypes.SET_BUILDER_EDIT_MODE:
402
+ window.getSelection()?.removeAllRanges();
403
+ break;
404
+ case HostActionTypes.INIT:
405
+ cleanUp = dispatch(initialize(builderProxy));
406
+ break;
407
+ case HostActionTypes.CLEAN_UP:
408
+ cleanUp();
409
+ break;
410
+ }
411
+ return next(action);
412
+ };
413
+ });
414
+ }
415
+ function createAndRegisterPropControllers(documentKey, elementKey) {
416
+ return (dispatch, getState) => {
417
+ const descriptors = ReactPage.getElementPropControllerDescriptors(
418
+ getState(),
419
+ documentKey,
420
+ elementKey
421
+ );
422
+ if (descriptors == null)
423
+ return null;
424
+ const propControllers = Object.entries(descriptors).reduce(
425
+ (acc, [propName, descriptor]) => {
426
+ const propController = createPropController(
427
+ descriptor,
428
+ (message) => dispatch(
429
+ Builder.messageBuilderPropController(documentKey, elementKey, propName, message)
430
+ )
431
+ );
432
+ return { ...acc, [propName]: propController };
433
+ },
434
+ {}
435
+ );
436
+ dispatch(Internal.registerPropControllers(documentKey, elementKey, propControllers));
437
+ return propControllers;
438
+ };
439
+ }
440
+ function propControllerHandlesMiddleware() {
441
+ return actionMiddleware(({ dispatch, getState }) => (next) => {
442
+ return (action) => {
443
+ switch (action.type) {
444
+ case InternalActionTypes.REGISTER_COMPONENT_HANDLE: {
445
+ const { documentKey, elementKey, componentHandle } = action.payload;
446
+ const element = ReactPage.getElement(getState(), documentKey, elementKey);
447
+ const propControllers = dispatch(
448
+ createAndRegisterPropControllers(documentKey, elementKey)
449
+ );
450
+ if (element != null && !ReactPage.isElementReference(element) && PropControllerHandles.isPropControllersHandle(componentHandle)) {
451
+ dispatch(
452
+ Internal.registerPropControllersHandle(documentKey, elementKey, componentHandle)
453
+ );
454
+ componentHandle.setPropControllers(propControllers);
455
+ }
456
+ break;
457
+ }
458
+ case InternalActionTypes.UNREGISTER_COMPONENT_HANDLE: {
459
+ const { documentKey, elementKey } = action.payload;
460
+ const handle = PropControllerHandles.getPropControllersHandle(
461
+ getPropControllerHandlesStateSlice(getState()),
462
+ documentKey,
463
+ elementKey
464
+ );
465
+ handle?.setPropControllers(null);
466
+ dispatch(Internal.unregisterPropControllers(documentKey, elementKey));
467
+ break;
468
+ }
469
+ case HostActionTypes.MESSAGE_HOST_PROP_CONTROLLER: {
470
+ const propController = PropControllerHandles.getPropController(
471
+ getPropControllerHandlesStateSlice(getState()),
472
+ action.payload.documentKey,
473
+ action.payload.elementKey,
474
+ action.payload.propName
475
+ );
476
+ if (propController)
477
+ propController.recv(action.payload.message);
478
+ }
479
+ }
480
+ return next(action);
481
+ };
482
+ });
483
+ }
484
+ function makeswiftApiClientSyncMiddleware(client) {
485
+ return actionMiddleware(() => (next) => {
486
+ return (action) => {
487
+ client.makeswiftApiClient.dispatch(action);
488
+ return next(action);
489
+ };
490
+ });
491
+ }
14
492
  function setupBuilderProxy(builderProxy) {
15
493
  return (dispatch) => {
16
494
  builderProxy.setup({ onHostAction: (action) => dispatch(action) });
@@ -23,14 +501,13 @@ function configureStore({
23
501
  }) {
24
502
  const initialState = {
25
503
  ...preloadedState,
26
- isReadOnly: IsReadOnly.getInitialState(false)
504
+ isPreview: IsPreview.getInitialState(true)
27
505
  };
28
506
  const store = configureReduxStore({
29
- reducer: createRootReducer(),
507
+ reducer,
30
508
  preloadedState: initialState,
31
509
  middleware: (getDefaultMiddleware) => getDefaultMiddleware(middlewareOptions).concat(
32
- readOnlyElementTreeMiddleware(),
33
- updateElementTreeMiddleware(),
510
+ ReactPage.elementTreeMiddleware(),
34
511
  measureBoxModelsMiddleware(),
35
512
  builderAPIMiddleware(builderProxy),
36
513
  propControllerHandlesMiddleware(),
@@ -57,6 +534,14 @@ function configureStore({
57
534
  return store;
58
535
  }
59
536
  export {
60
- configureStore
537
+ builderAPIMiddleware,
538
+ configureStore,
539
+ createBox,
540
+ getBox,
541
+ initialize,
542
+ parse,
543
+ propControllerHandlesMiddleware,
544
+ reducer,
545
+ startMeasuringElements
61
546
  };
62
547
  //# sourceMappingURL=react-builder-preview.js.map