@makeswift/runtime 0.28.8-canary.2 → 0.28.8-canary.20

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 (483) hide show
  1. package/dist/cjs/api/graphql-api-client.js +1 -1
  2. package/dist/cjs/api/rest-api-client.js +1 -1
  3. package/dist/cjs/api-handler/handlers/manifest.js +1 -1
  4. package/dist/cjs/builder/host-to-builder-actions.js +5 -5
  5. package/dist/cjs/builder/host-to-builder-actions.js.map +1 -1
  6. package/dist/cjs/client/index.js +1 -1
  7. package/dist/cjs/components/builtin/Embed/Embed.js +2 -1
  8. package/dist/cjs/components/builtin/Embed/Embed.js.map +1 -1
  9. package/dist/cjs/components/builtin/Form/Form.js.map +1 -1
  10. package/dist/cjs/components/builtin/Navigation/components/DropDownButton/index.js.map +1 -1
  11. package/dist/cjs/components/shared/BackgroundsContainer/components/BackgroundVideo/index.js.map +1 -1
  12. package/dist/cjs/controls/index.js +4 -0
  13. package/dist/cjs/controls/index.js.map +1 -1
  14. package/dist/cjs/controls/link.js.map +1 -1
  15. package/dist/cjs/controls/rich-text/control.js +16 -3
  16. package/dist/cjs/controls/rich-text/control.js.map +1 -1
  17. package/dist/cjs/controls/rich-text/rich-text.js +2 -2
  18. package/dist/cjs/controls/rich-text/rich-text.js.map +1 -1
  19. package/dist/cjs/controls/rich-text-v2/control.js +15 -2
  20. package/dist/cjs/controls/rich-text-v2/control.js.map +1 -1
  21. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js +2 -2
  22. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  23. package/dist/cjs/controls/serialization/base/index.js +1 -0
  24. package/dist/cjs/controls/serialization/base/index.js.map +1 -1
  25. package/dist/cjs/next/testing/breakpoints.js +3 -15
  26. package/dist/cjs/next/testing/breakpoints.js.map +1 -1
  27. package/dist/cjs/next/testing/element-data.js +3 -82
  28. package/dist/cjs/next/testing/element-data.js.map +1 -1
  29. package/dist/cjs/next/testing/react-runtime.js.map +1 -1
  30. package/dist/cjs/prop-controllers/instances.js +20 -4
  31. package/dist/cjs/prop-controllers/instances.js.map +1 -1
  32. package/dist/cjs/runtimes/react/components/Element.js +37 -12
  33. package/dist/cjs/runtimes/react/components/Element.js.map +1 -1
  34. package/dist/cjs/runtimes/react/components/ElementRegistration.js +32 -11
  35. package/dist/cjs/runtimes/react/components/ElementRegistration.js.map +1 -1
  36. package/dist/cjs/runtimes/react/components/control-instances-context.js +38 -0
  37. package/dist/cjs/runtimes/react/components/control-instances-context.js.map +1 -0
  38. package/dist/cjs/runtimes/react/components/resolve-props.js +12 -1
  39. package/dist/cjs/runtimes/react/components/resolve-props.js.map +1 -1
  40. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  41. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +4 -2
  42. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -1
  43. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js +2 -2
  44. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  45. package/dist/cjs/runtimes/react/controls/style.js.map +1 -1
  46. package/dist/cjs/runtimes/react/element-imperative-handle.js +2 -2
  47. package/dist/cjs/runtimes/react/element-imperative-handle.js.map +1 -1
  48. package/dist/cjs/runtimes/react/hooks/use-control-instance.js +88 -0
  49. package/dist/cjs/runtimes/react/hooks/use-control-instance.js.map +1 -0
  50. package/dist/cjs/runtimes/react/hooks/use-control-instances.js +29 -0
  51. package/dist/cjs/runtimes/react/hooks/use-control-instances.js.map +1 -0
  52. package/dist/cjs/runtimes/react/hooks/use-disable-register-element.js +3 -3
  53. package/dist/cjs/runtimes/react/hooks/use-disable-register-element.js.map +1 -1
  54. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js +17 -33
  55. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  56. package/dist/cjs/runtimes/react/hooks/use-stylesheet-factory.js +3 -3
  57. package/dist/cjs/runtimes/react/hooks/use-stylesheet-factory.js.map +1 -1
  58. package/dist/cjs/runtimes/react/react-runtime-core.js +2 -1
  59. package/dist/cjs/runtimes/react/react-runtime-core.js.map +1 -1
  60. package/dist/cjs/{utils/is.js → runtimes/react/stylesheet-factory.js} +3 -12
  61. package/dist/cjs/runtimes/react/stylesheet-factory.js.map +1 -0
  62. package/dist/cjs/runtimes/react/testing/index.js +25 -0
  63. package/dist/cjs/runtimes/react/testing/index.js.map +1 -0
  64. package/dist/cjs/runtimes/react/{controls/group.js → testing/react-provider.js} +14 -21
  65. package/dist/cjs/runtimes/react/testing/react-provider.js.map +1 -0
  66. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyUp.js.map +1 -1
  67. package/dist/cjs/slate/selectors.js.map +1 -1
  68. package/dist/cjs/slate/utils/toText.js.map +1 -1
  69. package/dist/cjs/state/actions/index.js +4 -4
  70. package/dist/cjs/state/actions/index.js.map +1 -1
  71. package/dist/cjs/state/actions/internal/action-types.js +34 -0
  72. package/dist/cjs/state/actions/internal/action-types.js.map +1 -0
  73. package/dist/cjs/state/actions/internal/index.js +0 -17
  74. package/dist/cjs/state/actions/internal/index.js.map +1 -1
  75. package/dist/cjs/state/actions/internal/read-only-action-types.js +44 -0
  76. package/dist/cjs/state/actions/internal/read-only-action-types.js.map +1 -0
  77. package/dist/cjs/state/actions/internal/read-only-actions.js +13 -92
  78. package/dist/cjs/state/actions/internal/read-only-actions.js.map +1 -1
  79. package/dist/cjs/state/actions/internal/read-write-action-types.js +42 -0
  80. package/dist/cjs/state/actions/internal/read-write-action-types.js.map +1 -0
  81. package/dist/cjs/state/actions/internal/read-write-actions.js +119 -14
  82. package/dist/cjs/state/actions/internal/read-write-actions.js.map +1 -1
  83. package/dist/cjs/state/builder-api/action-types.js +49 -0
  84. package/dist/cjs/state/builder-api/action-types.js.map +1 -0
  85. package/dist/cjs/state/builder-api/actions.js +14 -36
  86. package/dist/cjs/state/builder-api/actions.js.map +1 -1
  87. package/dist/cjs/state/builder-api/proxy.js +2 -1
  88. package/dist/cjs/state/builder-api/proxy.js.map +1 -1
  89. package/dist/cjs/state/host-api/action-types.js +43 -0
  90. package/dist/cjs/state/host-api/action-types.js.map +1 -0
  91. package/dist/cjs/state/{host-api.js → host-api/actions.js} +17 -33
  92. package/dist/cjs/state/host-api/actions.js.map +1 -0
  93. package/dist/cjs/state/host-api/index.js +25 -0
  94. package/dist/cjs/state/host-api/index.js.map +1 -0
  95. package/dist/cjs/state/middleware/read-write/builder-api/index.js +15 -15
  96. package/dist/cjs/state/middleware/read-write/builder-api/index.js.map +1 -1
  97. package/dist/cjs/state/middleware/read-write/measure-box-models.js +3 -3
  98. package/dist/cjs/state/middleware/read-write/measure-box-models.js.map +1 -1
  99. package/dist/cjs/state/middleware/read-write/prop-controller-handles.js +10 -47
  100. package/dist/cjs/state/middleware/read-write/prop-controller-handles.js.map +1 -1
  101. package/dist/cjs/state/modules/api-resources.js +5 -5
  102. package/dist/cjs/state/modules/api-resources.js.map +1 -1
  103. package/dist/cjs/state/modules/breakpoints.js +4 -4
  104. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  105. package/dist/cjs/state/modules/components-meta.js +3 -3
  106. package/dist/cjs/state/modules/components-meta.js.map +1 -1
  107. package/dist/cjs/state/modules/element-trees.js +53 -25
  108. package/dist/cjs/state/modules/element-trees.js.map +1 -1
  109. package/dist/cjs/state/modules/is-in-builder.js +2 -2
  110. package/dist/cjs/state/modules/is-in-builder.js.map +1 -1
  111. package/dist/cjs/state/modules/is-read-only.js +2 -2
  112. package/dist/cjs/state/modules/is-read-only.js.map +1 -1
  113. package/dist/cjs/state/modules/locale.js +2 -2
  114. package/dist/cjs/state/modules/locale.js.map +1 -1
  115. package/dist/cjs/state/modules/localized-resources-map.js +3 -3
  116. package/dist/cjs/state/modules/localized-resources-map.js.map +1 -1
  117. package/dist/cjs/state/modules/{prop-controllers.js → prop-controller-descriptors.js} +7 -7
  118. package/dist/cjs/state/modules/prop-controller-descriptors.js.map +1 -0
  119. package/dist/cjs/state/modules/react-components.js +3 -3
  120. package/dist/cjs/state/modules/react-components.js.map +1 -1
  121. package/dist/cjs/state/modules/read-write/box-models.js +5 -5
  122. package/dist/cjs/state/modules/read-write/box-models.js.map +1 -1
  123. package/dist/cjs/state/modules/read-write/element-imperative-handles.js +3 -3
  124. package/dist/cjs/state/modules/read-write/element-imperative-handles.js.map +1 -1
  125. package/dist/cjs/state/modules/{prop-controller-handles.js → read-write/prop-controllers.js} +5 -5
  126. package/dist/cjs/state/modules/read-write/prop-controllers.js.map +1 -0
  127. package/dist/cjs/state/read-only-state.js +9 -44
  128. package/dist/cjs/state/read-only-state.js.map +1 -1
  129. package/dist/cjs/state/read-write-state.js +37 -0
  130. package/dist/cjs/state/read-write-state.js.map +1 -1
  131. package/dist/cjs/state/shared-api/action-types.js +33 -0
  132. package/dist/cjs/state/shared-api/action-types.js.map +1 -0
  133. package/dist/cjs/state/{shared-api.js → shared-api/actions.js} +8 -14
  134. package/dist/cjs/state/shared-api/actions.js.map +1 -0
  135. package/dist/cjs/state/shared-api/index.js +25 -0
  136. package/dist/cjs/state/shared-api/index.js.map +1 -0
  137. package/dist/cjs/state/store.js +5 -3
  138. package/dist/cjs/state/store.js.map +1 -1
  139. package/dist/cjs/state/translations/get.js +1 -4
  140. package/dist/cjs/state/translations/get.js.map +1 -1
  141. package/dist/cjs/state/translations/merge.js.map +1 -1
  142. package/dist/cjs/state/unified-state.js +12 -0
  143. package/dist/cjs/state/unified-state.js.map +1 -1
  144. package/dist/cjs/testing/breakpoints.js +35 -0
  145. package/dist/cjs/testing/breakpoints.js.map +1 -0
  146. package/dist/cjs/testing/element-data.js +102 -0
  147. package/dist/cjs/testing/element-data.js.map +1 -0
  148. package/dist/cjs/testing/read-write-state.js +32 -0
  149. package/dist/cjs/testing/read-write-state.js.map +1 -0
  150. package/dist/cjs/translations/index.js.map +1 -1
  151. package/dist/cjs/utils/intersection.js.map +1 -1
  152. package/dist/esm/api/graphql-api-client.js +1 -1
  153. package/dist/esm/api/rest-api-client.js +1 -1
  154. package/dist/esm/api-handler/handlers/manifest.js +1 -1
  155. package/dist/esm/builder/host-to-builder-actions.js +2 -4
  156. package/dist/esm/builder/host-to-builder-actions.js.map +1 -1
  157. package/dist/esm/client/index.js +1 -1
  158. package/dist/esm/components/builtin/Embed/Embed.js +3 -2
  159. package/dist/esm/components/builtin/Embed/Embed.js.map +1 -1
  160. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  161. package/dist/esm/components/builtin/Navigation/components/DropDownButton/index.js +5 -1
  162. package/dist/esm/components/builtin/Navigation/components/DropDownButton/index.js.map +1 -1
  163. package/dist/esm/components/shared/BackgroundsContainer/components/BackgroundVideo/index.js +5 -1
  164. package/dist/esm/components/shared/BackgroundsContainer/components/BackgroundVideo/index.js.map +1 -1
  165. package/dist/esm/controls/index.js +4 -0
  166. package/dist/esm/controls/index.js.map +1 -1
  167. package/dist/esm/controls/link.js.map +1 -1
  168. package/dist/esm/controls/rich-text/control.js +16 -3
  169. package/dist/esm/controls/rich-text/control.js.map +1 -1
  170. package/dist/esm/controls/rich-text/rich-text.js +2 -2
  171. package/dist/esm/controls/rich-text/rich-text.js.map +1 -1
  172. package/dist/esm/controls/rich-text-v2/control.js +15 -2
  173. package/dist/esm/controls/rich-text-v2/control.js.map +1 -1
  174. package/dist/esm/controls/rich-text-v2/rich-text-v2.js +2 -2
  175. package/dist/esm/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  176. package/dist/esm/controls/serialization/base/index.js +2 -0
  177. package/dist/esm/controls/serialization/base/index.js.map +1 -1
  178. package/dist/esm/next/testing/breakpoints.js +1 -8
  179. package/dist/esm/next/testing/breakpoints.js.map +1 -1
  180. package/dist/esm/next/testing/element-data.js +1 -75
  181. package/dist/esm/next/testing/element-data.js.map +1 -1
  182. package/dist/esm/next/testing/react-runtime.js.map +1 -1
  183. package/dist/esm/prop-controllers/instances.js +20 -4
  184. package/dist/esm/prop-controllers/instances.js.map +1 -1
  185. package/dist/esm/runtimes/react/components/Element.js +35 -13
  186. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  187. package/dist/esm/runtimes/react/components/ElementRegistration.js +37 -12
  188. package/dist/esm/runtimes/react/components/ElementRegistration.js.map +1 -1
  189. package/dist/esm/runtimes/react/components/control-instances-context.js +13 -0
  190. package/dist/esm/runtimes/react/components/control-instances-context.js.map +1 -0
  191. package/dist/esm/runtimes/react/components/resolve-props.js +12 -1
  192. package/dist/esm/runtimes/react/components/resolve-props.js.map +1 -1
  193. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  194. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +4 -2
  195. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -1
  196. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js +1 -1
  197. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  198. package/dist/esm/runtimes/react/controls/style.js.map +1 -1
  199. package/dist/esm/runtimes/react/element-imperative-handle.js +1 -1
  200. package/dist/esm/runtimes/react/element-imperative-handle.js.map +1 -1
  201. package/dist/esm/runtimes/react/hooks/use-control-instance.js +62 -0
  202. package/dist/esm/runtimes/react/hooks/use-control-instance.js.map +1 -0
  203. package/dist/esm/runtimes/react/hooks/use-control-instances.js +5 -0
  204. package/dist/esm/runtimes/react/hooks/use-control-instances.js.map +1 -0
  205. package/dist/esm/runtimes/react/hooks/use-disable-register-element.js +2 -2
  206. package/dist/esm/runtimes/react/hooks/use-disable-register-element.js.map +1 -1
  207. package/dist/esm/runtimes/react/hooks/use-resolved-props.js +17 -23
  208. package/dist/esm/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  209. package/dist/esm/runtimes/react/hooks/use-stylesheet-factory.js +3 -3
  210. package/dist/esm/runtimes/react/hooks/use-stylesheet-factory.js.map +1 -1
  211. package/dist/esm/runtimes/react/react-runtime-core.js +2 -1
  212. package/dist/esm/runtimes/react/react-runtime-core.js.map +1 -1
  213. package/dist/esm/runtimes/react/stylesheet-factory.js +1 -0
  214. package/dist/esm/runtimes/react/stylesheet-factory.js.map +1 -0
  215. package/dist/esm/runtimes/react/testing/index.js +3 -0
  216. package/dist/esm/runtimes/react/testing/index.js.map +1 -0
  217. package/dist/esm/runtimes/react/testing/react-provider.js +14 -0
  218. package/dist/esm/runtimes/react/testing/react-provider.js.map +1 -0
  219. package/dist/esm/slate/TypographyPlugin/normalizeTypographyUp.js.map +1 -1
  220. package/dist/esm/slate/selectors.js.map +1 -1
  221. package/dist/esm/slate/utils/toText.js.map +1 -1
  222. package/dist/esm/state/actions/index.js +2 -2
  223. package/dist/esm/state/actions/index.js.map +1 -1
  224. package/dist/esm/state/actions/internal/action-types.js +10 -0
  225. package/dist/esm/state/actions/internal/action-types.js.map +1 -0
  226. package/dist/esm/state/actions/internal/index.js +0 -9
  227. package/dist/esm/state/actions/internal/index.js.map +1 -1
  228. package/dist/esm/state/actions/internal/read-only-action-types.js +20 -0
  229. package/dist/esm/state/actions/internal/read-only-action-types.js.map +1 -0
  230. package/dist/esm/state/actions/internal/read-only-actions.js +1 -73
  231. package/dist/esm/state/actions/internal/read-only-actions.js.map +1 -1
  232. package/dist/esm/state/actions/internal/read-write-action-types.js +18 -0
  233. package/dist/esm/state/actions/internal/read-write-action-types.js.map +1 -0
  234. package/dist/esm/state/actions/internal/read-write-actions.js +94 -8
  235. package/dist/esm/state/actions/internal/read-write-actions.js.map +1 -1
  236. package/dist/esm/state/builder-api/action-types.js +25 -0
  237. package/dist/esm/state/builder-api/action-types.js.map +1 -0
  238. package/dist/esm/state/builder-api/actions.js +1 -24
  239. package/dist/esm/state/builder-api/actions.js.map +1 -1
  240. package/dist/esm/state/builder-api/proxy.js +2 -1
  241. package/dist/esm/state/builder-api/proxy.js.map +1 -1
  242. package/dist/esm/state/host-api/action-types.js +19 -0
  243. package/dist/esm/state/host-api/action-types.js.map +1 -0
  244. package/dist/esm/state/{host-api.js → host-api/actions.js} +2 -17
  245. package/dist/esm/state/host-api/actions.js.map +1 -0
  246. package/dist/esm/state/host-api/index.js +3 -0
  247. package/dist/esm/state/host-api/index.js.map +1 -0
  248. package/dist/esm/state/middleware/read-write/builder-api/index.js +1 -1
  249. package/dist/esm/state/middleware/read-write/builder-api/index.js.map +1 -1
  250. package/dist/esm/state/middleware/read-write/measure-box-models.js +3 -3
  251. package/dist/esm/state/middleware/read-write/measure-box-models.js.map +1 -1
  252. package/dist/esm/state/middleware/read-write/prop-controller-handles.js +13 -47
  253. package/dist/esm/state/middleware/read-write/prop-controller-handles.js.map +1 -1
  254. package/dist/esm/state/modules/api-resources.js +2 -2
  255. package/dist/esm/state/modules/api-resources.js.map +1 -1
  256. package/dist/esm/state/modules/breakpoints.js +2 -2
  257. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  258. package/dist/esm/state/modules/components-meta.js +1 -1
  259. package/dist/esm/state/modules/components-meta.js.map +1 -1
  260. package/dist/esm/state/modules/element-trees.js +50 -22
  261. package/dist/esm/state/modules/element-trees.js.map +1 -1
  262. package/dist/esm/state/modules/is-in-builder.js +1 -1
  263. package/dist/esm/state/modules/is-in-builder.js.map +1 -1
  264. package/dist/esm/state/modules/is-read-only.js +1 -1
  265. package/dist/esm/state/modules/is-read-only.js.map +1 -1
  266. package/dist/esm/state/modules/locale.js +1 -1
  267. package/dist/esm/state/modules/locale.js.map +1 -1
  268. package/dist/esm/state/modules/localized-resources-map.js +1 -1
  269. package/dist/esm/state/modules/localized-resources-map.js.map +1 -1
  270. package/dist/esm/state/modules/{prop-controllers.js → prop-controller-descriptors.js} +2 -2
  271. package/dist/esm/state/modules/prop-controller-descriptors.js.map +1 -0
  272. package/dist/esm/state/modules/react-components.js +1 -1
  273. package/dist/esm/state/modules/react-components.js.map +1 -1
  274. package/dist/esm/state/modules/read-write/box-models.js +2 -2
  275. package/dist/esm/state/modules/read-write/box-models.js.map +1 -1
  276. package/dist/esm/state/modules/read-write/element-imperative-handles.js +3 -3
  277. package/dist/esm/state/modules/read-write/element-imperative-handles.js.map +1 -1
  278. package/dist/esm/state/modules/{prop-controller-handles.js → read-write/prop-controllers.js} +2 -2
  279. package/dist/esm/state/modules/read-write/prop-controllers.js.map +1 -0
  280. package/dist/esm/state/read-only-state.js +9 -41
  281. package/dist/esm/state/read-only-state.js.map +1 -1
  282. package/dist/esm/state/read-write-state.js +34 -0
  283. package/dist/esm/state/read-write-state.js.map +1 -1
  284. package/dist/esm/state/shared-api/action-types.js +9 -0
  285. package/dist/esm/state/shared-api/action-types.js.map +1 -0
  286. package/dist/esm/state/{shared-api.js → shared-api/actions.js} +2 -7
  287. package/dist/esm/state/shared-api/actions.js.map +1 -0
  288. package/dist/esm/state/shared-api/index.js +3 -0
  289. package/dist/esm/state/shared-api/index.js.map +1 -0
  290. package/dist/esm/state/store.js +3 -1
  291. package/dist/esm/state/store.js.map +1 -1
  292. package/dist/esm/state/translations/get.js +1 -4
  293. package/dist/esm/state/translations/get.js.map +1 -1
  294. package/dist/esm/state/translations/merge.js +3 -1
  295. package/dist/esm/state/translations/merge.js.map +1 -1
  296. package/dist/esm/state/unified-state.js +4 -0
  297. package/dist/esm/state/unified-state.js.map +1 -1
  298. package/dist/esm/testing/breakpoints.js +9 -0
  299. package/dist/esm/testing/breakpoints.js.map +1 -0
  300. package/dist/esm/testing/element-data.js +76 -0
  301. package/dist/esm/testing/element-data.js.map +1 -0
  302. package/dist/esm/testing/read-write-state.js +8 -0
  303. package/dist/esm/testing/read-write-state.js.map +1 -0
  304. package/dist/esm/translations/index.js.map +1 -1
  305. package/dist/esm/utils/intersection.js.map +1 -1
  306. package/dist/types/api/schema/page-pathname-slice.d.ts +2 -2
  307. package/dist/types/api-handler/handlers/webhook/diff-projection.d.ts +6 -6
  308. package/dist/types/api-handler/handlers/webhook/types.d.ts +20 -20
  309. package/dist/types/builder/host-to-builder-actions.d.ts.map +1 -1
  310. package/dist/types/components/builtin/Embed/Embed.d.ts.map +1 -1
  311. package/dist/types/components/builtin/Form/Form.d.ts +1 -1
  312. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  313. package/dist/types/components/builtin/Navigation/components/DropDownButton/index.d.ts.map +1 -1
  314. package/dist/types/components/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
  315. package/dist/types/components/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
  316. package/dist/types/components/shared/BackgroundsContainer/components/BackgroundVideo/index.d.ts.map +1 -1
  317. package/dist/types/controls/__tests__/slot.test.d.ts +3 -0
  318. package/dist/types/controls/__tests__/slot.test.d.ts.map +1 -0
  319. package/dist/types/controls/index.d.ts +1 -1
  320. package/dist/types/controls/index.d.ts.map +1 -1
  321. package/dist/types/controls/rich-text/control.d.ts +5 -1
  322. package/dist/types/controls/rich-text/control.d.ts.map +1 -1
  323. package/dist/types/controls/rich-text/rich-text.d.ts +2 -2
  324. package/dist/types/controls/rich-text/rich-text.d.ts.map +1 -1
  325. package/dist/types/controls/rich-text-v2/control.d.ts +6 -2
  326. package/dist/types/controls/rich-text-v2/control.d.ts.map +1 -1
  327. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts +2 -2
  328. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  329. package/dist/types/controls/serialization/base/index.d.ts.map +1 -1
  330. package/dist/types/locale.d.ts +1 -1
  331. package/dist/types/next/testing/breakpoints.d.ts +1 -3
  332. package/dist/types/next/testing/breakpoints.d.ts.map +1 -1
  333. package/dist/types/next/testing/element-data.d.ts +1 -54
  334. package/dist/types/next/testing/element-data.d.ts.map +1 -1
  335. package/dist/types/next/testing/react-runtime.d.ts.map +1 -1
  336. package/dist/types/prop-controllers/instances.d.ts +9 -3
  337. package/dist/types/prop-controllers/instances.d.ts.map +1 -1
  338. package/dist/types/runtimes/react/components/Element.d.ts.map +1 -1
  339. package/dist/types/runtimes/react/components/ElementRegistration.d.ts +4 -4
  340. package/dist/types/runtimes/react/components/ElementRegistration.d.ts.map +1 -1
  341. package/dist/types/runtimes/react/components/__tests__/element-registration.test.d.ts +3 -0
  342. package/dist/types/runtimes/react/components/__tests__/element-registration.test.d.ts.map +1 -0
  343. package/dist/types/runtimes/react/components/control-instances-context.d.ts +9 -0
  344. package/dist/types/runtimes/react/components/control-instances-context.d.ts.map +1 -0
  345. package/dist/types/runtimes/react/components/resolve-props.d.ts.map +1 -1
  346. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts +1 -1
  347. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts.map +1 -1
  348. package/dist/types/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.d.ts.map +1 -1
  349. package/dist/types/runtimes/react/element-imperative-handle.d.ts +1 -1
  350. package/dist/types/runtimes/react/element-imperative-handle.d.ts.map +1 -1
  351. package/dist/types/runtimes/react/hooks/__tests__/use-control-instance.test.d.ts +3 -0
  352. package/dist/types/runtimes/react/hooks/__tests__/use-control-instance.test.d.ts.map +1 -0
  353. package/dist/types/runtimes/react/hooks/use-control-instance.d.ts +7 -0
  354. package/dist/types/runtimes/react/hooks/use-control-instance.d.ts.map +1 -0
  355. package/dist/types/runtimes/react/hooks/use-control-instances.d.ts +2 -0
  356. package/dist/types/runtimes/react/hooks/use-control-instances.d.ts.map +1 -0
  357. package/dist/types/runtimes/react/hooks/use-disable-register-element.d.ts +1 -1
  358. package/dist/types/runtimes/react/hooks/use-disable-register-element.d.ts.map +1 -1
  359. package/dist/types/runtimes/react/hooks/use-resolved-props.d.ts +9 -2
  360. package/dist/types/runtimes/react/hooks/use-resolved-props.d.ts.map +1 -1
  361. package/dist/types/runtimes/react/hooks/use-store.d.ts +2 -4
  362. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  363. package/dist/types/runtimes/react/hooks/use-stylesheet-factory.d.ts +1 -5
  364. package/dist/types/runtimes/react/hooks/use-stylesheet-factory.d.ts.map +1 -1
  365. package/dist/types/runtimes/react/react-runtime-core.d.ts +9 -1
  366. package/dist/types/runtimes/react/react-runtime-core.d.ts.map +1 -1
  367. package/dist/types/runtimes/react/stylesheet-factory.d.ts +6 -0
  368. package/dist/types/runtimes/react/stylesheet-factory.d.ts.map +1 -0
  369. package/dist/types/runtimes/react/testing/index.d.ts +3 -0
  370. package/dist/types/runtimes/react/testing/index.d.ts.map +1 -0
  371. package/dist/types/runtimes/react/testing/react-provider.d.ts +8 -0
  372. package/dist/types/runtimes/react/testing/react-provider.d.ts.map +1 -0
  373. package/dist/types/slate/InlineModePlugin/index.d.ts +1 -1
  374. package/dist/types/slate/LinkPlugin/getValue.d.ts.map +1 -1
  375. package/dist/types/slate/LinkPlugin/index.d.ts.map +1 -1
  376. package/dist/types/slate/TypographyPlugin/getValue.d.ts.map +1 -1
  377. package/dist/types/slate/TypographyPlugin/index.d.ts.map +1 -1
  378. package/dist/types/slate/selectors.d.ts +2 -2
  379. package/dist/types/slate/selectors.d.ts.map +1 -1
  380. package/dist/types/slate/utils/toText.d.ts.map +1 -1
  381. package/dist/types/state/__tests__/fixtures/serialized-descriptors-from-builder.d.ts.map +1 -1
  382. package/dist/types/state/__tests__/fixtures/translatable-content-sample.d.ts.map +1 -1
  383. package/dist/types/state/__tests__/test-store.d.ts +2 -4
  384. package/dist/types/state/__tests__/test-store.d.ts.map +1 -1
  385. package/dist/types/state/actions/index.d.ts +7 -6
  386. package/dist/types/state/actions/index.d.ts.map +1 -1
  387. package/dist/types/state/actions/internal/action-types.d.ts +27 -0
  388. package/dist/types/state/actions/internal/action-types.d.ts.map +1 -0
  389. package/dist/types/state/actions/internal/index.d.ts +0 -25
  390. package/dist/types/state/actions/internal/index.d.ts.map +1 -1
  391. package/dist/types/state/actions/internal/read-only-action-types.d.ts +15 -0
  392. package/dist/types/state/actions/internal/read-only-action-types.d.ts.map +1 -0
  393. package/dist/types/state/actions/internal/read-only-actions.d.ts +3 -76
  394. package/dist/types/state/actions/internal/read-only-actions.d.ts.map +1 -1
  395. package/dist/types/state/actions/internal/read-write-action-types.d.ts +15 -0
  396. package/dist/types/state/actions/internal/read-write-action-types.d.ts.map +1 -0
  397. package/dist/types/state/actions/internal/read-write-actions.d.ts +71 -8
  398. package/dist/types/state/actions/internal/read-write-actions.d.ts.map +1 -1
  399. package/dist/types/state/builder-api/action-types.d.ts +22 -0
  400. package/dist/types/state/builder-api/action-types.d.ts.map +1 -0
  401. package/dist/types/state/builder-api/actions.d.ts +1 -21
  402. package/dist/types/state/builder-api/actions.d.ts.map +1 -1
  403. package/dist/types/state/builder-api/proxy.d.ts.map +1 -1
  404. package/dist/types/state/host-api/action-types.d.ts +17 -0
  405. package/dist/types/state/host-api/action-types.d.ts.map +1 -0
  406. package/dist/types/state/{host-api.d.ts → host-api/actions.d.ts} +7 -22
  407. package/dist/types/state/host-api/actions.d.ts.map +1 -0
  408. package/dist/types/state/host-api/index.d.ts +3 -0
  409. package/dist/types/state/host-api/index.d.ts.map +1 -0
  410. package/dist/types/state/middleware/read-write/__tests__/fixtures/operations.d.ts.map +1 -0
  411. package/dist/types/state/middleware/read-write/__tests__/fixtures/root-elements.d.ts.map +1 -0
  412. package/dist/types/state/middleware/read-write/__tests__/prop-controller-handles.test.d.ts +2 -0
  413. package/dist/types/state/middleware/read-write/__tests__/prop-controller-handles.test.d.ts.map +1 -0
  414. package/dist/types/state/middleware/read-write/__tests__/update-element-tree.test.d.ts +2 -0
  415. package/dist/types/state/middleware/read-write/__tests__/update-element-tree.test.d.ts.map +1 -0
  416. package/dist/types/state/middleware/read-write/prop-controller-handles.d.ts.map +1 -1
  417. package/dist/types/state/modules/__tests__/fixtures/element-trees.d.ts +737 -0
  418. package/dist/types/state/modules/__tests__/fixtures/element-trees.d.ts.map +1 -1
  419. package/dist/types/state/modules/components-meta.d.ts +3 -0
  420. package/dist/types/state/modules/components-meta.d.ts.map +1 -1
  421. package/dist/types/state/modules/element-trees.d.ts +1 -1
  422. package/dist/types/state/modules/element-trees.d.ts.map +1 -1
  423. package/dist/types/state/modules/{prop-controllers.d.ts → prop-controller-descriptors.d.ts} +1 -1
  424. package/dist/types/state/modules/prop-controller-descriptors.d.ts.map +1 -0
  425. package/dist/types/state/modules/{prop-controller-handles.d.ts → read-write/prop-controllers.d.ts} +4 -4
  426. package/dist/types/state/modules/{prop-controller-handles.d.ts.map → read-write/prop-controllers.d.ts.map} +1 -1
  427. package/dist/types/state/read-only-state.d.ts +6 -70
  428. package/dist/types/state/read-only-state.d.ts.map +1 -1
  429. package/dist/types/state/read-write-state.d.ts +67 -4
  430. package/dist/types/state/read-write-state.d.ts.map +1 -1
  431. package/dist/types/state/shared-api/action-types.d.ts +6 -0
  432. package/dist/types/state/shared-api/action-types.d.ts.map +1 -0
  433. package/dist/types/state/{shared-api.d.ts → shared-api/actions.d.ts} +3 -7
  434. package/dist/types/state/shared-api/actions.d.ts.map +1 -0
  435. package/dist/types/state/shared-api/index.d.ts +3 -0
  436. package/dist/types/state/shared-api/index.d.ts.map +1 -0
  437. package/dist/types/state/store.d.ts +4 -8
  438. package/dist/types/state/store.d.ts.map +1 -1
  439. package/dist/types/state/translations/get.d.ts +1 -1
  440. package/dist/types/state/translations/get.d.ts.map +1 -1
  441. package/dist/types/state/translations/merge.d.ts +1 -1
  442. package/dist/types/state/translations/merge.d.ts.map +1 -1
  443. package/dist/types/state/unified-state.d.ts +2 -0
  444. package/dist/types/state/unified-state.d.ts.map +1 -1
  445. package/dist/types/testing/breakpoints.d.ts +4 -0
  446. package/dist/types/testing/breakpoints.d.ts.map +1 -0
  447. package/dist/types/testing/element-data.d.ts +59 -0
  448. package/dist/types/testing/element-data.d.ts.map +1 -0
  449. package/dist/types/testing/read-write-state.d.ts +3 -0
  450. package/dist/types/testing/read-write-state.d.ts.map +1 -0
  451. package/dist/types/translations/index.d.ts +1 -1
  452. package/dist/types/translations/index.d.ts.map +1 -1
  453. package/dist/types/utils/intersection.d.ts +2 -1
  454. package/dist/types/utils/intersection.d.ts.map +1 -1
  455. package/package.json +9 -6
  456. package/react/builtins/package.json +1 -1
  457. package/dist/cjs/runtimes/react/controls/group.js.map +0 -1
  458. package/dist/cjs/state/host-api.js.map +0 -1
  459. package/dist/cjs/state/modules/prop-controller-handles.js.map +0 -1
  460. package/dist/cjs/state/modules/prop-controllers.js.map +0 -1
  461. package/dist/cjs/state/shared-api.js.map +0 -1
  462. package/dist/cjs/utils/is.js.map +0 -1
  463. package/dist/esm/runtimes/react/controls/group.js +0 -23
  464. package/dist/esm/runtimes/react/controls/group.js.map +0 -1
  465. package/dist/esm/state/host-api.js.map +0 -1
  466. package/dist/esm/state/modules/prop-controller-handles.js.map +0 -1
  467. package/dist/esm/state/modules/prop-controllers.js.map +0 -1
  468. package/dist/esm/state/shared-api.js.map +0 -1
  469. package/dist/esm/utils/is.js +0 -6
  470. package/dist/esm/utils/is.js.map +0 -1
  471. package/dist/types/runtimes/react/controls/group.d.ts +0 -11
  472. package/dist/types/runtimes/react/controls/group.d.ts.map +0 -1
  473. package/dist/types/state/__tests__/fixtures/operations.d.ts.map +0 -1
  474. package/dist/types/state/__tests__/fixtures/root-elements.d.ts.map +0 -1
  475. package/dist/types/state/__tests__/react-builder-preview.test.d.ts +0 -2
  476. package/dist/types/state/__tests__/react-builder-preview.test.d.ts.map +0 -1
  477. package/dist/types/state/host-api.d.ts.map +0 -1
  478. package/dist/types/state/modules/prop-controllers.d.ts.map +0 -1
  479. package/dist/types/state/shared-api.d.ts.map +0 -1
  480. package/dist/types/utils/is.d.ts +0 -3
  481. package/dist/types/utils/is.d.ts.map +0 -1
  482. /package/dist/types/state/{__tests__ → middleware/read-write/__tests__}/fixtures/operations.d.ts +0 -0
  483. /package/dist/types/state/{__tests__ → middleware/read-write/__tests__}/fixtures/root-elements.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/state/read-only-state.ts"],"sourcesContent":["import { type ThunkDispatch } from '@reduxjs/toolkit'\n\nimport { createSelector } from 'reselect'\n\nimport * as SiteVersion from './modules/site-version'\nimport * as Locale from './modules/locale'\nimport * as Documents from './modules/read-only-documents'\nimport * as ElementTrees from './modules/element-trees'\nimport * as ReactComponents from './modules/react-components'\nimport * as ComponentsMeta from './modules/components-meta'\nimport * as PropControllers from './modules/prop-controllers'\nimport * as PropControllerHandles from './modules/prop-controller-handles'\nimport * as IsInBuilder from './modules/is-in-builder'\nimport * as IsReadOnly from './modules/is-read-only'\nimport * as BuilderEditMode from './modules/builder-edit-mode'\nimport * as Breakpoints from './modules/breakpoints'\n\nimport { type Action } from './actions'\n\nexport type {\n Data,\n Document,\n DocumentReference,\n Element,\n ElementData,\n ElementReference,\n} from './modules/read-only-documents'\n\nexport {\n createBaseDocument,\n createDocumentReference,\n getRootElement,\n isElementReference,\n} from './modules/read-only-documents'\n\nexport type { ComponentType } from './modules/react-components'\nexport type { ComponentMeta } from './modules/components-meta'\n\nexport const reducers = {\n siteVersion: SiteVersion.reducer,\n isReadOnly: IsReadOnly.reducer,\n locale: Locale.reducer,\n documents: Documents.reducer,\n elementTrees: ElementTrees.reducer,\n reactComponents: ReactComponents.reducer,\n componentsMeta: ComponentsMeta.reducer,\n propControllers: PropControllers.reducer,\n propControllerHandles: PropControllerHandles.reducer,\n isInBuilder: IsInBuilder.reducer,\n builderEditMode: BuilderEditMode.reducer,\n breakpoints: Breakpoints.reducer,\n}\n\nexport type State = {\n siteVersion: SiteVersion.State\n isReadOnly: IsReadOnly.State\n locale: Locale.State\n documents: Documents.State\n elementTrees: ElementTrees.State\n reactComponents: ReactComponents.State\n componentsMeta: ComponentsMeta.State\n propControllers: PropControllers.State\n propControllerHandles: PropControllerHandles.State\n isInBuilder: IsInBuilder.State\n builderEditMode: BuilderEditMode.State\n breakpoints: Breakpoints.State\n}\n\nexport type Dispatch = ThunkDispatch<State, unknown, Action>\n\nfunction getDocumentsStateSlice(state: State): Documents.State {\n return state.documents\n}\n\nexport function getDocument(state: State, documentKey: string): Documents.Document | null {\n return Documents.getDocument(getDocumentsStateSlice(state), documentKey)\n}\n\nfunction getElementTreesSlice(state: State): ElementTrees.State {\n return state.elementTrees\n}\n\nexport function getElements(\n state: State,\n documentKey: string,\n): ElementTrees.ElementTree['elements'] {\n return ElementTrees.getElements(getElementTreesSlice(state), documentKey)\n}\n\nexport function getElementIds(\n state: State,\n documentKey: string,\n): ElementTrees.ElementTree['elementIds'] {\n return ElementTrees.getElementIds(getElementTreesSlice(state), documentKey)\n}\n\nfunction getReactComponentsStateSlice(state: State): ReactComponents.State {\n return state.reactComponents\n}\n\nexport function getReactComponent(\n state: State,\n type: string,\n): ReactComponents.ComponentType | null {\n return ReactComponents.getReactComponent(getReactComponentsStateSlice(state), type)\n}\n\nfunction getComponentsMetaStateSlice(state: State): ComponentsMeta.State {\n return state.componentsMeta\n}\n\nexport function getComponentsMeta(state: State): Map<string, ComponentsMeta.ComponentMeta> {\n return ComponentsMeta.getComponentsMeta(getComponentsMetaStateSlice(state))\n}\n\nexport function getComponentMeta(state: State, type: string): ComponentsMeta.ComponentMeta | null {\n return ComponentsMeta.getComponentMeta(getComponentsMetaStateSlice(state), type)\n}\n\nfunction getPropControllersStateSlice(state: State): PropControllers.State {\n return state.propControllers\n}\n\nexport function getPropControllerDescriptors(state: State): PropControllers.State {\n return PropControllers.getPropControllerDescriptors(getPropControllersStateSlice(state))\n}\n\nexport function getComponentPropControllerDescriptors(\n state: State,\n componentType: string,\n): PropControllers.DescriptorsByProp | null {\n return PropControllers.getComponentPropControllerDescriptors(\n getPropControllersStateSlice(state),\n componentType,\n )\n}\n\nfunction getPropControllerHandlesStateSlice(state: State): PropControllerHandles.State {\n return state.propControllerHandles\n}\n\nexport function getPropControllers(\n state: State,\n { documentKey, elementKey }: { documentKey: string; elementKey: string },\n) {\n return PropControllerHandles.getPropControllers(\n getPropControllerHandlesStateSlice(state),\n documentKey,\n elementKey,\n )\n}\n\nexport function getPropControllersHandle(\n state: State,\n { documentKey, elementKey }: { documentKey: string; elementKey: string },\n) {\n return PropControllerHandles.getPropControllersHandle(\n getPropControllerHandlesStateSlice(state),\n documentKey,\n elementKey,\n )\n}\n\nexport function getPropController(\n state: State,\n {\n documentKey,\n elementKey,\n propName,\n }: { documentKey: string; elementKey: string; propName: string },\n) {\n return PropControllerHandles.getPropController(\n getPropControllerHandlesStateSlice(state),\n documentKey,\n elementKey,\n propName,\n )\n}\n\n/**\n * Returns all document keys sorted by depth, i.e., parent documents come before child documents.\n */\nexport const getDocumentKeysSortedByDepth: (state: State) => string[] = createSelector(\n [getDocumentsStateSlice, getElementTreesSlice],\n (documents, elementTrees) => {\n return [...documents.keys()].sort((a, b) => (elementTrees.get(a)?.elements.has(b) ? -1 : 1))\n },\n)\n\nexport function getElement(\n state: State,\n documentKey: string,\n elementKey: string,\n): Documents.Element | null {\n return ElementTrees.getElement(getElementTreesSlice(state), documentKey, elementKey)\n}\n\nexport function getElementId(state: State, documentKey: string, elementKey: string): string | null {\n return ElementTrees.getElementId(getElementTreesSlice(state), documentKey, elementKey)\n}\n\nexport function getElementPropControllerDescriptors(\n state: State,\n documentKey: string,\n elementKey: string,\n): Record<string, PropControllers.PropControllerDescriptor> | null {\n const element = getElement(state, documentKey, elementKey)\n\n if (element == null || Documents.isElementReference(element)) return null\n\n return getComponentPropControllerDescriptors(state, element.type)\n}\n\nexport function getIsInBuilder(state: State): boolean {\n return state.isInBuilder\n}\n\nexport function getIsReadOnly(state: State): boolean {\n return state.isReadOnly\n}\n\nexport function getBuilderEditMode(state: State): BuilderEditMode.State {\n return state.builderEditMode\n}\n\nfunction getBreakpointsStateSlice(state: State): Breakpoints.State {\n return state.breakpoints\n}\n\nexport function getBreakpoints(state: State): Breakpoints.Breakpoints {\n return getBreakpointsStateSlice(state).breakpoints\n}\n\nexport function getBaseBreakpoint(state: State): Breakpoints.BreakpointId {\n return getBreakpointsStateSlice(state).baseBreakpoint\n}\n\nexport function getClientBreakpoint(state: State): Breakpoints.BreakpointId {\n return getBreakpointsStateSlice(state).clientBreakpoint\n}\n\nexport function getLocale(state: State): string | null {\n return state.locale\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/state/read-only-state.ts"],"sourcesContent":["import { type ThunkDispatch } from '@reduxjs/toolkit'\n\nimport { createSelector } from 'reselect'\n\nimport * as SiteVersion from './modules/site-version'\nimport * as Locale from './modules/locale'\nimport * as Documents from './modules/read-only-documents'\nimport * as ElementTrees from './modules/element-trees'\nimport * as ReactComponents from './modules/react-components'\nimport * as ComponentsMeta from './modules/components-meta'\nimport * as PropControllerDescriptors from './modules/prop-controller-descriptors'\nimport * as IsInBuilder from './modules/is-in-builder'\nimport * as IsReadOnly from './modules/is-read-only'\nimport * as BuilderEditMode from './modules/builder-edit-mode'\nimport * as Breakpoints from './modules/breakpoints'\n\nimport { type Action } from './actions'\n\nexport type {\n Data,\n Document,\n DocumentReference,\n Element,\n ElementData,\n ElementReference,\n} from './modules/read-only-documents'\n\nexport {\n createBaseDocument,\n createDocumentReference,\n getRootElement,\n isElementReference,\n} from './modules/read-only-documents'\n\nexport type { ComponentType } from './modules/react-components'\nexport type { ComponentMeta } from './modules/components-meta'\n\nexport const reducers = {\n siteVersion: SiteVersion.reducer,\n isReadOnly: IsReadOnly.reducer,\n locale: Locale.reducer,\n documents: Documents.reducer,\n elementTrees: ElementTrees.reducer,\n reactComponents: ReactComponents.reducer,\n componentsMeta: ComponentsMeta.reducer,\n propControllerDescriptors: PropControllerDescriptors.reducer,\n isInBuilder: IsInBuilder.reducer,\n builderEditMode: BuilderEditMode.reducer,\n breakpoints: Breakpoints.reducer,\n}\n\nexport type State = {\n siteVersion: SiteVersion.State\n isReadOnly: IsReadOnly.State\n locale: Locale.State\n documents: Documents.State\n elementTrees: ElementTrees.State\n reactComponents: ReactComponents.State\n componentsMeta: ComponentsMeta.State\n propControllerDescriptors: PropControllerDescriptors.State\n isInBuilder: IsInBuilder.State\n builderEditMode: BuilderEditMode.State\n breakpoints: Breakpoints.State\n}\n\nexport type Dispatch = ThunkDispatch<State, unknown, Action>\n\nfunction getDocumentsStateSlice(state: State): Documents.State {\n return state.documents\n}\n\nexport function getDocument(state: State, documentKey: string): Documents.Document | null {\n return Documents.getDocument(getDocumentsStateSlice(state), documentKey)\n}\n\nfunction getElementTreesSlice(state: State): ElementTrees.State {\n return state.elementTrees\n}\n\nexport function getElements(\n state: State,\n documentKey: string,\n): ElementTrees.ElementTree['elements'] {\n return ElementTrees.getElements(getElementTreesSlice(state), documentKey)\n}\n\nexport function getElementIds(\n state: State,\n documentKey: string,\n): ElementTrees.ElementTree['elementIds'] {\n return ElementTrees.getElementIds(getElementTreesSlice(state), documentKey)\n}\n\nfunction getReactComponentsStateSlice(state: State): ReactComponents.State {\n return state.reactComponents\n}\n\nexport function getReactComponent(\n state: State,\n type: string,\n): ReactComponents.ComponentType | null {\n return ReactComponents.getReactComponent(getReactComponentsStateSlice(state), type)\n}\n\nfunction getComponentsMetaStateSlice(state: State): ComponentsMeta.State {\n return state.componentsMeta\n}\n\nexport function getComponentsMeta(state: State): Map<string, ComponentsMeta.ComponentMeta> {\n return ComponentsMeta.getComponentsMeta(getComponentsMetaStateSlice(state))\n}\n\nexport function getComponentMeta(state: State, type: string): ComponentsMeta.ComponentMeta | null {\n return ComponentsMeta.getComponentMeta(getComponentsMetaStateSlice(state), type)\n}\n\nfunction getPropControllerDescriptorsStateSlice(state: State): PropControllerDescriptors.State {\n return state.propControllerDescriptors\n}\n\nexport function getPropControllerDescriptors(state: State): PropControllerDescriptors.State {\n return PropControllerDescriptors.getPropControllerDescriptors(\n getPropControllerDescriptorsStateSlice(state),\n )\n}\n\nexport function getComponentPropControllerDescriptors(\n state: State,\n componentType: string,\n): PropControllerDescriptors.DescriptorsByProp | null {\n return PropControllerDescriptors.getComponentPropControllerDescriptors(\n getPropControllerDescriptorsStateSlice(state),\n componentType,\n )\n}\n\n/**\n * Returns all document keys sorted by depth, i.e., parent documents come before child documents.\n */\nexport const getDocumentKeysSortedByDepth: (state: State) => string[] = createSelector(\n [getDocumentsStateSlice, getElementTreesSlice],\n (documents, elementTrees) => {\n return [...documents.keys()].sort((a, b) => (elementTrees.get(a)?.elements.has(b) ? -1 : 1))\n },\n)\n\nexport function getElement(\n state: State,\n documentKey: string,\n elementKey: string,\n): Documents.Element | null {\n return ElementTrees.getElement(getElementTreesSlice(state), documentKey, elementKey)\n}\n\nexport function getElementId(state: State, documentKey: string, elementKey: string): string | null {\n return ElementTrees.getElementId(getElementTreesSlice(state), documentKey, elementKey)\n}\n\nexport function getElementPropControllerDescriptors(\n state: State,\n documentKey: string,\n elementKey: string,\n): Record<string, PropControllerDescriptors.PropControllerDescriptor> | null {\n const element = getElement(state, documentKey, elementKey)\n\n if (element == null || Documents.isElementReference(element)) return null\n\n return getComponentPropControllerDescriptors(state, element.type)\n}\n\nexport function getIsInBuilder(state: State): boolean {\n return state.isInBuilder\n}\n\nexport function getIsReadOnly(state: State): boolean {\n return state.isReadOnly\n}\n\nexport function getBuilderEditMode(state: State): BuilderEditMode.State {\n return state.builderEditMode\n}\n\nfunction getBreakpointsStateSlice(state: State): Breakpoints.State {\n return state.breakpoints\n}\n\nexport function getBreakpoints(state: State): Breakpoints.Breakpoints {\n return getBreakpointsStateSlice(state).breakpoints\n}\n\nexport function getBaseBreakpoint(state: State): Breakpoints.BreakpointId {\n return getBreakpointsStateSlice(state).baseBreakpoint\n}\n\nexport function getClientBreakpoint(state: State): Breakpoints.BreakpointId {\n return getBreakpointsStateSlice(state).clientBreakpoint\n}\n\nexport function getLocale(state: State): string | null {\n return state.locale\n}\n"],"mappings":"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","names":[]}
@@ -39,6 +39,9 @@ __export(read_write_state_exports, {
39
39
  getElementImperativeHandlesContainingElement: () => getElementImperativeHandlesContainingElement,
40
40
  getMeasurables: () => getMeasurables,
41
41
  getPointer: () => getPointer,
42
+ getPropController: () => getPropController,
43
+ getPropControllers: () => getPropControllers,
44
+ getPropControllersHandle: () => getPropControllersHandle,
42
45
  parse: () => import_box_models.parse,
43
46
  setupBuilderProxy: () => setupBuilderProxy
44
47
  });
@@ -47,6 +50,7 @@ var import_toolkit = require("@reduxjs/toolkit");
47
50
  var Documents = __toESM(require("./modules/read-write/read-write-documents"));
48
51
  var BoxModels = __toESM(require("./modules/read-write/box-models"));
49
52
  var Pointer = __toESM(require("./modules/read-write/pointer"));
53
+ var PropControllers = __toESM(require("./modules/read-write/prop-controllers"));
50
54
  var ElementImperativeHandles = __toESM(require("./modules/read-write/element-imperative-handles"));
51
55
  var ReadOnlyState = __toESM(require("./read-only-state"));
52
56
  var import_box_models = require("./modules/read-write/box-models");
@@ -55,6 +59,7 @@ const reducers = {
55
59
  documents: Documents.reducer,
56
60
  boxModels: BoxModels.reducer,
57
61
  pointer: Pointer.reducer,
62
+ propControllers: PropControllers.reducer,
58
63
  elementImperativeHandles: ElementImperativeHandles.reducer
59
64
  };
60
65
  function createRootReducer() {
@@ -104,6 +109,35 @@ function getElementImperativeHandlesContainingElement(state, element) {
104
109
  }
105
110
  return filteredElementImperativeHandles;
106
111
  }
112
+ function getPropControllersStateSlice(state) {
113
+ return state.propControllers;
114
+ }
115
+ function getPropControllers(state, { documentKey, elementKey }) {
116
+ return PropControllers.getPropControllers(
117
+ getPropControllersStateSlice(state),
118
+ documentKey,
119
+ elementKey
120
+ );
121
+ }
122
+ function getPropControllersHandle(state, { documentKey, elementKey }) {
123
+ return PropControllers.getPropControllersHandle(
124
+ getPropControllersStateSlice(state),
125
+ documentKey,
126
+ elementKey
127
+ );
128
+ }
129
+ function getPropController(state, {
130
+ documentKey,
131
+ elementKey,
132
+ propName
133
+ }) {
134
+ return PropControllers.getPropController(
135
+ getPropControllersStateSlice(state),
136
+ documentKey,
137
+ elementKey,
138
+ propName
139
+ );
140
+ }
107
141
  function setupBuilderProxy(builderProxy) {
108
142
  return (dispatch) => {
109
143
  return builderProxy.setup({ onHostAction: (action) => dispatch(action) });
@@ -122,6 +156,9 @@ function setupBuilderProxy(builderProxy) {
122
156
  getElementImperativeHandlesContainingElement,
123
157
  getMeasurables,
124
158
  getPointer,
159
+ getPropController,
160
+ getPropControllers,
161
+ getPropControllersHandle,
125
162
  parse,
126
163
  setupBuilderProxy
127
164
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/state/read-write-state.ts"],"sourcesContent":["import { combineReducers, type ThunkAction, type ThunkDispatch } from '@reduxjs/toolkit'\n\nimport * as Documents from './modules/read-write/read-write-documents'\nimport * as BoxModels from './modules/read-write/box-models'\nimport * as Pointer from './modules/read-write/pointer'\nimport * as ElementImperativeHandles from './modules/read-write/element-imperative-handles'\n\nimport { type Action } from './actions'\n\nimport { ElementImperativeHandle } from '../runtimes/react/element-imperative-handle'\n\nimport { BuilderAPIProxy } from './builder-api/proxy'\nimport * as ReadOnlyState from './read-only-state'\n\nexport type { Operation } from './modules/read-write/read-write-documents'\nexport type { BoxModelHandle } from './modules/read-write/box-models'\nexport { createBox, getBox, parse } from './modules/read-write/box-models'\n\nconst reducers = {\n ...ReadOnlyState.reducers,\n documents: Documents.reducer,\n boxModels: BoxModels.reducer,\n pointer: Pointer.reducer,\n elementImperativeHandles: ElementImperativeHandles.reducer,\n}\n\nexport function createRootReducer() {\n return combineReducers(reducers)\n}\n\nexport type State = Omit<ReadOnlyState.State, 'documents'> & {\n documents: Documents.State\n boxModels: BoxModels.State\n pointer: Pointer.State\n elementImperativeHandles: ElementImperativeHandles.State\n}\n\nexport type Dispatch = ThunkDispatch<State, unknown, Action>\n\nfunction getDocumentsStateSlice(state: State): Documents.State {\n return state.documents\n}\n\nexport function getDocuments(state: State): Documents.State {\n return Documents.getDocuments(getDocumentsStateSlice(state))\n}\n\nexport function getDocument(state: State, documentKey: string): Documents.Document | null {\n return Documents.getDocument(getDocumentsStateSlice(state), documentKey)\n}\n\nfunction getBoxModelsStateSlice(state: State): BoxModels.State {\n return state.boxModels\n}\n\nexport function getMeasurables(state: State): Map<string, Map<string, BoxModels.Measurable>> {\n return BoxModels.getMeasurables(getBoxModelsStateSlice(state))\n}\n\nexport function getBoxModels(state: State): Map<string, Map<string, BoxModels.BoxDisplayModel>> {\n return BoxModels.getBoxModels(getBoxModelsStateSlice(state))\n}\n\nexport function getBoxModel(\n state: State,\n documentKey: string,\n elementKey: string,\n): BoxModels.BoxDisplayModel | null {\n return BoxModels.getBoxModel(getBoxModelsStateSlice(state), documentKey, elementKey)\n}\n\nexport function getPointer(state: State): Pointer.Point | null {\n return Pointer.getPointer(state.pointer)\n}\n\nexport function getElementImperativeHandles(\n state: State,\n): Map<string, Map<string, ElementImperativeHandle>> {\n return ElementImperativeHandles.getElementImperativeHandles(state.elementImperativeHandles)\n}\n\nexport function getElementImperativeHandlesContainingElement(\n state: State,\n element: Element,\n): Map<string, Map<string, ElementImperativeHandle>> {\n const elementImperativeHandles = getElementImperativeHandles(state)\n const filteredElementImperativeHandles = new Map<string, Map<string, ElementImperativeHandle>>()\n\n for (const [documentKey, byElementKey] of elementImperativeHandles) {\n const filteredByElementKey = new Map<string, ElementImperativeHandle>()\n\n for (const [elementKey, elementImperativeHandle] of byElementKey) {\n const handleElement = elementImperativeHandle.getDomNode()\n\n if (handleElement?.contains(element)) {\n filteredByElementKey.set(elementKey, elementImperativeHandle)\n }\n }\n\n if (filteredByElementKey.size > 0) {\n filteredElementImperativeHandles.set(documentKey, filteredByElementKey)\n }\n }\n\n return filteredElementImperativeHandles\n}\n\nexport function setupBuilderProxy(\n builderProxy: BuilderAPIProxy,\n): ThunkAction<VoidFunction, State, unknown, Action> {\n return dispatch => {\n return builderProxy.setup({ onHostAction: action => dispatch(action) })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAsE;AAEtE,gBAA2B;AAC3B,gBAA2B;AAC3B,cAAyB;AACzB,+BAA0C;AAO1C,oBAA+B;AAI/B,wBAAyC;AAEzC,MAAM,WAAW;AAAA,EACf,GAAG,cAAc;AAAA,EACjB,WAAW,UAAU;AAAA,EACrB,WAAW,UAAU;AAAA,EACrB,SAAS,QAAQ;AAAA,EACjB,0BAA0B,yBAAyB;AACrD;AAEO,SAAS,oBAAoB;AAClC,aAAO,gCAAgB,QAAQ;AACjC;AAWA,SAAS,uBAAuB,OAA+B;AAC7D,SAAO,MAAM;AACf;AAEO,SAAS,aAAa,OAA+B;AAC1D,SAAO,UAAU,aAAa,uBAAuB,KAAK,CAAC;AAC7D;AAEO,SAAS,YAAY,OAAc,aAAgD;AACxF,SAAO,UAAU,YAAY,uBAAuB,KAAK,GAAG,WAAW;AACzE;AAEA,SAAS,uBAAuB,OAA+B;AAC7D,SAAO,MAAM;AACf;AAEO,SAAS,eAAe,OAA8D;AAC3F,SAAO,UAAU,eAAe,uBAAuB,KAAK,CAAC;AAC/D;AAEO,SAAS,aAAa,OAAmE;AAC9F,SAAO,UAAU,aAAa,uBAAuB,KAAK,CAAC;AAC7D;AAEO,SAAS,YACd,OACA,aACA,YACkC;AAClC,SAAO,UAAU,YAAY,uBAAuB,KAAK,GAAG,aAAa,UAAU;AACrF;AAEO,SAAS,WAAW,OAAoC;AAC7D,SAAO,QAAQ,WAAW,MAAM,OAAO;AACzC;AAEO,SAAS,4BACd,OACmD;AACnD,SAAO,yBAAyB,4BAA4B,MAAM,wBAAwB;AAC5F;AAEO,SAAS,6CACd,OACA,SACmD;AACnD,QAAM,2BAA2B,4BAA4B,KAAK;AAClE,QAAM,mCAAmC,oBAAI,IAAkD;AAE/F,aAAW,CAAC,aAAa,YAAY,KAAK,0BAA0B;AAClE,UAAM,uBAAuB,oBAAI,IAAqC;AAEtE,eAAW,CAAC,YAAY,uBAAuB,KAAK,cAAc;AAChE,YAAM,gBAAgB,wBAAwB,WAAW;AAEzD,UAAI,eAAe,SAAS,OAAO,GAAG;AACpC,6BAAqB,IAAI,YAAY,uBAAuB;AAAA,MAC9D;AAAA,IACF;AAEA,QAAI,qBAAqB,OAAO,GAAG;AACjC,uCAAiC,IAAI,aAAa,oBAAoB;AAAA,IACxE;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,kBACd,cACmD;AACnD,SAAO,cAAY;AACjB,WAAO,aAAa,MAAM,EAAE,cAAc,YAAU,SAAS,MAAM,EAAE,CAAC;AAAA,EACxE;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/state/read-write-state.ts"],"sourcesContent":["import { combineReducers, type ThunkAction, type ThunkDispatch } from '@reduxjs/toolkit'\n\nimport * as Documents from './modules/read-write/read-write-documents'\nimport * as BoxModels from './modules/read-write/box-models'\nimport * as Pointer from './modules/read-write/pointer'\nimport * as PropControllers from './modules/read-write/prop-controllers'\nimport * as ElementImperativeHandles from './modules/read-write/element-imperative-handles'\n\nimport { type Action } from './actions'\n\nimport { ElementImperativeHandle } from '../runtimes/react/element-imperative-handle'\n\nimport { BuilderAPIProxy } from './builder-api/proxy'\nimport * as ReadOnlyState from './read-only-state'\n\nexport type { Operation } from './modules/read-write/read-write-documents'\nexport type { BoxModelHandle } from './modules/read-write/box-models'\nexport { createBox, getBox, parse } from './modules/read-write/box-models'\n\nconst reducers = {\n ...ReadOnlyState.reducers,\n documents: Documents.reducer,\n boxModels: BoxModels.reducer,\n pointer: Pointer.reducer,\n propControllers: PropControllers.reducer,\n elementImperativeHandles: ElementImperativeHandles.reducer,\n}\n\nexport function createRootReducer() {\n return combineReducers(reducers)\n}\n\nexport type State = Omit<ReadOnlyState.State, 'documents'> & {\n documents: Documents.State\n boxModels: BoxModels.State\n pointer: Pointer.State\n propControllers: PropControllers.State\n elementImperativeHandles: ElementImperativeHandles.State\n}\n\nexport type Dispatch = ThunkDispatch<State, unknown, Action>\n\nfunction getDocumentsStateSlice(state: State): Documents.State {\n return state.documents\n}\n\nexport function getDocuments(state: State): Documents.State {\n return Documents.getDocuments(getDocumentsStateSlice(state))\n}\n\nexport function getDocument(state: State, documentKey: string): Documents.Document | null {\n return Documents.getDocument(getDocumentsStateSlice(state), documentKey)\n}\n\nfunction getBoxModelsStateSlice(state: State): BoxModels.State {\n return state.boxModels\n}\n\nexport function getMeasurables(state: State): Map<string, Map<string, BoxModels.Measurable>> {\n return BoxModels.getMeasurables(getBoxModelsStateSlice(state))\n}\n\nexport function getBoxModels(state: State): Map<string, Map<string, BoxModels.BoxDisplayModel>> {\n return BoxModels.getBoxModels(getBoxModelsStateSlice(state))\n}\n\nexport function getBoxModel(\n state: State,\n documentKey: string,\n elementKey: string,\n): BoxModels.BoxDisplayModel | null {\n return BoxModels.getBoxModel(getBoxModelsStateSlice(state), documentKey, elementKey)\n}\n\nexport function getPointer(state: State): Pointer.Point | null {\n return Pointer.getPointer(state.pointer)\n}\n\nexport function getElementImperativeHandles(\n state: State,\n): Map<string, Map<string, ElementImperativeHandle>> {\n return ElementImperativeHandles.getElementImperativeHandles(state.elementImperativeHandles)\n}\n\nexport function getElementImperativeHandlesContainingElement(\n state: State,\n element: Element,\n): Map<string, Map<string, ElementImperativeHandle>> {\n const elementImperativeHandles = getElementImperativeHandles(state)\n const filteredElementImperativeHandles = new Map<string, Map<string, ElementImperativeHandle>>()\n\n for (const [documentKey, byElementKey] of elementImperativeHandles) {\n const filteredByElementKey = new Map<string, ElementImperativeHandle>()\n\n for (const [elementKey, elementImperativeHandle] of byElementKey) {\n const handleElement = elementImperativeHandle.getDomNode()\n\n if (handleElement?.contains(element)) {\n filteredByElementKey.set(elementKey, elementImperativeHandle)\n }\n }\n\n if (filteredByElementKey.size > 0) {\n filteredElementImperativeHandles.set(documentKey, filteredByElementKey)\n }\n }\n\n return filteredElementImperativeHandles\n}\n\nfunction getPropControllersStateSlice(state: State): PropControllers.State {\n return state.propControllers\n}\n\nexport function getPropControllers(\n state: State,\n { documentKey, elementKey }: { documentKey: string; elementKey: string },\n) {\n return PropControllers.getPropControllers(\n getPropControllersStateSlice(state),\n documentKey,\n elementKey,\n )\n}\n\nexport function getPropControllersHandle(\n state: State,\n { documentKey, elementKey }: { documentKey: string; elementKey: string },\n) {\n return PropControllers.getPropControllersHandle(\n getPropControllersStateSlice(state),\n documentKey,\n elementKey,\n )\n}\n\nexport function getPropController(\n state: State,\n {\n documentKey,\n elementKey,\n propName,\n }: { documentKey: string; elementKey: string; propName: string },\n) {\n return PropControllers.getPropController(\n getPropControllersStateSlice(state),\n documentKey,\n elementKey,\n propName,\n )\n}\n\nexport function setupBuilderProxy(\n builderProxy: BuilderAPIProxy,\n): ThunkAction<VoidFunction, State, unknown, Action> {\n return dispatch => {\n return builderProxy.setup({ onHostAction: action => dispatch(action) })\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAsE;AAEtE,gBAA2B;AAC3B,gBAA2B;AAC3B,cAAyB;AACzB,sBAAiC;AACjC,+BAA0C;AAO1C,oBAA+B;AAI/B,wBAAyC;AAEzC,MAAM,WAAW;AAAA,EACf,GAAG,cAAc;AAAA,EACjB,WAAW,UAAU;AAAA,EACrB,WAAW,UAAU;AAAA,EACrB,SAAS,QAAQ;AAAA,EACjB,iBAAiB,gBAAgB;AAAA,EACjC,0BAA0B,yBAAyB;AACrD;AAEO,SAAS,oBAAoB;AAClC,aAAO,gCAAgB,QAAQ;AACjC;AAYA,SAAS,uBAAuB,OAA+B;AAC7D,SAAO,MAAM;AACf;AAEO,SAAS,aAAa,OAA+B;AAC1D,SAAO,UAAU,aAAa,uBAAuB,KAAK,CAAC;AAC7D;AAEO,SAAS,YAAY,OAAc,aAAgD;AACxF,SAAO,UAAU,YAAY,uBAAuB,KAAK,GAAG,WAAW;AACzE;AAEA,SAAS,uBAAuB,OAA+B;AAC7D,SAAO,MAAM;AACf;AAEO,SAAS,eAAe,OAA8D;AAC3F,SAAO,UAAU,eAAe,uBAAuB,KAAK,CAAC;AAC/D;AAEO,SAAS,aAAa,OAAmE;AAC9F,SAAO,UAAU,aAAa,uBAAuB,KAAK,CAAC;AAC7D;AAEO,SAAS,YACd,OACA,aACA,YACkC;AAClC,SAAO,UAAU,YAAY,uBAAuB,KAAK,GAAG,aAAa,UAAU;AACrF;AAEO,SAAS,WAAW,OAAoC;AAC7D,SAAO,QAAQ,WAAW,MAAM,OAAO;AACzC;AAEO,SAAS,4BACd,OACmD;AACnD,SAAO,yBAAyB,4BAA4B,MAAM,wBAAwB;AAC5F;AAEO,SAAS,6CACd,OACA,SACmD;AACnD,QAAM,2BAA2B,4BAA4B,KAAK;AAClE,QAAM,mCAAmC,oBAAI,IAAkD;AAE/F,aAAW,CAAC,aAAa,YAAY,KAAK,0BAA0B;AAClE,UAAM,uBAAuB,oBAAI,IAAqC;AAEtE,eAAW,CAAC,YAAY,uBAAuB,KAAK,cAAc;AAChE,YAAM,gBAAgB,wBAAwB,WAAW;AAEzD,UAAI,eAAe,SAAS,OAAO,GAAG;AACpC,6BAAqB,IAAI,YAAY,uBAAuB;AAAA,MAC9D;AAAA,IACF;AAEA,QAAI,qBAAqB,OAAO,GAAG;AACjC,uCAAiC,IAAI,aAAa,oBAAoB;AAAA,IACxE;AAAA,EACF;AAEA,SAAO;AACT;AAEA,SAAS,6BAA6B,OAAqC;AACzE,SAAO,MAAM;AACf;AAEO,SAAS,mBACd,OACA,EAAE,aAAa,WAAW,GAC1B;AACA,SAAO,gBAAgB;AAAA,IACrB,6BAA6B,KAAK;AAAA,IAClC;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,yBACd,OACA,EAAE,aAAa,WAAW,GAC1B;AACA,SAAO,gBAAgB;AAAA,IACrB,6BAA6B,KAAK;AAAA,IAClC;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,kBACd,OACA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AACF,GACA;AACA,SAAO,gBAAgB;AAAA,IACrB,6BAA6B,KAAK;AAAA,IAClC;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEO,SAAS,kBACd,cACmD;AACnD,SAAO,cAAY;AACjB,WAAO,aAAa,MAAM,EAAE,cAAc,YAAU,SAAS,MAAM,EAAE,CAAC;AAAA,EACxE;AACF;","names":[]}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var action_types_exports = {};
20
+ __export(action_types_exports, {
21
+ SharedActionTypes: () => SharedActionTypes
22
+ });
23
+ module.exports = __toCommonJS(action_types_exports);
24
+ const SharedActionTypes = {
25
+ MAKESWIFT_CONNECTION_INIT: "MAKESWIFT_CONNECTION_INIT",
26
+ REGISTER_DOCUMENT: "REGISTER_DOCUMENT",
27
+ UNREGISTER_DOCUMENT: "UNREGISTER_DOCUMENT"
28
+ };
29
+ // Annotate the CommonJS export names for ESM import in node:
30
+ 0 && (module.exports = {
31
+ SharedActionTypes
32
+ });
33
+ //# sourceMappingURL=action-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/state/shared-api/action-types.ts"],"sourcesContent":["// bidirectional action types, both the host and the builder can dispatch these actions\nexport const SharedActionTypes = {\n MAKESWIFT_CONNECTION_INIT: 'MAKESWIFT_CONNECTION_INIT',\n\n REGISTER_DOCUMENT: 'REGISTER_DOCUMENT',\n UNREGISTER_DOCUMENT: 'UNREGISTER_DOCUMENT',\n} as const\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACO,MAAM,oBAAoB;AAAA,EAC/B,2BAA2B;AAAA,EAE3B,mBAAmB;AAAA,EACnB,qBAAqB;AACvB;","names":[]}
@@ -16,33 +16,28 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var shared_api_exports = {};
20
- __export(shared_api_exports, {
21
- SharedActionTypes: () => SharedActionTypes,
19
+ var actions_exports = {};
20
+ __export(actions_exports, {
22
21
  makeswiftConnectionInit: () => makeswiftConnectionInit,
23
22
  registerDocument: () => registerDocument,
24
23
  registerDocumentsEffect: () => registerDocumentsEffect,
25
24
  unregisterDocument: () => unregisterDocument
26
25
  });
27
- module.exports = __toCommonJS(shared_api_exports);
28
- const SharedActionTypes = {
29
- MAKESWIFT_CONNECTION_INIT: "MAKESWIFT_CONNECTION_INIT",
30
- REGISTER_DOCUMENT: "REGISTER_DOCUMENT",
31
- UNREGISTER_DOCUMENT: "UNREGISTER_DOCUMENT"
32
- };
26
+ module.exports = __toCommonJS(actions_exports);
27
+ var import_action_types = require("./action-types");
33
28
  function makeswiftConnectionInit() {
34
29
  return {
35
- type: SharedActionTypes.MAKESWIFT_CONNECTION_INIT
30
+ type: import_action_types.SharedActionTypes.MAKESWIFT_CONNECTION_INIT
36
31
  };
37
32
  }
38
33
  function registerDocument(document) {
39
34
  return {
40
- type: SharedActionTypes.REGISTER_DOCUMENT,
35
+ type: import_action_types.SharedActionTypes.REGISTER_DOCUMENT,
41
36
  payload: { documentKey: document.key, document }
42
37
  };
43
38
  }
44
39
  function unregisterDocument(documentKey) {
45
- return { type: SharedActionTypes.UNREGISTER_DOCUMENT, payload: { documentKey } };
40
+ return { type: import_action_types.SharedActionTypes.UNREGISTER_DOCUMENT, payload: { documentKey } };
46
41
  }
47
42
  function registerDocumentsEffect(documents) {
48
43
  return (dispatch) => {
@@ -54,10 +49,9 @@ function registerDocumentsEffect(documents) {
54
49
  }
55
50
  // Annotate the CommonJS export names for ESM import in node:
56
51
  0 && (module.exports = {
57
- SharedActionTypes,
58
52
  makeswiftConnectionInit,
59
53
  registerDocument,
60
54
  registerDocumentsEffect,
61
55
  unregisterDocument
62
56
  });
63
- //# sourceMappingURL=shared-api.js.map
57
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/state/shared-api/actions.ts"],"sourcesContent":["import { type ThunkAction } from '@reduxjs/toolkit'\n\nimport { type Element, type Document, EMBEDDED_DOCUMENT_TYPE } from '../modules/read-only-documents'\n\nimport { SharedActionTypes } from './action-types'\n\ntype DocumentPayloadBaseDocument = {\n key: string\n rootElement: Element\n locale?: string | null // older versions of the runtime may not provide this field\n}\n\ntype DocumentPayloadEmbeddedDocument = {\n key: string\n locale: string | null\n id: string\n type: string\n name: string\n rootElement: Element\n meta: { allowLocaleFallback: boolean; requestedLocale: string | null; description?: string }\n __type: typeof EMBEDDED_DOCUMENT_TYPE\n}\n\nexport type DocumentPayload = DocumentPayloadBaseDocument | DocumentPayloadEmbeddedDocument\n\ntype MakeswiftConnectionInitAction = { type: typeof SharedActionTypes.MAKESWIFT_CONNECTION_INIT }\n\ntype RegisterDocumentAction = {\n type: typeof SharedActionTypes.REGISTER_DOCUMENT\n payload: { documentKey: string; document: DocumentPayload }\n}\n\ntype UnregisterDocumentAction = {\n type: typeof SharedActionTypes.UNREGISTER_DOCUMENT\n payload: { documentKey: string }\n}\n\nexport type SharedAction =\n | MakeswiftConnectionInitAction\n | RegisterDocumentAction\n | UnregisterDocumentAction\n\nexport function makeswiftConnectionInit(): MakeswiftConnectionInitAction {\n return {\n type: SharedActionTypes.MAKESWIFT_CONNECTION_INIT,\n }\n}\n\nexport function registerDocument(document: Document): RegisterDocumentAction {\n return {\n type: SharedActionTypes.REGISTER_DOCUMENT,\n payload: { documentKey: document.key, document },\n }\n}\n\nexport function unregisterDocument(documentKey: string): UnregisterDocumentAction {\n return { type: SharedActionTypes.UNREGISTER_DOCUMENT, payload: { documentKey } }\n}\n\nexport function registerDocumentsEffect(\n documents: Document[],\n): ThunkAction<() => void, unknown, unknown, SharedAction> {\n return dispatch => {\n documents.forEach(document => dispatch(registerDocument(document)))\n\n return () => {\n documents.forEach(document => dispatch(unregisterDocument(document.key)))\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,0BAAkC;AAsC3B,SAAS,0BAAyD;AACvE,SAAO;AAAA,IACL,MAAM,sCAAkB;AAAA,EAC1B;AACF;AAEO,SAAS,iBAAiB,UAA4C;AAC3E,SAAO;AAAA,IACL,MAAM,sCAAkB;AAAA,IACxB,SAAS,EAAE,aAAa,SAAS,KAAK,SAAS;AAAA,EACjD;AACF;AAEO,SAAS,mBAAmB,aAA+C;AAChF,SAAO,EAAE,MAAM,sCAAkB,qBAAqB,SAAS,EAAE,YAAY,EAAE;AACjF;AAEO,SAAS,wBACd,WACyD;AACzD,SAAO,cAAY;AACjB,cAAU,QAAQ,cAAY,SAAS,iBAAiB,QAAQ,CAAC,CAAC;AAElE,WAAO,MAAM;AACX,gBAAU,QAAQ,cAAY,SAAS,mBAAmB,SAAS,GAAG,CAAC,CAAC;AAAA,IAC1E;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var shared_api_exports = {};
17
+ module.exports = __toCommonJS(shared_api_exports);
18
+ __reExport(shared_api_exports, require("./action-types"), module.exports);
19
+ __reExport(shared_api_exports, require("./actions"), module.exports);
20
+ // Annotate the CommonJS export names for ESM import in node:
21
+ 0 && (module.exports = {
22
+ ...require("./action-types"),
23
+ ...require("./actions")
24
+ });
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/state/shared-api/index.ts"],"sourcesContent":["export * from './action-types'\nexport * from './actions'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,+BAAc,2BAAd;AACA,+BAAc,sBADd;","names":[]}
@@ -35,12 +35,13 @@ __export(store_exports, {
35
35
  module.exports = __toCommonJS(store_exports);
36
36
  var import_toolkit = require("@reduxjs/toolkit");
37
37
  var import_toolkit2 = require("./toolkit");
38
- var import_actions = require("./builder-api/actions");
38
+ var import_action_types = require("./builder-api/action-types");
39
39
  var import_host_api = require("./host-api");
40
40
  var Breakpoints = __toESM(require("./modules/breakpoints"));
41
41
  var import_read_only_element_tree = require("./middleware/read-only-element-tree");
42
42
  var import_makeswift_api_client_sync = require("./middleware/makeswift-api-client-sync");
43
43
  var import_breakpoint_watch = require("./mixins/breakpoint-watch");
44
+ var import_read_write_actions = require("./actions/internal/read-write-actions");
44
45
  var ReadOnlyState = __toESM(require("./read-only-state"));
45
46
  const configureStore = ({
46
47
  name,
@@ -60,8 +61,8 @@ const configureStore = ({
60
61
  name: `${name} (${(/* @__PURE__ */ new Date()).toISOString()})`,
61
62
  actionsDenylist: [
62
63
  import_host_api.HostActionTypes.BUILDER_POINTER_MOVE,
63
- import_actions.BuilderActionTypes.HANDLE_POINTER_MOVE,
64
- import_actions.BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE
64
+ import_action_types.BuilderActionTypes.HANDLE_POINTER_MOVE,
65
+ import_action_types.BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE
65
66
  ]
66
67
  })
67
68
  });
@@ -153,6 +154,7 @@ function configureReadWriteStore({
153
154
  readWriteMiddlewareRef.current = createReadWriteMiddleware({ builderProxy });
154
155
  const dispatch = store.dispatch;
155
156
  const builderProxyCleanup = dispatch(setupBuilderProxy(builderProxy));
157
+ dispatch((0, import_read_write_actions.flushActionBuffer)());
156
158
  readWriteCleanup = () => {
157
159
  readWriteMiddlewareRef.current = null;
158
160
  builderProxyCleanup();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/state/store.ts"],"sourcesContent":["import {\n type Middleware,\n type StoreEnhancer,\n type MiddlewareAPI,\n Tuple,\n configureStore as configureReduxStore,\n combineReducers,\n compose,\n} from '@reduxjs/toolkit'\n\nimport { ApiResourcesClient } from '../api/api-resources-client'\n\nimport { actionMiddleware, middlewareOptions, devToolsConfig } from './toolkit'\nimport { BuilderActionTypes } from './builder-api/actions'\nimport { HostActionTypes } from './host-api'\n\nimport * as Breakpoints from './modules/breakpoints'\n\nimport { readOnlyElementTreeMiddleware } from './middleware/read-only-element-tree'\nimport { makeswiftApiClientSyncMiddleware } from './middleware/makeswift-api-client-sync'\nimport { type BreakpointWatch, breakpointWatchMixin } from './mixins/breakpoint-watch'\n\nimport { type Action } from './actions'\n\nimport { type State as ReadWriteState } from './read-write-state'\nimport * as ReadOnlyState from './read-only-state'\nimport {\n type State,\n type Dispatch,\n type ReadOnlyReducer,\n type ReadWriteDispatch,\n} from './unified-state'\n\nexport { type State } from './unified-state'\n\nconst configureStore = <Items extends readonly StoreEnhancer[] = []>({\n name,\n preloadedState,\n enhancers,\n middleware,\n}: {\n name: string\n preloadedState: Partial<State>\n enhancers: () => Tuple<Items>\n middleware?: () => Middleware[]\n}) => {\n const store = configureReduxStore({\n reducer: combineReducers(ReadOnlyState.reducers),\n preloadedState,\n\n middleware: getDefaultMiddleware =>\n getDefaultMiddleware(middlewareOptions).concat([\n readOnlyElementTreeMiddleware(),\n ...(middleware ? middleware() : []),\n ]),\n\n enhancers: getDefaultEnhancers => getDefaultEnhancers().concat(enhancers()),\n\n devTools: devToolsConfig({\n name: `${name} (${new Date().toISOString()})`,\n actionsDenylist: [\n HostActionTypes.BUILDER_POINTER_MOVE,\n BuilderActionTypes.HANDLE_POINTER_MOVE,\n BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE,\n ],\n }),\n })\n\n return store\n}\n\nexport function configureProtoStore({\n name,\n breakpoints,\n}: {\n name: string\n breakpoints: Breakpoints.Breakpoints | undefined\n}) {\n return configureStore({\n name,\n preloadedState: {\n breakpoints: Breakpoints.getInitialState(breakpoints),\n },\n enhancers: () => new Tuple(),\n })\n}\n\nexport type ProtoStore = ReturnType<typeof configureProtoStore>\n\ntype ReadWriteMiddleware = ReturnType<\n typeof import('./middleware/read-write').createReadWriteMiddleware\n>\n\ntype ReadWriteMiddlewareRef = {\n current: ReadWriteMiddleware | null\n}\n\nexport function conditionalReadWriteMiddleware(\n middlewareRef: ReadWriteMiddlewareRef,\n): Middleware<Dispatch, State, Dispatch> {\n let readWriteActionBuffer: Action[] = []\n let middlewares: ReadWriteMiddleware | null = null\n let enhancedDispatch: Dispatch | null = null\n\n return actionMiddleware(({ dispatch, getState }) => next => {\n return (action: Action) => {\n const state = getState()\n\n if (middlewareRef.current == null) {\n if (!state.isReadOnly) {\n // because switching to the read-write state is an asynchronous operation,\n // we need to buffer all actions dispatched after the isReadOnly state is\n // set to false but before the read-write middleware is installed\n readWriteActionBuffer.push(action)\n }\n\n return next(action)\n }\n\n if (state.isReadOnly) {\n console.error('Read-write state mismatch', {\n isReadOnly: state.isReadOnly,\n middlewareRef: middlewareRef.current,\n siteVersion: state.siteVersion,\n })\n }\n\n // build and cache the enhanced dispatch chain when read-write middleware is installed\n if (enhancedDispatch == null || middlewares !== middlewareRef.current) {\n middlewares = middlewareRef.current\n\n const middlewareApi = { dispatch, getState } as MiddlewareAPI<\n ReadWriteDispatch,\n ReadWriteState\n >\n\n enhancedDispatch = compose<Dispatch>(...middlewares.map(mw => mw(middlewareApi)))(next)\n }\n\n // dispatch buffered actions, if any\n if (readWriteActionBuffer.length > 0) {\n const readWriteActions = [...readWriteActionBuffer]\n readWriteActionBuffer = []\n\n // Note that we're rerunning the actions through the entire middleware chain,\n // including the read-only middleware and the reducers, some of which have\n // already processed these actions once. This is safe to do because actions that\n // are run as part of page initialization are idempotent.\n for (const bufferedAction of readWriteActions) {\n enhancedDispatch(bufferedAction)\n }\n }\n\n return enhancedDispatch(action)\n }\n })\n}\n\nexport interface ReadWriteStateMixin {\n readonly apiResourcesClient: ApiResourcesClient\n\n loadReadWriteStateIfNeeded(): Promise<() => void>\n}\n\nfunction withMixin<M extends {}>(mixin: M): StoreEnhancer<M> {\n return next => (reducer, preloadedState?) => ({\n ...next(reducer, preloadedState),\n ...mixin,\n })\n}\n\nexport function configureReadWriteStore({\n name,\n appOrigin,\n apiResourcesClient,\n preloadedState,\n}: {\n name: string\n appOrigin: string\n apiResourcesClient: ApiResourcesClient\n preloadedState: Partial<State>\n}) {\n const readWriteMiddlewareRef: ReadWriteMiddlewareRef = {\n current: null,\n }\n\n let refCount = 0\n let readWriteCleanup: (() => void) | null = null\n let readWriteSetupPromise: Promise<void> | null = null\n\n const loadReadWriteState = async (): Promise<void> => {\n if (readWriteCleanup != null) {\n return\n }\n\n if (readWriteSetupPromise != null) {\n await readWriteSetupPromise\n return\n }\n\n readWriteSetupPromise = (async () => {\n // import all the modules needed for read-write mode before proceeding with\n // the setup to avoid race conditions when `setup` is called concurrently\n // in two different page regions\n const { BuilderAPIProxy } = await import('./builder-api/proxy')\n const { createRootReducer, setupBuilderProxy } = await import('./read-write-state')\n const { createReadWriteMiddleware } = await import('./middleware/read-write')\n\n // IMPORTANT: only synchronous code after this point\n\n // with all modules imported, check if another concurrent setup already\n // initialized the read-write middleware\n if (readWriteMiddlewareRef.current != null) {\n return\n }\n\n store.replaceReducer(createRootReducer() as ReadOnlyReducer)\n\n const builderProxy = new BuilderAPIProxy({ appOrigin })\n readWriteMiddlewareRef.current = createReadWriteMiddleware({ builderProxy })\n\n const dispatch = store.dispatch as ReadWriteDispatch\n const builderProxyCleanup = dispatch(setupBuilderProxy(builderProxy))\n\n readWriteCleanup = () => {\n readWriteMiddlewareRef.current = null\n builderProxyCleanup()\n }\n })()\n\n try {\n await readWriteSetupPromise\n } finally {\n readWriteSetupPromise = null\n }\n }\n\n const store = configureStore({\n name,\n preloadedState,\n\n middleware: () => [\n makeswiftApiClientSyncMiddleware(apiResourcesClient),\n conditionalReadWriteMiddleware(readWriteMiddlewareRef),\n ],\n\n enhancers: () =>\n new Tuple(\n withMixin<BreakpointWatch>(\n breakpointWatchMixin({\n dispatch: (...args: Parameters<Dispatch>) => store.dispatch(...args),\n getState: (): State => store.getState(),\n subscribe: (listener): VoidFunction => store.subscribe(listener),\n }),\n ),\n\n withMixin<ReadWriteStateMixin>({\n apiResourcesClient,\n loadReadWriteStateIfNeeded: async () => {\n const { isReadOnly } = store.getState()\n\n if (isReadOnly) {\n if (refCount > 0) {\n console.error('Read-write state mismatch', { isReadOnly, refCount })\n }\n\n return () => {}\n }\n\n await loadReadWriteState()\n refCount += 1\n\n let didCleanup = false\n return () => {\n if (didCleanup) {\n return\n }\n\n didCleanup = true\n refCount -= 1\n if (refCount === 0 && readWriteCleanup != null) {\n readWriteCleanup()\n readWriteCleanup = null\n }\n }\n },\n }),\n ),\n })\n\n return store\n}\n\nexport type Store = ReturnType<typeof configureReadWriteStore>\n"],"mappings":"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","names":["import_toolkit","configureReduxStore"]}
1
+ {"version":3,"sources":["../../../src/state/store.ts"],"sourcesContent":["import {\n type Middleware,\n type StoreEnhancer,\n type MiddlewareAPI,\n Tuple,\n configureStore as configureReduxStore,\n combineReducers,\n compose,\n} from '@reduxjs/toolkit'\n\nimport { ApiResourcesClient } from '../api/api-resources-client'\n\nimport { actionMiddleware, middlewareOptions, devToolsConfig } from './toolkit'\nimport { BuilderActionTypes } from './builder-api/action-types'\nimport { HostActionTypes } from './host-api'\n\nimport * as Breakpoints from './modules/breakpoints'\n\nimport { readOnlyElementTreeMiddleware } from './middleware/read-only-element-tree'\nimport { makeswiftApiClientSyncMiddleware } from './middleware/makeswift-api-client-sync'\nimport { type BreakpointWatch, breakpointWatchMixin } from './mixins/breakpoint-watch'\n\nimport { flushActionBuffer } from './actions/internal/read-write-actions'\nimport { type Action } from './actions'\n\nimport { type State as ReadWriteState } from './read-write-state'\nimport * as ReadOnlyState from './read-only-state'\nimport {\n type State,\n type Dispatch,\n type ReadOnlyReducer,\n type ReadWriteDispatch,\n} from './unified-state'\n\nexport { type State } from './unified-state'\n\nconst configureStore = <Items extends readonly StoreEnhancer[] = []>({\n name,\n preloadedState,\n enhancers,\n middleware,\n}: {\n name: string\n preloadedState: Partial<State>\n enhancers: () => Tuple<Items>\n middleware?: () => Middleware[]\n}) => {\n const store = configureReduxStore({\n reducer: combineReducers(ReadOnlyState.reducers),\n preloadedState,\n\n middleware: getDefaultMiddleware =>\n getDefaultMiddleware(middlewareOptions).concat([\n readOnlyElementTreeMiddleware(),\n ...(middleware ? middleware() : []),\n ]),\n\n enhancers: getDefaultEnhancers => getDefaultEnhancers().concat(enhancers()),\n\n devTools: devToolsConfig({\n name: `${name} (${new Date().toISOString()})`,\n actionsDenylist: [\n HostActionTypes.BUILDER_POINTER_MOVE,\n BuilderActionTypes.HANDLE_POINTER_MOVE,\n BuilderActionTypes.ELEMENT_FROM_POINT_CHANGE,\n ],\n }),\n })\n\n return store\n}\n\nexport function configureProtoStore({\n name,\n breakpoints,\n}: {\n name: string\n breakpoints: Breakpoints.Breakpoints | undefined\n}) {\n return configureStore({\n name,\n preloadedState: {\n breakpoints: Breakpoints.getInitialState(breakpoints),\n },\n enhancers: () => new Tuple(),\n })\n}\n\nexport type ProtoStore = ReturnType<typeof configureProtoStore>\n\ntype ReadWriteMiddleware = ReturnType<\n typeof import('./middleware/read-write').createReadWriteMiddleware\n>\n\ntype ReadWriteMiddlewareRef = {\n current: ReadWriteMiddleware | null\n}\n\nexport function conditionalReadWriteMiddleware(\n middlewareRef: ReadWriteMiddlewareRef,\n): Middleware<Dispatch, State, Dispatch> {\n let readWriteActionBuffer: Action[] = []\n let middlewares: ReadWriteMiddleware | null = null\n let enhancedDispatch: Dispatch | null = null\n\n return actionMiddleware(({ dispatch, getState }) => next => {\n return (action: Action) => {\n const state = getState()\n\n if (middlewareRef.current == null) {\n if (!state.isReadOnly) {\n // because switching to the read-write state is an asynchronous operation,\n // we need to buffer all actions dispatched after the isReadOnly state is\n // set to false but before the read-write middleware is installed\n readWriteActionBuffer.push(action)\n }\n\n return next(action)\n }\n\n if (state.isReadOnly) {\n // `middlewareRef` is set, but we're still somehow in a read-only state\n console.error('Read-write state mismatch', {\n isReadOnly: state.isReadOnly,\n middlewareRef: middlewareRef.current,\n siteVersion: state.siteVersion,\n })\n }\n\n // build and cache the enhanced dispatch chain when read-write middleware is installed\n if (enhancedDispatch == null || middlewares !== middlewareRef.current) {\n middlewares = middlewareRef.current\n\n const middlewareApi = { dispatch, getState } as MiddlewareAPI<\n ReadWriteDispatch,\n ReadWriteState\n >\n\n enhancedDispatch = compose<Dispatch>(...middlewares.map(mw => mw(middlewareApi)))(next)\n }\n\n // dispatch buffered actions, if any\n if (readWriteActionBuffer.length > 0) {\n const readWriteActions = [...readWriteActionBuffer]\n readWriteActionBuffer = []\n\n // Note that we're rerunning the actions through the entire middleware chain,\n // including the read-only middleware and the reducers, some of which have\n // already processed these actions once. This is safe to do because actions that\n // are run as part of page initialization are idempotent.\n for (const bufferedAction of readWriteActions) {\n enhancedDispatch(bufferedAction)\n }\n }\n\n return enhancedDispatch(action)\n }\n })\n}\n\nexport interface ReadWriteStateMixin {\n readonly apiResourcesClient: ApiResourcesClient\n\n loadReadWriteStateIfNeeded(): Promise<() => void>\n}\n\nfunction withMixin<M extends object>(mixin: M): StoreEnhancer<M> {\n return next => (reducer, preloadedState?) => ({\n ...next(reducer, preloadedState),\n ...mixin,\n })\n}\n\nexport function configureReadWriteStore({\n name,\n appOrigin,\n apiResourcesClient,\n preloadedState,\n}: {\n name: string\n appOrigin: string\n apiResourcesClient: ApiResourcesClient\n preloadedState: Partial<State>\n}) {\n const readWriteMiddlewareRef: ReadWriteMiddlewareRef = {\n current: null,\n }\n\n let refCount = 0\n let readWriteCleanup: (() => void) | null = null\n let readWriteSetupPromise: Promise<void> | null = null\n\n const loadReadWriteState = async (): Promise<void> => {\n if (readWriteCleanup != null) {\n return\n }\n\n if (readWriteSetupPromise != null) {\n await readWriteSetupPromise\n return\n }\n\n readWriteSetupPromise = (async () => {\n // import all the modules needed for read-write mode before proceeding with\n // the setup to avoid race conditions when `setup` is called concurrently\n // in two different page regions\n const { BuilderAPIProxy } = await import('./builder-api/proxy')\n const { createRootReducer, setupBuilderProxy } = await import('./read-write-state')\n const { createReadWriteMiddleware } = await import('./middleware/read-write')\n\n // IMPORTANT: only synchronous code after this point\n\n // with all modules imported, check if another concurrent setup already\n // initialized the read-write middleware\n if (readWriteMiddlewareRef.current != null) {\n return\n }\n\n store.replaceReducer(createRootReducer() as ReadOnlyReducer)\n\n const builderProxy = new BuilderAPIProxy({ appOrigin })\n readWriteMiddlewareRef.current = createReadWriteMiddleware({ builderProxy })\n\n const dispatch = store.dispatch as ReadWriteDispatch\n const builderProxyCleanup = dispatch(setupBuilderProxy(builderProxy))\n\n // trigger a flush of buffered actions in `conditionalReadWriteMiddleware`;\n // the `dispatch(setupBuilderProxy(builderProxy))` call above is not sufficient\n // as it dispatches a thunk action, which is intercepted and handled by the\n // default thunk middleware and never reaches `conditionalReadWriteMiddleware`\n dispatch(flushActionBuffer())\n\n readWriteCleanup = () => {\n readWriteMiddlewareRef.current = null\n builderProxyCleanup()\n }\n })()\n\n try {\n await readWriteSetupPromise\n } finally {\n readWriteSetupPromise = null\n }\n }\n\n const store = configureStore({\n name,\n preloadedState,\n\n middleware: () => [\n makeswiftApiClientSyncMiddleware(apiResourcesClient),\n conditionalReadWriteMiddleware(readWriteMiddlewareRef),\n ],\n\n enhancers: () =>\n new Tuple(\n withMixin<BreakpointWatch>(\n breakpointWatchMixin({\n dispatch: (...args: Parameters<Dispatch>) => store.dispatch(...args),\n getState: (): State => store.getState(),\n subscribe: (listener): VoidFunction => store.subscribe(listener),\n }),\n ),\n\n withMixin<ReadWriteStateMixin>({\n apiResourcesClient,\n loadReadWriteStateIfNeeded: async () => {\n const { isReadOnly } = store.getState()\n\n if (isReadOnly) {\n if (refCount > 0) {\n console.error('Read-write state mismatch', { isReadOnly, refCount })\n }\n\n return () => {}\n }\n\n await loadReadWriteState()\n refCount += 1\n\n let didCleanup = false\n return () => {\n if (didCleanup) {\n return\n }\n\n didCleanup = true\n refCount -= 1\n if (refCount === 0 && readWriteCleanup != null) {\n readWriteCleanup()\n readWriteCleanup = null\n }\n }\n },\n }),\n ),\n })\n\n return store\n}\n\nexport type Store = ReturnType<typeof configureReadWriteStore>\n"],"mappings":"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","names":["import_toolkit","configureReduxStore"]}
@@ -36,10 +36,7 @@ var ElementTrees = __toESM(require("../modules/element-trees"));
36
36
  var import_control = require("../../controls/control");
37
37
  function getTranslatableContent(descriptors, elementTree) {
38
38
  const translatableData = {};
39
- for (const element of ElementTrees.traverseElementTree(
40
- elementTree,
41
- descriptors
42
- )) {
39
+ for (const element of ElementTrees.traverseElementTree(elementTree, descriptors)) {
43
40
  if (Documents.isElementReference(element))
44
41
  continue;
45
42
  const elementDescriptors = descriptors.get(element.type);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/state/translations/get.ts"],"sourcesContent":["import * as Documents from '../modules/read-only-documents'\nimport * as ElementTrees from '../modules/element-trees'\nimport { getTranslatableData } from '../../controls/control'\nimport type {DescriptorsByComponentType} from '../modules/prop-controllers'\n\nexport function getTranslatableContent(\n descriptors: DescriptorsByComponentType,\n elementTree: Documents.ElementData,\n): Record<string, Documents.Data> {\n const translatableData: Record<string, Documents.Data> = {}\n\n for (const element of ElementTrees.traverseElementTree(\n elementTree,\n descriptors,\n )) {\n if (Documents.isElementReference(element)) continue\n\n const elementDescriptors = descriptors.get(element.type)\n if (elementDescriptors == null) continue\n\n Object.entries(elementDescriptors).forEach(([propName, descriptor]) => {\n const translatablePropData = getTranslatableData(descriptor, element.props[propName])\n\n if (translatablePropData != null) {\n translatableData[`${element.key}:${propName}`] = translatablePropData\n }\n })\n }\n\n return translatableData\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAA2B;AAC3B,mBAA8B;AAC9B,qBAAoC;AAG7B,SAAS,uBACd,aACA,aACgC;AAChC,QAAM,mBAAmD,CAAC;AAE1D,aAAW,WAAW,aAAa;AAAA,IACjC;AAAA,IACA;AAAA,EACF,GAAG;AACD,QAAI,UAAU,mBAAmB,OAAO;AAAG;AAE3C,UAAM,qBAAqB,YAAY,IAAI,QAAQ,IAAI;AACvD,QAAI,sBAAsB;AAAM;AAEhC,WAAO,QAAQ,kBAAkB,EAAE,QAAQ,CAAC,CAAC,UAAU,UAAU,MAAM;AACrE,YAAM,2BAAuB,oCAAoB,YAAY,QAAQ,MAAM,QAAQ,CAAC;AAEpF,UAAI,wBAAwB,MAAM;AAChC,yBAAiB,GAAG,QAAQ,GAAG,IAAI,QAAQ,EAAE,IAAI;AAAA,MACnD;AAAA,IACF,CAAC;AAAA,EACH;AAEA,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../src/state/translations/get.ts"],"sourcesContent":["import * as Documents from '../modules/read-only-documents'\nimport * as ElementTrees from '../modules/element-trees'\nimport { getTranslatableData } from '../../controls/control'\nimport type { DescriptorsByComponentType } from '../modules/prop-controller-descriptors'\n\nexport function getTranslatableContent(\n descriptors: DescriptorsByComponentType,\n elementTree: Documents.ElementData,\n): Record<string, Documents.Data> {\n const translatableData: Record<string, Documents.Data> = {}\n\n for (const element of ElementTrees.traverseElementTree(elementTree, descriptors)) {\n if (Documents.isElementReference(element)) continue\n\n const elementDescriptors = descriptors.get(element.type)\n if (elementDescriptors == null) continue\n\n Object.entries(elementDescriptors).forEach(([propName, descriptor]) => {\n const translatablePropData = getTranslatableData(descriptor, element.props[propName])\n\n if (translatablePropData != null) {\n translatableData[`${element.key}:${propName}`] = translatablePropData\n }\n })\n }\n\n return translatableData\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAA2B;AAC3B,mBAA8B;AAC9B,qBAAoC;AAG7B,SAAS,uBACd,aACA,aACgC;AAChC,QAAM,mBAAmD,CAAC;AAE1D,aAAW,WAAW,aAAa,oBAAoB,aAAa,WAAW,GAAG;AAChF,QAAI,UAAU,mBAAmB,OAAO;AAAG;AAE3C,UAAM,qBAAqB,YAAY,IAAI,QAAQ,IAAI;AACvD,QAAI,sBAAsB;AAAM;AAEhC,WAAO,QAAQ,kBAAkB,EAAE,QAAQ,CAAC,CAAC,UAAU,UAAU,MAAM;AACrE,YAAM,2BAAuB,oCAAoB,YAAY,QAAQ,MAAM,QAAQ,CAAC;AAEpF,UAAI,wBAAwB,MAAM;AAChC,yBAAiB,GAAG,QAAQ,GAAG,IAAI,QAAQ,EAAE,IAAI;AAAA,MACnD;AAAA,IACF,CAAC;AAAA,EACH;AAEA,SAAO;AACT;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/state/translations/merge.ts"],"sourcesContent":["import { MergeTranslatableDataContext, type TranslationDto, type Data } from '@makeswift/controls'\nimport * as Documents from '../modules/read-only-documents'\nimport {\n GridPropControllerData,\n mergeGridPropControllerTranslatedData,\n Types as PropControllerTypes,\n} from '@makeswift/prop-controllers'\nimport { ReactMergeTranslationsVisitor } from '../../controls/visitors/merge-translations-visitor'\nimport { isLegacyDescriptor } from '../../prop-controllers/descriptors'\nimport { Descriptor as PropControllerDescriptor } from '../../prop-controllers/descriptors'\nimport type { DescriptorsByComponentType } from '../modules/prop-controllers'\n\nexport function mergeTranslatedContent(\n descriptors: DescriptorsByComponentType,\n elementTree: Documents.ElementData,\n translatedData: TranslationDto,\n): Documents.Element {\n function merge(descriptorsByType: DescriptorsByComponentType, translatedData: TranslationDto) {\n return function (node: Documents.Element): Documents.Element {\n if (Documents.isElementReference(node)) return node\n\n const elementDescriptors = descriptorsByType.get(node.type)\n\n if (elementDescriptors == null) {\n throw new Error(`Can't merge element of type \"${node.type}\" because it has no descriptors`)\n }\n\n const context: MergeTranslatableDataContext = {\n translatedData: translatedData,\n mergeTranslatedData: merge(descriptorsByType, translatedData),\n }\n const props = {} as Record<string, Documents.Data>\n\n for (const propName of Object.keys(elementDescriptors)) {\n const descriptor = elementDescriptors[propName]\n\n props[propName] = mergeTranslatedData(\n descriptor,\n node.props[propName],\n translatedData[`${node.key}:${propName}`],\n context,\n )\n }\n\n return { ...node, props }\n }\n }\n return merge(descriptors, translatedData)(elementTree)\n}\n\nexport function mergeTranslatedData(\n definition: PropControllerDescriptor,\n data: Data,\n translatedData: Data,\n context: MergeTranslatableDataContext,\n): Data {\n if (data == null) return data\n if (!isLegacyDescriptor(definition)) {\n const mergeTranslationsVisitor = new ReactMergeTranslationsVisitor(context)\n return definition.accept(mergeTranslationsVisitor, data, translatedData)\n }\n\n switch (definition.type) {\n case PropControllerTypes.TextInput:\n case PropControllerTypes.TextArea:\n if (translatedData == null) return data\n return translatedData\n\n case PropControllerTypes.Grid:\n return mergeGridPropControllerTranslatedData(data as GridPropControllerData, context)\n\n default:\n return data\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,gBAA2B;AAC3B,8BAIO;AACP,wCAA8C;AAC9C,yBAAmC;AAI5B,SAAS,uBACd,aACA,aACA,gBACmB;AACnB,WAAS,MAAM,mBAA+CA,iBAAgC;AAC5F,WAAO,SAAU,MAA4C;AAC3D,UAAI,UAAU,mBAAmB,IAAI;AAAG,eAAO;AAE/C,YAAM,qBAAqB,kBAAkB,IAAI,KAAK,IAAI;AAE1D,UAAI,sBAAsB,MAAM;AAC9B,cAAM,IAAI,MAAM,gCAAgC,KAAK,IAAI,iCAAiC;AAAA,MAC5F;AAEA,YAAM,UAAwC;AAAA,QAC5C,gBAAgBA;AAAA,QAChB,qBAAqB,MAAM,mBAAmBA,eAAc;AAAA,MAC9D;AACA,YAAM,QAAQ,CAAC;AAEf,iBAAW,YAAY,OAAO,KAAK,kBAAkB,GAAG;AACtD,cAAM,aAAa,mBAAmB,QAAQ;AAE9C,cAAM,QAAQ,IAAI;AAAA,UAChB;AAAA,UACA,KAAK,MAAM,QAAQ;AAAA,UACnBA,gBAAe,GAAG,KAAK,GAAG,IAAI,QAAQ,EAAE;AAAA,UACxC;AAAA,QACF;AAAA,MACF;AAEA,aAAO,EAAE,GAAG,MAAM,MAAM;AAAA,IAC1B;AAAA,EACF;AACA,SAAO,MAAM,aAAa,cAAc,EAAE,WAAW;AACvD;AAEO,SAAS,oBACd,YACA,MACA,gBACA,SACM;AACN,MAAI,QAAQ;AAAM,WAAO;AACzB,MAAI,KAAC,uCAAmB,UAAU,GAAG;AACnC,UAAM,2BAA2B,IAAI,gEAA8B,OAAO;AAC1E,WAAO,WAAW,OAAO,0BAA0B,MAAM,cAAc;AAAA,EACzE;AAEA,UAAQ,WAAW,MAAM;AAAA,IACvB,KAAK,wBAAAC,MAAoB;AAAA,IACzB,KAAK,wBAAAA,MAAoB;AACvB,UAAI,kBAAkB;AAAM,eAAO;AACnC,aAAO;AAAA,IAET,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,+DAAsC,MAAgC,OAAO;AAAA,IAEtF;AACE,aAAO;AAAA,EACX;AACF;","names":["translatedData","PropControllerTypes"]}
1
+ {"version":3,"sources":["../../../../src/state/translations/merge.ts"],"sourcesContent":["import { MergeTranslatableDataContext, type TranslationDto, type Data } from '@makeswift/controls'\nimport * as Documents from '../modules/read-only-documents'\nimport {\n GridPropControllerData,\n mergeGridPropControllerTranslatedData,\n Types as PropControllerTypes,\n} from '@makeswift/prop-controllers'\nimport { ReactMergeTranslationsVisitor } from '../../controls/visitors/merge-translations-visitor'\nimport {\n isLegacyDescriptor,\n Descriptor as PropControllerDescriptor,\n} from '../../prop-controllers/descriptors'\nimport type { DescriptorsByComponentType } from '../modules/prop-controller-descriptors'\n\nexport function mergeTranslatedContent(\n descriptors: DescriptorsByComponentType,\n elementTree: Documents.ElementData,\n translatedData: TranslationDto,\n): Documents.Element {\n function merge(descriptorsByType: DescriptorsByComponentType, translatedData: TranslationDto) {\n return function (node: Documents.Element): Documents.Element {\n if (Documents.isElementReference(node)) return node\n\n const elementDescriptors = descriptorsByType.get(node.type)\n\n if (elementDescriptors == null) {\n throw new Error(`Can't merge element of type \"${node.type}\" because it has no descriptors`)\n }\n\n const context: MergeTranslatableDataContext = {\n translatedData: translatedData,\n mergeTranslatedData: merge(descriptorsByType, translatedData),\n }\n const props = {} as Record<string, Documents.Data>\n\n for (const propName of Object.keys(elementDescriptors)) {\n const descriptor = elementDescriptors[propName]\n\n props[propName] = mergeTranslatedData(\n descriptor,\n node.props[propName],\n translatedData[`${node.key}:${propName}`],\n context,\n )\n }\n\n return { ...node, props }\n }\n }\n return merge(descriptors, translatedData)(elementTree)\n}\n\nexport function mergeTranslatedData(\n definition: PropControllerDescriptor,\n data: Data,\n translatedData: Data,\n context: MergeTranslatableDataContext,\n): Data {\n if (data == null) return data\n if (!isLegacyDescriptor(definition)) {\n const mergeTranslationsVisitor = new ReactMergeTranslationsVisitor(context)\n return definition.accept(mergeTranslationsVisitor, data, translatedData)\n }\n\n switch (definition.type) {\n case PropControllerTypes.TextInput:\n case PropControllerTypes.TextArea:\n if (translatedData == null) return data\n return translatedData\n\n case PropControllerTypes.Grid:\n return mergeGridPropControllerTranslatedData(data as GridPropControllerData, context)\n\n default:\n return data\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,gBAA2B;AAC3B,8BAIO;AACP,wCAA8C;AAC9C,yBAGO;AAGA,SAAS,uBACd,aACA,aACA,gBACmB;AACnB,WAAS,MAAM,mBAA+CA,iBAAgC;AAC5F,WAAO,SAAU,MAA4C;AAC3D,UAAI,UAAU,mBAAmB,IAAI;AAAG,eAAO;AAE/C,YAAM,qBAAqB,kBAAkB,IAAI,KAAK,IAAI;AAE1D,UAAI,sBAAsB,MAAM;AAC9B,cAAM,IAAI,MAAM,gCAAgC,KAAK,IAAI,iCAAiC;AAAA,MAC5F;AAEA,YAAM,UAAwC;AAAA,QAC5C,gBAAgBA;AAAA,QAChB,qBAAqB,MAAM,mBAAmBA,eAAc;AAAA,MAC9D;AACA,YAAM,QAAQ,CAAC;AAEf,iBAAW,YAAY,OAAO,KAAK,kBAAkB,GAAG;AACtD,cAAM,aAAa,mBAAmB,QAAQ;AAE9C,cAAM,QAAQ,IAAI;AAAA,UAChB;AAAA,UACA,KAAK,MAAM,QAAQ;AAAA,UACnBA,gBAAe,GAAG,KAAK,GAAG,IAAI,QAAQ,EAAE;AAAA,UACxC;AAAA,QACF;AAAA,MACF;AAEA,aAAO,EAAE,GAAG,MAAM,MAAM;AAAA,IAC1B;AAAA,EACF;AACA,SAAO,MAAM,aAAa,cAAc,EAAE,WAAW;AACvD;AAEO,SAAS,oBACd,YACA,MACA,gBACA,SACM;AACN,MAAI,QAAQ;AAAM,WAAO;AACzB,MAAI,KAAC,uCAAmB,UAAU,GAAG;AACnC,UAAM,2BAA2B,IAAI,gEAA8B,OAAO;AAC1E,WAAO,WAAW,OAAO,0BAA0B,MAAM,cAAc;AAAA,EACzE;AAEA,UAAQ,WAAW,MAAM;AAAA,IACvB,KAAK,wBAAAC,MAAoB;AAAA,IACzB,KAAK,wBAAAA,MAAoB;AACvB,UAAI,kBAAkB;AAAM,eAAO;AACnC,aAAO;AAAA,IAET,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,+DAAsC,MAAgC,OAAO;AAAA,IAEtF;AACE,aAAO;AAAA,EACX;AACF;","names":["translatedData","PropControllerTypes"]}
@@ -3,6 +3,10 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
6
10
  var __copyProps = (to, from, except, desc) => {
7
11
  if (from && typeof from === "object" || typeof from === "function") {
8
12
  for (let key of __getOwnPropNames(from))
@@ -13,5 +17,13 @@ var __copyProps = (to, from, except, desc) => {
13
17
  };
14
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
19
  var unified_state_exports = {};
20
+ __export(unified_state_exports, {
21
+ isReadWriteState: () => isReadWriteState
22
+ });
16
23
  module.exports = __toCommonJS(unified_state_exports);
24
+ const isReadWriteState = (state) => "boxModels" in state;
25
+ // Annotate the CommonJS export names for ESM import in node:
26
+ 0 && (module.exports = {
27
+ isReadWriteState
28
+ });
17
29
  //# sourceMappingURL=unified-state.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/state/unified-state.ts"],"sourcesContent":["import { type ThunkDispatch, type Reducer } from '@reduxjs/toolkit'\n\nimport { type State as ReadOnlyState } from './read-only-state'\nimport { type State as ReadWriteState } from './read-write-state'\nimport { type Action } from './actions'\n\nexport type State = ReadOnlyState | ReadWriteState\nexport type Dispatch = ThunkDispatch<State, unknown, Action>\nexport type ReadOnlyReducer = Reducer<ReadOnlyState>\nexport type ReadWriteDispatch = ThunkDispatch<ReadWriteState, unknown, Action>\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../src/state/unified-state.ts"],"sourcesContent":["import { type ThunkDispatch, type Reducer } from '@reduxjs/toolkit'\n\nimport { type State as ReadOnlyState } from './read-only-state'\nimport { type State as ReadWriteState } from './read-write-state'\nimport { type Action } from './actions'\n\nexport type State = ReadOnlyState | ReadWriteState\nexport type Dispatch = ThunkDispatch<State, unknown, Action>\nexport type ReadOnlyReducer = Reducer<ReadOnlyState>\nexport type ReadWriteDispatch = ThunkDispatch<ReadWriteState, unknown, Action>\n\nexport { type ReadWriteState }\nexport const isReadWriteState = (state: State): state is ReadWriteState => 'boxModels' in state\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAYO,MAAM,mBAAmB,CAAC,UAA0C,eAAe;","names":[]}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var breakpoints_exports = {};
20
+ __export(breakpoints_exports, {
21
+ DESKTOP_MEDIA_QUERY: () => DESKTOP_MEDIA_QUERY,
22
+ MOBILE_MEDIA_QUERY: () => MOBILE_MEDIA_QUERY,
23
+ TABLET_MEDIA_QUERY: () => TABLET_MEDIA_QUERY
24
+ });
25
+ module.exports = __toCommonJS(breakpoints_exports);
26
+ const DESKTOP_MEDIA_QUERY = "only screen and (min-width: 769px)";
27
+ const TABLET_MEDIA_QUERY = "only screen and (min-width: 769px)";
28
+ const MOBILE_MEDIA_QUERY = "only screen and (min-width: 769px)";
29
+ // Annotate the CommonJS export names for ESM import in node:
30
+ 0 && (module.exports = {
31
+ DESKTOP_MEDIA_QUERY,
32
+ MOBILE_MEDIA_QUERY,
33
+ TABLET_MEDIA_QUERY
34
+ });
35
+ //# sourceMappingURL=breakpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/testing/breakpoints.ts"],"sourcesContent":["export const DESKTOP_MEDIA_QUERY = 'only screen and (min-width: 769px)'\nexport const TABLET_MEDIA_QUERY = 'only screen and (min-width: 769px)'\nexport const MOBILE_MEDIA_QUERY = 'only screen and (min-width: 769px)'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,sBAAsB;AAC5B,MAAM,qBAAqB;AAC3B,MAAM,qBAAqB;","names":[]}
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var element_data_exports = {};
20
+ __export(element_data_exports, {
21
+ createMakeswiftComponentSnapshot: () => createMakeswiftComponentSnapshot,
22
+ createMakeswiftPageSnapshot: () => createMakeswiftPageSnapshot,
23
+ createRootComponent: () => createRootComponent
24
+ });
25
+ module.exports = __toCommonJS(element_data_exports);
26
+ var import_uuid = require("uuid");
27
+ var import_api_resources_client = require("../api/api-resources-client");
28
+ var import_constants = require("../components/builtin/constants");
29
+ function createRootComponent(elements, rootId) {
30
+ return {
31
+ key: rootId ?? (0, import_uuid.v4)(),
32
+ type: import_constants.MakeswiftComponentType.Root,
33
+ props: {
34
+ children: {
35
+ columns: [
36
+ {
37
+ deviceId: "desktop",
38
+ value: {
39
+ count: 12,
40
+ spans: elements?.map(() => [12])
41
+ }
42
+ }
43
+ ],
44
+ elements
45
+ }
46
+ }
47
+ };
48
+ }
49
+ const isDocument = (elementOrDocument) => "snippets" in elementOrDocument || "fonts" in elementOrDocument || "meta" in elementOrDocument || "seo" in elementOrDocument;
50
+ function createMakeswiftPageSnapshot(elementOrDocument, {
51
+ cacheData = {},
52
+ locale = null
53
+ } = {}) {
54
+ return {
55
+ document: isDocument(elementOrDocument) ? elementOrDocument : {
56
+ id: "test-page-id",
57
+ site: { id: "test-site-id" },
58
+ data: elementOrDocument,
59
+ snippets: [],
60
+ fonts: [],
61
+ meta: {},
62
+ seo: {},
63
+ localizedPages: [],
64
+ locale
65
+ },
66
+ cacheData: {
67
+ ...import_api_resources_client.CacheData.empty(),
68
+ ...cacheData
69
+ }
70
+ };
71
+ }
72
+ function createMakeswiftComponentSnapshot(elementData, {
73
+ cacheData = {},
74
+ locale = null
75
+ } = {}) {
76
+ return {
77
+ key: (0, import_uuid.v4)(),
78
+ document: {
79
+ id: "test-component-id",
80
+ name: "Test Component Document",
81
+ siteId: "test-site-id",
82
+ data: elementData,
83
+ inheritsFromParent: false,
84
+ locale
85
+ },
86
+ meta: {
87
+ allowLocaleFallback: false,
88
+ requestedLocale: locale
89
+ },
90
+ cacheData: {
91
+ ...import_api_resources_client.CacheData.empty(),
92
+ ...cacheData
93
+ }
94
+ };
95
+ }
96
+ // Annotate the CommonJS export names for ESM import in node:
97
+ 0 && (module.exports = {
98
+ createMakeswiftComponentSnapshot,
99
+ createMakeswiftPageSnapshot,
100
+ createRootComponent
101
+ });
102
+ //# sourceMappingURL=element-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/testing/element-data.ts"],"sourcesContent":["import { v4 as uuid } from 'uuid'\n\nimport {\n type MakeswiftPageSnapshot,\n type MakeswiftPageDocument,\n type MakeswiftComponentSnapshot,\n} from '../client'\nimport { CacheData } from '../api/api-resources-client'\nimport { type Element, type ElementData } from '../state/read-only-state'\nimport { MakeswiftComponentType } from '../components/builtin/constants'\n\nexport function createRootComponent(elements: Element[], rootId?: string) {\n return {\n key: rootId ?? uuid(),\n type: MakeswiftComponentType.Root,\n props: {\n children: {\n columns: [\n {\n deviceId: 'desktop',\n value: {\n count: 12,\n spans: elements?.map(() => [12]),\n },\n },\n ],\n elements,\n },\n },\n }\n}\n\nconst isDocument = (\n elementOrDocument: Element | MakeswiftPageDocument,\n): elementOrDocument is MakeswiftPageDocument =>\n 'snippets' in elementOrDocument ||\n 'fonts' in elementOrDocument ||\n 'meta' in elementOrDocument ||\n 'seo' in elementOrDocument\n\nexport function createMakeswiftPageSnapshot(\n elementOrDocument: Element | MakeswiftPageDocument,\n {\n cacheData = {},\n locale = null,\n }: { cacheData?: Partial<MakeswiftPageSnapshot['cacheData']>; locale?: string | null } = {},\n): MakeswiftPageSnapshot {\n return {\n document: isDocument(elementOrDocument)\n ? elementOrDocument\n : {\n id: 'test-page-id',\n site: { id: 'test-site-id' },\n data: elementOrDocument,\n snippets: [],\n fonts: [],\n meta: {},\n seo: {},\n localizedPages: [],\n locale,\n },\n cacheData: {\n ...CacheData.empty(),\n ...cacheData,\n },\n }\n}\n\nexport function createMakeswiftComponentSnapshot(\n elementData: ElementData | null,\n {\n cacheData = {},\n locale = null,\n }: { cacheData?: Partial<MakeswiftComponentSnapshot['cacheData']>; locale?: string | null } = {},\n): MakeswiftComponentSnapshot {\n return {\n key: uuid(),\n document: {\n id: 'test-component-id',\n name: 'Test Component Document',\n siteId: 'test-site-id',\n data: elementData,\n inheritsFromParent: false,\n locale,\n },\n meta: {\n allowLocaleFallback: false,\n requestedLocale: locale,\n },\n cacheData: {\n ...CacheData.empty(),\n ...cacheData,\n },\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA2B;AAO3B,kCAA0B;AAE1B,uBAAuC;AAEhC,SAAS,oBAAoB,UAAqB,QAAiB;AACxE,SAAO;AAAA,IACL,KAAK,cAAU,YAAAA,IAAK;AAAA,IACpB,MAAM,wCAAuB;AAAA,IAC7B,OAAO;AAAA,MACL,UAAU;AAAA,QACR,SAAS;AAAA,UACP;AAAA,YACE,UAAU;AAAA,YACV,OAAO;AAAA,cACL,OAAO;AAAA,cACP,OAAO,UAAU,IAAI,MAAM,CAAC,EAAE,CAAC;AAAA,YACjC;AAAA,UACF;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAEA,MAAM,aAAa,CACjB,sBAEA,cAAc,qBACd,WAAW,qBACX,UAAU,qBACV,SAAS;AAEJ,SAAS,4BACd,mBACA;AAAA,EACE,YAAY,CAAC;AAAA,EACb,SAAS;AACX,IAAyF,CAAC,GACnE;AACvB,SAAO;AAAA,IACL,UAAU,WAAW,iBAAiB,IAClC,oBACA;AAAA,MACE,IAAI;AAAA,MACJ,MAAM,EAAE,IAAI,eAAe;AAAA,MAC3B,MAAM;AAAA,MACN,UAAU,CAAC;AAAA,MACX,OAAO,CAAC;AAAA,MACR,MAAM,CAAC;AAAA,MACP,KAAK,CAAC;AAAA,MACN,gBAAgB,CAAC;AAAA,MACjB;AAAA,IACF;AAAA,IACJ,WAAW;AAAA,MACT,GAAG,sCAAU,MAAM;AAAA,MACnB,GAAG;AAAA,IACL;AAAA,EACF;AACF;AAEO,SAAS,iCACd,aACA;AAAA,EACE,YAAY,CAAC;AAAA,EACb,SAAS;AACX,IAA8F,CAAC,GACnE;AAC5B,SAAO;AAAA,IACL,SAAK,YAAAA,IAAK;AAAA,IACV,UAAU;AAAA,MACR,IAAI;AAAA,MACJ,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,oBAAoB;AAAA,MACpB;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,qBAAqB;AAAA,MACrB,iBAAiB;AAAA,IACnB;AAAA,IACA,WAAW;AAAA,MACT,GAAG,sCAAU,MAAM;AAAA,MACnB,GAAG;AAAA,IACL;AAAA,EACF;AACF;","names":["uuid"]}