@makeswift/runtime 0.28.8-canary.12 → 0.28.8-canary.15

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 (340) 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/Form/Form.js.map +1 -1
  8. package/dist/cjs/controls/rich-text/control.js +9 -3
  9. package/dist/cjs/controls/rich-text/control.js.map +1 -1
  10. package/dist/cjs/controls/rich-text-v2/control.js +6 -0
  11. package/dist/cjs/controls/rich-text-v2/control.js.map +1 -1
  12. package/dist/cjs/next/testing/breakpoints.js +3 -15
  13. package/dist/cjs/next/testing/breakpoints.js.map +1 -1
  14. package/dist/cjs/next/testing/element-data.js +3 -82
  15. package/dist/cjs/next/testing/element-data.js.map +1 -1
  16. package/dist/cjs/next/testing/react-runtime.js.map +1 -1
  17. package/dist/cjs/prop-controllers/instances.js +6 -0
  18. package/dist/cjs/prop-controllers/instances.js.map +1 -1
  19. package/dist/cjs/runtimes/react/components/Element.js +21 -6
  20. package/dist/cjs/runtimes/react/components/Element.js.map +1 -1
  21. package/dist/cjs/runtimes/react/components/ElementRegistration.js +5 -3
  22. package/dist/cjs/runtimes/react/components/ElementRegistration.js.map +1 -1
  23. package/dist/cjs/runtimes/react/components/resolve-props.js +5 -1
  24. package/dist/cjs/runtimes/react/components/resolve-props.js.map +1 -1
  25. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  26. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js +2 -2
  27. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  28. package/dist/cjs/runtimes/react/element-imperative-handle.js +2 -2
  29. package/dist/cjs/runtimes/react/element-imperative-handle.js.map +1 -1
  30. package/dist/cjs/runtimes/react/hooks/use-control-instances.js +4 -3
  31. package/dist/cjs/runtimes/react/hooks/use-control-instances.js.map +1 -1
  32. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js +10 -9
  33. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  34. package/dist/cjs/runtimes/react/testing/index.js +25 -0
  35. package/dist/cjs/runtimes/react/testing/index.js.map +1 -0
  36. package/dist/cjs/runtimes/react/testing/react-provider.js +38 -0
  37. package/dist/cjs/runtimes/react/testing/react-provider.js.map +1 -0
  38. package/dist/cjs/state/actions/index.js +4 -4
  39. package/dist/cjs/state/actions/index.js.map +1 -1
  40. package/dist/cjs/state/actions/internal/action-types.js +34 -0
  41. package/dist/cjs/state/actions/internal/action-types.js.map +1 -0
  42. package/dist/cjs/state/actions/internal/index.js +0 -17
  43. package/dist/cjs/state/actions/internal/index.js.map +1 -1
  44. package/dist/cjs/state/actions/internal/read-only-action-types.js +44 -0
  45. package/dist/cjs/state/actions/internal/read-only-action-types.js.map +1 -0
  46. package/dist/cjs/state/actions/internal/read-only-actions.js +13 -92
  47. package/dist/cjs/state/actions/internal/read-only-actions.js.map +1 -1
  48. package/dist/cjs/state/actions/internal/read-write-action-types.js +41 -0
  49. package/dist/cjs/state/actions/internal/read-write-action-types.js.map +1 -0
  50. package/dist/cjs/state/actions/internal/read-write-actions.js +62 -14
  51. package/dist/cjs/state/actions/internal/read-write-actions.js.map +1 -1
  52. package/dist/cjs/state/builder-api/action-types.js +49 -0
  53. package/dist/cjs/state/builder-api/action-types.js.map +1 -0
  54. package/dist/cjs/state/builder-api/actions.js +14 -36
  55. package/dist/cjs/state/builder-api/actions.js.map +1 -1
  56. package/dist/cjs/state/builder-api/proxy.js +2 -1
  57. package/dist/cjs/state/builder-api/proxy.js.map +1 -1
  58. package/dist/cjs/state/host-api/action-types.js +43 -0
  59. package/dist/cjs/state/host-api/action-types.js.map +1 -0
  60. package/dist/cjs/state/{host-api.js → host-api/actions.js} +17 -33
  61. package/dist/cjs/state/host-api/actions.js.map +1 -0
  62. package/dist/cjs/state/host-api/index.js +25 -0
  63. package/dist/cjs/state/host-api/index.js.map +1 -0
  64. package/dist/cjs/state/middleware/read-write/builder-api/index.js +15 -15
  65. package/dist/cjs/state/middleware/read-write/builder-api/index.js.map +1 -1
  66. package/dist/cjs/state/middleware/read-write/measure-box-models.js +3 -3
  67. package/dist/cjs/state/middleware/read-write/measure-box-models.js.map +1 -1
  68. package/dist/cjs/state/middleware/read-write/prop-controller-handles.js +12 -13
  69. package/dist/cjs/state/middleware/read-write/prop-controller-handles.js.map +1 -1
  70. package/dist/cjs/state/modules/api-resources.js +5 -5
  71. package/dist/cjs/state/modules/api-resources.js.map +1 -1
  72. package/dist/cjs/state/modules/breakpoints.js +4 -4
  73. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  74. package/dist/cjs/state/modules/components-meta.js +3 -3
  75. package/dist/cjs/state/modules/components-meta.js.map +1 -1
  76. package/dist/cjs/state/modules/element-trees.js +5 -5
  77. package/dist/cjs/state/modules/element-trees.js.map +1 -1
  78. package/dist/cjs/state/modules/is-in-builder.js +2 -2
  79. package/dist/cjs/state/modules/is-in-builder.js.map +1 -1
  80. package/dist/cjs/state/modules/is-read-only.js +2 -2
  81. package/dist/cjs/state/modules/is-read-only.js.map +1 -1
  82. package/dist/cjs/state/modules/locale.js +2 -2
  83. package/dist/cjs/state/modules/locale.js.map +1 -1
  84. package/dist/cjs/state/modules/localized-resources-map.js +3 -3
  85. package/dist/cjs/state/modules/localized-resources-map.js.map +1 -1
  86. package/dist/cjs/state/modules/{prop-controllers.js → prop-controller-descriptors.js} +7 -7
  87. package/dist/cjs/state/modules/prop-controller-descriptors.js.map +1 -0
  88. package/dist/cjs/state/modules/react-components.js +3 -3
  89. package/dist/cjs/state/modules/react-components.js.map +1 -1
  90. package/dist/cjs/state/modules/read-write/box-models.js +5 -5
  91. package/dist/cjs/state/modules/read-write/box-models.js.map +1 -1
  92. package/dist/cjs/state/modules/read-write/element-imperative-handles.js +3 -3
  93. package/dist/cjs/state/modules/read-write/element-imperative-handles.js.map +1 -1
  94. package/dist/cjs/state/modules/{prop-controller-handles.js → read-write/prop-controllers.js} +5 -5
  95. package/dist/cjs/state/modules/read-write/prop-controllers.js.map +1 -0
  96. package/dist/cjs/state/read-only-state.js +9 -44
  97. package/dist/cjs/state/read-only-state.js.map +1 -1
  98. package/dist/cjs/state/read-write-state.js +37 -0
  99. package/dist/cjs/state/read-write-state.js.map +1 -1
  100. package/dist/cjs/state/shared-api/action-types.js +33 -0
  101. package/dist/cjs/state/shared-api/action-types.js.map +1 -0
  102. package/dist/cjs/state/{shared-api.js → shared-api/actions.js} +8 -14
  103. package/dist/cjs/state/shared-api/actions.js.map +1 -0
  104. package/dist/cjs/state/shared-api/index.js +25 -0
  105. package/dist/cjs/state/shared-api/index.js.map +1 -0
  106. package/dist/cjs/state/store.js +3 -3
  107. package/dist/cjs/state/store.js.map +1 -1
  108. package/dist/cjs/state/translations/get.js.map +1 -1
  109. package/dist/cjs/state/translations/merge.js.map +1 -1
  110. package/dist/cjs/state/unified-state.js +12 -0
  111. package/dist/cjs/state/unified-state.js.map +1 -1
  112. package/dist/cjs/testing/breakpoints.js +35 -0
  113. package/dist/cjs/testing/breakpoints.js.map +1 -0
  114. package/dist/cjs/testing/element-data.js +102 -0
  115. package/dist/cjs/testing/element-data.js.map +1 -0
  116. package/dist/cjs/translations/index.js.map +1 -1
  117. package/dist/esm/api/graphql-api-client.js +1 -1
  118. package/dist/esm/api/rest-api-client.js +1 -1
  119. package/dist/esm/api-handler/handlers/manifest.js +1 -1
  120. package/dist/esm/builder/host-to-builder-actions.js +2 -4
  121. package/dist/esm/builder/host-to-builder-actions.js.map +1 -1
  122. package/dist/esm/client/index.js +1 -1
  123. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  124. package/dist/esm/controls/rich-text/control.js +9 -3
  125. package/dist/esm/controls/rich-text/control.js.map +1 -1
  126. package/dist/esm/controls/rich-text-v2/control.js +6 -0
  127. package/dist/esm/controls/rich-text-v2/control.js.map +1 -1
  128. package/dist/esm/next/testing/breakpoints.js +1 -8
  129. package/dist/esm/next/testing/breakpoints.js.map +1 -1
  130. package/dist/esm/next/testing/element-data.js +1 -75
  131. package/dist/esm/next/testing/element-data.js.map +1 -1
  132. package/dist/esm/next/testing/react-runtime.js.map +1 -1
  133. package/dist/esm/prop-controllers/instances.js +6 -0
  134. package/dist/esm/prop-controllers/instances.js.map +1 -1
  135. package/dist/esm/runtimes/react/components/Element.js +18 -6
  136. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  137. package/dist/esm/runtimes/react/components/ElementRegistration.js +4 -2
  138. package/dist/esm/runtimes/react/components/ElementRegistration.js.map +1 -1
  139. package/dist/esm/runtimes/react/components/resolve-props.js +5 -1
  140. package/dist/esm/runtimes/react/components/resolve-props.js.map +1 -1
  141. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  142. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js +1 -1
  143. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  144. package/dist/esm/runtimes/react/element-imperative-handle.js +1 -1
  145. package/dist/esm/runtimes/react/element-imperative-handle.js.map +1 -1
  146. package/dist/esm/runtimes/react/hooks/use-control-instances.js +3 -2
  147. package/dist/esm/runtimes/react/hooks/use-control-instances.js.map +1 -1
  148. package/dist/esm/runtimes/react/hooks/use-resolved-props.js +10 -9
  149. package/dist/esm/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  150. package/dist/esm/runtimes/react/testing/index.js +3 -0
  151. package/dist/esm/runtimes/react/testing/index.js.map +1 -0
  152. package/dist/esm/runtimes/react/testing/react-provider.js +14 -0
  153. package/dist/esm/runtimes/react/testing/react-provider.js.map +1 -0
  154. package/dist/esm/state/actions/index.js +2 -2
  155. package/dist/esm/state/actions/index.js.map +1 -1
  156. package/dist/esm/state/actions/internal/action-types.js +10 -0
  157. package/dist/esm/state/actions/internal/action-types.js.map +1 -0
  158. package/dist/esm/state/actions/internal/index.js +0 -9
  159. package/dist/esm/state/actions/internal/index.js.map +1 -1
  160. package/dist/esm/state/actions/internal/read-only-action-types.js +20 -0
  161. package/dist/esm/state/actions/internal/read-only-action-types.js.map +1 -0
  162. package/dist/esm/state/actions/internal/read-only-actions.js +1 -73
  163. package/dist/esm/state/actions/internal/read-only-actions.js.map +1 -1
  164. package/dist/esm/state/actions/internal/read-write-action-types.js +17 -0
  165. package/dist/esm/state/actions/internal/read-write-action-types.js.map +1 -0
  166. package/dist/esm/state/actions/internal/read-write-actions.js +51 -8
  167. package/dist/esm/state/actions/internal/read-write-actions.js.map +1 -1
  168. package/dist/esm/state/builder-api/action-types.js +25 -0
  169. package/dist/esm/state/builder-api/action-types.js.map +1 -0
  170. package/dist/esm/state/builder-api/actions.js +1 -24
  171. package/dist/esm/state/builder-api/actions.js.map +1 -1
  172. package/dist/esm/state/builder-api/proxy.js +2 -1
  173. package/dist/esm/state/builder-api/proxy.js.map +1 -1
  174. package/dist/esm/state/host-api/action-types.js +19 -0
  175. package/dist/esm/state/host-api/action-types.js.map +1 -0
  176. package/dist/esm/state/{host-api.js → host-api/actions.js} +2 -17
  177. package/dist/esm/state/host-api/actions.js.map +1 -0
  178. package/dist/esm/state/host-api/index.js +3 -0
  179. package/dist/esm/state/host-api/index.js.map +1 -0
  180. package/dist/esm/state/middleware/read-write/builder-api/index.js +1 -1
  181. package/dist/esm/state/middleware/read-write/builder-api/index.js.map +1 -1
  182. package/dist/esm/state/middleware/read-write/measure-box-models.js +3 -3
  183. package/dist/esm/state/middleware/read-write/measure-box-models.js.map +1 -1
  184. package/dist/esm/state/middleware/read-write/prop-controller-handles.js +19 -13
  185. package/dist/esm/state/middleware/read-write/prop-controller-handles.js.map +1 -1
  186. package/dist/esm/state/modules/api-resources.js +2 -2
  187. package/dist/esm/state/modules/api-resources.js.map +1 -1
  188. package/dist/esm/state/modules/breakpoints.js +2 -2
  189. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  190. package/dist/esm/state/modules/components-meta.js +1 -1
  191. package/dist/esm/state/modules/components-meta.js.map +1 -1
  192. package/dist/esm/state/modules/element-trees.js +2 -2
  193. package/dist/esm/state/modules/element-trees.js.map +1 -1
  194. package/dist/esm/state/modules/is-in-builder.js +1 -1
  195. package/dist/esm/state/modules/is-in-builder.js.map +1 -1
  196. package/dist/esm/state/modules/is-read-only.js +1 -1
  197. package/dist/esm/state/modules/is-read-only.js.map +1 -1
  198. package/dist/esm/state/modules/locale.js +1 -1
  199. package/dist/esm/state/modules/locale.js.map +1 -1
  200. package/dist/esm/state/modules/localized-resources-map.js +1 -1
  201. package/dist/esm/state/modules/localized-resources-map.js.map +1 -1
  202. package/dist/esm/state/modules/{prop-controllers.js → prop-controller-descriptors.js} +2 -2
  203. package/dist/esm/state/modules/prop-controller-descriptors.js.map +1 -0
  204. package/dist/esm/state/modules/react-components.js +1 -1
  205. package/dist/esm/state/modules/react-components.js.map +1 -1
  206. package/dist/esm/state/modules/read-write/box-models.js +2 -2
  207. package/dist/esm/state/modules/read-write/box-models.js.map +1 -1
  208. package/dist/esm/state/modules/read-write/element-imperative-handles.js +3 -3
  209. package/dist/esm/state/modules/read-write/element-imperative-handles.js.map +1 -1
  210. package/dist/esm/state/modules/{prop-controller-handles.js → read-write/prop-controllers.js} +2 -2
  211. package/dist/esm/state/modules/read-write/prop-controllers.js.map +1 -0
  212. package/dist/esm/state/read-only-state.js +9 -41
  213. package/dist/esm/state/read-only-state.js.map +1 -1
  214. package/dist/esm/state/read-write-state.js +34 -0
  215. package/dist/esm/state/read-write-state.js.map +1 -1
  216. package/dist/esm/state/shared-api/action-types.js +9 -0
  217. package/dist/esm/state/shared-api/action-types.js.map +1 -0
  218. package/dist/esm/state/{shared-api.js → shared-api/actions.js} +2 -7
  219. package/dist/esm/state/shared-api/actions.js.map +1 -0
  220. package/dist/esm/state/shared-api/index.js +3 -0
  221. package/dist/esm/state/shared-api/index.js.map +1 -0
  222. package/dist/esm/state/store.js +1 -1
  223. package/dist/esm/state/store.js.map +1 -1
  224. package/dist/esm/state/translations/get.js.map +1 -1
  225. package/dist/esm/state/translations/merge.js +3 -1
  226. package/dist/esm/state/translations/merge.js.map +1 -1
  227. package/dist/esm/state/unified-state.js +4 -0
  228. package/dist/esm/state/unified-state.js.map +1 -1
  229. package/dist/esm/testing/breakpoints.js +9 -0
  230. package/dist/esm/testing/breakpoints.js.map +1 -0
  231. package/dist/esm/testing/element-data.js +76 -0
  232. package/dist/esm/testing/element-data.js.map +1 -0
  233. package/dist/esm/translations/index.js.map +1 -1
  234. package/dist/types/api/schema/page-pathname-slice.d.ts +2 -2
  235. package/dist/types/api-handler/handlers/webhook/diff-projection.d.ts +6 -6
  236. package/dist/types/api-handler/handlers/webhook/types.d.ts +20 -20
  237. package/dist/types/builder/host-to-builder-actions.d.ts.map +1 -1
  238. package/dist/types/components/builtin/Form/Form.d.ts +1 -1
  239. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  240. package/dist/types/components/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
  241. package/dist/types/components/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
  242. package/dist/types/controls/rich-text/control.d.ts +3 -1
  243. package/dist/types/controls/rich-text/control.d.ts.map +1 -1
  244. package/dist/types/controls/rich-text-v2/control.d.ts +2 -0
  245. package/dist/types/controls/rich-text-v2/control.d.ts.map +1 -1
  246. package/dist/types/locale.d.ts +1 -1
  247. package/dist/types/next/testing/breakpoints.d.ts +1 -3
  248. package/dist/types/next/testing/breakpoints.d.ts.map +1 -1
  249. package/dist/types/next/testing/element-data.d.ts +1 -54
  250. package/dist/types/next/testing/element-data.d.ts.map +1 -1
  251. package/dist/types/next/testing/react-runtime.d.ts.map +1 -1
  252. package/dist/types/prop-controllers/instances.d.ts +2 -0
  253. package/dist/types/prop-controllers/instances.d.ts.map +1 -1
  254. package/dist/types/runtimes/react/components/Element.d.ts.map +1 -1
  255. package/dist/types/runtimes/react/components/ElementRegistration.d.ts +1 -1
  256. package/dist/types/runtimes/react/components/ElementRegistration.d.ts.map +1 -1
  257. package/dist/types/runtimes/react/components/resolve-props.d.ts.map +1 -1
  258. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts +1 -1
  259. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts.map +1 -1
  260. package/dist/types/runtimes/react/element-imperative-handle.d.ts +1 -1
  261. package/dist/types/runtimes/react/element-imperative-handle.d.ts.map +1 -1
  262. package/dist/types/runtimes/react/hooks/use-control-instances.d.ts.map +1 -1
  263. package/dist/types/runtimes/react/hooks/use-resolved-props.d.ts +4 -3
  264. package/dist/types/runtimes/react/hooks/use-resolved-props.d.ts.map +1 -1
  265. package/dist/types/runtimes/react/hooks/use-store.d.ts +2 -4
  266. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  267. package/dist/types/runtimes/react/testing/index.d.ts +3 -0
  268. package/dist/types/runtimes/react/testing/index.d.ts.map +1 -0
  269. package/dist/types/runtimes/react/testing/react-provider.d.ts +8 -0
  270. package/dist/types/runtimes/react/testing/react-provider.d.ts.map +1 -0
  271. package/dist/types/state/__tests__/test-store.d.ts +2 -4
  272. package/dist/types/state/__tests__/test-store.d.ts.map +1 -1
  273. package/dist/types/state/actions/index.d.ts +6 -6
  274. package/dist/types/state/actions/index.d.ts.map +1 -1
  275. package/dist/types/state/actions/internal/action-types.d.ts +26 -0
  276. package/dist/types/state/actions/internal/action-types.d.ts.map +1 -0
  277. package/dist/types/state/actions/internal/index.d.ts +0 -25
  278. package/dist/types/state/actions/internal/index.d.ts.map +1 -1
  279. package/dist/types/state/actions/internal/read-only-action-types.d.ts +15 -0
  280. package/dist/types/state/actions/internal/read-only-action-types.d.ts.map +1 -0
  281. package/dist/types/state/actions/internal/read-only-actions.d.ts +3 -76
  282. package/dist/types/state/actions/internal/read-only-actions.d.ts.map +1 -1
  283. package/dist/types/state/actions/internal/read-write-action-types.d.ts +14 -0
  284. package/dist/types/state/actions/internal/read-write-action-types.d.ts.map +1 -0
  285. package/dist/types/state/actions/internal/read-write-actions.d.ts +57 -9
  286. package/dist/types/state/actions/internal/read-write-actions.d.ts.map +1 -1
  287. package/dist/types/state/builder-api/action-types.d.ts +22 -0
  288. package/dist/types/state/builder-api/action-types.d.ts.map +1 -0
  289. package/dist/types/state/builder-api/actions.d.ts +1 -21
  290. package/dist/types/state/builder-api/actions.d.ts.map +1 -1
  291. package/dist/types/state/builder-api/proxy.d.ts.map +1 -1
  292. package/dist/types/state/host-api/action-types.d.ts +17 -0
  293. package/dist/types/state/host-api/action-types.d.ts.map +1 -0
  294. package/dist/types/state/{host-api.d.ts → host-api/actions.d.ts} +7 -22
  295. package/dist/types/state/host-api/actions.d.ts.map +1 -0
  296. package/dist/types/state/host-api/index.d.ts +3 -0
  297. package/dist/types/state/host-api/index.d.ts.map +1 -0
  298. package/dist/types/state/middleware/read-write/prop-controller-handles.d.ts.map +1 -1
  299. package/dist/types/state/modules/element-trees.d.ts +1 -1
  300. package/dist/types/state/modules/element-trees.d.ts.map +1 -1
  301. package/dist/types/state/modules/{prop-controllers.d.ts → prop-controller-descriptors.d.ts} +1 -1
  302. package/dist/types/state/modules/prop-controller-descriptors.d.ts.map +1 -0
  303. package/dist/types/state/modules/{prop-controller-handles.d.ts → read-write/prop-controllers.d.ts} +4 -4
  304. package/dist/types/state/modules/{prop-controller-handles.d.ts.map → read-write/prop-controllers.d.ts.map} +1 -1
  305. package/dist/types/state/read-only-state.d.ts +6 -70
  306. package/dist/types/state/read-only-state.d.ts.map +1 -1
  307. package/dist/types/state/read-write-state.d.ts +67 -4
  308. package/dist/types/state/read-write-state.d.ts.map +1 -1
  309. package/dist/types/state/shared-api/action-types.d.ts +6 -0
  310. package/dist/types/state/shared-api/action-types.d.ts.map +1 -0
  311. package/dist/types/state/{shared-api.d.ts → shared-api/actions.d.ts} +3 -7
  312. package/dist/types/state/shared-api/actions.d.ts.map +1 -0
  313. package/dist/types/state/shared-api/index.d.ts +3 -0
  314. package/dist/types/state/shared-api/index.d.ts.map +1 -0
  315. package/dist/types/state/store.d.ts +4 -8
  316. package/dist/types/state/store.d.ts.map +1 -1
  317. package/dist/types/state/translations/get.d.ts +1 -1
  318. package/dist/types/state/translations/get.d.ts.map +1 -1
  319. package/dist/types/state/translations/merge.d.ts +1 -1
  320. package/dist/types/state/translations/merge.d.ts.map +1 -1
  321. package/dist/types/state/unified-state.d.ts +1 -0
  322. package/dist/types/state/unified-state.d.ts.map +1 -1
  323. package/dist/types/testing/breakpoints.d.ts +4 -0
  324. package/dist/types/testing/breakpoints.d.ts.map +1 -0
  325. package/dist/types/testing/element-data.d.ts +55 -0
  326. package/dist/types/testing/element-data.d.ts.map +1 -0
  327. package/dist/types/translations/index.d.ts +1 -1
  328. package/dist/types/translations/index.d.ts.map +1 -1
  329. package/package.json +4 -4
  330. package/dist/cjs/state/host-api.js.map +0 -1
  331. package/dist/cjs/state/modules/prop-controller-handles.js.map +0 -1
  332. package/dist/cjs/state/modules/prop-controllers.js.map +0 -1
  333. package/dist/cjs/state/shared-api.js.map +0 -1
  334. package/dist/esm/state/host-api.js.map +0 -1
  335. package/dist/esm/state/modules/prop-controller-handles.js.map +0 -1
  336. package/dist/esm/state/modules/prop-controllers.js.map +0 -1
  337. package/dist/esm/state/shared-api.js.map +0 -1
  338. package/dist/types/state/host-api.d.ts.map +0 -1
  339. package/dist/types/state/modules/prop-controllers.d.ts.map +0 -1
  340. package/dist/types/state/shared-api.d.ts.map +0 -1
