@makeswift/runtime 0.19.4 → 0.20.0

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 (884) hide show
  1. package/builder/rich-text/package.json +5 -0
  2. package/core/package.json +5 -0
  3. package/dist/cjs/api/graphql/generated/types.js.map +1 -1
  4. package/dist/cjs/api/react.js.map +1 -1
  5. package/dist/cjs/{prop-controllers/base.js → builder/rich-text/index.js} +7 -12
  6. package/dist/cjs/builder/rich-text/index.js.map +1 -0
  7. package/dist/cjs/builder/serialization/control-serialization.js +51 -27
  8. package/dist/cjs/builder/serialization/control-serialization.js.map +1 -1
  9. package/dist/cjs/components/builtin/Button/Button.js.map +1 -1
  10. package/dist/cjs/components/builtin/Carousel/Carousel.js +2 -2
  11. package/dist/cjs/components/builtin/Carousel/Carousel.js.map +1 -1
  12. package/dist/cjs/components/builtin/Countdown/Countdown.js.map +1 -1
  13. package/dist/cjs/components/builtin/Divider/Divider.js.map +1 -1
  14. package/dist/cjs/components/builtin/Form/Form.js.map +1 -1
  15. package/dist/cjs/components/builtin/Form/context/FormContext.js.map +1 -1
  16. package/dist/cjs/components/builtin/Image/Image.js +2 -2
  17. package/dist/cjs/components/builtin/Image/Image.js.map +1 -1
  18. package/dist/cjs/components/builtin/Navigation/Navigation.js.map +1 -1
  19. package/dist/cjs/components/builtin/Navigation/components/MobileMenu/index.js.map +1 -1
  20. package/dist/cjs/components/builtin/SocialLinks/SocialLinks.js.map +1 -1
  21. package/dist/cjs/components/builtin/Text/register.js.map +1 -1
  22. package/dist/cjs/components/builtin/register.js.map +1 -1
  23. package/dist/cjs/components/hooks/useMediaQuery.js +2 -2
  24. package/dist/cjs/components/hooks/useMediaQuery.js.map +1 -1
  25. package/dist/cjs/components/hooks/useResponsiveColor.js +1 -1
  26. package/dist/cjs/components/hooks/useResponsiveColor.js.map +1 -1
  27. package/dist/cjs/components/shared/Link/index.js +2 -2
  28. package/dist/cjs/components/shared/Link/index.js.map +1 -1
  29. package/dist/cjs/components/utils/responsive-style.js +9 -9
  30. package/dist/cjs/components/utils/responsive-style.js.map +1 -1
  31. package/dist/cjs/components/utils/types.js.map +1 -1
  32. package/dist/cjs/controls/control.js +14 -78
  33. package/dist/cjs/controls/control.js.map +1 -1
  34. package/dist/cjs/controls/index.js +99 -21
  35. package/dist/cjs/controls/index.js.map +1 -1
  36. package/dist/cjs/controls/{image.js → link.js} +20 -11
  37. package/dist/cjs/controls/link.js.map +1 -0
  38. package/dist/cjs/controls/rich-text/control.js +97 -0
  39. package/dist/cjs/controls/rich-text/control.js.map +1 -0
  40. package/dist/cjs/controls/rich-text/index.js +1 -7
  41. package/dist/cjs/controls/rich-text/index.js.map +1 -1
  42. package/dist/cjs/controls/rich-text/rich-text.js +16 -69
  43. package/dist/cjs/controls/rich-text/rich-text.js.map +1 -1
  44. package/dist/cjs/controls/rich-text-v2/control.js +138 -0
  45. package/dist/cjs/controls/rich-text-v2/control.js.map +1 -0
  46. package/dist/cjs/controls/rich-text-v2/index.js +1 -5
  47. package/dist/cjs/controls/rich-text-v2/index.js.map +1 -1
  48. package/dist/cjs/controls/rich-text-v2/plugin.js +3 -3
  49. package/dist/cjs/controls/rich-text-v2/plugin.js.map +1 -1
  50. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js +105 -121
  51. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  52. package/dist/cjs/controls/rich-text-v2/translation.js +35 -48
  53. package/dist/cjs/controls/rich-text-v2/translation.js.map +1 -1
  54. package/dist/cjs/controls/slot.js +13 -59
  55. package/dist/cjs/controls/slot.js.map +1 -1
  56. package/dist/cjs/controls/{rich-text/fixtures → style-v2}/index.js +4 -8
  57. package/dist/cjs/controls/style-v2/index.js.map +1 -0
  58. package/dist/cjs/controls/style-v2/style-v2.js +50 -0
  59. package/dist/cjs/controls/style-v2/style-v2.js.map +1 -0
  60. package/dist/cjs/{controls/select.js → core/index.js} +11 -12
  61. package/dist/cjs/core/index.js.map +1 -0
  62. package/dist/cjs/jest-setup.js +3 -0
  63. package/dist/cjs/jest-setup.js.map +1 -1
  64. package/dist/cjs/next/api-handler/handlers/manifest.js +1 -1
  65. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js +18 -5
  66. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  67. package/dist/cjs/prop-controllers/copy.js +20 -18
  68. package/dist/cjs/prop-controllers/copy.js.map +1 -1
  69. package/dist/cjs/prop-controllers/deleted.js.map +1 -1
  70. package/dist/cjs/prop-controllers/descriptors.js +6 -6
  71. package/dist/cjs/prop-controllers/descriptors.js.map +1 -1
  72. package/dist/cjs/prop-controllers/index.js +0 -2
  73. package/dist/cjs/prop-controllers/index.js.map +1 -1
  74. package/dist/cjs/prop-controllers/instances.js +12 -90
  75. package/dist/cjs/prop-controllers/instances.js.map +1 -1
  76. package/dist/cjs/prop-controllers/introspection.js +26 -97
  77. package/dist/cjs/prop-controllers/introspection.js.map +1 -1
  78. package/dist/cjs/runtimes/react/components/Element.js.map +1 -1
  79. package/dist/cjs/runtimes/react/controls/checkbox.js +1 -4
  80. package/dist/cjs/runtimes/react/controls/checkbox.js.map +1 -1
  81. package/dist/cjs/runtimes/react/controls/color.js.map +1 -1
  82. package/dist/cjs/runtimes/react/controls/combobox.js.map +1 -1
  83. package/dist/cjs/runtimes/react/controls/control.js +48 -39
  84. package/dist/cjs/runtimes/react/controls/control.js.map +1 -1
  85. package/dist/cjs/runtimes/react/controls/icon-radio-group.js.map +1 -1
  86. package/dist/cjs/runtimes/react/controls/image.js +6 -10
  87. package/dist/cjs/runtimes/react/controls/image.js.map +1 -1
  88. package/dist/cjs/runtimes/react/controls/link.js.map +1 -1
  89. package/dist/cjs/runtimes/react/controls/list.js +3 -1
  90. package/dist/cjs/runtimes/react/controls/list.js.map +1 -1
  91. package/dist/cjs/runtimes/react/controls/number.js +1 -4
  92. package/dist/cjs/runtimes/react/controls/number.js.map +1 -1
  93. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js +4 -2
  94. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  95. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +1 -1
  96. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -1
  97. package/dist/cjs/runtimes/react/controls/rich-text/ReadOnlyText.js +2 -7
  98. package/dist/cjs/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -1
  99. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/block.js +14 -14
  100. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/block.js.map +1 -1
  101. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/element.js +7 -23
  102. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/element.js.map +1 -1
  103. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js +1 -1
  104. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -1
  105. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  106. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js +3 -16
  107. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js.map +1 -1
  108. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -1
  109. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -1
  110. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +8 -8
  111. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  112. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js +2 -2
  113. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js.map +1 -1
  114. package/dist/cjs/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js +7 -13
  115. package/dist/cjs/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -1
  116. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -2
  117. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  118. package/dist/cjs/runtimes/react/controls/select.js +1 -1
  119. package/dist/cjs/runtimes/react/controls/select.js.map +1 -1
  120. package/dist/cjs/runtimes/react/controls/shape.js +2 -7
  121. package/dist/cjs/runtimes/react/controls/shape.js.map +1 -1
  122. package/dist/cjs/runtimes/react/controls/slot.js +13 -5
  123. package/dist/cjs/runtimes/react/controls/slot.js.map +1 -1
  124. package/dist/cjs/runtimes/react/controls/style-v2.js +6 -11
  125. package/dist/cjs/runtimes/react/controls/style-v2.js.map +1 -1
  126. package/dist/cjs/runtimes/react/controls/style.js +8 -8
  127. package/dist/cjs/runtimes/react/controls/style.js.map +1 -1
  128. package/dist/cjs/runtimes/react/controls/text-area.js +1 -4
  129. package/dist/cjs/runtimes/react/controls/text-area.js.map +1 -1
  130. package/dist/cjs/runtimes/react/controls/text-input.js +1 -4
  131. package/dist/cjs/runtimes/react/controls/text-input.js.map +1 -1
  132. package/dist/cjs/runtimes/react/controls/typography.js.map +1 -1
  133. package/dist/cjs/runtimes/react/controls.js +79 -73
  134. package/dist/cjs/runtimes/react/controls.js.map +1 -1
  135. package/dist/cjs/runtimes/react/hooks/use-store.js +2 -2
  136. package/dist/cjs/runtimes/react/hooks/use-store.js.map +1 -1
  137. package/dist/cjs/runtimes/react/poll-box-model.js +1 -1
  138. package/dist/cjs/runtimes/react/poll-box-model.js.map +1 -1
  139. package/dist/cjs/runtimes/react/react-runtime.js +3 -32
  140. package/dist/cjs/runtimes/react/react-runtime.js.map +1 -1
  141. package/dist/cjs/runtimes/react/runtime-core.js +67 -0
  142. package/dist/cjs/runtimes/react/runtime-core.js.map +1 -0
  143. package/dist/cjs/slate/BlockPlugin/clearBlockKeyForDevice.js +2 -2
  144. package/dist/cjs/slate/BlockPlugin/clearBlockKeyForDevice.js.map +1 -1
  145. package/dist/cjs/slate/BlockPlugin/indent.js +3 -2
  146. package/dist/cjs/slate/BlockPlugin/indent.js.map +1 -1
  147. package/dist/cjs/slate/BlockPlugin/index.js +17 -15
  148. package/dist/cjs/slate/BlockPlugin/index.js.map +1 -1
  149. package/dist/cjs/slate/BlockPlugin/setBlockKeyForDevice.js +2 -2
  150. package/dist/cjs/slate/BlockPlugin/setBlockKeyForDevice.js.map +1 -1
  151. package/dist/cjs/slate/BlockPlugin/toggleList.js +2 -2
  152. package/dist/cjs/slate/BlockPlugin/toggleList.js.map +1 -1
  153. package/dist/cjs/slate/BlockPlugin/types.js.map +1 -1
  154. package/dist/cjs/slate/BlockPlugin/unwrapInline.js +2 -2
  155. package/dist/cjs/slate/BlockPlugin/unwrapInline.js.map +1 -1
  156. package/dist/cjs/slate/BlockPlugin/unwrapList.js +3 -4
  157. package/dist/cjs/slate/BlockPlugin/unwrapList.js.map +1 -1
  158. package/dist/cjs/slate/BlockPlugin/utils/getSelectedListItems.js +2 -2
  159. package/dist/cjs/slate/BlockPlugin/utils/getSelectedListItems.js.map +1 -1
  160. package/dist/cjs/slate/BlockPlugin/wrapInline.js.map +1 -1
  161. package/dist/cjs/slate/BlockPlugin/wrapList.js +4 -3
  162. package/dist/cjs/slate/BlockPlugin/wrapList.js.map +1 -1
  163. package/dist/cjs/slate/BuilderPlugin/index.js +3 -3
  164. package/dist/cjs/slate/BuilderPlugin/index.js.map +1 -1
  165. package/dist/cjs/slate/InlineModePlugin/index.js +4 -5
  166. package/dist/cjs/slate/InlineModePlugin/index.js.map +1 -1
  167. package/dist/cjs/slate/InlinePlugin/getValue.js +4 -4
  168. package/dist/cjs/slate/InlinePlugin/getValue.js.map +1 -1
  169. package/dist/cjs/slate/InlinePlugin/index.js +10 -14
  170. package/dist/cjs/slate/InlinePlugin/index.js.map +1 -1
  171. package/dist/cjs/slate/InlinePlugin/onChange.js +3 -3
  172. package/dist/cjs/slate/InlinePlugin/onChange.js.map +1 -1
  173. package/dist/cjs/slate/InlinePlugin/types.js +9 -6
  174. package/dist/cjs/slate/InlinePlugin/types.js.map +1 -1
  175. package/dist/cjs/slate/LinkPlugin/getValue.js +4 -5
  176. package/dist/cjs/slate/LinkPlugin/getValue.js.map +1 -1
  177. package/dist/cjs/slate/LinkPlugin/index.js +8 -10
  178. package/dist/cjs/slate/LinkPlugin/index.js.map +1 -1
  179. package/dist/cjs/slate/LinkPlugin/onChange.js +6 -6
  180. package/dist/cjs/slate/LinkPlugin/onChange.js.map +1 -1
  181. package/dist/cjs/slate/LinkPlugin/types.js +3 -8
  182. package/dist/cjs/slate/LinkPlugin/types.js.map +1 -1
  183. package/dist/cjs/slate/TextAlignPlugin/getValue.js +2 -2
  184. package/dist/cjs/slate/TextAlignPlugin/getValue.js.map +1 -1
  185. package/dist/cjs/slate/TextAlignPlugin/index.js +12 -12
  186. package/dist/cjs/slate/TextAlignPlugin/index.js.map +1 -1
  187. package/dist/cjs/slate/TypographyPlugin/clearActiveTypographyStyle.js.map +1 -1
  188. package/dist/cjs/slate/TypographyPlugin/clearDeviceActiveTypography.js.map +1 -1
  189. package/dist/cjs/slate/TypographyPlugin/detachActiveTypography.js.map +1 -1
  190. package/dist/cjs/slate/TypographyPlugin/getValue.js.map +1 -1
  191. package/dist/cjs/slate/TypographyPlugin/index.js +4 -4
  192. package/dist/cjs/slate/TypographyPlugin/index.js.map +1 -1
  193. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyDown.js.map +1 -1
  194. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyUp.js +6 -3
  195. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyUp.js.map +1 -1
  196. package/dist/cjs/slate/TypographyPlugin/setActiveTypographyStyle.js.map +1 -1
  197. package/dist/cjs/slate/index.js +8 -8
  198. package/dist/cjs/slate/index.js.map +1 -1
  199. package/dist/cjs/slate/selectors.js +15 -12
  200. package/dist/cjs/slate/selectors.js.map +1 -1
  201. package/dist/cjs/slate/types.js +5 -36
  202. package/dist/cjs/slate/types.js.map +1 -1
  203. package/dist/cjs/slate/utils/editor.js +3 -3
  204. package/dist/cjs/slate/utils/editor.js.map +1 -1
  205. package/dist/cjs/slate/utils/element.js +5 -27
  206. package/dist/cjs/slate/utils/element.js.map +1 -1
  207. package/dist/cjs/slate/utils/responsive.js.map +1 -1
  208. package/dist/cjs/slate/utils/toText.js +16 -52
  209. package/dist/cjs/slate/utils/toText.js.map +1 -1
  210. package/dist/cjs/state/actions.js.map +1 -1
  211. package/dist/cjs/state/modules/box-models.js.map +1 -1
  212. package/dist/cjs/state/modules/breakpoints.js +1 -1
  213. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  214. package/dist/cjs/state/modules/prop-controller-handles.js.map +1 -1
  215. package/dist/cjs/state/modules/read-only-documents.js +2 -4
  216. package/dist/cjs/state/modules/read-only-documents.js.map +1 -1
  217. package/dist/cjs/state/react-builder-preview.js +10 -7
  218. package/dist/cjs/state/react-builder-preview.js.map +1 -1
  219. package/dist/cjs/state/react-page.js +10 -41
  220. package/dist/cjs/state/react-page.js.map +1 -1
  221. package/dist/esm/api/graphql/generated/types.js.map +1 -1
  222. package/dist/esm/api/react.js.map +1 -1
  223. package/dist/esm/builder/rich-text/index.js +5 -0
  224. package/dist/esm/builder/rich-text/index.js.map +1 -0
  225. package/dist/esm/builder/serialization/control-serialization.js +66 -37
  226. package/dist/esm/builder/serialization/control-serialization.js.map +1 -1
  227. package/dist/esm/components/builtin/Button/Button.js.map +1 -1
  228. package/dist/esm/components/builtin/Carousel/Carousel.js +1 -1
  229. package/dist/esm/components/builtin/Carousel/Carousel.js.map +1 -1
  230. package/dist/esm/components/builtin/Countdown/Countdown.js.map +1 -1
  231. package/dist/esm/components/builtin/Divider/Divider.js.map +1 -1
  232. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  233. package/dist/esm/components/builtin/Form/context/FormContext.js.map +1 -1
  234. package/dist/esm/components/builtin/Image/Image.js +1 -1
  235. package/dist/esm/components/builtin/Image/Image.js.map +1 -1
  236. package/dist/esm/components/builtin/Navigation/Navigation.js.map +1 -1
  237. package/dist/esm/components/builtin/Navigation/components/MobileMenu/index.js.map +1 -1
  238. package/dist/esm/components/builtin/SocialLinks/SocialLinks.js.map +1 -1
  239. package/dist/esm/components/builtin/Text/register.js.map +1 -1
  240. package/dist/esm/components/builtin/register.js.map +1 -1
  241. package/dist/esm/components/hooks/useMediaQuery.js +1 -1
  242. package/dist/esm/components/hooks/useMediaQuery.js.map +1 -1
  243. package/dist/esm/components/hooks/useResponsiveColor.js +3 -1
  244. package/dist/esm/components/hooks/useResponsiveColor.js.map +1 -1
  245. package/dist/esm/components/shared/Link/index.js +1 -1
  246. package/dist/esm/components/shared/Link/index.js.map +1 -1
  247. package/dist/esm/components/utils/responsive-style.js +1 -1
  248. package/dist/esm/components/utils/responsive-style.js.map +1 -1
  249. package/dist/esm/controls/control.js +14 -109
  250. package/dist/esm/controls/control.js.map +1 -1
  251. package/dist/esm/controls/index.js +82 -10
  252. package/dist/esm/controls/index.js.map +1 -1
  253. package/dist/esm/controls/link.js +18 -0
  254. package/dist/esm/controls/link.js.map +1 -0
  255. package/dist/esm/controls/rich-text/control.js +76 -0
  256. package/dist/esm/controls/rich-text/control.js.map +1 -0
  257. package/dist/esm/controls/rich-text/index.js +0 -3
  258. package/dist/esm/controls/rich-text/index.js.map +1 -1
  259. package/dist/esm/controls/rich-text/rich-text.js +14 -66
  260. package/dist/esm/controls/rich-text/rich-text.js.map +1 -1
  261. package/dist/esm/controls/rich-text-v2/control.js +117 -0
  262. package/dist/esm/controls/rich-text-v2/control.js.map +1 -0
  263. package/dist/esm/controls/rich-text-v2/index.js +0 -2
  264. package/dist/esm/controls/rich-text-v2/index.js.map +1 -1
  265. package/dist/esm/controls/rich-text-v2/plugin.js +2 -2
  266. package/dist/esm/controls/rich-text-v2/plugin.js.map +1 -1
  267. package/dist/esm/controls/rich-text-v2/rich-text-v2.js +111 -116
  268. package/dist/esm/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  269. package/dist/esm/controls/rich-text-v2/translation.js +33 -46
  270. package/dist/esm/controls/rich-text-v2/translation.js.map +1 -1
  271. package/dist/esm/controls/slot.js +13 -54
  272. package/dist/esm/controls/slot.js.map +1 -1
  273. package/dist/esm/controls/style-v2/index.js +2 -0
  274. package/dist/esm/controls/style-v2/index.js.map +1 -0
  275. package/dist/esm/controls/style-v2/style-v2.js +28 -0
  276. package/dist/esm/controls/style-v2/style-v2.js.map +1 -0
  277. package/dist/esm/core/index.js +11 -0
  278. package/dist/esm/core/index.js.map +1 -0
  279. package/dist/esm/jest-setup.js +3 -0
  280. package/dist/esm/jest-setup.js.map +1 -1
  281. package/dist/esm/next/api-handler/handlers/manifest.js +1 -1
  282. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +19 -6
  283. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  284. package/dist/esm/prop-controllers/copy.js +7 -5
  285. package/dist/esm/prop-controllers/copy.js.map +1 -1
  286. package/dist/esm/prop-controllers/deleted.js.map +1 -1
  287. package/dist/esm/prop-controllers/descriptors.js +7 -5
  288. package/dist/esm/prop-controllers/descriptors.js.map +1 -1
  289. package/dist/esm/prop-controllers/index.js +1 -2
  290. package/dist/esm/prop-controllers/index.js.map +1 -1
  291. package/dist/esm/prop-controllers/instances.js +15 -107
  292. package/dist/esm/prop-controllers/instances.js.map +1 -1
  293. package/dist/esm/prop-controllers/introspection.js +28 -131
  294. package/dist/esm/prop-controllers/introspection.js.map +1 -1
  295. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  296. package/dist/esm/runtimes/react/controls/checkbox.js +1 -7
  297. package/dist/esm/runtimes/react/controls/checkbox.js.map +1 -1
  298. package/dist/esm/runtimes/react/controls/color.js.map +1 -1
  299. package/dist/esm/runtimes/react/controls/combobox.js.map +1 -1
  300. package/dist/esm/runtimes/react/controls/control.js +66 -58
  301. package/dist/esm/runtimes/react/controls/control.js.map +1 -1
  302. package/dist/esm/runtimes/react/controls/icon-radio-group.js.map +1 -1
  303. package/dist/esm/runtimes/react/controls/image.js +6 -12
  304. package/dist/esm/runtimes/react/controls/image.js.map +1 -1
  305. package/dist/esm/runtimes/react/controls/link.js.map +1 -1
  306. package/dist/esm/runtimes/react/controls/list.js +3 -1
  307. package/dist/esm/runtimes/react/controls/list.js.map +1 -1
  308. package/dist/esm/runtimes/react/controls/number.js +1 -7
  309. package/dist/esm/runtimes/react/controls/number.js.map +1 -1
  310. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js +7 -11
  311. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  312. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +1 -1
  313. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -1
  314. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js +2 -7
  315. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -1
  316. package/dist/esm/runtimes/react/controls/rich-text/components/Element/block.js +1 -1
  317. package/dist/esm/runtimes/react/controls/rich-text/components/Element/block.js.map +1 -1
  318. package/dist/esm/runtimes/react/controls/rich-text/components/Element/element.js +7 -23
  319. package/dist/esm/runtimes/react/controls/rich-text/components/Element/element.js.map +1 -1
  320. package/dist/esm/runtimes/react/controls/rich-text/components/Element/inline.js +1 -1
  321. package/dist/esm/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -1
  322. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  323. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js +5 -27
  324. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js.map +1 -1
  325. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -1
  326. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -1
  327. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +7 -7
  328. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  329. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js +2 -2
  330. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js.map +1 -1
  331. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js +9 -25
  332. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -1
  333. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -4
  334. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  335. package/dist/esm/runtimes/react/controls/select.js +1 -1
  336. package/dist/esm/runtimes/react/controls/select.js.map +1 -1
  337. package/dist/esm/runtimes/react/controls/shape.js +2 -7
  338. package/dist/esm/runtimes/react/controls/shape.js.map +1 -1
  339. package/dist/esm/runtimes/react/controls/slot.js +14 -6
  340. package/dist/esm/runtimes/react/controls/slot.js.map +1 -1
  341. package/dist/esm/runtimes/react/controls/style-v2.js +6 -11
  342. package/dist/esm/runtimes/react/controls/style-v2.js.map +1 -1
  343. package/dist/esm/runtimes/react/controls/style.js +10 -10
  344. package/dist/esm/runtimes/react/controls/style.js.map +1 -1
  345. package/dist/esm/runtimes/react/controls/text-area.js +1 -7
  346. package/dist/esm/runtimes/react/controls/text-area.js.map +1 -1
  347. package/dist/esm/runtimes/react/controls/text-input.js +1 -7
  348. package/dist/esm/runtimes/react/controls/text-input.js.map +1 -1
  349. package/dist/esm/runtimes/react/controls/typography.js.map +1 -1
  350. package/dist/esm/runtimes/react/controls.js +96 -91
  351. package/dist/esm/runtimes/react/controls.js.map +1 -1
  352. package/dist/esm/runtimes/react/hooks/use-store.js +2 -2
  353. package/dist/esm/runtimes/react/hooks/use-store.js.map +1 -1
  354. package/dist/esm/runtimes/react/poll-box-model.js +1 -1
  355. package/dist/esm/runtimes/react/poll-box-model.js.map +1 -1
  356. package/dist/esm/runtimes/react/react-runtime.js +3 -40
  357. package/dist/esm/runtimes/react/react-runtime.js.map +1 -1
  358. package/dist/esm/runtimes/react/runtime-core.js +51 -0
  359. package/dist/esm/runtimes/react/runtime-core.js.map +1 -0
  360. package/dist/esm/slate/BlockPlugin/clearBlockKeyForDevice.js +2 -2
  361. package/dist/esm/slate/BlockPlugin/clearBlockKeyForDevice.js.map +1 -1
  362. package/dist/esm/slate/BlockPlugin/indent.js +3 -2
  363. package/dist/esm/slate/BlockPlugin/indent.js.map +1 -1
  364. package/dist/esm/slate/BlockPlugin/index.js +17 -15
  365. package/dist/esm/slate/BlockPlugin/index.js.map +1 -1
  366. package/dist/esm/slate/BlockPlugin/setBlockKeyForDevice.js +2 -2
  367. package/dist/esm/slate/BlockPlugin/setBlockKeyForDevice.js.map +1 -1
  368. package/dist/esm/slate/BlockPlugin/toggleList.js +2 -2
  369. package/dist/esm/slate/BlockPlugin/toggleList.js.map +1 -1
  370. package/dist/esm/slate/BlockPlugin/unwrapInline.js +2 -2
  371. package/dist/esm/slate/BlockPlugin/unwrapInline.js.map +1 -1
  372. package/dist/esm/slate/BlockPlugin/unwrapList.js +3 -4
  373. package/dist/esm/slate/BlockPlugin/unwrapList.js.map +1 -1
  374. package/dist/esm/slate/BlockPlugin/utils/getSelectedListItems.js +2 -2
  375. package/dist/esm/slate/BlockPlugin/utils/getSelectedListItems.js.map +1 -1
  376. package/dist/esm/slate/BlockPlugin/wrapInline.js.map +1 -1
  377. package/dist/esm/slate/BlockPlugin/wrapList.js +4 -3
  378. package/dist/esm/slate/BlockPlugin/wrapList.js.map +1 -1
  379. package/dist/esm/slate/BuilderPlugin/index.js +3 -3
  380. package/dist/esm/slate/BuilderPlugin/index.js.map +1 -1
  381. package/dist/esm/slate/InlineModePlugin/index.js +5 -6
  382. package/dist/esm/slate/InlineModePlugin/index.js.map +1 -1
  383. package/dist/esm/slate/InlinePlugin/getValue.js +4 -4
  384. package/dist/esm/slate/InlinePlugin/getValue.js.map +1 -1
  385. package/dist/esm/slate/InlinePlugin/index.js +9 -13
  386. package/dist/esm/slate/InlinePlugin/index.js.map +1 -1
  387. package/dist/esm/slate/InlinePlugin/onChange.js +3 -3
  388. package/dist/esm/slate/InlinePlugin/onChange.js.map +1 -1
  389. package/dist/esm/slate/InlinePlugin/types.js +9 -7
  390. package/dist/esm/slate/InlinePlugin/types.js.map +1 -1
  391. package/dist/esm/slate/LinkPlugin/getValue.js +4 -5
  392. package/dist/esm/slate/LinkPlugin/getValue.js.map +1 -1
  393. package/dist/esm/slate/LinkPlugin/index.js +8 -10
  394. package/dist/esm/slate/LinkPlugin/index.js.map +1 -1
  395. package/dist/esm/slate/LinkPlugin/onChange.js +4 -4
  396. package/dist/esm/slate/LinkPlugin/onChange.js.map +1 -1
  397. package/dist/esm/slate/LinkPlugin/types.js +3 -7
  398. package/dist/esm/slate/LinkPlugin/types.js.map +1 -1
  399. package/dist/esm/slate/TextAlignPlugin/getValue.js +2 -2
  400. package/dist/esm/slate/TextAlignPlugin/getValue.js.map +1 -1
  401. package/dist/esm/slate/TextAlignPlugin/index.js +12 -16
  402. package/dist/esm/slate/TextAlignPlugin/index.js.map +1 -1
  403. package/dist/esm/slate/TypographyPlugin/clearActiveTypographyStyle.js.map +1 -1
  404. package/dist/esm/slate/TypographyPlugin/clearDeviceActiveTypography.js.map +1 -1
  405. package/dist/esm/slate/TypographyPlugin/detachActiveTypography.js.map +1 -1
  406. package/dist/esm/slate/TypographyPlugin/getValue.js.map +1 -1
  407. package/dist/esm/slate/TypographyPlugin/index.js +5 -5
  408. package/dist/esm/slate/TypographyPlugin/index.js.map +1 -1
  409. package/dist/esm/slate/TypographyPlugin/normalizeTypographyDown.js.map +1 -1
  410. package/dist/esm/slate/TypographyPlugin/normalizeTypographyUp.js +6 -3
  411. package/dist/esm/slate/TypographyPlugin/normalizeTypographyUp.js.map +1 -1
  412. package/dist/esm/slate/TypographyPlugin/setActiveTypographyStyle.js.map +1 -1
  413. package/dist/esm/slate/index.js +4 -4
  414. package/dist/esm/slate/index.js.map +1 -1
  415. package/dist/esm/slate/selectors.js +15 -12
  416. package/dist/esm/slate/selectors.js.map +1 -1
  417. package/dist/esm/slate/types.js +4 -33
  418. package/dist/esm/slate/types.js.map +1 -1
  419. package/dist/esm/slate/utils/editor.js +3 -3
  420. package/dist/esm/slate/utils/editor.js.map +1 -1
  421. package/dist/esm/slate/utils/element.js +5 -30
  422. package/dist/esm/slate/utils/element.js.map +1 -1
  423. package/dist/esm/slate/utils/responsive.js.map +1 -1
  424. package/dist/esm/slate/utils/toText.js +16 -52
  425. package/dist/esm/slate/utils/toText.js.map +1 -1
  426. package/dist/esm/state/actions.js.map +1 -1
  427. package/dist/esm/state/modules/box-models.js.map +1 -1
  428. package/dist/esm/state/modules/breakpoints.js +1 -1
  429. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  430. package/dist/esm/state/modules/prop-controller-handles.js.map +1 -1
  431. package/dist/esm/state/modules/read-only-documents.js +3 -3
  432. package/dist/esm/state/modules/read-only-documents.js.map +1 -1
  433. package/dist/esm/state/react-builder-preview.js +10 -7
  434. package/dist/esm/state/react-builder-preview.js.map +1 -1
  435. package/dist/esm/state/react-page.js +13 -41
  436. package/dist/esm/state/react-page.js.map +1 -1
  437. package/dist/types/api/graphql/generated/types.d.ts +1 -1
  438. package/dist/types/api/graphql/generated/types.d.ts.map +1 -1
  439. package/dist/types/api/react.d.ts +1 -1
  440. package/dist/types/builder/rich-text/index.d.ts +3 -0
  441. package/dist/types/builder/rich-text/index.d.ts.map +1 -0
  442. package/dist/types/builder/serialization/control-serialization.d.ts +12 -7
  443. package/dist/types/builder/serialization/control-serialization.d.ts.map +1 -1
  444. package/dist/types/components/builtin/Box/Box.d.ts +23 -1
  445. package/dist/types/components/builtin/Box/Box.d.ts.map +1 -1
  446. package/dist/types/components/builtin/Button/Button.d.ts +3 -3
  447. package/dist/types/components/builtin/Button/Button.d.ts.map +1 -1
  448. package/dist/types/components/builtin/Carousel/Carousel.d.ts +1 -1
  449. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  450. package/dist/types/components/builtin/Countdown/Countdown.d.ts +1 -1
  451. package/dist/types/components/builtin/Countdown/Countdown.d.ts.map +1 -1
  452. package/dist/types/components/builtin/Divider/Divider.d.ts +1 -1
  453. package/dist/types/components/builtin/Divider/Divider.d.ts.map +1 -1
  454. package/dist/types/components/builtin/Form/Form.d.ts +1 -1
  455. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  456. package/dist/types/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +1 -1
  457. package/dist/types/components/builtin/Form/context/FormContext.d.ts +7 -8
  458. package/dist/types/components/builtin/Form/context/FormContext.d.ts.map +1 -1
  459. package/dist/types/components/builtin/Navigation/Navigation.d.ts +1 -1
  460. package/dist/types/components/builtin/Navigation/Navigation.d.ts.map +1 -1
  461. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts +2 -2
  462. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts.map +1 -1
  463. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts +1 -1
  464. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts.map +1 -1
  465. package/dist/types/components/builtin/Text/register.d.ts +1 -1
  466. package/dist/types/components/builtin/Text/register.d.ts.map +1 -1
  467. package/dist/types/components/builtin/register.d.ts +1 -1
  468. package/dist/types/components/builtin/register.d.ts.map +1 -1
  469. package/dist/types/components/hooks/useResponsiveColor.d.ts +1 -2
  470. package/dist/types/components/hooks/useResponsiveColor.d.ts.map +1 -1
  471. package/dist/types/components/utils/responsive-style.d.ts +2 -1
  472. package/dist/types/components/utils/responsive-style.d.ts.map +1 -1
  473. package/dist/types/components/utils/types.d.ts +2 -0
  474. package/dist/types/components/utils/types.d.ts.map +1 -1
  475. package/dist/types/controls/__tests__/fixtures/shape.d.ts +19 -8
  476. package/dist/types/controls/__tests__/fixtures/shape.d.ts.map +1 -1
  477. package/dist/types/controls/control.d.ts +28 -17
  478. package/dist/types/controls/control.d.ts.map +1 -1
  479. package/dist/types/controls/index.d.ts +6 -10
  480. package/dist/types/controls/index.d.ts.map +1 -1
  481. package/dist/types/controls/link.d.ts +9 -0
  482. package/dist/types/controls/link.d.ts.map +1 -0
  483. package/dist/types/controls/rich-text/control.d.ts +57 -0
  484. package/dist/types/controls/rich-text/control.d.ts.map +1 -0
  485. package/dist/types/controls/rich-text/index.d.ts +0 -3
  486. package/dist/types/controls/rich-text/index.d.ts.map +1 -1
  487. package/dist/types/controls/rich-text/rich-text.d.ts +9 -61
  488. package/dist/types/controls/rich-text/rich-text.d.ts.map +1 -1
  489. package/dist/types/controls/rich-text-v2/__tests__/fixtures/nested-paragraph-edge-case-3728.d.ts +3 -2
  490. package/dist/types/controls/rich-text-v2/__tests__/fixtures/nested-paragraph-edge-case-3728.d.ts.map +1 -1
  491. package/dist/types/controls/rich-text-v2/__tests__/fixtures/rearranged.d.ts +4 -3
  492. package/dist/types/controls/rich-text-v2/__tests__/fixtures/rearranged.d.ts.map +1 -1
  493. package/dist/types/controls/rich-text-v2/__tests__/fixtures/simple.d.ts +4 -3
  494. package/dist/types/controls/rich-text-v2/__tests__/fixtures/simple.d.ts.map +1 -1
  495. package/dist/types/controls/rich-text-v2/__tests__/serialization.test.d.ts +2 -0
  496. package/dist/types/controls/rich-text-v2/__tests__/serialization.test.d.ts.map +1 -0
  497. package/dist/types/controls/rich-text-v2/control.d.ts +102 -0
  498. package/dist/types/controls/rich-text-v2/control.d.ts.map +1 -0
  499. package/dist/types/controls/rich-text-v2/index.d.ts +0 -2
  500. package/dist/types/controls/rich-text-v2/index.d.ts.map +1 -1
  501. package/dist/types/controls/rich-text-v2/plugin.d.ts +9 -17
  502. package/dist/types/controls/rich-text-v2/plugin.d.ts.map +1 -1
  503. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts +863 -103
  504. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  505. package/dist/types/controls/rich-text-v2/translation.d.ts +5 -4
  506. package/dist/types/controls/rich-text-v2/translation.d.ts.map +1 -1
  507. package/dist/types/controls/slot.d.ts +8 -54
  508. package/dist/types/controls/slot.d.ts.map +1 -1
  509. package/dist/types/controls/style-v2/index.d.ts +2 -0
  510. package/dist/types/controls/style-v2/index.d.ts.map +1 -0
  511. package/dist/types/controls/style-v2/style-v2.d.ts +10 -0
  512. package/dist/types/controls/style-v2/style-v2.d.ts.map +1 -0
  513. package/dist/types/controls/style-v2/style-v2.test.d.ts +2 -0
  514. package/dist/types/controls/style-v2/style-v2.test.d.ts.map +1 -0
  515. package/dist/types/core/index.d.ts +2 -0
  516. package/dist/types/core/index.d.ts.map +1 -0
  517. package/dist/types/locale.d.ts +1 -1
  518. package/dist/types/next/client.d.ts +16 -16
  519. package/dist/types/next/components/tests/controls/combobox-control.test.d.ts +2 -0
  520. package/dist/types/next/components/tests/controls/combobox-control.test.d.ts.map +1 -0
  521. package/dist/types/next/components/tests/controls/icon-radio-group-control.test.d.ts +2 -0
  522. package/dist/types/next/components/tests/controls/icon-radio-group-control.test.d.ts.map +1 -0
  523. package/dist/types/next/components/tests/controls/image-control.test.d.ts +3 -0
  524. package/dist/types/next/components/tests/controls/image-control.test.d.ts.map +1 -0
  525. package/dist/types/next/components/tests/controls/link-control.test.d.ts +2 -0
  526. package/dist/types/next/components/tests/controls/link-control.test.d.ts.map +1 -0
  527. package/dist/types/next/components/tests/controls/list-control.test.d.ts +2 -0
  528. package/dist/types/next/components/tests/controls/list-control.test.d.ts.map +1 -0
  529. package/dist/types/next/components/tests/controls/number-control.test.d.ts +2 -0
  530. package/dist/types/next/components/tests/controls/number-control.test.d.ts.map +1 -0
  531. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts +9 -5
  532. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  533. package/dist/types/next/components/tests/controls/select-control.test.d.ts +2 -0
  534. package/dist/types/next/components/tests/controls/select-control.test.d.ts.map +1 -0
  535. package/dist/types/next/components/tests/controls/shape-control.test.d.ts +2 -0
  536. package/dist/types/next/components/tests/controls/shape-control.test.d.ts.map +1 -0
  537. package/dist/types/next/components/tests/controls/slot-control.test.d.ts +2 -0
  538. package/dist/types/next/components/tests/controls/slot-control.test.d.ts.map +1 -0
  539. package/dist/types/next/components/tests/controls/style-control.test.d.ts +2 -0
  540. package/dist/types/next/components/tests/controls/style-control.test.d.ts.map +1 -0
  541. package/dist/types/next/components/tests/controls/text-area-control.test.d.ts +2 -0
  542. package/dist/types/next/components/tests/controls/text-area-control.test.d.ts.map +1 -0
  543. package/dist/types/next/components/tests/controls/text-input-control.test.d.ts +2 -0
  544. package/dist/types/next/components/tests/controls/text-input-control.test.d.ts.map +1 -0
  545. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts +15 -2
  546. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts.map +1 -1
  547. package/dist/types/prop-controllers/copy.d.ts +2 -2
  548. package/dist/types/prop-controllers/copy.d.ts.map +1 -1
  549. package/dist/types/prop-controllers/deleted.d.ts +1 -1
  550. package/dist/types/prop-controllers/deleted.d.ts.map +1 -1
  551. package/dist/types/prop-controllers/descriptors.d.ts +8 -27
  552. package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
  553. package/dist/types/prop-controllers/index.d.ts +3 -3
  554. package/dist/types/prop-controllers/index.d.ts.map +1 -1
  555. package/dist/types/prop-controllers/instances.d.ts +10 -72
  556. package/dist/types/prop-controllers/instances.d.ts.map +1 -1
  557. package/dist/types/prop-controllers/introspection.d.ts +2 -2
  558. package/dist/types/prop-controllers/introspection.d.ts.map +1 -1
  559. package/dist/types/runtimes/react/components/Element.d.ts +2 -2
  560. package/dist/types/runtimes/react/controls/checkbox.d.ts +3 -3
  561. package/dist/types/runtimes/react/controls/checkbox.d.ts.map +1 -1
  562. package/dist/types/runtimes/react/controls/color.d.ts +3 -3
  563. package/dist/types/runtimes/react/controls/color.d.ts.map +1 -1
  564. package/dist/types/runtimes/react/controls/combobox.d.ts +3 -3
  565. package/dist/types/runtimes/react/controls/combobox.d.ts.map +1 -1
  566. package/dist/types/runtimes/react/controls/control.d.ts +7 -28
  567. package/dist/types/runtimes/react/controls/control.d.ts.map +1 -1
  568. package/dist/types/runtimes/react/controls/icon-radio-group.d.ts +3 -3
  569. package/dist/types/runtimes/react/controls/icon-radio-group.d.ts.map +1 -1
  570. package/dist/types/runtimes/react/controls/image.d.ts +3 -12
  571. package/dist/types/runtimes/react/controls/image.d.ts.map +1 -1
  572. package/dist/types/runtimes/react/controls/link.d.ts +3 -10
  573. package/dist/types/runtimes/react/controls/link.d.ts.map +1 -1
  574. package/dist/types/runtimes/react/controls/list.d.ts +7 -9
  575. package/dist/types/runtimes/react/controls/list.d.ts.map +1 -1
  576. package/dist/types/runtimes/react/controls/number.d.ts +3 -3
  577. package/dist/types/runtimes/react/controls/number.d.ts.map +1 -1
  578. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts +1 -1
  579. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts.map +1 -1
  580. package/dist/types/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.d.ts +2 -2
  581. package/dist/types/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.d.ts.map +1 -1
  582. package/dist/types/runtimes/react/controls/rich-text/ReadOnlyText.d.ts +3 -4
  583. package/dist/types/runtimes/react/controls/rich-text/ReadOnlyText.d.ts.map +1 -1
  584. package/dist/types/runtimes/react/controls/rich-text/components/Element/block.d.ts +2 -2
  585. package/dist/types/runtimes/react/controls/rich-text/components/Element/block.d.ts.map +1 -1
  586. package/dist/types/runtimes/react/controls/rich-text/components/Element/element.d.ts +1 -1
  587. package/dist/types/runtimes/react/controls/rich-text/components/Element/element.d.ts.map +1 -1
  588. package/dist/types/runtimes/react/controls/rich-text/components/Element/inline.d.ts +2 -2
  589. package/dist/types/runtimes/react/controls/rich-text/components/Element/inline.d.ts.map +1 -1
  590. package/dist/types/runtimes/react/controls/rich-text/rich-text.d.ts +4 -3
  591. package/dist/types/runtimes/react/controls/rich-text/rich-text.d.ts.map +1 -1
  592. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts +4 -4
  593. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts.map +1 -1
  594. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts +2 -2
  595. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts.map +1 -1
  596. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts +2 -2
  597. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts.map +1 -1
  598. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.d.ts +2 -2
  599. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.d.ts.map +1 -1
  600. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.d.ts +2 -2
  601. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.d.ts.map +1 -1
  602. package/dist/types/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.d.ts +4 -3
  603. package/dist/types/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.d.ts.map +1 -1
  604. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts +4 -3
  605. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  606. package/dist/types/runtimes/react/controls/select.d.ts +3 -3
  607. package/dist/types/runtimes/react/controls/select.d.ts.map +1 -1
  608. package/dist/types/runtimes/react/controls/shape.d.ts +7 -10
  609. package/dist/types/runtimes/react/controls/shape.d.ts.map +1 -1
  610. package/dist/types/runtimes/react/controls/slot.d.ts +3 -4
  611. package/dist/types/runtimes/react/controls/slot.d.ts.map +1 -1
  612. package/dist/types/runtimes/react/controls/style-v2.d.ts +7 -7
  613. package/dist/types/runtimes/react/controls/style-v2.d.ts.map +1 -1
  614. package/dist/types/runtimes/react/controls/style.d.ts +2 -2
  615. package/dist/types/runtimes/react/controls/style.d.ts.map +1 -1
  616. package/dist/types/runtimes/react/controls/text-area.d.ts +3 -3
  617. package/dist/types/runtimes/react/controls/text-area.d.ts.map +1 -1
  618. package/dist/types/runtimes/react/controls/text-input.d.ts +3 -3
  619. package/dist/types/runtimes/react/controls/text-input.d.ts.map +1 -1
  620. package/dist/types/runtimes/react/controls/typography.d.ts +6 -6
  621. package/dist/types/runtimes/react/controls/typography.d.ts.map +1 -1
  622. package/dist/types/runtimes/react/controls.d.ts.map +1 -1
  623. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  624. package/dist/types/runtimes/react/poll-box-model.d.ts +1 -1
  625. package/dist/types/runtimes/react/poll-box-model.d.ts.map +1 -1
  626. package/dist/types/runtimes/react/react-runtime.d.ts +9 -18
  627. package/dist/types/runtimes/react/react-runtime.d.ts.map +1 -1
  628. package/dist/types/runtimes/react/runtime-core.d.ts +19 -0
  629. package/dist/types/runtimes/react/runtime-core.d.ts.map +1 -0
  630. package/dist/types/slate/BlockPlugin/clearBlockKeyForDevice.d.ts.map +1 -1
  631. package/dist/types/slate/BlockPlugin/indent.d.ts.map +1 -1
  632. package/dist/types/slate/BlockPlugin/index.d.ts +19 -41
  633. package/dist/types/slate/BlockPlugin/index.d.ts.map +1 -1
  634. package/dist/types/slate/BlockPlugin/setBlockKeyForDevice.d.ts.map +1 -1
  635. package/dist/types/slate/BlockPlugin/toggleList.d.ts.map +1 -1
  636. package/dist/types/slate/BlockPlugin/types.d.ts +2 -2
  637. package/dist/types/slate/BlockPlugin/types.d.ts.map +1 -1
  638. package/dist/types/slate/BlockPlugin/unwrapInline.d.ts +2 -2
  639. package/dist/types/slate/BlockPlugin/unwrapInline.d.ts.map +1 -1
  640. package/dist/types/slate/BlockPlugin/utils/getSelectedListItems.d.ts +3 -2
  641. package/dist/types/slate/BlockPlugin/utils/getSelectedListItems.d.ts.map +1 -1
  642. package/dist/types/slate/BlockPlugin/wrapInline.d.ts +2 -2
  643. package/dist/types/slate/BlockPlugin/wrapInline.d.ts.map +1 -1
  644. package/dist/types/slate/BlockPlugin/wrapList.d.ts +1 -1
  645. package/dist/types/slate/BlockPlugin/wrapList.d.ts.map +1 -1
  646. package/dist/types/slate/BuilderPlugin/index.d.ts.map +1 -1
  647. package/dist/types/slate/InlineModePlugin/index.d.ts +79 -7
  648. package/dist/types/slate/InlineModePlugin/index.d.ts.map +1 -1
  649. package/dist/types/slate/InlinePlugin/getValue.d.ts.map +1 -1
  650. package/dist/types/slate/InlinePlugin/index.d.ts +22 -11
  651. package/dist/types/slate/InlinePlugin/index.d.ts.map +1 -1
  652. package/dist/types/slate/InlinePlugin/onChange.d.ts.map +1 -1
  653. package/dist/types/slate/InlinePlugin/types.d.ts +18 -6
  654. package/dist/types/slate/InlinePlugin/types.d.ts.map +1 -1
  655. package/dist/types/slate/LinkPlugin/getValue.d.ts +36 -3
  656. package/dist/types/slate/LinkPlugin/getValue.d.ts.map +1 -1
  657. package/dist/types/slate/LinkPlugin/index.d.ts +40 -9
  658. package/dist/types/slate/LinkPlugin/index.d.ts.map +1 -1
  659. package/dist/types/slate/LinkPlugin/onChange.d.ts +4 -3
  660. package/dist/types/slate/LinkPlugin/onChange.d.ts.map +1 -1
  661. package/dist/types/slate/LinkPlugin/types.d.ts +3 -4
  662. package/dist/types/slate/LinkPlugin/types.d.ts.map +1 -1
  663. package/dist/types/slate/TextAlignPlugin/getValue.d.ts +2 -2
  664. package/dist/types/slate/TextAlignPlugin/getValue.d.ts.map +1 -1
  665. package/dist/types/slate/TextAlignPlugin/index.d.ts +21 -6
  666. package/dist/types/slate/TextAlignPlugin/index.d.ts.map +1 -1
  667. package/dist/types/slate/TypographyPlugin/detachActiveTypography.d.ts +1 -1
  668. package/dist/types/slate/TypographyPlugin/detachActiveTypography.d.ts.map +1 -1
  669. package/dist/types/slate/TypographyPlugin/getValue.d.ts +25 -2
  670. package/dist/types/slate/TypographyPlugin/getValue.d.ts.map +1 -1
  671. package/dist/types/slate/TypographyPlugin/index.d.ts +27 -3
  672. package/dist/types/slate/TypographyPlugin/index.d.ts.map +1 -1
  673. package/dist/types/slate/TypographyPlugin/normalizeTypographyDown.d.ts +2 -1
  674. package/dist/types/slate/TypographyPlugin/normalizeTypographyDown.d.ts.map +1 -1
  675. package/dist/types/slate/TypographyPlugin/normalizeTypographyUp.d.ts +1 -1
  676. package/dist/types/slate/TypographyPlugin/normalizeTypographyUp.d.ts.map +1 -1
  677. package/dist/types/slate/TypographyPlugin/setActiveTypographyStyle.d.ts.map +1 -1
  678. package/dist/types/slate/index.d.ts +4 -4
  679. package/dist/types/slate/index.d.ts.map +1 -1
  680. package/dist/types/slate/selectors.d.ts +7 -7
  681. package/dist/types/slate/selectors.d.ts.map +1 -1
  682. package/dist/types/slate/test-helpers/slate-test-helper.d.ts +4 -4
  683. package/dist/types/slate/test-helpers/test-elements.d.ts +61 -5
  684. package/dist/types/slate/test-helpers/test-elements.d.ts.map +1 -1
  685. package/dist/types/slate/types.d.ts +1 -206
  686. package/dist/types/slate/types.d.ts.map +1 -1
  687. package/dist/types/slate/utils/editor.d.ts +4 -4
  688. package/dist/types/slate/utils/editor.d.ts.map +1 -1
  689. package/dist/types/slate/utils/element.d.ts +4 -12
  690. package/dist/types/slate/utils/element.d.ts.map +1 -1
  691. package/dist/types/slate/utils/responsive.d.ts +1 -1
  692. package/dist/types/slate/utils/responsive.d.ts.map +1 -1
  693. package/dist/types/slate/utils/toText.d.ts +3 -3
  694. package/dist/types/slate/utils/toText.d.ts.map +1 -1
  695. package/dist/types/state/actions.d.ts +3 -3
  696. package/dist/types/state/actions.d.ts.map +1 -1
  697. package/dist/types/state/modules/box-models.d.ts +2 -1
  698. package/dist/types/state/modules/box-models.d.ts.map +1 -1
  699. package/dist/types/state/modules/breakpoints.d.ts +2 -4
  700. package/dist/types/state/modules/breakpoints.d.ts.map +1 -1
  701. package/dist/types/state/modules/prop-controller-handles.d.ts +4 -4
  702. package/dist/types/state/modules/prop-controller-handles.d.ts.map +1 -1
  703. package/dist/types/state/modules/read-only-documents.d.ts +2 -15
  704. package/dist/types/state/modules/read-only-documents.d.ts.map +1 -1
  705. package/dist/types/state/react-builder-preview.d.ts.map +1 -1
  706. package/dist/types/state/react-page.d.ts +55 -57
  707. package/dist/types/state/react-page.d.ts.map +1 -1
  708. package/dist/types/utils/tests/element-data-test-test.d.ts +29 -1
  709. package/dist/types/utils/tests/element-data-test-test.d.ts.map +1 -1
  710. package/package.json +16 -4
  711. package/dist/cjs/builder/serialization/controls/combobox.js +0 -45
  712. package/dist/cjs/builder/serialization/controls/combobox.js.map +0 -1
  713. package/dist/cjs/builder/serialization/controls/list.js +0 -50
  714. package/dist/cjs/builder/serialization/controls/list.js.map +0 -1
  715. package/dist/cjs/builder/serialization/controls/rich-text-v2.js +0 -106
  716. package/dist/cjs/builder/serialization/controls/rich-text-v2.js.map +0 -1
  717. package/dist/cjs/builder/serialization/controls/shape.js +0 -54
  718. package/dist/cjs/builder/serialization/controls/shape.js.map +0 -1
  719. package/dist/cjs/builder/serialization/controls/style-v2.js +0 -62
  720. package/dist/cjs/builder/serialization/controls/style-v2.js.map +0 -1
  721. package/dist/cjs/controls/image.js.map +0 -1
  722. package/dist/cjs/controls/list.js +0 -156
  723. package/dist/cjs/controls/list.js.map +0 -1
  724. package/dist/cjs/controls/rich-text/copy.js +0 -121
  725. package/dist/cjs/controls/rich-text/copy.js.map +0 -1
  726. package/dist/cjs/controls/rich-text/dto-types.js +0 -43
  727. package/dist/cjs/controls/rich-text/dto-types.js.map +0 -1
  728. package/dist/cjs/controls/rich-text/dto.js +0 -228
  729. package/dist/cjs/controls/rich-text/dto.js.map +0 -1
  730. package/dist/cjs/controls/rich-text/fixtures/blockquote.js +0 -77
  731. package/dist/cjs/controls/rich-text/fixtures/blockquote.js.map +0 -1
  732. package/dist/cjs/controls/rich-text/fixtures/empty-blocks.js +0 -176
  733. package/dist/cjs/controls/rich-text/fixtures/empty-blocks.js.map +0 -1
  734. package/dist/cjs/controls/rich-text/fixtures/index.js.map +0 -1
  735. package/dist/cjs/controls/rich-text/fixtures/list.js +0 -137
  736. package/dist/cjs/controls/rich-text/fixtures/list.js.map +0 -1
  737. package/dist/cjs/controls/rich-text/fixtures/typography.js +0 -926
  738. package/dist/cjs/controls/rich-text/fixtures/typography.js.map +0 -1
  739. package/dist/cjs/controls/rich-text/fixtures/v2-data-types.js +0 -114
  740. package/dist/cjs/controls/rich-text/fixtures/v2-data-types.js.map +0 -1
  741. package/dist/cjs/controls/rich-text/introspection.js +0 -104
  742. package/dist/cjs/controls/rich-text/introspection.js.map +0 -1
  743. package/dist/cjs/controls/rich-text-v2/copy.js +0 -115
  744. package/dist/cjs/controls/rich-text-v2/copy.js.map +0 -1
  745. package/dist/cjs/controls/rich-text-v2/dto.js +0 -44
  746. package/dist/cjs/controls/rich-text-v2/dto.js.map +0 -1
  747. package/dist/cjs/controls/rich-text-v2/introspection.js +0 -69
  748. package/dist/cjs/controls/rich-text-v2/introspection.js.map +0 -1
  749. package/dist/cjs/controls/select.js.map +0 -1
  750. package/dist/cjs/controls/shape.js +0 -149
  751. package/dist/cjs/controls/shape.js.map +0 -1
  752. package/dist/cjs/controls/style-v2.js +0 -74
  753. package/dist/cjs/controls/style-v2.js.map +0 -1
  754. package/dist/cjs/controls/style.js +0 -125
  755. package/dist/cjs/controls/style.js.map +0 -1
  756. package/dist/cjs/controls/typography.js +0 -47
  757. package/dist/cjs/controls/typography.js.map +0 -1
  758. package/dist/cjs/prop-controllers/base.js.map +0 -1
  759. package/dist/cjs/slate/LinkPlugin/linkPluginWithoutRenderElement.js +0 -48
  760. package/dist/cjs/slate/LinkPlugin/linkPluginWithoutRenderElement.js.map +0 -1
  761. package/dist/cjs/utils/index-signature-hack.js +0 -17
  762. package/dist/cjs/utils/index-signature-hack.js.map +0 -1
  763. package/dist/esm/builder/serialization/controls/combobox.js +0 -20
  764. package/dist/esm/builder/serialization/controls/combobox.js.map +0 -1
  765. package/dist/esm/builder/serialization/controls/list.js +0 -25
  766. package/dist/esm/builder/serialization/controls/list.js.map +0 -1
  767. package/dist/esm/builder/serialization/controls/rich-text-v2.js +0 -81
  768. package/dist/esm/builder/serialization/controls/rich-text-v2.js.map +0 -1
  769. package/dist/esm/builder/serialization/controls/shape.js +0 -32
  770. package/dist/esm/builder/serialization/controls/shape.js.map +0 -1
  771. package/dist/esm/builder/serialization/controls/style-v2.js +0 -37
  772. package/dist/esm/builder/serialization/controls/style-v2.js.map +0 -1
  773. package/dist/esm/controls/image.js +0 -10
  774. package/dist/esm/controls/image.js.map +0 -1
  775. package/dist/esm/controls/list.js +0 -132
  776. package/dist/esm/controls/list.js.map +0 -1
  777. package/dist/esm/controls/rich-text/copy.js +0 -97
  778. package/dist/esm/controls/rich-text/copy.js.map +0 -1
  779. package/dist/esm/controls/rich-text/dto-types.js +0 -19
  780. package/dist/esm/controls/rich-text/dto-types.js.map +0 -1
  781. package/dist/esm/controls/rich-text/dto.js +0 -203
  782. package/dist/esm/controls/rich-text/dto.js.map +0 -1
  783. package/dist/esm/controls/rich-text/fixtures/blockquote.js +0 -53
  784. package/dist/esm/controls/rich-text/fixtures/blockquote.js.map +0 -1
  785. package/dist/esm/controls/rich-text/fixtures/empty-blocks.js +0 -151
  786. package/dist/esm/controls/rich-text/fixtures/empty-blocks.js.map +0 -1
  787. package/dist/esm/controls/rich-text/fixtures/index.js +0 -4
  788. package/dist/esm/controls/rich-text/fixtures/index.js.map +0 -1
  789. package/dist/esm/controls/rich-text/fixtures/list.js +0 -113
  790. package/dist/esm/controls/rich-text/fixtures/list.js.map +0 -1
  791. package/dist/esm/controls/rich-text/fixtures/typography.js +0 -902
  792. package/dist/esm/controls/rich-text/fixtures/typography.js.map +0 -1
  793. package/dist/esm/controls/rich-text/fixtures/v2-data-types.js +0 -90
  794. package/dist/esm/controls/rich-text/fixtures/v2-data-types.js.map +0 -1
  795. package/dist/esm/controls/rich-text/introspection.js +0 -78
  796. package/dist/esm/controls/rich-text/introspection.js.map +0 -1
  797. package/dist/esm/controls/rich-text-v2/copy.js +0 -91
  798. package/dist/esm/controls/rich-text-v2/copy.js.map +0 -1
  799. package/dist/esm/controls/rich-text-v2/dto.js +0 -19
  800. package/dist/esm/controls/rich-text-v2/dto.js.map +0 -1
  801. package/dist/esm/controls/rich-text-v2/introspection.js +0 -43
  802. package/dist/esm/controls/rich-text-v2/introspection.js.map +0 -1
  803. package/dist/esm/controls/select.js +0 -9
  804. package/dist/esm/controls/select.js.map +0 -1
  805. package/dist/esm/controls/shape.js +0 -125
  806. package/dist/esm/controls/shape.js.map +0 -1
  807. package/dist/esm/controls/style-v2.js +0 -48
  808. package/dist/esm/controls/style-v2.js.map +0 -1
  809. package/dist/esm/controls/style.js +0 -95
  810. package/dist/esm/controls/style.js.map +0 -1
  811. package/dist/esm/controls/typography.js +0 -20
  812. package/dist/esm/controls/typography.js.map +0 -1
  813. package/dist/esm/prop-controllers/base.js +0 -10
  814. package/dist/esm/prop-controllers/base.js.map +0 -1
  815. package/dist/esm/slate/LinkPlugin/linkPluginWithoutRenderElement.js +0 -24
  816. package/dist/esm/slate/LinkPlugin/linkPluginWithoutRenderElement.js.map +0 -1
  817. package/dist/esm/utils/index-signature-hack.js +0 -1
  818. package/dist/esm/utils/index-signature-hack.js.map +0 -1
  819. package/dist/types/builder/serialization/controls/combobox.d.ts +0 -5
  820. package/dist/types/builder/serialization/controls/combobox.d.ts.map +0 -1
  821. package/dist/types/builder/serialization/controls/list.d.ts +0 -5
  822. package/dist/types/builder/serialization/controls/list.d.ts.map +0 -1
  823. package/dist/types/builder/serialization/controls/rich-text-v2.d.ts +0 -5
  824. package/dist/types/builder/serialization/controls/rich-text-v2.d.ts.map +0 -1
  825. package/dist/types/builder/serialization/controls/shape.d.ts +0 -5
  826. package/dist/types/builder/serialization/controls/shape.d.ts.map +0 -1
  827. package/dist/types/builder/serialization/controls/style-v2.d.ts +0 -5
  828. package/dist/types/builder/serialization/controls/style-v2.d.ts.map +0 -1
  829. package/dist/types/controls/image.d.ts +0 -4
  830. package/dist/types/controls/image.d.ts.map +0 -1
  831. package/dist/types/controls/image.test.d.ts +0 -2
  832. package/dist/types/controls/image.test.d.ts.map +0 -1
  833. package/dist/types/controls/link.test.d.ts +0 -2
  834. package/dist/types/controls/link.test.d.ts.map +0 -1
  835. package/dist/types/controls/list.d.ts +0 -78
  836. package/dist/types/controls/list.d.ts.map +0 -1
  837. package/dist/types/controls/rich-text/__tests__/copy.test.d.ts +0 -2
  838. package/dist/types/controls/rich-text/__tests__/copy.test.d.ts.map +0 -1
  839. package/dist/types/controls/rich-text/__tests__/dto.test.d.ts +0 -2
  840. package/dist/types/controls/rich-text/__tests__/dto.test.d.ts.map +0 -1
  841. package/dist/types/controls/rich-text/__tests__/introspection.test.d.ts +0 -2
  842. package/dist/types/controls/rich-text/__tests__/introspection.test.d.ts.map +0 -1
  843. package/dist/types/controls/rich-text/copy.d.ts +0 -4
  844. package/dist/types/controls/rich-text/copy.d.ts.map +0 -1
  845. package/dist/types/controls/rich-text/dto-types.d.ts +0 -132
  846. package/dist/types/controls/rich-text/dto-types.d.ts.map +0 -1
  847. package/dist/types/controls/rich-text/dto.d.ts +0 -8
  848. package/dist/types/controls/rich-text/dto.d.ts.map +0 -1
  849. package/dist/types/controls/rich-text/fixtures/blockquote.d.ts +0 -3
  850. package/dist/types/controls/rich-text/fixtures/blockquote.d.ts.map +0 -1
  851. package/dist/types/controls/rich-text/fixtures/empty-blocks.d.ts +0 -4
  852. package/dist/types/controls/rich-text/fixtures/empty-blocks.d.ts.map +0 -1
  853. package/dist/types/controls/rich-text/fixtures/index.d.ts +0 -4
  854. package/dist/types/controls/rich-text/fixtures/index.d.ts.map +0 -1
  855. package/dist/types/controls/rich-text/fixtures/list.d.ts +0 -3
  856. package/dist/types/controls/rich-text/fixtures/list.d.ts.map +0 -1
  857. package/dist/types/controls/rich-text/fixtures/typography.d.ts +0 -3
  858. package/dist/types/controls/rich-text/fixtures/typography.d.ts.map +0 -1
  859. package/dist/types/controls/rich-text/fixtures/v2-data-types.d.ts +0 -3
  860. package/dist/types/controls/rich-text/fixtures/v2-data-types.d.ts.map +0 -1
  861. package/dist/types/controls/rich-text/introspection.d.ts +0 -5
  862. package/dist/types/controls/rich-text/introspection.d.ts.map +0 -1
  863. package/dist/types/controls/rich-text-v2/copy.d.ts +0 -4
  864. package/dist/types/controls/rich-text-v2/copy.d.ts.map +0 -1
  865. package/dist/types/controls/rich-text-v2/dto.d.ts +0 -5
  866. package/dist/types/controls/rich-text-v2/dto.d.ts.map +0 -1
  867. package/dist/types/controls/rich-text-v2/introspection.d.ts +0 -5
  868. package/dist/types/controls/rich-text-v2/introspection.d.ts.map +0 -1
  869. package/dist/types/controls/select.d.ts +0 -22
  870. package/dist/types/controls/select.d.ts.map +0 -1
  871. package/dist/types/controls/shape.d.ts +0 -50
  872. package/dist/types/controls/shape.d.ts.map +0 -1
  873. package/dist/types/controls/style-v2.d.ts +0 -64
  874. package/dist/types/controls/style-v2.d.ts.map +0 -1
  875. package/dist/types/controls/style.d.ts +0 -179
  876. package/dist/types/controls/style.d.ts.map +0 -1
  877. package/dist/types/controls/typography.d.ts +0 -33
  878. package/dist/types/controls/typography.d.ts.map +0 -1
  879. package/dist/types/prop-controllers/base.d.ts +0 -7
  880. package/dist/types/prop-controllers/base.d.ts.map +0 -1
  881. package/dist/types/slate/LinkPlugin/linkPluginWithoutRenderElement.d.ts +0 -16
  882. package/dist/types/slate/LinkPlugin/linkPluginWithoutRenderElement.d.ts.map +0 -1
  883. package/dist/types/utils/index-signature-hack.d.ts +0 -4
  884. package/dist/types/utils/index-signature-hack.d.ts.map +0 -1
