@makeswift/runtime 0.19.4 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (884) hide show
  1. package/builder/rich-text/package.json +5 -0
  2. package/core/package.json +5 -0
  3. package/dist/cjs/api/graphql/generated/types.js.map +1 -1
  4. package/dist/cjs/api/react.js.map +1 -1
  5. package/dist/cjs/{prop-controllers/base.js → builder/rich-text/index.js} +7 -12
  6. package/dist/cjs/builder/rich-text/index.js.map +1 -0
  7. package/dist/cjs/builder/serialization/control-serialization.js +51 -27
  8. package/dist/cjs/builder/serialization/control-serialization.js.map +1 -1
  9. package/dist/cjs/components/builtin/Button/Button.js.map +1 -1
  10. package/dist/cjs/components/builtin/Carousel/Carousel.js +2 -2
  11. package/dist/cjs/components/builtin/Carousel/Carousel.js.map +1 -1
  12. package/dist/cjs/components/builtin/Countdown/Countdown.js.map +1 -1
  13. package/dist/cjs/components/builtin/Divider/Divider.js.map +1 -1
  14. package/dist/cjs/components/builtin/Form/Form.js.map +1 -1
  15. package/dist/cjs/components/builtin/Form/context/FormContext.js.map +1 -1
  16. package/dist/cjs/components/builtin/Image/Image.js +2 -2
  17. package/dist/cjs/components/builtin/Image/Image.js.map +1 -1
  18. package/dist/cjs/components/builtin/Navigation/Navigation.js.map +1 -1
  19. package/dist/cjs/components/builtin/Navigation/components/MobileMenu/index.js.map +1 -1
  20. package/dist/cjs/components/builtin/SocialLinks/SocialLinks.js.map +1 -1
  21. package/dist/cjs/components/builtin/Text/register.js.map +1 -1
  22. package/dist/cjs/components/builtin/register.js.map +1 -1
  23. package/dist/cjs/components/hooks/useMediaQuery.js +2 -2
  24. package/dist/cjs/components/hooks/useMediaQuery.js.map +1 -1
  25. package/dist/cjs/components/hooks/useResponsiveColor.js +1 -1
  26. package/dist/cjs/components/hooks/useResponsiveColor.js.map +1 -1
  27. package/dist/cjs/components/shared/Link/index.js +2 -2
  28. package/dist/cjs/components/shared/Link/index.js.map +1 -1
  29. package/dist/cjs/components/utils/responsive-style.js +9 -9
  30. package/dist/cjs/components/utils/responsive-style.js.map +1 -1
  31. package/dist/cjs/components/utils/types.js.map +1 -1
  32. package/dist/cjs/controls/control.js +14 -78
  33. package/dist/cjs/controls/control.js.map +1 -1
  34. package/dist/cjs/controls/index.js +99 -21
  35. package/dist/cjs/controls/index.js.map +1 -1
  36. package/dist/cjs/controls/{image.js → link.js} +20 -11
  37. package/dist/cjs/controls/link.js.map +1 -0
  38. package/dist/cjs/controls/rich-text/control.js +97 -0
  39. package/dist/cjs/controls/rich-text/control.js.map +1 -0
  40. package/dist/cjs/controls/rich-text/index.js +1 -7
  41. package/dist/cjs/controls/rich-text/index.js.map +1 -1
  42. package/dist/cjs/controls/rich-text/rich-text.js +16 -69
  43. package/dist/cjs/controls/rich-text/rich-text.js.map +1 -1
  44. package/dist/cjs/controls/rich-text-v2/control.js +138 -0
  45. package/dist/cjs/controls/rich-text-v2/control.js.map +1 -0
  46. package/dist/cjs/controls/rich-text-v2/index.js +1 -5
  47. package/dist/cjs/controls/rich-text-v2/index.js.map +1 -1
  48. package/dist/cjs/controls/rich-text-v2/plugin.js +3 -3
  49. package/dist/cjs/controls/rich-text-v2/plugin.js.map +1 -1
  50. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js +105 -121
  51. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  52. package/dist/cjs/controls/rich-text-v2/translation.js +35 -48
  53. package/dist/cjs/controls/rich-text-v2/translation.js.map +1 -1
  54. package/dist/cjs/controls/slot.js +13 -59
  55. package/dist/cjs/controls/slot.js.map +1 -1
  56. package/dist/cjs/controls/{rich-text/fixtures → style-v2}/index.js +4 -8
  57. package/dist/cjs/controls/style-v2/index.js.map +1 -0
  58. package/dist/cjs/controls/style-v2/style-v2.js +50 -0
  59. package/dist/cjs/controls/style-v2/style-v2.js.map +1 -0
  60. package/dist/cjs/{controls/select.js → core/index.js} +11 -12
  61. package/dist/cjs/core/index.js.map +1 -0
  62. package/dist/cjs/jest-setup.js +3 -0
  63. package/dist/cjs/jest-setup.js.map +1 -1
  64. package/dist/cjs/next/api-handler/handlers/manifest.js +1 -1
  65. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js +18 -5
  66. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  67. package/dist/cjs/prop-controllers/copy.js +20 -18
  68. package/dist/cjs/prop-controllers/copy.js.map +1 -1
  69. package/dist/cjs/prop-controllers/deleted.js.map +1 -1
  70. package/dist/cjs/prop-controllers/descriptors.js +6 -6
  71. package/dist/cjs/prop-controllers/descriptors.js.map +1 -1
  72. package/dist/cjs/prop-controllers/index.js +0 -2
  73. package/dist/cjs/prop-controllers/index.js.map +1 -1
  74. package/dist/cjs/prop-controllers/instances.js +12 -90
  75. package/dist/cjs/prop-controllers/instances.js.map +1 -1
  76. package/dist/cjs/prop-controllers/introspection.js +26 -97
  77. package/dist/cjs/prop-controllers/introspection.js.map +1 -1
  78. package/dist/cjs/runtimes/react/components/Element.js.map +1 -1
  79. package/dist/cjs/runtimes/react/controls/checkbox.js +1 -4
  80. package/dist/cjs/runtimes/react/controls/checkbox.js.map +1 -1
  81. package/dist/cjs/runtimes/react/controls/color.js.map +1 -1
  82. package/dist/cjs/runtimes/react/controls/combobox.js.map +1 -1
  83. package/dist/cjs/runtimes/react/controls/control.js +48 -39
  84. package/dist/cjs/runtimes/react/controls/control.js.map +1 -1
  85. package/dist/cjs/runtimes/react/controls/icon-radio-group.js.map +1 -1
  86. package/dist/cjs/runtimes/react/controls/image.js +6 -10
  87. package/dist/cjs/runtimes/react/controls/image.js.map +1 -1
  88. package/dist/cjs/runtimes/react/controls/link.js.map +1 -1
  89. package/dist/cjs/runtimes/react/controls/list.js +3 -1
  90. package/dist/cjs/runtimes/react/controls/list.js.map +1 -1
  91. package/dist/cjs/runtimes/react/controls/number.js +1 -4
  92. package/dist/cjs/runtimes/react/controls/number.js.map +1 -1
  93. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js +4 -2
  94. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  95. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +1 -1
  96. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -1
  97. package/dist/cjs/runtimes/react/controls/rich-text/ReadOnlyText.js +2 -7
  98. package/dist/cjs/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -1
  99. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/block.js +14 -14
  100. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/block.js.map +1 -1
  101. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/element.js +7 -23
  102. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/element.js.map +1 -1
  103. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js +1 -1
  104. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -1
  105. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  106. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js +3 -16
  107. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js.map +1 -1
  108. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -1
  109. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -1
  110. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +8 -8
  111. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  112. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js +2 -2
  113. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js.map +1 -1
  114. package/dist/cjs/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js +7 -13
  115. package/dist/cjs/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -1
  116. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -2
  117. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  118. package/dist/cjs/runtimes/react/controls/select.js +1 -1
  119. package/dist/cjs/runtimes/react/controls/select.js.map +1 -1
  120. package/dist/cjs/runtimes/react/controls/shape.js +2 -7
  121. package/dist/cjs/runtimes/react/controls/shape.js.map +1 -1
  122. package/dist/cjs/runtimes/react/controls/slot.js +13 -5
  123. package/dist/cjs/runtimes/react/controls/slot.js.map +1 -1
  124. package/dist/cjs/runtimes/react/controls/style-v2.js +6 -11
  125. package/dist/cjs/runtimes/react/controls/style-v2.js.map +1 -1
  126. package/dist/cjs/runtimes/react/controls/style.js +8 -8
  127. package/dist/cjs/runtimes/react/controls/style.js.map +1 -1
  128. package/dist/cjs/runtimes/react/controls/text-area.js +1 -4
  129. package/dist/cjs/runtimes/react/controls/text-area.js.map +1 -1
  130. package/dist/cjs/runtimes/react/controls/text-input.js +1 -4
  131. package/dist/cjs/runtimes/react/controls/text-input.js.map +1 -1
  132. package/dist/cjs/runtimes/react/controls/typography.js.map +1 -1
  133. package/dist/cjs/runtimes/react/controls.js +79 -73
  134. package/dist/cjs/runtimes/react/controls.js.map +1 -1
  135. package/dist/cjs/runtimes/react/hooks/use-store.js +2 -2
  136. package/dist/cjs/runtimes/react/hooks/use-store.js.map +1 -1
  137. package/dist/cjs/runtimes/react/poll-box-model.js +1 -1
  138. package/dist/cjs/runtimes/react/poll-box-model.js.map +1 -1
  139. package/dist/cjs/runtimes/react/react-runtime.js +3 -32
  140. package/dist/cjs/runtimes/react/react-runtime.js.map +1 -1
  141. package/dist/cjs/runtimes/react/runtime-core.js +67 -0
  142. package/dist/cjs/runtimes/react/runtime-core.js.map +1 -0
  143. package/dist/cjs/slate/BlockPlugin/clearBlockKeyForDevice.js +2 -2
  144. package/dist/cjs/slate/BlockPlugin/clearBlockKeyForDevice.js.map +1 -1
  145. package/dist/cjs/slate/BlockPlugin/indent.js +3 -2
  146. package/dist/cjs/slate/BlockPlugin/indent.js.map +1 -1
  147. package/dist/cjs/slate/BlockPlugin/index.js +17 -15
  148. package/dist/cjs/slate/BlockPlugin/index.js.map +1 -1
  149. package/dist/cjs/slate/BlockPlugin/setBlockKeyForDevice.js +2 -2
  150. package/dist/cjs/slate/BlockPlugin/setBlockKeyForDevice.js.map +1 -1
  151. package/dist/cjs/slate/BlockPlugin/toggleList.js +2 -2
  152. package/dist/cjs/slate/BlockPlugin/toggleList.js.map +1 -1
  153. package/dist/cjs/slate/BlockPlugin/types.js.map +1 -1
  154. package/dist/cjs/slate/BlockPlugin/unwrapInline.js +2 -2
  155. package/dist/cjs/slate/BlockPlugin/unwrapInline.js.map +1 -1
  156. package/dist/cjs/slate/BlockPlugin/unwrapList.js +3 -4
  157. package/dist/cjs/slate/BlockPlugin/unwrapList.js.map +1 -1
  158. package/dist/cjs/slate/BlockPlugin/utils/getSelectedListItems.js +2 -2
  159. package/dist/cjs/slate/BlockPlugin/utils/getSelectedListItems.js.map +1 -1
  160. package/dist/cjs/slate/BlockPlugin/wrapInline.js.map +1 -1
  161. package/dist/cjs/slate/BlockPlugin/wrapList.js +4 -3
  162. package/dist/cjs/slate/BlockPlugin/wrapList.js.map +1 -1
  163. package/dist/cjs/slate/BuilderPlugin/index.js +3 -3
  164. package/dist/cjs/slate/BuilderPlugin/index.js.map +1 -1
  165. package/dist/cjs/slate/InlineModePlugin/index.js +4 -5
  166. package/dist/cjs/slate/InlineModePlugin/index.js.map +1 -1
  167. package/dist/cjs/slate/InlinePlugin/getValue.js +4 -4
  168. package/dist/cjs/slate/InlinePlugin/getValue.js.map +1 -1
  169. package/dist/cjs/slate/InlinePlugin/index.js +10 -14
  170. package/dist/cjs/slate/InlinePlugin/index.js.map +1 -1
  171. package/dist/cjs/slate/InlinePlugin/onChange.js +3 -3
  172. package/dist/cjs/slate/InlinePlugin/onChange.js.map +1 -1
  173. package/dist/cjs/slate/InlinePlugin/types.js +9 -6
  174. package/dist/cjs/slate/InlinePlugin/types.js.map +1 -1
  175. package/dist/cjs/slate/LinkPlugin/getValue.js +4 -5
  176. package/dist/cjs/slate/LinkPlugin/getValue.js.map +1 -1
  177. package/dist/cjs/slate/LinkPlugin/index.js +8 -10
  178. package/dist/cjs/slate/LinkPlugin/index.js.map +1 -1
  179. package/dist/cjs/slate/LinkPlugin/onChange.js +6 -6
  180. package/dist/cjs/slate/LinkPlugin/onChange.js.map +1 -1
  181. package/dist/cjs/slate/LinkPlugin/types.js +3 -8
  182. package/dist/cjs/slate/LinkPlugin/types.js.map +1 -1
  183. package/dist/cjs/slate/TextAlignPlugin/getValue.js +2 -2
  184. package/dist/cjs/slate/TextAlignPlugin/getValue.js.map +1 -1
  185. package/dist/cjs/slate/TextAlignPlugin/index.js +12 -12
  186. package/dist/cjs/slate/TextAlignPlugin/index.js.map +1 -1
  187. package/dist/cjs/slate/TypographyPlugin/clearActiveTypographyStyle.js.map +1 -1
  188. package/dist/cjs/slate/TypographyPlugin/clearDeviceActiveTypography.js.map +1 -1
  189. package/dist/cjs/slate/TypographyPlugin/detachActiveTypography.js.map +1 -1
  190. package/dist/cjs/slate/TypographyPlugin/getValue.js.map +1 -1
  191. package/dist/cjs/slate/TypographyPlugin/index.js +4 -4
  192. package/dist/cjs/slate/TypographyPlugin/index.js.map +1 -1
  193. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyDown.js.map +1 -1
  194. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyUp.js +6 -3
  195. package/dist/cjs/slate/TypographyPlugin/normalizeTypographyUp.js.map +1 -1
  196. package/dist/cjs/slate/TypographyPlugin/setActiveTypographyStyle.js.map +1 -1
  197. package/dist/cjs/slate/index.js +8 -8
  198. package/dist/cjs/slate/index.js.map +1 -1
  199. package/dist/cjs/slate/selectors.js +15 -12
  200. package/dist/cjs/slate/selectors.js.map +1 -1
  201. package/dist/cjs/slate/types.js +5 -36
  202. package/dist/cjs/slate/types.js.map +1 -1
  203. package/dist/cjs/slate/utils/editor.js +3 -3
  204. package/dist/cjs/slate/utils/editor.js.map +1 -1
  205. package/dist/cjs/slate/utils/element.js +5 -27
  206. package/dist/cjs/slate/utils/element.js.map +1 -1
  207. package/dist/cjs/slate/utils/responsive.js.map +1 -1
  208. package/dist/cjs/slate/utils/toText.js +16 -52
  209. package/dist/cjs/slate/utils/toText.js.map +1 -1
  210. package/dist/cjs/state/actions.js.map +1 -1
  211. package/dist/cjs/state/modules/box-models.js.map +1 -1
  212. package/dist/cjs/state/modules/breakpoints.js +1 -1
  213. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  214. package/dist/cjs/state/modules/prop-controller-handles.js.map +1 -1
  215. package/dist/cjs/state/modules/read-only-documents.js +2 -4
  216. package/dist/cjs/state/modules/read-only-documents.js.map +1 -1
  217. package/dist/cjs/state/react-builder-preview.js +10 -7
  218. package/dist/cjs/state/react-builder-preview.js.map +1 -1
  219. package/dist/cjs/state/react-page.js +10 -41
  220. package/dist/cjs/state/react-page.js.map +1 -1
  221. package/dist/esm/api/graphql/generated/types.js.map +1 -1
  222. package/dist/esm/api/react.js.map +1 -1
  223. package/dist/esm/builder/rich-text/index.js +5 -0
  224. package/dist/esm/builder/rich-text/index.js.map +1 -0
  225. package/dist/esm/builder/serialization/control-serialization.js +66 -37
  226. package/dist/esm/builder/serialization/control-serialization.js.map +1 -1
  227. package/dist/esm/components/builtin/Button/Button.js.map +1 -1
  228. package/dist/esm/components/builtin/Carousel/Carousel.js +1 -1
  229. package/dist/esm/components/builtin/Carousel/Carousel.js.map +1 -1
  230. package/dist/esm/components/builtin/Countdown/Countdown.js.map +1 -1
  231. package/dist/esm/components/builtin/Divider/Divider.js.map +1 -1
  232. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  233. package/dist/esm/components/builtin/Form/context/FormContext.js.map +1 -1
  234. package/dist/esm/components/builtin/Image/Image.js +1 -1
  235. package/dist/esm/components/builtin/Image/Image.js.map +1 -1
  236. package/dist/esm/components/builtin/Navigation/Navigation.js.map +1 -1
  237. package/dist/esm/components/builtin/Navigation/components/MobileMenu/index.js.map +1 -1
  238. package/dist/esm/components/builtin/SocialLinks/SocialLinks.js.map +1 -1
  239. package/dist/esm/components/builtin/Text/register.js.map +1 -1
  240. package/dist/esm/components/builtin/register.js.map +1 -1
  241. package/dist/esm/components/hooks/useMediaQuery.js +1 -1
  242. package/dist/esm/components/hooks/useMediaQuery.js.map +1 -1
  243. package/dist/esm/components/hooks/useResponsiveColor.js +3 -1
  244. package/dist/esm/components/hooks/useResponsiveColor.js.map +1 -1
  245. package/dist/esm/components/shared/Link/index.js +1 -1
  246. package/dist/esm/components/shared/Link/index.js.map +1 -1
  247. package/dist/esm/components/utils/responsive-style.js +1 -1
  248. package/dist/esm/components/utils/responsive-style.js.map +1 -1
  249. package/dist/esm/controls/control.js +14 -109
  250. package/dist/esm/controls/control.js.map +1 -1
  251. package/dist/esm/controls/index.js +82 -10
  252. package/dist/esm/controls/index.js.map +1 -1
  253. package/dist/esm/controls/link.js +18 -0
  254. package/dist/esm/controls/link.js.map +1 -0
  255. package/dist/esm/controls/rich-text/control.js +76 -0
  256. package/dist/esm/controls/rich-text/control.js.map +1 -0
  257. package/dist/esm/controls/rich-text/index.js +0 -3
  258. package/dist/esm/controls/rich-text/index.js.map +1 -1
  259. package/dist/esm/controls/rich-text/rich-text.js +14 -66
  260. package/dist/esm/controls/rich-text/rich-text.js.map +1 -1
  261. package/dist/esm/controls/rich-text-v2/control.js +117 -0
  262. package/dist/esm/controls/rich-text-v2/control.js.map +1 -0
  263. package/dist/esm/controls/rich-text-v2/index.js +0 -2
  264. package/dist/esm/controls/rich-text-v2/index.js.map +1 -1
  265. package/dist/esm/controls/rich-text-v2/plugin.js +2 -2
  266. package/dist/esm/controls/rich-text-v2/plugin.js.map +1 -1
  267. package/dist/esm/controls/rich-text-v2/rich-text-v2.js +111 -116
  268. package/dist/esm/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  269. package/dist/esm/controls/rich-text-v2/translation.js +33 -46
  270. package/dist/esm/controls/rich-text-v2/translation.js.map +1 -1
  271. package/dist/esm/controls/slot.js +13 -54
  272. package/dist/esm/controls/slot.js.map +1 -1
  273. package/dist/esm/controls/style-v2/index.js +2 -0
  274. package/dist/esm/controls/style-v2/index.js.map +1 -0
  275. package/dist/esm/controls/style-v2/style-v2.js +28 -0
  276. package/dist/esm/controls/style-v2/style-v2.js.map +1 -0
  277. package/dist/esm/core/index.js +11 -0
  278. package/dist/esm/core/index.js.map +1 -0
  279. package/dist/esm/jest-setup.js +3 -0
  280. package/dist/esm/jest-setup.js.map +1 -1
  281. package/dist/esm/next/api-handler/handlers/manifest.js +1 -1
  282. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +19 -6
  283. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  284. package/dist/esm/prop-controllers/copy.js +7 -5
  285. package/dist/esm/prop-controllers/copy.js.map +1 -1
  286. package/dist/esm/prop-controllers/deleted.js.map +1 -1
  287. package/dist/esm/prop-controllers/descriptors.js +7 -5
  288. package/dist/esm/prop-controllers/descriptors.js.map +1 -1
  289. package/dist/esm/prop-controllers/index.js +1 -2
  290. package/dist/esm/prop-controllers/index.js.map +1 -1
  291. package/dist/esm/prop-controllers/instances.js +15 -107
  292. package/dist/esm/prop-controllers/instances.js.map +1 -1
  293. package/dist/esm/prop-controllers/introspection.js +28 -131
  294. package/dist/esm/prop-controllers/introspection.js.map +1 -1
  295. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  296. package/dist/esm/runtimes/react/controls/checkbox.js +1 -7
  297. package/dist/esm/runtimes/react/controls/checkbox.js.map +1 -1
  298. package/dist/esm/runtimes/react/controls/color.js.map +1 -1
  299. package/dist/esm/runtimes/react/controls/combobox.js.map +1 -1
  300. package/dist/esm/runtimes/react/controls/control.js +66 -58
  301. package/dist/esm/runtimes/react/controls/control.js.map +1 -1
  302. package/dist/esm/runtimes/react/controls/icon-radio-group.js.map +1 -1
  303. package/dist/esm/runtimes/react/controls/image.js +6 -12
  304. package/dist/esm/runtimes/react/controls/image.js.map +1 -1
  305. package/dist/esm/runtimes/react/controls/link.js.map +1 -1
  306. package/dist/esm/runtimes/react/controls/list.js +3 -1
  307. package/dist/esm/runtimes/react/controls/list.js.map +1 -1
  308. package/dist/esm/runtimes/react/controls/number.js +1 -7
  309. package/dist/esm/runtimes/react/controls/number.js.map +1 -1
  310. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js +7 -11
  311. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  312. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +1 -1
  313. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -1
  314. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js +2 -7
  315. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -1
  316. package/dist/esm/runtimes/react/controls/rich-text/components/Element/block.js +1 -1
  317. package/dist/esm/runtimes/react/controls/rich-text/components/Element/block.js.map +1 -1
  318. package/dist/esm/runtimes/react/controls/rich-text/components/Element/element.js +7 -23
  319. package/dist/esm/runtimes/react/controls/rich-text/components/Element/element.js.map +1 -1
  320. package/dist/esm/runtimes/react/controls/rich-text/components/Element/inline.js +1 -1
  321. package/dist/esm/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -1
  322. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  323. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js +5 -27
  324. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js.map +1 -1
  325. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -1
  326. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -1
  327. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +7 -7
  328. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  329. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js +2 -2
  330. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js.map +1 -1
  331. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js +9 -25
  332. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -1
  333. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js +2 -4
  334. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  335. package/dist/esm/runtimes/react/controls/select.js +1 -1
  336. package/dist/esm/runtimes/react/controls/select.js.map +1 -1
  337. package/dist/esm/runtimes/react/controls/shape.js +2 -7
  338. package/dist/esm/runtimes/react/controls/shape.js.map +1 -1
  339. package/dist/esm/runtimes/react/controls/slot.js +14 -6
  340. package/dist/esm/runtimes/react/controls/slot.js.map +1 -1
  341. package/dist/esm/runtimes/react/controls/style-v2.js +6 -11
  342. package/dist/esm/runtimes/react/controls/style-v2.js.map +1 -1
  343. package/dist/esm/runtimes/react/controls/style.js +10 -10
  344. package/dist/esm/runtimes/react/controls/style.js.map +1 -1
  345. package/dist/esm/runtimes/react/controls/text-area.js +1 -7
  346. package/dist/esm/runtimes/react/controls/text-area.js.map +1 -1
  347. package/dist/esm/runtimes/react/controls/text-input.js +1 -7
  348. package/dist/esm/runtimes/react/controls/text-input.js.map +1 -1
  349. package/dist/esm/runtimes/react/controls/typography.js.map +1 -1
  350. package/dist/esm/runtimes/react/controls.js +96 -91
  351. package/dist/esm/runtimes/react/controls.js.map +1 -1
  352. package/dist/esm/runtimes/react/hooks/use-store.js +2 -2
  353. package/dist/esm/runtimes/react/hooks/use-store.js.map +1 -1
  354. package/dist/esm/runtimes/react/poll-box-model.js +1 -1
  355. package/dist/esm/runtimes/react/poll-box-model.js.map +1 -1
  356. package/dist/esm/runtimes/react/react-runtime.js +3 -40
  357. package/dist/esm/runtimes/react/react-runtime.js.map +1 -1
  358. package/dist/esm/runtimes/react/runtime-core.js +51 -0
  359. package/dist/esm/runtimes/react/runtime-core.js.map +1 -0
  360. package/dist/esm/slate/BlockPlugin/clearBlockKeyForDevice.js +2 -2
  361. package/dist/esm/slate/BlockPlugin/clearBlockKeyForDevice.js.map +1 -1
  362. package/dist/esm/slate/BlockPlugin/indent.js +3 -2
  363. package/dist/esm/slate/BlockPlugin/indent.js.map +1 -1
  364. package/dist/esm/slate/BlockPlugin/index.js +17 -15
  365. package/dist/esm/slate/BlockPlugin/index.js.map +1 -1
  366. package/dist/esm/slate/BlockPlugin/setBlockKeyForDevice.js +2 -2
  367. package/dist/esm/slate/BlockPlugin/setBlockKeyForDevice.js.map +1 -1
  368. package/dist/esm/slate/BlockPlugin/toggleList.js +2 -2
  369. package/dist/esm/slate/BlockPlugin/toggleList.js.map +1 -1
  370. package/dist/esm/slate/BlockPlugin/unwrapInline.js +2 -2
  371. package/dist/esm/slate/BlockPlugin/unwrapInline.js.map +1 -1
  372. package/dist/esm/slate/BlockPlugin/unwrapList.js +3 -4
  373. package/dist/esm/slate/BlockPlugin/unwrapList.js.map +1 -1
  374. package/dist/esm/slate/BlockPlugin/utils/getSelectedListItems.js +2 -2
  375. package/dist/esm/slate/BlockPlugin/utils/getSelectedListItems.js.map +1 -1
  376. package/dist/esm/slate/BlockPlugin/wrapInline.js.map +1 -1
  377. package/dist/esm/slate/BlockPlugin/wrapList.js +4 -3
  378. package/dist/esm/slate/BlockPlugin/wrapList.js.map +1 -1
  379. package/dist/esm/slate/BuilderPlugin/index.js +3 -3
  380. package/dist/esm/slate/BuilderPlugin/index.js.map +1 -1
  381. package/dist/esm/slate/InlineModePlugin/index.js +5 -6
  382. package/dist/esm/slate/InlineModePlugin/index.js.map +1 -1
  383. package/dist/esm/slate/InlinePlugin/getValue.js +4 -4
  384. package/dist/esm/slate/InlinePlugin/getValue.js.map +1 -1
  385. package/dist/esm/slate/InlinePlugin/index.js +9 -13
  386. package/dist/esm/slate/InlinePlugin/index.js.map +1 -1
  387. package/dist/esm/slate/InlinePlugin/onChange.js +3 -3
  388. package/dist/esm/slate/InlinePlugin/onChange.js.map +1 -1
  389. package/dist/esm/slate/InlinePlugin/types.js +9 -7
  390. package/dist/esm/slate/InlinePlugin/types.js.map +1 -1
  391. package/dist/esm/slate/LinkPlugin/getValue.js +4 -5
  392. package/dist/esm/slate/LinkPlugin/getValue.js.map +1 -1
  393. package/dist/esm/slate/LinkPlugin/index.js +8 -10
  394. package/dist/esm/slate/LinkPlugin/index.js.map +1 -1
  395. package/dist/esm/slate/LinkPlugin/onChange.js +4 -4
  396. package/dist/esm/slate/LinkPlugin/onChange.js.map +1 -1
  397. package/dist/esm/slate/LinkPlugin/types.js +3 -7
  398. package/dist/esm/slate/LinkPlugin/types.js.map +1 -1
  399. package/dist/esm/slate/TextAlignPlugin/getValue.js +2 -2
  400. package/dist/esm/slate/TextAlignPlugin/getValue.js.map +1 -1
  401. package/dist/esm/slate/TextAlignPlugin/index.js +12 -16
  402. package/dist/esm/slate/TextAlignPlugin/index.js.map +1 -1
  403. package/dist/esm/slate/TypographyPlugin/clearActiveTypographyStyle.js.map +1 -1
  404. package/dist/esm/slate/TypographyPlugin/clearDeviceActiveTypography.js.map +1 -1
  405. package/dist/esm/slate/TypographyPlugin/detachActiveTypography.js.map +1 -1
  406. package/dist/esm/slate/TypographyPlugin/getValue.js.map +1 -1
  407. package/dist/esm/slate/TypographyPlugin/index.js +5 -5
  408. package/dist/esm/slate/TypographyPlugin/index.js.map +1 -1
  409. package/dist/esm/slate/TypographyPlugin/normalizeTypographyDown.js.map +1 -1
  410. package/dist/esm/slate/TypographyPlugin/normalizeTypographyUp.js +6 -3
  411. package/dist/esm/slate/TypographyPlugin/normalizeTypographyUp.js.map +1 -1
  412. package/dist/esm/slate/TypographyPlugin/setActiveTypographyStyle.js.map +1 -1
  413. package/dist/esm/slate/index.js +4 -4
  414. package/dist/esm/slate/index.js.map +1 -1
  415. package/dist/esm/slate/selectors.js +15 -12
  416. package/dist/esm/slate/selectors.js.map +1 -1
  417. package/dist/esm/slate/types.js +4 -33
  418. package/dist/esm/slate/types.js.map +1 -1
  419. package/dist/esm/slate/utils/editor.js +3 -3
  420. package/dist/esm/slate/utils/editor.js.map +1 -1
  421. package/dist/esm/slate/utils/element.js +5 -30
  422. package/dist/esm/slate/utils/element.js.map +1 -1
  423. package/dist/esm/slate/utils/responsive.js.map +1 -1
  424. package/dist/esm/slate/utils/toText.js +16 -52
  425. package/dist/esm/slate/utils/toText.js.map +1 -1
  426. package/dist/esm/state/actions.js.map +1 -1
  427. package/dist/esm/state/modules/box-models.js.map +1 -1
  428. package/dist/esm/state/modules/breakpoints.js +1 -1
  429. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  430. package/dist/esm/state/modules/prop-controller-handles.js.map +1 -1
  431. package/dist/esm/state/modules/read-only-documents.js +3 -3
  432. package/dist/esm/state/modules/read-only-documents.js.map +1 -1
  433. package/dist/esm/state/react-builder-preview.js +10 -7
  434. package/dist/esm/state/react-builder-preview.js.map +1 -1
  435. package/dist/esm/state/react-page.js +13 -41
  436. package/dist/esm/state/react-page.js.map +1 -1
  437. package/dist/types/api/graphql/generated/types.d.ts +1 -1
  438. package/dist/types/api/graphql/generated/types.d.ts.map +1 -1
  439. package/dist/types/api/react.d.ts +1 -1
  440. package/dist/types/builder/rich-text/index.d.ts +3 -0
  441. package/dist/types/builder/rich-text/index.d.ts.map +1 -0
  442. package/dist/types/builder/serialization/control-serialization.d.ts +12 -7
  443. package/dist/types/builder/serialization/control-serialization.d.ts.map +1 -1
  444. package/dist/types/components/builtin/Box/Box.d.ts +23 -1
  445. package/dist/types/components/builtin/Box/Box.d.ts.map +1 -1
  446. package/dist/types/components/builtin/Button/Button.d.ts +3 -3
  447. package/dist/types/components/builtin/Button/Button.d.ts.map +1 -1
  448. package/dist/types/components/builtin/Carousel/Carousel.d.ts +1 -1
  449. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  450. package/dist/types/components/builtin/Countdown/Countdown.d.ts +1 -1
  451. package/dist/types/components/builtin/Countdown/Countdown.d.ts.map +1 -1
  452. package/dist/types/components/builtin/Divider/Divider.d.ts +1 -1
  453. package/dist/types/components/builtin/Divider/Divider.d.ts.map +1 -1
  454. package/dist/types/components/builtin/Form/Form.d.ts +1 -1
  455. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  456. package/dist/types/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +1 -1
  457. package/dist/types/components/builtin/Form/context/FormContext.d.ts +7 -8
  458. package/dist/types/components/builtin/Form/context/FormContext.d.ts.map +1 -1
  459. package/dist/types/components/builtin/Navigation/Navigation.d.ts +1 -1
  460. package/dist/types/components/builtin/Navigation/Navigation.d.ts.map +1 -1
  461. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts +2 -2
  462. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts.map +1 -1
  463. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts +1 -1
  464. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts.map +1 -1
  465. package/dist/types/components/builtin/Text/register.d.ts +1 -1
  466. package/dist/types/components/builtin/Text/register.d.ts.map +1 -1
  467. package/dist/types/components/builtin/register.d.ts +1 -1
  468. package/dist/types/components/builtin/register.d.ts.map +1 -1
  469. package/dist/types/components/hooks/useResponsiveColor.d.ts +1 -2
  470. package/dist/types/components/hooks/useResponsiveColor.d.ts.map +1 -1
  471. package/dist/types/components/utils/responsive-style.d.ts +2 -1
  472. package/dist/types/components/utils/responsive-style.d.ts.map +1 -1
  473. package/dist/types/components/utils/types.d.ts +2 -0
  474. package/dist/types/components/utils/types.d.ts.map +1 -1
  475. package/dist/types/controls/__tests__/fixtures/shape.d.ts +19 -8
  476. package/dist/types/controls/__tests__/fixtures/shape.d.ts.map +1 -1
  477. package/dist/types/controls/control.d.ts +28 -17
  478. package/dist/types/controls/control.d.ts.map +1 -1
  479. package/dist/types/controls/index.d.ts +6 -10
  480. package/dist/types/controls/index.d.ts.map +1 -1
  481. package/dist/types/controls/link.d.ts +9 -0
  482. package/dist/types/controls/link.d.ts.map +1 -0
  483. package/dist/types/controls/rich-text/control.d.ts +57 -0
  484. package/dist/types/controls/rich-text/control.d.ts.map +1 -0
  485. package/dist/types/controls/rich-text/index.d.ts +0 -3
  486. package/dist/types/controls/rich-text/index.d.ts.map +1 -1
  487. package/dist/types/controls/rich-text/rich-text.d.ts +9 -61
  488. package/dist/types/controls/rich-text/rich-text.d.ts.map +1 -1
  489. package/dist/types/controls/rich-text-v2/__tests__/fixtures/nested-paragraph-edge-case-3728.d.ts +3 -2
  490. package/dist/types/controls/rich-text-v2/__tests__/fixtures/nested-paragraph-edge-case-3728.d.ts.map +1 -1
  491. package/dist/types/controls/rich-text-v2/__tests__/fixtures/rearranged.d.ts +4 -3
  492. package/dist/types/controls/rich-text-v2/__tests__/fixtures/rearranged.d.ts.map +1 -1
  493. package/dist/types/controls/rich-text-v2/__tests__/fixtures/simple.d.ts +4 -3
  494. package/dist/types/controls/rich-text-v2/__tests__/fixtures/simple.d.ts.map +1 -1
  495. package/dist/types/controls/rich-text-v2/__tests__/serialization.test.d.ts +2 -0
  496. package/dist/types/controls/rich-text-v2/__tests__/serialization.test.d.ts.map +1 -0
  497. package/dist/types/controls/rich-text-v2/control.d.ts +102 -0
  498. package/dist/types/controls/rich-text-v2/control.d.ts.map +1 -0
  499. package/dist/types/controls/rich-text-v2/index.d.ts +0 -2
  500. package/dist/types/controls/rich-text-v2/index.d.ts.map +1 -1
  501. package/dist/types/controls/rich-text-v2/plugin.d.ts +9 -17
  502. package/dist/types/controls/rich-text-v2/plugin.d.ts.map +1 -1
  503. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts +863 -103
  504. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  505. package/dist/types/controls/rich-text-v2/translation.d.ts +5 -4
  506. package/dist/types/controls/rich-text-v2/translation.d.ts.map +1 -1
  507. package/dist/types/controls/slot.d.ts +8 -54
  508. package/dist/types/controls/slot.d.ts.map +1 -1
  509. package/dist/types/controls/style-v2/index.d.ts +2 -0
  510. package/dist/types/controls/style-v2/index.d.ts.map +1 -0
  511. package/dist/types/controls/style-v2/style-v2.d.ts +10 -0
  512. package/dist/types/controls/style-v2/style-v2.d.ts.map +1 -0
  513. package/dist/types/controls/style-v2/style-v2.test.d.ts +2 -0
  514. package/dist/types/controls/style-v2/style-v2.test.d.ts.map +1 -0
  515. package/dist/types/core/index.d.ts +2 -0
  516. package/dist/types/core/index.d.ts.map +1 -0
  517. package/dist/types/locale.d.ts +1 -1
  518. package/dist/types/next/client.d.ts +16 -16
  519. package/dist/types/next/components/tests/controls/combobox-control.test.d.ts +2 -0
  520. package/dist/types/next/components/tests/controls/combobox-control.test.d.ts.map +1 -0
  521. package/dist/types/next/components/tests/controls/icon-radio-group-control.test.d.ts +2 -0
  522. package/dist/types/next/components/tests/controls/icon-radio-group-control.test.d.ts.map +1 -0
  523. package/dist/types/next/components/tests/controls/image-control.test.d.ts +3 -0
  524. package/dist/types/next/components/tests/controls/image-control.test.d.ts.map +1 -0
  525. package/dist/types/next/components/tests/controls/link-control.test.d.ts +2 -0
  526. package/dist/types/next/components/tests/controls/link-control.test.d.ts.map +1 -0
  527. package/dist/types/next/components/tests/controls/list-control.test.d.ts +2 -0
  528. package/dist/types/next/components/tests/controls/list-control.test.d.ts.map +1 -0
  529. package/dist/types/next/components/tests/controls/number-control.test.d.ts +2 -0
  530. package/dist/types/next/components/tests/controls/number-control.test.d.ts.map +1 -0
  531. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts +9 -5
  532. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  533. package/dist/types/next/components/tests/controls/select-control.test.d.ts +2 -0
  534. package/dist/types/next/components/tests/controls/select-control.test.d.ts.map +1 -0
  535. package/dist/types/next/components/tests/controls/shape-control.test.d.ts +2 -0
  536. package/dist/types/next/components/tests/controls/shape-control.test.d.ts.map +1 -0
  537. package/dist/types/next/components/tests/controls/slot-control.test.d.ts +2 -0
  538. package/dist/types/next/components/tests/controls/slot-control.test.d.ts.map +1 -0
  539. package/dist/types/next/components/tests/controls/style-control.test.d.ts +2 -0
  540. package/dist/types/next/components/tests/controls/style-control.test.d.ts.map +1 -0
  541. package/dist/types/next/components/tests/controls/text-area-control.test.d.ts +2 -0
  542. package/dist/types/next/components/tests/controls/text-area-control.test.d.ts.map +1 -0
  543. package/dist/types/next/components/tests/controls/text-input-control.test.d.ts +2 -0
  544. package/dist/types/next/components/tests/controls/text-input-control.test.d.ts.map +1 -0
  545. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts +15 -2
  546. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts.map +1 -1
  547. package/dist/types/prop-controllers/copy.d.ts +2 -2
  548. package/dist/types/prop-controllers/copy.d.ts.map +1 -1
  549. package/dist/types/prop-controllers/deleted.d.ts +1 -1
  550. package/dist/types/prop-controllers/deleted.d.ts.map +1 -1
  551. package/dist/types/prop-controllers/descriptors.d.ts +8 -27
  552. package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
  553. package/dist/types/prop-controllers/index.d.ts +3 -3
  554. package/dist/types/prop-controllers/index.d.ts.map +1 -1
  555. package/dist/types/prop-controllers/instances.d.ts +10 -72
  556. package/dist/types/prop-controllers/instances.d.ts.map +1 -1
  557. package/dist/types/prop-controllers/introspection.d.ts +2 -2
  558. package/dist/types/prop-controllers/introspection.d.ts.map +1 -1
  559. package/dist/types/runtimes/react/components/Element.d.ts +2 -2
  560. package/dist/types/runtimes/react/controls/checkbox.d.ts +3 -3
  561. package/dist/types/runtimes/react/controls/checkbox.d.ts.map +1 -1
  562. package/dist/types/runtimes/react/controls/color.d.ts +3 -3
  563. package/dist/types/runtimes/react/controls/color.d.ts.map +1 -1
  564. package/dist/types/runtimes/react/controls/combobox.d.ts +3 -3
  565. package/dist/types/runtimes/react/controls/combobox.d.ts.map +1 -1
  566. package/dist/types/runtimes/react/controls/control.d.ts +7 -28
  567. package/dist/types/runtimes/react/controls/control.d.ts.map +1 -1
  568. package/dist/types/runtimes/react/controls/icon-radio-group.d.ts +3 -3
  569. package/dist/types/runtimes/react/controls/icon-radio-group.d.ts.map +1 -1
  570. package/dist/types/runtimes/react/controls/image.d.ts +3 -12
  571. package/dist/types/runtimes/react/controls/image.d.ts.map +1 -1
  572. package/dist/types/runtimes/react/controls/link.d.ts +3 -10
  573. package/dist/types/runtimes/react/controls/link.d.ts.map +1 -1
  574. package/dist/types/runtimes/react/controls/list.d.ts +7 -9
  575. package/dist/types/runtimes/react/controls/list.d.ts.map +1 -1
  576. package/dist/types/runtimes/react/controls/number.d.ts +3 -3
  577. package/dist/types/runtimes/react/controls/number.d.ts.map +1 -1
  578. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts +1 -1
  579. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts.map +1 -1
  580. package/dist/types/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.d.ts +2 -2
  581. package/dist/types/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.d.ts.map +1 -1
  582. package/dist/types/runtimes/react/controls/rich-text/ReadOnlyText.d.ts +3 -4
  583. package/dist/types/runtimes/react/controls/rich-text/ReadOnlyText.d.ts.map +1 -1
  584. package/dist/types/runtimes/react/controls/rich-text/components/Element/block.d.ts +2 -2
  585. package/dist/types/runtimes/react/controls/rich-text/components/Element/block.d.ts.map +1 -1
  586. package/dist/types/runtimes/react/controls/rich-text/components/Element/element.d.ts +1 -1
  587. package/dist/types/runtimes/react/controls/rich-text/components/Element/element.d.ts.map +1 -1
  588. package/dist/types/runtimes/react/controls/rich-text/components/Element/inline.d.ts +2 -2
  589. package/dist/types/runtimes/react/controls/rich-text/components/Element/inline.d.ts.map +1 -1
  590. package/dist/types/runtimes/react/controls/rich-text/rich-text.d.ts +4 -3
  591. package/dist/types/runtimes/react/controls/rich-text/rich-text.d.ts.map +1 -1
  592. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts +4 -4
  593. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts.map +1 -1
  594. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts +2 -2
  595. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts.map +1 -1
  596. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts +2 -2
  597. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts.map +1 -1
  598. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.d.ts +2 -2
  599. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.d.ts.map +1 -1
  600. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.d.ts +2 -2
  601. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.d.ts.map +1 -1
  602. package/dist/types/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.d.ts +4 -3
  603. package/dist/types/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.d.ts.map +1 -1
  604. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts +4 -3
  605. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  606. package/dist/types/runtimes/react/controls/select.d.ts +3 -3
  607. package/dist/types/runtimes/react/controls/select.d.ts.map +1 -1
  608. package/dist/types/runtimes/react/controls/shape.d.ts +7 -10
  609. package/dist/types/runtimes/react/controls/shape.d.ts.map +1 -1
  610. package/dist/types/runtimes/react/controls/slot.d.ts +3 -4
  611. package/dist/types/runtimes/react/controls/slot.d.ts.map +1 -1
  612. package/dist/types/runtimes/react/controls/style-v2.d.ts +7 -7
  613. package/dist/types/runtimes/react/controls/style-v2.d.ts.map +1 -1
  614. package/dist/types/runtimes/react/controls/style.d.ts +2 -2
  615. package/dist/types/runtimes/react/controls/style.d.ts.map +1 -1
  616. package/dist/types/runtimes/react/controls/text-area.d.ts +3 -3
  617. package/dist/types/runtimes/react/controls/text-area.d.ts.map +1 -1
  618. package/dist/types/runtimes/react/controls/text-input.d.ts +3 -3
  619. package/dist/types/runtimes/react/controls/text-input.d.ts.map +1 -1
  620. package/dist/types/runtimes/react/controls/typography.d.ts +6 -6
  621. package/dist/types/runtimes/react/controls/typography.d.ts.map +1 -1
  622. package/dist/types/runtimes/react/controls.d.ts.map +1 -1
  623. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  624. package/dist/types/runtimes/react/poll-box-model.d.ts +1 -1
  625. package/dist/types/runtimes/react/poll-box-model.d.ts.map +1 -1
  626. package/dist/types/runtimes/react/react-runtime.d.ts +9 -18
  627. package/dist/types/runtimes/react/react-runtime.d.ts.map +1 -1
  628. package/dist/types/runtimes/react/runtime-core.d.ts +19 -0
  629. package/dist/types/runtimes/react/runtime-core.d.ts.map +1 -0
  630. package/dist/types/slate/BlockPlugin/clearBlockKeyForDevice.d.ts.map +1 -1
  631. package/dist/types/slate/BlockPlugin/indent.d.ts.map +1 -1
  632. package/dist/types/slate/BlockPlugin/index.d.ts +19 -41
  633. package/dist/types/slate/BlockPlugin/index.d.ts.map +1 -1
  634. package/dist/types/slate/BlockPlugin/setBlockKeyForDevice.d.ts.map +1 -1
  635. package/dist/types/slate/BlockPlugin/toggleList.d.ts.map +1 -1
  636. package/dist/types/slate/BlockPlugin/types.d.ts +2 -2
  637. package/dist/types/slate/BlockPlugin/types.d.ts.map +1 -1
  638. package/dist/types/slate/BlockPlugin/unwrapInline.d.ts +2 -2
  639. package/dist/types/slate/BlockPlugin/unwrapInline.d.ts.map +1 -1
  640. package/dist/types/slate/BlockPlugin/utils/getSelectedListItems.d.ts +3 -2
  641. package/dist/types/slate/BlockPlugin/utils/getSelectedListItems.d.ts.map +1 -1
  642. package/dist/types/slate/BlockPlugin/wrapInline.d.ts +2 -2
  643. package/dist/types/slate/BlockPlugin/wrapInline.d.ts.map +1 -1
  644. package/dist/types/slate/BlockPlugin/wrapList.d.ts +1 -1
  645. package/dist/types/slate/BlockPlugin/wrapList.d.ts.map +1 -1
  646. package/dist/types/slate/BuilderPlugin/index.d.ts.map +1 -1
  647. package/dist/types/slate/InlineModePlugin/index.d.ts +79 -7
  648. package/dist/types/slate/InlineModePlugin/index.d.ts.map +1 -1
  649. package/dist/types/slate/InlinePlugin/getValue.d.ts.map +1 -1
  650. package/dist/types/slate/InlinePlugin/index.d.ts +22 -11
  651. package/dist/types/slate/InlinePlugin/index.d.ts.map +1 -1
  652. package/dist/types/slate/InlinePlugin/onChange.d.ts.map +1 -1
  653. package/dist/types/slate/InlinePlugin/types.d.ts +18 -6
  654. package/dist/types/slate/InlinePlugin/types.d.ts.map +1 -1
  655. package/dist/types/slate/LinkPlugin/getValue.d.ts +36 -3
  656. package/dist/types/slate/LinkPlugin/getValue.d.ts.map +1 -1
  657. package/dist/types/slate/LinkPlugin/index.d.ts +40 -9
  658. package/dist/types/slate/LinkPlugin/index.d.ts.map +1 -1
  659. package/dist/types/slate/LinkPlugin/onChange.d.ts +4 -3
  660. package/dist/types/slate/LinkPlugin/onChange.d.ts.map +1 -1
  661. package/dist/types/slate/LinkPlugin/types.d.ts +3 -4
  662. package/dist/types/slate/LinkPlugin/types.d.ts.map +1 -1
  663. package/dist/types/slate/TextAlignPlugin/getValue.d.ts +2 -2
  664. package/dist/types/slate/TextAlignPlugin/getValue.d.ts.map +1 -1
  665. package/dist/types/slate/TextAlignPlugin/index.d.ts +21 -6
  666. package/dist/types/slate/TextAlignPlugin/index.d.ts.map +1 -1
  667. package/dist/types/slate/TypographyPlugin/detachActiveTypography.d.ts +1 -1
  668. package/dist/types/slate/TypographyPlugin/detachActiveTypography.d.ts.map +1 -1
  669. package/dist/types/slate/TypographyPlugin/getValue.d.ts +25 -2
  670. package/dist/types/slate/TypographyPlugin/getValue.d.ts.map +1 -1
  671. package/dist/types/slate/TypographyPlugin/index.d.ts +27 -3
  672. package/dist/types/slate/TypographyPlugin/index.d.ts.map +1 -1
  673. package/dist/types/slate/TypographyPlugin/normalizeTypographyDown.d.ts +2 -1
  674. package/dist/types/slate/TypographyPlugin/normalizeTypographyDown.d.ts.map +1 -1
  675. package/dist/types/slate/TypographyPlugin/normalizeTypographyUp.d.ts +1 -1
  676. package/dist/types/slate/TypographyPlugin/normalizeTypographyUp.d.ts.map +1 -1
  677. package/dist/types/slate/TypographyPlugin/setActiveTypographyStyle.d.ts.map +1 -1
  678. package/dist/types/slate/index.d.ts +4 -4
  679. package/dist/types/slate/index.d.ts.map +1 -1
  680. package/dist/types/slate/selectors.d.ts +7 -7
  681. package/dist/types/slate/selectors.d.ts.map +1 -1
  682. package/dist/types/slate/test-helpers/slate-test-helper.d.ts +4 -4
  683. package/dist/types/slate/test-helpers/test-elements.d.ts +61 -5
  684. package/dist/types/slate/test-helpers/test-elements.d.ts.map +1 -1
  685. package/dist/types/slate/types.d.ts +1 -206
  686. package/dist/types/slate/types.d.ts.map +1 -1
  687. package/dist/types/slate/utils/editor.d.ts +4 -4
  688. package/dist/types/slate/utils/editor.d.ts.map +1 -1
  689. package/dist/types/slate/utils/element.d.ts +4 -12
  690. package/dist/types/slate/utils/element.d.ts.map +1 -1
  691. package/dist/types/slate/utils/responsive.d.ts +1 -1
  692. package/dist/types/slate/utils/responsive.d.ts.map +1 -1
  693. package/dist/types/slate/utils/toText.d.ts +3 -3
  694. package/dist/types/slate/utils/toText.d.ts.map +1 -1
  695. package/dist/types/state/actions.d.ts +3 -3
  696. package/dist/types/state/actions.d.ts.map +1 -1
  697. package/dist/types/state/modules/box-models.d.ts +2 -1
  698. package/dist/types/state/modules/box-models.d.ts.map +1 -1
  699. package/dist/types/state/modules/breakpoints.d.ts +2 -4
  700. package/dist/types/state/modules/breakpoints.d.ts.map +1 -1
  701. package/dist/types/state/modules/prop-controller-handles.d.ts +4 -4
  702. package/dist/types/state/modules/prop-controller-handles.d.ts.map +1 -1
  703. package/dist/types/state/modules/read-only-documents.d.ts +2 -15
  704. package/dist/types/state/modules/read-only-documents.d.ts.map +1 -1
  705. package/dist/types/state/react-builder-preview.d.ts.map +1 -1
  706. package/dist/types/state/react-page.d.ts +55 -57
  707. package/dist/types/state/react-page.d.ts.map +1 -1
  708. package/dist/types/utils/tests/element-data-test-test.d.ts +29 -1
  709. package/dist/types/utils/tests/element-data-test-test.d.ts.map +1 -1
  710. package/package.json +16 -4
  711. package/dist/cjs/builder/serialization/controls/combobox.js +0 -45
  712. package/dist/cjs/builder/serialization/controls/combobox.js.map +0 -1
  713. package/dist/cjs/builder/serialization/controls/list.js +0 -50
  714. package/dist/cjs/builder/serialization/controls/list.js.map +0 -1
  715. package/dist/cjs/builder/serialization/controls/rich-text-v2.js +0 -106
  716. package/dist/cjs/builder/serialization/controls/rich-text-v2.js.map +0 -1
  717. package/dist/cjs/builder/serialization/controls/shape.js +0 -54
  718. package/dist/cjs/builder/serialization/controls/shape.js.map +0 -1
  719. package/dist/cjs/builder/serialization/controls/style-v2.js +0 -62
  720. package/dist/cjs/builder/serialization/controls/style-v2.js.map +0 -1
  721. package/dist/cjs/controls/image.js.map +0 -1
  722. package/dist/cjs/controls/list.js +0 -156
  723. package/dist/cjs/controls/list.js.map +0 -1
  724. package/dist/cjs/controls/rich-text/copy.js +0 -121
  725. package/dist/cjs/controls/rich-text/copy.js.map +0 -1
  726. package/dist/cjs/controls/rich-text/dto-types.js +0 -43
  727. package/dist/cjs/controls/rich-text/dto-types.js.map +0 -1
  728. package/dist/cjs/controls/rich-text/dto.js +0 -228
  729. package/dist/cjs/controls/rich-text/dto.js.map +0 -1
  730. package/dist/cjs/controls/rich-text/fixtures/blockquote.js +0 -77
  731. package/dist/cjs/controls/rich-text/fixtures/blockquote.js.map +0 -1
  732. package/dist/cjs/controls/rich-text/fixtures/empty-blocks.js +0 -176
  733. package/dist/cjs/controls/rich-text/fixtures/empty-blocks.js.map +0 -1
  734. package/dist/cjs/controls/rich-text/fixtures/index.js.map +0 -1
  735. package/dist/cjs/controls/rich-text/fixtures/list.js +0 -137
  736. package/dist/cjs/controls/rich-text/fixtures/list.js.map +0 -1
  737. package/dist/cjs/controls/rich-text/fixtures/typography.js +0 -926
  738. package/dist/cjs/controls/rich-text/fixtures/typography.js.map +0 -1
  739. package/dist/cjs/controls/rich-text/fixtures/v2-data-types.js +0 -114
  740. package/dist/cjs/controls/rich-text/fixtures/v2-data-types.js.map +0 -1
  741. package/dist/cjs/controls/rich-text/introspection.js +0 -104
  742. package/dist/cjs/controls/rich-text/introspection.js.map +0 -1
  743. package/dist/cjs/controls/rich-text-v2/copy.js +0 -115
  744. package/dist/cjs/controls/rich-text-v2/copy.js.map +0 -1
  745. package/dist/cjs/controls/rich-text-v2/dto.js +0 -44
  746. package/dist/cjs/controls/rich-text-v2/dto.js.map +0 -1
  747. package/dist/cjs/controls/rich-text-v2/introspection.js +0 -69
  748. package/dist/cjs/controls/rich-text-v2/introspection.js.map +0 -1
  749. package/dist/cjs/controls/select.js.map +0 -1
  750. package/dist/cjs/controls/shape.js +0 -149
  751. package/dist/cjs/controls/shape.js.map +0 -1
  752. package/dist/cjs/controls/style-v2.js +0 -74
  753. package/dist/cjs/controls/style-v2.js.map +0 -1
  754. package/dist/cjs/controls/style.js +0 -125
  755. package/dist/cjs/controls/style.js.map +0 -1
  756. package/dist/cjs/controls/typography.js +0 -47
  757. package/dist/cjs/controls/typography.js.map +0 -1
  758. package/dist/cjs/prop-controllers/base.js.map +0 -1
  759. package/dist/cjs/slate/LinkPlugin/linkPluginWithoutRenderElement.js +0 -48
  760. package/dist/cjs/slate/LinkPlugin/linkPluginWithoutRenderElement.js.map +0 -1
  761. package/dist/cjs/utils/index-signature-hack.js +0 -17
  762. package/dist/cjs/utils/index-signature-hack.js.map +0 -1
  763. package/dist/esm/builder/serialization/controls/combobox.js +0 -20
  764. package/dist/esm/builder/serialization/controls/combobox.js.map +0 -1
  765. package/dist/esm/builder/serialization/controls/list.js +0 -25
  766. package/dist/esm/builder/serialization/controls/list.js.map +0 -1
  767. package/dist/esm/builder/serialization/controls/rich-text-v2.js +0 -81
  768. package/dist/esm/builder/serialization/controls/rich-text-v2.js.map +0 -1
  769. package/dist/esm/builder/serialization/controls/shape.js +0 -32
  770. package/dist/esm/builder/serialization/controls/shape.js.map +0 -1
  771. package/dist/esm/builder/serialization/controls/style-v2.js +0 -37
  772. package/dist/esm/builder/serialization/controls/style-v2.js.map +0 -1
  773. package/dist/esm/controls/image.js +0 -10
  774. package/dist/esm/controls/image.js.map +0 -1
  775. package/dist/esm/controls/list.js +0 -132
  776. package/dist/esm/controls/list.js.map +0 -1
  777. package/dist/esm/controls/rich-text/copy.js +0 -97
  778. package/dist/esm/controls/rich-text/copy.js.map +0 -1
  779. package/dist/esm/controls/rich-text/dto-types.js +0 -19
  780. package/dist/esm/controls/rich-text/dto-types.js.map +0 -1
  781. package/dist/esm/controls/rich-text/dto.js +0 -203
  782. package/dist/esm/controls/rich-text/dto.js.map +0 -1
  783. package/dist/esm/controls/rich-text/fixtures/blockquote.js +0 -53
  784. package/dist/esm/controls/rich-text/fixtures/blockquote.js.map +0 -1
  785. package/dist/esm/controls/rich-text/fixtures/empty-blocks.js +0 -151
  786. package/dist/esm/controls/rich-text/fixtures/empty-blocks.js.map +0 -1
  787. package/dist/esm/controls/rich-text/fixtures/index.js +0 -4
  788. package/dist/esm/controls/rich-text/fixtures/index.js.map +0 -1
  789. package/dist/esm/controls/rich-text/fixtures/list.js +0 -113
  790. package/dist/esm/controls/rich-text/fixtures/list.js.map +0 -1
  791. package/dist/esm/controls/rich-text/fixtures/typography.js +0 -902
  792. package/dist/esm/controls/rich-text/fixtures/typography.js.map +0 -1
  793. package/dist/esm/controls/rich-text/fixtures/v2-data-types.js +0 -90
  794. package/dist/esm/controls/rich-text/fixtures/v2-data-types.js.map +0 -1
  795. package/dist/esm/controls/rich-text/introspection.js +0 -78
  796. package/dist/esm/controls/rich-text/introspection.js.map +0 -1
  797. package/dist/esm/controls/rich-text-v2/copy.js +0 -91
  798. package/dist/esm/controls/rich-text-v2/copy.js.map +0 -1
  799. package/dist/esm/controls/rich-text-v2/dto.js +0 -19
  800. package/dist/esm/controls/rich-text-v2/dto.js.map +0 -1
  801. package/dist/esm/controls/rich-text-v2/introspection.js +0 -43
  802. package/dist/esm/controls/rich-text-v2/introspection.js.map +0 -1
  803. package/dist/esm/controls/select.js +0 -9
  804. package/dist/esm/controls/select.js.map +0 -1
  805. package/dist/esm/controls/shape.js +0 -125
  806. package/dist/esm/controls/shape.js.map +0 -1
  807. package/dist/esm/controls/style-v2.js +0 -48
  808. package/dist/esm/controls/style-v2.js.map +0 -1
  809. package/dist/esm/controls/style.js +0 -95
  810. package/dist/esm/controls/style.js.map +0 -1
  811. package/dist/esm/controls/typography.js +0 -20
  812. package/dist/esm/controls/typography.js.map +0 -1
  813. package/dist/esm/prop-controllers/base.js +0 -10
  814. package/dist/esm/prop-controllers/base.js.map +0 -1
  815. package/dist/esm/slate/LinkPlugin/linkPluginWithoutRenderElement.js +0 -24
  816. package/dist/esm/slate/LinkPlugin/linkPluginWithoutRenderElement.js.map +0 -1
  817. package/dist/esm/utils/index-signature-hack.js +0 -1
  818. package/dist/esm/utils/index-signature-hack.js.map +0 -1
  819. package/dist/types/builder/serialization/controls/combobox.d.ts +0 -5
  820. package/dist/types/builder/serialization/controls/combobox.d.ts.map +0 -1
  821. package/dist/types/builder/serialization/controls/list.d.ts +0 -5
  822. package/dist/types/builder/serialization/controls/list.d.ts.map +0 -1
  823. package/dist/types/builder/serialization/controls/rich-text-v2.d.ts +0 -5
  824. package/dist/types/builder/serialization/controls/rich-text-v2.d.ts.map +0 -1
  825. package/dist/types/builder/serialization/controls/shape.d.ts +0 -5
  826. package/dist/types/builder/serialization/controls/shape.d.ts.map +0 -1
  827. package/dist/types/builder/serialization/controls/style-v2.d.ts +0 -5
  828. package/dist/types/builder/serialization/controls/style-v2.d.ts.map +0 -1
  829. package/dist/types/controls/image.d.ts +0 -4
  830. package/dist/types/controls/image.d.ts.map +0 -1
  831. package/dist/types/controls/image.test.d.ts +0 -2
  832. package/dist/types/controls/image.test.d.ts.map +0 -1
  833. package/dist/types/controls/link.test.d.ts +0 -2
  834. package/dist/types/controls/link.test.d.ts.map +0 -1
  835. package/dist/types/controls/list.d.ts +0 -78
  836. package/dist/types/controls/list.d.ts.map +0 -1
  837. package/dist/types/controls/rich-text/__tests__/copy.test.d.ts +0 -2
  838. package/dist/types/controls/rich-text/__tests__/copy.test.d.ts.map +0 -1
  839. package/dist/types/controls/rich-text/__tests__/dto.test.d.ts +0 -2
  840. package/dist/types/controls/rich-text/__tests__/dto.test.d.ts.map +0 -1
  841. package/dist/types/controls/rich-text/__tests__/introspection.test.d.ts +0 -2
  842. package/dist/types/controls/rich-text/__tests__/introspection.test.d.ts.map +0 -1
  843. package/dist/types/controls/rich-text/copy.d.ts +0 -4
  844. package/dist/types/controls/rich-text/copy.d.ts.map +0 -1
  845. package/dist/types/controls/rich-text/dto-types.d.ts +0 -132
  846. package/dist/types/controls/rich-text/dto-types.d.ts.map +0 -1
  847. package/dist/types/controls/rich-text/dto.d.ts +0 -8
  848. package/dist/types/controls/rich-text/dto.d.ts.map +0 -1
  849. package/dist/types/controls/rich-text/fixtures/blockquote.d.ts +0 -3
  850. package/dist/types/controls/rich-text/fixtures/blockquote.d.ts.map +0 -1
  851. package/dist/types/controls/rich-text/fixtures/empty-blocks.d.ts +0 -4
  852. package/dist/types/controls/rich-text/fixtures/empty-blocks.d.ts.map +0 -1
  853. package/dist/types/controls/rich-text/fixtures/index.d.ts +0 -4
  854. package/dist/types/controls/rich-text/fixtures/index.d.ts.map +0 -1
  855. package/dist/types/controls/rich-text/fixtures/list.d.ts +0 -3
  856. package/dist/types/controls/rich-text/fixtures/list.d.ts.map +0 -1
  857. package/dist/types/controls/rich-text/fixtures/typography.d.ts +0 -3
  858. package/dist/types/controls/rich-text/fixtures/typography.d.ts.map +0 -1
  859. package/dist/types/controls/rich-text/fixtures/v2-data-types.d.ts +0 -3
  860. package/dist/types/controls/rich-text/fixtures/v2-data-types.d.ts.map +0 -1
  861. package/dist/types/controls/rich-text/introspection.d.ts +0 -5
  862. package/dist/types/controls/rich-text/introspection.d.ts.map +0 -1
  863. package/dist/types/controls/rich-text-v2/copy.d.ts +0 -4
  864. package/dist/types/controls/rich-text-v2/copy.d.ts.map +0 -1
  865. package/dist/types/controls/rich-text-v2/dto.d.ts +0 -5
  866. package/dist/types/controls/rich-text-v2/dto.d.ts.map +0 -1
  867. package/dist/types/controls/rich-text-v2/introspection.d.ts +0 -5
  868. package/dist/types/controls/rich-text-v2/introspection.d.ts.map +0 -1
  869. package/dist/types/controls/select.d.ts +0 -22
  870. package/dist/types/controls/select.d.ts.map +0 -1
  871. package/dist/types/controls/shape.d.ts +0 -50
  872. package/dist/types/controls/shape.d.ts.map +0 -1
  873. package/dist/types/controls/style-v2.d.ts +0 -64
  874. package/dist/types/controls/style-v2.d.ts.map +0 -1
  875. package/dist/types/controls/style.d.ts +0 -179
  876. package/dist/types/controls/style.d.ts.map +0 -1
  877. package/dist/types/controls/typography.d.ts +0 -33
  878. package/dist/types/controls/typography.d.ts.map +0 -1
  879. package/dist/types/prop-controllers/base.d.ts +0 -7
  880. package/dist/types/prop-controllers/base.d.ts.map +0 -1
  881. package/dist/types/slate/LinkPlugin/linkPluginWithoutRenderElement.d.ts +0 -16
  882. package/dist/types/slate/LinkPlugin/linkPluginWithoutRenderElement.d.ts.map +0 -1
  883. package/dist/types/utils/index-signature-hack.d.ts +0 -4
  884. package/dist/types/utils/index-signature-hack.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/InlinePlugin/types.ts"],"sourcesContent":["import { IconRadioGroupOption, unstable_IconRadioGroupIcon } from '@makeswift/controls'\nimport { Node, NodeEntry } from 'slate'\nimport { ElementUtils } from '../utils/element'\nimport { Inline, InlineType, LinkElement } from '../types'\n\nexport type SupportedInlineType = Exclude<InlineType, 'link'>\nexport type SupportedInline = Exclude<Inline, LinkElement>\n\nexport const supportedInlineOptions: IconRadioGroupOption<SupportedInlineType>[] = [\n {\n icon: unstable_IconRadioGroupIcon.Superscript,\n label: 'Superscript',\n value: 'superscript',\n },\n {\n icon: unstable_IconRadioGroupIcon.Subscript,\n label: 'Subscript',\n value: 'subscript',\n },\n {\n icon: unstable_IconRadioGroupIcon.Code,\n label: 'Code',\n value: 'code',\n },\n]\n\nexport function isSupportedInlineType(inline: InlineType): inline is SupportedInlineType {\n return supportedInlineOptions.findIndex(option => option.value === inline) !== -1\n}\n\nexport function isSupportedInlineEntry(\n entry: NodeEntry<Node>,\n): entry is NodeEntry<SupportedInline> {\n const node = entry[0]\n return (\n ElementUtils.isInline(node) &&\n supportedInlineOptions.findIndex(option => option.value === node.type) !== -1\n )\n}\n"],"mappings":"AAAA,SAA+B,mCAAmC;AAElE,SAAS,oBAAoB;AAMtB,MAAM,yBAAsE;AAAA,EACjF;AAAA,IACE,MAAM,4BAA4B;AAAA,IAClC,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,MAAM,4BAA4B;AAAA,IAClC,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,MAAM,4BAA4B;AAAA,IAClC,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AACF;AAEO,SAAS,sBAAsB,QAAmD;AACvF,SAAO,uBAAuB,UAAU,YAAU,OAAO,UAAU,MAAM,MAAM;AACjF;AAEO,SAAS,uBACd,OACqC;AACrC,QAAM,OAAO,MAAM,CAAC;AACpB,SACE,aAAa,SAAS,IAAI,KAC1B,uBAAuB,UAAU,YAAU,OAAO,UAAU,KAAK,IAAI,MAAM;AAE/E;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/InlinePlugin/types.ts"],"sourcesContent":["import { Slate, unstable_IconRadioGroup } from '@makeswift/controls'\nimport { Node, NodeEntry } from 'slate'\n\nexport type SupportedInlineType = Exclude<Slate.InlineType, 'link'>\nexport type SupportedInline = Exclude<Slate.Inline, Slate.LinkElement>\n\nexport const supportedInlineOptions = [\n {\n icon: unstable_IconRadioGroup.Icon.Superscript,\n label: 'Superscript',\n value: 'superscript',\n },\n {\n icon: unstable_IconRadioGroup.Icon.Subscript,\n label: 'Subscript',\n value: 'subscript',\n },\n {\n icon: unstable_IconRadioGroup.Icon.Code,\n label: 'Code',\n value: 'code',\n },\n] as const\n\nexport function isSupportedInlineType(inline: Slate.InlineType): inline is SupportedInlineType {\n return supportedInlineOptions.findIndex(option => option.value === inline) !== -1\n}\n\nexport function isSupportedInlineNode(node: Node): node is SupportedInline {\n return Slate.isInline(node) && isSupportedInlineType(node.type)\n}\n\nexport function isSupportedInlineEntry(\n entry: NodeEntry<Node>,\n): entry is NodeEntry<SupportedInline> {\n return isSupportedInlineNode(entry[0])\n}\n"],"mappings":"AAAA,SAAS,OAAO,+BAA+B;AAMxC,MAAM,yBAAyB;AAAA,EACpC;AAAA,IACE,MAAM,wBAAwB,KAAK;AAAA,IACnC,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,MAAM,wBAAwB,KAAK;AAAA,IACnC,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,MAAM,wBAAwB,KAAK;AAAA,IACnC,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AACF;AAEO,SAAS,sBAAsB,QAAyD;AAC7F,SAAO,uBAAuB,UAAU,YAAU,OAAO,UAAU,MAAM,MAAM;AACjF;AAEO,SAAS,sBAAsB,MAAqC;AACzE,SAAO,MAAM,SAAS,IAAI,KAAK,sBAAsB,KAAK,IAAI;AAChE;AAEO,SAAS,uBACd,OACqC;AACrC,SAAO,sBAAsB,MAAM,CAAC,CAAC;AACvC;","names":[]}
