@makeswift/runtime 0.25.4-canary.3 → 0.25.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 (655) hide show
  1. package/dist/cjs/api/api-resources-client.js +160 -0
  2. package/dist/cjs/api/api-resources-client.js.map +1 -0
  3. package/dist/cjs/api/client.js +90 -0
  4. package/dist/cjs/api/client.js.map +1 -0
  5. package/dist/cjs/api-handler/handlers/manifest.js +1 -1
  6. package/dist/cjs/api-handler/handlers/webhook/diff-projection.js +62 -0
  7. package/dist/cjs/api-handler/handlers/webhook/diff-projection.js.map +1 -0
  8. package/dist/cjs/builder/breakpoints/index.js +31 -0
  9. package/dist/cjs/builder/breakpoints/index.js.map +1 -0
  10. package/dist/cjs/builder/core/index.js +57 -0
  11. package/dist/cjs/builder/core/index.js.map +1 -0
  12. package/dist/cjs/builder/host-api.js +56 -0
  13. package/dist/cjs/builder/host-api.js.map +1 -0
  14. package/dist/cjs/builder/host-to-builder-actions.js +41 -0
  15. package/dist/cjs/builder/host-to-builder-actions.js.map +1 -0
  16. package/dist/cjs/builder/serialization.js +78 -0
  17. package/dist/cjs/builder/serialization.js.map +1 -0
  18. package/dist/cjs/components/builtin/Carousel/Carousel.js +2 -5
  19. package/dist/cjs/components/builtin/Carousel/Carousel.js.map +1 -1
  20. package/dist/cjs/controls/control.js +1 -3
  21. package/dist/cjs/controls/control.js.map +1 -1
  22. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js +15 -2
  23. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  24. package/dist/cjs/controls/rich-text-v2/translation.js +187 -0
  25. package/dist/cjs/controls/rich-text-v2/translation.js.map +1 -0
  26. package/dist/cjs/controls/serialization/base/index.js +78 -0
  27. package/dist/cjs/controls/serialization/base/index.js.map +1 -0
  28. package/dist/cjs/controls/serialization/base/visitor.js +59 -0
  29. package/dist/cjs/controls/serialization/base/visitor.js.map +1 -0
  30. package/dist/cjs/controls/serialization/index.js +55 -0
  31. package/dist/cjs/controls/serialization/index.js.map +1 -0
  32. package/dist/cjs/controls/serialization/message-port/function-serialization.js +79 -0
  33. package/dist/cjs/controls/serialization/message-port/function-serialization.js.map +1 -0
  34. package/dist/cjs/controls/serialization/message-port/index.js +25 -0
  35. package/dist/cjs/controls/serialization/message-port/index.js.map +1 -0
  36. package/dist/cjs/controls/serialization/message-port/visitor.js +48 -0
  37. package/dist/cjs/controls/serialization/message-port/visitor.js.map +1 -0
  38. package/dist/cjs/controls/visitors/message-port-serializer/client-message-port-serialization-visitor.js +72 -0
  39. package/dist/cjs/controls/visitors/message-port-serializer/client-message-port-serialization-visitor.js.map +1 -0
  40. package/dist/cjs/controls/visitors/message-port-serializer/function-serialization.js +79 -0
  41. package/dist/cjs/controls/visitors/message-port-serializer/function-serialization.js.map +1 -0
  42. package/dist/cjs/controls/visitors/message-port-serializer/index.js +36 -0
  43. package/dist/cjs/controls/visitors/message-port-serializer/index.js.map +1 -0
  44. package/dist/cjs/next/api-handler/config/pages-router.js +1 -1
  45. package/dist/cjs/next/api-handler/config/pages-router.js.map +1 -1
  46. package/dist/cjs/next/components/tests/makeswift-component/fixtures.js +101 -0
  47. package/dist/cjs/next/components/tests/makeswift-component/fixtures.js.map +1 -0
  48. package/dist/cjs/next/fetch.js +30 -0
  49. package/dist/cjs/next/fetch.js.map +1 -0
  50. package/dist/cjs/next/runtime.js +35 -0
  51. package/dist/cjs/next/runtime.js.map +1 -0
  52. package/dist/cjs/next/testing/react-runtime.js +29 -0
  53. package/dist/cjs/next/testing/react-runtime.js.map +1 -0
  54. package/dist/cjs/prop-controllers/serialization.js +355 -0
  55. package/dist/cjs/prop-controllers/serialization.js.map +1 -0
  56. package/dist/cjs/react/builtins/box.js +42 -0
  57. package/dist/cjs/react/builtins/box.js.map +1 -0
  58. package/dist/cjs/react/builtins/button.js +42 -0
  59. package/dist/cjs/react/builtins/button.js.map +1 -0
  60. package/dist/cjs/react/builtins/carousel.js +42 -0
  61. package/dist/cjs/react/builtins/carousel.js.map +1 -0
  62. package/dist/cjs/react/builtins/countdown.js +42 -0
  63. package/dist/cjs/react/builtins/countdown.js.map +1 -0
  64. package/dist/cjs/react/builtins/divider.js +42 -0
  65. package/dist/cjs/react/builtins/divider.js.map +1 -0
  66. package/dist/cjs/react/builtins/embed.js +42 -0
  67. package/dist/cjs/react/builtins/embed.js.map +1 -0
  68. package/dist/cjs/react/builtins/form.js +42 -0
  69. package/dist/cjs/react/builtins/form.js.map +1 -0
  70. package/dist/cjs/react/builtins/image.js +42 -0
  71. package/dist/cjs/react/builtins/image.js.map +1 -0
  72. package/dist/cjs/react/builtins/index.js +29 -0
  73. package/dist/cjs/react/builtins/index.js.map +1 -0
  74. package/dist/cjs/react/builtins/navigation.js +42 -0
  75. package/dist/cjs/react/builtins/navigation.js.map +1 -0
  76. package/dist/cjs/react/builtins/root.js +42 -0
  77. package/dist/cjs/react/builtins/root.js.map +1 -0
  78. package/dist/cjs/react/builtins/slot.js +42 -0
  79. package/dist/cjs/react/builtins/slot.js.map +1 -0
  80. package/dist/cjs/react/builtins/social-links.js +42 -0
  81. package/dist/cjs/react/builtins/social-links.js.map +1 -0
  82. package/dist/cjs/react/builtins/text.js +42 -0
  83. package/dist/cjs/react/builtins/text.js.map +1 -0
  84. package/dist/cjs/react/builtins/video.js +42 -0
  85. package/dist/cjs/react/builtins/video.js.map +1 -0
  86. package/dist/cjs/react/core/index.js +29 -0
  87. package/dist/cjs/react/core/index.js.map +1 -0
  88. package/dist/cjs/react/index.js +29 -0
  89. package/dist/cjs/react/index.js.map +1 -0
  90. package/dist/cjs/runtimes/react/components/GoogleFontLink.js +55 -0
  91. package/dist/cjs/runtimes/react/components/GoogleFontLink.js.map +1 -0
  92. package/dist/cjs/runtimes/react/components/MakeswiftFonts.js +33 -0
  93. package/dist/cjs/runtimes/react/components/MakeswiftFonts.js.map +1 -0
  94. package/dist/cjs/runtimes/react/components/activity-with-fallback.js +54 -0
  95. package/dist/cjs/runtimes/react/components/activity-with-fallback.js.map +1 -0
  96. package/dist/cjs/runtimes/react/components/page/index.js +13 -3
  97. package/dist/cjs/runtimes/react/components/page/index.js.map +1 -1
  98. package/dist/cjs/runtimes/react/hooks/use-async-effect.js +55 -0
  99. package/dist/cjs/runtimes/react/hooks/use-async-effect.js.map +1 -0
  100. package/dist/cjs/runtimes/react/hooks/use-builtin-suspense.js +33 -0
  101. package/dist/cjs/runtimes/react/hooks/use-builtin-suspense.js.map +1 -0
  102. package/dist/cjs/runtimes/react/hooks/use-current-breakpoint.js +39 -0
  103. package/dist/cjs/runtimes/react/hooks/use-current-breakpoint.js.map +1 -0
  104. package/dist/cjs/runtimes/react/hooks/use-is-read-only.js +33 -0
  105. package/dist/cjs/runtimes/react/hooks/use-is-read-only.js.map +1 -0
  106. package/dist/cjs/runtimes/react/lib/resolved-style-to-css.js +59 -0
  107. package/dist/cjs/runtimes/react/lib/resolved-style-to-css.js.map +1 -0
  108. package/dist/cjs/runtimes/react/react-runtime-core.js +72 -0
  109. package/dist/cjs/runtimes/react/react-runtime-core.js.map +1 -0
  110. package/dist/cjs/runtimes/react/resource-resolver.js +52 -0
  111. package/dist/cjs/runtimes/react/resource-resolver.js.map +1 -0
  112. package/dist/cjs/runtimes/react/testing/react-runtime.js +33 -0
  113. package/dist/cjs/runtimes/react/testing/react-runtime.js.map +1 -0
  114. package/dist/cjs/runtimes/react/utils/google-fonts-url.js +49 -0
  115. package/dist/cjs/runtimes/react/utils/google-fonts-url.js.map +1 -0
  116. package/dist/cjs/state/actions/index.js +42 -0
  117. package/dist/cjs/state/actions/index.js.map +1 -0
  118. package/dist/cjs/state/actions/internal/index.js +34 -0
  119. package/dist/cjs/state/actions/internal/index.js.map +1 -0
  120. package/dist/cjs/state/actions/internal/read-only-actions.js +195 -0
  121. package/dist/cjs/state/actions/internal/read-only-actions.js.map +1 -0
  122. package/dist/cjs/state/actions/internal/read-write-actions.js +76 -0
  123. package/dist/cjs/state/actions/internal/read-write-actions.js.map +1 -0
  124. package/dist/cjs/state/actions/internal.js +205 -0
  125. package/dist/cjs/state/actions/internal.js.map +1 -0
  126. package/dist/cjs/state/api-client/client-store.js +81 -0
  127. package/dist/cjs/state/api-client/client-store.js.map +1 -0
  128. package/dist/cjs/state/api-client/fetch-api-resource.js +125 -0
  129. package/dist/cjs/state/api-client/fetch-api-resource.js.map +1 -0
  130. package/dist/cjs/state/api-client/state.js +89 -0
  131. package/dist/cjs/state/api-client/state.js.map +1 -0
  132. package/dist/cjs/state/api-client/store.js +36 -0
  133. package/dist/cjs/state/api-client/store.js.map +1 -0
  134. package/dist/cjs/state/builder-api/actions.js +161 -0
  135. package/dist/cjs/state/builder-api/actions.js.map +1 -0
  136. package/dist/cjs/state/builder-api/api.js +17 -0
  137. package/dist/cjs/state/builder-api/api.js.map +1 -0
  138. package/dist/cjs/state/builder-api/message-channel.js +98 -0
  139. package/dist/cjs/state/builder-api/message-channel.js.map +1 -0
  140. package/dist/cjs/state/builder-api/navigation-listener.js +110 -0
  141. package/dist/cjs/state/builder-api/navigation-listener.js.map +1 -0
  142. package/dist/cjs/state/builder-api/proxy.js +72 -0
  143. package/dist/cjs/state/builder-api/proxy.js.map +1 -0
  144. package/dist/cjs/state/host-api.js +117 -0
  145. package/dist/cjs/state/host-api.js.map +1 -0
  146. package/dist/cjs/state/middleware/makeswift-api-client-sync.js +37 -0
  147. package/dist/cjs/state/middleware/makeswift-api-client-sync.js.map +1 -0
  148. package/dist/cjs/state/middleware/read-only-element-tree.js +52 -0
  149. package/dist/cjs/state/middleware/read-only-element-tree.js.map +1 -0
  150. package/dist/cjs/state/middleware/read-write/builder-api/element-size.js +40 -0
  151. package/dist/cjs/state/middleware/read-write/builder-api/element-size.js.map +1 -0
  152. package/dist/cjs/state/middleware/read-write/builder-api/index.js +85 -0
  153. package/dist/cjs/state/middleware/read-write/builder-api/index.js.map +1 -0
  154. package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js +281 -0
  155. package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js.map +1 -0
  156. package/dist/cjs/state/middleware/read-write/index.js +40 -0
  157. package/dist/cjs/state/middleware/read-write/index.js.map +1 -0
  158. package/dist/cjs/state/middleware/read-write/measure-box-models.js +71 -0
  159. package/dist/cjs/state/middleware/read-write/measure-box-models.js.map +1 -0
  160. package/dist/cjs/state/middleware/read-write/prop-controller-handles.js +114 -0
  161. package/dist/cjs/state/middleware/read-write/prop-controller-handles.js.map +1 -0
  162. package/dist/cjs/state/middleware/read-write/update-element-tree.js +59 -0
  163. package/dist/cjs/state/middleware/read-write/update-element-tree.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/is-read-only.js +50 -0
  167. package/dist/cjs/state/modules/is-read-only.js.map +1 -0
  168. package/dist/cjs/state/modules/locale.js +50 -0
  169. package/dist/cjs/state/modules/locale.js.map +1 -0
  170. package/dist/cjs/state/modules/read-write/box-models.js +144 -0
  171. package/dist/cjs/state/modules/read-write/box-models.js.map +1 -0
  172. package/dist/cjs/state/modules/read-write/element-imperative-handles.js +61 -0
  173. package/dist/cjs/state/modules/read-write/element-imperative-handles.js.map +1 -0
  174. package/dist/cjs/state/modules/read-write/pointer.js +48 -0
  175. package/dist/cjs/state/modules/read-write/pointer.js.map +1 -0
  176. package/dist/cjs/state/modules/read-write/read-write-documents.js +98 -0
  177. package/dist/cjs/state/modules/read-write/read-write-documents.js.map +1 -0
  178. package/dist/cjs/state/modules/site-version.js +47 -0
  179. package/dist/cjs/state/modules/site-version.js.map +1 -0
  180. package/dist/cjs/state/ops/copy-element-tree.js +67 -0
  181. package/dist/cjs/state/ops/copy-element-tree.js.map +1 -0
  182. package/dist/cjs/state/ops/merge-element.js +73 -0
  183. package/dist/cjs/state/ops/merge-element.js.map +1 -0
  184. package/dist/cjs/state/read-only-state.js +231 -0
  185. package/dist/cjs/state/read-only-state.js.map +1 -0
  186. package/dist/cjs/state/read-write-state.js +128 -0
  187. package/dist/cjs/state/read-write-state.js.map +1 -0
  188. package/dist/cjs/state/shared-api.js +63 -0
  189. package/dist/cjs/state/shared-api.js.map +1 -0
  190. package/dist/cjs/state/store.js +219 -0
  191. package/dist/cjs/state/store.js.map +1 -0
  192. package/dist/cjs/state/translations/get.js +61 -0
  193. package/dist/cjs/state/translations/get.js.map +1 -0
  194. package/dist/cjs/state/translations/merge.js +91 -0
  195. package/dist/cjs/state/translations/merge.js.map +1 -0
  196. package/dist/cjs/state/unified-state.js +17 -0
  197. package/dist/cjs/state/unified-state.js.map +1 -0
  198. package/dist/cjs/translations/index.js +32 -0
  199. package/dist/cjs/translations/index.js.map +1 -0
  200. package/dist/cjs/utils/deferred.js +39 -0
  201. package/dist/cjs/utils/deferred.js.map +1 -0
  202. package/dist/cjs/utils/ref-counted-map.js +120 -0
  203. package/dist/cjs/utils/ref-counted-map.js.map +1 -0
  204. package/dist/esm/api/api-resources-client.js +127 -0
  205. package/dist/esm/api/api-resources-client.js.map +1 -0
  206. package/dist/esm/api/client.js +67 -0
  207. package/dist/esm/api/client.js.map +1 -0
  208. package/dist/esm/api-handler/handlers/manifest.js +1 -1
  209. package/dist/esm/api-handler/handlers/webhook/diff-projection.js +38 -0
  210. package/dist/esm/api-handler/handlers/webhook/diff-projection.js.map +1 -0
  211. package/dist/esm/builder/breakpoints/index.js +9 -0
  212. package/dist/esm/builder/breakpoints/index.js.map +1 -0
  213. package/dist/esm/builder/core/index.js +35 -0
  214. package/dist/esm/builder/core/index.js.map +1 -0
  215. package/dist/esm/builder/host-api.js +31 -0
  216. package/dist/esm/builder/host-api.js.map +1 -0
  217. package/dist/esm/builder/host-to-builder-actions.js +18 -0
  218. package/dist/esm/builder/host-to-builder-actions.js.map +1 -0
  219. package/dist/esm/builder/serialization.js +59 -0
  220. package/dist/esm/builder/serialization.js.map +1 -0
  221. package/dist/esm/components/builtin/Carousel/Carousel.js +1 -4
  222. package/dist/esm/components/builtin/Carousel/Carousel.js.map +1 -1
  223. package/dist/esm/controls/control.js +1 -3
  224. package/dist/esm/controls/control.js.map +1 -1
  225. package/dist/esm/controls/rich-text-v2/rich-text-v2.js +17 -1
  226. package/dist/esm/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  227. package/dist/esm/controls/rich-text-v2/translation.js +152 -0
  228. package/dist/esm/controls/rich-text-v2/translation.js.map +1 -0
  229. package/dist/esm/controls/serialization/base/index.js +78 -0
  230. package/dist/esm/controls/serialization/base/index.js.map +1 -0
  231. package/dist/esm/controls/serialization/base/visitor.js +39 -0
  232. package/dist/esm/controls/serialization/base/visitor.js.map +1 -0
  233. package/dist/esm/controls/serialization/index.js +30 -0
  234. package/dist/esm/controls/serialization/index.js.map +1 -0
  235. package/dist/esm/controls/serialization/message-port/function-serialization.js +52 -0
  236. package/dist/esm/controls/serialization/message-port/function-serialization.js.map +1 -0
  237. package/dist/esm/controls/serialization/message-port/index.js +3 -0
  238. package/dist/esm/controls/serialization/message-port/index.js.map +1 -0
  239. package/dist/esm/controls/serialization/message-port/visitor.js +24 -0
  240. package/dist/esm/controls/serialization/message-port/visitor.js.map +1 -0
  241. package/dist/esm/controls/visitors/message-port-serializer/client-message-port-serialization-visitor.js +53 -0
  242. package/dist/esm/controls/visitors/message-port-serializer/client-message-port-serialization-visitor.js.map +1 -0
  243. package/dist/esm/controls/visitors/message-port-serializer/function-serialization.js +52 -0
  244. package/dist/esm/controls/visitors/message-port-serializer/function-serialization.js.map +1 -0
  245. package/dist/esm/controls/visitors/message-port-serializer/index.js +13 -0
  246. package/dist/esm/controls/visitors/message-port-serializer/index.js.map +1 -0
  247. package/dist/esm/next/api-handler/config/pages-router.js +1 -1
  248. package/dist/esm/next/api-handler/config/pages-router.js.map +1 -1
  249. package/dist/esm/next/components/tests/makeswift-component/fixtures.js +60 -0
  250. package/dist/esm/next/components/tests/makeswift-component/fixtures.js.map +1 -0
  251. package/dist/esm/next/fetch.js +6 -0
  252. package/dist/esm/next/fetch.js.map +1 -0
  253. package/dist/esm/next/runtime.js +11 -0
  254. package/dist/esm/next/runtime.js.map +1 -0
  255. package/dist/esm/next/testing/react-runtime.js +5 -0
  256. package/dist/esm/next/testing/react-runtime.js.map +1 -0
  257. package/dist/esm/prop-controllers/serialization.js +338 -0
  258. package/dist/esm/prop-controllers/serialization.js.map +1 -0
  259. package/dist/esm/react/builtins/box.js +7 -0
  260. package/dist/esm/react/builtins/box.js.map +1 -0
  261. package/dist/esm/react/builtins/button.js +7 -0
  262. package/dist/esm/react/builtins/button.js.map +1 -0
  263. package/dist/esm/react/builtins/carousel.js +7 -0
  264. package/dist/esm/react/builtins/carousel.js.map +1 -0
  265. package/dist/esm/react/builtins/countdown.js +7 -0
  266. package/dist/esm/react/builtins/countdown.js.map +1 -0
  267. package/dist/esm/react/builtins/divider.js +7 -0
  268. package/dist/esm/react/builtins/divider.js.map +1 -0
  269. package/dist/esm/react/builtins/embed.js +7 -0
  270. package/dist/esm/react/builtins/embed.js.map +1 -0
  271. package/dist/esm/react/builtins/form.js +7 -0
  272. package/dist/esm/react/builtins/form.js.map +1 -0
  273. package/dist/esm/react/builtins/image.js +7 -0
  274. package/dist/esm/react/builtins/image.js.map +1 -0
  275. package/dist/esm/react/builtins/index.js +5 -0
  276. package/dist/esm/react/builtins/index.js.map +1 -0
  277. package/dist/esm/react/builtins/navigation.js +7 -0
  278. package/dist/esm/react/builtins/navigation.js.map +1 -0
  279. package/dist/esm/react/builtins/root.js +7 -0
  280. package/dist/esm/react/builtins/root.js.map +1 -0
  281. package/dist/esm/react/builtins/slot.js +7 -0
  282. package/dist/esm/react/builtins/slot.js.map +1 -0
  283. package/dist/esm/react/builtins/social-links.js +7 -0
  284. package/dist/esm/react/builtins/social-links.js.map +1 -0
  285. package/dist/esm/react/builtins/text.js +7 -0
  286. package/dist/esm/react/builtins/text.js.map +1 -0
  287. package/dist/esm/react/builtins/video.js +7 -0
  288. package/dist/esm/react/builtins/video.js.map +1 -0
  289. package/dist/esm/react/core/index.js +5 -0
  290. package/dist/esm/react/core/index.js.map +1 -0
  291. package/dist/esm/react/index.js +5 -0
  292. package/dist/esm/react/index.js.map +1 -0
  293. package/dist/esm/runtimes/react/components/GoogleFontLink.js +35 -0
  294. package/dist/esm/runtimes/react/components/GoogleFontLink.js.map +1 -0
  295. package/dist/esm/runtimes/react/components/MakeswiftFonts.js +9 -0
  296. package/dist/esm/runtimes/react/components/MakeswiftFonts.js.map +1 -0
  297. package/dist/esm/runtimes/react/components/activity-with-fallback.js +19 -0
  298. package/dist/esm/runtimes/react/components/activity-with-fallback.js.map +1 -0
  299. package/dist/esm/runtimes/react/components/page/index.js +16 -4
  300. package/dist/esm/runtimes/react/components/page/index.js.map +1 -1
  301. package/dist/esm/runtimes/react/hooks/use-async-effect.js +31 -0
  302. package/dist/esm/runtimes/react/hooks/use-async-effect.js.map +1 -0
  303. package/dist/esm/runtimes/react/hooks/use-builtin-suspense.js +9 -0
  304. package/dist/esm/runtimes/react/hooks/use-builtin-suspense.js.map +1 -0
  305. package/dist/esm/runtimes/react/hooks/use-current-breakpoint.js +15 -0
  306. package/dist/esm/runtimes/react/hooks/use-current-breakpoint.js.map +1 -0
  307. package/dist/esm/runtimes/react/hooks/use-is-read-only.js +9 -0
  308. package/dist/esm/runtimes/react/hooks/use-is-read-only.js.map +1 -0
  309. package/dist/esm/runtimes/react/lib/resolved-style-to-css.js +38 -0
  310. package/dist/esm/runtimes/react/lib/resolved-style-to-css.js.map +1 -0
  311. package/dist/esm/runtimes/react/react-runtime-core.js +51 -0
  312. package/dist/esm/runtimes/react/react-runtime-core.js.map +1 -0
  313. package/dist/esm/runtimes/react/resource-resolver.js +28 -0
  314. package/dist/esm/runtimes/react/resource-resolver.js.map +1 -0
  315. package/dist/esm/runtimes/react/testing/react-runtime.js +9 -0
  316. package/dist/esm/runtimes/react/testing/react-runtime.js.map +1 -0
  317. package/dist/esm/runtimes/react/utils/google-fonts-url.js +23 -0
  318. package/dist/esm/runtimes/react/utils/google-fonts-url.js.map +1 -0
  319. package/dist/esm/state/actions/index.js +17 -0
  320. package/dist/esm/state/actions/index.js.map +1 -0
  321. package/dist/esm/state/actions/internal/index.js +10 -0
  322. package/dist/esm/state/actions/internal/index.js.map +1 -0
  323. package/dist/esm/state/actions/internal/read-only-actions.js +153 -0
  324. package/dist/esm/state/actions/internal/read-only-actions.js.map +1 -0
  325. package/dist/esm/state/actions/internal/read-write-actions.js +46 -0
  326. package/dist/esm/state/actions/internal/read-write-actions.js.map +1 -0
  327. package/dist/esm/state/actions/internal.js +162 -0
  328. package/dist/esm/state/actions/internal.js.map +1 -0
  329. package/dist/esm/state/api-client/client-store.js +49 -0
  330. package/dist/esm/state/api-client/client-store.js.map +1 -0
  331. package/dist/esm/state/api-client/fetch-api-resource.js +93 -0
  332. package/dist/esm/state/api-client/fetch-api-resource.js.map +1 -0
  333. package/dist/esm/state/api-client/state.js +52 -0
  334. package/dist/esm/state/api-client/state.js.map +1 -0
  335. package/dist/esm/state/api-client/store.js +12 -0
  336. package/dist/esm/state/api-client/store.js.map +1 -0
  337. package/dist/esm/state/builder-api/actions.js +119 -0
  338. package/dist/esm/state/builder-api/actions.js.map +1 -0
  339. package/dist/esm/state/builder-api/api.js +1 -0
  340. package/dist/esm/state/builder-api/api.js.map +1 -0
  341. package/dist/esm/state/builder-api/message-channel.js +74 -0
  342. package/dist/esm/state/builder-api/message-channel.js.map +1 -0
  343. package/dist/esm/state/builder-api/navigation-listener.js +86 -0
  344. package/dist/esm/state/builder-api/navigation-listener.js.map +1 -0
  345. package/dist/esm/state/builder-api/proxy.js +48 -0
  346. package/dist/esm/state/builder-api/proxy.js.map +1 -0
  347. package/dist/esm/state/host-api.js +81 -0
  348. package/dist/esm/state/host-api.js.map +1 -0
  349. package/dist/esm/state/middleware/makeswift-api-client-sync.js +13 -0
  350. package/dist/esm/state/middleware/makeswift-api-client-sync.js.map +1 -0
  351. package/dist/esm/state/middleware/read-only-element-tree.js +28 -0
  352. package/dist/esm/state/middleware/read-only-element-tree.js.map +1 -0
  353. package/dist/esm/state/middleware/read-write/builder-api/element-size.js +16 -0
  354. package/dist/esm/state/middleware/read-write/builder-api/element-size.js.map +1 -0
  355. package/dist/esm/state/middleware/read-write/builder-api/index.js +61 -0
  356. package/dist/esm/state/middleware/read-write/builder-api/index.js.map +1 -0
  357. package/dist/esm/state/middleware/read-write/builder-api/initialize-connection.js +254 -0
  358. package/dist/esm/state/middleware/read-write/builder-api/initialize-connection.js.map +1 -0
  359. package/dist/esm/state/middleware/read-write/index.js +16 -0
  360. package/dist/esm/state/middleware/read-write/index.js.map +1 -0
  361. package/dist/esm/state/middleware/read-write/measure-box-models.js +37 -0
  362. package/dist/esm/state/middleware/read-write/measure-box-models.js.map +1 -0
  363. package/dist/esm/state/middleware/read-write/prop-controller-handles.js +80 -0
  364. package/dist/esm/state/middleware/read-write/prop-controller-handles.js.map +1 -0
  365. package/dist/esm/state/middleware/read-write/update-element-tree.js +35 -0
  366. package/dist/esm/state/middleware/read-write/update-element-tree.js.map +1 -0
  367. package/dist/esm/state/mixins/breakpoint-watch.js +48 -0
  368. package/dist/esm/state/mixins/breakpoint-watch.js.map +1 -0
  369. package/dist/esm/state/modules/is-read-only.js +24 -0
  370. package/dist/esm/state/modules/is-read-only.js.map +1 -0
  371. package/dist/esm/state/modules/locale.js +24 -0
  372. package/dist/esm/state/modules/locale.js.map +1 -0
  373. package/dist/esm/state/modules/read-write/box-models.js +114 -0
  374. package/dist/esm/state/modules/read-write/box-models.js.map +1 -0
  375. package/dist/esm/state/modules/read-write/element-imperative-handles.js +36 -0
  376. package/dist/esm/state/modules/read-write/element-imperative-handles.js.map +1 -0
  377. package/dist/esm/state/modules/read-write/pointer.js +23 -0
  378. package/dist/esm/state/modules/read-write/pointer.js.map +1 -0
  379. package/dist/esm/state/modules/read-write/read-write-documents.js +60 -0
  380. package/dist/esm/state/modules/read-write/read-write-documents.js.map +1 -0
  381. package/dist/esm/state/modules/site-version.js +21 -0
  382. package/dist/esm/state/modules/site-version.js.map +1 -0
  383. package/dist/esm/state/ops/copy-element-tree.js +37 -0
  384. package/dist/esm/state/ops/copy-element-tree.js.map +1 -0
  385. package/dist/esm/state/ops/merge-element.js +39 -0
  386. package/dist/esm/state/ops/merge-element.js.map +1 -0
  387. package/dist/esm/state/read-only-state.js +176 -0
  388. package/dist/esm/state/read-only-state.js.map +1 -0
  389. package/dist/esm/state/read-write-state.js +82 -0
  390. package/dist/esm/state/read-write-state.js.map +1 -0
  391. package/dist/esm/state/shared-api.js +35 -0
  392. package/dist/esm/state/shared-api.js.map +1 -0
  393. package/dist/esm/state/store.js +188 -0
  394. package/dist/esm/state/store.js.map +1 -0
  395. package/dist/esm/state/translations/get.js +27 -0
  396. package/dist/esm/state/translations/get.js.map +1 -0
  397. package/dist/esm/state/translations/merge.js +59 -0
  398. package/dist/esm/state/translations/merge.js.map +1 -0
  399. package/dist/esm/state/unified-state.js +1 -0
  400. package/dist/esm/state/unified-state.js.map +1 -0
  401. package/dist/esm/translations/index.js +7 -0
  402. package/dist/esm/translations/index.js.map +1 -0
  403. package/dist/esm/utils/deferred.js +15 -0
  404. package/dist/esm/utils/deferred.js.map +1 -0
  405. package/dist/esm/utils/ref-counted-map.js +96 -0
  406. package/dist/esm/utils/ref-counted-map.js.map +1 -0
  407. package/dist/types/api/api-resources-client.d.ts +57 -0
  408. package/dist/types/api/api-resources-client.d.ts.map +1 -0
  409. package/dist/types/api/client.d.ts +49 -0
  410. package/dist/types/api/client.d.ts.map +1 -0
  411. package/dist/types/api-handler/handlers/webhook/diff-projection.d.ts +201 -0
  412. package/dist/types/api-handler/handlers/webhook/diff-projection.d.ts.map +1 -0
  413. package/dist/types/builder/breakpoints/index.d.ts +2 -0
  414. package/dist/types/builder/breakpoints/index.d.ts.map +1 -0
  415. package/dist/types/builder/core/index.d.ts +2 -0
  416. package/dist/types/builder/core/index.d.ts.map +1 -0
  417. package/dist/types/builder/host-api.d.ts +3 -0
  418. package/dist/types/builder/host-api.d.ts.map +1 -0
  419. package/dist/types/builder/host-to-builder-actions.d.ts +28 -0
  420. package/dist/types/builder/host-to-builder-actions.d.ts.map +1 -0
  421. package/dist/types/builder/serialization.d.ts +23 -0
  422. package/dist/types/builder/serialization.d.ts.map +1 -0
  423. package/dist/types/builder/serialization.test.d.ts +2 -0
  424. package/dist/types/builder/serialization.test.d.ts.map +1 -0
  425. package/dist/types/client/index.d.ts +11 -11
  426. package/dist/types/client/tests/client.get-component-snapshots.test.d.ts +2 -0
  427. package/dist/types/client/tests/client.get-component-snapshots.test.d.ts.map +1 -0
  428. package/dist/types/client/tests/client.get-fonts.test.d.ts +2 -0
  429. package/dist/types/client/tests/client.get-fonts.test.d.ts.map +1 -0
  430. package/dist/types/client/tests/client.introspect-many.test.d.ts +2 -0
  431. package/dist/types/client/tests/client.introspect-many.test.d.ts.map +1 -0
  432. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  433. package/dist/types/components/hooks/__tests__/useMediaQuery.test.d.ts +3 -0
  434. package/dist/types/components/hooks/__tests__/useMediaQuery.test.d.ts.map +1 -0
  435. package/dist/types/controls/control.d.ts.map +1 -1
  436. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts +12 -11
  437. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  438. package/dist/types/controls/rich-text-v2/translation.d.ts +6 -0
  439. package/dist/types/controls/rich-text-v2/translation.d.ts.map +1 -0
  440. package/dist/types/controls/serialization/base/index.d.ts +10 -0
  441. package/dist/types/controls/serialization/base/index.d.ts.map +1 -0
  442. package/dist/types/controls/serialization/base/visitor.d.ts +7 -0
  443. package/dist/types/controls/serialization/base/visitor.d.ts.map +1 -0
  444. package/dist/types/controls/serialization/index.d.ts +10 -0
  445. package/dist/types/controls/serialization/index.d.ts.map +1 -0
  446. package/dist/types/controls/serialization/message-port/function-serialization.d.ts +16 -0
  447. package/dist/types/controls/serialization/message-port/function-serialization.d.ts.map +1 -0
  448. package/dist/types/controls/serialization/message-port/function-serialization.test.d.ts +2 -0
  449. package/dist/types/controls/serialization/message-port/function-serialization.test.d.ts.map +1 -0
  450. package/dist/types/controls/serialization/message-port/index.d.ts +3 -0
  451. package/dist/types/controls/serialization/message-port/index.d.ts.map +1 -0
  452. package/dist/types/controls/serialization/message-port/visitor.d.ts +7 -0
  453. package/dist/types/controls/serialization/message-port/visitor.d.ts.map +1 -0
  454. package/dist/types/controls/visitors/message-port-serializer/client-message-port-serialization-visitor.d.ts +9 -0
  455. package/dist/types/controls/visitors/message-port-serializer/client-message-port-serialization-visitor.d.ts.map +1 -0
  456. package/dist/types/controls/visitors/message-port-serializer/function-serialization.d.ts +16 -0
  457. package/dist/types/controls/visitors/message-port-serializer/function-serialization.d.ts.map +1 -0
  458. package/dist/types/controls/visitors/message-port-serializer/function-serialization.test.d.ts +2 -0
  459. package/dist/types/controls/visitors/message-port-serializer/function-serialization.test.d.ts.map +1 -0
  460. package/dist/types/controls/visitors/message-port-serializer/index.d.ts +3 -0
  461. package/dist/types/controls/visitors/message-port-serializer/index.d.ts.map +1 -0
  462. package/dist/types/next/api-handler/config/pages-router.test.d.ts +2 -0
  463. package/dist/types/next/api-handler/config/pages-router.test.d.ts.map +1 -0
  464. package/dist/types/next/components/tests/controls/code-control.test.d.ts +2 -0
  465. package/dist/types/next/components/tests/controls/code-control.test.d.ts.map +1 -0
  466. package/dist/types/next/components/tests/makeswift-component/fixtures.d.ts +27 -0
  467. package/dist/types/next/components/tests/makeswift-component/fixtures.d.ts.map +1 -0
  468. package/dist/types/next/components/tests/makeswift-component/rendering.react18.test.d.ts +3 -0
  469. package/dist/types/next/components/tests/makeswift-component/rendering.react18.test.d.ts.map +1 -0
  470. package/dist/types/next/components/tests/makeswift-component/rendering.test.d.ts +3 -0
  471. package/dist/types/next/components/tests/makeswift-component/rendering.test.d.ts.map +1 -0
  472. package/dist/types/next/fetch.d.ts +3 -0
  473. package/dist/types/next/fetch.d.ts.map +1 -0
  474. package/dist/types/next/runtime.d.ts +10 -0
  475. package/dist/types/next/runtime.d.ts.map +1 -0
  476. package/dist/types/next/testing/react-runtime.d.ts +2 -0
  477. package/dist/types/next/testing/react-runtime.d.ts.map +1 -0
  478. package/dist/types/prop-controllers/serialization.d.ts +228 -0
  479. package/dist/types/prop-controllers/serialization.d.ts.map +1 -0
  480. package/dist/types/react/builtins/box.d.ts +3 -0
  481. package/dist/types/react/builtins/box.d.ts.map +1 -0
  482. package/dist/types/react/builtins/button.d.ts +3 -0
  483. package/dist/types/react/builtins/button.d.ts.map +1 -0
  484. package/dist/types/react/builtins/carousel.d.ts +3 -0
  485. package/dist/types/react/builtins/carousel.d.ts.map +1 -0
  486. package/dist/types/react/builtins/countdown.d.ts +3 -0
  487. package/dist/types/react/builtins/countdown.d.ts.map +1 -0
  488. package/dist/types/react/builtins/divider.d.ts +3 -0
  489. package/dist/types/react/builtins/divider.d.ts.map +1 -0
  490. package/dist/types/react/builtins/embed.d.ts +3 -0
  491. package/dist/types/react/builtins/embed.d.ts.map +1 -0
  492. package/dist/types/react/builtins/form.d.ts +3 -0
  493. package/dist/types/react/builtins/form.d.ts.map +1 -0
  494. package/dist/types/react/builtins/image.d.ts +3 -0
  495. package/dist/types/react/builtins/image.d.ts.map +1 -0
  496. package/dist/types/react/builtins/index.d.ts +2 -0
  497. package/dist/types/react/builtins/index.d.ts.map +1 -0
  498. package/dist/types/react/builtins/navigation.d.ts +3 -0
  499. package/dist/types/react/builtins/navigation.d.ts.map +1 -0
  500. package/dist/types/react/builtins/root.d.ts +3 -0
  501. package/dist/types/react/builtins/root.d.ts.map +1 -0
  502. package/dist/types/react/builtins/slot.d.ts +3 -0
  503. package/dist/types/react/builtins/slot.d.ts.map +1 -0
  504. package/dist/types/react/builtins/social-links.d.ts +3 -0
  505. package/dist/types/react/builtins/social-links.d.ts.map +1 -0
  506. package/dist/types/react/builtins/text.d.ts +3 -0
  507. package/dist/types/react/builtins/text.d.ts.map +1 -0
  508. package/dist/types/react/builtins/video.d.ts +3 -0
  509. package/dist/types/react/builtins/video.d.ts.map +1 -0
  510. package/dist/types/react/core/index.d.ts +2 -0
  511. package/dist/types/react/core/index.d.ts.map +1 -0
  512. package/dist/types/react/index.d.ts +2 -0
  513. package/dist/types/react/index.d.ts.map +1 -0
  514. package/dist/types/runtimes/react/components/GoogleFontLink.d.ts +14 -0
  515. package/dist/types/runtimes/react/components/GoogleFontLink.d.ts.map +1 -0
  516. package/dist/types/runtimes/react/components/MakeswiftFonts.d.ts +7 -0
  517. package/dist/types/runtimes/react/components/MakeswiftFonts.d.ts.map +1 -0
  518. package/dist/types/runtimes/react/components/activity-with-fallback.d.ts +13 -0
  519. package/dist/types/runtimes/react/components/activity-with-fallback.d.ts.map +1 -0
  520. package/dist/types/runtimes/react/components/page/index.d.ts.map +1 -1
  521. package/dist/types/runtimes/react/hooks/__tests__/use-async-effect.test.d.ts +2 -0
  522. package/dist/types/runtimes/react/hooks/__tests__/use-async-effect.test.d.ts.map +1 -0
  523. package/dist/types/runtimes/react/hooks/use-async-effect.d.ts +3 -0
  524. package/dist/types/runtimes/react/hooks/use-async-effect.d.ts.map +1 -0
  525. package/dist/types/runtimes/react/hooks/use-builtin-suspense.d.ts +2 -0
  526. package/dist/types/runtimes/react/hooks/use-builtin-suspense.d.ts.map +1 -0
  527. package/dist/types/runtimes/react/hooks/use-current-breakpoint.d.ts +3 -0
  528. package/dist/types/runtimes/react/hooks/use-current-breakpoint.d.ts.map +1 -0
  529. package/dist/types/runtimes/react/hooks/use-is-read-only.d.ts +2 -0
  530. package/dist/types/runtimes/react/hooks/use-is-read-only.d.ts.map +1 -0
  531. package/dist/types/runtimes/react/lib/resolved-style-to-css.d.ts +4 -0
  532. package/dist/types/runtimes/react/lib/resolved-style-to-css.d.ts.map +1 -0
  533. package/dist/types/runtimes/react/react-runtime-core.d.ts +24 -0
  534. package/dist/types/runtimes/react/react-runtime-core.d.ts.map +1 -0
  535. package/dist/types/runtimes/react/resource-resolver.d.ts +10 -0
  536. package/dist/types/runtimes/react/resource-resolver.d.ts.map +1 -0
  537. package/dist/types/runtimes/react/testing/react-runtime.d.ts +6 -0
  538. package/dist/types/runtimes/react/testing/react-runtime.d.ts.map +1 -0
  539. package/dist/types/runtimes/react/utils/google-fonts-url.d.ts +6 -0
  540. package/dist/types/runtimes/react/utils/google-fonts-url.d.ts.map +1 -0
  541. package/dist/types/slate/BlockPlugin/index.d.ts +13 -1
  542. package/dist/types/slate/BlockPlugin/index.d.ts.map +1 -1
  543. package/dist/types/slate/InlinePlugin/index.d.ts +13 -1
  544. package/dist/types/slate/InlinePlugin/index.d.ts.map +1 -1
  545. package/dist/types/slate/LinkPlugin/getValue.d.ts.map +1 -1
  546. package/dist/types/slate/LinkPlugin/index.d.ts.map +1 -1
  547. package/dist/types/slate/TextAlignPlugin/index.d.ts +13 -1
  548. package/dist/types/slate/TextAlignPlugin/index.d.ts.map +1 -1
  549. package/dist/types/slate/TypographyPlugin/getValue.d.ts.map +1 -1
  550. package/dist/types/slate/TypographyPlugin/index.d.ts.map +1 -1
  551. package/dist/types/state/__tests__/fixtures/serialized-descriptors-from-builder.d.ts +5 -0
  552. package/dist/types/state/__tests__/fixtures/serialized-descriptors-from-builder.d.ts.map +1 -0
  553. package/dist/types/state/__tests__/fixtures/translatable-content-sample.d.ts +3 -0
  554. package/dist/types/state/__tests__/fixtures/translatable-content-sample.d.ts.map +1 -0
  555. package/dist/types/state/__tests__/get-translatable-content.test.d.ts +2 -0
  556. package/dist/types/state/__tests__/get-translatable-content.test.d.ts.map +1 -0
  557. package/dist/types/state/__tests__/merge-element-tree-translated-data.test.d.ts +2 -0
  558. package/dist/types/state/__tests__/merge-element-tree-translated-data.test.d.ts.map +1 -0
  559. package/dist/types/state/__tests__/merge-element.test.d.ts +2 -0
  560. package/dist/types/state/__tests__/merge-element.test.d.ts.map +1 -0
  561. package/dist/types/state/__tests__/store.read-write-state.test.d.ts +2 -0
  562. package/dist/types/state/__tests__/store.read-write-state.test.d.ts.map +1 -0
  563. package/dist/types/state/__tests__/test-store.d.ts +31 -0
  564. package/dist/types/state/__tests__/test-store.d.ts.map +1 -0
  565. package/dist/types/state/actions/index.d.ts +61 -0
  566. package/dist/types/state/actions/index.d.ts.map +1 -0
  567. package/dist/types/state/actions/internal/index.d.ts +29 -0
  568. package/dist/types/state/actions/internal/index.d.ts.map +1 -0
  569. package/dist/types/state/actions/internal/read-only-actions.d.ts +171 -0
  570. package/dist/types/state/actions/internal/read-only-actions.d.ts.map +1 -0
  571. package/dist/types/state/actions/internal/read-write-actions.d.ts +53 -0
  572. package/dist/types/state/actions/internal/read-write-actions.d.ts.map +1 -0
  573. package/dist/types/state/actions/internal.d.ts +181 -0
  574. package/dist/types/state/actions/internal.d.ts.map +1 -0
  575. package/dist/types/state/api-client/client-store.d.ts +6 -0
  576. package/dist/types/state/api-client/client-store.d.ts.map +1 -0
  577. package/dist/types/state/api-client/fetch-api-resource.d.ts +11 -0
  578. package/dist/types/state/api-client/fetch-api-resource.d.ts.map +1 -0
  579. package/dist/types/state/api-client/state.d.ts +30 -0
  580. package/dist/types/state/api-client/state.d.ts.map +1 -0
  581. package/dist/types/state/api-client/store.d.ts +18 -0
  582. package/dist/types/state/api-client/store.d.ts.map +1 -0
  583. package/dist/types/state/builder-api/actions.d.ts +156 -0
  584. package/dist/types/state/builder-api/actions.d.ts.map +1 -0
  585. package/dist/types/state/builder-api/api.d.ts +9 -0
  586. package/dist/types/state/builder-api/api.d.ts.map +1 -0
  587. package/dist/types/state/builder-api/message-channel.d.ts +14 -0
  588. package/dist/types/state/builder-api/message-channel.d.ts.map +1 -0
  589. package/dist/types/state/builder-api/navigation-listener.d.ts +3 -0
  590. package/dist/types/state/builder-api/navigation-listener.d.ts.map +1 -0
  591. package/dist/types/state/builder-api/proxy.d.ts +16 -0
  592. package/dist/types/state/builder-api/proxy.d.ts.map +1 -0
  593. package/dist/types/state/host-api.d.ts +109 -0
  594. package/dist/types/state/host-api.d.ts.map +1 -0
  595. package/dist/types/state/middleware/makeswift-api-client-sync.d.ts +5 -0
  596. package/dist/types/state/middleware/makeswift-api-client-sync.d.ts.map +1 -0
  597. package/dist/types/state/middleware/read-only-element-tree.d.ts +4 -0
  598. package/dist/types/state/middleware/read-only-element-tree.d.ts.map +1 -0
  599. package/dist/types/state/middleware/read-write/builder-api/element-size.d.ts +12 -0
  600. package/dist/types/state/middleware/read-write/builder-api/element-size.d.ts.map +1 -0
  601. package/dist/types/state/middleware/read-write/builder-api/index.d.ts +5 -0
  602. package/dist/types/state/middleware/read-write/builder-api/index.d.ts.map +1 -0
  603. package/dist/types/state/middleware/read-write/builder-api/initialize-connection.d.ts +6 -0
  604. package/dist/types/state/middleware/read-write/builder-api/initialize-connection.d.ts.map +1 -0
  605. package/dist/types/state/middleware/read-write/index.d.ts +5 -0
  606. package/dist/types/state/middleware/read-write/index.d.ts.map +1 -0
  607. package/dist/types/state/middleware/read-write/measure-box-models.d.ts +4 -0
  608. package/dist/types/state/middleware/read-write/measure-box-models.d.ts.map +1 -0
  609. package/dist/types/state/middleware/read-write/prop-controller-handles.d.ts +4 -0
  610. package/dist/types/state/middleware/read-write/prop-controller-handles.d.ts.map +1 -0
  611. package/dist/types/state/middleware/read-write/update-element-tree.d.ts +4 -0
  612. package/dist/types/state/middleware/read-write/update-element-tree.d.ts.map +1 -0
  613. package/dist/types/state/mixins/breakpoint-watch.d.ts +11 -0
  614. package/dist/types/state/mixins/breakpoint-watch.d.ts.map +1 -0
  615. package/dist/types/state/modules/is-read-only.d.ts +6 -0
  616. package/dist/types/state/modules/is-read-only.d.ts.map +1 -0
  617. package/dist/types/state/modules/locale.d.ts +6 -0
  618. package/dist/types/state/modules/locale.d.ts.map +1 -0
  619. package/dist/types/state/modules/read-write/box-models.d.ts +26 -0
  620. package/dist/types/state/modules/read-write/box-models.d.ts.map +1 -0
  621. package/dist/types/state/modules/read-write/element-imperative-handles.d.ts +6 -0
  622. package/dist/types/state/modules/read-write/element-imperative-handles.d.ts.map +1 -0
  623. package/dist/types/state/modules/read-write/pointer.d.ts +11 -0
  624. package/dist/types/state/modules/read-write/pointer.d.ts.map +1 -0
  625. package/dist/types/state/modules/read-write/read-write-documents.d.ts +14 -0
  626. package/dist/types/state/modules/read-write/read-write-documents.d.ts.map +1 -0
  627. package/dist/types/state/modules/site-version.d.ts +7 -0
  628. package/dist/types/state/modules/site-version.d.ts.map +1 -0
  629. package/dist/types/state/ops/copy-element-tree.d.ts +37 -0
  630. package/dist/types/state/ops/copy-element-tree.d.ts.map +1 -0
  631. package/dist/types/state/ops/merge-element.d.ts +4 -0
  632. package/dist/types/state/ops/merge-element.d.ts.map +1 -0
  633. package/dist/types/state/read-only-state.d.ts +131 -0
  634. package/dist/types/state/read-only-state.d.ts.map +1 -0
  635. package/dist/types/state/read-write-state.d.ts +62 -0
  636. package/dist/types/state/read-write-state.d.ts.map +1 -0
  637. package/dist/types/state/shared-api.d.ts +50 -0
  638. package/dist/types/state/shared-api.d.ts.map +1 -0
  639. package/dist/types/state/store.d.ts +86 -0
  640. package/dist/types/state/store.d.ts.map +1 -0
  641. package/dist/types/state/translations/get.d.ts +4 -0
  642. package/dist/types/state/translations/get.d.ts.map +1 -0
  643. package/dist/types/state/translations/merge.d.ts +7 -0
  644. package/dist/types/state/translations/merge.d.ts.map +1 -0
  645. package/dist/types/state/unified-state.d.ts +9 -0
  646. package/dist/types/state/unified-state.d.ts.map +1 -0
  647. package/dist/types/translations/index.d.ts +6 -0
  648. package/dist/types/translations/index.d.ts.map +1 -0
  649. package/dist/types/utils/__tests__/ref-counted-map.test.d.ts +2 -0
  650. package/dist/types/utils/__tests__/ref-counted-map.test.d.ts.map +1 -0
  651. package/dist/types/utils/deferred.d.ts +7 -0
  652. package/dist/types/utils/deferred.d.ts.map +1 -0
  653. package/dist/types/utils/ref-counted-map.d.ts +32 -0
  654. package/dist/types/utils/ref-counted-map.d.ts.map +1 -0
  655. package/package.json +8 -7
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/state/middleware/read-only-element-tree.ts"],"sourcesContent":["import { type Middleware } from '@reduxjs/toolkit'\n\nimport { ActionTypes } from '../actions'\nimport { createElementTree, deleteElementTree } from '../actions/internal/read-only-actions'\n\nimport { actionMiddleware } from '../toolkit'\n\nimport { type Dispatch, type State, getPropControllerDescriptors } from '../read-only-state'\n\nexport function readOnlyElementTreeMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return actionMiddleware(({ dispatch, getState }) => next => {\n return action => {\n switch (action.type) {\n case ActionTypes.REGISTER_DOCUMENT:\n dispatch(\n createElementTree({\n document: action.payload.document,\n descriptors: getPropControllerDescriptors(getState()),\n }),\n )\n break\n\n case ActionTypes.UNREGISTER_DOCUMENT:\n dispatch(deleteElementTree(action.payload))\n break\n }\n\n return next(action)\n }\n })\n}\n"],"mappings":"AAEA,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB,yBAAyB;AAErD,SAAS,wBAAwB;AAEjC,SAAoC,oCAAoC;AAEjE,SAAS,gCAAuE;AACrF,SAAO,iBAAiB,CAAC,EAAE,UAAU,SAAS,MAAM,UAAQ;AAC1D,WAAO,YAAU;AACf,cAAQ,OAAO,MAAM;AAAA,QACnB,KAAK,YAAY;AACf;AAAA,YACE,kBAAkB;AAAA,cAChB,UAAU,OAAO,QAAQ;AAAA,cACzB,aAAa,6BAA6B,SAAS,CAAC;AAAA,YACtD,CAAC;AAAA,UACH;AACA;AAAA,QAEF,KAAK,YAAY;AACf,mBAAS,kBAAkB,OAAO,OAAO,CAAC;AAC1C;AAAA,MACJ;AAEA,aAAO,KAAK,MAAM;AAAA,IACpB;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -0,0 +1,16 @@
1
+ function getElementSize(element) {
2
+ return {
3
+ offsetWidth: element.offsetWidth,
4
+ offsetHeight: element.offsetHeight,
5
+ clientWidth: element.clientWidth,
6
+ clientHeight: element.clientHeight,
7
+ scrollWidth: element.scrollWidth,
8
+ scrollHeight: element.scrollHeight,
9
+ scrollTop: element.scrollTop,
10
+ scrollLeft: element.scrollLeft
11
+ };
12
+ }
13
+ export {
14
+ getElementSize
15
+ };
16
+ //# sourceMappingURL=element-size.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/state/middleware/read-write/builder-api/element-size.ts"],"sourcesContent":["export type ElementSize = {\n offsetWidth: number\n offsetHeight: number\n clientWidth: number\n clientHeight: number\n scrollWidth: number\n scrollHeight: number\n scrollTop: number\n scrollLeft: number\n}\n\nexport function getElementSize(element: HTMLElement): ElementSize {\n return {\n offsetWidth: element.offsetWidth,\n offsetHeight: element.offsetHeight,\n clientWidth: element.clientWidth,\n clientHeight: element.clientHeight,\n scrollWidth: element.scrollWidth,\n scrollHeight: element.scrollHeight,\n scrollTop: element.scrollTop,\n scrollLeft: element.scrollLeft,\n }\n}\n"],"mappings":"AAWO,SAAS,eAAe,SAAmC;AAChE,SAAO;AAAA,IACL,aAAa,QAAQ;AAAA,IACrB,cAAc,QAAQ;AAAA,IACtB,aAAa,QAAQ;AAAA,IACrB,cAAc,QAAQ;AAAA,IACtB,aAAa,QAAQ;AAAA,IACrB,cAAc,QAAQ;AAAA,IACtB,WAAW,QAAQ;AAAA,IACnB,YAAY,QAAQ;AAAA,EACtB;AACF;","names":[]}
@@ -0,0 +1,61 @@
1
+ import { BuilderActionTypes } from "../../../builder-api/actions";
2
+ import { actionMiddleware } from "../../../toolkit";
3
+ import { HostActionTypes } from "../../../host-api";
4
+ import { initializeBuilderConnection } from "./initialize-connection";
5
+ function builderAPIMiddleware(builderProxy) {
6
+ return actionMiddleware(({ dispatch }) => (next) => {
7
+ if (typeof window === "undefined")
8
+ return (action) => next(action);
9
+ let cleanUp = () => {
10
+ };
11
+ return (action) => {
12
+ switch (action.type) {
13
+ case BuilderActionTypes.CHANGE_ELEMENT_BOX_MODELS:
14
+ case BuilderActionTypes.MOUNT_COMPONENT:
15
+ case BuilderActionTypes.UNMOUNT_COMPONENT:
16
+ case BuilderActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE:
17
+ case BuilderActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER:
18
+ case BuilderActionTypes.HANDLE_WHEEL:
19
+ case BuilderActionTypes.HANDLE_POINTER_MOVE:
20
+ case BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE:
21
+ case BuilderActionTypes.SET_LOCALE:
22
+ case BuilderActionTypes.SET_BREAKPOINTS:
23
+ case BuilderActionTypes.REGISTER_BUILDER_DOCUMENT:
24
+ case BuilderActionTypes.UNREGISTER_BUILDER_DOCUMENT:
25
+ case BuilderActionTypes.REGISTER_BUILDER_COMPONENT:
26
+ case BuilderActionTypes.UNREGISTER_BUILDER_COMPONENT:
27
+ builderProxy.execute(action);
28
+ break;
29
+ case HostActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP:
30
+ window.document.documentElement.scrollTo({
31
+ top: action.payload.scrollTop,
32
+ behavior: "instant"
33
+ });
34
+ break;
35
+ case HostActionTypes.SCROLL_DOCUMENT_ELEMENT:
36
+ window.document.documentElement.scrollBy({
37
+ top: action.payload.scrollTopDelta,
38
+ behavior: "instant"
39
+ });
40
+ break;
41
+ case HostActionTypes.SET_BUILDER_EDIT_MODE:
42
+ window.getSelection()?.removeAllRanges();
43
+ break;
44
+ case HostActionTypes.INIT:
45
+ cleanUp();
46
+ cleanUp = dispatch(initializeBuilderConnection(builderProxy));
47
+ break;
48
+ case HostActionTypes.CLEAN_UP:
49
+ cleanUp();
50
+ cleanUp = () => {
51
+ };
52
+ break;
53
+ }
54
+ return next(action);
55
+ };
56
+ });
57
+ }
58
+ export {
59
+ builderAPIMiddleware
60
+ };
61
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/state/middleware/read-write/builder-api/index.ts"],"sourcesContent":["import { type Middleware } from '@reduxjs/toolkit'\n\nimport { type Action } from '../../../actions'\n\nimport { BuilderActionTypes } from '../../../builder-api/actions'\n\nimport { actionMiddleware } from '../../../toolkit'\n\nimport { type BuilderAPIProxy } from '../../../builder-api/proxy'\nimport { HostActionTypes } from '../../../host-api'\n\nimport { type State, type Dispatch } from '../../../read-write-state'\nimport { initializeBuilderConnection } from './initialize-connection'\n\nexport function builderAPIMiddleware(\n builderProxy: BuilderAPIProxy,\n): Middleware<Dispatch, State, Dispatch> {\n return actionMiddleware(({ dispatch }) => next => {\n if (typeof window === 'undefined') return (action: Action) => next(action)\n\n let cleanUp = () => {}\n return (action: Action) => {\n switch (action.type) {\n case BuilderActionTypes.CHANGE_ELEMENT_BOX_MODELS:\n case BuilderActionTypes.MOUNT_COMPONENT:\n case BuilderActionTypes.UNMOUNT_COMPONENT:\n case BuilderActionTypes.CHANGE_DOCUMENT_ELEMENT_SIZE:\n case BuilderActionTypes.MESSAGE_BUILDER_PROP_CONTROLLER:\n case BuilderActionTypes.HANDLE_WHEEL:\n case BuilderActionTypes.HANDLE_POINTER_MOVE:\n case BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE:\n case BuilderActionTypes.SET_LOCALE:\n case BuilderActionTypes.SET_BREAKPOINTS:\n case BuilderActionTypes.REGISTER_BUILDER_DOCUMENT:\n case BuilderActionTypes.UNREGISTER_BUILDER_DOCUMENT:\n case BuilderActionTypes.REGISTER_BUILDER_COMPONENT:\n case BuilderActionTypes.UNREGISTER_BUILDER_COMPONENT:\n builderProxy.execute(action)\n break\n\n case HostActionTypes.CHANGE_DOCUMENT_ELEMENT_SCROLL_TOP:\n window.document.documentElement.scrollTo({\n top: action.payload.scrollTop,\n behavior: 'instant',\n })\n break\n\n case HostActionTypes.SCROLL_DOCUMENT_ELEMENT:\n window.document.documentElement.scrollBy({\n top: action.payload.scrollTopDelta,\n behavior: 'instant',\n })\n break\n\n case HostActionTypes.SET_BUILDER_EDIT_MODE:\n window.getSelection()?.removeAllRanges()\n break\n\n case HostActionTypes.INIT:\n // dispatched by the parent window after establishing the connection\n // and in response to host's client-side navigation\n cleanUp() // cleanup existing connection setup, if any\n cleanUp = dispatch(initializeBuilderConnection(builderProxy))\n break\n\n case HostActionTypes.CLEAN_UP:\n // dispatched by the parent window on disconnect\n cleanUp()\n cleanUp = () => {}\n break\n }\n\n return next(action)\n }\n })\n}\n"],"mappings":"AAIA,SAAS,0BAA0B;AAEnC,SAAS,wBAAwB;AAGjC,SAAS,uBAAuB;AAGhC,SAAS,mCAAmC;AAErC,SAAS,qBACd,cACuC;AACvC,SAAO,iBAAiB,CAAC,EAAE,SAAS,MAAM,UAAQ;AAChD,QAAI,OAAO,WAAW;AAAa,aAAO,CAAC,WAAmB,KAAK,MAAM;AAEzE,QAAI,UAAU,MAAM;AAAA,IAAC;AACrB,WAAO,CAAC,WAAmB;AACzB,cAAQ,OAAO,MAAM;AAAA,QACnB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AAAA,QACxB,KAAK,mBAAmB;AACtB,uBAAa,QAAQ,MAAM;AAC3B;AAAA,QAEF,KAAK,gBAAgB;AACnB,iBAAO,SAAS,gBAAgB,SAAS;AAAA,YACvC,KAAK,OAAO,QAAQ;AAAA,YACpB,UAAU;AAAA,UACZ,CAAC;AACD;AAAA,QAEF,KAAK,gBAAgB;AACnB,iBAAO,SAAS,gBAAgB,SAAS;AAAA,YACvC,KAAK,OAAO,QAAQ;AAAA,YACpB,UAAU;AAAA,UACZ,CAAC;AACD;AAAA,QAEF,KAAK,gBAAgB;AACnB,iBAAO,aAAa,GAAG,gBAAgB;AACvC;AAAA,QAEF,KAAK,gBAAgB;AAGnB,kBAAQ;AACR,oBAAU,SAAS,4BAA4B,YAAY,CAAC;AAC5D;AAAA,QAEF,KAAK,gBAAgB;AAEnB,kBAAQ;AACR,oBAAU,MAAM;AAAA,UAAC;AACjB;AAAA,MACJ;AAEA,aAAO,KAAK,MAAM;AAAA,IACpB;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -0,0 +1,254 @@
1
+ import deepEqual from "../../../../utils/deepEqual";
2
+ import * as BoxModels from "../../../modules/read-write/box-models";
3
+ import * as BuilderEditMode from "../../../modules/builder-edit-mode";
4
+ import * as ReadOnly from "../../../actions/internal/read-only-actions";
5
+ import * as Builder from "../../../builder-api/actions";
6
+ import { serializeControls } from "../../../../builder";
7
+ import * as ReadOnlyState from "../../../read-only-state";
8
+ import {
9
+ getDocuments,
10
+ getMeasurables,
11
+ getBoxModels,
12
+ getBoxModel,
13
+ getElementImperativeHandlesContainingElement,
14
+ getPointer
15
+ } from "../../../read-write-state";
16
+ import { getElementSize } from "./element-size";
17
+ function measureElements() {
18
+ return (dispatch, getState) => {
19
+ const measurables = getMeasurables(getState());
20
+ const currentBoxModels = getBoxModels(getState());
21
+ const measuredBoxModels = /* @__PURE__ */ new Map();
22
+ measurables.forEach((documentMeasurables, documentKey) => {
23
+ const measuredDocumentBoxModels = /* @__PURE__ */ new Map();
24
+ documentMeasurables.forEach((measurable, elementKey) => {
25
+ const boxModel = BoxModels.measure(measurable);
26
+ if (boxModel != null)
27
+ measuredDocumentBoxModels.set(elementKey, boxModel);
28
+ });
29
+ if (measuredDocumentBoxModels.size > 0) {
30
+ measuredBoxModels.set(documentKey, measuredDocumentBoxModels);
31
+ }
32
+ });
33
+ const changedBoxModels = /* @__PURE__ */ new Map();
34
+ currentBoxModels.forEach((currentDocumentBoxModels, documentKey) => {
35
+ const changedDocumentBoxModels = /* @__PURE__ */ new Map();
36
+ currentDocumentBoxModels.forEach((_boxModel, elementKey) => {
37
+ if (!measuredBoxModels.get(documentKey)?.has(elementKey)) {
38
+ changedDocumentBoxModels.set(elementKey, null);
39
+ }
40
+ if (changedDocumentBoxModels.size > 0) {
41
+ changedBoxModels.set(documentKey, changedDocumentBoxModels);
42
+ }
43
+ });
44
+ });
45
+ measuredBoxModels.forEach((measuredDocumentBoxModels, documentKey) => {
46
+ const changedDocumentBoxModels = /* @__PURE__ */ new Map();
47
+ measuredDocumentBoxModels.forEach((measuredBoxModel, elementKey) => {
48
+ const currentBoxModel = getBoxModel(getState(), documentKey, elementKey);
49
+ if (currentBoxModel == null || !deepEqual(currentBoxModel, measuredBoxModel)) {
50
+ changedDocumentBoxModels.set(elementKey, measuredBoxModel);
51
+ }
52
+ });
53
+ if (changedDocumentBoxModels.size > 0) {
54
+ changedBoxModels.set(documentKey, changedDocumentBoxModels);
55
+ }
56
+ });
57
+ if (changedBoxModels.size > 0)
58
+ dispatch(Builder.changeElementBoxModels(changedBoxModels));
59
+ };
60
+ }
61
+ function startMeasuringElements() {
62
+ return (dispatch) => {
63
+ let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
64
+ return () => {
65
+ cancelAnimationFrame(animationFrameHandle);
66
+ };
67
+ function handleAnimationFrameRequest() {
68
+ dispatch(measureElements());
69
+ animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
70
+ }
71
+ };
72
+ }
73
+ function lockDocumentScroll() {
74
+ return (dispatch) => {
75
+ const lastDocumentOverflow = window.document.documentElement.style.overflow;
76
+ window.document.documentElement.style.overflow = "hidden";
77
+ window.document.documentElement.addEventListener("wheel", handleWheelEvent);
78
+ return () => {
79
+ window.document.documentElement.style.overflow = lastDocumentOverflow;
80
+ window.document.documentElement.removeEventListener("wheel", handleWheelEvent);
81
+ };
82
+ function handleWheelEvent({ deltaX, deltaY }) {
83
+ dispatch(Builder.handleWheel({ deltaX, deltaY }));
84
+ }
85
+ };
86
+ }
87
+ function startHandlingPointerMoveEvent() {
88
+ return (dispatch) => {
89
+ window.document.documentElement.addEventListener("pointermove", handlePointerMoveEvent);
90
+ return () => {
91
+ window.document.documentElement.removeEventListener("pointermove", handlePointerMoveEvent);
92
+ };
93
+ function handlePointerMoveEvent({ clientX, clientY }) {
94
+ dispatch(Builder.handlePointerMove({ clientX, clientY }));
95
+ }
96
+ };
97
+ }
98
+ function startHandlingFocusEvents() {
99
+ return (_dispatch, getState) => {
100
+ window.addEventListener("focusin", handleFocusIn);
101
+ window.addEventListener("focusout", handleFocusOut);
102
+ return () => {
103
+ window.removeEventListener("focusin", handleFocusIn);
104
+ window.removeEventListener("focusout", handleFocusOut);
105
+ };
106
+ function handleFocusIn(event) {
107
+ if (ReadOnlyState.getBuilderEditMode(getState()) === BuilderEditMode.BuilderEditMode.INTERACT) {
108
+ return;
109
+ }
110
+ if (!(event.target instanceof window.HTMLElement) || !event.target.isContentEditable) {
111
+ window.parent.focus();
112
+ }
113
+ }
114
+ function handleFocusOut(event) {
115
+ if (ReadOnlyState.getBuilderEditMode(getState()) === BuilderEditMode.BuilderEditMode.INTERACT) {
116
+ return;
117
+ }
118
+ if (!(event.relatedTarget instanceof window.HTMLElement) || !event.relatedTarget.isContentEditable) {
119
+ window.parent.focus();
120
+ }
121
+ }
122
+ };
123
+ }
124
+ function startMeasuringDocumentElement() {
125
+ return (dispatch) => {
126
+ let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
127
+ let lastSize;
128
+ return () => {
129
+ cancelAnimationFrame(animationFrameHandle);
130
+ };
131
+ function handleAnimationFrameRequest() {
132
+ const nextSize = getElementSize(window.document.documentElement);
133
+ if (!deepEqual(lastSize, nextSize)) {
134
+ lastSize = nextSize;
135
+ dispatch(Builder.changeDocumentElementSize(nextSize));
136
+ }
137
+ animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
138
+ }
139
+ };
140
+ }
141
+ function elementKeysFromElementFromPoint(elementFromPoint) {
142
+ return (_dispatch, getState) => {
143
+ if (elementFromPoint == null)
144
+ return null;
145
+ const elementImperativeHandles = getElementImperativeHandlesContainingElement(
146
+ getState(),
147
+ elementFromPoint
148
+ );
149
+ const ascendingDepthDocumentKeys = ReadOnlyState.getDocumentKeysSortedByDepth(getState());
150
+ const descendingDepthDocumentKeys = ascendingDepthDocumentKeys.slice().reverse();
151
+ let currentElement = elementFromPoint;
152
+ let keys = null;
153
+ while (currentElement != null) {
154
+ for (const documentKey of descendingDepthDocumentKeys) {
155
+ const byElementKey = elementImperativeHandles.get(documentKey);
156
+ if (byElementKey == null)
157
+ continue;
158
+ for (const [elementKey, elementImperativeHandle] of byElementKey) {
159
+ if (elementImperativeHandle.getDomNode() === currentElement) {
160
+ return { documentKey, elementKey };
161
+ }
162
+ }
163
+ }
164
+ currentElement = currentElement.parentElement;
165
+ }
166
+ return keys;
167
+ };
168
+ }
169
+ function startPollingElementFromPoint() {
170
+ return (dispatch, getState) => {
171
+ let lastElementFromPoint = null;
172
+ let animationFrameRequestId = requestAnimationFrame(handleAnimationFrameRequest);
173
+ return () => {
174
+ cancelAnimationFrame(animationFrameRequestId);
175
+ };
176
+ function handleAnimationFrameRequest() {
177
+ const pointer = getPointer(getState());
178
+ const elementFromPoint = pointer == null ? null : document.elementFromPoint(pointer.x, pointer.y);
179
+ if (elementFromPoint !== lastElementFromPoint) {
180
+ lastElementFromPoint = elementFromPoint;
181
+ const keys = dispatch(elementKeysFromElementFromPoint(elementFromPoint));
182
+ dispatch(Builder.elementFromPointChange(keys));
183
+ }
184
+ animationFrameRequestId = requestAnimationFrame(handleAnimationFrameRequest);
185
+ }
186
+ };
187
+ }
188
+ function registerBuilderComponents() {
189
+ return (dispatch, getState) => {
190
+ const state = getState();
191
+ const componentsMeta = ReadOnlyState.getComponentsMeta(state);
192
+ componentsMeta.forEach((meta, type) => {
193
+ const descriptors = ReadOnlyState.getComponentPropControllerDescriptors(state, type);
194
+ if (descriptors != null) {
195
+ const [serializedControls, transferables] = serializeControls(descriptors);
196
+ dispatch(
197
+ Builder.registerBuilderComponent({ type, meta, serializedControls }, transferables)
198
+ );
199
+ }
200
+ });
201
+ return () => {
202
+ componentsMeta.forEach((_, type) => {
203
+ dispatch(Builder.unregisterBuilderComponent({ type }));
204
+ });
205
+ };
206
+ };
207
+ }
208
+ function registerBuilderDocuments() {
209
+ return (dispatch, getState) => {
210
+ const documents = getDocuments(getState());
211
+ documents.forEach((document2) => {
212
+ dispatch(Builder.registerBuilderDocument(document2));
213
+ });
214
+ return () => {
215
+ documents.forEach((_document, documentKey) => {
216
+ dispatch(Builder.unregisterBuilderDocument(documentKey));
217
+ });
218
+ };
219
+ };
220
+ }
221
+ function initializeBuilderConnection(builderProxy) {
222
+ return (dispatch, getState) => {
223
+ const unregisterBuilderDocuments = dispatch(registerBuilderDocuments());
224
+ const stopMeasuringElements = dispatch(startMeasuringElements());
225
+ const stopMeasuringDocumentElement = dispatch(startMeasuringDocumentElement());
226
+ const stopHandlingFocusEvent = dispatch(startHandlingFocusEvents());
227
+ const unlockDocumentScroll = dispatch(lockDocumentScroll());
228
+ const stopHandlingPointerMoveEvent = dispatch(startHandlingPointerMoveEvent());
229
+ const stopPollingElementFromPoint = dispatch(startPollingElementFromPoint());
230
+ const unregisterBuilderComponents = dispatch(registerBuilderComponents());
231
+ const breakpoints = ReadOnlyState.getBreakpoints(getState());
232
+ dispatch(Builder.setBreakpoints(breakpoints));
233
+ const locale = ReadOnlyState.getLocale(getState());
234
+ if (locale != null)
235
+ dispatch(Builder.setLocale(new Intl.Locale(locale)));
236
+ dispatch(ReadOnly.setIsInBuilder(true));
237
+ builderProxy.dispatchBuffered();
238
+ return () => {
239
+ unregisterBuilderDocuments();
240
+ stopMeasuringElements();
241
+ stopMeasuringDocumentElement();
242
+ stopHandlingFocusEvent();
243
+ unlockDocumentScroll();
244
+ stopHandlingPointerMoveEvent();
245
+ stopPollingElementFromPoint();
246
+ unregisterBuilderComponents();
247
+ dispatch(ReadOnly.setIsInBuilder(false));
248
+ };
249
+ };
250
+ }
251
+ export {
252
+ initializeBuilderConnection
253
+ };
254
+ //# sourceMappingURL=initialize-connection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/state/middleware/read-write/builder-api/initialize-connection.ts"],"sourcesContent":["import { type ThunkAction } from '@reduxjs/toolkit'\n\nimport deepEqual from '../../../../utils/deepEqual'\n\nimport * as BoxModels from '../../../modules/read-write/box-models'\nimport * as BuilderEditMode from '../../../modules/builder-edit-mode'\n\nimport { type Action } from '../../../actions'\n\nimport * as ReadOnly from '../../../actions/internal/read-only-actions'\nimport * as Builder from '../../../builder-api/actions'\n\nimport { serializeControls } from '../../../../builder'\nimport { type BuilderAPIProxy } from '../../../builder-api/proxy'\n\nimport * as ReadOnlyState from '../../../read-only-state'\nimport {\n type State,\n getDocuments,\n getMeasurables,\n getBoxModels,\n getBoxModel,\n getElementImperativeHandlesContainingElement,\n getPointer,\n} from '../../../read-write-state'\n\nimport { type ElementSize, getElementSize } from './element-size'\n\nfunction measureElements(): ThunkAction<void, State, unknown, Action> {\n return (dispatch, getState) => {\n const measurables = getMeasurables(getState())\n const currentBoxModels = getBoxModels(getState())\n const measuredBoxModels = new Map<string, Map<string, BoxModels.BoxDisplayModel>>()\n\n measurables.forEach((documentMeasurables, documentKey) => {\n const measuredDocumentBoxModels = new Map<string, BoxModels.BoxDisplayModel>()\n\n documentMeasurables.forEach((measurable, elementKey) => {\n const boxModel = BoxModels.measure(measurable)\n\n if (boxModel != null) measuredDocumentBoxModels.set(elementKey, boxModel)\n })\n\n if (measuredDocumentBoxModels.size > 0) {\n measuredBoxModels.set(documentKey, measuredDocumentBoxModels)\n }\n })\n\n const changedBoxModels = new Map<string, Map<string, BoxModels.BoxDisplayModel | null>>()\n\n currentBoxModels.forEach((currentDocumentBoxModels, documentKey) => {\n const changedDocumentBoxModels = new Map<string, BoxModels.BoxDisplayModel | null>()\n\n currentDocumentBoxModels.forEach((_boxModel, elementKey) => {\n if (!measuredBoxModels.get(documentKey)?.has(elementKey)) {\n changedDocumentBoxModels.set(elementKey, null)\n }\n\n if (changedDocumentBoxModels.size > 0) {\n changedBoxModels.set(documentKey, changedDocumentBoxModels)\n }\n })\n })\n\n measuredBoxModels.forEach((measuredDocumentBoxModels, documentKey) => {\n const changedDocumentBoxModels = new Map<string, BoxModels.BoxDisplayModel | null>()\n\n measuredDocumentBoxModels.forEach((measuredBoxModel, elementKey) => {\n const currentBoxModel = getBoxModel(getState(), documentKey, elementKey)\n\n if (currentBoxModel == null || !deepEqual(currentBoxModel, measuredBoxModel)) {\n changedDocumentBoxModels.set(elementKey, measuredBoxModel)\n }\n })\n\n if (changedDocumentBoxModels.size > 0) {\n changedBoxModels.set(documentKey, changedDocumentBoxModels)\n }\n })\n\n if (changedBoxModels.size > 0) dispatch(Builder.changeElementBoxModels(changedBoxModels))\n }\n}\n\nfunction startMeasuringElements(): ThunkAction<() => void, State, unknown, Action> {\n return dispatch => {\n let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n\n return () => {\n cancelAnimationFrame(animationFrameHandle)\n }\n\n function handleAnimationFrameRequest() {\n dispatch(measureElements())\n\n animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n }\n }\n}\n\nfunction lockDocumentScroll(): ThunkAction<() => void, State, unknown, Action> {\n return dispatch => {\n const lastDocumentOverflow = window.document.documentElement.style.overflow\n window.document.documentElement.style.overflow = 'hidden'\n\n window.document.documentElement.addEventListener('wheel', handleWheelEvent)\n\n return () => {\n window.document.documentElement.style.overflow = lastDocumentOverflow\n window.document.documentElement.removeEventListener('wheel', handleWheelEvent)\n }\n\n function handleWheelEvent({ deltaX, deltaY }: WheelEvent) {\n dispatch(Builder.handleWheel({ deltaX, deltaY }))\n }\n }\n}\n\nfunction startHandlingPointerMoveEvent(): ThunkAction<() => void, State, unknown, Action> {\n return dispatch => {\n window.document.documentElement.addEventListener('pointermove', handlePointerMoveEvent)\n\n return () => {\n window.document.documentElement.removeEventListener('pointermove', handlePointerMoveEvent)\n }\n\n function handlePointerMoveEvent({ clientX, clientY }: PointerEvent) {\n dispatch(Builder.handlePointerMove({ clientX, clientY }))\n }\n }\n}\n\nfunction startHandlingFocusEvents(): ThunkAction<() => void, State, unknown, Action> {\n return (_dispatch, getState) => {\n window.addEventListener('focusin', handleFocusIn)\n window.addEventListener('focusout', handleFocusOut)\n\n return () => {\n window.removeEventListener('focusin', handleFocusIn)\n window.removeEventListener('focusout', handleFocusOut)\n }\n\n function handleFocusIn(event: FocusEvent) {\n if (\n ReadOnlyState.getBuilderEditMode(getState()) === BuilderEditMode.BuilderEditMode.INTERACT\n ) {\n return\n }\n\n if (!(event.target instanceof window.HTMLElement) || !event.target.isContentEditable) {\n window.parent.focus()\n }\n }\n\n function handleFocusOut(event: FocusEvent) {\n if (\n ReadOnlyState.getBuilderEditMode(getState()) === BuilderEditMode.BuilderEditMode.INTERACT\n ) {\n return\n }\n\n if (\n !(event.relatedTarget instanceof window.HTMLElement) ||\n !event.relatedTarget.isContentEditable\n ) {\n window.parent.focus()\n }\n }\n }\n}\n\nfunction startMeasuringDocumentElement(): ThunkAction<() => void, unknown, unknown, Action> {\n return dispatch => {\n let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n let lastSize: ElementSize\n\n return () => {\n cancelAnimationFrame(animationFrameHandle)\n }\n\n function handleAnimationFrameRequest() {\n const nextSize = getElementSize(window.document.documentElement)\n\n if (!deepEqual(lastSize, nextSize)) {\n lastSize = nextSize\n\n dispatch(Builder.changeDocumentElementSize(nextSize))\n }\n\n animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest)\n }\n }\n}\n\nfunction elementKeysFromElementFromPoint(\n elementFromPoint: Element | null,\n): ThunkAction<{ documentKey: string; elementKey: string } | null, State, unknown, Action> {\n return (_dispatch, getState) => {\n if (elementFromPoint == null) return null\n\n const elementImperativeHandles = getElementImperativeHandlesContainingElement(\n getState(),\n elementFromPoint,\n )\n const ascendingDepthDocumentKeys = ReadOnlyState.getDocumentKeysSortedByDepth(getState())\n const descendingDepthDocumentKeys = ascendingDepthDocumentKeys.slice().reverse()\n\n let currentElement: Element | null = elementFromPoint\n let keys = null\n\n while (currentElement != null) {\n for (const documentKey of descendingDepthDocumentKeys) {\n const byElementKey = elementImperativeHandles.get(documentKey)\n\n if (byElementKey == null) continue\n\n for (const [elementKey, elementImperativeHandle] of byElementKey) {\n if (elementImperativeHandle.getDomNode() === currentElement) {\n return { documentKey, elementKey }\n }\n }\n }\n\n currentElement = currentElement.parentElement\n }\n\n return keys\n }\n}\n\nfunction startPollingElementFromPoint(): ThunkAction<() => void, State, unknown, Action> {\n return (dispatch, getState) => {\n let lastElementFromPoint: Element | null = null\n let animationFrameRequestId = requestAnimationFrame(handleAnimationFrameRequest)\n\n return () => {\n cancelAnimationFrame(animationFrameRequestId)\n }\n\n function handleAnimationFrameRequest() {\n const pointer = getPointer(getState())\n const elementFromPoint =\n pointer == null ? null : document.elementFromPoint(pointer.x, pointer.y)\n\n if (elementFromPoint !== lastElementFromPoint) {\n lastElementFromPoint = elementFromPoint\n\n const keys = dispatch(elementKeysFromElementFromPoint(elementFromPoint))\n\n dispatch(Builder.elementFromPointChange(keys))\n }\n\n animationFrameRequestId = requestAnimationFrame(handleAnimationFrameRequest)\n }\n }\n}\n\nfunction registerBuilderComponents(): ThunkAction<() => void, State, unknown, Action> {\n return (dispatch, getState) => {\n const state = getState()\n const componentsMeta = ReadOnlyState.getComponentsMeta(state)\n\n componentsMeta.forEach((meta, type) => {\n const descriptors = ReadOnlyState.getComponentPropControllerDescriptors(state, type)\n if (descriptors != null) {\n const [serializedControls, transferables] = serializeControls(descriptors)\n dispatch(\n Builder.registerBuilderComponent({ type, meta, serializedControls }, transferables),\n )\n }\n })\n\n return () => {\n componentsMeta.forEach((_, type) => {\n dispatch(Builder.unregisterBuilderComponent({ type }))\n })\n }\n }\n}\n\nfunction registerBuilderDocuments(): ThunkAction<() => void, State, unknown, Action> {\n return (dispatch, getState) => {\n const documents = getDocuments(getState())\n\n documents.forEach(document => {\n dispatch(Builder.registerBuilderDocument(document))\n })\n\n return () => {\n documents.forEach((_document, documentKey) => {\n dispatch(Builder.unregisterBuilderDocument(documentKey))\n })\n }\n }\n}\n\nexport function initializeBuilderConnection(\n builderProxy: BuilderAPIProxy,\n): ThunkAction<() => void, State, unknown, Action> {\n return (dispatch, getState) => {\n const unregisterBuilderDocuments = dispatch(registerBuilderDocuments())\n const stopMeasuringElements = dispatch(startMeasuringElements())\n const stopMeasuringDocumentElement = dispatch(startMeasuringDocumentElement())\n const stopHandlingFocusEvent = dispatch(startHandlingFocusEvents())\n const unlockDocumentScroll = dispatch(lockDocumentScroll())\n const stopHandlingPointerMoveEvent = dispatch(startHandlingPointerMoveEvent())\n const stopPollingElementFromPoint = dispatch(startPollingElementFromPoint())\n const unregisterBuilderComponents = dispatch(registerBuilderComponents())\n\n const breakpoints = ReadOnlyState.getBreakpoints(getState())\n dispatch(Builder.setBreakpoints(breakpoints))\n\n const locale = ReadOnlyState.getLocale(getState())\n if (locale != null) dispatch(Builder.setLocale(new Intl.Locale(locale)))\n\n dispatch(ReadOnly.setIsInBuilder(true))\n builderProxy.dispatchBuffered()\n\n return () => {\n unregisterBuilderDocuments()\n stopMeasuringElements()\n stopMeasuringDocumentElement()\n stopHandlingFocusEvent()\n unlockDocumentScroll()\n stopHandlingPointerMoveEvent()\n stopPollingElementFromPoint()\n unregisterBuilderComponents()\n dispatch(ReadOnly.setIsInBuilder(false))\n }\n }\n}\n"],"mappings":"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","names":["document"]}
@@ -0,0 +1,16 @@
1
+ import { updateElementTreeMiddleware } from "./update-element-tree";
2
+ import { measureBoxModelsMiddleware } from "./measure-box-models";
3
+ import { builderAPIMiddleware } from "./builder-api";
4
+ import { propControllerHandlesMiddleware } from "./prop-controller-handles";
5
+ function createReadWriteMiddleware({ builderProxy }) {
6
+ return [
7
+ updateElementTreeMiddleware(),
8
+ measureBoxModelsMiddleware(),
9
+ builderAPIMiddleware(builderProxy),
10
+ propControllerHandlesMiddleware()
11
+ ];
12
+ }
13
+ export {
14
+ createReadWriteMiddleware
15
+ };
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/state/middleware/read-write/index.ts"],"sourcesContent":["import { type BuilderAPIProxy } from '../../builder-api/proxy'\n\nimport { updateElementTreeMiddleware } from './update-element-tree'\nimport { measureBoxModelsMiddleware } from './measure-box-models'\nimport { builderAPIMiddleware } from './builder-api'\nimport { propControllerHandlesMiddleware } from './prop-controller-handles'\n\nexport function createReadWriteMiddleware({ builderProxy }: { builderProxy: BuilderAPIProxy }) {\n return [\n updateElementTreeMiddleware(),\n measureBoxModelsMiddleware(),\n builderAPIMiddleware(builderProxy),\n propControllerHandlesMiddleware(),\n ]\n}\n"],"mappings":"AAEA,SAAS,mCAAmC;AAC5C,SAAS,kCAAkC;AAC3C,SAAS,4BAA4B;AACrC,SAAS,uCAAuC;AAEzC,SAAS,0BAA0B,EAAE,aAAa,GAAsC;AAC7F,SAAO;AAAA,IACL,4BAA4B;AAAA,IAC5B,2BAA2B;AAAA,IAC3B,qBAAqB,YAAY;AAAA,IACjC,gCAAgC;AAAA,EAClC;AACF;","names":[]}
@@ -0,0 +1,37 @@
1
+ import * as BoxModels from "../../modules/read-write/box-models";
2
+ import { ReadOnlyActionTypes } from "../../actions/internal/read-only-actions";
3
+ import * as ReadWriteActions from "../../actions/internal/read-write-actions";
4
+ import { actionMiddleware } from "../../toolkit";
5
+ function measureBoxModelsMiddleware() {
6
+ return actionMiddleware(({ dispatch }) => (next) => {
7
+ return (action) => {
8
+ switch (action.type) {
9
+ case ReadOnlyActionTypes.REGISTER_COMPONENT_HANDLE: {
10
+ if (BoxModels.isMeasurable(action.payload.componentHandle)) {
11
+ dispatch(
12
+ ReadWriteActions.registerMeasurable(
13
+ action.payload.documentKey,
14
+ action.payload.elementKey,
15
+ action.payload.componentHandle
16
+ )
17
+ );
18
+ }
19
+ break;
20
+ }
21
+ case ReadOnlyActionTypes.UNREGISTER_COMPONENT_HANDLE:
22
+ dispatch(
23
+ ReadWriteActions.unregisterMeasurable(
24
+ action.payload.documentKey,
25
+ action.payload.elementKey
26
+ )
27
+ );
28
+ break;
29
+ }
30
+ return next(action);
31
+ };
32
+ });
33
+ }
34
+ export {
35
+ measureBoxModelsMiddleware
36
+ };
37
+ //# sourceMappingURL=measure-box-models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/state/middleware/read-write/measure-box-models.ts"],"sourcesContent":["import { type Middleware } from '@reduxjs/toolkit'\n\nimport * as BoxModels from '../../modules/read-write/box-models'\nimport { type Action } from '../../actions'\n\nimport { ReadOnlyActionTypes } from '../../actions/internal/read-only-actions'\nimport * as ReadWriteActions from '../../actions/internal/read-write-actions'\n\nimport { actionMiddleware } from '../../toolkit'\n\nimport { type State, type Dispatch } from '../../read-write-state'\n\nexport function measureBoxModelsMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return actionMiddleware(({ dispatch }) => next => {\n return (action: Action) => {\n switch (action.type) {\n case ReadOnlyActionTypes.REGISTER_COMPONENT_HANDLE: {\n if (BoxModels.isMeasurable(action.payload.componentHandle)) {\n dispatch(\n ReadWriteActions.registerMeasurable(\n action.payload.documentKey,\n action.payload.elementKey,\n action.payload.componentHandle,\n ),\n )\n }\n\n break\n }\n\n case ReadOnlyActionTypes.UNREGISTER_COMPONENT_HANDLE:\n dispatch(\n ReadWriteActions.unregisterMeasurable(\n action.payload.documentKey,\n action.payload.elementKey,\n ),\n )\n break\n }\n\n return next(action)\n }\n })\n}\n"],"mappings":"AAEA,YAAY,eAAe;AAG3B,SAAS,2BAA2B;AACpC,YAAY,sBAAsB;AAElC,SAAS,wBAAwB;AAI1B,SAAS,6BAAoE;AAClF,SAAO,iBAAiB,CAAC,EAAE,SAAS,MAAM,UAAQ;AAChD,WAAO,CAAC,WAAmB;AACzB,cAAQ,OAAO,MAAM;AAAA,QACnB,KAAK,oBAAoB,2BAA2B;AAClD,cAAI,UAAU,aAAa,OAAO,QAAQ,eAAe,GAAG;AAC1D;AAAA,cACE,iBAAiB;AAAA,gBACf,OAAO,QAAQ;AAAA,gBACf,OAAO,QAAQ;AAAA,gBACf,OAAO,QAAQ;AAAA,cACjB;AAAA,YACF;AAAA,UACF;AAEA;AAAA,QACF;AAAA,QAEA,KAAK,oBAAoB;AACvB;AAAA,YACE,iBAAiB;AAAA,cACf,OAAO,QAAQ;AAAA,cACf,OAAO,QAAQ;AAAA,YACjB;AAAA,UACF;AACA;AAAA,MACJ;AAEA,aAAO,KAAK,MAAM;AAAA,IACpB;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -0,0 +1,80 @@
1
+ import * as PropControllerHandles from "../../modules/prop-controller-handles";
2
+ import * as Builder from "../../builder-api/actions";
3
+ import { ReadOnlyActionTypes } from "../../actions/internal/read-only-actions";
4
+ import * as ReadOnly from "../../actions/internal/read-only-actions";
5
+ import { actionMiddleware } from "../../toolkit";
6
+ import { createPropController } from "../../../prop-controllers/instances";
7
+ import { HostActionTypes } from "../../host-api";
8
+ import * as ReadOnlyState from "../../read-only-state";
9
+ function createAndRegisterPropControllers(documentKey, elementKey) {
10
+ return (dispatch, getState) => {
11
+ const descriptors = ReadOnlyState.getElementPropControllerDescriptors(
12
+ getState(),
13
+ documentKey,
14
+ elementKey
15
+ );
16
+ if (descriptors == null)
17
+ return null;
18
+ const propControllers = Object.entries(descriptors).reduce(
19
+ (acc, [propName, descriptor]) => {
20
+ const propController = createPropController(
21
+ descriptor,
22
+ (message) => dispatch(
23
+ Builder.messageBuilderPropController(documentKey, elementKey, propName, message)
24
+ )
25
+ );
26
+ return { ...acc, [propName]: propController };
27
+ },
28
+ {}
29
+ );
30
+ dispatch(ReadOnly.registerPropControllers(documentKey, elementKey, propControllers));
31
+ return propControllers;
32
+ };
33
+ }
34
+ function propControllerHandlesMiddleware() {
35
+ return actionMiddleware(({ dispatch, getState }) => (next) => {
36
+ return (action) => {
37
+ switch (action.type) {
38
+ case ReadOnlyActionTypes.REGISTER_COMPONENT_HANDLE: {
39
+ const { documentKey, elementKey, componentHandle } = action.payload;
40
+ const element = ReadOnlyState.getElement(getState(), documentKey, elementKey);
41
+ const propControllers = dispatch(
42
+ createAndRegisterPropControllers(documentKey, elementKey)
43
+ );
44
+ if (element != null && !ReadOnlyState.isElementReference(element) && PropControllerHandles.isPropControllersHandle(componentHandle)) {
45
+ dispatch(
46
+ ReadOnly.registerPropControllersHandle(documentKey, elementKey, componentHandle)
47
+ );
48
+ componentHandle.setPropControllers(propControllers);
49
+ }
50
+ break;
51
+ }
52
+ case ReadOnlyActionTypes.UNREGISTER_COMPONENT_HANDLE: {
53
+ const { documentKey, elementKey } = action.payload;
54
+ const handle = ReadOnlyState.getPropControllersHandle(getState(), {
55
+ documentKey,
56
+ elementKey
57
+ });
58
+ handle?.setPropControllers(null);
59
+ dispatch(ReadOnly.unregisterPropControllers(documentKey, elementKey));
60
+ break;
61
+ }
62
+ case HostActionTypes.MESSAGE_HOST_PROP_CONTROLLER: {
63
+ const { documentKey, elementKey, propName, message } = action.payload;
64
+ const propController = ReadOnlyState.getPropController(getState(), {
65
+ documentKey,
66
+ elementKey,
67
+ propName
68
+ });
69
+ if (propController)
70
+ propController.recv(message);
71
+ }
72
+ }
73
+ return next(action);
74
+ };
75
+ });
76
+ }
77
+ export {
78
+ propControllerHandlesMiddleware
79
+ };
80
+ //# sourceMappingURL=prop-controller-handles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/state/middleware/read-write/prop-controller-handles.ts"],"sourcesContent":["import { type Middleware, type ThunkAction } from '@reduxjs/toolkit'\n\nimport { ControlInstance } from '@makeswift/controls'\n\nimport * as PropControllerHandles from '../../modules/prop-controller-handles'\n\nimport { type Action } from '../../actions'\n\nimport * as Builder from '../../builder-api/actions'\n\nimport { ReadOnlyActionTypes } from '../../actions/internal/read-only-actions'\nimport * as ReadOnly from '../../actions/internal/read-only-actions'\n\nimport { actionMiddleware } from '../../toolkit'\n\nimport { createPropController } from '../../../prop-controllers/instances'\nimport { HostActionTypes } from '../../host-api'\n\nimport * as ReadOnlyState from '../../read-only-state'\nimport { type State, type Dispatch } from '../../read-write-state'\n\nfunction createAndRegisterPropControllers(\n documentKey: string,\n elementKey: string,\n): ThunkAction<Record<string, ControlInstance> | null, State, unknown, Action> {\n return (dispatch, getState) => {\n const descriptors = ReadOnlyState.getElementPropControllerDescriptors(\n getState(),\n documentKey,\n elementKey,\n )\n\n if (descriptors == null) return null\n\n const propControllers = Object.entries(descriptors).reduce(\n (acc, [propName, descriptor]) => {\n const propController = createPropController(descriptor, message =>\n dispatch(\n Builder.messageBuilderPropController(documentKey, elementKey, propName, message),\n ),\n ) as ControlInstance\n\n return { ...acc, [propName]: propController }\n },\n {} as Record<string, ControlInstance>,\n )\n\n dispatch(ReadOnly.registerPropControllers(documentKey, elementKey, propControllers))\n\n return propControllers\n }\n}\n\nexport function propControllerHandlesMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return actionMiddleware(({ dispatch, getState }) => next => {\n return (action: Action) => {\n switch (action.type) {\n case ReadOnlyActionTypes.REGISTER_COMPONENT_HANDLE: {\n const { documentKey, elementKey, componentHandle } = action.payload\n const element = ReadOnlyState.getElement(getState(), documentKey, elementKey)\n const propControllers = dispatch(\n createAndRegisterPropControllers(documentKey, elementKey),\n )\n\n if (\n element != null &&\n !ReadOnlyState.isElementReference(element) &&\n PropControllerHandles.isPropControllersHandle(componentHandle)\n ) {\n dispatch(\n ReadOnly.registerPropControllersHandle(documentKey, elementKey, componentHandle),\n )\n componentHandle.setPropControllers(propControllers)\n }\n\n break\n }\n\n case ReadOnlyActionTypes.UNREGISTER_COMPONENT_HANDLE: {\n const { documentKey, elementKey } = action.payload\n const handle = ReadOnlyState.getPropControllersHandle(getState(), {\n documentKey,\n elementKey,\n })\n\n handle?.setPropControllers(null)\n\n dispatch(ReadOnly.unregisterPropControllers(documentKey, elementKey))\n\n break\n }\n\n case HostActionTypes.MESSAGE_HOST_PROP_CONTROLLER: {\n const { documentKey, elementKey, propName, message } = action.payload\n const propController = ReadOnlyState.getPropController(getState(), {\n documentKey,\n elementKey,\n propName,\n })\n\n if (propController) propController.recv(message)\n }\n }\n\n return next(action)\n }\n })\n}\n"],"mappings":"AAIA,YAAY,2BAA2B;AAIvC,YAAY,aAAa;AAEzB,SAAS,2BAA2B;AACpC,YAAY,cAAc;AAE1B,SAAS,wBAAwB;AAEjC,SAAS,4BAA4B;AACrC,SAAS,uBAAuB;AAEhC,YAAY,mBAAmB;AAG/B,SAAS,iCACP,aACA,YAC6E;AAC7E,SAAO,CAAC,UAAU,aAAa;AAC7B,UAAM,cAAc,cAAc;AAAA,MAChC,SAAS;AAAA,MACT;AAAA,MACA;AAAA,IACF;AAEA,QAAI,eAAe;AAAM,aAAO;AAEhC,UAAM,kBAAkB,OAAO,QAAQ,WAAW,EAAE;AAAA,MAClD,CAAC,KAAK,CAAC,UAAU,UAAU,MAAM;AAC/B,cAAM,iBAAiB;AAAA,UAAqB;AAAA,UAAY,aACtD;AAAA,YACE,QAAQ,6BAA6B,aAAa,YAAY,UAAU,OAAO;AAAA,UACjF;AAAA,QACF;AAEA,eAAO,EAAE,GAAG,KAAK,CAAC,QAAQ,GAAG,eAAe;AAAA,MAC9C;AAAA,MACA,CAAC;AAAA,IACH;AAEA,aAAS,SAAS,wBAAwB,aAAa,YAAY,eAAe,CAAC;AAEnF,WAAO;AAAA,EACT;AACF;AAEO,SAAS,kCAAyE;AACvF,SAAO,iBAAiB,CAAC,EAAE,UAAU,SAAS,MAAM,UAAQ;AAC1D,WAAO,CAAC,WAAmB;AACzB,cAAQ,OAAO,MAAM;AAAA,QACnB,KAAK,oBAAoB,2BAA2B;AAClD,gBAAM,EAAE,aAAa,YAAY,gBAAgB,IAAI,OAAO;AAC5D,gBAAM,UAAU,cAAc,WAAW,SAAS,GAAG,aAAa,UAAU;AAC5E,gBAAM,kBAAkB;AAAA,YACtB,iCAAiC,aAAa,UAAU;AAAA,UAC1D;AAEA,cACE,WAAW,QACX,CAAC,cAAc,mBAAmB,OAAO,KACzC,sBAAsB,wBAAwB,eAAe,GAC7D;AACA;AAAA,cACE,SAAS,8BAA8B,aAAa,YAAY,eAAe;AAAA,YACjF;AACA,4BAAgB,mBAAmB,eAAe;AAAA,UACpD;AAEA;AAAA,QACF;AAAA,QAEA,KAAK,oBAAoB,6BAA6B;AACpD,gBAAM,EAAE,aAAa,WAAW,IAAI,OAAO;AAC3C,gBAAM,SAAS,cAAc,yBAAyB,SAAS,GAAG;AAAA,YAChE;AAAA,YACA;AAAA,UACF,CAAC;AAED,kBAAQ,mBAAmB,IAAI;AAE/B,mBAAS,SAAS,0BAA0B,aAAa,UAAU,CAAC;AAEpE;AAAA,QACF;AAAA,QAEA,KAAK,gBAAgB,8BAA8B;AACjD,gBAAM,EAAE,aAAa,YAAY,UAAU,QAAQ,IAAI,OAAO;AAC9D,gBAAM,iBAAiB,cAAc,kBAAkB,SAAS,GAAG;AAAA,YACjE;AAAA,YACA;AAAA,YACA;AAAA,UACF,CAAC;AAED,cAAI;AAAgB,2BAAe,KAAK,OAAO;AAAA,QACjD;AAAA,MACF;AAEA,aAAO,KAAK,MAAM;AAAA,IACpB;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -0,0 +1,35 @@
1
+ import { HostActionTypes } from "../../host-api";
2
+ import { changeElementTree } from "../../actions/internal/read-write-actions";
3
+ import { actionMiddleware } from "../../toolkit";
4
+ import { getDocument } from "../../read-write-state";
5
+ import { getPropControllerDescriptors } from "../../read-only-state";
6
+ function updateElementTreeMiddleware() {
7
+ return actionMiddleware(({ dispatch, getState }) => (next) => {
8
+ return (action) => {
9
+ switch (action.type) {
10
+ case HostActionTypes.CHANGE_DOCUMENT: {
11
+ const { documentKey, operation } = action.payload;
12
+ const oldDocument = getDocument(getState(), documentKey);
13
+ const result = next(action);
14
+ const newDocument = getDocument(getState(), documentKey);
15
+ if (oldDocument != null && newDocument != null && newDocument !== oldDocument) {
16
+ dispatch(
17
+ changeElementTree({
18
+ oldDocument,
19
+ newDocument,
20
+ descriptors: getPropControllerDescriptors(getState()),
21
+ operation
22
+ })
23
+ );
24
+ }
25
+ return result;
26
+ }
27
+ }
28
+ return next(action);
29
+ };
30
+ });
31
+ }
32
+ export {
33
+ updateElementTreeMiddleware
34
+ };
35
+ //# sourceMappingURL=update-element-tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/state/middleware/read-write/update-element-tree.ts"],"sourcesContent":["import { type Middleware } from '@reduxjs/toolkit'\n\nimport { HostActionTypes } from '../../host-api'\nimport { changeElementTree } from '../../actions/internal/read-write-actions'\n\nimport { actionMiddleware } from '../../toolkit'\n\nimport { type Dispatch, type State, getDocument } from '../../read-write-state'\nimport { getPropControllerDescriptors } from '../../read-only-state'\n\nexport function updateElementTreeMiddleware(): Middleware<Dispatch, State, Dispatch> {\n return actionMiddleware(({ dispatch, getState }) => next => {\n return action => {\n switch (action.type) {\n case HostActionTypes.CHANGE_DOCUMENT: {\n const { documentKey, operation } = action.payload\n\n const oldDocument = getDocument(getState(), documentKey)\n const result = next(action)\n const newDocument = getDocument(getState(), documentKey)\n\n if (oldDocument != null && newDocument != null && newDocument !== oldDocument) {\n dispatch(\n changeElementTree({\n oldDocument,\n newDocument,\n descriptors: getPropControllerDescriptors(getState()),\n operation,\n }),\n )\n }\n\n return result\n }\n }\n\n return next(action)\n }\n })\n}\n"],"mappings":"AAEA,SAAS,uBAAuB;AAChC,SAAS,yBAAyB;AAElC,SAAS,wBAAwB;AAEjC,SAAoC,mBAAmB;AACvD,SAAS,oCAAoC;AAEtC,SAAS,8BAAqE;AACnF,SAAO,iBAAiB,CAAC,EAAE,UAAU,SAAS,MAAM,UAAQ;AAC1D,WAAO,YAAU;AACf,cAAQ,OAAO,MAAM;AAAA,QACnB,KAAK,gBAAgB,iBAAiB;AACpC,gBAAM,EAAE,aAAa,UAAU,IAAI,OAAO;AAE1C,gBAAM,cAAc,YAAY,SAAS,GAAG,WAAW;AACvD,gBAAM,SAAS,KAAK,MAAM;AAC1B,gBAAM,cAAc,YAAY,SAAS,GAAG,WAAW;AAEvD,cAAI,eAAe,QAAQ,eAAe,QAAQ,gBAAgB,aAAa;AAC7E;AAAA,cACE,kBAAkB;AAAA,gBAChB;AAAA,gBACA;AAAA,gBACA,aAAa,6BAA6B,SAAS,CAAC;AAAA,gBACpD;AAAA,cACF,CAAC;AAAA,YACH;AAAA,UACF;AAEA,iBAAO;AAAA,QACT;AAAA,MACF;AAEA,aAAO,KAAK,MAAM;AAAA,IACpB;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -0,0 +1,48 @@
1
+ import { updateClientBreakpoint } from "../actions/internal/read-only-actions";
2
+ import { getDeviceQueries } from "../modules/breakpoints";
3
+ import { getBreakpoints } from "../read-only-state";
4
+ function breakpointWatchMixin({
5
+ dispatch,
6
+ getState,
7
+ subscribe: storeSubscribe
8
+ }) {
9
+ let mediaQueryUnsubscribes = [];
10
+ let storeUnsubscribe = null;
11
+ let watchedBreakpoints = [];
12
+ const startWatch = (breakpoints) => {
13
+ mediaQueryUnsubscribes.forEach((fn) => fn());
14
+ const updateState = () => dispatch(updateClientBreakpoint());
15
+ mediaQueryUnsubscribes = getDeviceQueries(breakpoints).map((q) => {
16
+ const mediaQueryList = window.matchMedia(q.query);
17
+ mediaQueryList.addEventListener("change", updateState);
18
+ return () => mediaQueryList.removeEventListener("change", updateState);
19
+ });
20
+ watchedBreakpoints = breakpoints;
21
+ updateState();
22
+ };
23
+ return {
24
+ startBreakpointWatch: () => {
25
+ if (storeUnsubscribe !== null) {
26
+ console.warn("Unexpected `BreakpointWatch.startBreakpointWatch` call, already watching");
27
+ return;
28
+ }
29
+ startWatch(getBreakpoints(getState()));
30
+ storeUnsubscribe = storeSubscribe(() => {
31
+ const breakpoints = getBreakpoints(getState());
32
+ if (breakpoints !== watchedBreakpoints) {
33
+ startWatch(breakpoints);
34
+ }
35
+ });
36
+ },
37
+ stopBreakpointWatch: () => {
38
+ mediaQueryUnsubscribes.forEach((fn) => fn());
39
+ mediaQueryUnsubscribes = [];
40
+ storeUnsubscribe?.();
41
+ storeUnsubscribe = null;
42
+ }
43
+ };
44
+ }
45
+ export {
46
+ breakpointWatchMixin
47
+ };
48
+ //# sourceMappingURL=breakpoint-watch.js.map