@@ -1,25 +1,23 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import {
3
- CheckboxControlType,
4
- NumberControlType,
5
- TextInputControlType,
6
- TextAreaControlType
7
- } from "@makeswift/controls";
8
- import {
9
- ColorControlType,
10
- ComboboxControlType,
11
- IconRadioGroupControlType,
12
- ImageControlType,
13
- LinkControlType,
14
- ListControlType,
15
- RichTextControlType,
16
- RichTextV2ControlType,
17
- SelectControlType,
18
- ShapeControlType,
19
- SlotControlType,
20
- StyleControlType,
21
- StyleV2ControlType,
22
- TypographyControlType
3
+ CheckboxDefinition,
4
+ NumberDefinition,
5
+ RichTextV2Definition,
6
+ ColorDefinition,
7
+ ComboboxDefinition,
8
+ IconRadioGroupDefinition,
9
+ ImageDefinition,
10
+ LinkDefinition,
11
+ ListDefinition,
12
+ RichTextV1Definition,
13
+ SelectDefinition,
14
+ ShapeDefinition,
15
+ SlotDefinition,
16
+ StyleDefinition,
17
+ StyleV2Definition,
18
+ TextAreaDefinition,
19
+ TextInputDefinition,
20
+ unstable_TypographyDefinition
23
21
  } from "../../../controls";