@@ -19,7 +19,8 @@ var __copyProps = (to, from, except, desc) => {
19
19
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
20
  var ElementRegistration_exports = {};
21
21
  __export(ElementRegistration_exports, {
22
- ElementRegistration: () => ElementRegistration
22
+ ElementRegistration: () => ElementRegistration,
23
+ default: () => ElementRegistration_default
23
24
  });
24
25
  module.exports = __toCommonJS(ElementRegistration_exports);
25
26
  var import_jsx_runtime = require("react/jsx-runtime");
@@ -28,7 +29,7 @@ var import_use_dispatch = require("../hooks/use-dispatch");
28
29
  var import_use_document_context = require("../hooks/use-document-context");
29
30
  var import_use_disable_register_element = require("../hooks/use-disable-register-element");
30
31
  var import_actions = require("../../../state/builder-api/actions");
31
- var import_read_only_actions = require("../../../state/actions/internal/read-only-actions");
32
+ var import_read_write_actions = require("../../../state/actions/internal/read-write-actions");
32
33
  const ElementRegistration = (0, import_react.memo)(function ElementRegistration2({
33
34
  elementKey,
34
35
  componentHandle,
@@ -40,7 +41,7 @@ const ElementRegistration = (0, import_react.memo)(function ElementRegistration2
40
41
  (0, import_react.useEffect)(() => {
41
42
  if (documentKey == null || isRegisterElementDisabled)
42
43
  return;
43
- return dispatch((0, import_read_only_actions.registerComponentHandleEffect)(documentKey, elementKey, componentHandle));
44
+ return dispatch((0, import_read_write_actions.registerComponentHandleEffect)(documentKey, elementKey, componentHandle));
44
45
  }, [dispatch, documentKey, elementKey, isRegisterElementDisabled]);
45
46
  (0, import_react.useEffect)(() => {
46
47
  if (documentKey == null || isRegisterElementDisabled)
@@ -49,6 +50,7 @@ const ElementRegistration = (0, import_react.memo)(function ElementRegistration2
49
50
  }, [dispatch, documentKey, elementKey, isRegisterElementDisabled]);
50
51
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children });
51
52
  });
53
+ var ElementRegistration_default = ElementRegistration;
52
54
  // Annotate the CommonJS export names for ESM import in node:
53
55
  0 && (module.exports = {
54
56
  ElementRegistration
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/ElementRegistration.tsx"],"sourcesContent":["'use client'\n\nimport { ReactNode, memo, useEffect } from 'react'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { useDispatch } from '../hooks/use-dispatch'\nimport { useDocumentKey } from '../hooks/use-document-context'\nimport { useDisableRegisterElement } from '../hooks/use-disable-register-element'\nimport { mountComponentEffect } from '../../../state/builder-api/actions'\nimport { registerComponentHandleEffect } from '../../../state/actions/internal/read-only-actions'\n\ntype RegisterChildrenAsElementProps = {\n elementKey: string\n componentHandle: ElementImperativeHandle\n children?: ReactNode\n}\n\nexport const ElementRegistration = memo(function ElementRegistration({\n elementKey,\n componentHandle,\n children,\n}: RegisterChildrenAsElementProps): ReactNode {\n const dispatch = useDispatch()\n const documentKey = useDocumentKey()\n\n const isRegisterElementDisabled = useDisableRegisterElement()\n\n useEffect(() => {\n if (documentKey == null || isRegisterElementDisabled) return\n\n return dispatch(registerComponentHandleEffect(documentKey, elementKey, componentHandle))\n }, [dispatch, documentKey, elementKey, isRegisterElementDisabled])\n\n useEffect(() => {\n if (documentKey == null || isRegisterElementDisabled) return\n\n return dispatch(mountComponentEffect(documentKey, elementKey))\n }, [dispatch, documentKey, elementKey, isRegisterElementDisabled])\n\n return <>{children}</>\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAsCS;AApCT,mBAA2C;AAE3C,0BAA4B;AAC5B,kCAA+B;AAC/B,0CAA0C;AAC1C,qBAAqC;AACrC,+BAA8C;AAQvC,MAAM,0BAAsB,mBAAK,SAASA,qBAAoB;AAAA,EACnE;AAAA,EACA;AAAA,EACA;AACF,GAA8C;AAC5C,QAAM,eAAW,iCAAY;AAC7B,QAAM,kBAAc,4CAAe;AAEnC,QAAM,gCAA4B,+DAA0B;AAE5D,8BAAU,MAAM;AACd,QAAI,eAAe,QAAQ;AAA2B;AAEtD,WAAO,aAAS,wDAA8B,aAAa,YAAY,eAAe,CAAC;AAAA,EACzF,GAAG,CAAC,UAAU,aAAa,YAAY,yBAAyB,CAAC;AAEjE,8BAAU,MAAM;AACd,QAAI,eAAe,QAAQ;AAA2B;AAEtD,WAAO,aAAS,qCAAqB,aAAa,UAAU,CAAC;AAAA,EAC/D,GAAG,CAAC,UAAU,aAAa,YAAY,yBAAyB,CAAC;AAEjE,SAAO,2EAAG,UAAS;AACrB,CAAC;","names":["ElementRegistration"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/ElementRegistration.tsx"],"sourcesContent":["'use client'\n\nimport { ReactNode, memo, useEffect } from 'react'\nimport { ElementImperativeHandle } from '../element-imperative-handle'\nimport { useDispatch } from '../hooks/use-dispatch'\nimport { useDocumentKey } from '../hooks/use-document-context'\nimport { useDisableRegisterElement } from '../hooks/use-disable-register-element'\nimport { mountComponentEffect } from '../../../state/builder-api/actions'\nimport { registerComponentHandleEffect } from '../../../state/actions/internal/read-write-actions'\n\ntype RegisterChildrenAsElementProps = {\n elementKey: string\n componentHandle: ElementImperativeHandle\n children?: ReactNode\n}\n\nexport const ElementRegistration = memo(function ElementRegistration({\n elementKey,\n componentHandle,\n children,\n}: RegisterChildrenAsElementProps): ReactNode {\n const dispatch = useDispatch()\n const documentKey = useDocumentKey()\n\n const isRegisterElementDisabled = useDisableRegisterElement()\n\n useEffect(() => {\n if (documentKey == null || isRegisterElementDisabled) return\n\n return dispatch(registerComponentHandleEffect(documentKey, elementKey, componentHandle))\n }, [dispatch, documentKey, elementKey, isRegisterElementDisabled])\n\n useEffect(() => {\n if (documentKey == null || isRegisterElementDisabled) return\n\n return dispatch(mountComponentEffect(documentKey, elementKey))\n }, [dispatch, documentKey, elementKey, isRegisterElementDisabled])\n\n return <>{children}</>\n})\n\nexport default ElementRegistration\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsCS;AApCT,mBAA2C;AAE3C,0BAA4B;AAC5B,kCAA+B;AAC/B,0CAA0C;AAC1C,qBAAqC;AACrC,gCAA8C;AAQvC,MAAM,0BAAsB,mBAAK,SAASA,qBAAoB;AAAA,EACnE;AAAA,EACA;AAAA,EACA;AACF,GAA8C;AAC5C,QAAM,eAAW,iCAAY;AAC7B,QAAM,kBAAc,4CAAe;AAEnC,QAAM,gCAA4B,+DAA0B;AAE5D,8BAAU,MAAM;AACd,QAAI,eAAe,QAAQ;AAA2B;AAEtD,WAAO,aAAS,yDAA8B,aAAa,YAAY,eAAe,CAAC;AAAA,EACzF,GAAG,CAAC,UAAU,aAAa,YAAY,yBAAyB,CAAC;AAEjE,8BAAU,MAAM;AACd,QAAI,eAAe,QAAQ;AAA2B;AAEtD,WAAO,aAAS,qCAAqB,aAAa,UAAU,CAAC;AAAA,EAC/D,GAAG,CAAC,UAAU,aAAa,YAAY,yBAAyB,CAAC;AAEjE,SAAO,2EAAG,UAAS;AACrB,CAAC;AAED,IAAO,8BAAQ;","names":["ElementRegistration"]}
@@ -23,6 +23,7 @@ __export(resolve_props_exports, {
23
23
  module.exports = __toCommonJS(resolve_props_exports);
24
24
  var import_use_control_defs = require("../hooks/use-control-defs");
25
25
  var import_use_resolved_props = require("../hooks/use-resolved-props");
26
+ var import_use_control_instances = require("../hooks/use-control-instances");
26
27
  var import_use_stylesheet_factory = require("../hooks/use-stylesheet-factory");
27
28
  var import_legacy_controls = require("../legacy-controls");
28
29
  function ResolveProps({
@@ -30,11 +31,14 @@ function ResolveProps({
30
31
  children: renderComponent
31
32
  }) {
32
33
  const [legacyDescriptors, definitions] = (0, import_use_control_defs.useControlDefs)({ elementType: element.type });
34
+ const elementKey = element.key;
33
35
  const stylesheetFactory = (0, import_use_stylesheet_factory.useStylesheetFactory)();
36
+ const controlInstances = (0, import_use_control_instances.useControlInstances)(elementKey);
34
37
  const resolvedProps = (0, import_use_resolved_props.useResolvedProps)({
38
+ elementKey,
35
39
  propDefs: definitions,
36
40
  propData: element.props,
37
- elementKey: element.key,
41
+ controlInstances,
38
42
  stylesheetFactory
39
43
  });
40
44
  const renderFn = Object.entries(legacyDescriptors).reduceRight(
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/resolve-props.tsx"],"sourcesContent":["import { type ReactNode } from 'react'\n\nimport { type ElementData } from '../../../state/read-only-state'\n\nimport { useControlDefs } from '../hooks/use-control-defs'\nimport { useResolvedProps } from '../hooks/use-resolved-props'\nimport { useStylesheetFactory } from '../hooks/use-stylesheet-factory'\n\nimport { resolveLegacyDescriptorProp } from '../legacy-controls'\n\nexport function ResolveProps({\n element,\n children: renderComponent,\n}: {\n element: ElementData\n children: (props: Record<string, unknown>) => ReactNode\n}): ReactNode {\n const [legacyDescriptors, definitions] = useControlDefs({ elementType: element.type })\n\n const stylesheetFactory = useStylesheetFactory()\n const resolvedProps = useResolvedProps({\n propDefs: definitions,\n propData: element.props,\n elementKey: element.key,\n stylesheetFactory,\n })\n\n const renderFn = Object.entries(legacyDescriptors).reduceRight(\n (renderFn, [propName, descriptor]) =>\n props =>\n resolveLegacyDescriptorProp(descriptor, propName, element.props[propName], props, renderFn),\n renderComponent,\n )\n\n return renderFn(resolvedProps)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,8BAA+B;AAC/B,gCAAiC;AACjC,oCAAqC;AAErC,6BAA4C;AAErC,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA,UAAU;AACZ,GAGc;AACZ,QAAM,CAAC,mBAAmB,WAAW,QAAI,wCAAe,EAAE,aAAa,QAAQ,KAAK,CAAC;AAErF,QAAM,wBAAoB,oDAAqB;AAC/C,QAAM,oBAAgB,4CAAiB;AAAA,IACrC,UAAU;AAAA,IACV,UAAU,QAAQ;AAAA,IAClB,YAAY,QAAQ;AAAA,IACpB;AAAA,EACF,CAAC;AAED,QAAM,WAAW,OAAO,QAAQ,iBAAiB,EAAE;AAAA,IACjD,CAACA,WAAU,CAAC,UAAU,UAAU,MAC9B,eACE,oDAA4B,YAAY,UAAU,QAAQ,MAAM,QAAQ,GAAG,OAAOA,SAAQ;AAAA,IAC9F;AAAA,EACF;AAEA,SAAO,SAAS,aAAa;AAC/B;","names":["renderFn"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/resolve-props.tsx"],"sourcesContent":["import { type ReactNode } from 'react'\n\nimport { type ElementData } from '../../../state/read-only-state'\n\nimport { useControlDefs } from '../hooks/use-control-defs'\nimport { useResolvedProps } from '../hooks/use-resolved-props'\nimport { useControlInstances } from '../hooks/use-control-instances'\nimport { useStylesheetFactory } from '../hooks/use-stylesheet-factory'\n\nimport { resolveLegacyDescriptorProp } from '../legacy-controls'\n\nexport function ResolveProps({\n element,\n children: renderComponent,\n}: {\n element: ElementData\n children: (props: Record<string, unknown>) => ReactNode\n}): ReactNode {\n const [legacyDescriptors, definitions] = useControlDefs({ elementType: element.type })\n\n const elementKey = element.key\n const stylesheetFactory = useStylesheetFactory()\n const controlInstances = useControlInstances(elementKey)\n const resolvedProps = useResolvedProps({\n elementKey,\n propDefs: definitions,\n propData: element.props,\n controlInstances,\n stylesheetFactory,\n })\n\n const renderFn = Object.entries(legacyDescriptors).reduceRight(\n (renderFn, [propName, descriptor]) =>\n props =>\n resolveLegacyDescriptorProp(descriptor, propName, element.props[propName], props, renderFn),\n renderComponent,\n )\n\n return renderFn(resolvedProps)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,8BAA+B;AAC/B,gCAAiC;AACjC,mCAAoC;AACpC,oCAAqC;AAErC,6BAA4C;AAErC,SAAS,aAAa;AAAA,EAC3B;AAAA,EACA,UAAU;AACZ,GAGc;AACZ,QAAM,CAAC,mBAAmB,WAAW,QAAI,wCAAe,EAAE,aAAa,QAAQ,KAAK,CAAC;AAErF,QAAM,aAAa,QAAQ;AAC3B,QAAM,wBAAoB,oDAAqB;AAC/C,QAAM,uBAAmB,kDAAoB,UAAU;AACvD,QAAM,oBAAgB,4CAAiB;AAAA,IACrC;AAAA,IACA,UAAU;AAAA,IACV,UAAU,QAAQ;AAAA,IAClB;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,WAAW,OAAO,QAAQ,iBAAiB,EAAE;AAAA,IACjD,CAACA,WAAU,CAAC,UAAU,UAAU,MAC9B,eACE,oDAA4B,YAAY,UAAU,QAAQ,MAAM,QAAQ,GAAG,OAAOA,SAAQ;AAAA,IAC9F;AAAA,EACF;AAEA,SAAO,SAAS,aAAa;AAC/B;","names":["renderFn"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/runtimes/react/controls/rich-text/EditableText/editable-text.tsx"],"sourcesContent":["'use client'\n\nimport { cx } from '@emotion/css'\nimport { getBox } from 'css-box-model'\nimport isHotkey from 'is-hotkey'\nimport {\n FocusEvent,\n forwardRef,\n KeyboardEvent,\n Ref,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n} from 'react'\n\nimport { createEditor } from 'slate'\nimport { Slate as SlateReact, Editable, withReact, ReactEditor } from 'slate-react'\n\nimport { Slate, richTextDTOtoDAO, type RichTextValue } from '@makeswift/controls'\n\nimport { useBuilderEditMode } from '../../..'\nimport { DescriptorsPropControllers } from '../../../../../prop-controllers/instances'\nimport { withBlock, withTypography, withBuilder, onKeyDown } from '../../../../../slate'\nimport { BuilderEditMode } from '../../../../../state/modules/builder-edit-mode'\nimport { PropControllersHandle } from '../../../../../state/modules/prop-controller-handles'\nimport { pollBoxModel } from '../../../poll-box-model'\nimport { Element, Leaf } from '../components'\nimport { Descriptors } from '../rich-text'\nimport { useSyncDOMSelection } from './useSyncDOMSelection'\nimport { useSyncWithBuilder } from './useSyncWithBuilder'\n\ntype Props = {\n id?: string\n text?: RichTextValue\n width?: string\n margin?: string\n}\n\nconst defaultText: Slate.RichTextDAO = [\n { type: Slate.BlockType.Paragraph, children: [{ text: '' }] },\n]\n\nexport const EditableText = forwardRef(function EditableText(\n { id, text, width, margin }: Props,\n ref: Ref<PropControllersHandle<Descriptors>>,\n) {\n const [editor] = useState(() => withBlock(withTypography(withBuilder(withReact(createEditor())))))\n const [isPreservingDOMSElection, setIsPreservingDOMSelection] = useState(false)\n useSyncDOMSelection(editor, isPreservingDOMSElection)\n const delaySync = useSyncWithBuilder(editor, text)\n const editMode = useBuilderEditMode()\n\n const [propControllers, setPropControllers] =\n useState<DescriptorsPropControllers<Descriptors> | null>(null)\n const controller = propControllers?.text\n\n useEffect(() => {\n if (controller == null) return\n\n const element = ReactEditor.toDOMNode(editor, editor)\n\n return pollBoxModel({\n element,\n onBoxModelChange: boxModel => controller.changeBoxModel(boxModel),\n })\n }, [editor, controller])\n\n useImperativeHandle(\n ref,\n () => ({\n getDomNode() {\n return ReactEditor.toDOMNode(editor, editor)\n },\n getBoxModel() {\n return getBox(ReactEditor.toDOMNode(editor, editor))\n },\n setPropControllers,\n }),\n [editor, setPropControllers],\n )\n\n const initialValue = useMemo(() => (text ? richTextDTOtoDAO(text) : defaultText), [text])\n\n useEffect(() => {\n controller?.setSlateEditor(editor)\n }, [controller, editor])\n\n const handleFocus = useCallback(() => {\n controller?.focus()\n setIsPreservingDOMSelection(true)\n }, [controller])\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (isHotkey('mod+shift+z', e)) return controller?.redo()\n if (isHotkey('mod+z', e)) return controller?.undo()\n if (isHotkey('escape')(e)) return controller?.blur()\n onKeyDown(e, editor)\n },\n [controller, editor],\n )\n\n const handleBlur = useCallback((e: FocusEvent) => {\n // When clicking outside of the iframe (`relatedTarget` is null) we want to preserve the DOM selection.\n if (e.relatedTarget == null) return\n // Otherwise we want to deselect on blur and stop preserving selection.\n setIsPreservingDOMSelection(false)\n ReactEditor.deselect(editor)\n }, [])\n\n return (\n <SlateReact editor={editor} value={initialValue} onChange={delaySync}>\n <Editable\n id={id}\n renderLeaf={Leaf}\n renderElement={Element}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onBlur={handleBlur}\n className={cx(width, margin)}\n readOnly={editMode !== BuilderEditMode.CONTENT}\n placeholder=\"Write some text...\"\n />\n </SlateReact>\n )\n})\n\nexport default EditableText\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkHM;AAhHN,iBAAmB;AACnB,2BAAuB;AACvB,uBAAqB;AACrB,mBAUO;AAEP,mBAA6B;AAC7B,yBAAsE;AAEtE,sBAA4D;AAE5D,eAAmC;AAEnC,IAAAA,gBAAkE;AAClE,+BAAgC;AAEhC,4BAA6B;AAC7B,wBAA8B;AAE9B,iCAAoC;AACpC,gCAAmC;AASnC,MAAM,cAAiC;AAAA,EACrC,EAAE,MAAM,sBAAM,UAAU,WAAW,UAAU,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE;AAC9D;AAEO,MAAM,mBAAe,yBAAW,SAASC,cAC9C,EAAE,IAAI,MAAM,OAAO,OAAO,GAC1B,KACA;AACA,QAAM,CAAC,MAAM,QAAI,uBAAS,UAAM,6BAAU,kCAAe,+BAAY,kCAAU,2BAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AACjG,QAAM,CAAC,0BAA0B,2BAA2B,QAAI,uBAAS,KAAK;AAC9E,sDAAoB,QAAQ,wBAAwB;AACpD,QAAM,gBAAY,8CAAmB,QAAQ,IAAI;AACjD,QAAM,eAAW,6BAAmB;AAEpC,QAAM,CAAC,iBAAiB,kBAAkB,QACxC,uBAAyD,IAAI;AAC/D,QAAM,aAAa,iBAAiB;AAEpC,8BAAU,MAAM;AACd,QAAI,cAAc;AAAM;AAExB,UAAM,UAAU,+BAAY,UAAU,QAAQ,MAAM;AAEpD,eAAO,oCAAa;AAAA,MAClB;AAAA,MACA,kBAAkB,cAAY,WAAW,eAAe,QAAQ;AAAA,IAClE,CAAC;AAAA,EACH,GAAG,CAAC,QAAQ,UAAU,CAAC;AAEvB;AAAA,IACE;AAAA,IACA,OAAO;AAAA,MACL,aAAa;AACX,eAAO,+BAAY,UAAU,QAAQ,MAAM;AAAA,MAC7C;AAAA,MACA,cAAc;AACZ,mBAAO,6BAAO,+BAAY,UAAU,QAAQ,MAAM,CAAC;AAAA,MACrD;AAAA,MACA;AAAA,IACF;AAAA,IACA,CAAC,QAAQ,kBAAkB;AAAA,EAC7B;AAEA,QAAM,mBAAe,sBAAQ,MAAO,WAAO,kCAAiB,IAAI,IAAI,aAAc,CAAC,IAAI,CAAC;AAExF,8BAAU,MAAM;AACd,gBAAY,eAAe,MAAM;AAAA,EACnC,GAAG,CAAC,YAAY,MAAM,CAAC;AAEvB,QAAM,kBAAc,0BAAY,MAAM;AACpC,gBAAY,MAAM;AAClB,gCAA4B,IAAI;AAAA,EAClC,GAAG,CAAC,UAAU,CAAC;AAEf,QAAM,oBAAgB;AAAA,IACpB,CAAC,MAAqB;AACpB,cAAI,iBAAAC,SAAS,eAAe,CAAC;AAAG,eAAO,YAAY,KAAK;AACxD,cAAI,iBAAAA,SAAS,SAAS,CAAC;AAAG,eAAO,YAAY,KAAK;AAClD,cAAI,iBAAAA,SAAS,QAAQ,EAAE,CAAC;AAAG,eAAO,YAAY,KAAK;AACnD,mCAAU,GAAG,MAAM;AAAA,IACrB;AAAA,IACA,CAAC,YAAY,MAAM;AAAA,EACrB;AAEA,QAAM,iBAAa,0BAAY,CAAC,MAAkB;AAEhD,QAAI,EAAE,iBAAiB;AAAM;AAE7B,gCAA4B,KAAK;AACjC,mCAAY,SAAS,MAAM;AAAA,EAC7B,GAAG,CAAC,CAAC;AAEL,SACE,4CAAC,mBAAAC,OAAA,EAAW,QAAgB,OAAO,cAAc,UAAU,WACzD;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,SAAS;AAAA,MACT,WAAW;AAAA,MACX,QAAQ;AAAA,MACR,eAAW,eAAG,OAAO,MAAM;AAAA,MAC3B,UAAU,aAAa,yCAAgB;AAAA,MACvC,aAAY;AAAA;AAAA,EACd,GACF;AAEJ,CAAC;AAED,IAAO,wBAAQ;","names":["import_slate","EditableText","isHotkey","SlateReact"]}
1
+ {"version":3,"sources":["../../../../../../../src/runtimes/react/controls/rich-text/EditableText/editable-text.tsx"],"sourcesContent":["'use client'\n\nimport { cx } from '@emotion/css'\nimport { getBox } from 'css-box-model'\nimport isHotkey from 'is-hotkey'\nimport {\n FocusEvent,\n forwardRef,\n KeyboardEvent,\n Ref,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n} from 'react'\n\nimport { createEditor } from 'slate'\nimport { Slate as SlateReact, Editable, withReact, ReactEditor } from 'slate-react'\n\nimport { Slate, richTextDTOtoDAO, type RichTextValue } from '@makeswift/controls'\n\nimport { useBuilderEditMode } from '../../..'\nimport { DescriptorsPropControllers } from '../../../../../prop-controllers/instances'\nimport { withBlock, withTypography, withBuilder, onKeyDown } from '../../../../../slate'\nimport { BuilderEditMode } from '../../../../../state/modules/builder-edit-mode'\nimport { PropControllersHandle } from '../../../../../state/modules/read-write/prop-controllers'\nimport { pollBoxModel } from '../../../poll-box-model'\nimport { Element, Leaf } from '../components'\nimport { Descriptors } from '../rich-text'\nimport { useSyncDOMSelection } from './useSyncDOMSelection'\nimport { useSyncWithBuilder } from './useSyncWithBuilder'\n\ntype Props = {\n id?: string\n text?: RichTextValue\n width?: string\n margin?: string\n}\n\nconst defaultText: Slate.RichTextDAO = [\n { type: Slate.BlockType.Paragraph, children: [{ text: '' }] },\n]\n\nexport const EditableText = forwardRef(function EditableText(\n { id, text, width, margin }: Props,\n ref: Ref<PropControllersHandle<Descriptors>>,\n) {\n const [editor] = useState(() => withBlock(withTypography(withBuilder(withReact(createEditor())))))\n const [isPreservingDOMSElection, setIsPreservingDOMSelection] = useState(false)\n useSyncDOMSelection(editor, isPreservingDOMSElection)\n const delaySync = useSyncWithBuilder(editor, text)\n const editMode = useBuilderEditMode()\n\n const [propControllers, setPropControllers] =\n useState<DescriptorsPropControllers<Descriptors> | null>(null)\n const controller = propControllers?.text\n\n useEffect(() => {\n if (controller == null) return\n\n const element = ReactEditor.toDOMNode(editor, editor)\n\n return pollBoxModel({\n element,\n onBoxModelChange: boxModel => controller.changeBoxModel(boxModel),\n })\n }, [editor, controller])\n\n useImperativeHandle(\n ref,\n () => ({\n getDomNode() {\n return ReactEditor.toDOMNode(editor, editor)\n },\n getBoxModel() {\n return getBox(ReactEditor.toDOMNode(editor, editor))\n },\n setPropControllers,\n }),\n [editor, setPropControllers],\n )\n\n const initialValue = useMemo(() => (text ? richTextDTOtoDAO(text) : defaultText), [text])\n\n useEffect(() => {\n controller?.setSlateEditor(editor)\n }, [controller, editor])\n\n const handleFocus = useCallback(() => {\n controller?.focus()\n setIsPreservingDOMSelection(true)\n }, [controller])\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (isHotkey('mod+shift+z', e)) return controller?.redo()\n if (isHotkey('mod+z', e)) return controller?.undo()\n if (isHotkey('escape')(e)) return controller?.blur()\n onKeyDown(e, editor)\n },\n [controller, editor],\n )\n\n const handleBlur = useCallback((e: FocusEvent) => {\n // When clicking outside of the iframe (`relatedTarget` is null) we want to preserve the DOM selection.\n if (e.relatedTarget == null) return\n // Otherwise we want to deselect on blur and stop preserving selection.\n setIsPreservingDOMSelection(false)\n ReactEditor.deselect(editor)\n }, [])\n\n return (\n <SlateReact editor={editor} value={initialValue} onChange={delaySync}>\n <Editable\n id={id}\n renderLeaf={Leaf}\n renderElement={Element}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onBlur={handleBlur}\n className={cx(width, margin)}\n readOnly={editMode !== BuilderEditMode.CONTENT}\n placeholder=\"Write some text...\"\n />\n </SlateReact>\n )\n})\n\nexport default EditableText\n"],"mappings":"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","names":["import_slate","EditableText","isHotkey","SlateReact"]}
@@ -33,7 +33,7 @@ __export(rich_text_exports, {
33
33
  module.exports = __toCommonJS(rich_text_exports);
34
34
  var import_jsx_runtime = require("react/jsx-runtime");
35
35
  var import_react = require("react");
36
- var import_prop_controller_handles = require("../../../../state/modules/prop-controller-handles");
36
+ var import_prop_controllers = require("../../../../state/modules/read-write/prop-controllers");
37
37
  var import_use_is_read_only = require("../../hooks/use-is-read-only");
38
38
  const EditableText = (0, import_react.lazy)(() => Promise.resolve().then(() => __toESM(require("./EditableText"))));
39
39
  const ReadOnlyText = (0, import_react.lazy)(() => Promise.resolve().then(() => __toESM(require("./ReadOnlyText"))));
@@ -46,7 +46,7 @@ function RichText({
46
46
  }) {
47
47
  const textCallbackRef = (0, import_react.useCallback)(
48
48
  (handle) => {
49
- if ((0, import_prop_controller_handles.isPropControllersHandle)(handle))
49
+ if ((0, import_prop_controllers.isPropControllersHandle)(handle))
50
50
  handle?.setPropControllers?.(control == null ? null : { text: control });
51
51
  },
52
52
  [control]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/controls/rich-text/rich-text.tsx"],"sourcesContent":["import { ReactNode, lazy, useCallback } from 'react'\n\nimport { type DataType } from '@makeswift/controls'\nimport { RichTextV1Control, RichTextV1Definition } from '../../../../controls/rich-text'\n\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../../../state/modules/prop-controller-handles'\n\nimport { useIsReadOnly } from '../../hooks/use-is-read-only'\n\nconst EditableText = lazy(() => import('./EditableText'))\nconst ReadOnlyText = lazy(() => import('./ReadOnlyText'))\n\nexport type RichTextControlValue = ReactNode\n\nexport type Descriptors = { text?: RichTextV1Definition }\n\nexport function renderRichText(\n data: DataType<RichTextV1Definition> | undefined,\n control: RichTextV1Control | null,\n) {\n return <RichText data={data} control={control} />\n}\n\nfunction RichText({\n data,\n control,\n}: {\n data: DataType<RichTextV1Definition> | undefined\n control: RichTextV1Control | null\n}) {\n const textCallbackRef = useCallback(\n (handle: PropControllersHandle<Descriptors> | HTMLDivElement | null) => {\n if (isPropControllersHandle(handle))\n handle?.setPropControllers?.(control == null ? null : { text: control })\n },\n [control],\n )\n\n return useIsReadOnly() ? (\n <ReadOnlyText text={data} ref={textCallbackRef} />\n ) : (\n <EditableText text={data} ref={textCallbackRef} />\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuBS;AAvBT,mBAA6C;AAK7C,qCAGO;AAEP,8BAA8B;AAE9B,MAAM,mBAAe,mBAAK,MAAM,6CAAO,gBAAgB,GAAC;AACxD,MAAM,mBAAe,mBAAK,MAAM,6CAAO,gBAAgB,GAAC;AAMjD,SAAS,eACd,MACA,SACA;AACA,SAAO,4CAAC,YAAS,MAAY,SAAkB;AACjD;AAEA,SAAS,SAAS;AAAA,EAChB;AAAA,EACA;AACF,GAGG;AACD,QAAM,sBAAkB;AAAA,IACtB,CAAC,WAAuE;AACtE,cAAI,wDAAwB,MAAM;AAChC,gBAAQ,qBAAqB,WAAW,OAAO,OAAO,EAAE,MAAM,QAAQ,CAAC;AAAA,IAC3E;AAAA,IACA,CAAC,OAAO;AAAA,EACV;AAEA,aAAO,uCAAc,IACnB,4CAAC,gBAAa,MAAM,MAAM,KAAK,iBAAiB,IAEhD,4CAAC,gBAAa,MAAM,MAAM,KAAK,iBAAiB;AAEpD;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/controls/rich-text/rich-text.tsx"],"sourcesContent":["import { ReactNode, lazy, useCallback } from 'react'\n\nimport { type DataType } from '@makeswift/controls'\nimport { RichTextV1Control, RichTextV1Definition } from '../../../../controls/rich-text'\n\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../../../state/modules/read-write/prop-controllers'\n\nimport { useIsReadOnly } from '../../hooks/use-is-read-only'\n\nconst EditableText = lazy(() => import('./EditableText'))\nconst ReadOnlyText = lazy(() => import('./ReadOnlyText'))\n\nexport type RichTextControlValue = ReactNode\n\nexport type Descriptors = { text?: RichTextV1Definition }\n\nexport function renderRichText(\n data: DataType<RichTextV1Definition> | undefined,\n control: RichTextV1Control | null,\n) {\n return <RichText data={data} control={control} />\n}\n\nfunction RichText({\n data,\n control,\n}: {\n data: DataType<RichTextV1Definition> | undefined\n control: RichTextV1Control | null\n}) {\n const textCallbackRef = useCallback(\n (handle: PropControllersHandle<Descriptors> | HTMLDivElement | null) => {\n if (isPropControllersHandle(handle))\n handle?.setPropControllers?.(control == null ? null : { text: control })\n },\n [control],\n )\n\n return useIsReadOnly() ? (\n <ReadOnlyText text={data} ref={textCallbackRef} />\n ) : (\n <EditableText text={data} ref={textCallbackRef} />\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuBS;AAvBT,mBAA6C;AAK7C,8BAGO;AAEP,8BAA8B;AAE9B,MAAM,mBAAe,mBAAK,MAAM,6CAAO,gBAAgB,GAAC;AACxD,MAAM,mBAAe,mBAAK,MAAM,6CAAO,gBAAgB,GAAC;AAMjD,SAAS,eACd,MACA,SACA;AACA,SAAO,4CAAC,YAAS,MAAY,SAAkB;AACjD;AAEA,SAAS,SAAS;AAAA,EAChB;AAAA,EACA;AACF,GAGG;AACD,QAAM,sBAAkB;AAAA,IACtB,CAAC,WAAuE;AACtE,cAAI,iDAAwB,MAAM;AAChC,gBAAQ,qBAAqB,WAAW,OAAO,OAAO,EAAE,MAAM,QAAQ,CAAC;AAAA,IAC3E;AAAA,IACA,CAAC,OAAO;AAAA,EACV;AAEA,aAAO,uCAAc,IACnB,4CAAC,gBAAa,MAAM,MAAM,KAAK,iBAAiB,IAEhD,4CAAC,gBAAa,MAAM,MAAM,KAAK,iBAAiB;AAEpD;","names":[]}
@@ -23,7 +23,7 @@ __export(element_imperative_handle_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(element_imperative_handle_exports);
25
25
  var import_box_models2 = require("../../state/modules/read-write/box-models");
26
- var import_prop_controller_handles = require("../../state/modules/prop-controller-handles");
26
+ var import_prop_controllers = require("../../state/modules/read-write/prop-controllers");
27
27
  class ElementImperativeHandle {
28
28
  getCurrent = () => null;
29
29
  lastPropControllers = null;
@@ -41,7 +41,7 @@ class ElementImperativeHandle {
41
41
  }
42
42
  setPropControllers(propControllers) {
43
43
  const current = this.getCurrent();
44
- if ((0, import_prop_controller_handles.isPropControllersHandle)(current))
44
+ if ((0, import_prop_controllers.isPropControllersHandle)(current))
45
45
  current.setPropControllers(propControllers);
46
46
  this.lastPropControllers = propControllers;
47
47
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/element-imperative-handle.ts"],"sourcesContent":["import { BoxModelHandle, type BoxDisplayModel } from '../../state/modules/read-write/box-models'\nimport { Descriptor } from '../../prop-controllers/descriptors'\nimport { DescriptorsPropControllers } from '../../prop-controllers/instances'\nimport { isMeasurable, measure } from '../../state/modules/read-write/box-models'\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../state/modules/prop-controller-handles'\n\nexport class ElementImperativeHandle<\n T extends Record<string, Descriptor> = Record<string, Descriptor>,\n >\n implements BoxModelHandle, PropControllersHandle<T>\n{\n private getCurrent: () => unknown = () => null\n private lastPropControllers: DescriptorsPropControllers<T> | null = null\n\n callback(getCurrent: () => unknown) {\n const current = this.getCurrent()\n\n if (current === null) this.setPropControllers(null)\n\n this.getCurrent = getCurrent\n\n if (this.lastPropControllers !== null) this.setPropControllers(this.lastPropControllers)\n }\n\n getBoxModel(): BoxDisplayModel | null {\n const current = this.getCurrent()\n\n return isMeasurable(current) ? measure(current) : null\n }\n\n setPropControllers(propControllers: DescriptorsPropControllers<T> | null): void {\n const current = this.getCurrent()\n\n if (isPropControllersHandle(current)) current.setPropControllers(propControllers)\n\n this.lastPropControllers = propControllers\n }\n\n getDomNode(): Element | null {\n const current = this.getCurrent()\n\n if (isDomNodeHandle(current)) return current.getDomNode()\n\n return current instanceof Element ? current : null\n }\n}\n\ntype DomNodeHandle = {\n getDomNode(): Element | null\n}\n\nexport function isDomNodeHandle(value: unknown): value is DomNodeHandle {\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getDomNode' in value &&\n typeof (value as { getDomNode: unknown }).getDomNode === 'function'\n ) {\n return true\n }\n\n return false\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,IAAAA,qBAAsC;AACtC,qCAGO;AAEA,MAAM,wBAIb;AAAA,EACU,aAA4B,MAAM;AAAA,EAClC,sBAA4D;AAAA,EAEpE,SAAS,YAA2B;AAClC,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,YAAY;AAAM,WAAK,mBAAmB,IAAI;AAElD,SAAK,aAAa;AAElB,QAAI,KAAK,wBAAwB;AAAM,WAAK,mBAAmB,KAAK,mBAAmB;AAAA,EACzF;AAAA,EAEA,cAAsC;AACpC,UAAM,UAAU,KAAK,WAAW;AAEhC,eAAO,iCAAa,OAAO,QAAI,4BAAQ,OAAO,IAAI;AAAA,EACpD;AAAA,EAEA,mBAAmB,iBAA6D;AAC9E,UAAM,UAAU,KAAK,WAAW;AAEhC,YAAI,wDAAwB,OAAO;AAAG,cAAQ,mBAAmB,eAAe;AAEhF,SAAK,sBAAsB;AAAA,EAC7B;AAAA,EAEA,aAA6B;AAC3B,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,gBAAgB,OAAO;AAAG,aAAO,QAAQ,WAAW;AAExD,WAAO,mBAAmB,UAAU,UAAU;AAAA,EAChD;AACF;AAMO,SAAS,gBAAgB,OAAwC;AACtE,MACE,OAAO,UAAU,YACjB,UAAU,QACV,gBAAgB,SAChB,OAAQ,MAAkC,eAAe,YACzD;AACA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;","names":["import_box_models"]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/element-imperative-handle.ts"],"sourcesContent":["import { BoxModelHandle, type BoxDisplayModel } from '../../state/modules/read-write/box-models'\nimport { Descriptor } from '../../prop-controllers/descriptors'\nimport { DescriptorsPropControllers } from '../../prop-controllers/instances'\nimport { isMeasurable, measure } from '../../state/modules/read-write/box-models'\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../state/modules/read-write/prop-controllers'\n\nexport class ElementImperativeHandle<\n T extends Record<string, Descriptor> = Record<string, Descriptor>,\n >\n implements BoxModelHandle, PropControllersHandle<T>\n{\n private getCurrent: () => unknown = () => null\n private lastPropControllers: DescriptorsPropControllers<T> | null = null\n\n callback(getCurrent: () => unknown) {\n const current = this.getCurrent()\n\n if (current === null) this.setPropControllers(null)\n\n this.getCurrent = getCurrent\n\n if (this.lastPropControllers !== null) this.setPropControllers(this.lastPropControllers)\n }\n\n getBoxModel(): BoxDisplayModel | null {\n const current = this.getCurrent()\n\n return isMeasurable(current) ? measure(current) : null\n }\n\n setPropControllers(propControllers: DescriptorsPropControllers<T> | null): void {\n const current = this.getCurrent()\n\n if (isPropControllersHandle(current)) current.setPropControllers(propControllers)\n\n this.lastPropControllers = propControllers\n }\n\n getDomNode(): Element | null {\n const current = this.getCurrent()\n\n if (isDomNodeHandle(current)) return current.getDomNode()\n\n return current instanceof Element ? current : null\n }\n}\n\ntype DomNodeHandle = {\n getDomNode(): Element | null\n}\n\nexport function isDomNodeHandle(value: unknown): value is DomNodeHandle {\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getDomNode' in value &&\n typeof (value as { getDomNode: unknown }).getDomNode === 'function'\n ) {\n return true\n }\n\n return false\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,IAAAA,qBAAsC;AACtC,8BAGO;AAEA,MAAM,wBAIb;AAAA,EACU,aAA4B,MAAM;AAAA,EAClC,sBAA4D;AAAA,EAEpE,SAAS,YAA2B;AAClC,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,YAAY;AAAM,WAAK,mBAAmB,IAAI;AAElD,SAAK,aAAa;AAElB,QAAI,KAAK,wBAAwB;AAAM,WAAK,mBAAmB,KAAK,mBAAmB;AAAA,EACzF;AAAA,EAEA,cAAsC;AACpC,UAAM,UAAU,KAAK,WAAW;AAEhC,eAAO,iCAAa,OAAO,QAAI,4BAAQ,OAAO,IAAI;AAAA,EACpD;AAAA,EAEA,mBAAmB,iBAA6D;AAC9E,UAAM,UAAU,KAAK,WAAW;AAEhC,YAAI,iDAAwB,OAAO;AAAG,cAAQ,mBAAmB,eAAe;AAEhF,SAAK,sBAAsB;AAAA,EAC7B;AAAA,EAEA,aAA6B;AAC3B,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,gBAAgB,OAAO;AAAG,aAAO,QAAQ,WAAW;AAExD,WAAO,mBAAmB,UAAU,UAAU;AAAA,EAChD;AACF;AAMO,SAAS,gBAAgB,OAAwC;AACtE,MACE,OAAO,UAAU,YACjB,UAAU,QACV,gBAAgB,SAChB,OAAQ,MAAkC,eAAe,YACzD;AACA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;","names":["import_box_models"]}
@@ -21,15 +21,16 @@ __export(use_control_instances_exports, {
21
21
  useControlInstances: () => useControlInstances
22
22
  });
23
23
  module.exports = __toCommonJS(use_control_instances_exports);
24
- var import_read_only_state = require("../../../state/read-only-state");
24
+ var import_read_write_state = require("../../../state/read-write-state");
25
+ var import_unified_state = require("../../../state/unified-state");
25
26
  var import_use_document_context = require("./use-document-context");
26
27
  var import_use_selector = require("./use-selector");
27
28
  function useControlInstances(elementKey) {
28
29
  const documentKey = (0, import_use_document_context.useDocumentKey)();
29
30
  return (0, import_use_selector.useSelector)((state) => {
30
- if (documentKey == null)
31
+ if (documentKey == null || !(0, import_unified_state.isReadWriteState)(state))
31
32
  return null;
32
- return (0, import_read_only_state.getPropControllers)(state, { documentKey, elementKey });
33
+ return (0, import_read_write_state.getPropControllers)(state, { documentKey, elementKey });
33
34
  });
34
35
  }
35
36
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-control-instances.ts"],"sourcesContent":["import { ControlInstance } from '@makeswift/controls'\n\nimport { getPropControllers } from '../../../state/read-only-state'\nimport { useDocumentKey } from './use-document-context'\nimport { useSelector } from './use-selector'\n\nexport function useControlInstances(elementKey: string): Record<string, ControlInstance> | null {\n const documentKey = useDocumentKey()\n\n return useSelector(state => {\n if (documentKey == null) return null\n\n return getPropControllers(state, { documentKey, elementKey })\n })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,6BAAmC;AACnC,kCAA+B;AAC/B,0BAA4B;AAErB,SAAS,oBAAoB,YAA4D;AAC9F,QAAM,kBAAc,4CAAe;AAEnC,aAAO,iCAAY,WAAS;AAC1B,QAAI,eAAe;AAAM,aAAO;AAEhC,eAAO,2CAAmB,OAAO,EAAE,aAAa,WAAW,CAAC;AAAA,EAC9D,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-control-instances.ts"],"sourcesContent":["import { ControlInstance } from '@makeswift/controls'\n\nimport { getPropControllers } from '../../../state/read-write-state'\nimport { isReadWriteState } from '../../../state/unified-state'\nimport { useDocumentKey } from './use-document-context'\nimport { useSelector } from './use-selector'\n\nexport function useControlInstances(elementKey: string): Record<string, ControlInstance> | null {\n const documentKey = useDocumentKey()\n\n return useSelector(state => {\n if (documentKey == null || !isReadWriteState(state)) return null\n\n return getPropControllers(state, { documentKey, elementKey })\n })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,8BAAmC;AACnC,2BAAiC;AACjC,kCAA+B;AAC/B,0BAA4B;AAErB,SAAS,oBAAoB,YAA4D;AAC9F,QAAM,kBAAc,4CAAe;AAEnC,aAAO,iCAAY,WAAS;AAC1B,QAAI,eAAe,QAAQ,KAAC,uCAAiB,KAAK;AAAG,aAAO;AAE5D,eAAO,4CAAmB,OAAO,EAAE,aAAa,WAAW,CAAC;AAAA,EAC9D,CAAC;AACH;","names":[]}
@@ -25,21 +25,20 @@ var import_react = require("react");
25
25
  var import_controls = require("@makeswift/controls");
26
26
  var import_use_resource_resolver = require("./use-resource-resolver");
27
27
  var import_prop_error_handling_proxy = require("../utils/prop-error-handling-proxy");
28
- var import_use_control_instances = require("./use-control-instances");
29
28
  var import_use_resolvable_record = require("./use-resolvable-record");
30
29
  function useResolvedProps({
30
+ elementKey,
31
31
  propDefs,
32
32
  propData,
33
- elementKey,
33
+ controlInstances,
34
34
  stylesheetFactory
35
35
  }) {
36
36
  const resourceResolver = (0, import_use_resource_resolver.useResourceResolver)();
37
- const controls = (0, import_use_control_instances.useControlInstances)(elementKey);
38
37
  const cache = (0, import_react.useRef)({}).current;
39
38
  const resolveProp = (0, import_react.useCallback)(
40
39
  (def, propName) => {
41
40
  const data = propData[propName];
42
- const control = controls?.[propName];
41
+ const control = controlInstances?.[propName];
43
42
  if (cache[propName] != null && data === cache[propName].data && control === cache[propName].control) {
44
43
  return cache[propName].resolvedValue;
45
44
  }
@@ -52,24 +51,26 @@ function useResolvedProps({
52
51
  cache[propName] = { data, control, resolvedValue };
53
52
  return resolvedValue;
54
53
  },
55
- [controls, propData, resourceResolver, stylesheetFactory]
54
+ [propData, cache, resourceResolver, controlInstances, stylesheetFactory]
56
55
  );
57
56
  const resolvables = (0, import_react.useMemo)(
58
57
  () => (0, import_controls.mapValues)(propDefs, (def, propName) => {
59
58
  const defaultValue = def.config?.defaultValue;
60
59
  return (0, import_prop_error_handling_proxy.propErrorHandlingProxy)(resolveProp(def, propName), defaultValue, (error) => {
61
60
  console.warn(
62
- `Error reading value for prop "${propName}", falling back to \`${defaultValue}\`.`,
61
+ `Error reading value for prop "${propName}" of element ${elementKey}, falling back to \`${defaultValue}\`.`,
63
62
  { control: def, error }
64
63
  );
65
64
  });
66
65
  }),
67
- [propDefs, resolveProp]
66
+ [propDefs, resolveProp, elementKey]
68
67
  );
69
68
  const props = (0, import_use_resolvable_record.useResolvableRecord)(resolvables);
70
69
  (0, import_react.useEffect)(() => {
71
- props.triggerResolve();
72
- }, [props]);
70
+ props.triggerResolve().catch((err) => {
71
+ console.log(`Error while resolving props for element ${elementKey}`, err);
72
+ });
73
+ }, [props, elementKey]);
73
74
  const resolvedProps = (0, import_react.useSyncExternalStore)(props.subscribe, props.readStable, props.readStable);
74
75
  stylesheetFactory.useDefinedStyles();
75
76
  return resolvedProps;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-resolved-props.ts"],"sourcesContent":["import { useMemo, useEffect, useRef, useSyncExternalStore, useCallback } from 'react'\nimport {\n ControlDefinition,\n ControlInstance,\n mapValues,\n type Data,\n type Resolvable,\n} from '@makeswift/controls'\n\nimport { useResourceResolver } from './use-resource-resolver'\n\nimport { type StylesheetFactory } from '../stylesheet-factory'\nimport { propErrorHandlingProxy } from '../utils/prop-error-handling-proxy'\n\nimport { useControlInstances } from './use-control-instances'\nimport { useResolvableRecord } from './use-resolvable-record'\n\ntype CacheItem = {\n data: Data\n control: ControlInstance | undefined\n resolvedValue: Resolvable<unknown>\n}\n\nexport function useResolvedProps({\n propDefs,\n propData,\n elementKey,\n stylesheetFactory,\n}: {\n propDefs: Record<string, ControlDefinition>\n propData: Record<string, Data>\n elementKey: string\n stylesheetFactory: StylesheetFactory\n}): Record<string, unknown> {\n const resourceResolver = useResourceResolver()\n const controls = useControlInstances(elementKey)\n\n const cache = useRef<Record<string, CacheItem>>({}).current\n const resolveProp = useCallback(\n (def: ControlDefinition, propName: string) => {\n const data = propData[propName]\n const control = controls?.[propName]\n\n if (\n cache[propName] != null &&\n data === cache[propName].data &&\n control === cache[propName].control\n ) {\n return cache[propName].resolvedValue\n }\n\n const resolvedValue = def.resolveValue(\n data,\n resourceResolver,\n stylesheetFactory.get(propName),\n control,\n )\n\n cache[propName] = { data, control, resolvedValue }\n return resolvedValue\n },\n [controls, propData, resourceResolver, stylesheetFactory],\n )\n\n const resolvables = useMemo<Record<string, Resolvable<unknown>>>(\n () =>\n mapValues(propDefs, (def, propName) => {\n const defaultValue = (def.config as any)?.defaultValue\n return propErrorHandlingProxy(resolveProp(def, propName), defaultValue, error => {\n console.warn(\n `Error reading value for prop \"${propName}\", falling back to \\`${defaultValue}\\`.`,\n { control: def, error },\n )\n })\n }),\n [propDefs, resolveProp],\n )\n\n const props = useResolvableRecord(resolvables)\n\n // no need to call `triggerResolve` on the server, all the resources should already be in\n // the host API client's cache (populated from the snapshot's cache)\n useEffect(() => {\n props.triggerResolve()\n }, [props])\n\n // the order is important here, the styles are defined in the process of the props resolution,\n // calling `useDefinedStyles` before the props are resolved would effectively be a noop\n const resolvedProps = useSyncExternalStore(props.subscribe, props.readStable, props.readStable)\n\n stylesheetFactory.useDefinedStyles()\n\n return resolvedProps\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8E;AAC9E,sBAMO;AAEP,mCAAoC;AAGpC,uCAAuC;AAEvC,mCAAoC;AACpC,mCAAoC;AAQ7B,SAAS,iBAAiB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAK4B;AAC1B,QAAM,uBAAmB,kDAAoB;AAC7C,QAAM,eAAW,kDAAoB,UAAU;AAE/C,QAAM,YAAQ,qBAAkC,CAAC,CAAC,EAAE;AACpD,QAAM,kBAAc;AAAA,IAClB,CAAC,KAAwB,aAAqB;AAC5C,YAAM,OAAO,SAAS,QAAQ;AAC9B,YAAM,UAAU,WAAW,QAAQ;AAEnC,UACE,MAAM,QAAQ,KAAK,QACnB,SAAS,MAAM,QAAQ,EAAE,QACzB,YAAY,MAAM,QAAQ,EAAE,SAC5B;AACA,eAAO,MAAM,QAAQ,EAAE;AAAA,MACzB;AAEA,YAAM,gBAAgB,IAAI;AAAA,QACxB;AAAA,QACA;AAAA,QACA,kBAAkB,IAAI,QAAQ;AAAA,QAC9B;AAAA,MACF;AAEA,YAAM,QAAQ,IAAI,EAAE,MAAM,SAAS,cAAc;AACjD,aAAO;AAAA,IACT;AAAA,IACA,CAAC,UAAU,UAAU,kBAAkB,iBAAiB;AAAA,EAC1D;AAEA,QAAM,kBAAc;AAAA,IAClB,UACE,2BAAU,UAAU,CAAC,KAAK,aAAa;AACrC,YAAM,eAAgB,IAAI,QAAgB;AAC1C,iBAAO,yDAAuB,YAAY,KAAK,QAAQ,GAAG,cAAc,WAAS;AAC/E,gBAAQ;AAAA,UACN,iCAAiC,QAAQ,wBAAwB,YAAY;AAAA,UAC7E,EAAE,SAAS,KAAK,MAAM;AAAA,QACxB;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,IACH,CAAC,UAAU,WAAW;AAAA,EACxB;AAEA,QAAM,YAAQ,kDAAoB,WAAW;AAI7C,8BAAU,MAAM;AACd,UAAM,eAAe;AAAA,EACvB,GAAG,CAAC,KAAK,CAAC;AAIV,QAAM,oBAAgB,mCAAqB,MAAM,WAAW,MAAM,YAAY,MAAM,UAAU;AAE9F,oBAAkB,iBAAiB;AAEnC,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-resolved-props.ts"],"sourcesContent":["import { useMemo, useEffect, useRef, useSyncExternalStore, useCallback } from 'react'\nimport {\n ControlDefinition,\n ControlInstance,\n mapValues,\n type Data,\n type Resolvable,\n} from '@makeswift/controls'\n\nimport { useResourceResolver } from './use-resource-resolver'\n\nimport { type StylesheetFactory } from '../stylesheet-factory'\nimport { propErrorHandlingProxy } from '../utils/prop-error-handling-proxy'\n\nimport { useResolvableRecord } from './use-resolvable-record'\n\ntype CacheItem = {\n data: Data\n control: ControlInstance | undefined\n resolvedValue: Resolvable<unknown>\n}\n\nexport function useResolvedProps({\n elementKey,\n propDefs,\n propData,\n controlInstances,\n stylesheetFactory,\n}: {\n elementKey: string\n propDefs: Record<string, ControlDefinition>\n propData: Record<string, Data>\n controlInstances: Record<string, ControlInstance> | null\n stylesheetFactory: StylesheetFactory\n}): Record<string, unknown> {\n const resourceResolver = useResourceResolver()\n\n const cache = useRef<Record<string, CacheItem>>({}).current\n const resolveProp = useCallback(\n (def: ControlDefinition, propName: string) => {\n const data = propData[propName]\n const control = controlInstances?.[propName]\n\n if (\n cache[propName] != null &&\n data === cache[propName].data &&\n control === cache[propName].control\n ) {\n return cache[propName].resolvedValue\n }\n\n const resolvedValue = def.resolveValue(\n data,\n resourceResolver,\n stylesheetFactory.get(propName),\n control,\n )\n\n cache[propName] = { data, control, resolvedValue }\n return resolvedValue\n },\n [propData, cache, resourceResolver, controlInstances, stylesheetFactory],\n )\n\n const resolvables = useMemo<Record<string, Resolvable<unknown>>>(\n () =>\n mapValues(propDefs, (def, propName) => {\n const defaultValue = (def.config as any)?.defaultValue\n return propErrorHandlingProxy(resolveProp(def, propName), defaultValue, error => {\n console.warn(\n `Error reading value for prop \"${propName}\" of element ${elementKey}, falling back to \\`${defaultValue}\\`.`,\n { control: def, error },\n )\n })\n }),\n [propDefs, resolveProp, elementKey],\n )\n\n const props = useResolvableRecord(resolvables)\n\n // no need to call `triggerResolve` on the server, all the resources should already be in\n // the host API client's cache (populated from the snapshot's cache)\n useEffect(() => {\n props.triggerResolve().catch(err => {\n console.log(`Error while resolving props for element ${elementKey}`, err)\n })\n }, [props, elementKey])\n\n // the order is important here, the styles are defined in the process of the props resolution,\n // calling `useDefinedStyles` before the props are resolved would effectively be a noop\n const resolvedProps = useSyncExternalStore(props.subscribe, props.readStable, props.readStable)\n\n stylesheetFactory.useDefinedStyles()\n\n return resolvedProps\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8E;AAC9E,sBAMO;AAEP,mCAAoC;AAGpC,uCAAuC;AAEvC,mCAAoC;AAQ7B,SAAS,iBAAiB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAM4B;AAC1B,QAAM,uBAAmB,kDAAoB;AAE7C,QAAM,YAAQ,qBAAkC,CAAC,CAAC,EAAE;AACpD,QAAM,kBAAc;AAAA,IAClB,CAAC,KAAwB,aAAqB;AAC5C,YAAM,OAAO,SAAS,QAAQ;AAC9B,YAAM,UAAU,mBAAmB,QAAQ;AAE3C,UACE,MAAM,QAAQ,KAAK,QACnB,SAAS,MAAM,QAAQ,EAAE,QACzB,YAAY,MAAM,QAAQ,EAAE,SAC5B;AACA,eAAO,MAAM,QAAQ,EAAE;AAAA,MACzB;AAEA,YAAM,gBAAgB,IAAI;AAAA,QACxB;AAAA,QACA;AAAA,QACA,kBAAkB,IAAI,QAAQ;AAAA,QAC9B;AAAA,MACF;AAEA,YAAM,QAAQ,IAAI,EAAE,MAAM,SAAS,cAAc;AACjD,aAAO;AAAA,IACT;AAAA,IACA,CAAC,UAAU,OAAO,kBAAkB,kBAAkB,iBAAiB;AAAA,EACzE;AAEA,QAAM,kBAAc;AAAA,IAClB,UACE,2BAAU,UAAU,CAAC,KAAK,aAAa;AACrC,YAAM,eAAgB,IAAI,QAAgB;AAC1C,iBAAO,yDAAuB,YAAY,KAAK,QAAQ,GAAG,cAAc,WAAS;AAC/E,gBAAQ;AAAA,UACN,iCAAiC,QAAQ,gBAAgB,UAAU,uBAAuB,YAAY;AAAA,UACtG,EAAE,SAAS,KAAK,MAAM;AAAA,QACxB;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,IACH,CAAC,UAAU,aAAa,UAAU;AAAA,EACpC;AAEA,QAAM,YAAQ,kDAAoB,WAAW;AAI7C,8BAAU,MAAM;AACd,UAAM,eAAe,EAAE,MAAM,SAAO;AAClC,cAAQ,IAAI,2CAA2C,UAAU,IAAI,GAAG;AAAA,IAC1E,CAAC;AAAA,EACH,GAAG,CAAC,OAAO,UAAU,CAAC;AAItB,QAAM,oBAAgB,mCAAqB,MAAM,WAAW,MAAM,YAAY,MAAM,UAAU;AAE9F,oBAAkB,iBAAiB;AAEnC,SAAO;AACT;","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 testing_exports = {};
17
+ module.exports = __toCommonJS(testing_exports);
18
+ __reExport(testing_exports, require("./react-provider"), module.exports);
19
+ __reExport(testing_exports, require("./react-runtime"), module.exports);
20
+ // Annotate the CommonJS export names for ESM import in node:
21
+ 0 && (module.exports = {
22
+ ...require("./react-provider"),
23
+ ...require("./react-runtime")
24
+ });
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/testing/index.ts"],"sourcesContent":["export * from './react-provider'\nexport * from './react-runtime'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,4BAAc,6BAAd;AACA,4BAAc,4BADd;","names":[]}
@@ -0,0 +1,38 @@
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 react_provider_exports = {};
20
+ __export(react_provider_exports, {
21
+ ReactProvider: () => ReactProvider
22
+ });
23
+ module.exports = __toCommonJS(react_provider_exports);
24
+ var import_jsx_runtime = require("react/jsx-runtime");
25
+ var import_RuntimeProvider = require("../components/RuntimeProvider");
26
+ var import_root_style_registry = require("../root-style-registry");
27
+ function ReactProvider({
28
+ children,
29
+ runtime,
30
+ siteVersion = null
31
+ }) {
32
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_RuntimeProvider.RuntimeProvider, { siteVersion, runtime, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_root_style_registry.DefaultRootStyleRegistry, { children }) });
33
+ }
34
+ // Annotate the CommonJS export names for ESM import in node:
35
+ 0 && (module.exports = {
36
+ ReactProvider
37
+ });
38
+ //# sourceMappingURL=react-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/testing/react-provider.tsx"],"sourcesContent":["import { type ReactRuntimeCore } from '../react-runtime-core'\nimport { RuntimeProvider } from '../components/RuntimeProvider'\n\nimport { DefaultRootStyleRegistry } from '../root-style-registry'\nimport { SiteVersion } from '../../../api/site-version'\n\nexport function ReactProvider({\n children,\n runtime,\n siteVersion = null,\n}: {\n children: React.ReactNode\n runtime: ReactRuntimeCore\n siteVersion?: SiteVersion | null\n}) {\n return (\n <RuntimeProvider siteVersion={siteVersion} runtime={runtime}>\n <DefaultRootStyleRegistry>{children}</DefaultRootStyleRegistry>\n </RuntimeProvider>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAiBM;AAhBN,6BAAgC;AAEhC,iCAAyC;AAGlC,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA,cAAc;AAChB,GAIG;AACD,SACE,4CAAC,0CAAgB,aAA0B,SACzC,sDAAC,uDAA0B,UAAS,GACtC;AAEJ;","names":[]}
@@ -23,13 +23,13 @@ __export(actions_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(actions_exports);
25
25
  var import_toolkit = require("@reduxjs/toolkit");
26
- var import_actions = require("../builder-api/actions");
26
+ var import_action_types = require("../builder-api/action-types");
27
27
  var import_host_api = require("../host-api");
28
- var import_internal = require("./internal");
28
+ var import_action_types2 = require("./internal/action-types");
29
29
  const ActionTypes = {
30
30
  ...import_host_api.HostActionTypes,
31
- ...import_actions.BuilderActionTypes,
32
- ...import_internal.InternalActionTypes
31
+ ...import_action_types.BuilderActionTypes,
32
+ ...import_action_types2.InternalActionTypes
33
33
  };
34
34
  function isKnownAction(action) {
35
35
  return (0, import_toolkit.isAction)(action) && Object.hasOwn(ActionTypes, action.type);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/state/actions/index.ts"],"sourcesContent":["import { isAction } from '@reduxjs/toolkit'\n\nimport { type BuilderAction, BuilderActionTypes } from '../builder-api/actions'\nimport { type HostAction, HostActionTypes } from '../host-api'\n\nimport { type InternalAction, InternalActionTypes } from './internal'\n\nexport { type UnknownAction } from '@reduxjs/toolkit'\nexport { type DocumentPayload } from '../shared-api'\n\nexport const ActionTypes = {\n ...HostActionTypes,\n ...BuilderActionTypes,\n ...InternalActionTypes,\n} as const\n\nexport type Action = HostAction | BuilderAction | InternalAction\n\nexport function isKnownAction(action: unknown): action is Action {\n return isAction(action) && Object.hasOwn(ActionTypes, action.type)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAyB;AAEzB,qBAAuD;AACvD,sBAAiD;AAEjD,sBAAyD;AAKlD,MAAM,cAAc;AAAA,EACzB,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAIO,SAAS,cAAc,QAAmC;AAC/D,aAAO,yBAAS,MAAM,KAAK,OAAO,OAAO,aAAa,OAAO,IAAI;AACnE;","names":[]}
1
+ {"version":3,"sources":["../../../../src/state/actions/index.ts"],"sourcesContent":["import { isAction } from '@reduxjs/toolkit'\n\nimport { type BuilderAction } from '../builder-api/actions'\nimport { BuilderActionTypes } from '../builder-api/action-types'\nimport { type HostAction, HostActionTypes } from '../host-api'\n\nimport { type InternalAction } from './internal'\nimport { InternalActionTypes } from './internal/action-types'\n\nexport { type UnknownAction } from '@reduxjs/toolkit'\nexport { type DocumentPayload } from '../shared-api'\n\nexport const ActionTypes = {\n ...HostActionTypes,\n ...BuilderActionTypes,\n ...InternalActionTypes,\n} as const\n\nexport type Action = HostAction | BuilderAction | InternalAction\n\nexport function isKnownAction(action: unknown): action is Action {\n return isAction(action) && Object.hasOwn(ActionTypes, action.type)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAyB;AAGzB,0BAAmC;AACnC,sBAAiD;AAGjD,IAAAA,uBAAoC;AAK7B,MAAM,cAAc;AAAA,EACzB,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAIO,SAAS,cAAc,QAAmC;AAC/D,aAAO,yBAAS,MAAM,KAAK,OAAO,OAAO,aAAa,OAAO,IAAI;AACnE;","names":["import_action_types"]}
@@ -0,0 +1,34 @@
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
+ InternalActionTypes: () => InternalActionTypes
22
+ });
23
+ module.exports = __toCommonJS(action_types_exports);
24
+ var import_read_only_action_types = require("./read-only-action-types");
25
+ var import_read_write_action_types = require("./read-write-action-types");
26
+ const InternalActionTypes = {
27
+ ...import_read_only_action_types.ReadOnlyActionTypes,
28
+ ...import_read_write_action_types.ReadWriteActionTypes
29
+ };
30
+ // Annotate the CommonJS export names for ESM import in node:
31
+ 0 && (module.exports = {
32
+ InternalActionTypes
33
+ });
34
+ //# sourceMappingURL=action-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/state/actions/internal/action-types.ts"],"sourcesContent":["import { ReadOnlyActionTypes } from './read-only-action-types'\nimport { ReadWriteActionTypes } from './read-write-action-types'\n\nexport const InternalActionTypes = {\n ...ReadOnlyActionTypes,\n ...ReadWriteActionTypes,\n} as const\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oCAAoC;AACpC,qCAAqC;AAE9B,MAAM,sBAAsB;AAAA,EACjC,GAAG;AAAA,EACH,GAAG;AACL;","names":[]}
@@ -3,10 +3,6 @@ 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
- };
10
6
  var __copyProps = (to, from, except, desc) => {
11
7
  if (from && typeof from === "object" || typeof from === "function") {
12
8
  for (let key of __getOwnPropNames(from))
@@ -17,18 +13,5 @@ var __copyProps = (to, from, except, desc) => {
17
13
  };
18
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
15
  var internal_exports = {};
20
- __export(internal_exports, {
21
- InternalActionTypes: () => InternalActionTypes
22
- });
23
16
  module.exports = __toCommonJS(internal_exports);
24
- var import_read_only_actions = require("./read-only-actions");
25
- var import_read_write_actions = require("./read-write-actions");
26
- const InternalActionTypes = {
27
- ...import_read_only_actions.ReadOnlyActionTypes,
28
- ...import_read_write_actions.ReadWriteActionTypes
29
- };
30
- // Annotate the CommonJS export names for ESM import in node:
31
- 0 && (module.exports = {
32
- InternalActionTypes
33
- });
34
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/state/actions/internal/index.ts"],"sourcesContent":["import { type ReadOnlyAction, ReadOnlyActionTypes } from './read-only-actions'\nimport { type ReadWriteAction, ReadWriteActionTypes } from './read-write-actions'\n\nexport const InternalActionTypes = {\n ...ReadOnlyActionTypes,\n ...ReadWriteActionTypes,\n} as const\n\nexport type InternalAction = ReadOnlyAction | ReadWriteAction\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAAyD;AACzD,gCAA2D;AAEpD,MAAM,sBAAsB;AAAA,EACjC,GAAG;AAAA,EACH,GAAG;AACL;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/state/actions/internal/index.ts"],"sourcesContent":["import { type ReadOnlyAction } from './read-only-actions'\nimport { type ReadWriteAction } from './read-write-actions'\n\nexport type InternalAction = ReadOnlyAction | ReadWriteAction\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1,44 @@
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 read_only_action_types_exports = {};
20
+ __export(read_only_action_types_exports, {
21
+ ReadOnlyActionTypes: () => ReadOnlyActionTypes
22
+ });
23
+ module.exports = __toCommonJS(read_only_action_types_exports);
24
+ const ReadOnlyActionTypes = {
25
+ // TODO: this one should be a read-write action and we should refuse
26
+ // to fetch resources on the client in read-only mode
27
+ API_RESOURCE_FULFILLED: "API_RESOURCE_FULFILLED",
28
+ CREATE_ELEMENT_TREE: "CREATE_ELEMENT_TREE",
29
+ DELETE_ELEMENT_TREE: "DELETE_ELEMENT_TREE",
30
+ REGISTER_COMPONENT: "REGISTER_COMPONENT",
31
+ UNREGISTER_COMPONENT: "UNREGISTER_COMPONENT",
32
+ REGISTER_REACT_COMPONENT: "REGISTER_REACT_COMPONENT",
33
+ UNREGISTER_REACT_COMPONENT: "UNREGISTER_REACT_COMPONENT",
34
+ SET_BREAKPOINTS: "SET_BREAKPOINTS",
35
+ UPDATE_CLIENT_BREAKPOINT: "UPDATE_CLIENT_BREAKPOINT",
36
+ SET_LOCALE: "SET_LOCALE",
37
+ SET_IS_IN_BUILDER: "SET_IS_IN_BUILDER",
38
+ SET_IS_READ_ONLY: "SET_IS_READ_ONLY"
39
+ };
40
+ // Annotate the CommonJS export names for ESM import in node:
41
+ 0 && (module.exports = {
42
+ ReadOnlyActionTypes
43
+ });
44
+ //# sourceMappingURL=read-only-action-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/state/actions/internal/read-only-action-types.ts"],"sourcesContent":["export const ReadOnlyActionTypes = {\n // TODO: this one should be a read-write action and we should refuse\n // to fetch resources on the client in read-only mode\n API_RESOURCE_FULFILLED: 'API_RESOURCE_FULFILLED',\n\n CREATE_ELEMENT_TREE: 'CREATE_ELEMENT_TREE',\n DELETE_ELEMENT_TREE: 'DELETE_ELEMENT_TREE',\n\n REGISTER_COMPONENT: 'REGISTER_COMPONENT',\n UNREGISTER_COMPONENT: 'UNREGISTER_COMPONENT',\n\n REGISTER_REACT_COMPONENT: 'REGISTER_REACT_COMPONENT',\n UNREGISTER_REACT_COMPONENT: 'UNREGISTER_REACT_COMPONENT',\n\n SET_BREAKPOINTS: 'SET_BREAKPOINTS',\n UPDATE_CLIENT_BREAKPOINT: 'UPDATE_CLIENT_BREAKPOINT',\n\n SET_LOCALE: 'SET_LOCALE',\n\n SET_IS_IN_BUILDER: 'SET_IS_IN_BUILDER',\n SET_IS_READ_ONLY: 'SET_IS_READ_ONLY',\n} as const\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,sBAAsB;AAAA;AAAA;AAAA,EAGjC,wBAAwB;AAAA,EAExB,qBAAqB;AAAA,EACrB,qBAAqB;AAAA,EAErB,oBAAoB;AAAA,EACpB,sBAAsB;AAAA,EAEtB,0BAA0B;AAAA,EAC1B,4BAA4B;AAAA,EAE5B,iBAAiB;AAAA,EACjB,0BAA0B;AAAA,EAE1B,YAAY;AAAA,EAEZ,mBAAmB;AAAA,EACnB,kBAAkB;AACpB;","names":[]}