@makeswift/runtime 0.19.4 → 0.20.0-canary.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 (889) 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/components/ElementData.js +24 -3
  80. package/dist/cjs/runtimes/react/components/ElementData.js.map +1 -1
  81. package/dist/cjs/runtimes/react/controls/checkbox.js +1 -4
  82. package/dist/cjs/runtimes/react/controls/checkbox.js.map +1 -1
  83. package/dist/cjs/runtimes/react/controls/color.js.map +1 -1
  84. package/dist/cjs/runtimes/react/controls/combobox.js.map +1 -1
  85. package/dist/cjs/runtimes/react/controls/control.js +48 -39
  86. package/dist/cjs/runtimes/react/controls/control.js.map +1 -1
  87. package/dist/cjs/runtimes/react/controls/icon-radio-group.js.map +1 -1
  88. package/dist/cjs/runtimes/react/controls/image.js +6 -10
  89. package/dist/cjs/runtimes/react/controls/image.js.map +1 -1
  90. package/dist/cjs/runtimes/react/controls/link.js.map +1 -1
  91. package/dist/cjs/runtimes/react/controls/list.js +3 -1
  92. package/dist/cjs/runtimes/react/controls/list.js.map +1 -1
  93. package/dist/cjs/runtimes/react/controls/number.js +1 -4
  94. package/dist/cjs/runtimes/react/controls/number.js.map +1 -1
  95. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js +4 -2
  96. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  97. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +1 -1
  98. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -1
  99. package/dist/cjs/runtimes/react/controls/rich-text/ReadOnlyText.js +2 -7
  100. package/dist/cjs/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -1
  101. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/block.js +14 -14
  102. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/block.js.map +1 -1
  103. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/element.js +7 -23
  104. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/element.js.map +1 -1
  105. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js +1 -1
  106. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -1
  107. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  108. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js +3 -16
  109. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js.map +1 -1
  110. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -1
  111. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -1
  112. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +8 -8
  113. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  114. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js +2 -2
  115. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js.map +1 -1
  116. package/dist/cjs/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js +7 -13
  117. package/dist/cjs/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -1
  118. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -2
  119. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  120. package/dist/cjs/runtimes/react/controls/select.js +1 -1
  121. package/dist/cjs/runtimes/react/controls/select.js.map +1 -1
  122. package/dist/cjs/runtimes/react/controls/shape.js +2 -7
  123. package/dist/cjs/runtimes/react/controls/shape.js.map +1 -1
  124. package/dist/cjs/runtimes/react/controls/slot.js +13 -5
  125. package/dist/cjs/runtimes/react/controls/slot.js.map +1 -1
  126. package/dist/cjs/runtimes/react/controls/style-v2.js +6 -11
  127. package/dist/cjs/runtimes/react/controls/style-v2.js.map +1 -1
  128. package/dist/cjs/runtimes/react/controls/style.js +8 -8
  129. package/dist/cjs/runtimes/react/controls/style.js.map +1 -1
  130. package/dist/cjs/runtimes/react/controls/text-area.js +1 -4
  131. package/dist/cjs/runtimes/react/controls/text-area.js.map +1 -1
  132. package/dist/cjs/runtimes/react/controls/text-input.js +1 -4
  133. package/dist/cjs/runtimes/react/controls/text-input.js.map +1 -1
  134. package/dist/cjs/runtimes/react/controls/typography.js.map +1 -1
  135. package/dist/cjs/runtimes/react/controls.js +79 -73
  136. package/dist/cjs/runtimes/react/controls.js.map +1 -1
  137. package/dist/cjs/runtimes/react/hooks/use-store.js +2 -2
  138. package/dist/cjs/runtimes/react/hooks/use-store.js.map +1 -1
  139. package/dist/cjs/runtimes/react/poll-box-model.js +1 -1
  140. package/dist/cjs/runtimes/react/poll-box-model.js.map +1 -1
  141. package/dist/cjs/runtimes/react/react-runtime.js +3 -32
  142. package/dist/cjs/runtimes/react/react-runtime.js.map +1 -1
  143. package/dist/cjs/runtimes/react/runtime-core.js +67 -0
  144. package/dist/cjs/runtimes/react/runtime-core.js.map +1 -0
  145. package/dist/cjs/slate/BlockPlugin/clearBlockKeyForDevice.js +2 -2
  146. package/dist/cjs/slate/BlockPlugin/clearBlockKeyForDevice.js.map +1 -1
  147. package/dist/cjs/slate/BlockPlugin/indent.js +3 -2
  148. package/dist/cjs/slate/BlockPlugin/indent.js.map +1 -1
  149. package/dist/cjs/slate/BlockPlugin/index.js +17 -15
  150. package/dist/cjs/slate/BlockPlugin/index.js.map +1 -1
  151. package/dist/cjs/slate/BlockPlugin/setBlockKeyForDevice.js +2 -2
  152. package/dist/cjs/slate/BlockPlugin/setBlockKeyForDevice.js.map +1 -1
  153. package/dist/cjs/slate/BlockPlugin/toggleList.js +2 -2
  154. package/dist/cjs/slate/BlockPlugin/toggleList.js.map +1 -1
  155. package/dist/cjs/slate/BlockPlugin/types.js.map +1 -1
  156. package/dist/cjs/slate/BlockPlugin/unwrapInline.js +2 -2
  157. package/dist/cjs/slate/BlockPlugin/unwrapInline.js.map +1 -1
  158. package/dist/cjs/slate/BlockPlugin/unwrapList.js +3 -4
  159. package/dist/cjs/slate/BlockPlugin/unwrapList.js.map +1 -1
  160. package/dist/cjs/slate/BlockPlugin/utils/getSelectedListItems.js +2 -2
  161. package/dist/cjs/slate/BlockPlugin/utils/getSelectedListItems.js.map +1 -1
  162. package/dist/cjs/slate/BlockPlugin/wrapInline.js.map +1 -1
  163. package/dist/cjs/slate/BlockPlugin/wrapList.js +4 -3
  164. package/dist/cjs/slate/BlockPlugin/wrapList.js.map +1 -1
  165. package/dist/cjs/slate/BuilderPlugin/index.js +3 -3
  166. package/dist/cjs/slate/BuilderPlugin/index.js.map +1 -1
  167. package/dist/cjs/slate/InlineModePlugin/index.js +4 -5
  168. package/dist/cjs/slate/InlineModePlugin/index.js.map +1 -1
  169. package/dist/cjs/slate/InlinePlugin/getValue.js +4 -4
  170. package/dist/cjs/slate/InlinePlugin/getValue.js.map +1 -1
  171. package/dist/cjs/slate/InlinePlugin/index.js +10 -14
  172. package/dist/cjs/slate/InlinePlugin/index.js.map +1 -1
  173. package/dist/cjs/slate/InlinePlugin/onChange.js +3 -3
  174. package/dist/cjs/slate/InlinePlugin/onChange.js.map +1 -1
  175. package/dist/cjs/slate/InlinePlugin/types.js +9 -6
  176. package/dist/cjs/slate/InlinePlugin/types.js.map +1 -1
  177. package/dist/cjs/slate/LinkPlugin/getValue.js +4 -5
  178. package/dist/cjs/slate/LinkPlugin/getValue.js.map +1 -1
  179. package/dist/cjs/slate/LinkPlugin/index.js +8 -10
  180. package/dist/cjs/slate/LinkPlugin/index.js.map +1 -1
  181. package/dist/cjs/slate/LinkPlugin/onChange.js +6 -6
  182. package/dist/cjs/slate/LinkPlugin/onChange.js.map +1 -1
  183. package/dist/cjs/slate/LinkPlugin/types.js +3 -8
  184. package/dist/cjs/slate/LinkPlugin/types.js.map +1 -1
  185. package/dist/cjs/slate/TextAlignPlugin/getValue.js +2 -2
  186. package/dist/cjs/slate/TextAlignPlugin/getValue.js.map +1 -1
  187. package/dist/cjs/slate/TextAlignPlugin/index.js +12 -12
  188. package/dist/cjs/slate/TextAlignPlugin/index.js.map +1 -1
  189. package/dist/cjs/slate/TypographyPlugin/clearActiveTypographyStyle.js.map +1 -1
  190. package/dist/cjs/slate/TypographyPlugin/clearDeviceActiveTypography.js.map +1 -1
  191. package/dist/cjs/slate/TypographyPlugin/detachActiveTypography.js.map +1 -1
  192. package/dist/cjs/slate/TypographyPlugin/getValue.js.map +1 -1
  193. package/dist/cjs/slate/TypographyPlugin/index.js +4 -4
  194. package/dist/cjs/slate/TypographyPlugin/index.js.map +1 -1
  195. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyDown.js.map +1 -1
  196. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyUp.js +6 -3
  197. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyUp.js.map +1 -1
  198. package/dist/cjs/slate/TypographyPlugin/setActiveTypographyStyle.js.map +1 -1
  199. package/dist/cjs/slate/index.js +8 -8
  200. package/dist/cjs/slate/index.js.map +1 -1
  201. package/dist/cjs/slate/selectors.js +15 -12
  202. package/dist/cjs/slate/selectors.js.map +1 -1
  203. package/dist/cjs/slate/types.js +5 -36
  204. package/dist/cjs/slate/types.js.map +1 -1
  205. package/dist/cjs/slate/utils/editor.js +3 -3
  206. package/dist/cjs/slate/utils/editor.js.map +1 -1
  207. package/dist/cjs/slate/utils/element.js +5 -27
  208. package/dist/cjs/slate/utils/element.js.map +1 -1
  209. package/dist/cjs/slate/utils/responsive.js.map +1 -1
  210. package/dist/cjs/slate/utils/toText.js +16 -52
  211. package/dist/cjs/slate/utils/toText.js.map +1 -1
  212. package/dist/cjs/state/actions.js.map +1 -1
  213. package/dist/cjs/state/modules/box-models.js.map +1 -1
  214. package/dist/cjs/state/modules/breakpoints.js +1 -1
  215. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  216. package/dist/cjs/state/modules/prop-controller-handles.js.map +1 -1
  217. package/dist/cjs/state/modules/read-only-documents.js +2 -4
  218. package/dist/cjs/state/modules/read-only-documents.js.map +1 -1
  219. package/dist/cjs/state/react-builder-preview.js +10 -7
  220. package/dist/cjs/state/react-builder-preview.js.map +1 -1
  221. package/dist/cjs/state/react-page.js +10 -41
  222. package/dist/cjs/state/react-page.js.map +1 -1
  223. package/dist/esm/api/graphql/generated/types.js.map +1 -1
  224. package/dist/esm/api/react.js.map +1 -1
  225. package/dist/esm/builder/rich-text/index.js +5 -0
  226. package/dist/esm/builder/rich-text/index.js.map +1 -0
  227. package/dist/esm/builder/serialization/control-serialization.js +66 -37
  228. package/dist/esm/builder/serialization/control-serialization.js.map +1 -1
  229. package/dist/esm/components/builtin/Button/Button.js.map +1 -1
  230. package/dist/esm/components/builtin/Carousel/Carousel.js +1 -1
  231. package/dist/esm/components/builtin/Carousel/Carousel.js.map +1 -1
  232. package/dist/esm/components/builtin/Countdown/Countdown.js.map +1 -1
  233. package/dist/esm/components/builtin/Divider/Divider.js.map +1 -1
  234. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  235. package/dist/esm/components/builtin/Form/context/FormContext.js.map +1 -1
  236. package/dist/esm/components/builtin/Image/Image.js +1 -1
  237. package/dist/esm/components/builtin/Image/Image.js.map +1 -1
  238. package/dist/esm/components/builtin/Navigation/Navigation.js.map +1 -1
  239. package/dist/esm/components/builtin/Navigation/components/MobileMenu/index.js.map +1 -1
  240. package/dist/esm/components/builtin/SocialLinks/SocialLinks.js.map +1 -1
  241. package/dist/esm/components/builtin/Text/register.js.map +1 -1
  242. package/dist/esm/components/builtin/register.js.map +1 -1
  243. package/dist/esm/components/hooks/useMediaQuery.js +1 -1
  244. package/dist/esm/components/hooks/useMediaQuery.js.map +1 -1
  245. package/dist/esm/components/hooks/useResponsiveColor.js +3 -1
  246. package/dist/esm/components/hooks/useResponsiveColor.js.map +1 -1
  247. package/dist/esm/components/shared/Link/index.js +1 -1
  248. package/dist/esm/components/shared/Link/index.js.map +1 -1
  249. package/dist/esm/components/utils/responsive-style.js +1 -1
  250. package/dist/esm/components/utils/responsive-style.js.map +1 -1
  251. package/dist/esm/controls/control.js +14 -109
  252. package/dist/esm/controls/control.js.map +1 -1
  253. package/dist/esm/controls/index.js +82 -10
  254. package/dist/esm/controls/index.js.map +1 -1
  255. package/dist/esm/controls/link.js +18 -0
  256. package/dist/esm/controls/link.js.map +1 -0
  257. package/dist/esm/controls/rich-text/control.js +76 -0
  258. package/dist/esm/controls/rich-text/control.js.map +1 -0
  259. package/dist/esm/controls/rich-text/index.js +0 -3
  260. package/dist/esm/controls/rich-text/index.js.map +1 -1
  261. package/dist/esm/controls/rich-text/rich-text.js +14 -66
  262. package/dist/esm/controls/rich-text/rich-text.js.map +1 -1
  263. package/dist/esm/controls/rich-text-v2/control.js +117 -0
  264. package/dist/esm/controls/rich-text-v2/control.js.map +1 -0
  265. package/dist/esm/controls/rich-text-v2/index.js +0 -2
  266. package/dist/esm/controls/rich-text-v2/index.js.map +1 -1
  267. package/dist/esm/controls/rich-text-v2/plugin.js +2 -2
  268. package/dist/esm/controls/rich-text-v2/plugin.js.map +1 -1
  269. package/dist/esm/controls/rich-text-v2/rich-text-v2.js +111 -116
  270. package/dist/esm/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  271. package/dist/esm/controls/rich-text-v2/translation.js +33 -46
  272. package/dist/esm/controls/rich-text-v2/translation.js.map +1 -1
  273. package/dist/esm/controls/slot.js +13 -54
  274. package/dist/esm/controls/slot.js.map +1 -1
  275. package/dist/esm/controls/style-v2/index.js +2 -0
  276. package/dist/esm/controls/style-v2/index.js.map +1 -0
  277. package/dist/esm/controls/style-v2/style-v2.js +28 -0
  278. package/dist/esm/controls/style-v2/style-v2.js.map +1 -0
  279. package/dist/esm/core/index.js +11 -0
  280. package/dist/esm/core/index.js.map +1 -0
  281. package/dist/esm/jest-setup.js +3 -0
  282. package/dist/esm/jest-setup.js.map +1 -1
  283. package/dist/esm/next/api-handler/handlers/manifest.js +1 -1
  284. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +19 -6
  285. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  286. package/dist/esm/prop-controllers/copy.js +7 -5
  287. package/dist/esm/prop-controllers/copy.js.map +1 -1
  288. package/dist/esm/prop-controllers/deleted.js.map +1 -1
  289. package/dist/esm/prop-controllers/descriptors.js +7 -5
  290. package/dist/esm/prop-controllers/descriptors.js.map +1 -1
  291. package/dist/esm/prop-controllers/index.js +1 -2
  292. package/dist/esm/prop-controllers/index.js.map +1 -1
  293. package/dist/esm/prop-controllers/instances.js +15 -107
  294. package/dist/esm/prop-controllers/instances.js.map +1 -1
  295. package/dist/esm/prop-controllers/introspection.js +28 -131
  296. package/dist/esm/prop-controllers/introspection.js.map +1 -1
  297. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  298. package/dist/esm/runtimes/react/components/ElementData.js +24 -3
  299. package/dist/esm/runtimes/react/components/ElementData.js.map +1 -1
  300. package/dist/esm/runtimes/react/controls/checkbox.js +1 -7
  301. package/dist/esm/runtimes/react/controls/checkbox.js.map +1 -1
  302. package/dist/esm/runtimes/react/controls/color.js.map +1 -1
  303. package/dist/esm/runtimes/react/controls/combobox.js.map +1 -1
  304. package/dist/esm/runtimes/react/controls/control.js +66 -58
  305. package/dist/esm/runtimes/react/controls/control.js.map +1 -1
  306. package/dist/esm/runtimes/react/controls/icon-radio-group.js.map +1 -1
  307. package/dist/esm/runtimes/react/controls/image.js +6 -12
  308. package/dist/esm/runtimes/react/controls/image.js.map +1 -1
  309. package/dist/esm/runtimes/react/controls/link.js.map +1 -1
  310. package/dist/esm/runtimes/react/controls/list.js +3 -1
  311. package/dist/esm/runtimes/react/controls/list.js.map +1 -1
  312. package/dist/esm/runtimes/react/controls/number.js +1 -7
  313. package/dist/esm/runtimes/react/controls/number.js.map +1 -1
  314. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js +7 -11
  315. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  316. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +1 -1
  317. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -1
  318. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js +2 -7
  319. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -1
  320. package/dist/esm/runtimes/react/controls/rich-text/components/Element/block.js +1 -1
  321. package/dist/esm/runtimes/react/controls/rich-text/components/Element/block.js.map +1 -1
  322. package/dist/esm/runtimes/react/controls/rich-text/components/Element/element.js +7 -23
  323. package/dist/esm/runtimes/react/controls/rich-text/components/Element/element.js.map +1 -1
  324. package/dist/esm/runtimes/react/controls/rich-text/components/Element/inline.js +1 -1
  325. package/dist/esm/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -1
  326. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  327. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js +5 -27
  328. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js.map +1 -1
  329. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -1
  330. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -1
  331. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +7 -7
  332. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  333. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js +2 -2
  334. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js.map +1 -1
  335. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js +9 -25
  336. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -1
  337. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -4
  338. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  339. package/dist/esm/runtimes/react/controls/select.js +1 -1
  340. package/dist/esm/runtimes/react/controls/select.js.map +1 -1
  341. package/dist/esm/runtimes/react/controls/shape.js +2 -7
  342. package/dist/esm/runtimes/react/controls/shape.js.map +1 -1
  343. package/dist/esm/runtimes/react/controls/slot.js +14 -6
  344. package/dist/esm/runtimes/react/controls/slot.js.map +1 -1
  345. package/dist/esm/runtimes/react/controls/style-v2.js +6 -11
  346. package/dist/esm/runtimes/react/controls/style-v2.js.map +1 -1
  347. package/dist/esm/runtimes/react/controls/style.js +10 -10
  348. package/dist/esm/runtimes/react/controls/style.js.map +1 -1
  349. package/dist/esm/runtimes/react/controls/text-area.js +1 -7
  350. package/dist/esm/runtimes/react/controls/text-area.js.map +1 -1
  351. package/dist/esm/runtimes/react/controls/text-input.js +1 -7
  352. package/dist/esm/runtimes/react/controls/text-input.js.map +1 -1
  353. package/dist/esm/runtimes/react/controls/typography.js.map +1 -1
  354. package/dist/esm/runtimes/react/controls.js +96 -91
  355. package/dist/esm/runtimes/react/controls.js.map +1 -1
  356. package/dist/esm/runtimes/react/hooks/use-store.js +2 -2
  357. package/dist/esm/runtimes/react/hooks/use-store.js.map +1 -1
  358. package/dist/esm/runtimes/react/poll-box-model.js +1 -1
  359. package/dist/esm/runtimes/react/poll-box-model.js.map +1 -1
  360. package/dist/esm/runtimes/react/react-runtime.js +3 -40
  361. package/dist/esm/runtimes/react/react-runtime.js.map +1 -1
  362. package/dist/esm/runtimes/react/runtime-core.js +51 -0
  363. package/dist/esm/runtimes/react/runtime-core.js.map +1 -0
  364. package/dist/esm/slate/BlockPlugin/clearBlockKeyForDevice.js +2 -2
  365. package/dist/esm/slate/BlockPlugin/clearBlockKeyForDevice.js.map +1 -1
  366. package/dist/esm/slate/BlockPlugin/indent.js +3 -2
  367. package/dist/esm/slate/BlockPlugin/indent.js.map +1 -1
  368. package/dist/esm/slate/BlockPlugin/index.js +17 -15
  369. package/dist/esm/slate/BlockPlugin/index.js.map +1 -1
  370. package/dist/esm/slate/BlockPlugin/setBlockKeyForDevice.js +2 -2
  371. package/dist/esm/slate/BlockPlugin/setBlockKeyForDevice.js.map +1 -1
  372. package/dist/esm/slate/BlockPlugin/toggleList.js +2 -2
  373. package/dist/esm/slate/BlockPlugin/toggleList.js.map +1 -1
  374. package/dist/esm/slate/BlockPlugin/unwrapInline.js +2 -2
  375. package/dist/esm/slate/BlockPlugin/unwrapInline.js.map +1 -1
  376. package/dist/esm/slate/BlockPlugin/unwrapList.js +3 -4
  377. package/dist/esm/slate/BlockPlugin/unwrapList.js.map +1 -1
  378. package/dist/esm/slate/BlockPlugin/utils/getSelectedListItems.js +2 -2
  379. package/dist/esm/slate/BlockPlugin/utils/getSelectedListItems.js.map +1 -1
  380. package/dist/esm/slate/BlockPlugin/wrapInline.js.map +1 -1
  381. package/dist/esm/slate/BlockPlugin/wrapList.js +4 -3
  382. package/dist/esm/slate/BlockPlugin/wrapList.js.map +1 -1
  383. package/dist/esm/slate/BuilderPlugin/index.js +3 -3
  384. package/dist/esm/slate/BuilderPlugin/index.js.map +1 -1
  385. package/dist/esm/slate/InlineModePlugin/index.js +5 -6
  386. package/dist/esm/slate/InlineModePlugin/index.js.map +1 -1
  387. package/dist/esm/slate/InlinePlugin/getValue.js +4 -4
  388. package/dist/esm/slate/InlinePlugin/getValue.js.map +1 -1
  389. package/dist/esm/slate/InlinePlugin/index.js +9 -13
  390. package/dist/esm/slate/InlinePlugin/index.js.map +1 -1
  391. package/dist/esm/slate/InlinePlugin/onChange.js +3 -3
  392. package/dist/esm/slate/InlinePlugin/onChange.js.map +1 -1
  393. package/dist/esm/slate/InlinePlugin/types.js +9 -7
  394. package/dist/esm/slate/InlinePlugin/types.js.map +1 -1
  395. package/dist/esm/slate/LinkPlugin/getValue.js +4 -5
  396. package/dist/esm/slate/LinkPlugin/getValue.js.map +1 -1
  397. package/dist/esm/slate/LinkPlugin/index.js +8 -10
  398. package/dist/esm/slate/LinkPlugin/index.js.map +1 -1
  399. package/dist/esm/slate/LinkPlugin/onChange.js +4 -4
  400. package/dist/esm/slate/LinkPlugin/onChange.js.map +1 -1
  401. package/dist/esm/slate/LinkPlugin/types.js +3 -7
  402. package/dist/esm/slate/LinkPlugin/types.js.map +1 -1
  403. package/dist/esm/slate/TextAlignPlugin/getValue.js +2 -2
  404. package/dist/esm/slate/TextAlignPlugin/getValue.js.map +1 -1
  405. package/dist/esm/slate/TextAlignPlugin/index.js +12 -16
  406. package/dist/esm/slate/TextAlignPlugin/index.js.map +1 -1
  407. package/dist/esm/slate/TypographyPlugin/clearActiveTypographyStyle.js.map +1 -1
  408. package/dist/esm/slate/TypographyPlugin/clearDeviceActiveTypography.js.map +1 -1
  409. package/dist/esm/slate/TypographyPlugin/detachActiveTypography.js.map +1 -1
  410. package/dist/esm/slate/TypographyPlugin/getValue.js.map +1 -1
  411. package/dist/esm/slate/TypographyPlugin/index.js +5 -5
  412. package/dist/esm/slate/TypographyPlugin/index.js.map +1 -1
  413. package/dist/esm/slate/TypographyPlugin/normalizeTypographyDown.js.map +1 -1
  414. package/dist/esm/slate/TypographyPlugin/normalizeTypographyUp.js +6 -3
  415. package/dist/esm/slate/TypographyPlugin/normalizeTypographyUp.js.map +1 -1
  416. package/dist/esm/slate/TypographyPlugin/setActiveTypographyStyle.js.map +1 -1
  417. package/dist/esm/slate/index.js +4 -4
  418. package/dist/esm/slate/index.js.map +1 -1
  419. package/dist/esm/slate/selectors.js +15 -12
  420. package/dist/esm/slate/selectors.js.map +1 -1
  421. package/dist/esm/slate/types.js +4 -33
  422. package/dist/esm/slate/types.js.map +1 -1
  423. package/dist/esm/slate/utils/editor.js +3 -3
  424. package/dist/esm/slate/utils/editor.js.map +1 -1
  425. package/dist/esm/slate/utils/element.js +5 -30
  426. package/dist/esm/slate/utils/element.js.map +1 -1
  427. package/dist/esm/slate/utils/responsive.js.map +1 -1
  428. package/dist/esm/slate/utils/toText.js +16 -52
  429. package/dist/esm/slate/utils/toText.js.map +1 -1
  430. package/dist/esm/state/actions.js.map +1 -1
  431. package/dist/esm/state/modules/box-models.js.map +1 -1
  432. package/dist/esm/state/modules/breakpoints.js +1 -1
  433. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  434. package/dist/esm/state/modules/prop-controller-handles.js.map +1 -1
  435. package/dist/esm/state/modules/read-only-documents.js +3 -3
  436. package/dist/esm/state/modules/read-only-documents.js.map +1 -1
  437. package/dist/esm/state/react-builder-preview.js +10 -7
  438. package/dist/esm/state/react-builder-preview.js.map +1 -1
  439. package/dist/esm/state/react-page.js +13 -41
  440. package/dist/esm/state/react-page.js.map +1 -1
  441. package/dist/types/api/graphql/generated/types.d.ts +1 -1
  442. package/dist/types/api/graphql/generated/types.d.ts.map +1 -1
  443. package/dist/types/api/react.d.ts +1 -1
  444. package/dist/types/builder/rich-text/index.d.ts +3 -0
  445. package/dist/types/builder/rich-text/index.d.ts.map +1 -0
  446. package/dist/types/builder/serialization/control-serialization.d.ts +12 -7
  447. package/dist/types/builder/serialization/control-serialization.d.ts.map +1 -1
  448. package/dist/types/components/builtin/Box/Box.d.ts +23 -1
  449. package/dist/types/components/builtin/Box/Box.d.ts.map +1 -1
  450. package/dist/types/components/builtin/Button/Button.d.ts +3 -3
  451. package/dist/types/components/builtin/Button/Button.d.ts.map +1 -1
  452. package/dist/types/components/builtin/Carousel/Carousel.d.ts +1 -1
  453. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  454. package/dist/types/components/builtin/Countdown/Countdown.d.ts +1 -1
  455. package/dist/types/components/builtin/Countdown/Countdown.d.ts.map +1 -1
  456. package/dist/types/components/builtin/Divider/Divider.d.ts +1 -1
  457. package/dist/types/components/builtin/Divider/Divider.d.ts.map +1 -1
  458. package/dist/types/components/builtin/Form/Form.d.ts +1 -1
  459. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  460. package/dist/types/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +1 -1
  461. package/dist/types/components/builtin/Form/context/FormContext.d.ts +7 -8
  462. package/dist/types/components/builtin/Form/context/FormContext.d.ts.map +1 -1
  463. package/dist/types/components/builtin/Navigation/Navigation.d.ts +1 -1
  464. package/dist/types/components/builtin/Navigation/Navigation.d.ts.map +1 -1
  465. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts +2 -2
  466. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts.map +1 -1
  467. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts +1 -1
  468. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts.map +1 -1
  469. package/dist/types/components/builtin/Text/register.d.ts +1 -1
  470. package/dist/types/components/builtin/Text/register.d.ts.map +1 -1
  471. package/dist/types/components/builtin/register.d.ts +1 -1
  472. package/dist/types/components/builtin/register.d.ts.map +1 -1
  473. package/dist/types/components/hooks/useResponsiveColor.d.ts +1 -2
  474. package/dist/types/components/hooks/useResponsiveColor.d.ts.map +1 -1
  475. package/dist/types/components/utils/responsive-style.d.ts +2 -1
  476. package/dist/types/components/utils/responsive-style.d.ts.map +1 -1
  477. package/dist/types/components/utils/types.d.ts +2 -0
  478. package/dist/types/components/utils/types.d.ts.map +1 -1
  479. package/dist/types/controls/__tests__/fixtures/shape.d.ts +19 -8
  480. package/dist/types/controls/__tests__/fixtures/shape.d.ts.map +1 -1
  481. package/dist/types/controls/control.d.ts +28 -17
  482. package/dist/types/controls/control.d.ts.map +1 -1
  483. package/dist/types/controls/index.d.ts +6 -10
  484. package/dist/types/controls/index.d.ts.map +1 -1
  485. package/dist/types/controls/link.d.ts +9 -0
  486. package/dist/types/controls/link.d.ts.map +1 -0
  487. package/dist/types/controls/rich-text/control.d.ts +57 -0
  488. package/dist/types/controls/rich-text/control.d.ts.map +1 -0
  489. package/dist/types/controls/rich-text/index.d.ts +0 -3
  490. package/dist/types/controls/rich-text/index.d.ts.map +1 -1
  491. package/dist/types/controls/rich-text/rich-text.d.ts +9 -61
  492. package/dist/types/controls/rich-text/rich-text.d.ts.map +1 -1
  493. package/dist/types/controls/rich-text-v2/__tests__/fixtures/nested-paragraph-edge-case-3728.d.ts +3 -2
  494. package/dist/types/controls/rich-text-v2/__tests__/fixtures/nested-paragraph-edge-case-3728.d.ts.map +1 -1
  495. package/dist/types/controls/rich-text-v2/__tests__/fixtures/rearranged.d.ts +4 -3
  496. package/dist/types/controls/rich-text-v2/__tests__/fixtures/rearranged.d.ts.map +1 -1
  497. package/dist/types/controls/rich-text-v2/__tests__/fixtures/simple.d.ts +4 -3
  498. package/dist/types/controls/rich-text-v2/__tests__/fixtures/simple.d.ts.map +1 -1
  499. package/dist/types/controls/rich-text-v2/__tests__/serialization.test.d.ts +2 -0
  500. package/dist/types/controls/rich-text-v2/__tests__/serialization.test.d.ts.map +1 -0
  501. package/dist/types/controls/rich-text-v2/control.d.ts +102 -0
  502. package/dist/types/controls/rich-text-v2/control.d.ts.map +1 -0
  503. package/dist/types/controls/rich-text-v2/index.d.ts +0 -2
  504. package/dist/types/controls/rich-text-v2/index.d.ts.map +1 -1
  505. package/dist/types/controls/rich-text-v2/plugin.d.ts +9 -17
  506. package/dist/types/controls/rich-text-v2/plugin.d.ts.map +1 -1
  507. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts +863 -103
  508. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  509. package/dist/types/controls/rich-text-v2/translation.d.ts +5 -4
  510. package/dist/types/controls/rich-text-v2/translation.d.ts.map +1 -1
  511. package/dist/types/controls/slot.d.ts +8 -54
  512. package/dist/types/controls/slot.d.ts.map +1 -1
  513. package/dist/types/controls/style-v2/index.d.ts +2 -0
  514. package/dist/types/controls/style-v2/index.d.ts.map +1 -0
  515. package/dist/types/controls/style-v2/style-v2.d.ts +10 -0
  516. package/dist/types/controls/style-v2/style-v2.d.ts.map +1 -0
  517. package/dist/types/controls/style-v2/style-v2.test.d.ts +2 -0
  518. package/dist/types/controls/style-v2/style-v2.test.d.ts.map +1 -0
  519. package/dist/types/core/index.d.ts +2 -0
  520. package/dist/types/core/index.d.ts.map +1 -0
  521. package/dist/types/locale.d.ts +1 -1
  522. package/dist/types/next/client.d.ts +16 -16
  523. package/dist/types/next/components/tests/controls/combobox-control.test.d.ts +2 -0
  524. package/dist/types/next/components/tests/controls/combobox-control.test.d.ts.map +1 -0
  525. package/dist/types/next/components/tests/controls/icon-radio-group-control.test.d.ts +2 -0
  526. package/dist/types/next/components/tests/controls/icon-radio-group-control.test.d.ts.map +1 -0
  527. package/dist/types/next/components/tests/controls/image-control.test.d.ts +3 -0
  528. package/dist/types/next/components/tests/controls/image-control.test.d.ts.map +1 -0
  529. package/dist/types/next/components/tests/controls/link-control.test.d.ts +2 -0
  530. package/dist/types/next/components/tests/controls/link-control.test.d.ts.map +1 -0
  531. package/dist/types/next/components/tests/controls/list-control.test.d.ts +2 -0
  532. package/dist/types/next/components/tests/controls/list-control.test.d.ts.map +1 -0
  533. package/dist/types/next/components/tests/controls/number-control.test.d.ts +2 -0
  534. package/dist/types/next/components/tests/controls/number-control.test.d.ts.map +1 -0
  535. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts +9 -5
  536. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  537. package/dist/types/next/components/tests/controls/select-control.test.d.ts +2 -0
  538. package/dist/types/next/components/tests/controls/select-control.test.d.ts.map +1 -0
  539. package/dist/types/next/components/tests/controls/shape-control.test.d.ts +2 -0
  540. package/dist/types/next/components/tests/controls/shape-control.test.d.ts.map +1 -0
  541. package/dist/types/next/components/tests/controls/slot-control.test.d.ts +2 -0
  542. package/dist/types/next/components/tests/controls/slot-control.test.d.ts.map +1 -0
  543. package/dist/types/next/components/tests/controls/style-control.test.d.ts +2 -0
  544. package/dist/types/next/components/tests/controls/style-control.test.d.ts.map +1 -0
  545. package/dist/types/next/components/tests/controls/text-area-control.test.d.ts +2 -0
  546. package/dist/types/next/components/tests/controls/text-area-control.test.d.ts.map +1 -0
  547. package/dist/types/next/components/tests/controls/text-input-control.test.d.ts +2 -0
  548. package/dist/types/next/components/tests/controls/text-input-control.test.d.ts.map +1 -0
  549. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts +15 -2
  550. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts.map +1 -1
  551. package/dist/types/prop-controllers/copy.d.ts +2 -2
  552. package/dist/types/prop-controllers/copy.d.ts.map +1 -1
  553. package/dist/types/prop-controllers/deleted.d.ts +1 -1
  554. package/dist/types/prop-controllers/deleted.d.ts.map +1 -1
  555. package/dist/types/prop-controllers/descriptors.d.ts +8 -27
  556. package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
  557. package/dist/types/prop-controllers/index.d.ts +3 -3
  558. package/dist/types/prop-controllers/index.d.ts.map +1 -1
  559. package/dist/types/prop-controllers/instances.d.ts +10 -72
  560. package/dist/types/prop-controllers/instances.d.ts.map +1 -1
  561. package/dist/types/prop-controllers/introspection.d.ts +2 -2
  562. package/dist/types/prop-controllers/introspection.d.ts.map +1 -1
  563. package/dist/types/runtimes/react/components/Element.d.ts +2 -2
  564. package/dist/types/runtimes/react/components/ElementData.d.ts.map +1 -1
  565. package/dist/types/runtimes/react/controls/checkbox.d.ts +3 -3
  566. package/dist/types/runtimes/react/controls/checkbox.d.ts.map +1 -1
  567. package/dist/types/runtimes/react/controls/color.d.ts +3 -3
  568. package/dist/types/runtimes/react/controls/color.d.ts.map +1 -1
  569. package/dist/types/runtimes/react/controls/combobox.d.ts +3 -3
  570. package/dist/types/runtimes/react/controls/combobox.d.ts.map +1 -1
  571. package/dist/types/runtimes/react/controls/control.d.ts +7 -28
  572. package/dist/types/runtimes/react/controls/control.d.ts.map +1 -1
  573. package/dist/types/runtimes/react/controls/icon-radio-group.d.ts +3 -3
  574. package/dist/types/runtimes/react/controls/icon-radio-group.d.ts.map +1 -1
  575. package/dist/types/runtimes/react/controls/image.d.ts +3 -12
  576. package/dist/types/runtimes/react/controls/image.d.ts.map +1 -1
  577. package/dist/types/runtimes/react/controls/link.d.ts +3 -10
  578. package/dist/types/runtimes/react/controls/link.d.ts.map +1 -1
  579. package/dist/types/runtimes/react/controls/list.d.ts +7 -9
  580. package/dist/types/runtimes/react/controls/list.d.ts.map +1 -1
  581. package/dist/types/runtimes/react/controls/number.d.ts +3 -3
  582. package/dist/types/runtimes/react/controls/number.d.ts.map +1 -1
  583. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts +1 -1
  584. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts.map +1 -1
  585. package/dist/types/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.d.ts +2 -2
  586. package/dist/types/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.d.ts.map +1 -1
  587. package/dist/types/runtimes/react/controls/rich-text/ReadOnlyText.d.ts +3 -4
  588. package/dist/types/runtimes/react/controls/rich-text/ReadOnlyText.d.ts.map +1 -1
  589. package/dist/types/runtimes/react/controls/rich-text/components/Element/block.d.ts +2 -2
  590. package/dist/types/runtimes/react/controls/rich-text/components/Element/block.d.ts.map +1 -1
  591. package/dist/types/runtimes/react/controls/rich-text/components/Element/element.d.ts +1 -1
  592. package/dist/types/runtimes/react/controls/rich-text/components/Element/element.d.ts.map +1 -1
  593. package/dist/types/runtimes/react/controls/rich-text/components/Element/inline.d.ts +2 -2
  594. package/dist/types/runtimes/react/controls/rich-text/components/Element/inline.d.ts.map +1 -1
  595. package/dist/types/runtimes/react/controls/rich-text/rich-text.d.ts +4 -3
  596. package/dist/types/runtimes/react/controls/rich-text/rich-text.d.ts.map +1 -1
  597. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts +4 -4
  598. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts.map +1 -1
  599. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts +2 -2
  600. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts.map +1 -1
  601. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts +2 -2
  602. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts.map +1 -1
  603. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.d.ts +2 -2
  604. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.d.ts.map +1 -1
  605. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.d.ts +2 -2
  606. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.d.ts.map +1 -1
  607. package/dist/types/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.d.ts +4 -3
  608. package/dist/types/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.d.ts.map +1 -1
  609. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts +4 -3
  610. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  611. package/dist/types/runtimes/react/controls/select.d.ts +3 -3
  612. package/dist/types/runtimes/react/controls/select.d.ts.map +1 -1
  613. package/dist/types/runtimes/react/controls/shape.d.ts +7 -10
  614. package/dist/types/runtimes/react/controls/shape.d.ts.map +1 -1
  615. package/dist/types/runtimes/react/controls/slot.d.ts +3 -4
  616. package/dist/types/runtimes/react/controls/slot.d.ts.map +1 -1
  617. package/dist/types/runtimes/react/controls/style-v2.d.ts +7 -7
  618. package/dist/types/runtimes/react/controls/style-v2.d.ts.map +1 -1
  619. package/dist/types/runtimes/react/controls/style.d.ts +2 -2
  620. package/dist/types/runtimes/react/controls/style.d.ts.map +1 -1
  621. package/dist/types/runtimes/react/controls/text-area.d.ts +3 -3
  622. package/dist/types/runtimes/react/controls/text-area.d.ts.map +1 -1
  623. package/dist/types/runtimes/react/controls/text-input.d.ts +3 -3
  624. package/dist/types/runtimes/react/controls/text-input.d.ts.map +1 -1
  625. package/dist/types/runtimes/react/controls/typography.d.ts +6 -6
  626. package/dist/types/runtimes/react/controls/typography.d.ts.map +1 -1
  627. package/dist/types/runtimes/react/controls.d.ts.map +1 -1
  628. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  629. package/dist/types/runtimes/react/poll-box-model.d.ts +1 -1
  630. package/dist/types/runtimes/react/poll-box-model.d.ts.map +1 -1
  631. package/dist/types/runtimes/react/react-runtime.d.ts +9 -18
  632. package/dist/types/runtimes/react/react-runtime.d.ts.map +1 -1
  633. package/dist/types/runtimes/react/runtime-core.d.ts +19 -0
  634. package/dist/types/runtimes/react/runtime-core.d.ts.map +1 -0
  635. package/dist/types/slate/BlockPlugin/clearBlockKeyForDevice.d.ts.map +1 -1
  636. package/dist/types/slate/BlockPlugin/indent.d.ts.map +1 -1
  637. package/dist/types/slate/BlockPlugin/index.d.ts +19 -41
  638. package/dist/types/slate/BlockPlugin/index.d.ts.map +1 -1
  639. package/dist/types/slate/BlockPlugin/setBlockKeyForDevice.d.ts.map +1 -1
  640. package/dist/types/slate/BlockPlugin/toggleList.d.ts.map +1 -1
  641. package/dist/types/slate/BlockPlugin/types.d.ts +2 -2
  642. package/dist/types/slate/BlockPlugin/types.d.ts.map +1 -1
  643. package/dist/types/slate/BlockPlugin/unwrapInline.d.ts +2 -2
  644. package/dist/types/slate/BlockPlugin/unwrapInline.d.ts.map +1 -1
  645. package/dist/types/slate/BlockPlugin/utils/getSelectedListItems.d.ts +3 -2
  646. package/dist/types/slate/BlockPlugin/utils/getSelectedListItems.d.ts.map +1 -1
  647. package/dist/types/slate/BlockPlugin/wrapInline.d.ts +2 -2
  648. package/dist/types/slate/BlockPlugin/wrapInline.d.ts.map +1 -1
  649. package/dist/types/slate/BlockPlugin/wrapList.d.ts +1 -1
  650. package/dist/types/slate/BlockPlugin/wrapList.d.ts.map +1 -1
  651. package/dist/types/slate/BuilderPlugin/index.d.ts.map +1 -1
  652. package/dist/types/slate/InlineModePlugin/index.d.ts +79 -7
  653. package/dist/types/slate/InlineModePlugin/index.d.ts.map +1 -1
  654. package/dist/types/slate/InlinePlugin/getValue.d.ts.map +1 -1
  655. package/dist/types/slate/InlinePlugin/index.d.ts +22 -11
  656. package/dist/types/slate/InlinePlugin/index.d.ts.map +1 -1
  657. package/dist/types/slate/InlinePlugin/onChange.d.ts.map +1 -1
  658. package/dist/types/slate/InlinePlugin/types.d.ts +18 -6
  659. package/dist/types/slate/InlinePlugin/types.d.ts.map +1 -1
  660. package/dist/types/slate/LinkPlugin/getValue.d.ts +36 -3
  661. package/dist/types/slate/LinkPlugin/getValue.d.ts.map +1 -1
  662. package/dist/types/slate/LinkPlugin/index.d.ts +40 -9
  663. package/dist/types/slate/LinkPlugin/index.d.ts.map +1 -1
  664. package/dist/types/slate/LinkPlugin/onChange.d.ts +4 -3
  665. package/dist/types/slate/LinkPlugin/onChange.d.ts.map +1 -1
  666. package/dist/types/slate/LinkPlugin/types.d.ts +3 -4
  667. package/dist/types/slate/LinkPlugin/types.d.ts.map +1 -1
  668. package/dist/types/slate/TextAlignPlugin/getValue.d.ts +2 -2
  669. package/dist/types/slate/TextAlignPlugin/getValue.d.ts.map +1 -1
  670. package/dist/types/slate/TextAlignPlugin/index.d.ts +21 -6
  671. package/dist/types/slate/TextAlignPlugin/index.d.ts.map +1 -1
  672. package/dist/types/slate/TypographyPlugin/detachActiveTypography.d.ts +1 -1
  673. package/dist/types/slate/TypographyPlugin/detachActiveTypography.d.ts.map +1 -1
  674. package/dist/types/slate/TypographyPlugin/getValue.d.ts +25 -2
  675. package/dist/types/slate/TypographyPlugin/getValue.d.ts.map +1 -1
  676. package/dist/types/slate/TypographyPlugin/index.d.ts +27 -3
  677. package/dist/types/slate/TypographyPlugin/index.d.ts.map +1 -1
  678. package/dist/types/slate/TypographyPlugin/normalizeTypographyDown.d.ts +2 -1
  679. package/dist/types/slate/TypographyPlugin/normalizeTypographyDown.d.ts.map +1 -1
  680. package/dist/types/slate/TypographyPlugin/normalizeTypographyUp.d.ts +1 -1
  681. package/dist/types/slate/TypographyPlugin/normalizeTypographyUp.d.ts.map +1 -1
  682. package/dist/types/slate/TypographyPlugin/setActiveTypographyStyle.d.ts.map +1 -1
  683. package/dist/types/slate/index.d.ts +4 -4
  684. package/dist/types/slate/index.d.ts.map +1 -1
  685. package/dist/types/slate/selectors.d.ts +7 -7
  686. package/dist/types/slate/selectors.d.ts.map +1 -1
  687. package/dist/types/slate/test-helpers/slate-test-helper.d.ts +4 -4
  688. package/dist/types/slate/test-helpers/test-elements.d.ts +61 -5
  689. package/dist/types/slate/test-helpers/test-elements.d.ts.map +1 -1
  690. package/dist/types/slate/types.d.ts +1 -206
  691. package/dist/types/slate/types.d.ts.map +1 -1
  692. package/dist/types/slate/utils/editor.d.ts +4 -4
  693. package/dist/types/slate/utils/editor.d.ts.map +1 -1
  694. package/dist/types/slate/utils/element.d.ts +4 -12
  695. package/dist/types/slate/utils/element.d.ts.map +1 -1
  696. package/dist/types/slate/utils/responsive.d.ts +1 -1
  697. package/dist/types/slate/utils/responsive.d.ts.map +1 -1
  698. package/dist/types/slate/utils/toText.d.ts +3 -3
  699. package/dist/types/slate/utils/toText.d.ts.map +1 -1
  700. package/dist/types/state/actions.d.ts +3 -3
  701. package/dist/types/state/actions.d.ts.map +1 -1
  702. package/dist/types/state/modules/box-models.d.ts +2 -1
  703. package/dist/types/state/modules/box-models.d.ts.map +1 -1
  704. package/dist/types/state/modules/breakpoints.d.ts +2 -4
  705. package/dist/types/state/modules/breakpoints.d.ts.map +1 -1
  706. package/dist/types/state/modules/prop-controller-handles.d.ts +4 -4
  707. package/dist/types/state/modules/prop-controller-handles.d.ts.map +1 -1
  708. package/dist/types/state/modules/read-only-documents.d.ts +2 -15
  709. package/dist/types/state/modules/read-only-documents.d.ts.map +1 -1
  710. package/dist/types/state/react-builder-preview.d.ts.map +1 -1
  711. package/dist/types/state/react-page.d.ts +55 -57
  712. package/dist/types/state/react-page.d.ts.map +1 -1
  713. package/dist/types/utils/tests/element-data-test-test.d.ts +29 -1
  714. package/dist/types/utils/tests/element-data-test-test.d.ts.map +1 -1
  715. package/package.json +17 -5
  716. package/dist/cjs/builder/serialization/controls/combobox.js +0 -45
  717. package/dist/cjs/builder/serialization/controls/combobox.js.map +0 -1
  718. package/dist/cjs/builder/serialization/controls/list.js +0 -50
  719. package/dist/cjs/builder/serialization/controls/list.js.map +0 -1
  720. package/dist/cjs/builder/serialization/controls/rich-text-v2.js +0 -106
  721. package/dist/cjs/builder/serialization/controls/rich-text-v2.js.map +0 -1
  722. package/dist/cjs/builder/serialization/controls/shape.js +0 -54
  723. package/dist/cjs/builder/serialization/controls/shape.js.map +0 -1
  724. package/dist/cjs/builder/serialization/controls/style-v2.js +0 -62
  725. package/dist/cjs/builder/serialization/controls/style-v2.js.map +0 -1
  726. package/dist/cjs/controls/image.js.map +0 -1
  727. package/dist/cjs/controls/list.js +0 -156
  728. package/dist/cjs/controls/list.js.map +0 -1
  729. package/dist/cjs/controls/rich-text/copy.js +0 -121
  730. package/dist/cjs/controls/rich-text/copy.js.map +0 -1
  731. package/dist/cjs/controls/rich-text/dto-types.js +0 -43
  732. package/dist/cjs/controls/rich-text/dto-types.js.map +0 -1
  733. package/dist/cjs/controls/rich-text/dto.js +0 -228
  734. package/dist/cjs/controls/rich-text/dto.js.map +0 -1
  735. package/dist/cjs/controls/rich-text/fixtures/blockquote.js +0 -77
  736. package/dist/cjs/controls/rich-text/fixtures/blockquote.js.map +0 -1
  737. package/dist/cjs/controls/rich-text/fixtures/empty-blocks.js +0 -176
  738. package/dist/cjs/controls/rich-text/fixtures/empty-blocks.js.map +0 -1
  739. package/dist/cjs/controls/rich-text/fixtures/index.js.map +0 -1
  740. package/dist/cjs/controls/rich-text/fixtures/list.js +0 -137
  741. package/dist/cjs/controls/rich-text/fixtures/list.js.map +0 -1
  742. package/dist/cjs/controls/rich-text/fixtures/typography.js +0 -926
  743. package/dist/cjs/controls/rich-text/fixtures/typography.js.map +0 -1
  744. package/dist/cjs/controls/rich-text/fixtures/v2-data-types.js +0 -114
  745. package/dist/cjs/controls/rich-text/fixtures/v2-data-types.js.map +0 -1
  746. package/dist/cjs/controls/rich-text/introspection.js +0 -104
  747. package/dist/cjs/controls/rich-text/introspection.js.map +0 -1
  748. package/dist/cjs/controls/rich-text-v2/copy.js +0 -115
  749. package/dist/cjs/controls/rich-text-v2/copy.js.map +0 -1
  750. package/dist/cjs/controls/rich-text-v2/dto.js +0 -44
  751. package/dist/cjs/controls/rich-text-v2/dto.js.map +0 -1
  752. package/dist/cjs/controls/rich-text-v2/introspection.js +0 -69
  753. package/dist/cjs/controls/rich-text-v2/introspection.js.map +0 -1
  754. package/dist/cjs/controls/select.js.map +0 -1
  755. package/dist/cjs/controls/shape.js +0 -149
  756. package/dist/cjs/controls/shape.js.map +0 -1
  757. package/dist/cjs/controls/style-v2.js +0 -74
  758. package/dist/cjs/controls/style-v2.js.map +0 -1
  759. package/dist/cjs/controls/style.js +0 -125
  760. package/dist/cjs/controls/style.js.map +0 -1
  761. package/dist/cjs/controls/typography.js +0 -47
  762. package/dist/cjs/controls/typography.js.map +0 -1
  763. package/dist/cjs/prop-controllers/base.js.map +0 -1
  764. package/dist/cjs/slate/LinkPlugin/linkPluginWithoutRenderElement.js +0 -48
  765. package/dist/cjs/slate/LinkPlugin/linkPluginWithoutRenderElement.js.map +0 -1
  766. package/dist/cjs/utils/index-signature-hack.js +0 -17
  767. package/dist/cjs/utils/index-signature-hack.js.map +0 -1
  768. package/dist/esm/builder/serialization/controls/combobox.js +0 -20
  769. package/dist/esm/builder/serialization/controls/combobox.js.map +0 -1
  770. package/dist/esm/builder/serialization/controls/list.js +0 -25
  771. package/dist/esm/builder/serialization/controls/list.js.map +0 -1
  772. package/dist/esm/builder/serialization/controls/rich-text-v2.js +0 -81
  773. package/dist/esm/builder/serialization/controls/rich-text-v2.js.map +0 -1
  774. package/dist/esm/builder/serialization/controls/shape.js +0 -32
  775. package/dist/esm/builder/serialization/controls/shape.js.map +0 -1
  776. package/dist/esm/builder/serialization/controls/style-v2.js +0 -37
  777. package/dist/esm/builder/serialization/controls/style-v2.js.map +0 -1
  778. package/dist/esm/controls/image.js +0 -10
  779. package/dist/esm/controls/image.js.map +0 -1
  780. package/dist/esm/controls/list.js +0 -132
  781. package/dist/esm/controls/list.js.map +0 -1
  782. package/dist/esm/controls/rich-text/copy.js +0 -97
  783. package/dist/esm/controls/rich-text/copy.js.map +0 -1
  784. package/dist/esm/controls/rich-text/dto-types.js +0 -19
  785. package/dist/esm/controls/rich-text/dto-types.js.map +0 -1
  786. package/dist/esm/controls/rich-text/dto.js +0 -203
  787. package/dist/esm/controls/rich-text/dto.js.map +0 -1
  788. package/dist/esm/controls/rich-text/fixtures/blockquote.js +0 -53
  789. package/dist/esm/controls/rich-text/fixtures/blockquote.js.map +0 -1
  790. package/dist/esm/controls/rich-text/fixtures/empty-blocks.js +0 -151
  791. package/dist/esm/controls/rich-text/fixtures/empty-blocks.js.map +0 -1
  792. package/dist/esm/controls/rich-text/fixtures/index.js +0 -4
  793. package/dist/esm/controls/rich-text/fixtures/index.js.map +0 -1
  794. package/dist/esm/controls/rich-text/fixtures/list.js +0 -113
  795. package/dist/esm/controls/rich-text/fixtures/list.js.map +0 -1
  796. package/dist/esm/controls/rich-text/fixtures/typography.js +0 -902
  797. package/dist/esm/controls/rich-text/fixtures/typography.js.map +0 -1
  798. package/dist/esm/controls/rich-text/fixtures/v2-data-types.js +0 -90
  799. package/dist/esm/controls/rich-text/fixtures/v2-data-types.js.map +0 -1
  800. package/dist/esm/controls/rich-text/introspection.js +0 -78
  801. package/dist/esm/controls/rich-text/introspection.js.map +0 -1
  802. package/dist/esm/controls/rich-text-v2/copy.js +0 -91
  803. package/dist/esm/controls/rich-text-v2/copy.js.map +0 -1
  804. package/dist/esm/controls/rich-text-v2/dto.js +0 -19
  805. package/dist/esm/controls/rich-text-v2/dto.js.map +0 -1
  806. package/dist/esm/controls/rich-text-v2/introspection.js +0 -43
  807. package/dist/esm/controls/rich-text-v2/introspection.js.map +0 -1
  808. package/dist/esm/controls/select.js +0 -9
  809. package/dist/esm/controls/select.js.map +0 -1
  810. package/dist/esm/controls/shape.js +0 -125
  811. package/dist/esm/controls/shape.js.map +0 -1
  812. package/dist/esm/controls/style-v2.js +0 -48
  813. package/dist/esm/controls/style-v2.js.map +0 -1
  814. package/dist/esm/controls/style.js +0 -95
  815. package/dist/esm/controls/style.js.map +0 -1
  816. package/dist/esm/controls/typography.js +0 -20
  817. package/dist/esm/controls/typography.js.map +0 -1
  818. package/dist/esm/prop-controllers/base.js +0 -10
  819. package/dist/esm/prop-controllers/base.js.map +0 -1
  820. package/dist/esm/slate/LinkPlugin/linkPluginWithoutRenderElement.js +0 -24
  821. package/dist/esm/slate/LinkPlugin/linkPluginWithoutRenderElement.js.map +0 -1
  822. package/dist/esm/utils/index-signature-hack.js +0 -1
  823. package/dist/esm/utils/index-signature-hack.js.map +0 -1
  824. package/dist/types/builder/serialization/controls/combobox.d.ts +0 -5
  825. package/dist/types/builder/serialization/controls/combobox.d.ts.map +0 -1
  826. package/dist/types/builder/serialization/controls/list.d.ts +0 -5
  827. package/dist/types/builder/serialization/controls/list.d.ts.map +0 -1
  828. package/dist/types/builder/serialization/controls/rich-text-v2.d.ts +0 -5
  829. package/dist/types/builder/serialization/controls/rich-text-v2.d.ts.map +0 -1
  830. package/dist/types/builder/serialization/controls/shape.d.ts +0 -5
  831. package/dist/types/builder/serialization/controls/shape.d.ts.map +0 -1
  832. package/dist/types/builder/serialization/controls/style-v2.d.ts +0 -5
  833. package/dist/types/builder/serialization/controls/style-v2.d.ts.map +0 -1
  834. package/dist/types/controls/image.d.ts +0 -4
  835. package/dist/types/controls/image.d.ts.map +0 -1
  836. package/dist/types/controls/image.test.d.ts +0 -2
  837. package/dist/types/controls/image.test.d.ts.map +0 -1
  838. package/dist/types/controls/link.test.d.ts +0 -2
  839. package/dist/types/controls/link.test.d.ts.map +0 -1
  840. package/dist/types/controls/list.d.ts +0 -78
  841. package/dist/types/controls/list.d.ts.map +0 -1
  842. package/dist/types/controls/rich-text/__tests__/copy.test.d.ts +0 -2
  843. package/dist/types/controls/rich-text/__tests__/copy.test.d.ts.map +0 -1
  844. package/dist/types/controls/rich-text/__tests__/dto.test.d.ts +0 -2
  845. package/dist/types/controls/rich-text/__tests__/dto.test.d.ts.map +0 -1
  846. package/dist/types/controls/rich-text/__tests__/introspection.test.d.ts +0 -2
  847. package/dist/types/controls/rich-text/__tests__/introspection.test.d.ts.map +0 -1
  848. package/dist/types/controls/rich-text/copy.d.ts +0 -4
  849. package/dist/types/controls/rich-text/copy.d.ts.map +0 -1
  850. package/dist/types/controls/rich-text/dto-types.d.ts +0 -132
  851. package/dist/types/controls/rich-text/dto-types.d.ts.map +0 -1
  852. package/dist/types/controls/rich-text/dto.d.ts +0 -8
  853. package/dist/types/controls/rich-text/dto.d.ts.map +0 -1
  854. package/dist/types/controls/rich-text/fixtures/blockquote.d.ts +0 -3
  855. package/dist/types/controls/rich-text/fixtures/blockquote.d.ts.map +0 -1
  856. package/dist/types/controls/rich-text/fixtures/empty-blocks.d.ts +0 -4
  857. package/dist/types/controls/rich-text/fixtures/empty-blocks.d.ts.map +0 -1
  858. package/dist/types/controls/rich-text/fixtures/index.d.ts +0 -4
  859. package/dist/types/controls/rich-text/fixtures/index.d.ts.map +0 -1
  860. package/dist/types/controls/rich-text/fixtures/list.d.ts +0 -3
  861. package/dist/types/controls/rich-text/fixtures/list.d.ts.map +0 -1
  862. package/dist/types/controls/rich-text/fixtures/typography.d.ts +0 -3
  863. package/dist/types/controls/rich-text/fixtures/typography.d.ts.map +0 -1
  864. package/dist/types/controls/rich-text/fixtures/v2-data-types.d.ts +0 -3
  865. package/dist/types/controls/rich-text/fixtures/v2-data-types.d.ts.map +0 -1
  866. package/dist/types/controls/rich-text/introspection.d.ts +0 -5
  867. package/dist/types/controls/rich-text/introspection.d.ts.map +0 -1
  868. package/dist/types/controls/rich-text-v2/copy.d.ts +0 -4
  869. package/dist/types/controls/rich-text-v2/copy.d.ts.map +0 -1
  870. package/dist/types/controls/rich-text-v2/dto.d.ts +0 -5
  871. package/dist/types/controls/rich-text-v2/dto.d.ts.map +0 -1
  872. package/dist/types/controls/rich-text-v2/introspection.d.ts +0 -5
  873. package/dist/types/controls/rich-text-v2/introspection.d.ts.map +0 -1
  874. package/dist/types/controls/select.d.ts +0 -22
  875. package/dist/types/controls/select.d.ts.map +0 -1
  876. package/dist/types/controls/shape.d.ts +0 -50
  877. package/dist/types/controls/shape.d.ts.map +0 -1
  878. package/dist/types/controls/style-v2.d.ts +0 -64
  879. package/dist/types/controls/style-v2.d.ts.map +0 -1
  880. package/dist/types/controls/style.d.ts +0 -179
  881. package/dist/types/controls/style.d.ts.map +0 -1
  882. package/dist/types/controls/typography.d.ts +0 -33
  883. package/dist/types/controls/typography.d.ts.map +0 -1
  884. package/dist/types/prop-controllers/base.d.ts +0 -7
  885. package/dist/types/prop-controllers/base.d.ts.map +0 -1
  886. package/dist/types/slate/LinkPlugin/linkPluginWithoutRenderElement.d.ts +0 -16
  887. package/dist/types/slate/LinkPlugin/linkPluginWithoutRenderElement.d.ts.map +0 -1
  888. package/dist/types/utils/index-signature-hack.d.ts +0 -4
  889. package/dist/types/utils/index-signature-hack.d.ts.map +0 -1