24
22
  import { RenderHook } from "../components";
25
23
  import { useCheckboxControlValue } from "./checkbox";
@@ -46,8 +44,8 @@ function ControlValue({
46
44
  children,
47
45
  control
48
46
  }) {
49
- switch (definition.type) {
50
- case CheckboxControlType:
47
+ switch (definition.controlType) {
48
+ case CheckboxDefinition.type:
51
49
  return /* @__PURE__ */ jsx(
52
50
  RenderHook,
53
51
  {
@@ -55,9 +53,9 @@ function ControlValue({
55
53
  parameters: [data, definition],
56
54
  children: (value) => children(value)
57
55
  },
58
- definition.type
56
+ definition.controlType
59
57
  );
60
- case NumberControlType:
58
+ case NumberDefinition.type:
61
59
  return /* @__PURE__ */ jsx(
62
60
  RenderHook,
63
61
  {
@@ -65,9 +63,9 @@ function ControlValue({
65
63
  parameters: [data, definition],
66
64
  children: (value) => children(value)
67
65
  },
68
- definition.type
66
+ definition.controlType
69
67
  );
70
- case TextInputControlType:
68
+ case TextInputDefinition.type:
71
69
  return /* @__PURE__ */ jsx(
72
70
  RenderHook,
73
71
  {
@@ -75,9 +73,9 @@ function ControlValue({
75
73
  parameters: [data, definition],
76
74
  children: (value) => children(value)
77
75
  },
78
- definition.type
76
+ definition.controlType
79
77
  );
80
- case TextAreaControlType:
78
+ case TextAreaDefinition.type:
81
79
  return /* @__PURE__ */ jsx(
82
80
  RenderHook,
83
81
  {
@@ -85,9 +83,9 @@ function ControlValue({
85
83
  parameters: [data, definition],
86
84
  children: (value) => children(value)
87
85
  },
88
- definition.type
86
+ definition.controlType
89
87
  );
90
- case SelectControlType:
88
+ case SelectDefinition.type:
91
89
  return /* @__PURE__ */ jsx(
92
90
  RenderHook,
93
91
  {
@@ -95,9 +93,9 @@ function ControlValue({
95
93
  parameters: [data, definition],
96
94
  children: (value) => children(value)
97
95
  },
98
- definition.type
96
+ definition.controlType
99
97
  );
100
- case ColorControlType:
98
+ case ColorDefinition.type:
101
99
  return /* @__PURE__ */ jsx(
102
100
  RenderHook,
103
101
  {
@@ -105,19 +103,22 @@ function ControlValue({
105
103
  parameters: [data, definition],
106
104
  children: (value) => children(value)
107
105
  },
108
- definition.type
106
+ definition.controlType
109
107
  );
110
- case IconRadioGroupControlType:
108
+ case IconRadioGroupDefinition.type:
111
109
  return /* @__PURE__ */ jsx(
112
110
  RenderHook,
113
111
  {
114
112
  hook: useIconRadioGroupValue,
115
- parameters: [data, definition],
113
+ parameters: [
114
+ data,
115
+ definition
116
+ ],
116
117
  children: (value) => children(value)
117
118
  },
118
- definition.type
119
+ definition.controlType
119
120
  );
120
- case ImageControlType:
121
+ case ImageDefinition.type:
121
122
  return /* @__PURE__ */ jsx(
122
123
  RenderHook,
123
124
  {
@@ -125,9 +126,9 @@ function ControlValue({
125
126
  parameters: [data, definition],
126
127
  children: (value) => children(value)
127
128
  },
128
- definition.type
129
+ definition.controlType
129
130
  );
130
- case LinkControlType:
131
+ case LinkDefinition.type:
131
132
  return /* @__PURE__ */ jsx(
132
133
  RenderHook,
133
134
  {
@@ -135,9 +136,9 @@ function ControlValue({
135
136
  parameters: [data, definition],
136
137
  children: (value) => children(value)
137
138
  },
138
- definition.type
139
+ definition.controlType
139
140
  );
140
- case ComboboxControlType:
141
+ case ComboboxDefinition.type:
141
142
  return /* @__PURE__ */ jsx(
142
143
  RenderHook,
143
144
  {
@@ -145,9 +146,9 @@ function ControlValue({
145
146
  parameters: [data],
146
147
  children: (value) => children(value)
147
148
  },
148
- definition.type
149
+ definition.controlType
149
150
  );
150
- case ShapeControlType:
151
+ case ShapeDefinition.type:
151
152
  return /* @__PURE__ */ jsx(
152
153
  ShapeControlValue,
153
154
  {
@@ -157,7 +158,7 @@ function ControlValue({
157
158
  children: (value) => children(value)
158
159
  }
159
160
  );
160
- case ListControlType:
161
+ case ListDefinition.type:
161
162
  return /* @__PURE__ */ jsx(
162
163
  ListControlValue,
163
164
  {
@@ -167,7 +168,7 @@ function ControlValue({
167
168
  children: (value) => children(value)
168
169
  }
169
170
  );
170
- case StyleV2ControlType:
171
+ case StyleV2Definition.type:
171
172
  return /* @__PURE__ */ jsx(
172
173
  StyleV2ControlValue,
173
174
  {
@@ -176,9 +177,9 @@ function ControlValue({
176
177
  control,
177
178
  children: (value) => children(value)
178
179
  },
179
- definition.type
180
+ definition.controlType
180
181
  );
181
- case SlotControlType:
182
+ case SlotDefinition.type:
182
183
  return /* @__PURE__ */ jsx(
183
184
  RenderHook,
184
185
  {
@@ -186,19 +187,22 @@ function ControlValue({
186
187
  parameters: [data, control],
187
188
  children: (value) => children(value)
188
189
  },
189
- definition.type
190
+ definition.controlType
190
191
  );
191
- case RichTextControlType:
192
+ case RichTextV1Definition.type:
192
193
  return /* @__PURE__ */ jsx(
193
194
  RenderHook,
194
195
  {
195
196
  hook: useRichText,
196
- parameters: [data, control],
197
+ parameters: [
198
+ data,
199
+ control
200
+ ],
197
201
  children: (value) => children(value)
198
202
  },
199
- definition.type
203
+ definition.controlType
200
204
  );
201
- case RichTextV2ControlType:
205
+ case RichTextV2Definition.type:
202
206
  return /* @__PURE__ */ jsx(
203
207
  RenderHook,
204
208
  {
@@ -210,19 +214,23 @@ function ControlValue({
210
214
  ],
211
215
  children: (value) => children(value)
212
216
  },
213
- definition.type
217
+ definition.controlType
214
218
  );
215
- case StyleControlType:
219
+ case StyleDefinition.type:
216
220
  return /* @__PURE__ */ jsx(
217
221
  RenderHook,
218
222
  {
219
223
  hook: useFormattedStyle,
220
- parameters: [data, definition, control],
224
+ parameters: [
225
+ data,
226
+ definition,
227
+ control
228
+ ],
221
229
  children: (value) => children(value)
222
230
  },
223
- definition.type
231
+ definition.controlType
224
232
  );
225
- case TypographyControlType:
233
+ case unstable_TypographyDefinition.type:
226
234
  return /* @__PURE__ */ jsx(
227
235
  RenderHook,
228
236
  {
@@ -230,7 +238,7 @@ function ControlValue({
230
238
  parameters: [data],
231
239
  children: (value) => children(value)
232
240
  },
233
- definition.type
241
+ definition.controlType
234
242
  );
235
243
  default:
236
244
  return children(data);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/control.tsx"],"sourcesContent":["import {\n CheckboxControlData,\n CheckboxControlDefinition,\n CheckboxControlType,\n NumberControlData,\n NumberControlDefinition,\n NumberControlType,\n TextInputControlData,\n TextInputControlDefinition,\n TextInputControlType,\n TextAreaControlData,\n TextAreaControlDefinition,\n TextAreaControlType,\n} from '@makeswift/controls'\nimport {\n ColorControlData,\n ColorControlDefinition,\n ColorControlType,\n ComboboxControlData,\n ComboboxControlDefinition,\n ComboboxControlType,\n ControlDefinition,\n ControlDefinitionData,\n IconRadioGroupControlData,\n IconRadioGroupControlDefinition,\n IconRadioGroupControlType,\n ImageControlData,\n ImageControlDefinition,\n ImageControlType,\n LinkControlData,\n LinkControlDefinition,\n LinkControlType,\n ListControl,\n ListControlData,\n ListControlDefinition,\n ListControlType,\n RichTextControl,\n RichTextControlData,\n RichTextControlDefinition,\n RichTextControlType,\n RichTextV2Control,\n RichTextV2ControlData,\n RichTextV2ControlDefinition,\n RichTextV2ControlType,\n SelectControlData,\n SelectControlDefinition,\n SelectControlType,\n ShapeControl,\n ShapeControlData,\n ShapeControlDefinition,\n ShapeControlType,\n SlotControl,\n SlotControlData,\n SlotControlDefinition,\n SlotControlType,\n StyleControl,\n StyleControlData,\n StyleControlDefinition,\n StyleControlType,\n StyleV2Control,\n StyleV2ControlData,\n StyleV2ControlDefinition,\n StyleV2ControlType,\n TypographyControlData,\n TypographyControlDefinition,\n TypographyControlType,\n} from '../../../controls'\n\nimport { AnyPropController } from '../../../prop-controllers/instances'\nimport { RenderHook } from '../components'\nimport { CheckboxControlValue, useCheckboxControlValue } from './checkbox'\nimport { ColorControlValue, useColorValue } from './color'\nimport { ComboboxControlValue, useComboboxControlValue } from './combobox'\nimport { IconRadioGroupControlValue, useIconRadioGroupValue } from './icon-radio-group'\nimport { ResolveImageControlValue, useImageControlValue } from './image'\nimport { LinkControlValue, useLinkControlValue } from './link'\nimport { ListControlValue } from './list'\nimport { NumberControlValue, useNumber } from './number'\nimport { RichTextControlValue, useRichText } from './rich-text/rich-text'\nimport { RichTextV2ControlValue, useRichTextV2 } from './rich-text-v2'\nimport { SelectControlValue, useSelectControlValue } from './select'\nimport { ShapeControlValue } from './shape'\nimport { SlotControlValue, useSlot } from './slot'\nimport { StyleControlFormattedValue, useFormattedStyle } from './style'\nimport { StyleV2ControlFormattedValue, StyleV2ControlValue } from './style-v2'\nimport { TextAreaControlValue, useTextAreaValue } from './text-area'\nimport { TextInputControlValue, useTextInputValue } from './text-input'\nimport { TypographyControlValue, useTypographyValue } from './typography'\n\nexport type ControlDefinitionValue<T extends ControlDefinition> =\n T extends CheckboxControlDefinition\n ? CheckboxControlValue<T>\n : T extends NumberControlDefinition\n ? NumberControlValue<T>\n : T extends TextInputControlDefinition\n ? TextInputControlValue<T>\n : T extends TextAreaControlDefinition\n ? TextAreaControlValue<T>\n : T extends SelectControlDefinition\n ? SelectControlValue<T>\n : T extends ColorControlDefinition\n ? ColorControlValue<T>\n : T extends ImageControlDefinition\n ? ResolveImageControlValue<T>\n : T extends IconRadioGroupControlDefinition\n ? IconRadioGroupControlValue<T>\n : T extends LinkControlDefinition\n ? LinkControlValue<T>\n : T extends ComboboxControlDefinition\n ? ComboboxControlValue<T>\n : T extends ShapeControlDefinition\n ? ShapeControlValue<T>\n : T extends ListControlDefinition\n ? ListControlValue<T>\n : T extends SlotControlDefinition\n ? SlotControlValue\n : T extends RichTextControlDefinition\n ? RichTextControlValue\n : T extends RichTextV2ControlDefinition\n ? RichTextV2ControlValue\n : T extends StyleControlDefinition\n ? StyleControlFormattedValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends TypographyControlDefinition\n ? TypographyControlValue\n : never\n\ntype ControlValueProps<T extends ControlDefinition> = {\n definition: T\n data: ControlDefinitionData<T> | undefined\n children(value: ControlDefinitionValue<T>): JSX.Element\n control?: AnyPropController\n}\n\nexport function ControlValue<T extends ControlDefinition>({\n data,\n definition,\n children,\n control,\n}: ControlValueProps<T>): JSX.Element {\n switch (definition.type) {\n case CheckboxControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useCheckboxControlValue}\n parameters={[data as CheckboxControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case NumberControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useNumber}\n parameters={[data as NumberControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TextInputControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTextInputValue}\n parameters={[data as TextInputControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TextAreaControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTextAreaValue}\n parameters={[data as TextAreaControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case SelectControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useSelectControlValue}\n parameters={[data as SelectControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ColorControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useColorValue}\n parameters={[data as ColorControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case IconRadioGroupControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useIconRadioGroupValue}\n parameters={[data as IconRadioGroupControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ImageControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useImageControlValue}\n parameters={[data as ImageControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case LinkControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useLinkControlValue}\n parameters={[data as LinkControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ComboboxControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useComboboxControlValue}\n parameters={[data as ComboboxControlData]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ShapeControlType:\n return (\n <ShapeControlValue\n definition={definition}\n data={data as ShapeControlData}\n control={control as ShapeControl}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </ShapeControlValue>\n )\n\n case ListControlType:\n return (\n <ListControlValue\n definition={definition}\n data={data as ListControlData}\n control={control as ListControl}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </ListControlValue>\n )\n\n case StyleV2ControlType:\n return (\n <StyleV2ControlValue\n key={definition.type}\n data={data as StyleV2ControlData}\n definition={definition}\n control={control as StyleV2Control}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </StyleV2ControlValue>\n )\n\n case SlotControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useSlot}\n parameters={[data as unknown as SlotControlData, control as SlotControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case RichTextControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useRichText}\n parameters={[data as unknown as RichTextControlData, control as RichTextControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case RichTextV2ControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useRichTextV2}\n parameters={[\n data as unknown as RichTextV2ControlData,\n definition,\n control as RichTextV2Control,\n ]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case StyleControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useFormattedStyle}\n parameters={[data as unknown as StyleControlData, definition, control as StyleControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TypographyControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTypographyValue}\n parameters={[data as unknown as TypographyControlData[number]]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n default:\n return children(data as ControlDefinitionValue<T>)\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/control.tsx"],"sourcesContent":["import {\n ControlDefinition,\n type DataType,\n type ResolvedValueType,\n type InstanceType,\n} from '@makeswift/controls'\n\nimport {\n CheckboxDefinition,\n NumberDefinition,\n RichTextV2Definition,\n ColorDefinition,\n ComboboxDefinition,\n IconRadioGroupDefinition,\n ImageDefinition,\n LinkDefinition,\n ListDefinition,\n RichTextV1Definition,\n SelectDefinition,\n ShapeDefinition,\n SlotDefinition,\n StyleDefinition,\n StyleV2Definition,\n TextAreaDefinition,\n TextInputDefinition,\n unstable_TypographyDefinition,\n} from '../../../controls'\n\nimport { RenderHook } from '../components'\nimport { useCheckboxControlValue } from './checkbox'\nimport { useColorValue } from './color'\nimport { useComboboxControlValue } from './combobox'\nimport { useIconRadioGroupValue } from './icon-radio-group'\nimport { useImageControlValue } from './image'\nimport { useLinkControlValue } from './link'\nimport { ListControlValue } from './list'\nimport { useNumber } from './number'\nimport { useRichText } from './rich-text/rich-text'\nimport { useRichTextV2 } from './rich-text-v2'\nimport { useSelectControlValue } from './select'\nimport { ShapeControlValue } from './shape'\nimport { useSlot } from './slot'\nimport { useFormattedStyle } from './style'\nimport { StyleV2ControlValue } from './style-v2'\nimport { useTextAreaValue } from './text-area'\nimport { useTextInputValue } from './text-input'\nimport { useTypographyValue } from './typography'\n\ntype ControlValueProps = {\n definition: ControlDefinition\n data: DataType<ControlDefinition> | undefined\n children(value: ResolvedValueType<ControlDefinition>): JSX.Element\n control?: InstanceType<ControlDefinition>\n}\n\nexport function ControlValue({\n data,\n definition,\n children,\n control,\n}: ControlValueProps): JSX.Element {\n switch (definition.controlType) {\n case CheckboxDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useCheckboxControlValue}\n parameters={[data as DataType<CheckboxDefinition>, definition as CheckboxDefinition]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case NumberDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useNumber}\n parameters={[data as DataType<NumberDefinition>, definition as NumberDefinition]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case TextInputDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useTextInputValue}\n parameters={[data as DataType<TextInputDefinition>, definition as TextInputDefinition]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case TextAreaDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useTextAreaValue}\n parameters={[data as DataType<TextAreaDefinition>, definition as TextAreaDefinition]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case SelectDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useSelectControlValue}\n parameters={[data as DataType<SelectDefinition>, definition as SelectDefinition]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case ColorDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useColorValue}\n parameters={[data as DataType<ColorDefinition>, definition as ColorDefinition]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case IconRadioGroupDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useIconRadioGroupValue}\n parameters={[\n data as DataType<IconRadioGroupDefinition>,\n definition as IconRadioGroupDefinition,\n ]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case ImageDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useImageControlValue}\n parameters={[data as DataType<ImageDefinition>, definition as ImageDefinition]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case LinkDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useLinkControlValue}\n parameters={[data as DataType<LinkDefinition>, definition as LinkDefinition]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case ComboboxDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useComboboxControlValue}\n parameters={[data as DataType<ComboboxDefinition>]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case ShapeDefinition.type:\n return (\n <ShapeControlValue\n definition={definition as ShapeDefinition}\n data={data as DataType<ShapeDefinition>}\n control={control as InstanceType<ShapeDefinition>}\n >\n {value => children(value)}\n </ShapeControlValue>\n )\n\n case ListDefinition.type:\n return (\n <ListControlValue\n definition={definition as ListDefinition}\n data={data as DataType<ListDefinition>}\n control={control as InstanceType<ListDefinition>}\n >\n {value => children(value)}\n </ListControlValue>\n )\n\n case StyleV2Definition.type:\n return (\n <StyleV2ControlValue\n key={definition.controlType}\n data={data as DataType<StyleV2Definition>}\n definition={definition as StyleV2Definition}\n control={control as InstanceType<StyleV2Definition>}\n >\n {value => children(value)}\n </StyleV2ControlValue>\n )\n\n case SlotDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useSlot}\n parameters={[data as DataType<SlotDefinition>, control as InstanceType<SlotDefinition>]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case RichTextV1Definition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useRichText}\n parameters={[\n data as DataType<RichTextV1Definition>,\n control as InstanceType<RichTextV1Definition>,\n ]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case RichTextV2Definition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useRichTextV2}\n parameters={[\n data as DataType<RichTextV2Definition>,\n definition as RichTextV2Definition,\n control as InstanceType<RichTextV2Definition>,\n ]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case StyleDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useFormattedStyle}\n parameters={[\n data as DataType<StyleDefinition>,\n definition as StyleDefinition,\n control as InstanceType<StyleDefinition>,\n ]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n case unstable_TypographyDefinition.type:\n return (\n <RenderHook\n key={definition.controlType}\n hook={useTypographyValue}\n parameters={[data as DataType<unstable_TypographyDefinition>]}\n >\n {value => children(value)}\n </RenderHook>\n )\n\n default:\n return children(data)\n }\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/icon-radio-group.ts"],"sourcesContent":["import { IconRadioGroupControlData, IconRadioGroupControlDefinition } from '@makeswift/controls'\n\nexport type IconRadioGroupControlValue<T extends IconRadioGroupControlDefinition> =\n undefined extends T['config']['defaultValue']\n ? IconRadioGroupControlData | undefined\n : IconRadioGroupControlData\n\nexport function useIconRadioGroupValue<T extends IconRadioGroupControlDefinition>(\n iconRadioGroupControlData: IconRadioGroupControlData | undefined,\n controlDefinition: T,\n): IconRadioGroupControlValue<T> {\n return (iconRadioGroupControlData ??\n controlDefinition.config.defaultValue) as IconRadioGroupControlValue<T>\n}\n"],"mappings":"AAOO,SAAS,uBACd,2BACA,mBAC+B;AAC/B,SAAQ,6BACN,kBAAkB,OAAO;AAC7B;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/icon-radio-group.ts"],"sourcesContent":["import { type DataType, type ResolvedValueType } from '@makeswift/controls'\n\nimport { IconRadioGroupDefinition } from '../../../controls'\n\nexport function useIconRadioGroupValue(\n iconRadioGroupControlData: DataType<IconRadioGroupDefinition> | undefined,\n controlDefinition: IconRadioGroupDefinition,\n): ResolvedValueType<IconRadioGroupDefinition> {\n return iconRadioGroupControlData ?? controlDefinition.config.defaultValue\n}\n"],"mappings":"AAIO,SAAS,uBACd,2BACA,mBAC6C;AAC7C,SAAO,6BAA6B,kBAAkB,OAAO;AAC/D;","names":[]}
@@ -1,27 +1,21 @@
1
1
  import { P, match } from "ts-pattern";
2
- import {
3
- ImageControlValueFormat
4
- } from "../../../controls";
2
+ import { Image } from "../../../controls";
5
3
  import { useFile } from "../hooks/makeswift-api";
6
4
  function useImageControlValue(data, definition) {
7
- const format = definition.config.format ?? ImageControlValueFormat.URL;
5
+ const format = definition.config.format ?? Image.Format.URL;
8
6
  const fileId = match(data).with(P.string, (id) => id).with({ type: "makeswift-file" }, ({ id }) => id).otherwise(() => null);
9
7
  const file = useFile(fileId);
10
- return match([file, data, format]).with([{ __typename: "File" }, P.any, ImageControlValueFormat.URL], ([file2]) => file2.publicUrl).with(
11
- [
12
- { __typename: "File", dimensions: P.not(P.nullish) },
13
- P.any,
14
- ImageControlValueFormat.WithDimensions
15
- ],
8
+ return match([file, data, format]).with([{ __typename: "File" }, P.any, Image.Format.URL], ([file2]) => file2.publicUrl).with(
9
+ [{ __typename: "File", dimensions: P.not(P.nullish) }, P.any, Image.Format.WithDimensions],
16
10
  ([file2]) => ({
17
11
  url: file2.publicUrl,
18
12
  dimensions: file2.dimensions
19
13
  })
20
- ).with([P.any, { type: "external-file" }, ImageControlValueFormat.URL], ([, d]) => d.url).with(
14
+ ).with([P.any, { type: "external-file" }, Image.Format.URL], ([, d]) => d.url).with(
21
15
  [
22
16
  P.any,
23
17
  { type: "external-file", width: P.number, height: P.number },
24
- ImageControlValueFormat.WithDimensions
18
+ Image.Format.WithDimensions
25
19
  ],
26
20
  ([, d]) => ({
27
21
  url: d.url,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/image.ts"],"sourcesContent":["import { P, match } from 'ts-pattern'\nimport {\n ControlDefinition,\n ImageControlData,\n ImageControlDefinition,\n ImageControlValueFormat,\n} from '../../../controls'\nimport { useFile } from '../hooks/makeswift-api'\n\ntype ImageWithDimensions = {\n url: string\n dimensions: { width: number; height: number }\n}\n\nexport type ImageControlValue = string | ImageWithDimensions | undefined\n\nexport function useImageControlValue(\n data: ImageControlData | undefined,\n definition: ImageControlDefinition,\n): ImageControlValue {\n const format = definition.config.format ?? ImageControlValueFormat.URL\n\n const fileId = match(data)\n .with(P.string, id => id)\n .with({ type: 'makeswift-file' }, ({ id }) => id)\n .otherwise(() => null)\n\n const file = useFile(fileId)\n\n return match([file, data, format])\n .with([{ __typename: 'File' }, P.any, ImageControlValueFormat.URL], ([file]) => file.publicUrl)\n .with(\n [\n { __typename: 'File', dimensions: P.not(P.nullish) },\n P.any,\n ImageControlValueFormat.WithDimensions,\n ],\n ([file]) => ({\n url: file.publicUrl,\n dimensions: file.dimensions,\n }),\n )\n .with([P.any, { type: 'external-file' }, ImageControlValueFormat.URL], ([, d]) => d.url)\n .with(\n [\n P.any,\n { type: 'external-file', width: P.number, height: P.number },\n ImageControlValueFormat.WithDimensions,\n ],\n ([, d]) => ({\n url: d.url,\n dimensions: { width: d.width, height: d.height },\n }),\n )\n .otherwise(() => undefined)\n}\n\nexport type ResolveImageControlValue<T extends ControlDefinition> = T extends ImageControlDefinition\n ? undefined extends T['config']['format']\n ? string | undefined\n : T['config']['format'] extends typeof ImageControlValueFormat.URL\n ? string | undefined\n : T['config']['format'] extends typeof ImageControlValueFormat.WithDimensions\n ? ImageWithDimensions | undefined\n : never\n : never\n"],"mappings":"AAAA,SAAS,GAAG,aAAa;AACzB;AAAA,EAIE;AAAA,OACK;AACP,SAAS,eAAe;AASjB,SAAS,qBACd,MACA,YACmB;AACnB,QAAM,SAAS,WAAW,OAAO,UAAU,wBAAwB;AAEnE,QAAM,SAAS,MAAM,IAAI,EACtB,KAAK,EAAE,QAAQ,QAAM,EAAE,EACvB,KAAK,EAAE,MAAM,iBAAiB,GAAG,CAAC,EAAE,GAAG,MAAM,EAAE,EAC/C,UAAU,MAAM,IAAI;AAEvB,QAAM,OAAO,QAAQ,MAAM;AAE3B,SAAO,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,EAC9B,KAAK,CAAC,EAAE,YAAY,OAAO,GAAG,EAAE,KAAK,wBAAwB,GAAG,GAAG,CAAC,CAACA,KAAI,MAAMA,MAAK,SAAS,EAC7F;AAAA,IACC;AAAA,MACE,EAAE,YAAY,QAAQ,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE;AAAA,MACnD,EAAE;AAAA,MACF,wBAAwB;AAAA,IAC1B;AAAA,IACA,CAAC,CAACA,KAAI,OAAO;AAAA,MACX,KAAKA,MAAK;AAAA,MACV,YAAYA,MAAK;AAAA,IACnB;AAAA,EACF,EACC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,gBAAgB,GAAG,wBAAwB,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EACtF;AAAA,IACC;AAAA,MACE,EAAE;AAAA,MACF,EAAE,MAAM,iBAAiB,OAAO,EAAE,QAAQ,QAAQ,EAAE,OAAO;AAAA,MAC3D,wBAAwB;AAAA,IAC1B;AAAA,IACA,CAAC,CAAC,EAAE,CAAC,OAAO;AAAA,MACV,KAAK,EAAE;AAAA,MACP,YAAY,EAAE,OAAO,EAAE,OAAO,QAAQ,EAAE,OAAO;AAAA,IACjD;AAAA,EACF,EACC,UAAU,MAAM,MAAS;AAC9B;","names":["file"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/image.ts"],"sourcesContent":["import { P, match } from 'ts-pattern'\n\nimport { type DataType, type ResolvedValueType } from '@makeswift/controls'\n\nimport { Image, ImageDefinition } from '../../../controls'\n\nimport { useFile } from '../hooks/makeswift-api'\n\nexport function useImageControlValue(\n data: DataType<ImageDefinition> | undefined,\n definition: ImageDefinition,\n): ResolvedValueType<ImageDefinition> {\n const format = definition.config.format ?? Image.Format.URL\n\n const fileId = match(data)\n .with(P.string, id => id)\n .with({ type: 'makeswift-file' }, ({ id }) => id)\n .otherwise(() => null)\n\n const file = useFile(fileId)\n\n return match([file, data, format])\n .with([{ __typename: 'File' }, P.any, Image.Format.URL], ([file]) => file.publicUrl)\n .with(\n [{ __typename: 'File', dimensions: P.not(P.nullish) }, P.any, Image.Format.WithDimensions],\n ([file]) => ({\n url: file.publicUrl,\n dimensions: file.dimensions,\n }),\n )\n .with([P.any, { type: 'external-file' }, Image.Format.URL], ([, d]) => d.url)\n .with(\n [\n P.any,\n { type: 'external-file', width: P.number, height: P.number },\n Image.Format.WithDimensions,\n ],\n ([, d]) => ({\n url: d.url,\n dimensions: { width: d.width, height: d.height },\n }),\n )\n .otherwise(() => undefined)\n}\n"],"mappings":"AAAA,SAAS,GAAG,aAAa;AAIzB,SAAS,aAA8B;AAEvC,SAAS,eAAe;AAEjB,SAAS,qBACd,MACA,YACoC;AACpC,QAAM,SAAS,WAAW,OAAO,UAAU,MAAM,OAAO;AAExD,QAAM,SAAS,MAAM,IAAI,EACtB,KAAK,EAAE,QAAQ,QAAM,EAAE,EACvB,KAAK,EAAE,MAAM,iBAAiB,GAAG,CAAC,EAAE,GAAG,MAAM,EAAE,EAC/C,UAAU,MAAM,IAAI;AAEvB,QAAM,OAAO,QAAQ,MAAM;AAE3B,SAAO,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,EAC9B,KAAK,CAAC,EAAE,YAAY,OAAO,GAAG,EAAE,KAAK,MAAM,OAAO,GAAG,GAAG,CAAC,CAACA,KAAI,MAAMA,MAAK,SAAS,EAClF;AAAA,IACC,CAAC,EAAE,YAAY,QAAQ,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,MAAM,OAAO,cAAc;AAAA,IACzF,CAAC,CAACA,KAAI,OAAO;AAAA,MACX,KAAKA,MAAK;AAAA,MACV,YAAYA,MAAK;AAAA,IACnB;AAAA,EACF,EACC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,gBAAgB,GAAG,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAC3E;AAAA,IACC;AAAA,MACE,EAAE;AAAA,MACF,EAAE,MAAM,iBAAiB,OAAO,EAAE,QAAQ,QAAQ,EAAE,OAAO;AAAA,MAC3D,MAAM,OAAO;AAAA,IACf;AAAA,IACA,CAAC,CAAC,EAAE,CAAC,OAAO;AAAA,MACV,KAAK,EAAE;AAAA,MACP,YAAY,EAAE,OAAO,EAAE,OAAO,QAAQ,EAAE,OAAO;AAAA,IACjD;AAAA,EACF,EACC,UAAU,MAAM,MAAS;AAC9B;","names":["file"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/link.ts"],"sourcesContent":["import { MouseEvent, useCallback, useMemo } from 'react'\n\nimport scrollIntoView from 'scroll-into-view-if-needed'\nimport { useElementId } from '../'\nimport { LinkControlData, LinkControlDefinition } from '../../../controls'\nimport { usePagePathnameSlice } from '../hooks/makeswift-api'\n\ntype LinkValue = {\n href: string\n target: '_blank' | '_self' | undefined\n onClick: (event: MouseEvent<HTMLElement>) => void\n}\n\nexport type LinkControlValue<_T extends LinkControlDefinition> = LinkValue | undefined\n\nexport function useLinkControlValue<T extends LinkControlDefinition>(\n link: LinkControlData | undefined,\n _definition: T,\n): LinkControlValue<T> {\n const pageId = link && link.type === 'OPEN_PAGE' ? link.payload.pageId : null\n const page = usePagePathnameSlice(pageId ?? null)\n\n const elementKey =\n link?.type === 'SCROLL_TO_ELEMENT' ? link.payload.elementIdConfig?.elementKey : null\n const elementId = useElementId(elementKey)\n\n let href = '#'\n let target: '_blank' | '_self' | undefined\n let block: 'start' | 'center' | 'end' | undefined\n\n if (link) {\n switch (link.type) {\n case 'OPEN_PAGE': {\n if (page) href = `/${page.localizedPathname ?? page.pathname}`\n\n target = link.payload.openInNewTab ? '_blank' : '_self'\n\n break\n }\n\n case 'OPEN_URL': {\n href = link.payload.url\n\n target = link.payload.openInNewTab ? '_blank' : '_self'\n\n break\n }\n\n case 'SEND_EMAIL': {\n const { to, subject = '', body = '' } = link.payload\n\n if (to != null) href = `mailto:${to}?subject=${subject}&body=${body}`\n\n break\n }\n\n case 'CALL_PHONE': {\n href = `tel:${link.payload.phoneNumber}`\n\n break\n }\n\n case 'SCROLL_TO_ELEMENT': {\n href = `#${elementId ?? ''}`\n block = link.payload.block\n\n break\n }\n\n default:\n throw new RangeError(`Invalid link type \"${(link as any).type}.\"`)\n }\n }\n\n const handleClick = useCallback(\n (event: MouseEvent<HTMLElement>) => {\n if (event.defaultPrevented) return\n\n if (link && link.type === 'SCROLL_TO_ELEMENT') {\n let hash: string | undefined\n\n try {\n hash = new URL(`http://www.example.com/${href}`).hash\n } catch (error) {\n console.error(`Link received invalid href: ${href}`, error)\n }\n\n if (href != null && href === hash) {\n event.preventDefault()\n const view = event.view as unknown as Window\n\n scrollIntoView(view.document.querySelector(hash)!, {\n behavior: 'smooth',\n block,\n })\n\n if (view.location.hash !== hash) view.history.pushState({}, '', hash)\n }\n }\n },\n [link, href, block],\n )\n\n const res = useMemo(() => ({ href, target, onClick: handleClick }), [href, target, handleClick])\n\n return res\n}\n"],"mappings":"AAAA,SAAqB,aAAa,eAAe;AAEjD,OAAO,oBAAoB;AAC3B,SAAS,oBAAoB;AAE7B,SAAS,4BAA4B;AAU9B,SAAS,oBACd,MACA,aACqB;AACrB,QAAM,SAAS,QAAQ,KAAK,SAAS,cAAc,KAAK,QAAQ,SAAS;AACzE,QAAM,OAAO,qBAAqB,UAAU,IAAI;AAEhD,QAAM,aACJ,MAAM,SAAS,sBAAsB,KAAK,QAAQ,iBAAiB,aAAa;AAClF,QAAM,YAAY,aAAa,UAAU;AAEzC,MAAI,OAAO;AACX,MAAI;AACJ,MAAI;AAEJ,MAAI,MAAM;AACR,YAAQ,KAAK,MAAM;AAAA,MACjB,KAAK,aAAa;AAChB,YAAI;AAAM,iBAAO,IAAI,KAAK,qBAAqB,KAAK,QAAQ;AAE5D,iBAAS,KAAK,QAAQ,eAAe,WAAW;AAEhD;AAAA,MACF;AAAA,MAEA,KAAK,YAAY;AACf,eAAO,KAAK,QAAQ;AAEpB,iBAAS,KAAK,QAAQ,eAAe,WAAW;AAEhD;AAAA,MACF;AAAA,MAEA,KAAK,cAAc;AACjB,cAAM,EAAE,IAAI,UAAU,IAAI,OAAO,GAAG,IAAI,KAAK;AAE7C,YAAI,MAAM;AAAM,iBAAO,UAAU,EAAE,YAAY,OAAO,SAAS,IAAI;AAEnE;AAAA,MACF;AAAA,MAEA,KAAK,cAAc;AACjB,eAAO,OAAO,KAAK,QAAQ,WAAW;AAEtC;AAAA,MACF;AAAA,MAEA,KAAK,qBAAqB;AACxB,eAAO,IAAI,aAAa,EAAE;AAC1B,gBAAQ,KAAK,QAAQ;AAErB;AAAA,MACF;AAAA,MAEA;AACE,cAAM,IAAI,WAAW,sBAAuB,KAAa,IAAI,IAAI;AAAA,IACrE;AAAA,EACF;AAEA,QAAM,cAAc;AAAA,IAClB,CAAC,UAAmC;AAClC,UAAI,MAAM;AAAkB;AAE5B,UAAI,QAAQ,KAAK,SAAS,qBAAqB;AAC7C,YAAI;AAEJ,YAAI;AACF,iBAAO,IAAI,IAAI,0BAA0B,IAAI,EAAE,EAAE;AAAA,QACnD,SAAS,OAAO;AACd,kBAAQ,MAAM,+BAA+B,IAAI,IAAI,KAAK;AAAA,QAC5D;AAEA,YAAI,QAAQ,QAAQ,SAAS,MAAM;AACjC,gBAAM,eAAe;AACrB,gBAAM,OAAO,MAAM;AAEnB,yBAAe,KAAK,SAAS,cAAc,IAAI,GAAI;AAAA,YACjD,UAAU;AAAA,YACV;AAAA,UACF,CAAC;AAED,cAAI,KAAK,SAAS,SAAS;AAAM,iBAAK,QAAQ,UAAU,CAAC,GAAG,IAAI,IAAI;AAAA,QACtE;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,MAAM,MAAM,KAAK;AAAA,EACpB;AAEA,QAAM,MAAM,QAAQ,OAAO,EAAE,MAAM,QAAQ,SAAS,YAAY,IAAI,CAAC,MAAM,QAAQ,WAAW,CAAC;AAE/F,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/link.ts"],"sourcesContent":["import { MouseEvent, useCallback, useMemo } from 'react'\n\nimport { type DataType, type ResolvedValueType } from '@makeswift/controls'\n\nimport { LinkDefinition } from '../../../controls'\n\nimport scrollIntoView from 'scroll-into-view-if-needed'\nimport { useElementId } from '../'\nimport { usePagePathnameSlice } from '../hooks/makeswift-api'\n\nexport function useLinkControlValue(\n link: DataType<LinkDefinition> | undefined,\n _definition: LinkDefinition,\n): ResolvedValueType<LinkDefinition> {\n const pageId = link && link.type === 'OPEN_PAGE' ? link.payload.pageId : null\n const page = usePagePathnameSlice(pageId ?? null)\n\n const elementKey =\n link?.type === 'SCROLL_TO_ELEMENT' ? link.payload.elementIdConfig?.elementKey : null\n const elementId = useElementId(elementKey)\n\n let href = '#'\n let target: '_blank' | '_self' | undefined\n let block: 'start' | 'center' | 'end' | undefined\n\n if (link) {\n switch (link.type) {\n case 'OPEN_PAGE': {\n if (page) href = `/${page.localizedPathname ?? page.pathname}`\n\n target = link.payload.openInNewTab ? '_blank' : '_self'\n\n break\n }\n\n case 'OPEN_URL': {\n href = link.payload.url\n\n target = link.payload.openInNewTab ? '_blank' : '_self'\n\n break\n }\n\n case 'SEND_EMAIL': {\n const { to, subject = '', body = '' } = link.payload\n\n if (to != null) href = `mailto:${to}?subject=${subject}&body=${body}`\n\n break\n }\n\n case 'CALL_PHONE': {\n href = `tel:${link.payload.phoneNumber}`\n\n break\n }\n\n case 'SCROLL_TO_ELEMENT': {\n href = `#${elementId ?? ''}`\n block = link.payload.block\n\n break\n }\n\n default:\n throw new RangeError(`Invalid link type \"${(link as any).type}.\"`)\n }\n }\n\n const handleClick = useCallback(\n (event: MouseEvent<Element>) => {\n if (event.defaultPrevented) return\n\n if (link && link.type === 'SCROLL_TO_ELEMENT') {\n let hash: string | undefined\n\n try {\n hash = new URL(`http://www.example.com/${href}`).hash\n } catch (error) {\n console.error(`Link received invalid href: ${href}`, error)\n }\n\n if (href != null && href === hash) {\n event.preventDefault()\n const view = event.view as unknown as Window\n\n scrollIntoView(view.document.querySelector(hash)!, {\n behavior: 'smooth',\n block,\n })\n\n if (view.location.hash !== hash) view.history.pushState({}, '', hash)\n }\n }\n },\n [link, href, block],\n )\n\n const res = useMemo(() => ({ href, target, onClick: handleClick }), [href, target, handleClick])\n\n return res\n}\n"],"mappings":"AAAA,SAAqB,aAAa,eAAe;AAMjD,OAAO,oBAAoB;AAC3B,SAAS,oBAAoB;AAC7B,SAAS,4BAA4B;AAE9B,SAAS,oBACd,MACA,aACmC;AACnC,QAAM,SAAS,QAAQ,KAAK,SAAS,cAAc,KAAK,QAAQ,SAAS;AACzE,QAAM,OAAO,qBAAqB,UAAU,IAAI;AAEhD,QAAM,aACJ,MAAM,SAAS,sBAAsB,KAAK,QAAQ,iBAAiB,aAAa;AAClF,QAAM,YAAY,aAAa,UAAU;AAEzC,MAAI,OAAO;AACX,MAAI;AACJ,MAAI;AAEJ,MAAI,MAAM;AACR,YAAQ,KAAK,MAAM;AAAA,MACjB,KAAK,aAAa;AAChB,YAAI;AAAM,iBAAO,IAAI,KAAK,qBAAqB,KAAK,QAAQ;AAE5D,iBAAS,KAAK,QAAQ,eAAe,WAAW;AAEhD;AAAA,MACF;AAAA,MAEA,KAAK,YAAY;AACf,eAAO,KAAK,QAAQ;AAEpB,iBAAS,KAAK,QAAQ,eAAe,WAAW;AAEhD;AAAA,MACF;AAAA,MAEA,KAAK,cAAc;AACjB,cAAM,EAAE,IAAI,UAAU,IAAI,OAAO,GAAG,IAAI,KAAK;AAE7C,YAAI,MAAM;AAAM,iBAAO,UAAU,EAAE,YAAY,OAAO,SAAS,IAAI;AAEnE;AAAA,MACF;AAAA,MAEA,KAAK,cAAc;AACjB,eAAO,OAAO,KAAK,QAAQ,WAAW;AAEtC;AAAA,MACF;AAAA,MAEA,KAAK,qBAAqB;AACxB,eAAO,IAAI,aAAa,EAAE;AAC1B,gBAAQ,KAAK,QAAQ;AAErB;AAAA,MACF;AAAA,MAEA;AACE,cAAM,IAAI,WAAW,sBAAuB,KAAa,IAAI,IAAI;AAAA,IACrE;AAAA,EACF;AAEA,QAAM,cAAc;AAAA,IAClB,CAAC,UAA+B;AAC9B,UAAI,MAAM;AAAkB;AAE5B,UAAI,QAAQ,KAAK,SAAS,qBAAqB;AAC7C,YAAI;AAEJ,YAAI;AACF,iBAAO,IAAI,IAAI,0BAA0B,IAAI,EAAE,EAAE;AAAA,QACnD,SAAS,OAAO;AACd,kBAAQ,MAAM,+BAA+B,IAAI,IAAI,KAAK;AAAA,QAC5D;AAEA,YAAI,QAAQ,QAAQ,SAAS,MAAM;AACjC,gBAAM,eAAe;AACrB,gBAAM,OAAO,MAAM;AAEnB,yBAAe,KAAK,SAAS,cAAc,IAAI,GAAI;AAAA,YACjD,UAAU;AAAA,YACV;AAAA,UACF,CAAC;AAED,cAAI,KAAK,SAAS,SAAS;AAAM,iBAAK,QAAQ,UAAU,CAAC,GAAG,IAAI,IAAI;AAAA,QACtE;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,MAAM,MAAM,KAAK;AAAA,EACpB;AAEA,QAAM,MAAM,QAAQ,OAAO,EAAE,MAAM,QAAQ,SAAS,YAAY,IAAI,CAAC,MAAM,QAAQ,WAAW,CAAC;AAE/F,SAAO;AACT;","names":[]}
@@ -11,7 +11,9 @@ function ListControlValue({
11
11
  useEffect(() => {
12
12
  if (control == null || data == null)
13
13
  return;
14
- setControls(control.setItemsControl(data));
14
+ const childControls = control.childControls(data.map((item) => item.id));
15
+ control.setChildControls(childControls);
16
+ setControls(childControls);
15
17
  }, [data, control]);
16
18
  return (data ?? []).reduce(
17
19
  (renderFn, item) => (listControlValue) => /* @__PURE__ */ jsx(
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/list.tsx"],"sourcesContent":["import { useEffect, useState } from 'react'\nimport { ListControl, ListControlData, ListControlDefinition } from '../../../controls'\nimport { AnyPropController } from '../../../prop-controllers/instances'\nimport { ControlDefinitionValue, ControlValue } from './control'\n\ntype ListControlItemValue<T extends ListControlDefinition> = ControlDefinitionValue<\n T['config']['type']\n>\n\nexport type ListControlValue<T extends ListControlDefinition> = ListControlItemValue<T>[]\n\ntype ListControlValueProps<T extends ListControlDefinition> = {\n definition: T\n data: ListControlData<T> | undefined\n children(value: ListControlValue<T>): JSX.Element\n control: ListControl\n}\n\nexport function ListControlValue<T extends ListControlDefinition>({\n definition,\n data,\n children,\n control,\n}: ListControlValueProps<T>): JSX.Element {\n const [controls, setControls] = useState<Map<string, AnyPropController> | undefined>(new Map())\n\n useEffect(() => {\n if (control == null || data == null) return\n\n // This is not ideal because we're setting the itemsControl from the ListControlValue.\n // This is because right now we don't have a subscribeToValue function inside the control.\n // We can improve this by adding the subscribeToValue to createPropController and by\n // moving the setItemsControl to the control itself.\n setControls(control.setItemsControl(data))\n }, [data, control])\n\n return (data ?? []).reduce(\n (renderFn, item) => listControlValue =>\n (\n <ControlValue\n definition={definition.config.type}\n data={item.value}\n control={controls?.get(item.id)}\n >\n {value => renderFn([value as ListControlItemValue<T>, ...listControlValue])}\n </ControlValue>\n ),\n children,\n )([])\n}\n"],"mappings":"AAuCQ;AAvCR,SAAS,WAAW,gBAAgB;AAGpC,SAAiC,oBAAoB;AAe9C,SAAS,iBAAkD;AAAA,EAChE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA0C;AACxC,QAAM,CAAC,UAAU,WAAW,IAAI,SAAqD,oBAAI,IAAI,CAAC;AAE9F,YAAU,MAAM;AACd,QAAI,WAAW,QAAQ,QAAQ;AAAM;AAMrC,gBAAY,QAAQ,gBAAgB,IAAI,CAAC;AAAA,EAC3C,GAAG,CAAC,MAAM,OAAO,CAAC;AAElB,UAAQ,QAAQ,CAAC,GAAG;AAAA,IAClB,CAAC,UAAU,SAAS,sBAEhB;AAAA,MAAC;AAAA;AAAA,QACC,YAAY,WAAW,OAAO;AAAA,QAC9B,MAAM,KAAK;AAAA,QACX,SAAS,UAAU,IAAI,KAAK,EAAE;AAAA,QAE7B,qBAAS,SAAS,CAAC,OAAkC,GAAG,gBAAgB,CAAC;AAAA;AAAA,IAC5E;AAAA,IAEJ;AAAA,EACF,EAAE,CAAC,CAAC;AACN;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/list.tsx"],"sourcesContent":["import { useEffect, useState } from 'react'\n\nimport { ControlInstance, type DataType, type ResolvedValueType } from '@makeswift/controls'\n\nimport { ListDefinition, ListControl } from '../../../controls'\n\nimport { ControlValue } from './control'\n\ntype ListControlValueProps = {\n definition: ListDefinition\n data: DataType<ListDefinition> | undefined\n children(value: ResolvedValueType<ListDefinition>): JSX.Element\n control: ListControl\n}\n\nexport function ListControlValue({\n definition,\n data,\n children,\n control,\n}: ListControlValueProps): JSX.Element {\n const [controls, setControls] = useState<Map<string, ControlInstance> | undefined>(new Map())\n\n useEffect(() => {\n if (control == null || data == null) return\n\n // This is not ideal because we're setting the itemsControl from the ListControlValue.\n // This is because right now we don't have a subscribeToValue function inside the control.\n // We can improve this by adding the subscribeToValue to createPropController and by\n // moving the setItemsControl to the control itself.\n const childControls = control.childControls(data.map(item => item.id))\n control.setChildControls(childControls)\n setControls(childControls)\n }, [data, control])\n\n return (data ?? []).reduce(\n (renderFn, item) => listControlValue => (\n <ControlValue\n definition={definition.config.type}\n data={item.value}\n control={controls?.get(item.id)}\n >\n {value => renderFn([value, ...listControlValue])}\n </ControlValue>\n ),\n children,\n )([])\n}\n"],"mappings":"AAqCM;AArCN,SAAS,WAAW,gBAAgB;AAMpC,SAAS,oBAAoB;AAStB,SAAS,iBAAiB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAuC;AACrC,QAAM,CAAC,UAAU,WAAW,IAAI,SAAmD,oBAAI,IAAI,CAAC;AAE5F,YAAU,MAAM;AACd,QAAI,WAAW,QAAQ,QAAQ;AAAM;AAMrC,UAAM,gBAAgB,QAAQ,cAAc,KAAK,IAAI,UAAQ,KAAK,EAAE,CAAC;AACrE,YAAQ,iBAAiB,aAAa;AACtC,gBAAY,aAAa;AAAA,EAC3B,GAAG,CAAC,MAAM,OAAO,CAAC;AAElB,UAAQ,QAAQ,CAAC,GAAG;AAAA,IAClB,CAAC,UAAU,SAAS,sBAClB;AAAA,MAAC;AAAA;AAAA,QACC,YAAY,WAAW,OAAO;AAAA,QAC9B,MAAM,KAAK;AAAA,QACX,SAAS,UAAU,IAAI,KAAK,EAAE;AAAA,QAE7B,qBAAS,SAAS,CAAC,OAAO,GAAG,gBAAgB,CAAC;AAAA;AAAA,IACjD;AAAA,IAEF;AAAA,EACF,EAAE,CAAC,CAAC;AACN;","names":[]}
@@ -1,11 +1,5 @@
1
- import { match } from "ts-pattern";
2
- import {
3
- NumberControlDataTypeKey,
4
- NumberControlDataTypeValueV1
5
- } from "@makeswift/controls";
6
1
  function useNumber(data, definition) {
7
- const value = match(data).with({ [NumberControlDataTypeKey]: NumberControlDataTypeValueV1 }, (val) => val.value).otherwise((val) => val) ?? definition.config.defaultValue;
8
- return value;
2
+ return definition.fromData(data) ?? definition.config.defaultValue;
9
3
  }
10
4
  export {
11
5
  useNumber
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/number.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n NumberControlData,\n NumberControlDataTypeKey,\n NumberControlDataTypeValueV1,\n NumberControlDefinition,\n} from '@makeswift/controls'\n\nexport type NumberControlValue<T extends NumberControlDefinition> =\n undefined extends T['config']['defaultValue'] ? number | undefined : number\n\nexport function useNumber<T extends NumberControlDefinition>(\n data: NumberControlData | undefined,\n definition: T,\n): NumberControlValue<T> {\n const value: number | undefined =\n match(data)\n .with({ [NumberControlDataTypeKey]: NumberControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as NumberControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,UACd,MACA,YACuB;AACvB,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,wBAAwB,GAAG,6BAA6B,GAAG,SAAO,IAAI,KAAK,EACnF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/number.ts"],"sourcesContent":["import { type DataType, type ResolvedValueType } from '@makeswift/controls'\n\nimport { NumberDefinition } from '../../../controls'\n\nexport function useNumber(\n data: DataType<NumberDefinition> | undefined,\n definition: NumberDefinition,\n): ResolvedValueType<NumberDefinition> {\n return definition.fromData(data) ?? definition.config.defaultValue\n}\n"],"mappings":"AAIO,SAAS,UACd,MACA,YACqC;AACrC,SAAO,WAAW,SAAS,IAAI,KAAK,WAAW,OAAO;AACxD;","names":[]}
@@ -11,22 +11,18 @@ import {
11
11
  useState
12
12
  } from "react";
13
13
  import { createEditor } from "slate";
14
- import { Slate, Editable, withReact, ReactEditor } from "slate-react";
14
+ import { Slate as SlateReact, Editable, withReact, ReactEditor } from "slate-react";
15
+ import { Slate, richTextDTOtoDAO } from "@makeswift/controls";
15
16
  import { useBuilderEditMode } from "../../..";
16
- import { richTextDTOtoDAO } from "../../../../../controls";
17
- import {
18
- BlockType,
19
- withBlock,
20
- withTypography,
21
- withBuilder,
22
- onKeyDown
23
- } from "../../../../../slate";
17
+ import { withBlock, withTypography, withBuilder, onKeyDown } from "../../../../../slate";
24
18
  import { BuilderEditMode } from "../../../../../state/modules/builder-edit-mode";
25
19
  import { pollBoxModel } from "../../../poll-box-model";
26
20
  import { Element, Leaf } from "../components";
27
21
  import { useSyncDOMSelection } from "./useSyncDOMSelection";
28
22
  import { useSyncWithBuilder } from "./useSyncWithBuilder";
29
- const defaultText = [{ type: BlockType.Paragraph, children: [{ text: "" }] }];
23
+ const defaultText = [
24
+ { type: Slate.BlockType.Paragraph, children: [{ text: "" }] }
25
+ ];
30
26
  const EditableText = forwardRef(function EditableText2({ id, text, width, margin }, ref) {
31
27
  const [editor] = useState(() => withBlock(withTypography(withBuilder(withReact(createEditor())))));
32
28
  const [isPreservingDOMSElection, setIsPreservingDOMSelection] = useState(false);
@@ -83,7 +79,7 @@ const EditableText = forwardRef(function EditableText2({ id, text, width, margin
83
79
  setIsPreservingDOMSelection(false);
84
80
  ReactEditor.deselect(editor);
85
81
  }, []);
86
- return /* @__PURE__ */ jsx(Slate, { editor, value: initialValue, onChange: delaySync, children: /* @__PURE__ */ jsx(
82
+ return /* @__PURE__ */ jsx(SlateReact, { editor, value: initialValue, onChange: delaySync, children: /* @__PURE__ */ jsx(
87
83
  Editable,
88
84
  {
89
85
  id,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/runtimes/react/controls/rich-text/EditableText/editable-text.tsx"],"sourcesContent":["import { 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, Editable, withReact, ReactEditor } from 'slate-react'\nimport { useBuilderEditMode } from '../../..'\nimport { richTextDTOtoDAO, RichTextValue } from '../../../../../controls'\nimport { DescriptorsPropControllers } from '../../../../../prop-controllers/instances'\nimport {\n RichTextDAO,\n BlockType,\n withBlock,\n withTypography,\n withBuilder,\n onKeyDown,\n} 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: RichTextDAO = [{ type: BlockType.Paragraph, children: [{ text: '' }] }]\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 <Slate 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 </Slate>\n )\n})\n\nexport default EditableText\n"],"mappings":"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","names":["EditableText"]}
1
+ {"version":3,"sources":["../../../../../../../src/runtimes/react/controls/rich-text/EditableText/editable-text.tsx"],"sourcesContent":["import { 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":"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","names":["EditableText"]}
@@ -1,6 +1,6 @@
1
1
  import { useState, useEffect, useCallback } from "react";
2
+ import { richTextDTOtoDAO, richTextDTOtoSelection } from "@makeswift/controls";
2
3
  import { useIsInBuilder } from "../../../../../react";
3
- import { richTextDTOtoDAO, richTextDTOtoSelection } from "../../../../../controls";
4
4
  import deepEqual from "../../../../../utils/deepEqual";
5
5
  const COMMIT_DEBOUNCE_DELAY = 500;
6
6
  function useSyncWithBuilder(editor, text) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.tsx"],"sourcesContent":["import { useState, useEffect, useCallback } from 'react'\nimport { Editor } from 'slate'\nimport { useIsInBuilder } from '../../../../../react'\nimport { RichTextValue, richTextDTOtoDAO, richTextDTOtoSelection } from '../../../../../controls'\nimport deepEqual from '../../../../../utils/deepEqual'\n\nconst COMMIT_DEBOUNCE_DELAY = 500\n\n/**\n * Compare new prop value with current editor and update editor\n * if the values are not equal.\n */\nexport function useSyncWithBuilder(editor: Editor, text?: RichTextValue) {\n const [shouldCommit, setShouldCommit] = useState(true)\n const isInBuilder = useIsInBuilder()\n\n useEffect(() => {\n if (shouldCommit && text && isInBuilder) {\n const nextValue = richTextDTOtoDAO(text)\n const nextSelection = richTextDTOtoSelection(text)\n if (!deepEqual(editor.children, nextValue) || !deepEqual(editor.selection, nextSelection)) {\n editor.children = nextValue\n editor.selection = nextSelection\n editor.onChange()\n }\n }\n }, [editor, shouldCommit, text])\n\n useEffect(() => {\n if (shouldCommit) return\n\n const timeoutId = window.setTimeout(() => {\n setShouldCommit(true)\n }, COMMIT_DEBOUNCE_DELAY)\n\n return () => {\n window.clearTimeout(timeoutId)\n }\n }, [shouldCommit])\n\n return useCallback(() => setShouldCommit(false), [])\n}\n"],"mappings":"AAAA,SAAS,UAAU,WAAW,mBAAmB;AAEjD,SAAS,sBAAsB;AAC/B,SAAwB,kBAAkB,8BAA8B;AACxE,OAAO,eAAe;AAEtB,MAAM,wBAAwB;AAMvB,SAAS,mBAAmB,QAAgB,MAAsB;AACvE,QAAM,CAAC,cAAc,eAAe,IAAI,SAAS,IAAI;AACrD,QAAM,cAAc,eAAe;AAEnC,YAAU,MAAM;AACd,QAAI,gBAAgB,QAAQ,aAAa;AACvC,YAAM,YAAY,iBAAiB,IAAI;AACvC,YAAM,gBAAgB,uBAAuB,IAAI;AACjD,UAAI,CAAC,UAAU,OAAO,UAAU,SAAS,KAAK,CAAC,UAAU,OAAO,WAAW,aAAa,GAAG;AACzF,eAAO,WAAW;AAClB,eAAO,YAAY;AACnB,eAAO,SAAS;AAAA,MAClB;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,cAAc,IAAI,CAAC;AAE/B,YAAU,MAAM;AACd,QAAI;AAAc;AAElB,UAAM,YAAY,OAAO,WAAW,MAAM;AACxC,sBAAgB,IAAI;AAAA,IACtB,GAAG,qBAAqB;AAExB,WAAO,MAAM;AACX,aAAO,aAAa,SAAS;AAAA,IAC/B;AAAA,EACF,GAAG,CAAC,YAAY,CAAC;AAEjB,SAAO,YAAY,MAAM,gBAAgB,KAAK,GAAG,CAAC,CAAC;AACrD;","names":[]}
1
+ {"version":3,"sources":["../../../../../../../src/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.tsx"],"sourcesContent":["import { useState, useEffect, useCallback } from 'react'\nimport { Editor } from 'slate'\nimport { type RichTextDTO, richTextDTOtoDAO, richTextDTOtoSelection } from '@makeswift/controls'\n\nimport { useIsInBuilder } from '../../../../../react'\nimport deepEqual from '../../../../../utils/deepEqual'\n\nconst COMMIT_DEBOUNCE_DELAY = 500\n\n/**\n * Compare new prop value with current editor and update editor\n * if the values are not equal.\n */\nexport function useSyncWithBuilder(editor: Editor, text?: RichTextDTO) {\n const [shouldCommit, setShouldCommit] = useState(true)\n const isInBuilder = useIsInBuilder()\n\n useEffect(() => {\n if (shouldCommit && text && isInBuilder) {\n const nextValue = richTextDTOtoDAO(text)\n const nextSelection = richTextDTOtoSelection(text)\n if (!deepEqual(editor.children, nextValue) || !deepEqual(editor.selection, nextSelection)) {\n editor.children = nextValue\n editor.selection = nextSelection\n editor.onChange()\n }\n }\n }, [editor, shouldCommit, text])\n\n useEffect(() => {\n if (shouldCommit) return\n\n const timeoutId = window.setTimeout(() => {\n setShouldCommit(true)\n }, COMMIT_DEBOUNCE_DELAY)\n\n return () => {\n window.clearTimeout(timeoutId)\n }\n }, [shouldCommit])\n\n return useCallback(() => setShouldCommit(false), [])\n}\n"],"mappings":"AAAA,SAAS,UAAU,WAAW,mBAAmB;AAEjD,SAA2B,kBAAkB,8BAA8B;AAE3E,SAAS,sBAAsB;AAC/B,OAAO,eAAe;AAEtB,MAAM,wBAAwB;AAMvB,SAAS,mBAAmB,QAAgB,MAAoB;AACrE,QAAM,CAAC,cAAc,eAAe,IAAI,SAAS,IAAI;AACrD,QAAM,cAAc,eAAe;AAEnC,YAAU,MAAM;AACd,QAAI,gBAAgB,QAAQ,aAAa;AACvC,YAAM,YAAY,iBAAiB,IAAI;AACvC,YAAM,gBAAgB,uBAAuB,IAAI;AACjD,UAAI,CAAC,UAAU,OAAO,UAAU,SAAS,KAAK,CAAC,UAAU,OAAO,WAAW,aAAa,GAAG;AACzF,eAAO,WAAW;AAClB,eAAO,YAAY;AACnB,eAAO,SAAS;AAAA,MAClB;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,cAAc,IAAI,CAAC;AAE/B,YAAU,MAAM;AACd,QAAI;AAAc;AAElB,UAAM,YAAY,OAAO,WAAW,MAAM;AACxC,sBAAgB,IAAI;AAAA,IACtB,GAAG,qBAAqB;AAExB,WAAO,MAAM;AACX,aAAO,aAAa,SAAS;AAAA,IAC/B;AAAA,EACF,GAAG,CAAC,YAAY,CAAC;AAEjB,SAAO,YAAY,MAAM,gBAAgB,KAAK,GAAG,CAAC,CAAC;AACrD;","names":[]}
@@ -1,8 +1,8 @@
1
1
  import { Fragment, jsx } from "react/jsx-runtime";
2
2
  import { cx } from "@emotion/css";
3
3
  import { forwardRef } from "react";
4
+ import { Slate, richTextDTOtoDAO } from "@makeswift/controls";
4
5
  import { useResponsiveStyle } from "../../../../components/utils/responsive-style";
5
- import { richTextDTOtoDAO } from "../../../../controls";
6
6
  import { InlineType, BlockType } from "../../../../slate";
7
7
  import { useStyle } from "../../use-style";
8
8
  import useEnhancedTypography, { useTypographyClassName } from "../typography";
@@ -106,14 +106,9 @@ function BlockElement({ descendant }) {
106
106
  return null;
107
107
  }
108
108
  }
109
- function isText(node) {
110
- if (typeof node === "object" && "text" in node)
111
- return true;
112
- return false;
113
- }
114
109
  function Descendants({ descendants }) {
115
110
  return /* @__PURE__ */ jsx(Fragment, { children: descendants.map((descendant, index) => {
116
- if (isText(descendant)) {
111
+ if (Slate.isText(descendant)) {
117
112
  return /* @__PURE__ */ jsx(TextElement, { descendant }, index);
118
113
  }
119
114
  switch (descendant.type) {