@@ -1,23 +1,22 @@
1
1
  import { Editor, Text } from "slate";
2
- import { ElementUtils } from "../utils/element";
2
+ import { Slate } from "@makeswift/controls";
3
3
  import { getSelection } from "../selectors";
4
4
  import { filterForSubtreeRoots } from "../BlockPlugin/utils/filterForSubtreeRoots";
5
- import { isLinkElement } from "./types";
6
5
  import deepEqual from "../../utils/deepEqual";
7
6
  function getLinksAndTextInSelection(editor) {
8
7
  return Array.from(
9
8
  Editor.nodes(editor, {
10
9
  at: getSelection(editor),
11
- match: (node) => ElementUtils.isInline(node) && isLinkElement(node) || Text.isText(node)
10
+ match: (node) => Slate.isInline(node) && Slate.isLink(node) || Text.isText(node)
12
11
  })
13
12
  );
14
13
  }
15
14
  const getValue = (editor) => {
16
15
  const roots = filterForSubtreeRoots(getLinksAndTextInSelection(editor));
17
- const areAllRootsLinks = roots.every(([root]) => isLinkElement(root) || Text.isText(root));
16
+ const areAllRootsLinks = roots.every(([root]) => Slate.isLink(root) || Text.isText(root));
18
17
  if (!areAllRootsLinks)
19
18
  return void 0;
20
- const matchingValues = roots.map(([node]) => node).filter(isLinkElement);
19
+ const matchingValues = roots.map(([node]) => node).filter(Slate.isLink);
21
20
  const match = matchingValues.reduce(
22
21
  (a, b) => deepEqual(a?.link, b?.link) ? b : null,
23
22
  matchingValues.at(0) ?? void 0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/LinkPlugin/getValue.ts"],"sourcesContent":["import { Editor, NodeEntry, Text } from 'slate'\nimport { ElementUtils } from '../utils/element'\nimport { LinkElement } from '../types'\nimport { getSelection } from '../selectors'\nimport { filterForSubtreeRoots } from '../BlockPlugin/utils/filterForSubtreeRoots'\nimport { isLinkElement } from './types'\nimport deepEqual from '../../utils/deepEqual'\n\nexport function getLinksAndTextInSelection(editor: Editor): NodeEntry<LinkElement | Text>[] {\n return Array.from(\n Editor.nodes(editor, {\n at: getSelection(editor),\n match: node => (ElementUtils.isInline(node) && isLinkElement(node)) || Text.isText(node),\n }),\n ) as NodeEntry<Text | LinkElement>[]\n}\n\nexport const getValue = (editor: Editor) => {\n const roots = filterForSubtreeRoots(getLinksAndTextInSelection(editor))\n\n const areAllRootsLinks = roots.every(([root]) => isLinkElement(root) || Text.isText(root))\n\n if (!areAllRootsLinks) return undefined\n\n const matchingValues = roots.map(([node]) => node).filter(isLinkElement) as (\n | LinkElement\n | null\n | undefined\n )[]\n\n const match = matchingValues.reduce(\n (a, b) => (deepEqual(a?.link, b?.link) ? b : null),\n matchingValues.at(0) ?? undefined,\n )\n\n return match == null ? match : match.link\n}\n"],"mappings":"AAAA,SAAS,QAAmB,YAAY;AACxC,SAAS,oBAAoB;AAE7B,SAAS,oBAAoB;AAC7B,SAAS,6BAA6B;AACtC,SAAS,qBAAqB;AAC9B,OAAO,eAAe;AAEf,SAAS,2BAA2B,QAAiD;AAC1F,SAAO,MAAM;AAAA,IACX,OAAO,MAAM,QAAQ;AAAA,MACnB,IAAI,aAAa,MAAM;AAAA,MACvB,OAAO,UAAS,aAAa,SAAS,IAAI,KAAK,cAAc,IAAI,KAAM,KAAK,OAAO,IAAI;AAAA,IACzF,CAAC;AAAA,EACH;AACF;AAEO,MAAM,WAAW,CAAC,WAAmB;AAC1C,QAAM,QAAQ,sBAAsB,2BAA2B,MAAM,CAAC;AAEtE,QAAM,mBAAmB,MAAM,MAAM,CAAC,CAAC,IAAI,MAAM,cAAc,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC;AAEzF,MAAI,CAAC;AAAkB,WAAO;AAE9B,QAAM,iBAAiB,MAAM,IAAI,CAAC,CAAC,IAAI,MAAM,IAAI,EAAE,OAAO,aAAa;AAMvE,QAAM,QAAQ,eAAe;AAAA,IAC3B,CAAC,GAAG,MAAO,UAAU,GAAG,MAAM,GAAG,IAAI,IAAI,IAAI;AAAA,IAC7C,eAAe,GAAG,CAAC,KAAK;AAAA,EAC1B;AAEA,SAAO,SAAS,OAAO,QAAQ,MAAM;AACvC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/LinkPlugin/getValue.ts"],"sourcesContent":["import { Editor, NodeEntry, Text } from 'slate'\nimport { Slate } from '@makeswift/controls'\n\nimport { getSelection } from '../selectors'\nimport { filterForSubtreeRoots } from '../BlockPlugin/utils/filterForSubtreeRoots'\nimport deepEqual from '../../utils/deepEqual'\n\nexport function getLinksAndTextInSelection(editor: Editor): NodeEntry<Slate.LinkElement | Text>[] {\n return Array.from(\n Editor.nodes(editor, {\n at: getSelection(editor),\n match: node => (Slate.isInline(node) && Slate.isLink(node)) || Text.isText(node),\n }),\n ) as NodeEntry<Text | Slate.LinkElement>[]\n}\n\nexport const getValue = (editor: Editor) => {\n const roots = filterForSubtreeRoots(getLinksAndTextInSelection(editor))\n\n const areAllRootsLinks = roots.every(([root]) => Slate.isLink(root) || Text.isText(root))\n\n if (!areAllRootsLinks) return undefined\n\n const matchingValues = roots.map(([node]) => node).filter(Slate.isLink) as (\n | Slate.LinkElement\n | null\n | undefined\n )[]\n\n const match = matchingValues.reduce(\n (a, b) => (deepEqual(a?.link, b?.link) ? b : null),\n matchingValues.at(0) ?? undefined,\n )\n\n return match == null ? match : match.link\n}\n"],"mappings":"AAAA,SAAS,QAAmB,YAAY;AACxC,SAAS,aAAa;AAEtB,SAAS,oBAAoB;AAC7B,SAAS,6BAA6B;AACtC,OAAO,eAAe;AAEf,SAAS,2BAA2B,QAAuD;AAChG,SAAO,MAAM;AAAA,IACX,OAAO,MAAM,QAAQ;AAAA,MACnB,IAAI,aAAa,MAAM;AAAA,MACvB,OAAO,UAAS,MAAM,SAAS,IAAI,KAAK,MAAM,OAAO,IAAI,KAAM,KAAK,OAAO,IAAI;AAAA,IACjF,CAAC;AAAA,EACH;AACF;AAEO,MAAM,WAAW,CAAC,WAAmB;AAC1C,QAAM,QAAQ,sBAAsB,2BAA2B,MAAM,CAAC;AAEtE,QAAM,mBAAmB,MAAM,MAAM,CAAC,CAAC,IAAI,MAAM,MAAM,OAAO,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC;AAExF,MAAI,CAAC;AAAkB,WAAO;AAE9B,QAAM,iBAAiB,MAAM,IAAI,CAAC,CAAC,IAAI,MAAM,IAAI,EAAE,OAAO,MAAM,MAAM;AAMtE,QAAM,QAAQ,eAAe;AAAA,IAC3B,CAAC,GAAG,MAAO,UAAU,GAAG,MAAM,GAAG,IAAI,IAAI,IAAI;AAAA,IAC7C,eAAe,GAAG,CAAC,KAAK;AAAA,EAC1B;AAEA,SAAO,SAAS,OAAO,QAAQ,MAAM;AACvC;","names":[]}
@@ -1,18 +1,16 @@
1
1
  import { Fragment, jsx } from "react/jsx-runtime";
2
- import { Link } from "@makeswift/controls";
3
- import { createRichTextV2Plugin } from "../../controls/rich-text-v2/plugin";
4
- import { ElementUtils } from "../utils/element";
5
- import { InlineType } from "../types";
2
+ import { cx } from "@emotion/css";
3
+ import { Slate } from "@makeswift/controls";
4
+ import { Link } from "../../controls/link";
6
5
  import { useStyle } from "../../runtimes/react/use-style";
7
6
  import { Link as LinkComponent } from "../../components/shared/Link";
8
- import { cx } from "@emotion/css";
9
- import { isLinkElement } from "./types";
7
+ import { Plugin } from "../../controls/rich-text-v2/plugin";
10
8
  import { onChange } from "./onChange";
11
9
  import { getValue } from "./getValue";
12
10
  const withLink = (editor) => {
13
11
  const { isInline } = editor;
14
12
  editor.isInline = (entry) => {
15
- return ElementUtils.isInline(entry) && isInline(entry);
13
+ return Slate.isInline(entry) && isInline(entry);
16
14
  };
17
15
  return editor;
18
16
  };
@@ -24,7 +22,7 @@ function InlinePluginComponent({
24
22
  }) {
25
23
  const linkStyle = useStyle({ textDecoration: "none" });
26
24
  switch (element.type) {
27
- case InlineType.Link:
25
+ case Slate.InlineType.Link:
28
26
  return /* @__PURE__ */ jsx(
29
27
  LinkComponent,
30
28
  {
@@ -47,7 +45,7 @@ function InlinePluginComponent({
47
45
  }
48
46
  }
49
47
  function LinkPlugin() {
50
- return createRichTextV2Plugin({
48
+ return Plugin({
51
49
  control: {
52
50
  definition: Link({
53
51
  label: "On Click"
@@ -55,7 +53,7 @@ function LinkPlugin() {
55
53
  onChange,
56
54
  getValue,
57
55
  getElementValue: (element) => {
58
- return ElementUtils.isInline(element) && isLinkElement(element) ? element.link : void 0;
56
+ return Slate.isLink(element) ? element.link : void 0;
59
57
  }
60
58
  },
61
59
  withPlugin: withLink,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/LinkPlugin/index.tsx"],"sourcesContent":["import { Editor, Element } from 'slate'\nimport { Link } from '@makeswift/controls'\nimport { RenderElement, createRichTextV2Plugin } from '../../controls/rich-text-v2/plugin'\nimport { ElementUtils } from '../utils/element'\nimport { InlineType } from '../types'\nimport { RenderElementProps } from 'slate-react'\nimport { useStyle } from '../../runtimes/react/use-style'\nimport { Link as LinkComponent } from '../../components/shared/Link'\nimport { cx } from '@emotion/css'\nimport { isLinkElement } from './types'\nimport { onChange } from './onChange'\nimport { getValue } from './getValue'\n\nexport const withLink = (editor: Editor) => {\n const { isInline } = editor\n\n editor.isInline = entry => {\n return ElementUtils.isInline(entry) && isInline(entry)\n }\n\n return editor\n}\n\nfunction InlinePluginComponent({\n element,\n attributes,\n children,\n renderElement,\n}: RenderElementProps & { renderElement: RenderElement }) {\n const linkStyle = useStyle({ textDecoration: 'none' })\n switch (element.type) {\n case InlineType.Link:\n return (\n <LinkComponent\n {...attributes}\n link={element.link ?? undefined}\n className={cx(linkStyle, element.className)}\n >\n {renderElement({\n element,\n attributes,\n children,\n })}\n </LinkComponent>\n )\n\n default:\n return (\n <>\n {renderElement({\n element,\n attributes,\n children,\n })}\n </>\n )\n }\n}\n\nexport function LinkPlugin() {\n return createRichTextV2Plugin({\n control: {\n definition: Link({\n label: 'On Click',\n }),\n onChange,\n getValue,\n getElementValue: (element: Element) => {\n return ElementUtils.isInline(element) && isLinkElement(element) ? element.link : undefined\n },\n },\n withPlugin: withLink,\n renderElement: renderElement => props => {\n return <InlinePluginComponent {...props} renderElement={renderElement} />\n },\n })\n}\n"],"mappings":"AAiCQ,SAeA,UAfA;AAhCR,SAAS,YAAY;AACrB,SAAwB,8BAA8B;AACtD,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAE3B,SAAS,gBAAgB;AACzB,SAAS,QAAQ,qBAAqB;AACtC,SAAS,UAAU;AACnB,SAAS,qBAAqB;AAC9B,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AAElB,MAAM,WAAW,CAAC,WAAmB;AAC1C,QAAM,EAAE,SAAS,IAAI;AAErB,SAAO,WAAW,WAAS;AACzB,WAAO,aAAa,SAAS,KAAK,KAAK,SAAS,KAAK;AAAA,EACvD;AAEA,SAAO;AACT;AAEA,SAAS,sBAAsB;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA0D;AACxD,QAAM,YAAY,SAAS,EAAE,gBAAgB,OAAO,CAAC;AACrD,UAAQ,QAAQ,MAAM;AAAA,IACpB,KAAK,WAAW;AACd,aACE;AAAA,QAAC;AAAA;AAAA,UACE,GAAG;AAAA,UACJ,MAAM,QAAQ,QAAQ;AAAA,UACtB,WAAW,GAAG,WAAW,QAAQ,SAAS;AAAA,UAEzC,wBAAc;AAAA,YACb;AAAA,YACA;AAAA,YACA;AAAA,UACF,CAAC;AAAA;AAAA,MACH;AAAA,IAGJ;AACE,aACE,gCACG,wBAAc;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC,GACH;AAAA,EAEN;AACF;AAEO,SAAS,aAAa;AAC3B,SAAO,uBAAuB;AAAA,IAC5B,SAAS;AAAA,MACP,YAAY,KAAK;AAAA,QACf,OAAO;AAAA,MACT,CAAC;AAAA,MACD;AAAA,MACA;AAAA,MACA,iBAAiB,CAAC,YAAqB;AACrC,eAAO,aAAa,SAAS,OAAO,KAAK,cAAc,OAAO,IAAI,QAAQ,OAAO;AAAA,MACnF;AAAA,IACF;AAAA,IACA,YAAY;AAAA,IACZ,eAAe,mBAAiB,WAAS;AACvC,aAAO,oBAAC,yBAAuB,GAAG,OAAO,eAA8B;AAAA,IACzE;AAAA,EACF,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/LinkPlugin/index.tsx"],"sourcesContent":["import { cx } from '@emotion/css'\nimport { type Editor, Element } from 'slate'\nimport { type RenderElementProps } from 'slate-react'\nimport { Slate } from '@makeswift/controls'\n\nimport { Link } from '../../controls/link'\nimport { useStyle } from '../../runtimes/react/use-style'\nimport { Link as LinkComponent } from '../../components/shared/Link'\nimport { type RenderElement, Plugin } from '../../controls/rich-text-v2/plugin'\n\nimport { onChange } from './onChange'\nimport { getValue } from './getValue'\n\nexport const withLink = (editor: Editor) => {\n const { isInline } = editor\n\n editor.isInline = entry => {\n return Slate.isInline(entry) && isInline(entry)\n }\n\n return editor\n}\n\nfunction InlinePluginComponent({\n element,\n attributes,\n children,\n renderElement,\n}: RenderElementProps & { renderElement: RenderElement }) {\n const linkStyle = useStyle({ textDecoration: 'none' })\n switch (element.type) {\n case Slate.InlineType.Link:\n return (\n <LinkComponent\n {...attributes}\n link={element.link ?? undefined}\n className={cx(linkStyle, element.className)}\n >\n {renderElement({\n element,\n attributes,\n children,\n })}\n </LinkComponent>\n )\n\n default:\n return (\n <>\n {renderElement({\n element,\n attributes,\n children,\n })}\n </>\n )\n }\n}\n\nexport function LinkPlugin() {\n return Plugin({\n control: {\n definition: Link({\n label: 'On Click',\n }),\n onChange,\n getValue,\n getElementValue: (element: Element) => {\n return Slate.isLink(element) ? element.link : undefined\n },\n },\n withPlugin: withLink,\n renderElement: renderElement => props => {\n return <InlinePluginComponent {...props} renderElement={renderElement} />\n },\n })\n}\n"],"mappings":"AAiCQ,SAeA,UAfA;AAjCR,SAAS,UAAU;AAGnB,SAAS,aAAa;AAEtB,SAAS,YAAY;AACrB,SAAS,gBAAgB;AACzB,SAAS,QAAQ,qBAAqB;AACtC,SAA6B,cAAc;AAE3C,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AAElB,MAAM,WAAW,CAAC,WAAmB;AAC1C,QAAM,EAAE,SAAS,IAAI;AAErB,SAAO,WAAW,WAAS;AACzB,WAAO,MAAM,SAAS,KAAK,KAAK,SAAS,KAAK;AAAA,EAChD;AAEA,SAAO;AACT;AAEA,SAAS,sBAAsB;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA0D;AACxD,QAAM,YAAY,SAAS,EAAE,gBAAgB,OAAO,CAAC;AACrD,UAAQ,QAAQ,MAAM;AAAA,IACpB,KAAK,MAAM,WAAW;AACpB,aACE;AAAA,QAAC;AAAA;AAAA,UACE,GAAG;AAAA,UACJ,MAAM,QAAQ,QAAQ;AAAA,UACtB,WAAW,GAAG,WAAW,QAAQ,SAAS;AAAA,UAEzC,wBAAc;AAAA,YACb;AAAA,YACA;AAAA,YACA;AAAA,UACF,CAAC;AAAA;AAAA,MACH;AAAA,IAGJ;AACE,aACE,gCACG,wBAAc;AAAA,QACb;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC,GACH;AAAA,EAEN;AACF;AAEO,SAAS,aAAa;AAC3B,SAAO,OAAO;AAAA,IACZ,SAAS;AAAA,MACP,YAAY,KAAK;AAAA,QACf,OAAO;AAAA,MACT,CAAC;AAAA,MACD;AAAA,MACA;AAAA,MACA,iBAAiB,CAAC,YAAqB;AACrC,eAAO,MAAM,OAAO,OAAO,IAAI,QAAQ,OAAO;AAAA,MAChD;AAAA,IACF;AAAA,IACA,YAAY;AAAA,IACZ,eAAe,mBAAiB,WAAS;AACvC,aAAO,oBAAC,yBAAuB,GAAG,OAAO,eAA8B;AAAA,IACzE;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -1,13 +1,13 @@
1
1
  import { Transforms } from "slate";
2
+ import { Slate } from "@makeswift/controls";
2
3
  import { unwrapInline } from "../BlockPlugin/unwrapInline";
3
4
  import { wrapInline } from "../BlockPlugin/wrapInline";
4
- import { InlineType } from "../types";
5
5
  import { filterForSubtreeRoots } from "../BlockPlugin/utils/filterForSubtreeRoots";
6
6
  import { isLinkEntry } from "./types";
7
7
  import { getLinksAndTextInSelection } from "./getValue";
8
8
  const onChange = (editor, value) => {
9
9
  if (value == null)
10
- return unwrapInline(editor, InlineType.Link);
10
+ return unwrapInline(editor, Slate.InlineType.Link);
11
11
  const roots = filterForSubtreeRoots(getLinksAndTextInSelection(editor));
12
12
  const root = roots.at(0);
13
13
  if (roots.length === 1 && root != null && isLinkEntry(root)) {
@@ -19,8 +19,8 @@ const onChange = (editor, value) => {
19
19
  { at: root[1] }
20
20
  );
21
21
  } else {
22
- unwrapInline(editor, InlineType.Link);
23
- wrapInline(editor, { type: InlineType.Link, link: value, children: [] });
22
+ unwrapInline(editor, Slate.InlineType.Link);
23
+ wrapInline(editor, { type: Slate.InlineType.Link, link: value, children: [] });
24
24
  }
25
25
  };
26
26
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/LinkPlugin/onChange.ts"],"sourcesContent":["import { Editor, Transforms } from 'slate'\nimport { LinkControlData } from '../../controls'\nimport { unwrapInline } from '../BlockPlugin/unwrapInline'\nimport { wrapInline } from '../BlockPlugin/wrapInline'\nimport { InlineType } from '../types'\nimport { filterForSubtreeRoots } from '../BlockPlugin/utils/filterForSubtreeRoots'\nimport { isLinkEntry } from './types'\nimport { getLinksAndTextInSelection } from './getValue'\n\nexport const onChange = (editor: Editor, value: LinkControlData) => {\n if (value == null) return unwrapInline(editor, InlineType.Link)\n\n const roots = filterForSubtreeRoots(getLinksAndTextInSelection(editor))\n const root = roots.at(0)\n\n // If the root of our selection is a link we just want to modify it\n if (roots.length === 1 && root != null && isLinkEntry(root)) {\n Transforms.setNodes(\n editor,\n {\n link: value,\n },\n { at: root[1] },\n )\n }\n // In all other cases we want to remove all existing links and wrap the current selection in a new link\n else {\n unwrapInline(editor, InlineType.Link)\n wrapInline(editor, { type: InlineType.Link, link: value, children: [] })\n }\n}\n"],"mappings":"AAAA,SAAiB,kBAAkB;AAEnC,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,6BAA6B;AACtC,SAAS,mBAAmB;AAC5B,SAAS,kCAAkC;AAEpC,MAAM,WAAW,CAAC,QAAgB,UAA2B;AAClE,MAAI,SAAS;AAAM,WAAO,aAAa,QAAQ,WAAW,IAAI;AAE9D,QAAM,QAAQ,sBAAsB,2BAA2B,MAAM,CAAC;AACtE,QAAM,OAAO,MAAM,GAAG,CAAC;AAGvB,MAAI,MAAM,WAAW,KAAK,QAAQ,QAAQ,YAAY,IAAI,GAAG;AAC3D,eAAW;AAAA,MACT;AAAA,MACA;AAAA,QACE,MAAM;AAAA,MACR;AAAA,MACA,EAAE,IAAI,KAAK,CAAC,EAAE;AAAA,IAChB;AAAA,EACF,OAEK;AACH,iBAAa,QAAQ,WAAW,IAAI;AACpC,eAAW,QAAQ,EAAE,MAAM,WAAW,MAAM,MAAM,OAAO,UAAU,CAAC,EAAE,CAAC;AAAA,EACzE;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/LinkPlugin/onChange.ts"],"sourcesContent":["import { type Editor, Transforms } from 'slate'\nimport { type DataType, Slate } from '@makeswift/controls'\n\nimport { LinkDefinition } from '../../controls/link'\n\nimport { unwrapInline } from '../BlockPlugin/unwrapInline'\nimport { wrapInline } from '../BlockPlugin/wrapInline'\nimport { filterForSubtreeRoots } from '../BlockPlugin/utils/filterForSubtreeRoots'\n\nimport { isLinkEntry } from './types'\nimport { getLinksAndTextInSelection } from './getValue'\n\nexport const onChange = (editor: Editor, value: DataType<LinkDefinition>) => {\n if (value == null) return unwrapInline(editor, Slate.InlineType.Link)\n\n const roots = filterForSubtreeRoots(getLinksAndTextInSelection(editor))\n const root = roots.at(0)\n\n // If the root of our selection is a link we just want to modify it\n if (roots.length === 1 && root != null && isLinkEntry(root)) {\n Transforms.setNodes(\n editor,\n {\n link: value,\n },\n { at: root[1] },\n )\n }\n // In all other cases we want to remove all existing links and wrap the current selection in a new link\n else {\n unwrapInline(editor, Slate.InlineType.Link)\n wrapInline(editor, { type: Slate.InlineType.Link, link: value, children: [] })\n }\n}\n"],"mappings":"AAAA,SAAsB,kBAAkB;AACxC,SAAwB,aAAa;AAIrC,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAC3B,SAAS,6BAA6B;AAEtC,SAAS,mBAAmB;AAC5B,SAAS,kCAAkC;AAEpC,MAAM,WAAW,CAAC,QAAgB,UAAoC;AAC3E,MAAI,SAAS;AAAM,WAAO,aAAa,QAAQ,MAAM,WAAW,IAAI;AAEpE,QAAM,QAAQ,sBAAsB,2BAA2B,MAAM,CAAC;AACtE,QAAM,OAAO,MAAM,GAAG,CAAC;AAGvB,MAAI,MAAM,WAAW,KAAK,QAAQ,QAAQ,YAAY,IAAI,GAAG;AAC3D,eAAW;AAAA,MACT;AAAA,MACA;AAAA,QACE,MAAM;AAAA,MACR;AAAA,MACA,EAAE,IAAI,KAAK,CAAC,EAAE;AAAA,IAChB;AAAA,EACF,OAEK;AACH,iBAAa,QAAQ,MAAM,WAAW,IAAI;AAC1C,eAAW,QAAQ,EAAE,MAAM,MAAM,WAAW,MAAM,MAAM,OAAO,UAAU,CAAC,EAAE,CAAC;AAAA,EAC/E;AACF;","names":[]}
@@ -1,13 +1,9 @@
1
- import { ElementUtils } from "../utils/element";
2
- import { InlineType } from "../types";
3
- function isLinkElement(node) {
4
- return ElementUtils.isInline(node) && node.type === InlineType.Link;
5
- }
1
+ import { Element } from "slate";
2
+ import { Slate } from "@makeswift/controls";
6
3
  function isLinkEntry(inline) {
7
- return ElementUtils.isInline(inline[0]) && inline[0].type === InlineType.Link;
4
+ return Slate.isInline(inline[0]) && Element.isElementType(inline[0], Slate.InlineType.Link);
8
5
  }
9
6
  export {
10
- isLinkElement,
11
7
  isLinkEntry
12
8
  };
13
9
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/LinkPlugin/types.ts"],"sourcesContent":["import { Node, NodeEntry } from 'slate'\nimport { ElementUtils } from '../utils/element'\nimport { InlineType, LinkElement } from '../types'\n\nexport function isLinkElement(node: Node): node is LinkElement {\n return ElementUtils.isInline(node) && node.type === InlineType.Link\n}\n\nexport function isLinkEntry(inline: NodeEntry<Node>): inline is NodeEntry<LinkElement> {\n return ElementUtils.isInline(inline[0]) && inline[0].type === InlineType.Link\n}\n"],"mappings":"AACA,SAAS,oBAAoB;AAC7B,SAAS,kBAA+B;AAEjC,SAAS,cAAc,MAAiC;AAC7D,SAAO,aAAa,SAAS,IAAI,KAAK,KAAK,SAAS,WAAW;AACjE;AAEO,SAAS,YAAY,QAA2D;AACrF,SAAO,aAAa,SAAS,OAAO,CAAC,CAAC,KAAK,OAAO,CAAC,EAAE,SAAS,WAAW;AAC3E;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/LinkPlugin/types.ts"],"sourcesContent":["import { type Node, type NodeEntry, Element } from 'slate'\nimport { Slate } from '@makeswift/controls'\n\nexport function isLinkEntry(inline: NodeEntry<Node>): inline is NodeEntry<Slate.LinkElement> {\n return Slate.isInline(inline[0]) && Element.isElementType(inline[0], Slate.InlineType.Link)\n}\n"],"mappings":"AAAA,SAAoC,eAAe;AACnD,SAAS,aAAa;AAEf,SAAS,YAAY,QAAiE;AAC3F,SAAO,MAAM,SAAS,OAAO,CAAC,CAAC,KAAK,QAAQ,cAAc,OAAO,CAAC,GAAG,MAAM,WAAW,IAAI;AAC5F;","names":[]}
@@ -1,12 +1,12 @@
1
1
  import { Editor } from "slate";
2
- import { ElementUtils } from "../utils/element";
2
+ import { Slate } from "@makeswift/controls";
3
3
  import { getSelection } from "../selectors";
4
4
  import { responsiveShallowEqual } from "../utils/responsive";
5
5
  function getValue(editor) {
6
6
  const matchingValues = Array.from(
7
7
  Editor.nodes(editor, {
8
8
  at: getSelection(editor),
9
- match: ElementUtils.isRootBlock
9
+ match: Slate.isRootBlock
10
10
  })
11
11
  ).map(([node]) => node["textAlign"]);
12
12
  return matchingValues.length === 0 ? void 0 : matchingValues.reduce((a, b) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TextAlignPlugin/getValue.ts"],"sourcesContent":["import { Editor } from 'slate'\nimport { ElementUtils } from '../utils/element'\nimport { ResponsiveBlockTextAlignment } from '../types'\nimport { getSelection } from '../selectors'\nimport { responsiveShallowEqual } from '../utils/responsive'\n\nexport function getValue(editor: Editor): ResponsiveBlockTextAlignment | undefined {\n const matchingValues = Array.from(\n Editor.nodes(editor, {\n at: getSelection(editor),\n match: ElementUtils.isRootBlock,\n }),\n ).map(([node]) => node['textAlign']) as (ResponsiveBlockTextAlignment | undefined)[]\n\n return matchingValues.length === 0\n ? undefined\n : matchingValues.reduce((a, b) => {\n return responsiveShallowEqual(a, b)\n })\n}\n"],"mappings":"AAAA,SAAS,cAAc;AACvB,SAAS,oBAAoB;AAE7B,SAAS,oBAAoB;AAC7B,SAAS,8BAA8B;AAEhC,SAAS,SAAS,QAA0D;AACjF,QAAM,iBAAiB,MAAM;AAAA,IAC3B,OAAO,MAAM,QAAQ;AAAA,MACnB,IAAI,aAAa,MAAM;AAAA,MACvB,OAAO,aAAa;AAAA,IACtB,CAAC;AAAA,EACH,EAAE,IAAI,CAAC,CAAC,IAAI,MAAM,KAAK,WAAW,CAAC;AAEnC,SAAO,eAAe,WAAW,IAC7B,SACA,eAAe,OAAO,CAAC,GAAG,MAAM;AAC9B,WAAO,uBAAuB,GAAG,CAAC;AAAA,EACpC,CAAC;AACP;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TextAlignPlugin/getValue.ts"],"sourcesContent":["import { Editor } from 'slate'\nimport { Slate } from '@makeswift/controls'\n\nimport { getSelection } from '../selectors'\nimport { responsiveShallowEqual } from '../utils/responsive'\n\nexport function getValue(editor: Editor): Slate.ResponsiveBlockTextAlignment | undefined {\n const matchingValues = Array.from(\n Editor.nodes(editor, {\n at: getSelection(editor),\n match: Slate.isRootBlock,\n }),\n ).map(([node]) => node['textAlign']) as (Slate.ResponsiveBlockTextAlignment | undefined)[]\n\n return matchingValues.length === 0\n ? undefined\n : matchingValues.reduce((a, b) => {\n return responsiveShallowEqual(a, b)\n })\n}\n"],"mappings":"AAAA,SAAS,cAAc;AACvB,SAAS,aAAa;AAEtB,SAAS,oBAAoB;AAC7B,SAAS,8BAA8B;AAEhC,SAAS,SAAS,QAAgE;AACvF,QAAM,iBAAiB,MAAM;AAAA,IAC3B,OAAO,MAAM,QAAQ;AAAA,MACnB,IAAI,aAAa,MAAM;AAAA,MACvB,OAAO,MAAM;AAAA,IACf,CAAC;AAAA,EACH,EAAE,IAAI,CAAC,CAAC,IAAI,MAAM,KAAK,WAAW,CAAC;AAEnC,SAAO,eAAe,WAAW,IAC7B,SACA,eAAe,OAAO,CAAC,GAAG,MAAM;AAC9B,WAAO,uBAAuB,GAAG,CAAC;AAAA,EACpC,CAAC;AACP;","names":[]}
@@ -1,17 +1,13 @@
1
- import {
2
- unstable_IconRadioGroup,
3
- unstable_IconRadioGroupIcon,
4
- unstable_StyleV2
5
- } from "../../controls";
6
- import { ElementUtils } from "../utils/element";
1
+ import { unstable_IconRadioGroup, Slate } from "@makeswift/controls";
2
+ import { unstable_StyleV2 } from "../../controls/style-v2/style-v2";
7
3
  import { normalizeResponsiveValue, setResponsiveValue } from "../utils/responsive";
8
4
  import { getValue } from "./getValue";
9
- import { createRichTextV2Plugin } from "../../controls/rich-text-v2/plugin";
5
+ import { Plugin } from "../../controls/rich-text-v2/plugin";
10
6
  const TEXT_ALIGN_KEY = "textAlign";
11
7
  const withTextAlign = (editor) => {
12
8
  const { normalizeNode } = editor;
13
9
  editor.normalizeNode = (entry) => {
14
- if (normalizeResponsiveValue(editor, TEXT_ALIGN_KEY, { match: ElementUtils.isRootBlock })(
10
+ if (normalizeResponsiveValue(editor, TEXT_ALIGN_KEY, { match: Slate.isRootBlock })(
15
11
  entry
16
12
  )) {
17
13
  return;
@@ -21,29 +17,29 @@ const withTextAlign = (editor) => {
21
17
  return editor;
22
18
  };
23
19
  function TextAlignPlugin() {
24
- return createRichTextV2Plugin({
20
+ return Plugin({
25
21
  control: {
26
22
  definition: unstable_StyleV2({
27
23
  type: unstable_IconRadioGroup({
28
24
  label: "Alignment",
29
25
  options: [
30
26
  {
31
- icon: unstable_IconRadioGroupIcon.TextAlignLeft,
27
+ icon: unstable_IconRadioGroup.Icon.TextAlignLeft,
32
28
  label: "Left Align",
33
29
  value: "left"
34
30
  },
35
31
  {
36
- icon: unstable_IconRadioGroupIcon.TextAlignCenter,
32
+ icon: unstable_IconRadioGroup.Icon.TextAlignCenter,
37
33
  label: "Center Align",
38
34
  value: "center"
39
35
  },
40
36
  {
41
- icon: unstable_IconRadioGroupIcon.TextAlignRight,
37
+ icon: unstable_IconRadioGroup.Icon.TextAlignRight,
42
38
  label: "Right Align",
43
39
  value: "right"
44
40
  },
45
41
  {
46
- icon: unstable_IconRadioGroupIcon.TextAlignJustify,
42
+ icon: unstable_IconRadioGroup.Icon.TextAlignJustify,
47
43
  label: "Justify",
48
44
  value: "justify"
49
45
  }
@@ -55,12 +51,12 @@ function TextAlignPlugin() {
55
51
  }
56
52
  }),
57
53
  onChange: (editor, value) => setResponsiveValue(editor, TEXT_ALIGN_KEY, value, {
58
- match: ElementUtils.isRootBlock,
54
+ match: Slate.isRootBlock,
59
55
  split: false
60
56
  }),
61
- getValue: (editor) => getValue(editor),
57
+ getValue,
62
58
  getElementValue: (element) => {
63
- return ElementUtils.isRootBlock(element) ? element.textAlign : void 0;
59
+ return Slate.isRootBlock(element) ? element.textAlign : void 0;
64
60
  }
65
61
  },
66
62
  withPlugin: withTextAlign,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TextAlignPlugin/index.tsx"],"sourcesContent":["import { Editor, Element, NodeEntry } from 'slate'\nimport {\n unstable_IconRadioGroup,\n unstable_IconRadioGroupIcon,\n unstable_StyleV2,\n} from '../../controls'\nimport { ElementUtils } from '../utils/element'\nimport { normalizeResponsiveValue, setResponsiveValue } from '../utils/responsive'\nimport { getValue } from './getValue'\nimport { RootBlock } from '../types'\nimport { createRichTextV2Plugin } from '../../controls/rich-text-v2/plugin'\n\nconst TEXT_ALIGN_KEY = 'textAlign'\n\nexport const withTextAlign = (editor: Editor) => {\n const { normalizeNode } = editor\n editor.normalizeNode = entry => {\n if (\n normalizeResponsiveValue(editor, TEXT_ALIGN_KEY, { match: ElementUtils.isRootBlock })(\n entry as NodeEntry<RootBlock>,\n )\n ) {\n return\n }\n normalizeNode(entry)\n }\n\n return editor\n}\n\nexport function TextAlignPlugin() {\n return createRichTextV2Plugin({\n control: {\n definition: unstable_StyleV2({\n type: unstable_IconRadioGroup({\n label: 'Alignment',\n options: [\n {\n icon: unstable_IconRadioGroupIcon.TextAlignLeft,\n label: 'Left Align',\n value: 'left',\n },\n {\n icon: unstable_IconRadioGroupIcon.TextAlignCenter,\n label: 'Center Align',\n value: 'center',\n },\n {\n icon: unstable_IconRadioGroupIcon.TextAlignRight,\n label: 'Right Align',\n value: 'right',\n },\n {\n icon: unstable_IconRadioGroupIcon.TextAlignJustify,\n label: 'Justify',\n value: 'justify',\n },\n ],\n defaultValue: 'left',\n }),\n getStyle(textAlign: 'left' | 'center' | 'right' | 'justify' | undefined) {\n return { textAlign }\n },\n }),\n onChange: (editor, value) =>\n setResponsiveValue(editor, TEXT_ALIGN_KEY, value, {\n match: ElementUtils.isRootBlock,\n split: false,\n }),\n getValue: editor => getValue(editor),\n getElementValue: (element: Element) => {\n return ElementUtils.isRootBlock(element) ? element.textAlign : undefined\n },\n },\n withPlugin: withTextAlign,\n renderElement: (renderElement, className) => props => {\n return renderElement({\n ...props,\n element: {\n ...props.element,\n className,\n },\n })\n },\n })\n}\n"],"mappings":"AACA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,oBAAoB;AAC7B,SAAS,0BAA0B,0BAA0B;AAC7D,SAAS,gBAAgB;AAEzB,SAAS,8BAA8B;AAEvC,MAAM,iBAAiB;AAEhB,MAAM,gBAAgB,CAAC,WAAmB;AAC/C,QAAM,EAAE,cAAc,IAAI;AAC1B,SAAO,gBAAgB,WAAS;AAC9B,QACE,yBAAyB,QAAQ,gBAAgB,EAAE,OAAO,aAAa,YAAY,CAAC;AAAA,MAClF;AAAA,IACF,GACA;AACA;AAAA,IACF;AACA,kBAAc,KAAK;AAAA,EACrB;AAEA,SAAO;AACT;AAEO,SAAS,kBAAkB;AAChC,SAAO,uBAAuB;AAAA,IAC5B,SAAS;AAAA,MACP,YAAY,iBAAiB;AAAA,QAC3B,MAAM,wBAAwB;AAAA,UAC5B,OAAO;AAAA,UACP,SAAS;AAAA,YACP;AAAA,cACE,MAAM,4BAA4B;AAAA,cAClC,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,YACA;AAAA,cACE,MAAM,4BAA4B;AAAA,cAClC,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,YACA;AAAA,cACE,MAAM,4BAA4B;AAAA,cAClC,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,YACA;AAAA,cACE,MAAM,4BAA4B;AAAA,cAClC,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,UACF;AAAA,UACA,cAAc;AAAA,QAChB,CAAC;AAAA,QACD,SAAS,WAAgE;AACvE,iBAAO,EAAE,UAAU;AAAA,QACrB;AAAA,MACF,CAAC;AAAA,MACD,UAAU,CAAC,QAAQ,UACjB,mBAAmB,QAAQ,gBAAgB,OAAO;AAAA,QAChD,OAAO,aAAa;AAAA,QACpB,OAAO;AAAA,MACT,CAAC;AAAA,MACH,UAAU,YAAU,SAAS,MAAM;AAAA,MACnC,iBAAiB,CAAC,YAAqB;AACrC,eAAO,aAAa,YAAY,OAAO,IAAI,QAAQ,YAAY;AAAA,MACjE;AAAA,IACF;AAAA,IACA,YAAY;AAAA,IACZ,eAAe,CAAC,eAAe,cAAc,WAAS;AACpD,aAAO,cAAc;AAAA,QACnB,GAAG;AAAA,QACH,SAAS;AAAA,UACP,GAAG,MAAM;AAAA,UACT;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TextAlignPlugin/index.tsx"],"sourcesContent":["import { Editor, Element, NodeEntry } from 'slate'\nimport { unstable_IconRadioGroup, Slate } from '@makeswift/controls'\n\nimport { unstable_StyleV2 } from '../../controls/style-v2/style-v2'\nimport { normalizeResponsiveValue, setResponsiveValue } from '../utils/responsive'\nimport { getValue } from './getValue'\nimport { Plugin } from '../../controls/rich-text-v2/plugin'\n\nconst TEXT_ALIGN_KEY = 'textAlign'\n\nexport const withTextAlign = (editor: Editor) => {\n const { normalizeNode } = editor\n editor.normalizeNode = entry => {\n if (\n normalizeResponsiveValue(editor, TEXT_ALIGN_KEY, { match: Slate.isRootBlock })(\n entry as NodeEntry<Slate.RootBlock>,\n )\n ) {\n return\n }\n normalizeNode(entry)\n }\n\n return editor\n}\n\nexport function TextAlignPlugin() {\n return Plugin({\n control: {\n definition: unstable_StyleV2({\n type: unstable_IconRadioGroup({\n label: 'Alignment',\n options: [\n {\n icon: unstable_IconRadioGroup.Icon.TextAlignLeft,\n label: 'Left Align',\n value: 'left',\n },\n {\n icon: unstable_IconRadioGroup.Icon.TextAlignCenter,\n label: 'Center Align',\n value: 'center',\n },\n {\n icon: unstable_IconRadioGroup.Icon.TextAlignRight,\n label: 'Right Align',\n value: 'right',\n },\n {\n icon: unstable_IconRadioGroup.Icon.TextAlignJustify,\n label: 'Justify',\n value: 'justify',\n },\n ],\n defaultValue: 'left',\n }),\n getStyle(textAlign) {\n return { textAlign }\n },\n }),\n onChange: (editor, value) =>\n setResponsiveValue(editor, TEXT_ALIGN_KEY, value, {\n match: Slate.isRootBlock,\n split: false,\n }),\n getValue,\n getElementValue: (element: Element) => {\n return Slate.isRootBlock(element) ? element.textAlign : undefined\n },\n },\n withPlugin: withTextAlign,\n renderElement: (renderElement, className) => props => {\n return renderElement({\n ...props,\n element: {\n ...props.element,\n className,\n },\n })\n },\n })\n}\n"],"mappings":"AACA,SAAS,yBAAyB,aAAa;AAE/C,SAAS,wBAAwB;AACjC,SAAS,0BAA0B,0BAA0B;AAC7D,SAAS,gBAAgB;AACzB,SAAS,cAAc;AAEvB,MAAM,iBAAiB;AAEhB,MAAM,gBAAgB,CAAC,WAAmB;AAC/C,QAAM,EAAE,cAAc,IAAI;AAC1B,SAAO,gBAAgB,WAAS;AAC9B,QACE,yBAAyB,QAAQ,gBAAgB,EAAE,OAAO,MAAM,YAAY,CAAC;AAAA,MAC3E;AAAA,IACF,GACA;AACA;AAAA,IACF;AACA,kBAAc,KAAK;AAAA,EACrB;AAEA,SAAO;AACT;AAEO,SAAS,kBAAkB;AAChC,SAAO,OAAO;AAAA,IACZ,SAAS;AAAA,MACP,YAAY,iBAAiB;AAAA,QAC3B,MAAM,wBAAwB;AAAA,UAC5B,OAAO;AAAA,UACP,SAAS;AAAA,YACP;AAAA,cACE,MAAM,wBAAwB,KAAK;AAAA,cACnC,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,YACA;AAAA,cACE,MAAM,wBAAwB,KAAK;AAAA,cACnC,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,YACA;AAAA,cACE,MAAM,wBAAwB,KAAK;AAAA,cACnC,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,YACA;AAAA,cACE,MAAM,wBAAwB,KAAK;AAAA,cACnC,OAAO;AAAA,cACP,OAAO;AAAA,YACT;AAAA,UACF;AAAA,UACA,cAAc;AAAA,QAChB,CAAC;AAAA,QACD,SAAS,WAAW;AAClB,iBAAO,EAAE,UAAU;AAAA,QACrB;AAAA,MACF,CAAC;AAAA,MACD,UAAU,CAAC,QAAQ,UACjB,mBAAmB,QAAQ,gBAAgB,OAAO;AAAA,QAChD,OAAO,MAAM;AAAA,QACb,OAAO;AAAA,MACT,CAAC;AAAA,MACH;AAAA,MACA,iBAAiB,CAAC,YAAqB;AACrC,eAAO,MAAM,YAAY,OAAO,IAAI,QAAQ,YAAY;AAAA,MAC1D;AAAA,IACF;AAAA,IACA,YAAY;AAAA,IACZ,eAAe,CAAC,eAAe,cAAc,WAAS;AACpD,aAAO,cAAc;AAAA,QACnB,GAAG;AAAA,QACH,SAAS;AAAA,UACP,GAAG,MAAM;AAAA,UACT;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TypographyPlugin/clearActiveTypographyStyle.ts"],"sourcesContent":["import { Editor, Transforms, Text, Range } from 'slate'\nimport { RichTextTypography } from '../types'\n\ntype ClearActiveTypographyStyleOptions = {\n at?: Range\n}\n\nexport function clearActiveTypographyStyle(\n editor: Editor,\n options?: ClearActiveTypographyStyleOptions,\n) {\n Editor.withoutNormalizing(editor, () => {\n const at = options?.at ?? editor.selection\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n\n if (atRef.current) {\n Transforms.setNodes(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: node => Text.isText(node),\n split: Range.isExpanded(atRef.current),\n },\n )\n }\n\n if (atRef.current) {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n )\n\n for (const [node, path] of textNodes) {\n if (Text.isText(node)) {\n const typography: RichTextTypography = {\n ...node.typography,\n style: [],\n }\n\n Transforms.setNodes(\n editor,\n {\n typography,\n },\n { at: path },\n )\n }\n }\n }\n\n atRef.unref()\n })\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,MAAM,aAAa;AAOzC,SAAS,2BACd,QACA,SACA;AACA,SAAO,mBAAmB,QAAQ,MAAM;AACtC,UAAM,KAAK,SAAS,MAAM,OAAO;AACjC,QAAI,CAAC;AAAI;AACT,UAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AAExC,QAAI,MAAM,SAAS;AACjB,iBAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI;AAAA,UAC/B,OAAO,MAAM,WAAW,MAAM,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAEA,QAAI,MAAM,SAAS;AACjB,YAAM,YAAY,MAAM;AAAA,QACtB,OAAO,MAAM,QAAQ;AAAA,UACnB,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,QACrD,CAAC;AAAA,MACH;AAEA,iBAAW,CAAC,MAAM,IAAI,KAAK,WAAW;AACpC,YAAI,KAAK,OAAO,IAAI,GAAG;AACrB,gBAAM,aAAiC;AAAA,YACrC,GAAG,KAAK;AAAA,YACR,OAAO,CAAC;AAAA,UACV;AAEA,qBAAW;AAAA,YACT;AAAA,YACA;AAAA,cACE;AAAA,YACF;AAAA,YACA,EAAE,IAAI,KAAK;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TypographyPlugin/clearActiveTypographyStyle.ts"],"sourcesContent":["import { Editor, Transforms, Text, Range } from 'slate'\nimport { RichTextTypography } from '@makeswift/controls'\n\ntype ClearActiveTypographyStyleOptions = {\n at?: Range\n}\n\nexport function clearActiveTypographyStyle(\n editor: Editor,\n options?: ClearActiveTypographyStyleOptions,\n) {\n Editor.withoutNormalizing(editor, () => {\n const at = options?.at ?? editor.selection\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n\n if (atRef.current) {\n Transforms.setNodes(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: node => Text.isText(node),\n split: Range.isExpanded(atRef.current),\n },\n )\n }\n\n if (atRef.current) {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n )\n\n for (const [node, path] of textNodes) {\n if (Text.isText(node)) {\n const typography: RichTextTypography = {\n ...node.typography,\n style: [],\n }\n\n Transforms.setNodes(\n editor,\n {\n typography,\n },\n { at: path },\n )\n }\n }\n }\n\n atRef.unref()\n })\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,MAAM,aAAa;AAOzC,SAAS,2BACd,QACA,SACA;AACA,SAAO,mBAAmB,QAAQ,MAAM;AACtC,UAAM,KAAK,SAAS,MAAM,OAAO;AACjC,QAAI,CAAC;AAAI;AACT,UAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AAExC,QAAI,MAAM,SAAS;AACjB,iBAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI;AAAA,UAC/B,OAAO,MAAM,WAAW,MAAM,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAEA,QAAI,MAAM,SAAS;AACjB,YAAM,YAAY,MAAM;AAAA,QACtB,OAAO,MAAM,QAAQ;AAAA,UACnB,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,QACrD,CAAC;AAAA,MACH;AAEA,iBAAW,CAAC,MAAM,IAAI,KAAK,WAAW;AACpC,YAAI,KAAK,OAAO,IAAI,GAAG;AACrB,gBAAM,aAAiC;AAAA,YACrC,GAAG,KAAK;AAAA,YACR,OAAO,CAAC;AAAA,UACV;AAEA,qBAAW;AAAA,YACT;AAAA,YACA;AAAA,cACE;AAAA,YACF;AAAA,YACA,EAAE,IAAI,KAAK;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,CAAC;AACH;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TypographyPlugin/clearDeviceActiveTypography.ts"],"sourcesContent":["import { Editor, Transforms, Text, Range } from 'slate'\nimport { RichTextTypography } from '../types'\n\ntype ClearDeviceActiveTypographyOptions = {\n at?: Range\n}\n\nexport function clearDeviceActiveTypography(\n editor: Editor,\n currentDeviceId: string,\n options?: ClearDeviceActiveTypographyOptions,\n) {\n Editor.withoutNormalizing(editor, () => {\n const at = options?.at ?? editor.selection\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n\n if (atRef.current) {\n Transforms.setNodes(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: node => Text.isText(node),\n split: Range.isExpanded(atRef.current),\n },\n )\n }\n\n if (atRef.current) {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n )\n\n for (const [node, path] of textNodes) {\n if (Text.isText(node)) {\n const typography: RichTextTypography = {\n ...node.typography,\n style:\n node?.typography?.style.filter(({ deviceId }) => deviceId !== currentDeviceId) ?? [],\n }\n\n Transforms.setNodes(\n editor,\n {\n typography,\n },\n { at: path },\n )\n }\n }\n }\n\n atRef.unref()\n })\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,MAAM,aAAa;AAOzC,SAAS,4BACd,QACA,iBACA,SACA;AACA,SAAO,mBAAmB,QAAQ,MAAM;AACtC,UAAM,KAAK,SAAS,MAAM,OAAO;AACjC,QAAI,CAAC;AAAI;AACT,UAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AAExC,QAAI,MAAM,SAAS;AACjB,iBAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI;AAAA,UAC/B,OAAO,MAAM,WAAW,MAAM,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAEA,QAAI,MAAM,SAAS;AACjB,YAAM,YAAY,MAAM;AAAA,QACtB,OAAO,MAAM,QAAQ;AAAA,UACnB,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,QACrD,CAAC;AAAA,MACH;AAEA,iBAAW,CAAC,MAAM,IAAI,KAAK,WAAW;AACpC,YAAI,KAAK,OAAO,IAAI,GAAG;AACrB,gBAAM,aAAiC;AAAA,YACrC,GAAG,KAAK;AAAA,YACR,OACE,MAAM,YAAY,MAAM,OAAO,CAAC,EAAE,SAAS,MAAM,aAAa,eAAe,KAAK,CAAC;AAAA,UACvF;AAEA,qBAAW;AAAA,YACT;AAAA,YACA;AAAA,cACE;AAAA,YACF;AAAA,YACA,EAAE,IAAI,KAAK;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TypographyPlugin/clearDeviceActiveTypography.ts"],"sourcesContent":["import { Editor, Transforms, Text, Range } from 'slate'\nimport { RichTextTypography } from '@makeswift/controls'\n\ntype ClearDeviceActiveTypographyOptions = {\n at?: Range\n}\n\nexport function clearDeviceActiveTypography(\n editor: Editor,\n currentDeviceId: string,\n options?: ClearDeviceActiveTypographyOptions,\n) {\n Editor.withoutNormalizing(editor, () => {\n const at = options?.at ?? editor.selection\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n\n if (atRef.current) {\n Transforms.setNodes(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: node => Text.isText(node),\n split: Range.isExpanded(atRef.current),\n },\n )\n }\n\n if (atRef.current) {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n )\n\n for (const [node, path] of textNodes) {\n if (Text.isText(node)) {\n const typography: RichTextTypography = {\n ...node.typography,\n style:\n node?.typography?.style.filter(({ deviceId }) => deviceId !== currentDeviceId) ?? [],\n }\n\n Transforms.setNodes(\n editor,\n {\n typography,\n },\n { at: path },\n )\n }\n }\n }\n\n atRef.unref()\n })\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,MAAM,aAAa;AAOzC,SAAS,4BACd,QACA,iBACA,SACA;AACA,SAAO,mBAAmB,QAAQ,MAAM;AACtC,UAAM,KAAK,SAAS,MAAM,OAAO;AACjC,QAAI,CAAC;AAAI;AACT,UAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AAExC,QAAI,MAAM,SAAS;AACjB,iBAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI;AAAA,UAC/B,OAAO,MAAM,WAAW,MAAM,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAEA,QAAI,MAAM,SAAS;AACjB,YAAM,YAAY,MAAM;AAAA,QACtB,OAAO,MAAM,QAAQ;AAAA,UACnB,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,QACrD,CAAC;AAAA,MACH;AAEA,iBAAW,CAAC,MAAM,IAAI,KAAK,WAAW;AACpC,YAAI,KAAK,OAAO,IAAI,GAAG;AACrB,gBAAM,aAAiC;AAAA,YACrC,GAAG,KAAK;AAAA,YACR,OACE,MAAM,YAAY,MAAM,OAAO,CAAC,EAAE,SAAS,MAAM,aAAa,eAAe,KAAK,CAAC;AAAA,UACvF;AAEA,qBAAW;AAAA,YACT;AAAA,YACA;AAAA,cACE;AAAA,YACF;AAAA,YACA,EAAE,IAAI,KAAK;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,CAAC;AACH;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TypographyPlugin/detachActiveTypography.ts"],"sourcesContent":["import { Editor, Transforms, Text, Range } from 'slate'\nimport { RichTextTypography } from '../types'\n\ntype SetActiveTypographyIdOptions = {\n at?: Range\n}\n\nexport function detachActiveTypography(\n editor: Editor,\n value: RichTextTypography['style'],\n options?: SetActiveTypographyIdOptions,\n) {\n Editor.withoutNormalizing(editor, () => {\n const at = options?.at ?? editor.selection\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n\n if (atRef.current) {\n Transforms.setNodes(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: node => Text.isText(node),\n split: Range.isExpanded(atRef.current),\n },\n )\n }\n\n if (atRef.current) {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n )\n\n for (const [node, path] of textNodes) {\n if (Text.isText(node)) {\n Transforms.setNodes(\n editor,\n {\n typography: {\n style: value,\n },\n },\n { at: path },\n )\n }\n }\n }\n\n atRef.unref()\n })\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,MAAM,aAAa;AAOzC,SAAS,uBACd,QACA,OACA,SACA;AACA,SAAO,mBAAmB,QAAQ,MAAM;AACtC,UAAM,KAAK,SAAS,MAAM,OAAO;AACjC,QAAI,CAAC;AAAI;AACT,UAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AAExC,QAAI,MAAM,SAAS;AACjB,iBAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI;AAAA,UAC/B,OAAO,MAAM,WAAW,MAAM,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAEA,QAAI,MAAM,SAAS;AACjB,YAAM,YAAY,MAAM;AAAA,QACtB,OAAO,MAAM,QAAQ;AAAA,UACnB,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,QACrD,CAAC;AAAA,MACH;AAEA,iBAAW,CAAC,MAAM,IAAI,KAAK,WAAW;AACpC,YAAI,KAAK,OAAO,IAAI,GAAG;AACrB,qBAAW;AAAA,YACT;AAAA,YACA;AAAA,cACE,YAAY;AAAA,gBACV,OAAO;AAAA,cACT;AAAA,YACF;AAAA,YACA,EAAE,IAAI,KAAK;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TypographyPlugin/detachActiveTypography.ts"],"sourcesContent":["import { Editor, Transforms, Text, Range } from 'slate'\nimport { RichTextTypography } from '@makeswift/controls'\n\ntype SetActiveTypographyIdOptions = {\n at?: Range\n}\n\nexport function detachActiveTypography(\n editor: Editor,\n value: RichTextTypography['style'],\n options?: SetActiveTypographyIdOptions,\n) {\n Editor.withoutNormalizing(editor, () => {\n const at = options?.at ?? editor.selection\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n\n if (atRef.current) {\n Transforms.setNodes(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: node => Text.isText(node),\n split: Range.isExpanded(atRef.current),\n },\n )\n }\n\n if (atRef.current) {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n )\n\n for (const [node, path] of textNodes) {\n if (Text.isText(node)) {\n Transforms.setNodes(\n editor,\n {\n typography: {\n style: value,\n },\n },\n { at: path },\n )\n }\n }\n }\n\n atRef.unref()\n })\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,MAAM,aAAa;AAOzC,SAAS,uBACd,QACA,OACA,SACA;AACA,SAAO,mBAAmB,QAAQ,MAAM;AACtC,UAAM,KAAK,SAAS,MAAM,OAAO;AACjC,QAAI,CAAC;AAAI;AACT,UAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AAExC,QAAI,MAAM,SAAS;AACjB,iBAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI;AAAA,UAC/B,OAAO,MAAM,WAAW,MAAM,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAEA,QAAI,MAAM,SAAS;AACjB,YAAM,YAAY,MAAM;AAAA,QACtB,OAAO,MAAM,QAAQ;AAAA,UACnB,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,QACrD,CAAC;AAAA,MACH;AAEA,iBAAW,CAAC,MAAM,IAAI,KAAK,WAAW;AACpC,YAAI,KAAK,OAAO,IAAI,GAAG;AACrB,qBAAW;AAAA,YACT;AAAA,YACA;AAAA,cACE,YAAY;AAAA,gBACV,OAAO;AAAA,cACT;AAAA,YACF;AAAA,YACA,EAAE,IAAI,KAAK;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,CAAC;AACH;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TypographyPlugin/getValue.tsx"],"sourcesContent":["import { Editor, Text } from 'slate'\nimport { RichTextTypography } from '../types'\nimport { getSelection } from '../selectors'\n\nexport function getValue(editor: Editor) {\n const matchingValues = Array.from(\n Editor.nodes(editor, {\n at: getSelection(editor),\n match: Text.isText,\n }),\n ).map(([node]) => node['typography']) as (RichTextTypography | undefined)[]\n\n return matchingValues\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY;AAE7B,SAAS,oBAAoB;AAEtB,SAAS,SAAS,QAAgB;AACvC,QAAM,iBAAiB,MAAM;AAAA,IAC3B,OAAO,MAAM,QAAQ;AAAA,MACnB,IAAI,aAAa,MAAM;AAAA,MACvB,OAAO,KAAK;AAAA,IACd,CAAC;AAAA,EACH,EAAE,IAAI,CAAC,CAAC,IAAI,MAAM,KAAK,YAAY,CAAC;AAEpC,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TypographyPlugin/getValue.tsx"],"sourcesContent":["import { Editor, Text } from 'slate'\nimport { RichTextTypography } from '@makeswift/controls'\n\nimport { getSelection } from '../selectors'\n\nexport function getValue(editor: Editor) {\n const matchingValues = Array.from(\n Editor.nodes(editor, {\n at: getSelection(editor),\n match: Text.isText,\n }),\n ).map(([node]) => node['typography']) as (RichTextTypography | undefined)[]\n\n return matchingValues\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY;AAG7B,SAAS,oBAAoB;AAEtB,SAAS,SAAS,QAAgB;AACvC,QAAM,iBAAiB,MAAM;AAAA,IAC3B,OAAO,MAAM,QAAQ;AAAA,MACnB,IAAI,aAAa,MAAM;AAAA,MACvB,OAAO,KAAK;AAAA,IACd,CAAC;AAAA,EACH,EAAE,IAAI,CAAC,CAAC,IAAI,MAAM,KAAK,YAAY,CAAC;AAEpC,SAAO;AACT;","names":[]}
@@ -1,13 +1,13 @@
1
1
  import { Editor, Text, Transforms } from "slate";
2
+ import { unstable_Typography } from "@makeswift/controls";
2
3
  import { clearActiveTypographyStyle } from "./clearActiveTypographyStyle";
3
4
  import { clearDeviceActiveTypography } from "./clearDeviceActiveTypography";
4
5
  import { detachActiveTypography } from "./detachActiveTypography";
5
6
  import { setActiveTypographyId } from "./setActiveTypographyId";
6
7
  import { setActiveTypographyStyle } from "./setActiveTypographyStyle";
7
- import { unstable_Typography } from "../../controls";
8
8
  import { getValue } from "./getValue";
9
9
  import { getSelection } from "../selectors";
10
- import { createRichTextV2Plugin } from "../../controls/rich-text-v2/plugin";
10
+ import { Plugin } from "../../controls/rich-text-v2/plugin";
11
11
  import { normalizeTypographyUp } from "./normalizeTypographyUp";
12
12
  import { normalizeTypographyDown } from "./normalizeTypographyDown";
13
13
  import { normalizeSimilarText } from "./normalizeSimilarText";
@@ -42,7 +42,7 @@ function withTypography(editor) {
42
42
  return editor;
43
43
  }
44
44
  function TypographyPlugin() {
45
- return createRichTextV2Plugin({
45
+ return Plugin({
46
46
  withPlugin: withTypography,
47
47
  control: {
48
48
  definition: unstable_Typography(),
@@ -75,7 +75,7 @@ function TypographyPlugin() {
75
75
  if (nodesToUpdate.length !== value?.length)
76
76
  return console.error(
77
77
  `TypographyControl.onChange received the wrong number of arguments.
78
- Called with ${value?.length} values mapping to ${nodesToUpdate.length} nodes.`
78
+ Called with ${value?.length} values mapping to ${nodesToUpdate.length} nodes.`
79
79
  );
80
80
  for (const [index, [, path]] of nodesToUpdate.entries()) {
81
81
  Transforms.setNodes(
@@ -90,7 +90,7 @@ Called with ${value?.length} values mapping to ${nodesToUpdate.length} nodes.`
90
90
  atRef.unref();
91
91
  });
92
92
  },
93
- getValue: (editor) => getValue(editor),
93
+ getValue,
94
94
  getLeafValue: (text) => {
95
95
  return Text.isText(text) ? text.typography : void 0;
96
96
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TypographyPlugin/index.ts"],"sourcesContent":["import { BaseEditor, Descendant, Editor, NodeEntry, Text, Transforms } from 'slate'\nimport { clearActiveTypographyStyle } from './clearActiveTypographyStyle'\nimport { clearDeviceActiveTypography } from './clearDeviceActiveTypography'\nimport { detachActiveTypography } from './detachActiveTypography'\nimport { setActiveTypographyId } from './setActiveTypographyId'\nimport { setActiveTypographyStyle } from './setActiveTypographyStyle'\nimport { unstable_Typography } from '../../controls'\nimport { getValue } from './getValue'\nimport { getSelection } from '../selectors'\nimport { createRichTextV2Plugin } from '../../controls/rich-text-v2/plugin'\nimport { normalizeTypographyUp } from './normalizeTypographyUp'\nimport { normalizeTypographyDown } from './normalizeTypographyDown'\nimport { normalizeSimilarText } from './normalizeSimilarText'\n\nexport const TypographyActions = {\n setActiveTypographyId,\n setActiveTypographyStyle,\n clearActiveTypographyStyle,\n clearDeviceActiveTypography,\n detachActiveTypography,\n}\n\nexport const TYPOGRAPHY_KEY = 'typography'\n\nexport interface TypographyEditor extends BaseEditor {\n typographyNormalizationDirection?: 'up' | 'neutral' | 'down'\n}\n\nexport function withTypography(editor: Editor) {\n const { normalizeNode } = editor\n editor.normalizeNode = entry => {\n const [normalizationNode, normalizationPath] = entry\n\n if (\n 'typography' in normalizationNode &&\n normalizationNode?.typography?.id == null &&\n normalizationNode?.typography?.style.length === 0\n ) {\n Transforms.unsetNodes(editor, TYPOGRAPHY_KEY, { at: normalizationPath })\n return\n }\n\n if ('slice' in normalizationNode && normalizationNode?.slice != null) {\n Transforms.unsetNodes(editor, 'slice', { at: normalizationPath })\n return\n }\n\n if (normalizeSimilarText(editor, entry)) return\n\n if (editor.typographyNormalizationDirection === 'up' && normalizeTypographyUp(editor, entry))\n return\n\n if (\n (editor.typographyNormalizationDirection === 'down' ||\n editor.typographyNormalizationDirection == null) &&\n normalizeTypographyDown(editor, entry)\n )\n return\n\n normalizeNode(entry)\n }\n\n return editor\n}\n\nexport function TypographyPlugin() {\n return createRichTextV2Plugin({\n withPlugin: withTypography,\n control: {\n definition: unstable_Typography(),\n onChange: (editor, value) => {\n Editor.withoutNormalizing(editor, () => {\n const at = getSelection(editor)\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n if (atRef.current) {\n Transforms.setNodes<Descendant>(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: Text.isText,\n split: true,\n },\n )\n }\n\n if (atRef.current) {\n const nodesToUpdate = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n ) as NodeEntry<Text>[]\n\n if (nodesToUpdate.length !== value?.length)\n return console.error(\n `TypographyControl.onChange received the wrong number of arguments.\nCalled with ${value?.length} values mapping to ${nodesToUpdate.length} nodes.`,\n )\n\n for (const [index, [, path]] of nodesToUpdate.entries()) {\n Transforms.setNodes(\n editor,\n {\n typography: value?.at(index),\n },\n { at: path, match: Text.isText },\n )\n }\n }\n\n atRef.unref()\n })\n },\n getValue: editor => getValue(editor),\n getLeafValue: (text: Text) => {\n return Text.isText(text) ? text.typography : undefined\n },\n },\n renderLeaf: (renderLeaf, className) => props => {\n return renderLeaf({\n ...props,\n leaf: {\n ...props.leaf,\n className: `${props.leaf.className} ${className}`,\n },\n })\n },\n })\n}\n"],"mappings":"AAAA,SAAiC,QAAmB,MAAM,kBAAkB;AAC5E,SAAS,kCAAkC;AAC3C,SAAS,mCAAmC;AAC5C,SAAS,8BAA8B;AACvC,SAAS,6BAA6B;AACtC,SAAS,gCAAgC;AACzC,SAAS,2BAA2B;AACpC,SAAS,gBAAgB;AACzB,SAAS,oBAAoB;AAC7B,SAAS,8BAA8B;AACvC,SAAS,6BAA6B;AACtC,SAAS,+BAA+B;AACxC,SAAS,4BAA4B;AAE9B,MAAM,oBAAoB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,MAAM,iBAAiB;AAMvB,SAAS,eAAe,QAAgB;AAC7C,QAAM,EAAE,cAAc,IAAI;AAC1B,SAAO,gBAAgB,WAAS;AAC9B,UAAM,CAAC,mBAAmB,iBAAiB,IAAI;AAE/C,QACE,gBAAgB,qBAChB,mBAAmB,YAAY,MAAM,QACrC,mBAAmB,YAAY,MAAM,WAAW,GAChD;AACA,iBAAW,WAAW,QAAQ,gBAAgB,EAAE,IAAI,kBAAkB,CAAC;AACvE;AAAA,IACF;AAEA,QAAI,WAAW,qBAAqB,mBAAmB,SAAS,MAAM;AACpE,iBAAW,WAAW,QAAQ,SAAS,EAAE,IAAI,kBAAkB,CAAC;AAChE;AAAA,IACF;AAEA,QAAI,qBAAqB,QAAQ,KAAK;AAAG;AAEzC,QAAI,OAAO,qCAAqC,QAAQ,sBAAsB,QAAQ,KAAK;AACzF;AAEF,SACG,OAAO,qCAAqC,UAC3C,OAAO,oCAAoC,SAC7C,wBAAwB,QAAQ,KAAK;AAErC;AAEF,kBAAc,KAAK;AAAA,EACrB;AAEA,SAAO;AACT;AAEO,SAAS,mBAAmB;AACjC,SAAO,uBAAuB;AAAA,IAC5B,YAAY;AAAA,IACZ,SAAS;AAAA,MACP,YAAY,oBAAoB;AAAA,MAChC,UAAU,CAAC,QAAQ,UAAU;AAC3B,eAAO,mBAAmB,QAAQ,MAAM;AACtC,gBAAM,KAAK,aAAa,MAAM;AAC9B,cAAI,CAAC;AAAI;AACT,gBAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AACxC,cAAI,MAAM,SAAS;AACjB,uBAAW;AAAA,cACT;AAAA,cACA;AAAA,gBACE,OAAO;AAAA,cACT;AAAA,cACA;AAAA,gBACE,IAAI,MAAM;AAAA,gBACV,OAAO,KAAK;AAAA,gBACZ,OAAO;AAAA,cACT;AAAA,YACF;AAAA,UACF;AAEA,cAAI,MAAM,SAAS;AACjB,kBAAM,gBAAgB,MAAM;AAAA,cAC1B,OAAO,MAAM,QAAQ;AAAA,gBACnB,IAAI,MAAM;AAAA,gBACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,cACrD,CAAC;AAAA,YACH;AAEA,gBAAI,cAAc,WAAW,OAAO;AAClC,qBAAO,QAAQ;AAAA,gBACb;AAAA,cACF,OAAO,MAAM,sBAAsB,cAAc,MAAM;AAAA,cACvD;AAEF,uBAAW,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,KAAK,cAAc,QAAQ,GAAG;AACvD,yBAAW;AAAA,gBACT;AAAA,gBACA;AAAA,kBACE,YAAY,OAAO,GAAG,KAAK;AAAA,gBAC7B;AAAA,gBACA,EAAE,IAAI,MAAM,OAAO,KAAK,OAAO;AAAA,cACjC;AAAA,YACF;AAAA,UACF;AAEA,gBAAM,MAAM;AAAA,QACd,CAAC;AAAA,MACH;AAAA,MACA,UAAU,YAAU,SAAS,MAAM;AAAA,MACnC,cAAc,CAAC,SAAe;AAC5B,eAAO,KAAK,OAAO,IAAI,IAAI,KAAK,aAAa;AAAA,MAC/C;AAAA,IACF;AAAA,IACA,YAAY,CAAC,YAAY,cAAc,WAAS;AAC9C,aAAO,WAAW;AAAA,QAChB,GAAG;AAAA,QACH,MAAM;AAAA,UACJ,GAAG,MAAM;AAAA,UACT,WAAW,GAAG,MAAM,KAAK,SAAS,IAAI,SAAS;AAAA,QACjD;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TypographyPlugin/index.ts"],"sourcesContent":["import { BaseEditor, Descendant, Editor, NodeEntry, Text, Transforms } from 'slate'\nimport { unstable_Typography } from '@makeswift/controls'\n\nimport { clearActiveTypographyStyle } from './clearActiveTypographyStyle'\nimport { clearDeviceActiveTypography } from './clearDeviceActiveTypography'\nimport { detachActiveTypography } from './detachActiveTypography'\nimport { setActiveTypographyId } from './setActiveTypographyId'\nimport { setActiveTypographyStyle } from './setActiveTypographyStyle'\nimport { getValue } from './getValue'\nimport { getSelection } from '../selectors'\nimport { Plugin } from '../../controls/rich-text-v2/plugin'\nimport { normalizeTypographyUp } from './normalizeTypographyUp'\nimport { normalizeTypographyDown } from './normalizeTypographyDown'\nimport { normalizeSimilarText } from './normalizeSimilarText'\n\nexport const TypographyActions = {\n setActiveTypographyId,\n setActiveTypographyStyle,\n clearActiveTypographyStyle,\n clearDeviceActiveTypography,\n detachActiveTypography,\n}\n\nexport const TYPOGRAPHY_KEY = 'typography'\n\nexport interface TypographyEditor extends BaseEditor {\n typographyNormalizationDirection?: 'up' | 'neutral' | 'down'\n}\n\nexport function withTypography(editor: Editor) {\n const { normalizeNode } = editor\n editor.normalizeNode = entry => {\n const [normalizationNode, normalizationPath] = entry\n\n if (\n 'typography' in normalizationNode &&\n normalizationNode?.typography?.id == null &&\n normalizationNode?.typography?.style.length === 0\n ) {\n Transforms.unsetNodes(editor, TYPOGRAPHY_KEY, { at: normalizationPath })\n return\n }\n\n if ('slice' in normalizationNode && normalizationNode?.slice != null) {\n Transforms.unsetNodes(editor, 'slice', { at: normalizationPath })\n return\n }\n\n if (normalizeSimilarText(editor, entry)) return\n\n if (editor.typographyNormalizationDirection === 'up' && normalizeTypographyUp(editor, entry))\n return\n\n if (\n (editor.typographyNormalizationDirection === 'down' ||\n editor.typographyNormalizationDirection == null) &&\n normalizeTypographyDown(editor, entry)\n )\n return\n\n normalizeNode(entry)\n }\n\n return editor\n}\n\nexport function TypographyPlugin() {\n return Plugin({\n withPlugin: withTypography,\n control: {\n definition: unstable_Typography(),\n onChange: (editor, value) => {\n Editor.withoutNormalizing(editor, () => {\n const at = getSelection(editor)\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n if (atRef.current) {\n Transforms.setNodes<Descendant>(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: Text.isText,\n split: true,\n },\n )\n }\n\n if (atRef.current) {\n const nodesToUpdate = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n ) as NodeEntry<Text>[]\n\n if (nodesToUpdate.length !== value?.length)\n return console.error(\n `TypographyControl.onChange received the wrong number of arguments.\n Called with ${value?.length} values mapping to ${nodesToUpdate.length} nodes.`,\n )\n\n for (const [index, [, path]] of nodesToUpdate.entries()) {\n Transforms.setNodes(\n editor,\n {\n typography: value?.at(index),\n },\n { at: path, match: Text.isText },\n )\n }\n }\n\n atRef.unref()\n })\n },\n getValue,\n getLeafValue: (text: Text) => {\n return Text.isText(text) ? text.typography : undefined\n },\n },\n renderLeaf: (renderLeaf, className) => props => {\n return renderLeaf({\n ...props,\n leaf: {\n ...props.leaf,\n className: `${props.leaf.className} ${className}`,\n },\n })\n },\n })\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TypographyPlugin/normalizeTypographyDown.ts"],"sourcesContent":["import { Editor, Element, NodeEntry, Transforms } from 'slate'\nimport { MakeswiftEditor, RichTextTypography } from '../types'\nimport shallowMerge from '../../utils/shallowMerge'\nimport { TYPOGRAPHY_KEY } from '.'\n\nexport function shallowMergeTypographies(\n commonTypography?: RichTextTypography,\n typography?: RichTextTypography,\n) {\n const devices = [\n ...new Set(\n commonTypography?.style\n .map(node => node.deviceId)\n .concat(typography?.style.map(node => node.deviceId) ?? []),\n ),\n ]\n\n return {\n id: commonTypography?.id ?? typography?.id,\n style: devices.map(deviceId => {\n const commonDevice = commonTypography?.style.find(s => s.deviceId === deviceId)\n const existingDeviceStyle = typography?.style.find(s => s.deviceId === deviceId)\n\n return {\n deviceId,\n value: shallowMerge(existingDeviceStyle?.value ?? {}, commonDevice?.value ?? {}),\n }\n }),\n }\n}\n\nexport function normalizeTypographyDown(editor: MakeswiftEditor, entry: NodeEntry): boolean {\n const [normalizationNode, normalizationPath] = entry\n\n if (\n Element.isElement(normalizationNode) &&\n normalizationNode.typography != null &&\n normalizationNode.children.length\n ) {\n Editor.withoutNormalizing(editor, () => {\n Transforms.unsetNodes(editor, TYPOGRAPHY_KEY, { at: normalizationPath })\n for (let i = 0; i < normalizationNode.children.length; i++) {\n const resultingTypography = shallowMergeTypographies(\n normalizationNode.typography,\n normalizationNode.children.at(i)?.typography,\n )\n Transforms.setNodes(\n editor,\n { typography: resultingTypography },\n { at: [...normalizationPath, i] },\n )\n }\n })\n return true\n }\n\n return false\n}\n"],"mappings":"AAAA,SAAS,QAAQ,SAAoB,kBAAkB;AAEvD,OAAO,kBAAkB;AACzB,SAAS,sBAAsB;AAExB,SAAS,yBACd,kBACA,YACA;AACA,QAAM,UAAU;AAAA,IACd,GAAG,IAAI;AAAA,MACL,kBAAkB,MACf,IAAI,UAAQ,KAAK,QAAQ,EACzB,OAAO,YAAY,MAAM,IAAI,UAAQ,KAAK,QAAQ,KAAK,CAAC,CAAC;AAAA,IAC9D;AAAA,EACF;AAEA,SAAO;AAAA,IACL,IAAI,kBAAkB,MAAM,YAAY;AAAA,IACxC,OAAO,QAAQ,IAAI,cAAY;AAC7B,YAAM,eAAe,kBAAkB,MAAM,KAAK,OAAK,EAAE,aAAa,QAAQ;AAC9E,YAAM,sBAAsB,YAAY,MAAM,KAAK,OAAK,EAAE,aAAa,QAAQ;AAE/E,aAAO;AAAA,QACL;AAAA,QACA,OAAO,aAAa,qBAAqB,SAAS,CAAC,GAAG,cAAc,SAAS,CAAC,CAAC;AAAA,MACjF;AAAA,IACF,CAAC;AAAA,EACH;AACF;AAEO,SAAS,wBAAwB,QAAyB,OAA2B;AAC1F,QAAM,CAAC,mBAAmB,iBAAiB,IAAI;AAE/C,MACE,QAAQ,UAAU,iBAAiB,KACnC,kBAAkB,cAAc,QAChC,kBAAkB,SAAS,QAC3B;AACA,WAAO,mBAAmB,QAAQ,MAAM;AACtC,iBAAW,WAAW,QAAQ,gBAAgB,EAAE,IAAI,kBAAkB,CAAC;AACvE,eAAS,IAAI,GAAG,IAAI,kBAAkB,SAAS,QAAQ,KAAK;AAC1D,cAAM,sBAAsB;AAAA,UAC1B,kBAAkB;AAAA,UAClB,kBAAkB,SAAS,GAAG,CAAC,GAAG;AAAA,QACpC;AACA,mBAAW;AAAA,UACT;AAAA,UACA,EAAE,YAAY,oBAAoB;AAAA,UAClC,EAAE,IAAI,CAAC,GAAG,mBAAmB,CAAC,EAAE;AAAA,QAClC;AAAA,MACF;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAEA,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TypographyPlugin/normalizeTypographyDown.ts"],"sourcesContent":["import { Editor, Element, NodeEntry, Transforms } from 'slate'\nimport { RichTextTypography } from '@makeswift/controls'\n\nimport { MakeswiftEditor } from '../types'\nimport shallowMerge from '../../utils/shallowMerge'\nimport { TYPOGRAPHY_KEY } from '.'\n\nexport function shallowMergeTypographies(\n commonTypography?: RichTextTypography,\n typography?: RichTextTypography,\n) {\n const devices = [\n ...new Set(\n commonTypography?.style\n .map(node => node.deviceId)\n .concat(typography?.style.map(node => node.deviceId) ?? []),\n ),\n ]\n\n return {\n id: commonTypography?.id ?? typography?.id,\n style: devices.map(deviceId => {\n const commonDevice = commonTypography?.style.find(s => s.deviceId === deviceId)\n const existingDeviceStyle = typography?.style.find(s => s.deviceId === deviceId)\n\n return {\n deviceId,\n value: shallowMerge(existingDeviceStyle?.value ?? {}, commonDevice?.value ?? {}),\n }\n }),\n }\n}\n\nexport function normalizeTypographyDown(editor: MakeswiftEditor, entry: NodeEntry): boolean {\n const [normalizationNode, normalizationPath] = entry\n\n if (\n Element.isElement(normalizationNode) &&\n normalizationNode.typography != null &&\n normalizationNode.children.length\n ) {\n Editor.withoutNormalizing(editor, () => {\n Transforms.unsetNodes(editor, TYPOGRAPHY_KEY, { at: normalizationPath })\n for (let i = 0; i < normalizationNode.children.length; i++) {\n const resultingTypography = shallowMergeTypographies(\n normalizationNode.typography,\n normalizationNode.children.at(i)?.typography,\n )\n Transforms.setNodes(\n editor,\n { typography: resultingTypography },\n { at: [...normalizationPath, i] },\n )\n }\n })\n return true\n }\n\n return false\n}\n"],"mappings":"AAAA,SAAS,QAAQ,SAAoB,kBAAkB;AAIvD,OAAO,kBAAkB;AACzB,SAAS,sBAAsB;AAExB,SAAS,yBACd,kBACA,YACA;AACA,QAAM,UAAU;AAAA,IACd,GAAG,IAAI;AAAA,MACL,kBAAkB,MACf,IAAI,UAAQ,KAAK,QAAQ,EACzB,OAAO,YAAY,MAAM,IAAI,UAAQ,KAAK,QAAQ,KAAK,CAAC,CAAC;AAAA,IAC9D;AAAA,EACF;AAEA,SAAO;AAAA,IACL,IAAI,kBAAkB,MAAM,YAAY;AAAA,IACxC,OAAO,QAAQ,IAAI,cAAY;AAC7B,YAAM,eAAe,kBAAkB,MAAM,KAAK,OAAK,EAAE,aAAa,QAAQ;AAC9E,YAAM,sBAAsB,YAAY,MAAM,KAAK,OAAK,EAAE,aAAa,QAAQ;AAE/E,aAAO;AAAA,QACL;AAAA,QACA,OAAO,aAAa,qBAAqB,SAAS,CAAC,GAAG,cAAc,SAAS,CAAC,CAAC;AAAA,MACjF;AAAA,IACF,CAAC;AAAA,EACH;AACF;AAEO,SAAS,wBAAwB,QAAyB,OAA2B;AAC1F,QAAM,CAAC,mBAAmB,iBAAiB,IAAI;AAE/C,MACE,QAAQ,UAAU,iBAAiB,KACnC,kBAAkB,cAAc,QAChC,kBAAkB,SAAS,QAC3B;AACA,WAAO,mBAAmB,QAAQ,MAAM;AACtC,iBAAW,WAAW,QAAQ,gBAAgB,EAAE,IAAI,kBAAkB,CAAC;AACvE,eAAS,IAAI,GAAG,IAAI,kBAAkB,SAAS,QAAQ,KAAK;AAC1D,cAAM,sBAAsB;AAAA,UAC1B,kBAAkB;AAAA,UAClB,kBAAkB,SAAS,GAAG,CAAC,GAAG;AAAA,QACpC;AACA,mBAAW;AAAA,UACT;AAAA,UACA,EAAE,YAAY,oBAAoB;AAAA,UAClC,EAAE,IAAI,CAAC,GAAG,mBAAmB,CAAC,EAAE;AAAA,QAClC;AAAA,MACF;AAAA,IACF,CAAC;AACD,WAAO;AAAA,EACT;AAEA,SAAO;AACT;","names":[]}
@@ -25,9 +25,12 @@ function shallowAndTypographies(...typographies) {
25
25
  );
26
26
  if (typographies.length !== stylesForThisDevice.length)
27
27
  return [];
28
- const value = stylesForThisDevice.reduce((acc, curr) => {
29
- return shallowAnd(acc, curr);
30
- }, stylesForThisDevice.at(0));
28
+ const value = stylesForThisDevice.reduce(
29
+ (acc, curr) => {
30
+ return shallowAnd(acc, curr);
31
+ },
32
+ stylesForThisDevice.at(0)
33
+ );
31
34
  if (value == null || Object.keys(value).length === 0) {
32
35
  return [];
33
36
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TypographyPlugin/normalizeTypographyUp.ts"],"sourcesContent":["import { MakeswiftEditor } from '../types'\nimport { Editor, Element, NodeEntry, Transforms, Node, Text } from 'slate'\nimport { RichTextTypography } from '../types'\nimport keys from '../../utils/keys'\nimport deepEqual from '../../utils/deepEqual'\nimport { shallowMergeTypographies } from './normalizeTypographyDown'\n\nfunction shallowAnd<A extends Record<string, unknown>, B extends Record<string, unknown>>(\n a: A,\n b: B,\n): A & B {\n const bKeys = keys(b)\n const aPrime = { ...a } as A & B\n const and = {} as A & B\n\n bKeys.forEach(key => {\n if (deepEqual(aPrime[key], b[key])) and[key] = aPrime[key]\n })\n\n return and\n}\n\nfunction shallowAndTypographies(...typographies: RichTextTypography[]): RichTextTypography {\n return {\n id: typographies.every(typography => typography?.id === typographies.at(0)?.id)\n ? typographies.at(0)?.id\n : undefined,\n style: [\n ...new Set(\n typographies.flatMap(typography => typography?.style.map(node => node.deviceId) ?? []),\n ),\n ].flatMap(deviceId => {\n const stylesForThisDevice = typographies\n .map(typography => typography.style.find(s => s.deviceId === deviceId)?.value)\n .filter((typography): typography is RichTextTypography['style'][number]['value'] =>\n Boolean(typography),\n )\n\n if (typographies.length !== stylesForThisDevice.length) return []\n\n const value = stylesForThisDevice.reduce((acc, curr) => {\n return shallowAnd(acc, curr)\n }, stylesForThisDevice.at(0) as RichTextTypography['style'][number]['value'])\n\n if (value == null || Object.keys(value).length === 0) {\n return []\n }\n\n return [\n {\n deviceId,\n value,\n },\n ]\n }),\n }\n}\n\nfunction shallowInverseAnd<A extends Record<string, unknown>, B extends Record<string, unknown>>(\n a: A,\n b: B,\n): A & B {\n const bKeys = Array.from(new Set([...keys(b), ...keys(a)]))\n const aPrime = { ...a } as A & B\n const bPrime = { ...b } as A & B\n const xor = {} as A & B\n\n bKeys.forEach(key => {\n if (!deepEqual(aPrime[key], bPrime[key as any])) xor[key] = aPrime[key]\n })\n\n return xor\n}\n\nfunction shallowInverseAndTypographies(\n a: RichTextTypography,\n b: RichTextTypography,\n): RichTextTypography {\n const typography = { style: [] } as RichTextTypography\n if (a?.id !== b.id) {\n typography.id = a?.id\n }\n\n if (a && a.style.length > 0) {\n const styles: RichTextTypography['style'] = []\n for (const style of a.style) {\n const bDeviceTypography = b.style.find(s => s.deviceId === style.deviceId)\n if (bDeviceTypography == null) {\n styles.push(style)\n } else {\n const uniquePropertiesOfA = shallowInverseAnd(style.value, bDeviceTypography.value)\n\n if (Object.keys(uniquePropertiesOfA).length > 0) {\n styles.push({\n deviceId: style.deviceId,\n value: uniquePropertiesOfA,\n })\n }\n }\n }\n typography.style = styles\n }\n\n return typography\n}\n\n/**\n * If a text is empty then don't include it in our comparison.\n */\nfunction isException(node: Node): boolean {\n return Text.isText(node) && node.text === ''\n}\n\nexport function normalizeTypographyUp(editor: MakeswiftEditor, entry: NodeEntry): boolean {\n const [node, path] = entry\n if (Element.isElement(node) && node.children.length) {\n const typographiesOfChildren = node.children\n .filter(child => !isException(child))\n .map(child => child.typography)\n\n const definedTypographiesOfChildren = typographiesOfChildren.filter(\n (typography): typography is RichTextTypography => Boolean(typography),\n )\n if (typographiesOfChildren.length === definedTypographiesOfChildren.length) {\n let sharedTypography: RichTextTypography = shallowAndTypographies(\n ...definedTypographiesOfChildren,\n )\n\n if (sharedTypography.style.length > 0 || sharedTypography.id != null) {\n const rootTypography: RichTextTypography = shallowMergeTypographies(\n sharedTypography,\n node.typography,\n )\n Editor.withoutNormalizing(editor, () => {\n Transforms.setNodes(editor, { typography: rootTypography }, { at: path })\n for (let i = 0; i < node.children.length; i++) {\n const typography: RichTextTypography = shallowInverseAndTypographies(\n node.children.at(i)?.typography ?? { style: [] },\n sharedTypography,\n )\n\n Transforms.setNodes(editor, { typography }, { at: [...path, i] })\n }\n })\n return true\n }\n }\n }\n return false\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TypographyPlugin/normalizeTypographyUp.ts"],"sourcesContent":["import { Editor, Element, NodeEntry, Transforms, Node, Text } from 'slate'\nimport { RichTextTypography } from '@makeswift/controls'\n\nimport { MakeswiftEditor } from '../types'\nimport keys from '../../utils/keys'\nimport deepEqual from '../../utils/deepEqual'\nimport { shallowMergeTypographies } from './normalizeTypographyDown'\n\nfunction shallowAnd<A extends Record<string, unknown>, B extends Record<string, unknown>>(\n a: A,\n b: B,\n): A & B {\n const bKeys = keys(b)\n const aPrime = { ...a } as A & B\n const and = {} as A & B\n\n bKeys.forEach(key => {\n if (deepEqual(aPrime[key], b[key])) and[key] = aPrime[key]\n })\n\n return and\n}\n\nfunction shallowAndTypographies(...typographies: RichTextTypography[]): RichTextTypography {\n return {\n id: typographies.every(typography => typography?.id === typographies.at(0)?.id)\n ? typographies.at(0)?.id\n : undefined,\n style: [\n ...new Set(\n typographies.flatMap(typography => typography?.style.map(node => node.deviceId) ?? []),\n ),\n ].flatMap(deviceId => {\n const stylesForThisDevice = typographies\n .map(typography => typography.style.find(s => s.deviceId === deviceId)?.value)\n .filter((typography): typography is RichTextTypography['style'][number]['value'] =>\n Boolean(typography),\n )\n\n if (typographies.length !== stylesForThisDevice.length) return []\n\n const value = stylesForThisDevice.reduce(\n (acc, curr) => {\n return shallowAnd(acc, curr)\n },\n stylesForThisDevice.at(0) as RichTextTypography['style'][number]['value'],\n )\n\n if (value == null || Object.keys(value).length === 0) {\n return []\n }\n\n return [\n {\n deviceId,\n value,\n },\n ]\n }),\n }\n}\n\nfunction shallowInverseAnd<A extends Record<string, unknown>, B extends Record<string, unknown>>(\n a: A,\n b: B,\n): A & B {\n const bKeys = Array.from(new Set([...keys(b), ...keys(a)]))\n const aPrime = { ...a } as A & B\n const bPrime = { ...b } as A & B\n const xor = {} as A & B\n\n bKeys.forEach(key => {\n if (!deepEqual(aPrime[key], bPrime[key as any])) xor[key] = aPrime[key]\n })\n\n return xor\n}\n\nfunction shallowInverseAndTypographies(\n a: RichTextTypography,\n b: RichTextTypography,\n): RichTextTypography {\n const typography = { style: [] } as RichTextTypography\n if (a?.id !== b.id) {\n typography.id = a?.id\n }\n\n if (a && a.style.length > 0) {\n const styles: RichTextTypography['style'] = []\n for (const style of a.style) {\n const bDeviceTypography = b.style.find(s => s.deviceId === style.deviceId)\n if (bDeviceTypography == null) {\n styles.push(style)\n } else {\n const uniquePropertiesOfA = shallowInverseAnd(style.value, bDeviceTypography.value)\n\n if (Object.keys(uniquePropertiesOfA).length > 0) {\n styles.push({\n deviceId: style.deviceId,\n value: uniquePropertiesOfA,\n })\n }\n }\n }\n typography.style = styles\n }\n\n return typography\n}\n\n/**\n * If a text is empty then don't include it in our comparison.\n */\nfunction isException(node: Node): boolean {\n return Text.isText(node) && node.text === ''\n}\n\nexport function normalizeTypographyUp(editor: MakeswiftEditor, entry: NodeEntry): boolean {\n const [node, path] = entry\n if (Element.isElement(node) && node.children.length) {\n const typographiesOfChildren = node.children\n .filter(child => !isException(child))\n .map(child => child.typography)\n\n const definedTypographiesOfChildren = typographiesOfChildren.filter(\n (typography): typography is RichTextTypography => Boolean(typography),\n )\n if (typographiesOfChildren.length === definedTypographiesOfChildren.length) {\n let sharedTypography: RichTextTypography = shallowAndTypographies(\n ...definedTypographiesOfChildren,\n )\n\n if (sharedTypography.style.length > 0 || sharedTypography.id != null) {\n const rootTypography: RichTextTypography = shallowMergeTypographies(\n sharedTypography,\n node.typography,\n )\n Editor.withoutNormalizing(editor, () => {\n Transforms.setNodes(editor, { typography: rootTypography }, { at: path })\n for (let i = 0; i < node.children.length; i++) {\n const typography: RichTextTypography = shallowInverseAndTypographies(\n node.children.at(i)?.typography ?? { style: [] },\n sharedTypography,\n )\n\n Transforms.setNodes(editor, { typography }, { at: [...path, i] })\n }\n })\n return true\n }\n }\n }\n return false\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/slate/TypographyPlugin/setActiveTypographyStyle.ts"],"sourcesContent":["import { Editor, Transforms, Text, Range } from 'slate'\nimport { Breakpoints, findBreakpointOverride, BreakpointId } from '../../state/modules/breakpoints'\nimport { RichTextTypography } from '../types'\n\ntype SetActiveTypographyStyleOptions = {\n at?: Range\n}\n\nexport function setActiveTypographyStyle(\n editor: Editor,\n breakpoints: Breakpoints,\n deviceId: string,\n prop: string,\n value?: unknown,\n options?: SetActiveTypographyStyleOptions,\n) {\n Editor.withoutNormalizing(editor, () => {\n const at = options?.at ?? editor.selection\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n\n if (atRef.current) {\n Transforms.setNodes(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: node => Text.isText(node),\n split: Range.isExpanded(atRef.current),\n },\n )\n }\n\n if (atRef.current) {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n )\n\n for (const [node, path] of textNodes) {\n if (Text.isText(node)) {\n const deviceOverrides = node?.typography?.style ?? []\n const deviceStyle = findBreakpointOverride(\n breakpoints,\n deviceOverrides,\n deviceId as BreakpointId,\n v => v,\n ) || {\n value: {},\n }\n const nextDeviceStyle = {\n deviceId,\n value: { ...deviceStyle.value, [prop]: value },\n }\n\n const nextTypography: RichTextTypography = {\n ...node.typography,\n style: [...deviceOverrides.filter(v => v.deviceId !== deviceId), nextDeviceStyle],\n }\n\n Transforms.setNodes(\n editor,\n {\n typography: nextTypography,\n },\n { at: path },\n )\n }\n }\n }\n\n atRef.unref()\n })\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,MAAM,aAAa;AAChD,SAAsB,8BAA4C;AAO3D,SAAS,yBACd,QACA,aACA,UACA,MACA,OACA,SACA;AACA,SAAO,mBAAmB,QAAQ,MAAM;AACtC,UAAM,KAAK,SAAS,MAAM,OAAO;AACjC,QAAI,CAAC;AAAI;AACT,UAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AAExC,QAAI,MAAM,SAAS;AACjB,iBAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI;AAAA,UAC/B,OAAO,MAAM,WAAW,MAAM,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAEA,QAAI,MAAM,SAAS;AACjB,YAAM,YAAY,MAAM;AAAA,QACtB,OAAO,MAAM,QAAQ;AAAA,UACnB,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,QACrD,CAAC;AAAA,MACH;AAEA,iBAAW,CAAC,MAAM,IAAI,KAAK,WAAW;AACpC,YAAI,KAAK,OAAO,IAAI,GAAG;AACrB,gBAAM,kBAAkB,MAAM,YAAY,SAAS,CAAC;AACpD,gBAAM,cAAc;AAAA,YAClB;AAAA,YACA;AAAA,YACA;AAAA,YACA,OAAK;AAAA,UACP,KAAK;AAAA,YACH,OAAO,CAAC;AAAA,UACV;AACA,gBAAM,kBAAkB;AAAA,YACtB;AAAA,YACA,OAAO,EAAE,GAAG,YAAY,OAAO,CAAC,IAAI,GAAG,MAAM;AAAA,UAC/C;AAEA,gBAAM,iBAAqC;AAAA,YACzC,GAAG,KAAK;AAAA,YACR,OAAO,CAAC,GAAG,gBAAgB,OAAO,OAAK,EAAE,aAAa,QAAQ,GAAG,eAAe;AAAA,UAClF;AAEA,qBAAW;AAAA,YACT;AAAA,YACA;AAAA,cACE,YAAY;AAAA,YACd;AAAA,YACA,EAAE,IAAI,KAAK;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../src/slate/TypographyPlugin/setActiveTypographyStyle.ts"],"sourcesContent":["import { Editor, Transforms, Text, Range } from 'slate'\nimport { RichTextTypography } from '@makeswift/controls'\n\nimport { Breakpoints, findBreakpointOverride, BreakpointId } from '../../state/modules/breakpoints'\n\ntype SetActiveTypographyStyleOptions = {\n at?: Range\n}\n\nexport function setActiveTypographyStyle(\n editor: Editor,\n breakpoints: Breakpoints,\n deviceId: string,\n prop: string,\n value?: unknown,\n options?: SetActiveTypographyStyleOptions,\n) {\n Editor.withoutNormalizing(editor, () => {\n const at = options?.at ?? editor.selection\n if (!at) return\n const atRef = Editor.rangeRef(editor, at)\n\n if (atRef.current) {\n Transforms.setNodes(\n editor,\n {\n slice: true,\n },\n {\n at: atRef.current,\n match: node => Text.isText(node),\n split: Range.isExpanded(atRef.current),\n },\n )\n }\n\n if (atRef.current) {\n const textNodes = Array.from(\n Editor.nodes(editor, {\n at: atRef.current,\n match: node => Text.isText(node) && node.slice === true,\n }),\n )\n\n for (const [node, path] of textNodes) {\n if (Text.isText(node)) {\n const deviceOverrides = node?.typography?.style ?? []\n const deviceStyle = findBreakpointOverride(\n breakpoints,\n deviceOverrides,\n deviceId as BreakpointId,\n v => v,\n ) || {\n value: {},\n }\n const nextDeviceStyle = {\n deviceId,\n value: { ...deviceStyle.value, [prop]: value },\n }\n\n const nextTypography: RichTextTypography = {\n ...node.typography,\n style: [...deviceOverrides.filter(v => v.deviceId !== deviceId), nextDeviceStyle],\n }\n\n Transforms.setNodes(\n editor,\n {\n typography: nextTypography,\n },\n { at: path },\n )\n }\n }\n }\n\n atRef.unref()\n })\n}\n"],"mappings":"AAAA,SAAS,QAAQ,YAAY,MAAM,aAAa;AAGhD,SAAsB,8BAA4C;AAM3D,SAAS,yBACd,QACA,aACA,UACA,MACA,OACA,SACA;AACA,SAAO,mBAAmB,QAAQ,MAAM;AACtC,UAAM,KAAK,SAAS,MAAM,OAAO;AACjC,QAAI,CAAC;AAAI;AACT,UAAM,QAAQ,OAAO,SAAS,QAAQ,EAAE;AAExC,QAAI,MAAM,SAAS;AACjB,iBAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,OAAO;AAAA,QACT;AAAA,QACA;AAAA,UACE,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI;AAAA,UAC/B,OAAO,MAAM,WAAW,MAAM,OAAO;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAEA,QAAI,MAAM,SAAS;AACjB,YAAM,YAAY,MAAM;AAAA,QACtB,OAAO,MAAM,QAAQ;AAAA,UACnB,IAAI,MAAM;AAAA,UACV,OAAO,UAAQ,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU;AAAA,QACrD,CAAC;AAAA,MACH;AAEA,iBAAW,CAAC,MAAM,IAAI,KAAK,WAAW;AACpC,YAAI,KAAK,OAAO,IAAI,GAAG;AACrB,gBAAM,kBAAkB,MAAM,YAAY,SAAS,CAAC;AACpD,gBAAM,cAAc;AAAA,YAClB;AAAA,YACA;AAAA,YACA;AAAA,YACA,OAAK;AAAA,UACP,KAAK;AAAA,YACH,OAAO,CAAC;AAAA,UACV;AACA,gBAAM,kBAAkB;AAAA,YACtB;AAAA,YACA,OAAO,EAAE,GAAG,YAAY,OAAO,CAAC,IAAI,GAAG,MAAM;AAAA,UAC/C;AAEA,gBAAM,iBAAqC;AAAA,YACzC,GAAG,KAAK;AAAA,YACR,OAAO,CAAC,GAAG,gBAAgB,OAAO,OAAK,EAAE,aAAa,QAAQ,GAAG,eAAe;AAAA,UAClF;AAEA,qBAAW;AAAA,YACT;AAAA,YACA;AAAA,cACE,YAAY;AAAA,YACd;AAAA,YACA,EAAE,IAAI,KAAK;AAAA,UACb;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,CAAC;AACH;","names":[]}
@@ -1,11 +1,11 @@
1
- export * from "./TypographyPlugin";
2
1
  export * from "./BlockPlugin";
3
- export * from "./InlineModePlugin";
4
2
  export * from "./BuilderPlugin";
5
- export * from "./TextAlignPlugin";
6
- export * from "./types";
3
+ export * from "./InlineModePlugin";
7
4
  export * from "./InlinePlugin";
8
5
  export * from "./LinkPlugin";
9
6
  export * from "./LocalChangesPlugin";
7
+ export * from "./TextAlignPlugin";
8
+ export * from "./TypographyPlugin";
9
+ export * from "./types";
10
10
  export * from "./utils";
11
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/slate/index.ts"],"sourcesContent":["export * from './TypographyPlugin'\nexport * from './BlockPlugin'\nexport * from './InlineModePlugin'\nexport * from './BuilderPlugin'\nexport * from './TextAlignPlugin'\nexport * from './types'\nexport * from './InlinePlugin'\nexport * from './LinkPlugin'\nexport * from './LocalChangesPlugin'\nexport * from './utils'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/slate/index.ts"],"sourcesContent":["export * from './BlockPlugin'\nexport * from './BuilderPlugin'\nexport * from './InlineModePlugin'\nexport * from './InlinePlugin'\nexport * from './LinkPlugin'\nexport * from './LocalChangesPlugin'\nexport * from './TextAlignPlugin'\nexport * from './TypographyPlugin'\nexport * from './types'\nexport * from './utils'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}