@@ -1,64 +1,23 @@
1
- import { PropController } from "../prop-controllers/base";
2
1
  import {
3
- isElementReference
4
- } from "../state/react-page";
5
- const SlotControlType = "makeswift::controls::slot";
6
- function Slot() {
7
- return { type: SlotControlType };
2
+ SlotDefinition as BaseSlotDefinition,
3
+ SlotControl
4
+ } from "@makeswift/controls";
5
+ class BaseDefinition extends BaseSlotDefinition {
8
6
  }
9
- const SlotControlMessageType = {
10
- CONTAINER_BOX_MODEL_CHANGE: "makeswift::controls::slot::message::container-box-model-change",
11
- ITEM_BOX_MODEL_CHANGE: "makeswift::controls::slot::message::item-box-model-change"
12
- };
13
- class SlotControl extends PropController {
14
- recv = () => {
15
- };
16
- changeContainerBoxModel(boxModel) {
17
- this.send({ type: SlotControlMessageType.CONTAINER_BOX_MODEL_CHANGE, payload: { boxModel } });
18
- }
19
- changeItemBoxModel(index, boxModel) {
20
- this.send({ type: SlotControlMessageType.ITEM_BOX_MODEL_CHANGE, payload: { index, boxModel } });
7
+ class SlotDefinition extends BaseDefinition {
8
+ static deserialize(data) {
9
+ if (data.type !== SlotDefinition.type) {
10
+ throw new Error(`Slot: expected type ${SlotDefinition.type}, got ${data.type}`);
11
+ }
12
+ return Slot();
21
13
  }
22
14
  }
23
- function copySlotData(value, context) {
24
- if (value == null)
25
- return value;
26
- return {
27
- ...value,
28
- elements: value.elements.map((element) => context.copyElement(element))
29
- };
30
- }
31
- function mergeSlotData(base = { columns: [], elements: [] }, override = { columns: [], elements: [] }, context) {
32
- const mergedColumns = base.columns;
33
- const mergedElements = base.elements.flatMap((baseElement) => {
34
- const overrideElement = override.elements.find(
35
- (e) => baseElement.type === e.type && baseElement.key === e.key
36
- );
37
- if (overrideElement == null)
38
- return [baseElement];
39
- if (overrideElement.deleted)
40
- return [];
41
- if (isElementReference(overrideElement))
42
- return [overrideElement];
43
- if (isElementReference(baseElement))
44
- return [baseElement];
45
- return context.mergeElement(baseElement, overrideElement);
46
- });
47
- return { columns: mergedColumns, elements: mergedElements };
48
- }
49
- function mergeSlotControlTranslatedData(data, context) {
50
- return {
51
- ...data,
52
- elements: data.elements.map((element) => context.mergeTranslatedData(element))
53
- };
15
+ function Slot() {
16
+ return new SlotDefinition();
54
17
  }
55
18
  export {
56
19
  Slot,
57
20
  SlotControl,
58
- SlotControlMessageType,
59
- SlotControlType,
60
- copySlotData,
61
- mergeSlotControlTranslatedData,
62
- mergeSlotData
21
+ SlotDefinition
63
22
  };
64
23
  //# sourceMappingURL=slot.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/controls/slot.ts"],"sourcesContent":["import { ResponsiveValue } from '@makeswift/controls'\nimport { PropController } from '../prop-controllers/base'\nimport { BoxModel } from '../state/modules/box-models'\nimport {\n CopyContext,\n Element,\n isElementReference,\n MergeContext,\n MergeTranslatableDataContext,\n} from '../state/react-page'\n\ntype SlotControlColumnData = { count: number; spans: number[][] }\n\nexport type SlotControlData = {\n elements: (Element & { deleted?: boolean })[]\n columns: ResponsiveValue<SlotControlColumnData>\n}\n\nexport const SlotControlType = 'makeswift::controls::slot'\n\nexport type SlotControlDefinition = {\n type: typeof SlotControlType\n}\n\nexport function Slot(): SlotControlDefinition {\n return { type: SlotControlType }\n}\n\nexport const SlotControlMessageType = {\n CONTAINER_BOX_MODEL_CHANGE: 'makeswift::controls::slot::message::container-box-model-change',\n ITEM_BOX_MODEL_CHANGE: 'makeswift::controls::slot::message::item-box-model-change',\n} as const\n\ntype SlotControlContainerBoxModelChangeMessage = {\n type: typeof SlotControlMessageType.CONTAINER_BOX_MODEL_CHANGE\n payload: { boxModel: BoxModel | null }\n}\n\ntype SlotControlItemBoxModelChangeMessage = {\n type: typeof SlotControlMessageType.ITEM_BOX_MODEL_CHANGE\n payload: { index: number; boxModel: BoxModel | null }\n}\n\nexport type SlotControlMessage =\n | SlotControlContainerBoxModelChangeMessage\n | SlotControlItemBoxModelChangeMessage\n\nexport class SlotControl extends PropController<SlotControlMessage> {\n recv = () => {}\n\n changeContainerBoxModel(boxModel: BoxModel | null): void {\n this.send({ type: SlotControlMessageType.CONTAINER_BOX_MODEL_CHANGE, payload: { boxModel } })\n }\n\n changeItemBoxModel(index: number, boxModel: BoxModel | null): void {\n this.send({ type: SlotControlMessageType.ITEM_BOX_MODEL_CHANGE, payload: { index, boxModel } })\n }\n}\n\nexport function copySlotData(\n value: SlotControlData | undefined,\n context: CopyContext,\n): SlotControlData | undefined {\n if (value == null) return value\n\n return {\n ...value,\n elements: value.elements.map(element => context.copyElement(element)),\n }\n}\n\n/**\n * @todo\n * - Inserting elements\n * - Moving elements\n * - Merging column data\n */\nexport function mergeSlotData(\n base: SlotControlData | undefined = { columns: [], elements: [] },\n override: SlotControlData | undefined = { columns: [], elements: [] },\n context: MergeContext,\n): SlotControlData {\n const mergedColumns = base.columns\n const mergedElements = base.elements.flatMap(baseElement => {\n const overrideElement = override.elements.find(\n e => baseElement.type === e.type && baseElement.key === e.key,\n )\n\n if (overrideElement == null) return [baseElement]\n\n if (overrideElement.deleted) return []\n\n if (isElementReference(overrideElement)) return [overrideElement]\n\n if (isElementReference(baseElement)) return [baseElement]\n\n return context.mergeElement(baseElement, overrideElement)\n })\n\n return { columns: mergedColumns, elements: mergedElements }\n}\n\nexport function mergeSlotControlTranslatedData(\n data: SlotControlData,\n context: MergeTranslatableDataContext,\n) {\n return {\n ...data,\n elements: data.elements.map(element => context.mergeTranslatedData(element)),\n }\n}\n"],"mappings":"AACA,SAAS,sBAAsB;AAE/B;AAAA,EAGE;AAAA,OAGK;AASA,MAAM,kBAAkB;AAMxB,SAAS,OAA8B;AAC5C,SAAO,EAAE,MAAM,gBAAgB;AACjC;AAEO,MAAM,yBAAyB;AAAA,EACpC,4BAA4B;AAAA,EAC5B,uBAAuB;AACzB;AAgBO,MAAM,oBAAoB,eAAmC;AAAA,EAClE,OAAO,MAAM;AAAA,EAAC;AAAA,EAEd,wBAAwB,UAAiC;AACvD,SAAK,KAAK,EAAE,MAAM,uBAAuB,4BAA4B,SAAS,EAAE,SAAS,EAAE,CAAC;AAAA,EAC9F;AAAA,EAEA,mBAAmB,OAAe,UAAiC;AACjE,SAAK,KAAK,EAAE,MAAM,uBAAuB,uBAAuB,SAAS,EAAE,OAAO,SAAS,EAAE,CAAC;AAAA,EAChG;AACF;AAEO,SAAS,aACd,OACA,SAC6B;AAC7B,MAAI,SAAS;AAAM,WAAO;AAE1B,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,MAAM,SAAS,IAAI,aAAW,QAAQ,YAAY,OAAO,CAAC;AAAA,EACtE;AACF;AAQO,SAAS,cACd,OAAoC,EAAE,SAAS,CAAC,GAAG,UAAU,CAAC,EAAE,GAChE,WAAwC,EAAE,SAAS,CAAC,GAAG,UAAU,CAAC,EAAE,GACpE,SACiB;AACjB,QAAM,gBAAgB,KAAK;AAC3B,QAAM,iBAAiB,KAAK,SAAS,QAAQ,iBAAe;AAC1D,UAAM,kBAAkB,SAAS,SAAS;AAAA,MACxC,OAAK,YAAY,SAAS,EAAE,QAAQ,YAAY,QAAQ,EAAE;AAAA,IAC5D;AAEA,QAAI,mBAAmB;AAAM,aAAO,CAAC,WAAW;AAEhD,QAAI,gBAAgB;AAAS,aAAO,CAAC;AAErC,QAAI,mBAAmB,eAAe;AAAG,aAAO,CAAC,eAAe;AAEhE,QAAI,mBAAmB,WAAW;AAAG,aAAO,CAAC,WAAW;AAExD,WAAO,QAAQ,aAAa,aAAa,eAAe;AAAA,EAC1D,CAAC;AAED,SAAO,EAAE,SAAS,eAAe,UAAU,eAAe;AAC5D;AAEO,SAAS,+BACd,MACA,SACA;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,KAAK,SAAS,IAAI,aAAW,QAAQ,oBAAoB,OAAO,CAAC;AAAA,EAC7E;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/controls/slot.ts"],"sourcesContent":["import { ReactNode } from 'react'\nimport {\n SlotDefinition as BaseSlotDefinition,\n SlotControl,\n type DeserializedRecord,\n} from '@makeswift/controls'\n\nabstract class BaseDefinition extends BaseSlotDefinition<ReactNode> {}\n\nexport class SlotDefinition extends BaseDefinition {\n static deserialize(data: DeserializedRecord): SlotDefinition {\n if (data.type !== SlotDefinition.type) {\n throw new Error(`Slot: expected type ${SlotDefinition.type}, got ${data.type}`)\n }\n\n return Slot()\n }\n}\n\nexport function Slot(): SlotDefinition {\n return new SlotDefinition()\n}\n\nexport { SlotControl }\n"],"mappings":"AACA;AAAA,EACE,kBAAkB;AAAA,EAClB;AAAA,OAEK;AAEP,MAAe,uBAAuB,mBAA8B;AAAC;AAE9D,MAAM,uBAAuB,eAAe;AAAA,EACjD,OAAO,YAAY,MAA0C;AAC3D,QAAI,KAAK,SAAS,eAAe,MAAM;AACrC,YAAM,IAAI,MAAM,uBAAuB,eAAe,IAAI,SAAS,KAAK,IAAI,EAAE;AAAA,IAChF;AAEA,WAAO,KAAK;AAAA,EACd;AACF;AAEO,SAAS,OAAuB;AACrC,SAAO,IAAI,eAAe;AAC5B;","names":[]}
@@ -0,0 +1,2 @@
1
+ export * from "./style-v2";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/controls/style-v2/index.ts"],"sourcesContent":["export * from './style-v2'\n"],"mappings":"AAAA,cAAc;","names":[]}
@@ -0,0 +1,28 @@
1
+ import {
2
+ SerializationSchema,
3
+ StyleV2Definition as BaseStyleV2Definition,
4
+ StyleV2Control
5
+ } from "@makeswift/controls";
6
+ class StyleV2Definition extends BaseStyleV2Definition {
7
+ static deserialize(data, deserializeCallback) {
8
+ if (data.type !== StyleV2Definition.type) {
9
+ throw new Error(`StyleV2: expected type ${StyleV2Definition.type}, got ${data.type}`);
10
+ }
11
+ const {
12
+ config: { type, ...config }
13
+ } = StyleV2Definition.schema({
14
+ typeDef: SerializationSchema.deserializedRecord
15
+ }).definition.parse(data);
16
+ const typeDef = deserializeCallback(type);
17
+ return unstable_StyleV2({ type: typeDef, ...config });
18
+ }
19
+ }
20
+ function unstable_StyleV2(config) {
21
+ return new StyleV2Definition(config);
22
+ }
23
+ export {
24
+ StyleV2Control,
25
+ StyleV2Definition,
26
+ unstable_StyleV2
27
+ };
28
+ //# sourceMappingURL=style-v2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/controls/style-v2/style-v2.ts"],"sourcesContent":["import {\n ControlDefinition,\n SerializationSchema,\n StyleV2Definition as BaseStyleV2Definition,\n StyleV2PropDefinition,\n StyleV2Control,\n type StyleV2Config,\n type DeserializedRecord,\n} from '@makeswift/controls'\n\nimport { CSSObject } from '@emotion/serialize'\n\ntype PropDefinition = StyleV2PropDefinition\ntype Config<Prop extends PropDefinition> = StyleV2Config<Prop, CSSObject>\n\nexport class StyleV2Definition<\n Prop extends PropDefinition = PropDefinition,\n> extends BaseStyleV2Definition<Prop, CSSObject> {\n static deserialize(\n data: DeserializedRecord,\n deserializeCallback: (r: DeserializedRecord) => ControlDefinition,\n ): StyleV2Definition {\n if (data.type !== StyleV2Definition.type) {\n throw new Error(`StyleV2: expected type ${StyleV2Definition.type}, got ${data.type}`)\n }\n\n const {\n config: { type, ...config },\n } = StyleV2Definition.schema({\n typeDef: SerializationSchema.deserializedRecord,\n }).definition.parse(data)\n\n const typeDef = deserializeCallback(type)\n\n return unstable_StyleV2({ type: typeDef, ...config })\n }\n}\n\nexport function unstable_StyleV2<Prop extends PropDefinition>(\n config: Config<Prop>,\n): StyleV2Definition<Prop> {\n return new StyleV2Definition(config)\n}\n\nexport { StyleV2Control }\n"],"mappings":"AAAA;AAAA,EAEE;AAAA,EACA,qBAAqB;AAAA,EAErB;AAAA,OAGK;AAOA,MAAM,0BAEH,sBAAuC;AAAA,EAC/C,OAAO,YACL,MACA,qBACmB;AACnB,QAAI,KAAK,SAAS,kBAAkB,MAAM;AACxC,YAAM,IAAI,MAAM,0BAA0B,kBAAkB,IAAI,SAAS,KAAK,IAAI,EAAE;AAAA,IACtF;AAEA,UAAM;AAAA,MACJ,QAAQ,EAAE,MAAM,GAAG,OAAO;AAAA,IAC5B,IAAI,kBAAkB,OAAO;AAAA,MAC3B,SAAS,oBAAoB;AAAA,IAC/B,CAAC,EAAE,WAAW,MAAM,IAAI;AAExB,UAAM,UAAU,oBAAoB,IAAI;AAExC,WAAO,iBAAiB,EAAE,MAAM,SAAS,GAAG,OAAO,CAAC;AAAA,EACtD;AACF;AAEO,SAAS,iBACd,QACyB;AACzB,SAAO,IAAI,kBAAkB,MAAM;AACrC;","names":[]}
@@ -0,0 +1,11 @@
1
+ import {
2
+ ControlDefinition,
3
+ ControlInstance,
4
+ DefaultControlInstance
5
+ } from "@makeswift/controls";
6
+ export {
7
+ ControlDefinition,
8
+ ControlInstance,
9
+ DefaultControlInstance
10
+ };
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/core/index.ts"],"sourcesContent":["export {\n type Data,\n type DataType,\n type ValueType,\n type ResolvedValueType,\n type ControlMessage,\n type ReplacementContext,\n type SendMessageType,\n ControlDefinition,\n ControlInstance,\n DefaultControlInstance,\n} from '@makeswift/controls'\n"],"mappings":"AAAA;AAAA,EAQE;AAAA,EACA;AAAA,EACA;AAAA,OACK;","names":[]}
@@ -5,6 +5,9 @@ beforeAll(() => server.listen());
5
5
  afterEach(() => server.resetHandlers());
6
6
  afterAll(() => server.close());
7
7
  expect.extend(matchers);
8
+ jest.mock("uuid", () => ({
9
+ v4: jest.fn(() => "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
10
+ }));
8
11
  if (typeof window !== "undefined") {
9
12
  Object.defineProperty(window, "matchMedia", {
10
13
  writable: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/jest-setup.ts"],"sourcesContent":["import '@testing-library/jest-dom'\nimport { matchers } from '@emotion/jest'\nimport { server } from './mocks/server'\n\nbeforeAll(() => server.listen())\nafterEach(() => server.resetHandlers())\nafterAll(() => server.close())\n\nexpect.extend(matchers)\n\nif (typeof window !== 'undefined') {\n Object.defineProperty(window, 'matchMedia', {\n writable: true,\n value: jest.fn().mockImplementation(query => ({\n matches: false,\n media: query,\n onchange: null,\n addListener: jest.fn(), // deprecated\n removeListener: jest.fn(), // deprecated\n addEventListener: jest.fn(),\n removeEventListener: jest.fn(),\n dispatchEvent: jest.fn(),\n })),\n })\n\n Object.defineProperty(window, 'IntersectionObserver', {\n writable: true,\n value: jest.fn().mockImplementation(() => ({\n observe: jest.fn(),\n unobserve: jest.fn(),\n disconnect: jest.fn(),\n })),\n })\n}\n"],"mappings":"AAAA,OAAO;AACP,SAAS,gBAAgB;AACzB,SAAS,cAAc;AAEvB,UAAU,MAAM,OAAO,OAAO,CAAC;AAC/B,UAAU,MAAM,OAAO,cAAc,CAAC;AACtC,SAAS,MAAM,OAAO,MAAM,CAAC;AAE7B,OAAO,OAAO,QAAQ;AAEtB,IAAI,OAAO,WAAW,aAAa;AACjC,SAAO,eAAe,QAAQ,cAAc;AAAA,IAC1C,UAAU;AAAA,IACV,OAAO,KAAK,GAAG,EAAE,mBAAmB,YAAU;AAAA,MAC5C,SAAS;AAAA,MACT,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAa,KAAK,GAAG;AAAA;AAAA,MACrB,gBAAgB,KAAK,GAAG;AAAA;AAAA,MACxB,kBAAkB,KAAK,GAAG;AAAA,MAC1B,qBAAqB,KAAK,GAAG;AAAA,MAC7B,eAAe,KAAK,GAAG;AAAA,IACzB,EAAE;AAAA,EACJ,CAAC;AAED,SAAO,eAAe,QAAQ,wBAAwB;AAAA,IACpD,UAAU;AAAA,IACV,OAAO,KAAK,GAAG,EAAE,mBAAmB,OAAO;AAAA,MACzC,SAAS,KAAK,GAAG;AAAA,MACjB,WAAW,KAAK,GAAG;AAAA,MACnB,YAAY,KAAK,GAAG;AAAA,IACtB,EAAE;AAAA,EACJ,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../src/jest-setup.ts"],"sourcesContent":["import '@testing-library/jest-dom'\nimport { matchers } from '@emotion/jest'\nimport { server } from './mocks/server'\n\nbeforeAll(() => server.listen())\nafterEach(() => server.resetHandlers())\nafterAll(() => server.close())\n\nexpect.extend(matchers)\n\njest.mock('uuid', () => ({\n v4: jest.fn(() => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'),\n}))\n\nif (typeof window !== 'undefined') {\n Object.defineProperty(window, 'matchMedia', {\n writable: true,\n value: jest.fn().mockImplementation(query => ({\n matches: false,\n media: query,\n onchange: null,\n addListener: jest.fn(), // deprecated\n removeListener: jest.fn(), // deprecated\n addEventListener: jest.fn(),\n removeEventListener: jest.fn(),\n dispatchEvent: jest.fn(),\n })),\n })\n\n Object.defineProperty(window, 'IntersectionObserver', {\n writable: true,\n value: jest.fn().mockImplementation(() => ({\n observe: jest.fn(),\n unobserve: jest.fn(),\n disconnect: jest.fn(),\n })),\n })\n}\n"],"mappings":"AAAA,OAAO;AACP,SAAS,gBAAgB;AACzB,SAAS,cAAc;AAEvB,UAAU,MAAM,OAAO,OAAO,CAAC;AAC/B,UAAU,MAAM,OAAO,cAAc,CAAC;AACtC,SAAS,MAAM,OAAO,MAAM,CAAC;AAE7B,OAAO,OAAO,QAAQ;AAEtB,KAAK,KAAK,QAAQ,OAAO;AAAA,EACvB,IAAI,KAAK,GAAG,MAAM,sCAAsC;AAC1D,EAAE;AAEF,IAAI,OAAO,WAAW,aAAa;AACjC,SAAO,eAAe,QAAQ,cAAc;AAAA,IAC1C,UAAU;AAAA,IACV,OAAO,KAAK,GAAG,EAAE,mBAAmB,YAAU;AAAA,MAC5C,SAAS;AAAA,MACT,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAa,KAAK,GAAG;AAAA;AAAA,MACrB,gBAAgB,KAAK,GAAG;AAAA;AAAA,MACxB,kBAAkB,KAAK,GAAG;AAAA,MAC1B,qBAAqB,KAAK,GAAG;AAAA,MAC7B,eAAe,KAAK,GAAG;AAAA,IACzB,EAAE;AAAA,EACJ,CAAC;AAED,SAAO,eAAe,QAAQ,wBAAwB;AAAA,IACpD,UAAU;AAAA,IACV,OAAO,KAAK,GAAG,EAAE,mBAAmB,OAAO;AAAA,MACzC,SAAS,KAAK,GAAG;AAAA,MACjB,WAAW,KAAK,GAAG;AAAA,MACnB,YAAY,KAAK,GAAG;AAAA,IACtB,EAAE;AAAA,EACJ,CAAC;AACH;","names":[]}
@@ -13,7 +13,7 @@ async function handler(...args) {
13
13
  const supportsPreviewMode = match(args).with(routeHandlerPattern, () => false).with(apiRoutePattern, () => true).exhaustive();
14
14
  const supportsDraftMode = match(args).with(routeHandlerPattern, () => true).with(apiRoutePattern, () => false).exhaustive();
15
15
  const body = {
16
- version: "0.19.4",
16
+ version: "0.20.0-canary.0",
17
17
  previewMode: supportsPreviewMode,
18
18
  draftMode: supportsDraftMode,
19
19
  interactionMode: true,
@@ -1,5 +1,5 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
- import { forwardRef, useRef } from "react";
2
+ import { forwardRef, useRef, isValidElement } from "react";
3
3
  import { act } from "react-dom/test-utils";
4
4
  import { render, screen } from "@testing-library/react";
5
5
  import "@testing-library/jest-dom";
@@ -12,13 +12,19 @@ import {
12
12
  } from "../../../../utils/tests/element-data-test-test";
13
13
  const ROOT_ID = "00000000-0000-0000-0000-000000000000";
14
14
  const ELEMENT_ID = "11111111-1111-1111-1111-111111111111";
15
+ const renderProp = (prop) => prop === void 0 ? "undefined" : isValidElement(prop) ? prop : JSON.stringify(prop);
16
+ const propSnapshot = (prop) => prop.childElementCount ? prop.childNodes : parseStringifiedProp(prop.textContent ?? "");
17
+ const parseStringifiedProp = (prop) => prop === "undefined" ? void 0 : JSON.parse(prop);
15
18
  async function testPageControlPropRendering(controlDefinition, {
16
19
  toData,
17
20
  value,
18
21
  cacheData,
19
- expectedRenders
22
+ expectedRenders,
23
+ registerComponents,
24
+ action,
25
+ rootElements = []
20
26
  }) {
21
- const controlData = toData(value);
27
+ const controlData = value !== void 0 ? toData ? toData(value) : controlDefinition.toData(value) : void 0;
22
28
  const TestComponentType = "TestComponent";
23
29
  const testId = "test-id";
24
30
  const renderCountTestId = "render-count-test-id";
@@ -30,19 +36,21 @@ async function testPageControlPropRendering(controlDefinition, {
30
36
  props: {
31
37
  propKey: controlData
32
38
  }
33
- }
39
+ },
40
+ ...rootElements
34
41
  ],
35
42
  ROOT_ID
36
43
  );
37
44
  const snapshot = createMakeswiftPageSnapshot(elementData, {}, cacheData);
38
45
  const runtime = new ReactRuntime();
46
+ registerComponents?.(runtime);
39
47
  runtime.registerComponent(
40
48
  forwardRef(({ propKey }, ref) => {
41
49
  const renderCount = useRef(0);
42
50
  ++renderCount.current;
43
51
  return /* @__PURE__ */ jsxs("div", { ref, children: [
44
52
  /* @__PURE__ */ jsx("div", { "data-testid": renderCountTestId, children: renderCount.current }),
45
- /* @__PURE__ */ jsx("div", { "data-testid": testId, children: JSON.stringify(propKey) })
53
+ /* @__PURE__ */ jsx("div", { "data-testid": testId, children: renderProp(propKey) })
46
54
  ] });
47
55
  }),
48
56
  {
@@ -58,8 +66,13 @@ async function testPageControlPropRendering(controlDefinition, {
58
66
  /* @__PURE__ */ jsx(ReactRuntimeProvider, { runtime, children: /* @__PURE__ */ jsx(Page, { snapshot }) })
59
67
  )
60
68
  );
69
+ if (action) {
70
+ await act(async () => {
71
+ await action(screen.getByTestId(testId));
72
+ });
73
+ }
61
74
  expect(snapshot).toMatchSnapshot("snapshot");
62
- expect(JSON.parse(screen.getByTestId(testId).textContent ?? "")).toMatchSnapshot("resolvedValue");
75
+ expect(propSnapshot(screen.getByTestId(testId))).toMatchSnapshot("resolvedValue");
63
76
  if (expectedRenders != null) {
64
77
  expect(Number(screen.getByTestId(renderCountTestId).textContent)).toBe(expectedRenders);
65
78
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/next/components/tests/controls/page-control-prop-rendering.tsx"],"sourcesContent":["/** @jest-environment jsdom */\n\nimport { forwardRef, useRef } from 'react'\nimport { act } from 'react-dom/test-utils'\nimport { render, screen } from '@testing-library/react'\nimport '@testing-library/jest-dom'\n\nimport { Data } from '@makeswift/controls'\n\nimport { ElementData } from '../../../../state/react-page'\nimport { Page } from '../../page'\nimport { ReactRuntimeProvider } from '../../../context/react-runtime'\nimport { ReactRuntime } from '../../../../react'\n\nimport {\n createMakeswiftPageSnapshot,\n createRootComponent,\n} from '../../../../utils/tests/element-data-test-test'\n\nimport { type MakeswiftPageSnapshot } from '../../../../next'\nimport { ControlDefinition, ControlDefinitionData } from '../../../../controls'\n\nconst ROOT_ID = '00000000-0000-0000-0000-000000000000'\nconst ELEMENT_ID = '11111111-1111-1111-1111-111111111111'\n\nexport async function testPageControlPropRendering<T extends ControlDefinition>(\n controlDefinition: T,\n {\n toData,\n value,\n cacheData,\n expectedRenders,\n }: {\n toData: (value: Data) => ControlDefinitionData<T>\n value: Data\n cacheData?: MakeswiftPageSnapshot['cacheData']\n expectedRenders?: number\n },\n) {\n // Arrange\n const controlData = toData(value)\n const TestComponentType = 'TestComponent'\n const testId = 'test-id'\n const renderCountTestId = 'render-count-test-id'\n const elementData: ElementData = createRootComponent(\n [\n {\n key: ELEMENT_ID,\n type: TestComponentType,\n props: {\n propKey: controlData,\n },\n },\n ],\n ROOT_ID,\n )\n const snapshot = createMakeswiftPageSnapshot(elementData, {}, cacheData)\n const runtime = new ReactRuntime()\n\n // Act\n runtime.registerComponent(\n forwardRef<HTMLDivElement, { propKey?: any }>(({ propKey }, ref) => {\n const renderCount = useRef(0)\n ++renderCount.current\n return (\n <div ref={ref}>\n <div data-testid={renderCountTestId}>{renderCount.current}</div>\n <div data-testid={testId}>{JSON.stringify(propKey)}</div>\n </div>\n )\n }),\n {\n type: TestComponentType,\n label: 'TestComponent',\n props: {\n propKey: controlDefinition,\n },\n },\n )\n\n // Assert\n await act(async () =>\n render(\n <ReactRuntimeProvider runtime={runtime}>\n <Page snapshot={snapshot} />\n </ReactRuntimeProvider>,\n ),\n )\n\n expect(snapshot).toMatchSnapshot('snapshot')\n expect(JSON.parse(screen.getByTestId(testId).textContent ?? '')).toMatchSnapshot('resolvedValue')\n\n if (expectedRenders != null) {\n expect(Number(screen.getByTestId(renderCountTestId).textContent)).toBe(expectedRenders)\n }\n}\n"],"mappings":"AAiEQ,SACE,KADF;AA/DR,SAAS,YAAY,cAAc;AACnC,SAAS,WAAW;AACpB,SAAS,QAAQ,cAAc;AAC/B,OAAO;AAKP,SAAS,YAAY;AACrB,SAAS,4BAA4B;AACrC,SAAS,oBAAoB;AAE7B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAKP,MAAM,UAAU;AAChB,MAAM,aAAa;AAEnB,eAAsB,6BACpB,mBACA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAMA;AAEA,QAAM,cAAc,OAAO,KAAK;AAChC,QAAM,oBAAoB;AAC1B,QAAM,SAAS;AACf,QAAM,oBAAoB;AAC1B,QAAM,cAA2B;AAAA,IAC/B;AAAA,MACE;AAAA,QACE,KAAK;AAAA,QACL,MAAM;AAAA,QACN,OAAO;AAAA,UACL,SAAS;AAAA,QACX;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,EACF;AACA,QAAM,WAAW,4BAA4B,aAAa,CAAC,GAAG,SAAS;AACvE,QAAM,UAAU,IAAI,aAAa;AAGjC,UAAQ;AAAA,IACN,WAA8C,CAAC,EAAE,QAAQ,GAAG,QAAQ;AAClE,YAAM,cAAc,OAAO,CAAC;AAC5B,QAAE,YAAY;AACd,aACE,qBAAC,SAAI,KACH;AAAA,4BAAC,SAAI,eAAa,mBAAoB,sBAAY,SAAQ;AAAA,QAC1D,oBAAC,SAAI,eAAa,QAAS,eAAK,UAAU,OAAO,GAAE;AAAA,SACrD;AAAA,IAEJ,CAAC;AAAA,IACD;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAGA,QAAM;AAAA,IAAI,YACR;AAAA,MACE,oBAAC,wBAAqB,SACpB,8BAAC,QAAK,UAAoB,GAC5B;AAAA,IACF;AAAA,EACF;AAEA,SAAO,QAAQ,EAAE,gBAAgB,UAAU;AAC3C,SAAO,KAAK,MAAM,OAAO,YAAY,MAAM,EAAE,eAAe,EAAE,CAAC,EAAE,gBAAgB,eAAe;AAEhG,MAAI,mBAAmB,MAAM;AAC3B,WAAO,OAAO,OAAO,YAAY,iBAAiB,EAAE,WAAW,CAAC,EAAE,KAAK,eAAe;AAAA,EACxF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/next/components/tests/controls/page-control-prop-rendering.tsx"],"sourcesContent":["/** @jest-environment jsdom */\n\nimport { forwardRef, useRef, isValidElement } from 'react'\nimport { act } from 'react-dom/test-utils'\nimport { render, screen } from '@testing-library/react'\nimport '@testing-library/jest-dom'\n\nimport { type Data, type ValueType, type DataType, ControlDefinition } from '@makeswift/controls'\n\nimport { ElementData } from '../../../../state/react-page'\nimport { Page } from '../../page'\nimport { ReactRuntimeProvider } from '../../../context/react-runtime'\nimport { ReactRuntime } from '../../../../react'\n\nimport {\n createMakeswiftPageSnapshot,\n createRootComponent,\n} from '../../../../utils/tests/element-data-test-test'\n\nimport { type MakeswiftPageSnapshot } from '../../../../next'\n\nconst ROOT_ID = '00000000-0000-0000-0000-000000000000'\nconst ELEMENT_ID = '11111111-1111-1111-1111-111111111111'\n\nconst renderProp = (prop: any) =>\n prop === undefined ? 'undefined' : isValidElement(prop) ? prop : JSON.stringify(prop)\n\nconst propSnapshot = (prop: HTMLElement) =>\n prop.childElementCount ? prop.childNodes : parseStringifiedProp(prop.textContent ?? '')\n\nconst parseStringifiedProp = (prop: string) => (prop === 'undefined' ? undefined : JSON.parse(prop))\n\nexport async function testPageControlPropRendering<D extends ControlDefinition>(\n controlDefinition: D,\n {\n toData,\n value,\n cacheData,\n expectedRenders,\n registerComponents,\n action,\n rootElements = [],\n }: {\n toData?: (value: ValueType<D>) => DataType<D>\n value: ValueType<D> | undefined\n cacheData?: MakeswiftPageSnapshot['cacheData']\n expectedRenders?: number\n registerComponents?: (runtime: ReactRuntime) => void\n action?: (element: HTMLElement) => Promise<void>\n rootElements?: ElementData[]\n },\n) {\n // Arrange\n const controlData: DataType<D> | Data =\n value !== undefined ? (toData ? toData(value) : controlDefinition.toData(value)) : undefined\n\n const TestComponentType = 'TestComponent'\n const testId = 'test-id'\n const renderCountTestId = 'render-count-test-id'\n const elementData: ElementData = createRootComponent(\n [\n {\n key: ELEMENT_ID,\n type: TestComponentType,\n props: {\n propKey: controlData,\n },\n },\n ...rootElements,\n ],\n ROOT_ID,\n )\n const snapshot = createMakeswiftPageSnapshot(elementData, {}, cacheData)\n const runtime = new ReactRuntime()\n registerComponents?.(runtime)\n\n // Act\n runtime.registerComponent(\n forwardRef<HTMLDivElement, { propKey?: any }>(({ propKey }, ref) => {\n const renderCount = useRef(0)\n ++renderCount.current\n\n return (\n <div ref={ref}>\n <div data-testid={renderCountTestId}>{renderCount.current}</div>\n <div data-testid={testId}>{renderProp(propKey)}</div>\n </div>\n )\n }),\n {\n type: TestComponentType,\n label: 'TestComponent',\n props: {\n propKey: controlDefinition as any,\n },\n },\n )\n\n // Assert\n await act(async () =>\n render(\n <ReactRuntimeProvider runtime={runtime}>\n <Page snapshot={snapshot} />\n </ReactRuntimeProvider>,\n ),\n )\n\n if (action) {\n await act(async () => {\n await action(screen.getByTestId(testId))\n })\n }\n\n expect(snapshot).toMatchSnapshot('snapshot')\n expect(propSnapshot(screen.getByTestId(testId))).toMatchSnapshot('resolvedValue')\n\n if (expectedRenders != null) {\n expect(Number(screen.getByTestId(renderCountTestId).textContent)).toBe(expectedRenders)\n }\n}\n"],"mappings":"AAmFQ,SACE,KADF;AAjFR,SAAS,YAAY,QAAQ,sBAAsB;AACnD,SAAS,WAAW;AACpB,SAAS,QAAQ,cAAc;AAC/B,OAAO;AAKP,SAAS,YAAY;AACrB,SAAS,4BAA4B;AACrC,SAAS,oBAAoB;AAE7B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAIP,MAAM,UAAU;AAChB,MAAM,aAAa;AAEnB,MAAM,aAAa,CAAC,SAClB,SAAS,SAAY,cAAc,eAAe,IAAI,IAAI,OAAO,KAAK,UAAU,IAAI;AAEtF,MAAM,eAAe,CAAC,SACpB,KAAK,oBAAoB,KAAK,aAAa,qBAAqB,KAAK,eAAe,EAAE;AAExF,MAAM,uBAAuB,CAAC,SAAkB,SAAS,cAAc,SAAY,KAAK,MAAM,IAAI;AAElG,eAAsB,6BACpB,mBACA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe,CAAC;AAClB,GASA;AAEA,QAAM,cACJ,UAAU,SAAa,SAAS,OAAO,KAAK,IAAI,kBAAkB,OAAO,KAAK,IAAK;AAErF,QAAM,oBAAoB;AAC1B,QAAM,SAAS;AACf,QAAM,oBAAoB;AAC1B,QAAM,cAA2B;AAAA,IAC/B;AAAA,MACE;AAAA,QACE,KAAK;AAAA,QACL,MAAM;AAAA,QACN,OAAO;AAAA,UACL,SAAS;AAAA,QACX;AAAA,MACF;AAAA,MACA,GAAG;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACA,QAAM,WAAW,4BAA4B,aAAa,CAAC,GAAG,SAAS;AACvE,QAAM,UAAU,IAAI,aAAa;AACjC,uBAAqB,OAAO;AAG5B,UAAQ;AAAA,IACN,WAA8C,CAAC,EAAE,QAAQ,GAAG,QAAQ;AAClE,YAAM,cAAc,OAAO,CAAC;AAC5B,QAAE,YAAY;AAEd,aACE,qBAAC,SAAI,KACH;AAAA,4BAAC,SAAI,eAAa,mBAAoB,sBAAY,SAAQ;AAAA,QAC1D,oBAAC,SAAI,eAAa,QAAS,qBAAW,OAAO,GAAE;AAAA,SACjD;AAAA,IAEJ,CAAC;AAAA,IACD;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAGA,QAAM;AAAA,IAAI,YACR;AAAA,MACE,oBAAC,wBAAqB,SACpB,8BAAC,QAAK,UAAoB,GAC5B;AAAA,IACF;AAAA,EACF;AAEA,MAAI,QAAQ;AACV,UAAM,IAAI,YAAY;AACpB,YAAM,OAAO,OAAO,YAAY,MAAM,CAAC;AAAA,IACzC,CAAC;AAAA,EACH;AAEA,SAAO,QAAQ,EAAE,gBAAgB,UAAU;AAC3C,SAAO,aAAa,OAAO,YAAY,MAAM,CAAC,CAAC,EAAE,gBAAgB,eAAe;AAEhF,MAAI,mBAAmB,MAAM;AAC3B,WAAO,OAAO,OAAO,YAAY,iBAAiB,EAAE,WAAW,CAAC,EAAE,KAAK,eAAe;AAAA,EACxF;AACF;","names":[]}
@@ -6,15 +6,17 @@ import {
6
6
  copyGridPropControllerData,
7
7
  copyImagePropControllerData,
8
8
  copyImagesPropControllerData,
9
- copyBackgroundsPropControllerData
10
- } from "@makeswift/prop-controllers";
11
- import { Types as PropControllerTypes } from "@makeswift/prop-controllers";
12
- import {
9
+ copyBackgroundsPropControllerData,
13
10
  copyResponsiveColorPropControllerData,
14
11
  copyTablePropControllerData,
15
- copyNavigationLinksPropControllerData
12
+ copyNavigationLinksPropControllerData,
13
+ Types as PropControllerTypes
16
14
  } from "@makeswift/prop-controllers";
15
+ import { isLegacyDescriptor } from "./descriptors";
17
16
  function copy(descriptor, value, context) {
17
+ if (!isLegacyDescriptor(descriptor)) {
18
+ return descriptor.copyData(value, context);
19
+ }
18
20
  switch (descriptor.type) {
19
21
  case PropControllerTypes.Backgrounds:
20
22
  return copyBackgroundsPropControllerData(descriptor, value, context);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prop-controllers/copy.ts"],"sourcesContent":["import { Descriptor } from './descriptors'\nimport {\n copyLinkPropControllerData,\n copyShadowsPropControllerData,\n copyBorderPropControllerData,\n copyElementIDPropControllerData,\n copyGridPropControllerData,\n copyImagePropControllerData,\n copyImagesPropControllerData,\n copyBackgroundsPropControllerData,\n} from '@makeswift/prop-controllers'\nimport { CopyContext } from '../state/react-page'\nimport { Types as PropControllerTypes } from '@makeswift/prop-controllers'\nimport {\n copyResponsiveColorPropControllerData,\n copyTablePropControllerData,\n copyNavigationLinksPropControllerData,\n} from '@makeswift/prop-controllers'\n\n// @note: note typing value, because would then have to type narrow `Data` per case\nexport function copy(descriptor: Descriptor, value: any, context: CopyContext) {\n switch (descriptor.type) {\n case PropControllerTypes.Backgrounds:\n return copyBackgroundsPropControllerData(descriptor, value, context)\n case PropControllerTypes.Grid:\n return copyGridPropControllerData(value, context)\n case PropControllerTypes.NavigationLinks:\n return copyNavigationLinksPropControllerData(value, context)\n case PropControllerTypes.Link:\n return copyLinkPropControllerData(value, context)\n case PropControllerTypes.Shadows:\n return copyShadowsPropControllerData(value, context)\n case PropControllerTypes.Image:\n return copyImagePropControllerData(value, context)\n case PropControllerTypes.Images:\n return copyImagesPropControllerData(value, context)\n case PropControllerTypes.ResponsiveColor:\n return copyResponsiveColorPropControllerData(value, context)\n case PropControllerTypes.TableFormFields:\n return copyTablePropControllerData(value, context)\n case PropControllerTypes.Table:\n return copyTablePropControllerData(value, context)\n case PropControllerTypes.Border:\n return copyBorderPropControllerData(value, context)\n case PropControllerTypes.ElementID:\n return copyElementIDPropControllerData(value, context)\n default:\n return value\n }\n}\n\nexport function copyElementReference(value: string, context: CopyContext) {\n return context.replacementContext.globalElementIds.get(value) || value\n}\n"],"mappings":"AACA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,SAAS,2BAA2B;AAC7C;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAGA,SAAS,KAAK,YAAwB,OAAY,SAAsB;AAC7E,UAAQ,WAAW,MAAM;AAAA,IACvB,KAAK,oBAAoB;AACvB,aAAO,kCAAkC,YAAY,OAAO,OAAO;AAAA,IACrE,KAAK,oBAAoB;AACvB,aAAO,2BAA2B,OAAO,OAAO;AAAA,IAClD,KAAK,oBAAoB;AACvB,aAAO,sCAAsC,OAAO,OAAO;AAAA,IAC7D,KAAK,oBAAoB;AACvB,aAAO,2BAA2B,OAAO,OAAO;AAAA,IAClD,KAAK,oBAAoB;AACvB,aAAO,8BAA8B,OAAO,OAAO;AAAA,IACrD,KAAK,oBAAoB;AACvB,aAAO,4BAA4B,OAAO,OAAO;AAAA,IACnD,KAAK,oBAAoB;AACvB,aAAO,6BAA6B,OAAO,OAAO;AAAA,IACpD,KAAK,oBAAoB;AACvB,aAAO,sCAAsC,OAAO,OAAO;AAAA,IAC7D,KAAK,oBAAoB;AACvB,aAAO,4BAA4B,OAAO,OAAO;AAAA,IACnD,KAAK,oBAAoB;AACvB,aAAO,4BAA4B,OAAO,OAAO;AAAA,IACnD,KAAK,oBAAoB;AACvB,aAAO,6BAA6B,OAAO,OAAO;AAAA,IACpD,KAAK,oBAAoB;AACvB,aAAO,gCAAgC,OAAO,OAAO;AAAA,IACvD;AACE,aAAO;AAAA,EACX;AACF;AAEO,SAAS,qBAAqB,OAAe,SAAsB;AACxE,SAAO,QAAQ,mBAAmB,iBAAiB,IAAI,KAAK,KAAK;AACnE;","names":[]}
1
+ {"version":3,"sources":["../../../src/prop-controllers/copy.ts"],"sourcesContent":["import { type CopyContext } from '@makeswift/controls'\n\nimport {\n copyLinkPropControllerData,\n copyShadowsPropControllerData,\n copyBorderPropControllerData,\n copyElementIDPropControllerData,\n copyGridPropControllerData,\n copyImagePropControllerData,\n copyImagesPropControllerData,\n copyBackgroundsPropControllerData,\n copyResponsiveColorPropControllerData,\n copyTablePropControllerData,\n copyNavigationLinksPropControllerData,\n Types as PropControllerTypes,\n} from '@makeswift/prop-controllers'\n\nimport { isLegacyDescriptor, type Descriptor } from './descriptors'\n\n// @note: note typing value, because would then have to type narrow `Data` per case\nexport function copy(descriptor: Descriptor, value: any, context: CopyContext) {\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.copyData(value, context)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Backgrounds:\n return copyBackgroundsPropControllerData(descriptor, value, context)\n\n case PropControllerTypes.Grid:\n return copyGridPropControllerData(value, context)\n\n case PropControllerTypes.NavigationLinks:\n return copyNavigationLinksPropControllerData(value, context)\n\n case PropControllerTypes.Link:\n return copyLinkPropControllerData(value, context)\n\n case PropControllerTypes.Shadows:\n return copyShadowsPropControllerData(value, context)\n\n case PropControllerTypes.Image:\n return copyImagePropControllerData(value, context)\n\n case PropControllerTypes.Images:\n return copyImagesPropControllerData(value, context)\n\n case PropControllerTypes.ResponsiveColor:\n return copyResponsiveColorPropControllerData(value, context)\n\n case PropControllerTypes.TableFormFields:\n return copyTablePropControllerData(value, context)\n\n case PropControllerTypes.Table:\n return copyTablePropControllerData(value, context)\n\n case PropControllerTypes.Border:\n return copyBorderPropControllerData(value, context)\n\n case PropControllerTypes.ElementID:\n return copyElementIDPropControllerData(value, context)\n\n // FIXME: DELETED_PROP_CONTROLLER_TYPES.RichText ??\n\n default:\n return value\n }\n}\n\nexport function copyElementReference(value: string, context: CopyContext) {\n return context.replacementContext.globalElementIds.get(value) || value\n}\n"],"mappings":"AAEA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,SAAS;AAAA,OACJ;AAEP,SAAS,0BAA2C;AAG7C,SAAS,KAAK,YAAwB,OAAY,SAAsB;AAC7E,MAAI,CAAC,mBAAmB,UAAU,GAAG;AACnC,WAAO,WAAW,SAAS,OAAO,OAAO;AAAA,EAC3C;AAEA,UAAQ,WAAW,MAAM;AAAA,IACvB,KAAK,oBAAoB;AACvB,aAAO,kCAAkC,YAAY,OAAO,OAAO;AAAA,IAErE,KAAK,oBAAoB;AACvB,aAAO,2BAA2B,OAAO,OAAO;AAAA,IAElD,KAAK,oBAAoB;AACvB,aAAO,sCAAsC,OAAO,OAAO;AAAA,IAE7D,KAAK,oBAAoB;AACvB,aAAO,2BAA2B,OAAO,OAAO;AAAA,IAElD,KAAK,oBAAoB;AACvB,aAAO,8BAA8B,OAAO,OAAO;AAAA,IAErD,KAAK,oBAAoB;AACvB,aAAO,4BAA4B,OAAO,OAAO;AAAA,IAEnD,KAAK,oBAAoB;AACvB,aAAO,6BAA6B,OAAO,OAAO;AAAA,IAEpD,KAAK,oBAAoB;AACvB,aAAO,sCAAsC,OAAO,OAAO;AAAA,IAE7D,KAAK,oBAAoB;AACvB,aAAO,4BAA4B,OAAO,OAAO;AAAA,IAEnD,KAAK,oBAAoB;AACvB,aAAO,4BAA4B,OAAO,OAAO;AAAA,IAEnD,KAAK,oBAAoB;AACvB,aAAO,6BAA6B,OAAO,OAAO;AAAA,IAEpD,KAAK,oBAAoB;AACvB,aAAO,gCAAgC,OAAO,OAAO;AAAA,IAIvD;AACE,aAAO;AAAA,EACX;AACF;AAEO,SAAS,qBAAqB,OAAe,SAAsB;AACxE,SAAO,QAAQ,mBAAmB,iBAAiB,IAAI,KAAK,KAAK;AACnE;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prop-controllers/deleted.ts"],"sourcesContent":["import { RichTextValue } from '../controls'\nimport { Data, DescriptorValueType, PanelDescriptor } from './descriptors'\n\nexport const DELETED_PROP_CONTROLLER_TYPES = {\n List: 'List',\n RichText: 'RichText',\n Shape: 'Shape',\n Typeahead: 'Typeahead',\n} as const\n\nexport type DeletedPropControllerDescriptor<T extends Data = Data> =\n | ListDescriptor<T extends ListValue ? T : ListValue>\n | RichTextDescriptor<T>\n | ShapeDescriptor<T extends ShapeValue ? T : ShapeValue, any>\n | TypeaheadDescriptor<T extends TypeaheadValue ? T : TypeaheadValue>\n\ntype ListValueItem<T extends Data> = { id: string; value?: T }\n\nexport type ListValue<T extends Data = Data> = ListValueItem<T>[]\n\nexport type ListOptions<T extends Data> = {\n type: PanelDescriptor<T>\n label?: string\n getItemLabel?: ((value: T | undefined) => string) | ((value: T | undefined) => Promise<string>)\n preset?: ListValue<T>\n defaultValue?: ListValue<T>\n}\n\nexport type ListDescriptor<T extends ListValue = ListValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.List\n options: ListOptions<T extends ListValue<infer U> ? U : never>\n}\n\nexport type RichTextOptions = { preset?: RichTextValue }\n\nexport type RichTextDescriptor<_T extends Data = RichTextValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.RichText\n options: RichTextOptions\n}\n\nexport type ShapeValue<T extends Data = Data> = Record<string, T>\n\ntype ShapeOptions<T extends Record<string, PanelDescriptor>> = {\n type: T\n preset?: { [K in keyof T]?: DescriptorValueType<T[K]> }\n}\n\nexport type ShapeDescriptor<\n _T extends Record<string, Data>,\n U extends Record<string, PanelDescriptor>,\n> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.Shape\n options: ShapeOptions<U>\n}\n\nexport type TypeaheadValue<T extends Data = Data> = {\n id: string\n label: string\n value: T\n}\n\nexport type TypeaheadOptions<T extends Data> = {\n getItems: (query: string) => Promise<TypeaheadValue<T>[]>\n label?: string\n preset?: TypeaheadValue<T>\n defaultValue?: TypeaheadValue<T>\n}\n\nexport type TypeaheadDescriptor<T extends TypeaheadValue = TypeaheadValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.Typeahead\n options: TypeaheadOptions<T extends TypeaheadValue<infer U> ? U : never>\n}\n"],"mappings":"AAGO,MAAM,gCAAgC;AAAA,EAC3C,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAO;AAAA,EACP,WAAW;AACb;","names":[]}
1
+ {"version":3,"sources":["../../../src/prop-controllers/deleted.ts"],"sourcesContent":["import { type RichTextValue } from '@makeswift/controls'\nimport { Data, DescriptorValueType, PanelDescriptor } from './descriptors'\n\nexport const DELETED_PROP_CONTROLLER_TYPES = {\n List: 'List',\n RichText: 'RichText',\n Shape: 'Shape',\n Typeahead: 'Typeahead',\n} as const\n\nexport type DeletedPropControllerDescriptor<T extends Data = Data> =\n | ListDescriptor<T extends ListValue ? T : ListValue>\n | RichTextDescriptor<T>\n | ShapeDescriptor<T extends ShapeValue ? T : ShapeValue, any>\n | TypeaheadDescriptor<T extends TypeaheadValue ? T : TypeaheadValue>\n\ntype ListValueItem<T extends Data> = { id: string; value?: T }\n\nexport type ListValue<T extends Data = Data> = ListValueItem<T>[]\n\nexport type ListOptions<T extends Data> = {\n type: PanelDescriptor<T>\n label?: string\n getItemLabel?: ((value: T | undefined) => string) | ((value: T | undefined) => Promise<string>)\n preset?: ListValue<T>\n defaultValue?: ListValue<T>\n}\n\nexport type ListDescriptor<T extends ListValue = ListValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.List\n options: ListOptions<T extends ListValue<infer U> ? U : never>\n}\n\nexport type RichTextOptions = { preset?: RichTextValue }\n\nexport type RichTextDescriptor<_T extends Data = RichTextValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.RichText\n options: RichTextOptions\n}\n\nexport type ShapeValue<T extends Data = Data> = Record<string, T>\n\ntype ShapeOptions<T extends Record<string, PanelDescriptor>> = {\n type: T\n preset?: { [K in keyof T]?: DescriptorValueType<T[K]> }\n}\n\nexport type ShapeDescriptor<\n _T extends Record<string, Data>,\n U extends Record<string, PanelDescriptor>,\n> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.Shape\n options: ShapeOptions<U>\n}\n\nexport type TypeaheadValue<T extends Data = Data> = {\n id: string\n label: string\n value: T\n}\n\nexport type TypeaheadOptions<T extends Data> = {\n getItems: (query: string) => Promise<TypeaheadValue<T>[]>\n label?: string\n preset?: TypeaheadValue<T>\n defaultValue?: TypeaheadValue<T>\n}\n\nexport type TypeaheadDescriptor<T extends TypeaheadValue = TypeaheadValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.Typeahead\n options: TypeaheadOptions<T extends TypeaheadValue<infer U> ? U : never>\n}\n"],"mappings":"AAGO,MAAM,gCAAgC;AAAA,EAC3C,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAO;AAAA,EACP,WAAW;AACb;","names":[]}
@@ -1,8 +1,10 @@
1
- import { StyleControlType } from "../controls/style";
2
- const Types = {
3
- Style: StyleControlType
4
- };
1
+ import {
2
+ ControlDefinition as UnifiedControlDefinition
3
+ } from "@makeswift/controls";
4
+ function isLegacyDescriptor(control) {
5
+ return !(control instanceof UnifiedControlDefinition);
6
+ }
5
7
  export {
6
- Types
8
+ isLegacyDescriptor
7
9
  };
8
10
  //# sourceMappingURL=descriptors.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prop-controllers/descriptors.ts"],"sourcesContent":["import {\n CheckboxControlDefinition,\n IconRadioGroupControlDefinition,\n NumberControlDefinition,\n TextInputControlDefinition,\n TextAreaControlDefinition,\n} from '@makeswift/controls'\nimport { ResponsiveColor } from '../runtimes/react/controls'\nimport { StyleControlFormattedValue } from '../runtimes/react/controls/style'\nimport type { Data } from '../state/react-page'\nimport { NumberControlValue } from '../runtimes/react/controls/number'\nimport { StyleControlType } from '../controls/style'\nimport {\n ColorControlDefinition,\n ComboboxControlDefinition,\n ImageControlDefinition,\n LinkControlDefinition,\n ListControlDefinition,\n SelectControlDefinition,\n ShapeControlDefinition,\n SlotControlDefinition,\n StyleControlDefinition,\n RichTextV2ControlDefinition,\n StyleV2ControlDefinition,\n TypographyControlDefinition,\n} from '../controls'\nimport { TextInputControlValue } from '../runtimes/react/controls/text-input'\nimport { TextAreaControlValue } from '../runtimes/react/controls/text-area'\nimport { ColorControlValue } from '../runtimes/react/controls/color'\nimport { SelectControlValue } from '../runtimes/react/controls/select'\nimport { CheckboxControlValue } from '../runtimes/react/controls/checkbox'\nimport { ResolveImageControlValue } from '../runtimes/react/controls/image'\nimport { ShapeControlValue } from '../runtimes/react/controls/shape'\nimport { ListControlValue } from '../runtimes/react/controls/list'\nimport { ComboboxControlValue } from '../runtimes/react/controls/combobox'\nimport { LinkControlValue } from '../runtimes/react/controls/link'\nimport { SlotControlValue } from '../runtimes/react/controls/slot'\nimport { RichTextControlDefinition } from '../controls/rich-text'\nimport { RichTextControlValue } from '../runtimes/react/controls/rich-text/rich-text'\nimport { RichTextV2ControlValue } from '../runtimes/react/controls/rich-text-v2'\nimport { StyleV2ControlFormattedValue } from '../runtimes/react/controls/style-v2'\nimport { IconRadioGroupControlValue } from '../runtimes/react/controls/icon-radio-group'\nimport { TypographyControlValue } from '../runtimes/react/controls/typography'\nimport {\n BorderDescriptor,\n CheckboxDescriptor,\n LinkDescriptor,\n ResolveLinkPropControllerValue,\n Types as PropControllerTypes,\n ShadowsDescriptor,\n ResolveShadowsPropControllerValue,\n ResponsiveLengthDescriptor,\n ResolveResponsiveLengthPropControllerValue,\n NumberDescriptor,\n ResolveNumberPropControllerValue,\n ResponsiveColorDescriptor,\n ResolveCheckboxPropControllerValue,\n BorderRadiusDescriptor,\n ResolveBorderPropControllerValue,\n ResolveBorderRadiusPropControllerValue,\n DateDescriptor,\n ResolveDatePropControllerValue,\n FontDescriptor,\n ResolveFontPropControllerValue,\n VideoDescriptor,\n ResolveVideoPropControllerValue,\n TableDescriptor,\n ResolveTablePropControllerValue,\n MarginDescriptor,\n ResolveMarginPropControllerValue,\n PaddingDescriptor,\n ResolvePaddingPropControllerValue,\n WidthDescriptor,\n ResolveWidthPropControllerValue,\n TextStyleDescriptor,\n ResolveTextStylePropControllerValue,\n NavigationLinksDescriptor,\n ResolveNavigationLinksPropControllerValue,\n TextAreaDescriptor,\n ResolveTextAreaPropControllerValue,\n GapX,\n ResponsiveNumber,\n ResponsiveSelect,\n ResolveGapYPropControllerValue,\n GapYDescriptor,\n ElementIDDescriptor,\n ResolveElementIDPropControllerValue,\n TableFormFieldsDescriptor,\n ResolveTableFormFieldsPropControllerValue,\n GridDescriptor,\n ResolveGridPropControllerValue,\n ImageDescriptor,\n ResolveImagePropControllerValue,\n ImagesDescriptor,\n ResolveImagesPropControllerValue,\n BackgroundsDescriptor,\n ResolveBackgroundsPropControllerValue,\n ResponsiveOpacity,\n ResponsiveIconRadioGroup,\n ResolveSocialLinksPropControllerValue,\n SocialLinksDescriptor,\n TextInputDescriptor,\n ResolveTextInputPropControllerValue,\n type Descriptor as PropDescriptor,\n type Value as PropValue,\n} from '@makeswift/prop-controllers'\nimport { DeletedPropControllerDescriptor } from './deleted'\n\nexport type { Data }\n\nexport type Gap = { value: number; unit: 'px' }\n\nexport const Types = {\n Style: StyleControlType,\n} as const\n\nexport type Descriptor<T extends Data = Data> =\n | DeletedPropControllerDescriptor<T>\n | BackgroundsDescriptor<T>\n | BorderDescriptor<T>\n | BorderRadiusDescriptor<T>\n | CheckboxDescriptor<T>\n | DateDescriptor<T>\n | ElementIDDescriptor<T>\n | FontDescriptor<T>\n | PropDescriptor<typeof GapX>\n | GapYDescriptor<T>\n | GridDescriptor<T>\n | ImageDescriptor<T>\n | ImagesDescriptor<T>\n | LinkDescriptor<T>\n | MarginDescriptor<T>\n | NavigationLinksDescriptor<T>\n | NumberDescriptor<T>\n | PaddingDescriptor<T>\n | ResponsiveColorDescriptor<T>\n | ResponsiveLengthDescriptor<T>\n | PropDescriptor<typeof ResponsiveIconRadioGroup>\n | PropDescriptor<typeof ResponsiveNumber>\n | PropDescriptor<typeof ResponsiveOpacity>\n | PropDescriptor<typeof ResponsiveSelect>\n | ShadowsDescriptor<T>\n | SocialLinksDescriptor<T>\n | TableDescriptor<T>\n | TableFormFieldsDescriptor<T>\n | TextAreaDescriptor<T>\n | TextInputDescriptor<T>\n | TextStyleDescriptor<T>\n | VideoDescriptor<T>\n | WidthDescriptor<T>\n | StyleControlDefinition\n | StyleV2ControlDefinition\n | NumberControlDefinition\n | CheckboxControlDefinition\n | TextInputControlDefinition\n | TextAreaControlDefinition\n | SelectControlDefinition\n | ColorControlDefinition\n | IconRadioGroupControlDefinition\n | ImageControlDefinition\n | ComboboxControlDefinition\n | ShapeControlDefinition\n | ListControlDefinition\n | LinkControlDefinition\n | SlotControlDefinition\n | RichTextControlDefinition\n | RichTextV2ControlDefinition\n | TypographyControlDefinition\n\nexport type PanelDescriptorType =\n | typeof PropControllerTypes.Backgrounds\n | typeof PropControllerTypes.ResponsiveIconRadioGroup\n | typeof PropControllerTypes.Margin\n | typeof PropControllerTypes.Padding\n | typeof PropControllerTypes.Shadows\n | typeof PropControllerTypes.Border\n | typeof PropControllerTypes.GapY\n | typeof PropControllerTypes.GapX\n | typeof PropControllerTypes.BorderRadius\n | typeof PropControllerTypes.Checkbox\n | typeof PropControllerTypes.TextInput\n | typeof PropControllerTypes.Link\n | typeof PropControllerTypes.ResponsiveSelect\n | typeof PropControllerTypes.ResponsiveColor\n | typeof PropControllerTypes.TextStyle\n | typeof PropControllerTypes.Images\n | typeof PropControllerTypes.ResponsiveNumber\n | typeof PropControllerTypes.Number\n | typeof PropControllerTypes.Date\n | typeof PropControllerTypes.Font\n | typeof PropControllerTypes.TextArea\n | typeof PropControllerTypes.Table\n | typeof PropControllerTypes.Image\n | typeof PropControllerTypes.ResponsiveOpacity\n | typeof PropControllerTypes.SocialLinks\n | typeof PropControllerTypes.Video\n | typeof PropControllerTypes.NavigationLinks\n\nexport type PanelDescriptor<T extends Data = Data> = Extract<\n Descriptor<T>,\n { type: PanelDescriptorType }\n>\n\nexport type DescriptorValueType<T extends Descriptor> = T extends NumberControlDefinition\n ? NumberControlValue<T>\n : T extends CheckboxControlDefinition\n ? CheckboxControlValue<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 StyleControlDefinition\n ? StyleControlFormattedValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends IconRadioGroupControlDefinition\n ? IconRadioGroupControlValue<T>\n : T extends ImageControlDefinition\n ? ResolveImageControlValue<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 LinkControlDefinition\n ? LinkControlValue<T>\n : T extends SlotControlDefinition\n ? SlotControlValue\n : T extends RichTextControlDefinition\n ? RichTextControlValue\n : T extends RichTextV2ControlDefinition\n ? RichTextV2ControlValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends TypographyControlDefinition\n ? TypographyControlValue\n : T['type'] extends typeof PropControllerTypes.ResponsiveColor\n ? // TODO(miguel): We're not importing a resolver type from `@makeswift/prop-controllers` because\n // the resolved type is tightly coupled with the runtime (i.e., it's the result of an API call).\n // This means that we probably want to rethink how types are resolved and where that lives.\n ResponsiveColor | null | undefined\n : T['type'] extends typeof PropControllerTypes.Backgrounds\n ? ResolveBackgroundsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.Backgrounds }>\n >\n : T['type'] extends typeof PropControllerTypes.Checkbox\n ? ResolveCheckboxPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Checkbox }>>\n : T['type'] extends typeof PropControllerTypes.Date\n ? ResolveDatePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Date }>>\n : T['type'] extends typeof PropControllerTypes.ElementID\n ? ResolveElementIDPropControllerValue<Extract<T, { type: typeof PropControllerTypes.ElementID }>>\n : T['type'] extends typeof PropControllerTypes.Font\n ? ResolveFontPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Font }>>\n : T['type'] extends typeof PropControllerTypes.GapX\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.GapY\n ? ResolveGapYPropControllerValue<Extract<T, { type: typeof PropControllerTypes.GapY }>>\n : T['type'] extends typeof PropControllerTypes.Grid\n ? ResolveGridPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Grid }>>\n : T['type'] extends typeof PropControllerTypes.Image\n ? ResolveImagePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Image }>>\n : T['type'] extends typeof PropControllerTypes.Images\n ? ResolveImagesPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Images }>>\n : T['type'] extends typeof PropControllerTypes.ResponsiveIconRadioGroup\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveNumber\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveOpacity\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveSelect\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.Link\n ? ResolveLinkPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Link }>>\n : T['type'] extends typeof PropControllerTypes.Width\n ? ResolveWidthPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Width }>>\n : T['type'] extends typeof PropControllerTypes.Padding\n ? ResolvePaddingPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Padding }>>\n : T['type'] extends typeof PropControllerTypes.Margin\n ? ResolveMarginPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Margin }>>\n : T['type'] extends typeof PropControllerTypes.NavigationLinks\n ? ResolveNavigationLinksPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.NavigationLinks }>\n >\n : T['type'] extends typeof PropControllerTypes.BorderRadius\n ? ResolveBorderRadiusPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.BorderRadius }>\n >\n : T['type'] extends typeof PropControllerTypes.Shadows\n ? ResolveShadowsPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Shadows }>>\n : T['type'] extends typeof PropControllerTypes.SocialLinks\n ? ResolveSocialLinksPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.SocialLinks }>\n >\n : T['type'] extends typeof PropControllerTypes.ResponsiveLength\n ? ResolveResponsiveLengthPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.ResponsiveLength }>\n >\n : T['type'] extends typeof PropControllerTypes.Border\n ? ResolveBorderPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Border }>>\n : T['type'] extends typeof PropControllerTypes.Number\n ? ResolveNumberPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Number }>>\n : T['type'] extends typeof PropControllerTypes.Table\n ? ResolveTablePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Table }>>\n : T['type'] extends typeof PropControllerTypes.TableFormFields\n ? ResolveTableFormFieldsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.TableFormFields }>\n >\n : T['type'] extends typeof PropControllerTypes.TextStyle\n ? ResolveTextStylePropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextStyle }>>\n : T['type'] extends typeof PropControllerTypes.TextArea\n ? ResolveTextAreaPropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextArea }>>\n : T['type'] extends typeof PropControllerTypes.TextInput\n ? ResolveTextInputPropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextInput }>>\n : T['type'] extends typeof PropControllerTypes.Video\n ? ResolveVideoPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Video }>>\n : T extends Descriptor<infer U>\n ? U | undefined\n : never\n\nexport type PanelDescriptorValueType<T extends PanelDescriptor> = T extends PanelDescriptor<infer U>\n ? U\n : never\n"],"mappings":"AAWA,SAAS,wBAAwB;AAqG1B,MAAM,QAAQ;AAAA,EACnB,OAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../src/prop-controllers/descriptors.ts"],"sourcesContent":["import {\n type ResolvedValueType,\n ControlDefinition as UnifiedControlDefinition,\n} from '@makeswift/controls'\n\nimport { type ResponsiveColor } from '../components/utils/types'\nimport type { Data } from '../state/react-page'\nimport {\n BorderDescriptor,\n CheckboxDescriptor,\n LinkDescriptor,\n ResolveLinkPropControllerValue,\n Types as PropControllerTypes,\n ShadowsDescriptor,\n ResolveShadowsPropControllerValue,\n ResponsiveLengthDescriptor,\n ResolveResponsiveLengthPropControllerValue,\n NumberDescriptor,\n ResolveNumberPropControllerValue,\n ResponsiveColorDescriptor,\n ResolveCheckboxPropControllerValue,\n BorderRadiusDescriptor,\n ResolveBorderPropControllerValue,\n ResolveBorderRadiusPropControllerValue,\n DateDescriptor,\n ResolveDatePropControllerValue,\n FontDescriptor,\n ResolveFontPropControllerValue,\n VideoDescriptor,\n ResolveVideoPropControllerValue,\n TableDescriptor,\n ResolveTablePropControllerValue,\n MarginDescriptor,\n ResolveMarginPropControllerValue,\n PaddingDescriptor,\n ResolvePaddingPropControllerValue,\n WidthDescriptor,\n ResolveWidthPropControllerValue,\n TextStyleDescriptor,\n ResolveTextStylePropControllerValue,\n NavigationLinksDescriptor,\n ResolveNavigationLinksPropControllerValue,\n TextAreaDescriptor,\n ResolveTextAreaPropControllerValue,\n GapX,\n ResponsiveNumber,\n ResponsiveSelect,\n ResolveGapYPropControllerValue,\n GapYDescriptor,\n ElementIDDescriptor,\n ResolveElementIDPropControllerValue,\n TableFormFieldsDescriptor,\n ResolveTableFormFieldsPropControllerValue,\n GridDescriptor,\n ResolveGridPropControllerValue,\n ImageDescriptor,\n ResolveImagePropControllerValue,\n ImagesDescriptor,\n ResolveImagesPropControllerValue,\n BackgroundsDescriptor,\n ResolveBackgroundsPropControllerValue,\n ResponsiveOpacity,\n ResponsiveIconRadioGroup,\n ResolveSocialLinksPropControllerValue,\n SocialLinksDescriptor,\n TextInputDescriptor,\n ResolveTextInputPropControllerValue,\n type Descriptor as PropDescriptor,\n type Value as PropValue,\n} from '@makeswift/prop-controllers'\n\nimport { DeletedPropControllerDescriptor } from './deleted'\n\nexport type { Data }\n\nexport type Gap = { value: number; unit: 'px' }\n\ntype PropControllerDescriptor<T extends Data = Data> =\n | DeletedPropControllerDescriptor<T>\n | BackgroundsDescriptor<T>\n | BorderDescriptor<T>\n | BorderRadiusDescriptor<T>\n | CheckboxDescriptor<T>\n | DateDescriptor<T>\n | ElementIDDescriptor<T>\n | FontDescriptor<T>\n | PropDescriptor<typeof GapX>\n | GapYDescriptor<T>\n | GridDescriptor<T>\n | ImageDescriptor<T>\n | ImagesDescriptor<T>\n | LinkDescriptor<T>\n | MarginDescriptor<T>\n | NavigationLinksDescriptor<T>\n | NumberDescriptor<T>\n | PaddingDescriptor<T>\n | ResponsiveColorDescriptor<T>\n | ResponsiveLengthDescriptor<T>\n | PropDescriptor<typeof ResponsiveIconRadioGroup>\n | PropDescriptor<typeof ResponsiveNumber>\n | PropDescriptor<typeof ResponsiveOpacity>\n | PropDescriptor<typeof ResponsiveSelect>\n | ShadowsDescriptor<T>\n | SocialLinksDescriptor<T>\n | TableDescriptor<T>\n | TableFormFieldsDescriptor<T>\n | TextAreaDescriptor<T>\n | TextInputDescriptor<T>\n | TextStyleDescriptor<T>\n | VideoDescriptor<T>\n | WidthDescriptor<T>\n\nexport type LegacyDescriptor<T extends Data = Data> = PropControllerDescriptor<T>\n\nexport type Descriptor<T extends Data = Data> = LegacyDescriptor<T> | UnifiedControlDefinition\n\nexport function isLegacyDescriptor<T extends Data>(\n control: Descriptor<T>,\n): control is LegacyDescriptor<T> {\n return !(control instanceof UnifiedControlDefinition)\n}\n\nexport type PanelDescriptorType =\n | typeof PropControllerTypes.Backgrounds\n | typeof PropControllerTypes.ResponsiveIconRadioGroup\n | typeof PropControllerTypes.Margin\n | typeof PropControllerTypes.Padding\n | typeof PropControllerTypes.Shadows\n | typeof PropControllerTypes.Border\n | typeof PropControllerTypes.GapY\n | typeof PropControllerTypes.GapX\n | typeof PropControllerTypes.BorderRadius\n | typeof PropControllerTypes.Checkbox\n | typeof PropControllerTypes.TextInput\n | typeof PropControllerTypes.Link\n | typeof PropControllerTypes.ResponsiveSelect\n | typeof PropControllerTypes.ResponsiveColor\n | typeof PropControllerTypes.TextStyle\n | typeof PropControllerTypes.Images\n | typeof PropControllerTypes.ResponsiveNumber\n | typeof PropControllerTypes.Number\n | typeof PropControllerTypes.Date\n | typeof PropControllerTypes.Font\n | typeof PropControllerTypes.TextArea\n | typeof PropControllerTypes.Table\n | typeof PropControllerTypes.Image\n | typeof PropControllerTypes.ResponsiveOpacity\n | typeof PropControllerTypes.SocialLinks\n | typeof PropControllerTypes.Video\n | typeof PropControllerTypes.NavigationLinks\n\nexport type PanelDescriptor<T extends Data = Data> = Extract<\n Descriptor<T>,\n { type: PanelDescriptorType }\n>\n\n// see https://github.com/prettier/prettier/issues/7940#issuecomment-2074455883\n// prettier-ignore\nexport type PropControllerDescriptorValueType<T extends PropControllerDescriptor> = T['type'] extends typeof PropControllerTypes.ResponsiveColor\n ? // TODO(miguel): We're not importing a resolver type from `@makeswift/prop-controllers` because\n // the resolved type is tightly coupled with the runtime (i.e., it's the result of an API call).\n // This means that we probably want to rethink how types are resolved and where that lives.\n ResponsiveColor | null | undefined\n : T['type'] extends typeof PropControllerTypes.Backgrounds\n ? ResolveBackgroundsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.Backgrounds }>\n >\n : T['type'] extends typeof PropControllerTypes.Checkbox\n ? ResolveCheckboxPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Checkbox }>>\n : T['type'] extends typeof PropControllerTypes.Date\n ? ResolveDatePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Date }>>\n : T['type'] extends typeof PropControllerTypes.ElementID\n ? ResolveElementIDPropControllerValue<Extract<T, { type: typeof PropControllerTypes.ElementID }>>\n : T['type'] extends typeof PropControllerTypes.Font\n ? ResolveFontPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Font }>>\n : T['type'] extends typeof PropControllerTypes.GapX\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.GapY\n ? ResolveGapYPropControllerValue<Extract<T, { type: typeof PropControllerTypes.GapY }>>\n : T['type'] extends typeof PropControllerTypes.Grid\n ? ResolveGridPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Grid }>>\n : T['type'] extends typeof PropControllerTypes.Image\n ? ResolveImagePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Image }>>\n : T['type'] extends typeof PropControllerTypes.Images\n ? ResolveImagesPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Images }>>\n : T['type'] extends typeof PropControllerTypes.ResponsiveIconRadioGroup\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveNumber\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveOpacity\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveSelect\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.Link\n ? ResolveLinkPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Link }>>\n : T['type'] extends typeof PropControllerTypes.Width\n ? ResolveWidthPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Width }>>\n : T['type'] extends typeof PropControllerTypes.Padding\n ? ResolvePaddingPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Padding }>>\n : T['type'] extends typeof PropControllerTypes.Margin\n ? ResolveMarginPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Margin }>>\n : T['type'] extends typeof PropControllerTypes.NavigationLinks\n ? ResolveNavigationLinksPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.NavigationLinks }>\n >\n : T['type'] extends typeof PropControllerTypes.BorderRadius\n ? ResolveBorderRadiusPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.BorderRadius }>\n >\n : T['type'] extends typeof PropControllerTypes.Shadows\n ? ResolveShadowsPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Shadows }>>\n : T['type'] extends typeof PropControllerTypes.SocialLinks\n ? ResolveSocialLinksPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.SocialLinks }>\n >\n : T['type'] extends typeof PropControllerTypes.ResponsiveLength\n ? ResolveResponsiveLengthPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.ResponsiveLength }>\n >\n : T['type'] extends typeof PropControllerTypes.Border\n ? ResolveBorderPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Border }>>\n : T['type'] extends typeof PropControllerTypes.Number\n ? ResolveNumberPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Number }>>\n : T['type'] extends typeof PropControllerTypes.Table\n ? ResolveTablePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Table }>>\n : T['type'] extends typeof PropControllerTypes.TableFormFields\n ? ResolveTableFormFieldsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.TableFormFields }>\n >\n : T['type'] extends typeof PropControllerTypes.TextStyle\n ? ResolveTextStylePropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextStyle }>>\n : T['type'] extends typeof PropControllerTypes.TextArea\n ? ResolveTextAreaPropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextArea }>>\n : T['type'] extends typeof PropControllerTypes.TextInput\n ? ResolveTextInputPropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextInput }>>\n : T['type'] extends typeof PropControllerTypes.Video\n ? ResolveVideoPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Video }>>\n : T extends Descriptor<infer U>\n ? U | undefined\n : never\n\nexport type DescriptorValueType<T extends Descriptor> = T extends PropControllerDescriptor\n ? PropControllerDescriptorValueType<T>\n : T extends UnifiedControlDefinition\n ? ResolvedValueType<T>\n : T extends Descriptor<infer U>\n ? U | undefined\n : never\n\nexport type PanelDescriptorValueType<T extends PanelDescriptor> =\n T extends PanelDescriptor<infer U> ? U : never\n"],"mappings":"AAAA;AAAA,EAEE,qBAAqB;AAAA,OAChB;AAiHA,SAAS,mBACd,SACgC;AAChC,SAAO,EAAE,mBAAmB;AAC9B;","names":[]}
@@ -1,12 +1,11 @@
1
1
  import * as Props from "./descriptors";
2
- import { RichTextPropControllerMessageType, TableFormFieldsMessageType } from "./instances";
2
+ import { TableFormFieldsMessageType } from "./instances";
3
3
  import * as Introspection from "./introspection";
4
4
  import { DELETED_PROP_CONTROLLER_TYPES } from "./deleted";
5
5
  export {
6
6
  DELETED_PROP_CONTROLLER_TYPES,
7
7
  Introspection,
8
8
  Props,
9
- RichTextPropControllerMessageType,
10
9
  TableFormFieldsMessageType
11
10
  };
12
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prop-controllers/index.ts"],"sourcesContent":["export type {\n Data,\n Descriptor as PropControllerDescriptor,\n DescriptorValueType as PropControllerDescriptorValueType,\n PanelDescriptor,\n PanelDescriptorType,\n PanelDescriptorValueType,\n} from './descriptors'\nexport type {\n ResponsiveValueType,\n Device,\n DeviceOverride,\n ResponsiveValue,\n} from '@makeswift/prop-controllers'\nexport * as Props from './descriptors'\nexport type {\n PropControllerMessage,\n RichTextPropControllerMessage,\n TableFormFieldsMessage,\n} from './instances'\nexport { RichTextPropControllerMessageType, TableFormFieldsMessageType } from './instances'\nexport * as Introspection from './introspection'\nexport { DELETED_PROP_CONTROLLER_TYPES } from './deleted'\n"],"mappings":"AAcA,YAAY,WAAW;AAMvB,SAAS,mCAAmC,kCAAkC;AAC9E,YAAY,mBAAmB;AAC/B,SAAS,qCAAqC;","names":[]}
1
+ {"version":3,"sources":["../../../src/prop-controllers/index.ts"],"sourcesContent":["export type { Device, DeviceOverride, ResponsiveValue } from '@makeswift/controls'\n\nexport type {\n Data,\n Descriptor as PropControllerDescriptor,\n DescriptorValueType as PropControllerDescriptorValueType,\n PanelDescriptor,\n PanelDescriptorType,\n PanelDescriptorValueType,\n} from './descriptors'\n\nexport * as Props from './descriptors'\nexport type { PropControllerMessage, TableFormFieldsMessage } from './instances'\nexport { TableFormFieldsMessageType } from './instances'\nexport * as Introspection from './introspection'\nexport { DELETED_PROP_CONTROLLER_TYPES } from './deleted'\n"],"mappings":"AAWA,YAAY,WAAW;AAEvB,SAAS,kCAAkC;AAC3C,YAAY,mBAAmB;AAC/B,SAAS,qCAAqC;","names":[]}
@@ -1,130 +1,38 @@
1
- import { BuilderEditMode } from "../state/modules/builder-edit-mode";
1
+ import { isLegacyDescriptor } from "./descriptors";
2
+ import { Types as PropControllerTypes } from "@makeswift/prop-controllers";
2
3
  import {
3
- ListControl,
4
- ListControlType,
5
- RichTextControl,
6
- RichTextControlType,
7
- ShapeControl,
8
- ShapeControlType,
9
- richTextDAOToDTO,
10
- SlotControl,
11
- SlotControlType,
12
- StyleControl,
13
- StyleControlType,
14
- RichTextV2ControlType,
15
- RichTextV2Control,
16
- StyleV2Control,
17
- StyleV2ControlType
18
- } from "../controls";
19
- import { PropController } from "./base";
20
- import {
21
- Types as PropControllerTypes
22
- } from "@makeswift/prop-controllers";
23
- const RichTextPropControllerMessageType = {
24
- CHANGE_BUILDER_EDIT_MODE: "CHANGE_BUILDER_EDIT_MODE",
25
- INITIALIZE_EDITOR: "INITIALIZE_EDITOR",
26
- CHANGE_EDITOR_VALUE: "CHANGE_EDITOR_VALUE",
27
- FOCUS: "FOCUS",
28
- BLUR: "BLUR",
29
- UNDO: "UNDO",
30
- REDO: "REDO",
31
- CHANGE_BOX_MODEL: "CHANGE_BOX_MODEL"
32
- };
33
- class DefaultPropController extends PropController {
34
- recv = (_message) => {
35
- };
36
- }
37
- class RichTextPropController extends PropController {
38
- editor = null;
39
- recv = (message) => {
40
- if (!this.editor)
41
- return;
42
- switch (message.type) {
43
- case RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE: {
44
- switch (message.editMode) {
45
- case BuilderEditMode.BUILD:
46
- case BuilderEditMode.INTERACT:
47
- this.editor.deselectAndBlur();
48
- }
49
- break;
50
- }
51
- case RichTextPropControllerMessageType.FOCUS: {
52
- this.editor.focusAndSelectAll();
53
- break;
54
- }
55
- }
56
- };
57
- setSlateEditor(editor) {
58
- this.editor = editor;
59
- this.send({
60
- type: RichTextPropControllerMessageType.INITIALIZE_EDITOR,
61
- value: richTextDAOToDTO(editor.children, editor.selection)
62
- });
63
- const _onChange = editor.onChange;
64
- this.editor.onChange = (options) => {
65
- _onChange(options);
66
- if (options?.operation != null) {
67
- this.send({
68
- type: RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE,
69
- value: richTextDAOToDTO(editor.children, editor.selection)
70
- });
71
- }
72
- };
73
- }
74
- focus() {
75
- this.send({ type: RichTextPropControllerMessageType.FOCUS });
76
- }
77
- blur() {
78
- this.send({ type: RichTextPropControllerMessageType.BLUR });
79
- }
80
- undo() {
81
- this.send({ type: RichTextPropControllerMessageType.UNDO });
82
- }
83
- redo() {
84
- this.send({ type: RichTextPropControllerMessageType.REDO });
85
- }
86
- changeBoxModel(boxModel) {
87
- this.send({ type: RichTextPropControllerMessageType.CHANGE_BOX_MODEL, payload: { boxModel } });
88
- }
89
- }
4
+ ControlInstance,
5
+ DefaultControlInstance
6
+ } from "@makeswift/controls";
90
7
  const TableFormFieldsMessageType = {
91
8
  TABLE_FORM_LAYOUT_CHANGE: "TABLE_FORM_LAYOUT_CHANGE",
92
9
  TABLE_FORM_FIELD_LAYOUT_CHANGE: "TABLE_FORM_FIELD_LAYOUT_CHANGE"
93
10
  };
94
- class TableFormFieldsPropController extends PropController {
11
+ class TableFormFieldsPropController extends ControlInstance {
95
12
  recv = () => {
96
13
  };
14
+ child(_key) {
15
+ return void 0;
16
+ }
97
17
  tableFormLayoutChange(payload) {
98
- this.send({ type: TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE, payload });
18
+ this.sendMessage({ type: TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE, payload });
99
19
  }
100
20
  tableFormFieldLayoutChange(payload) {
101
- this.send({ type: TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE, payload });
21
+ this.sendMessage({ type: TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE, payload });
102
22
  }
103
23
  }
104
24
  function createPropController(descriptor, send) {
25
+ if (!isLegacyDescriptor(descriptor)) {
26
+ return descriptor.createInstance(send);
27
+ }
105
28
  switch (descriptor.type) {
106
29
  case PropControllerTypes.TableFormFields:
107
30
  return new TableFormFieldsPropController(send);
108
- case SlotControlType:
109
- return new SlotControl(send);
110
- case RichTextControlType:
111
- return new RichTextControl(send);
112
- case RichTextV2ControlType:
113
- return new RichTextV2Control(send, descriptor);
114
- case ListControlType:
115
- return new ListControl(send, descriptor);
116
- case ShapeControlType:
117
- return new ShapeControl(send, descriptor);
118
- case StyleControlType:
119
- return new StyleControl(send);
120
- case StyleV2ControlType:
121
- return new StyleV2Control(send, descriptor);
122
31
  default:
123
- return new DefaultPropController(send);
32
+ return new DefaultControlInstance(send);
124
33
  }
125
34
  }
126
35
  export {
127
- RichTextPropControllerMessageType,
128
36
  TableFormFieldsMessageType,
129
37
  TableFormFieldsPropController,
130
38
  createPropController