@ruya.sa/richtext-slate 3.71.3

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 (587) hide show
  1. package/LICENSE.md +22 -0
  2. package/README.md +26 -0
  3. package/dist/cell/rscEntry.d.ts +11 -0
  4. package/dist/cell/rscEntry.d.ts.map +1 -0
  5. package/dist/cell/rscEntry.js +54 -0
  6. package/dist/cell/rscEntry.js.map +1 -0
  7. package/dist/data/defaultValue.d.ts +6 -0
  8. package/dist/data/defaultValue.d.ts.map +1 -0
  9. package/dist/data/defaultValue.js +11 -0
  10. package/dist/data/defaultValue.js.map +1 -0
  11. package/dist/data/populate.d.ts +21 -0
  12. package/dist/data/populate.d.ts.map +1 -0
  13. package/dist/data/populate.js +24 -0
  14. package/dist/data/populate.js.map +1 -0
  15. package/dist/data/recurseNestedFields.d.ts +16 -0
  16. package/dist/data/recurseNestedFields.d.ts.map +1 -0
  17. package/dist/data/recurseNestedFields.js +187 -0
  18. package/dist/data/recurseNestedFields.js.map +1 -0
  19. package/dist/data/richTextRelationshipPromise.d.ts +19 -0
  20. package/dist/data/richTextRelationshipPromise.d.ts.map +1 -0
  21. package/dist/data/richTextRelationshipPromise.js +110 -0
  22. package/dist/data/richTextRelationshipPromise.js.map +1 -0
  23. package/dist/data/validation.d.ts +4 -0
  24. package/dist/data/validation.d.ts.map +1 -0
  25. package/dist/data/validation.js +14 -0
  26. package/dist/data/validation.js.map +1 -0
  27. package/dist/exports/client/index.d.ts +51 -0
  28. package/dist/exports/client/index.d.ts.map +1 -0
  29. package/dist/exports/client/index.js +53 -0
  30. package/dist/exports/client/index.js.map +1 -0
  31. package/dist/exports/server/rsc.d.ts +3 -0
  32. package/dist/exports/server/rsc.d.ts.map +1 -0
  33. package/dist/exports/server/rsc.js +4 -0
  34. package/dist/exports/server/rsc.js.map +1 -0
  35. package/dist/field/RichText.d.ts +16 -0
  36. package/dist/field/RichText.d.ts.map +1 -0
  37. package/dist/field/RichText.js +434 -0
  38. package/dist/field/RichText.js.map +1 -0
  39. package/dist/field/buttons.scss +17 -0
  40. package/dist/field/createFeatureMap.d.ts +4 -0
  41. package/dist/field/createFeatureMap.d.ts.map +1 -0
  42. package/dist/field/createFeatureMap.js +50 -0
  43. package/dist/field/createFeatureMap.js.map +1 -0
  44. package/dist/field/elements/Button.d.ts +6 -0
  45. package/dist/field/elements/Button.d.ts.map +1 -0
  46. package/dist/field/elements/Button.js +50 -0
  47. package/dist/field/elements/Button.js.map +1 -0
  48. package/dist/field/elements/EnabledRelationshipsCondition.d.ts +3 -0
  49. package/dist/field/elements/EnabledRelationshipsCondition.d.ts.map +1 -0
  50. package/dist/field/elements/EnabledRelationshipsCondition.js +34 -0
  51. package/dist/field/elements/EnabledRelationshipsCondition.js.map +1 -0
  52. package/dist/field/elements/ListButton.d.ts +6 -0
  53. package/dist/field/elements/ListButton.d.ts.map +1 -0
  54. package/dist/field/elements/ListButton.js +30 -0
  55. package/dist/field/elements/ListButton.js.map +1 -0
  56. package/dist/field/elements/areAllChildrenElements.d.ts +3 -0
  57. package/dist/field/elements/areAllChildrenElements.d.ts.map +1 -0
  58. package/dist/field/elements/areAllChildrenElements.js +6 -0
  59. package/dist/field/elements/areAllChildrenElements.js.map +1 -0
  60. package/dist/field/elements/blockquote/Button.d.ts +4 -0
  61. package/dist/field/elements/blockquote/Button.d.ts.map +1 -0
  62. package/dist/field/elements/blockquote/Button.js +11 -0
  63. package/dist/field/elements/blockquote/Button.js.map +1 -0
  64. package/dist/field/elements/blockquote/Element.d.ts +3 -0
  65. package/dist/field/elements/blockquote/Element.d.ts.map +1 -0
  66. package/dist/field/elements/blockquote/Element.js +15 -0
  67. package/dist/field/elements/blockquote/Element.js.map +1 -0
  68. package/dist/field/elements/blockquote/index.d.ts +3 -0
  69. package/dist/field/elements/blockquote/index.d.ts.map +1 -0
  70. package/dist/field/elements/blockquote/index.js +13 -0
  71. package/dist/field/elements/blockquote/index.js.map +1 -0
  72. package/dist/field/elements/blockquote/index.scss +11 -0
  73. package/dist/field/elements/getCommonBlock.d.ts +4 -0
  74. package/dist/field/elements/getCommonBlock.d.ts.map +1 -0
  75. package/dist/field/elements/getCommonBlock.js +20 -0
  76. package/dist/field/elements/getCommonBlock.js.map +1 -0
  77. package/dist/field/elements/h1/Button.d.ts +4 -0
  78. package/dist/field/elements/h1/Button.d.ts.map +1 -0
  79. package/dist/field/elements/h1/Button.js +11 -0
  80. package/dist/field/elements/h1/Button.js.map +1 -0
  81. package/dist/field/elements/h1/Heading1.d.ts +2 -0
  82. package/dist/field/elements/h1/Heading1.d.ts.map +1 -0
  83. package/dist/field/elements/h1/Heading1.js +13 -0
  84. package/dist/field/elements/h1/Heading1.js.map +1 -0
  85. package/dist/field/elements/h1/index.d.ts +3 -0
  86. package/dist/field/elements/h1/index.d.ts.map +1 -0
  87. package/dist/field/elements/h1/index.js +13 -0
  88. package/dist/field/elements/h1/index.js.map +1 -0
  89. package/dist/field/elements/h2/Button.d.ts +4 -0
  90. package/dist/field/elements/h2/Button.d.ts.map +1 -0
  91. package/dist/field/elements/h2/Button.js +11 -0
  92. package/dist/field/elements/h2/Button.js.map +1 -0
  93. package/dist/field/elements/h2/Heading2.d.ts +2 -0
  94. package/dist/field/elements/h2/Heading2.d.ts.map +1 -0
  95. package/dist/field/elements/h2/Heading2.js +13 -0
  96. package/dist/field/elements/h2/Heading2.js.map +1 -0
  97. package/dist/field/elements/h2/index.d.ts +3 -0
  98. package/dist/field/elements/h2/index.d.ts.map +1 -0
  99. package/dist/field/elements/h2/index.js +13 -0
  100. package/dist/field/elements/h2/index.js.map +1 -0
  101. package/dist/field/elements/h3/Button.d.ts +4 -0
  102. package/dist/field/elements/h3/Button.d.ts.map +1 -0
  103. package/dist/field/elements/h3/Button.js +11 -0
  104. package/dist/field/elements/h3/Button.js.map +1 -0
  105. package/dist/field/elements/h3/Heading3.d.ts +2 -0
  106. package/dist/field/elements/h3/Heading3.d.ts.map +1 -0
  107. package/dist/field/elements/h3/Heading3.js +13 -0
  108. package/dist/field/elements/h3/Heading3.js.map +1 -0
  109. package/dist/field/elements/h3/index.d.ts +3 -0
  110. package/dist/field/elements/h3/index.d.ts.map +1 -0
  111. package/dist/field/elements/h3/index.js +13 -0
  112. package/dist/field/elements/h3/index.js.map +1 -0
  113. package/dist/field/elements/h4/Button.d.ts +4 -0
  114. package/dist/field/elements/h4/Button.d.ts.map +1 -0
  115. package/dist/field/elements/h4/Button.js +11 -0
  116. package/dist/field/elements/h4/Button.js.map +1 -0
  117. package/dist/field/elements/h4/Heading4.d.ts +2 -0
  118. package/dist/field/elements/h4/Heading4.d.ts.map +1 -0
  119. package/dist/field/elements/h4/Heading4.js +13 -0
  120. package/dist/field/elements/h4/Heading4.js.map +1 -0
  121. package/dist/field/elements/h4/index.d.ts +3 -0
  122. package/dist/field/elements/h4/index.d.ts.map +1 -0
  123. package/dist/field/elements/h4/index.js +13 -0
  124. package/dist/field/elements/h4/index.js.map +1 -0
  125. package/dist/field/elements/h5/Button.d.ts +4 -0
  126. package/dist/field/elements/h5/Button.d.ts.map +1 -0
  127. package/dist/field/elements/h5/Button.js +11 -0
  128. package/dist/field/elements/h5/Button.js.map +1 -0
  129. package/dist/field/elements/h5/Heading5.d.ts +2 -0
  130. package/dist/field/elements/h5/Heading5.d.ts.map +1 -0
  131. package/dist/field/elements/h5/Heading5.js +13 -0
  132. package/dist/field/elements/h5/Heading5.js.map +1 -0
  133. package/dist/field/elements/h5/index.d.ts +3 -0
  134. package/dist/field/elements/h5/index.d.ts.map +1 -0
  135. package/dist/field/elements/h5/index.js +13 -0
  136. package/dist/field/elements/h5/index.js.map +1 -0
  137. package/dist/field/elements/h6/Button.d.ts +4 -0
  138. package/dist/field/elements/h6/Button.d.ts.map +1 -0
  139. package/dist/field/elements/h6/Button.js +11 -0
  140. package/dist/field/elements/h6/Button.js.map +1 -0
  141. package/dist/field/elements/h6/Heading6.d.ts +2 -0
  142. package/dist/field/elements/h6/Heading6.d.ts.map +1 -0
  143. package/dist/field/elements/h6/Heading6.js +13 -0
  144. package/dist/field/elements/h6/Heading6.js.map +1 -0
  145. package/dist/field/elements/h6/index.d.ts +3 -0
  146. package/dist/field/elements/h6/index.d.ts.map +1 -0
  147. package/dist/field/elements/h6/index.js +13 -0
  148. package/dist/field/elements/h6/index.js.map +1 -0
  149. package/dist/field/elements/indent/Button.d.ts +3 -0
  150. package/dist/field/elements/indent/Button.d.ts.map +1 -0
  151. package/dist/field/elements/indent/Button.js +184 -0
  152. package/dist/field/elements/indent/Button.js.map +1 -0
  153. package/dist/field/elements/indent/Element.d.ts +3 -0
  154. package/dist/field/elements/indent/Element.d.ts.map +1 -0
  155. package/dist/field/elements/indent/Element.js +16 -0
  156. package/dist/field/elements/indent/Element.js.map +1 -0
  157. package/dist/field/elements/indent/index.d.ts +3 -0
  158. package/dist/field/elements/indent/index.d.ts.map +1 -0
  159. package/dist/field/elements/indent/index.js +8 -0
  160. package/dist/field/elements/indent/index.js.map +1 -0
  161. package/dist/field/elements/indent/shared.d.ts +2 -0
  162. package/dist/field/elements/indent/shared.d.ts.map +1 -0
  163. package/dist/field/elements/indent/shared.js +3 -0
  164. package/dist/field/elements/indent/shared.js.map +1 -0
  165. package/dist/field/elements/index.d.ts +3 -0
  166. package/dist/field/elements/index.d.ts.map +1 -0
  167. package/dist/field/elements/index.js +34 -0
  168. package/dist/field/elements/index.js.map +1 -0
  169. package/dist/field/elements/injectVoid.d.ts +4 -0
  170. package/dist/field/elements/injectVoid.d.ts.map +1 -0
  171. package/dist/field/elements/injectVoid.js +36 -0
  172. package/dist/field/elements/injectVoid.js.map +1 -0
  173. package/dist/field/elements/isActive.d.ts +3 -0
  174. package/dist/field/elements/isActive.d.ts.map +1 -0
  175. package/dist/field/elements/isActive.js +13 -0
  176. package/dist/field/elements/isActive.js.map +1 -0
  177. package/dist/field/elements/isBlockElement.d.ts +9 -0
  178. package/dist/field/elements/isBlockElement.d.ts.map +1 -0
  179. package/dist/field/elements/isBlockElement.js +23 -0
  180. package/dist/field/elements/isBlockElement.js.map +1 -0
  181. package/dist/field/elements/isLastSelectedElementEmpty.d.ts +3 -0
  182. package/dist/field/elements/isLastSelectedElementEmpty.d.ts.map +1 -0
  183. package/dist/field/elements/isLastSelectedElementEmpty.js +15 -0
  184. package/dist/field/elements/isLastSelectedElementEmpty.js.map +1 -0
  185. package/dist/field/elements/isListActive.d.ts +3 -0
  186. package/dist/field/elements/isListActive.d.ts.map +1 -0
  187. package/dist/field/elements/isListActive.js +21 -0
  188. package/dist/field/elements/isListActive.js.map +1 -0
  189. package/dist/field/elements/isWithinListItem.d.ts +3 -0
  190. package/dist/field/elements/isWithinListItem.d.ts.map +1 -0
  191. package/dist/field/elements/isWithinListItem.js +15 -0
  192. package/dist/field/elements/isWithinListItem.js.map +1 -0
  193. package/dist/field/elements/li/ListItem.d.ts +3 -0
  194. package/dist/field/elements/li/ListItem.d.ts.map +1 -0
  195. package/dist/field/elements/li/ListItem.js +20 -0
  196. package/dist/field/elements/li/ListItem.js.map +1 -0
  197. package/dist/field/elements/li/index.d.ts +3 -0
  198. package/dist/field/elements/li/index.d.ts.map +1 -0
  199. package/dist/field/elements/li/index.js +6 -0
  200. package/dist/field/elements/li/index.js.map +1 -0
  201. package/dist/field/elements/link/Button/index.d.ts +5 -0
  202. package/dist/field/elements/link/Button/index.d.ts.map +1 -0
  203. package/dist/field/elements/link/Button/index.js +127 -0
  204. package/dist/field/elements/link/Button/index.js.map +1 -0
  205. package/dist/field/elements/link/Element/index.d.ts +3 -0
  206. package/dist/field/elements/link/Element/index.d.ts.map +1 -0
  207. package/dist/field/elements/link/Element/index.js +218 -0
  208. package/dist/field/elements/link/Element/index.js.map +1 -0
  209. package/dist/field/elements/link/Element/index.scss +90 -0
  210. package/dist/field/elements/link/LinkDrawer/baseFields.d.ts +3 -0
  211. package/dist/field/elements/link/LinkDrawer/baseFields.d.ts.map +1 -0
  212. package/dist/field/elements/link/LinkDrawer/baseFields.js +70 -0
  213. package/dist/field/elements/link/LinkDrawer/baseFields.js.map +1 -0
  214. package/dist/field/elements/link/LinkDrawer/index.d.ts +5 -0
  215. package/dist/field/elements/link/LinkDrawer/index.d.ts.map +1 -0
  216. package/dist/field/elements/link/LinkDrawer/index.js +89 -0
  217. package/dist/field/elements/link/LinkDrawer/index.js.map +1 -0
  218. package/dist/field/elements/link/LinkDrawer/index.scss +52 -0
  219. package/dist/field/elements/link/LinkDrawer/types.d.ts +10 -0
  220. package/dist/field/elements/link/LinkDrawer/types.d.ts.map +1 -0
  221. package/dist/field/elements/link/LinkDrawer/types.js +3 -0
  222. package/dist/field/elements/link/LinkDrawer/types.js.map +1 -0
  223. package/dist/field/elements/link/WithLinks.d.ts +3 -0
  224. package/dist/field/elements/link/WithLinks.d.ts.map +1 -0
  225. package/dist/field/elements/link/WithLinks.js +19 -0
  226. package/dist/field/elements/link/WithLinks.js.map +1 -0
  227. package/dist/field/elements/link/index.d.ts +3 -0
  228. package/dist/field/elements/link/index.d.ts.map +1 -0
  229. package/dist/field/elements/link/index.js +10 -0
  230. package/dist/field/elements/link/index.js.map +1 -0
  231. package/dist/field/elements/link/shared.d.ts +3 -0
  232. package/dist/field/elements/link/shared.d.ts.map +1 -0
  233. package/dist/field/elements/link/shared.js +4 -0
  234. package/dist/field/elements/link/shared.js.map +1 -0
  235. package/dist/field/elements/link/types.d.ts +9 -0
  236. package/dist/field/elements/link/types.d.ts.map +1 -0
  237. package/dist/field/elements/link/types.js +3 -0
  238. package/dist/field/elements/link/types.js.map +1 -0
  239. package/dist/field/elements/link/utilities.d.ts +12 -0
  240. package/dist/field/elements/link/utilities.d.ts.map +1 -0
  241. package/dist/field/elements/link/utilities.js +72 -0
  242. package/dist/field/elements/link/utilities.js.map +1 -0
  243. package/dist/field/elements/listTypes.d.ts +2 -0
  244. package/dist/field/elements/listTypes.d.ts.map +1 -0
  245. package/dist/field/elements/listTypes.js +6 -0
  246. package/dist/field/elements/listTypes.js.map +1 -0
  247. package/dist/field/elements/ol/Button.d.ts +4 -0
  248. package/dist/field/elements/ol/Button.d.ts.map +1 -0
  249. package/dist/field/elements/ol/Button.js +11 -0
  250. package/dist/field/elements/ol/Button.js.map +1 -0
  251. package/dist/field/elements/ol/OrderedList.d.ts +4 -0
  252. package/dist/field/elements/ol/OrderedList.d.ts.map +1 -0
  253. package/dist/field/elements/ol/OrderedList.js +15 -0
  254. package/dist/field/elements/ol/OrderedList.js.map +1 -0
  255. package/dist/field/elements/ol/index.d.ts +3 -0
  256. package/dist/field/elements/ol/index.d.ts.map +1 -0
  257. package/dist/field/elements/ol/index.js +13 -0
  258. package/dist/field/elements/ol/index.js.map +1 -0
  259. package/dist/field/elements/ol/index.scss +9 -0
  260. package/dist/field/elements/relationship/Button/index.d.ts +9 -0
  261. package/dist/field/elements/relationship/Button/index.d.ts.map +1 -0
  262. package/dist/field/elements/relationship/Button/index.js +76 -0
  263. package/dist/field/elements/relationship/Button/index.js.map +1 -0
  264. package/dist/field/elements/relationship/Button/index.scss +9 -0
  265. package/dist/field/elements/relationship/Element/index.d.ts +4 -0
  266. package/dist/field/elements/relationship/Element/index.d.ts.map +1 -0
  267. package/dist/field/elements/relationship/Element/index.js +192 -0
  268. package/dist/field/elements/relationship/Element/index.js.map +1 -0
  269. package/dist/field/elements/relationship/Element/index.scss +95 -0
  270. package/dist/field/elements/relationship/index.d.ts +3 -0
  271. package/dist/field/elements/relationship/index.d.ts.map +1 -0
  272. package/dist/field/elements/relationship/index.js +11 -0
  273. package/dist/field/elements/relationship/index.js.map +1 -0
  274. package/dist/field/elements/relationship/plugin.d.ts +3 -0
  275. package/dist/field/elements/relationship/plugin.d.ts.map +1 -0
  276. package/dist/field/elements/relationship/plugin.js +14 -0
  277. package/dist/field/elements/relationship/plugin.js.map +1 -0
  278. package/dist/field/elements/relationship/shared.d.ts +2 -0
  279. package/dist/field/elements/relationship/shared.d.ts.map +1 -0
  280. package/dist/field/elements/relationship/shared.js +3 -0
  281. package/dist/field/elements/relationship/shared.js.map +1 -0
  282. package/dist/field/elements/relationship/types.d.ts +8 -0
  283. package/dist/field/elements/relationship/types.d.ts.map +1 -0
  284. package/dist/field/elements/relationship/types.js +3 -0
  285. package/dist/field/elements/relationship/types.js.map +1 -0
  286. package/dist/field/elements/textAlign/Button.d.ts +2 -0
  287. package/dist/field/elements/textAlign/Button.d.ts.map +1 -0
  288. package/dist/field/elements/textAlign/Button.js +28 -0
  289. package/dist/field/elements/textAlign/Button.js.map +1 -0
  290. package/dist/field/elements/textAlign/index.d.ts +3 -0
  291. package/dist/field/elements/textAlign/index.d.ts.map +1 -0
  292. package/dist/field/elements/textAlign/index.js +7 -0
  293. package/dist/field/elements/textAlign/index.js.map +1 -0
  294. package/dist/field/elements/toggle.d.ts +3 -0
  295. package/dist/field/elements/toggle.d.ts.map +1 -0
  296. package/dist/field/elements/toggle.js +32 -0
  297. package/dist/field/elements/toggle.js.map +1 -0
  298. package/dist/field/elements/toggleList.d.ts +3 -0
  299. package/dist/field/elements/toggleList.d.ts.map +1 -0
  300. package/dist/field/elements/toggleList.js +82 -0
  301. package/dist/field/elements/toggleList.js.map +1 -0
  302. package/dist/field/elements/types.d.ts +12 -0
  303. package/dist/field/elements/types.d.ts.map +1 -0
  304. package/dist/field/elements/types.js +3 -0
  305. package/dist/field/elements/types.js.map +1 -0
  306. package/dist/field/elements/ul/Button.d.ts +4 -0
  307. package/dist/field/elements/ul/Button.d.ts.map +1 -0
  308. package/dist/field/elements/ul/Button.js +11 -0
  309. package/dist/field/elements/ul/Button.js.map +1 -0
  310. package/dist/field/elements/ul/UnorderedList.d.ts +4 -0
  311. package/dist/field/elements/ul/UnorderedList.d.ts.map +1 -0
  312. package/dist/field/elements/ul/UnorderedList.js +15 -0
  313. package/dist/field/elements/ul/UnorderedList.js.map +1 -0
  314. package/dist/field/elements/ul/index.d.ts +3 -0
  315. package/dist/field/elements/ul/index.d.ts.map +1 -0
  316. package/dist/field/elements/ul/index.js +13 -0
  317. package/dist/field/elements/ul/index.js.map +1 -0
  318. package/dist/field/elements/ul/index.scss +9 -0
  319. package/dist/field/elements/unwrapList.d.ts +4 -0
  320. package/dist/field/elements/unwrapList.d.ts.map +1 -0
  321. package/dist/field/elements/unwrapList.js +34 -0
  322. package/dist/field/elements/unwrapList.js.map +1 -0
  323. package/dist/field/elements/upload/Button/index.d.ts +9 -0
  324. package/dist/field/elements/upload/Button/index.d.ts.map +1 -0
  325. package/dist/field/elements/upload/Button/index.js +76 -0
  326. package/dist/field/elements/upload/Button/index.js.map +1 -0
  327. package/dist/field/elements/upload/Button/index.scss +9 -0
  328. package/dist/field/elements/upload/Element/UploadDrawer/index.d.ts +12 -0
  329. package/dist/field/elements/upload/Element/UploadDrawer/index.d.ts.map +1 -0
  330. package/dist/field/elements/upload/Element/UploadDrawer/index.js +127 -0
  331. package/dist/field/elements/upload/Element/UploadDrawer/index.js.map +1 -0
  332. package/dist/field/elements/upload/Element/index.d.ts +4 -0
  333. package/dist/field/elements/upload/Element/index.d.ts.map +1 -0
  334. package/dist/field/elements/upload/Element/index.js +230 -0
  335. package/dist/field/elements/upload/Element/index.js.map +1 -0
  336. package/dist/field/elements/upload/Element/index.scss +149 -0
  337. package/dist/field/elements/upload/index.d.ts +3 -0
  338. package/dist/field/elements/upload/index.d.ts.map +1 -0
  339. package/dist/field/elements/upload/index.js +11 -0
  340. package/dist/field/elements/upload/index.js.map +1 -0
  341. package/dist/field/elements/upload/plugin.d.ts +3 -0
  342. package/dist/field/elements/upload/plugin.d.ts.map +1 -0
  343. package/dist/field/elements/upload/plugin.js +14 -0
  344. package/dist/field/elements/upload/plugin.js.map +1 -0
  345. package/dist/field/elements/upload/shared.d.ts +3 -0
  346. package/dist/field/elements/upload/shared.d.ts.map +1 -0
  347. package/dist/field/elements/upload/shared.js +4 -0
  348. package/dist/field/elements/upload/shared.js.map +1 -0
  349. package/dist/field/elements/upload/types.d.ts +9 -0
  350. package/dist/field/elements/upload/types.d.ts.map +1 -0
  351. package/dist/field/elements/upload/types.js +3 -0
  352. package/dist/field/elements/upload/types.js.map +1 -0
  353. package/dist/field/hotkeys.d.ts +7 -0
  354. package/dist/field/hotkeys.d.ts.map +1 -0
  355. package/dist/field/hotkeys.js +8 -0
  356. package/dist/field/hotkeys.js.map +1 -0
  357. package/dist/field/icons/AlignCenter/index.d.ts +3 -0
  358. package/dist/field/icons/AlignCenter/index.d.ts.map +1 -0
  359. package/dist/field/icons/AlignCenter/index.js +13 -0
  360. package/dist/field/icons/AlignCenter/index.js.map +1 -0
  361. package/dist/field/icons/AlignLeft/index.d.ts +3 -0
  362. package/dist/field/icons/AlignLeft/index.d.ts.map +1 -0
  363. package/dist/field/icons/AlignLeft/index.js +13 -0
  364. package/dist/field/icons/AlignLeft/index.js.map +1 -0
  365. package/dist/field/icons/AlignRight/index.d.ts +3 -0
  366. package/dist/field/icons/AlignRight/index.d.ts.map +1 -0
  367. package/dist/field/icons/AlignRight/index.js +13 -0
  368. package/dist/field/icons/AlignRight/index.js.map +1 -0
  369. package/dist/field/icons/Blockquote/index.d.ts +3 -0
  370. package/dist/field/icons/Blockquote/index.d.ts.map +1 -0
  371. package/dist/field/icons/Blockquote/index.js +22 -0
  372. package/dist/field/icons/Blockquote/index.js.map +1 -0
  373. package/dist/field/icons/Bold/index.d.ts +3 -0
  374. package/dist/field/icons/Bold/index.d.ts.map +1 -0
  375. package/dist/field/icons/Bold/index.js +22 -0
  376. package/dist/field/icons/Bold/index.js.map +1 -0
  377. package/dist/field/icons/Code/index.d.ts +3 -0
  378. package/dist/field/icons/Code/index.d.ts.map +1 -0
  379. package/dist/field/icons/Code/index.js +16 -0
  380. package/dist/field/icons/Code/index.js.map +1 -0
  381. package/dist/field/icons/IndentLeft/index.d.ts +4 -0
  382. package/dist/field/icons/IndentLeft/index.d.ts.map +1 -0
  383. package/dist/field/icons/IndentLeft/index.js +37 -0
  384. package/dist/field/icons/IndentLeft/index.js.map +1 -0
  385. package/dist/field/icons/IndentLeft/index.scss +18 -0
  386. package/dist/field/icons/IndentRight/index.d.ts +4 -0
  387. package/dist/field/icons/IndentRight/index.d.ts.map +1 -0
  388. package/dist/field/icons/IndentRight/index.js +37 -0
  389. package/dist/field/icons/IndentRight/index.js.map +1 -0
  390. package/dist/field/icons/IndentRight/index.scss +18 -0
  391. package/dist/field/icons/Italic/index.d.ts +3 -0
  392. package/dist/field/icons/Italic/index.d.ts.map +1 -0
  393. package/dist/field/icons/Italic/index.js +22 -0
  394. package/dist/field/icons/Italic/index.js.map +1 -0
  395. package/dist/field/icons/Link/index.d.ts +4 -0
  396. package/dist/field/icons/Link/index.d.ts.map +1 -0
  397. package/dist/field/icons/Link/index.js +23 -0
  398. package/dist/field/icons/Link/index.js.map +1 -0
  399. package/dist/field/icons/Link/index.scss +13 -0
  400. package/dist/field/icons/OrderedList/index.d.ts +3 -0
  401. package/dist/field/icons/OrderedList/index.d.ts.map +1 -0
  402. package/dist/field/icons/OrderedList/index.js +22 -0
  403. package/dist/field/icons/OrderedList/index.js.map +1 -0
  404. package/dist/field/icons/Relationship/index.d.ts +4 -0
  405. package/dist/field/icons/Relationship/index.d.ts.map +1 -0
  406. package/dist/field/icons/Relationship/index.js +30 -0
  407. package/dist/field/icons/Relationship/index.js.map +1 -0
  408. package/dist/field/icons/Relationship/index.scss +14 -0
  409. package/dist/field/icons/Strikethrough/index.d.ts +3 -0
  410. package/dist/field/icons/Strikethrough/index.d.ts.map +1 -0
  411. package/dist/field/icons/Strikethrough/index.js +22 -0
  412. package/dist/field/icons/Strikethrough/index.js.map +1 -0
  413. package/dist/field/icons/Underline/index.d.ts +3 -0
  414. package/dist/field/icons/Underline/index.d.ts.map +1 -0
  415. package/dist/field/icons/Underline/index.js +22 -0
  416. package/dist/field/icons/Underline/index.js.map +1 -0
  417. package/dist/field/icons/UnorderedList/index.d.ts +3 -0
  418. package/dist/field/icons/UnorderedList/index.d.ts.map +1 -0
  419. package/dist/field/icons/UnorderedList/index.js +22 -0
  420. package/dist/field/icons/UnorderedList/index.js.map +1 -0
  421. package/dist/field/icons/Upload/index.d.ts +4 -0
  422. package/dist/field/icons/Upload/index.d.ts.map +1 -0
  423. package/dist/field/icons/Upload/index.js +22 -0
  424. package/dist/field/icons/Upload/index.js.map +1 -0
  425. package/dist/field/icons/Upload/index.scss +13 -0
  426. package/dist/field/icons/headings/H1/index.d.ts +3 -0
  427. package/dist/field/icons/headings/H1/index.d.ts.map +1 -0
  428. package/dist/field/icons/headings/H1/index.js +22 -0
  429. package/dist/field/icons/headings/H1/index.js.map +1 -0
  430. package/dist/field/icons/headings/H2/index.d.ts +3 -0
  431. package/dist/field/icons/headings/H2/index.d.ts.map +1 -0
  432. package/dist/field/icons/headings/H2/index.js +22 -0
  433. package/dist/field/icons/headings/H2/index.js.map +1 -0
  434. package/dist/field/icons/headings/H3/index.d.ts +3 -0
  435. package/dist/field/icons/headings/H3/index.d.ts.map +1 -0
  436. package/dist/field/icons/headings/H3/index.js +22 -0
  437. package/dist/field/icons/headings/H3/index.js.map +1 -0
  438. package/dist/field/icons/headings/H4/index.d.ts +3 -0
  439. package/dist/field/icons/headings/H4/index.d.ts.map +1 -0
  440. package/dist/field/icons/headings/H4/index.js +22 -0
  441. package/dist/field/icons/headings/H4/index.js.map +1 -0
  442. package/dist/field/icons/headings/H5/index.d.ts +3 -0
  443. package/dist/field/icons/headings/H5/index.d.ts.map +1 -0
  444. package/dist/field/icons/headings/H5/index.js +22 -0
  445. package/dist/field/icons/headings/H5/index.js.map +1 -0
  446. package/dist/field/icons/headings/H6/index.d.ts +3 -0
  447. package/dist/field/icons/headings/H6/index.d.ts.map +1 -0
  448. package/dist/field/icons/headings/H6/index.js +22 -0
  449. package/dist/field/icons/headings/H6/index.js.map +1 -0
  450. package/dist/field/index.d.ts +4 -0
  451. package/dist/field/index.d.ts.map +1 -0
  452. package/dist/field/index.js +63 -0
  453. package/dist/field/index.js.map +1 -0
  454. package/dist/field/index.scss +215 -0
  455. package/dist/field/leaves/Button.d.ts +6 -0
  456. package/dist/field/leaves/Button.d.ts.map +1 -0
  457. package/dist/field/leaves/Button.js +25 -0
  458. package/dist/field/leaves/Button.js.map +1 -0
  459. package/dist/field/leaves/bold/Bold/index.d.ts +2 -0
  460. package/dist/field/leaves/bold/Bold/index.d.ts.map +1 -0
  461. package/dist/field/leaves/bold/Bold/index.js +13 -0
  462. package/dist/field/leaves/bold/Bold/index.js.map +1 -0
  463. package/dist/field/leaves/bold/LeafButton.d.ts +2 -0
  464. package/dist/field/leaves/bold/LeafButton.d.ts.map +1 -0
  465. package/dist/field/leaves/bold/LeafButton.js +11 -0
  466. package/dist/field/leaves/bold/LeafButton.js.map +1 -0
  467. package/dist/field/leaves/bold/index.d.ts +3 -0
  468. package/dist/field/leaves/bold/index.d.ts.map +1 -0
  469. package/dist/field/leaves/bold/index.js +7 -0
  470. package/dist/field/leaves/bold/index.js.map +1 -0
  471. package/dist/field/leaves/code/Code/index.d.ts +2 -0
  472. package/dist/field/leaves/code/Code/index.d.ts.map +1 -0
  473. package/dist/field/leaves/code/Code/index.js +13 -0
  474. package/dist/field/leaves/code/Code/index.js.map +1 -0
  475. package/dist/field/leaves/code/LeafButton.d.ts +2 -0
  476. package/dist/field/leaves/code/LeafButton.d.ts.map +1 -0
  477. package/dist/field/leaves/code/LeafButton.js +11 -0
  478. package/dist/field/leaves/code/LeafButton.js.map +1 -0
  479. package/dist/field/leaves/code/index.d.ts +3 -0
  480. package/dist/field/leaves/code/index.d.ts.map +1 -0
  481. package/dist/field/leaves/code/index.js +7 -0
  482. package/dist/field/leaves/code/index.js.map +1 -0
  483. package/dist/field/leaves/index.d.ts +3 -0
  484. package/dist/field/leaves/index.d.ts.map +1 -0
  485. package/dist/field/leaves/index.js +14 -0
  486. package/dist/field/leaves/index.js.map +1 -0
  487. package/dist/field/leaves/isActive.d.ts +2 -0
  488. package/dist/field/leaves/isActive.d.ts.map +1 -0
  489. package/dist/field/leaves/isActive.js +7 -0
  490. package/dist/field/leaves/isActive.js.map +1 -0
  491. package/dist/field/leaves/italic/Italic/index.d.ts +2 -0
  492. package/dist/field/leaves/italic/Italic/index.d.ts.map +1 -0
  493. package/dist/field/leaves/italic/Italic/index.js +13 -0
  494. package/dist/field/leaves/italic/Italic/index.js.map +1 -0
  495. package/dist/field/leaves/italic/LeafButton.d.ts +2 -0
  496. package/dist/field/leaves/italic/LeafButton.d.ts.map +1 -0
  497. package/dist/field/leaves/italic/LeafButton.js +11 -0
  498. package/dist/field/leaves/italic/LeafButton.js.map +1 -0
  499. package/dist/field/leaves/italic/index.d.ts +3 -0
  500. package/dist/field/leaves/italic/index.d.ts.map +1 -0
  501. package/dist/field/leaves/italic/index.js +7 -0
  502. package/dist/field/leaves/italic/index.js.map +1 -0
  503. package/dist/field/leaves/strikethrough/LeafButton.d.ts +2 -0
  504. package/dist/field/leaves/strikethrough/LeafButton.d.ts.map +1 -0
  505. package/dist/field/leaves/strikethrough/LeafButton.js +11 -0
  506. package/dist/field/leaves/strikethrough/LeafButton.js.map +1 -0
  507. package/dist/field/leaves/strikethrough/Strikethrough/index.d.ts +2 -0
  508. package/dist/field/leaves/strikethrough/Strikethrough/index.d.ts.map +1 -0
  509. package/dist/field/leaves/strikethrough/Strikethrough/index.js +13 -0
  510. package/dist/field/leaves/strikethrough/Strikethrough/index.js.map +1 -0
  511. package/dist/field/leaves/strikethrough/index.d.ts +3 -0
  512. package/dist/field/leaves/strikethrough/index.d.ts.map +1 -0
  513. package/dist/field/leaves/strikethrough/index.js +7 -0
  514. package/dist/field/leaves/strikethrough/index.js.map +1 -0
  515. package/dist/field/leaves/toggle.d.ts +2 -0
  516. package/dist/field/leaves/toggle.d.ts.map +1 -0
  517. package/dist/field/leaves/toggle.js +12 -0
  518. package/dist/field/leaves/toggle.js.map +1 -0
  519. package/dist/field/leaves/underline/LeafButton.d.ts +2 -0
  520. package/dist/field/leaves/underline/LeafButton.d.ts.map +1 -0
  521. package/dist/field/leaves/underline/LeafButton.js +11 -0
  522. package/dist/field/leaves/underline/LeafButton.js.map +1 -0
  523. package/dist/field/leaves/underline/Underline/index.d.ts +2 -0
  524. package/dist/field/leaves/underline/Underline/index.d.ts.map +1 -0
  525. package/dist/field/leaves/underline/Underline/index.js +13 -0
  526. package/dist/field/leaves/underline/Underline/index.js.map +1 -0
  527. package/dist/field/leaves/underline/index.d.ts +3 -0
  528. package/dist/field/leaves/underline/index.d.ts.map +1 -0
  529. package/dist/field/leaves/underline/index.js +7 -0
  530. package/dist/field/leaves/underline/index.js.map +1 -0
  531. package/dist/field/mergeCustomFunctions.d.ts +3 -0
  532. package/dist/field/mergeCustomFunctions.d.ts.map +1 -0
  533. package/dist/field/mergeCustomFunctions.js +25 -0
  534. package/dist/field/mergeCustomFunctions.js.map +1 -0
  535. package/dist/field/plugins/withEnterBreakOut.d.ts +2 -0
  536. package/dist/field/plugins/withEnterBreakOut.d.ts.map +1 -0
  537. package/dist/field/plugins/withEnterBreakOut.js +16 -0
  538. package/dist/field/plugins/withEnterBreakOut.js.map +1 -0
  539. package/dist/field/plugins/withHTML.d.ts +2 -0
  540. package/dist/field/plugins/withHTML.d.ts.map +1 -0
  541. package/dist/field/plugins/withHTML.js +122 -0
  542. package/dist/field/plugins/withHTML.js.map +1 -0
  543. package/dist/field/providers/ElementButtonProvider.d.ts +14 -0
  544. package/dist/field/providers/ElementButtonProvider.d.ts.map +1 -0
  545. package/dist/field/providers/ElementButtonProvider.js +23 -0
  546. package/dist/field/providers/ElementButtonProvider.js.map +1 -0
  547. package/dist/field/providers/ElementProvider.d.ts +18 -0
  548. package/dist/field/providers/ElementProvider.d.ts.map +1 -0
  549. package/dist/field/providers/ElementProvider.js +27 -0
  550. package/dist/field/providers/ElementProvider.js.map +1 -0
  551. package/dist/field/providers/LeafButtonProvider.d.ts +13 -0
  552. package/dist/field/providers/LeafButtonProvider.d.ts.map +1 -0
  553. package/dist/field/providers/LeafButtonProvider.js +23 -0
  554. package/dist/field/providers/LeafButtonProvider.js.map +1 -0
  555. package/dist/field/providers/LeafProvider.d.ts +17 -0
  556. package/dist/field/providers/LeafProvider.d.ts.map +1 -0
  557. package/dist/field/providers/LeafProvider.js +28 -0
  558. package/dist/field/providers/LeafProvider.js.map +1 -0
  559. package/dist/field/rscEntry.d.ts +10 -0
  560. package/dist/field/rscEntry.d.ts.map +1 -0
  561. package/dist/field/rscEntry.js +129 -0
  562. package/dist/field/rscEntry.js.map +1 -0
  563. package/dist/field/types.d.ts +24 -0
  564. package/dist/field/types.d.ts.map +1 -0
  565. package/dist/field/types.js +3 -0
  566. package/dist/field/types.js.map +1 -0
  567. package/dist/generateSchemaMap.d.ts +4 -0
  568. package/dist/generateSchemaMap.d.ts.map +1 -0
  569. package/dist/generateSchemaMap.js +68 -0
  570. package/dist/generateSchemaMap.js.map +1 -0
  571. package/dist/index.d.ts +9 -0
  572. package/dist/index.d.ts.map +1 -0
  573. package/dist/index.js +162 -0
  574. package/dist/index.js.map +1 -0
  575. package/dist/types.d.ts +88 -0
  576. package/dist/types.d.ts.map +1 -0
  577. package/dist/types.js +7 -0
  578. package/dist/types.js.map +1 -0
  579. package/dist/utilities/SlatePropsProvider.d.ts +11 -0
  580. package/dist/utilities/SlatePropsProvider.d.ts.map +1 -0
  581. package/dist/utilities/SlatePropsProvider.js +21 -0
  582. package/dist/utilities/SlatePropsProvider.js.map +1 -0
  583. package/dist/utilities/useSlatePlugin.d.ts +5 -0
  584. package/dist/utilities/useSlatePlugin.d.ts.map +1 -0
  585. package/dist/utilities/useSlatePlugin.js +8 -0
  586. package/dist/utilities/useSlatePlugin.js.map +1 -0
  587. package/package.json +85 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/data/validation.ts"],"sourcesContent":["import type { RichTextField, Validate } from '@ruya.sa/payload'\n\nimport type { AdapterArguments } from '../types.js'\n\nimport { defaultRichTextValue } from './defaultValue.js'\n\nexport const richTextValidate: Validate<\n unknown[],\n unknown,\n RichTextField<any[], AdapterArguments>,\n RichTextField<any[], AdapterArguments>\n> = (value, { req, required }) => {\n const { t } = req\n if (required) {\n const stringifiedDefaultValue = JSON.stringify(defaultRichTextValue)\n if (value && JSON.stringify(value) !== stringifiedDefaultValue) {\n return true\n }\n return t('validation:required')\n }\n\n return true\n}\n"],"names":["defaultRichTextValue","richTextValidate","value","req","required","t","stringifiedDefaultValue","JSON","stringify"],"mappings":"AAIA,SAASA,oBAAoB,QAAQ,oBAAmB;AAExD,OAAO,MAAMC,mBAKT,CAACC,OAAO,EAAEC,GAAG,EAAEC,QAAQ,EAAE;IAC3B,MAAM,EAAEC,CAAC,EAAE,GAAGF;IACd,IAAIC,UAAU;QACZ,MAAME,0BAA0BC,KAAKC,SAAS,CAACR;QAC/C,IAAIE,SAASK,KAAKC,SAAS,CAACN,WAAWI,yBAAyB;YAC9D,OAAO;QACT;QACA,OAAOD,EAAE;IACX;IAEA,OAAO;AACT,EAAC"}
@@ -0,0 +1,51 @@
1
+ export { BlockquoteElementButton } from '../../field/elements/blockquote/Button.js';
2
+ export { BlockquoteElement } from '../../field/elements/blockquote/Element.js';
3
+ export { ElementButton } from '../../field/elements/Button.js';
4
+ export { H1ElementButton } from '../../field/elements/h1/Button.js';
5
+ export { Heading1Element } from '../../field/elements/h1/Heading1.js';
6
+ export { H2ElementButton } from '../../field/elements/h2/Button.js';
7
+ export { Heading2Element } from '../../field/elements/h2/Heading2.js';
8
+ export { H3ElementButton } from '../../field/elements/h3/Button.js';
9
+ export { Heading3Element } from '../../field/elements/h3/Heading3.js';
10
+ export { H4ElementButton } from '../../field/elements/h4/Button.js';
11
+ export { Heading4Element } from '../../field/elements/h4/Heading4.js';
12
+ export { H5ElementButton } from '../../field/elements/h5/Button.js';
13
+ export { Heading5Element } from '../../field/elements/h5/Heading5.js';
14
+ export { H6ElementButton } from '../../field/elements/h6/Button.js';
15
+ export { Heading6Element } from '../../field/elements/h6/Heading6.js';
16
+ export { IndentButton } from '../../field/elements/indent/Button.js';
17
+ export { IndentElement } from '../../field/elements/indent/Element.js';
18
+ export { ListItemElement } from '../../field/elements/li/ListItem.js';
19
+ export { LinkButton } from '../../field/elements/link/Button/index.js';
20
+ export { LinkElement } from '../../field/elements/link/Element/index.js';
21
+ export { WithLinks } from '../../field/elements/link/WithLinks.js';
22
+ export { OLElementButton } from '../../field/elements/ol/Button.js';
23
+ export { OrderedListElement } from '../../field/elements/ol/OrderedList.js';
24
+ export { RelationshipButton } from '../../field/elements/relationship/Button/index.js';
25
+ export { RelationshipElement } from '../../field/elements/relationship/Element/index.js';
26
+ export { WithRelationship } from '../../field/elements/relationship/plugin.js';
27
+ export { TextAlignElementButton } from '../../field/elements/textAlign/Button.js';
28
+ export { toggleElement } from '../../field/elements/toggle.js';
29
+ export { ULElementButton } from '../../field/elements/ul/Button.js';
30
+ export { UnorderedListElement } from '../../field/elements/ul/UnorderedList.js';
31
+ export { UploadElementButton } from '../../field/elements/upload/Button/index.js';
32
+ export { UploadElement } from '../../field/elements/upload/Element/index.js';
33
+ export { WithUpload } from '../../field/elements/upload/plugin.js';
34
+ export { RichTextField } from '../../field/index.js';
35
+ export { BoldLeaf } from '../../field/leaves/bold/Bold/index.js';
36
+ export { BoldLeafButton } from '../../field/leaves/bold/LeafButton.js';
37
+ export { LeafButton } from '../../field/leaves/Button.js';
38
+ export { CodeLeaf } from '../../field/leaves/code/Code/index.js';
39
+ export { CodeLeafButton } from '../../field/leaves/code/LeafButton.js';
40
+ export { ItalicLeaf } from '../../field/leaves/italic/Italic/index.js';
41
+ export { ItalicLeafButton } from '../../field/leaves/italic/LeafButton.js';
42
+ export { StrikethroughLeafButton } from '../../field/leaves/strikethrough/LeafButton.js';
43
+ export { StrikethroughLeaf } from '../../field/leaves/strikethrough/Strikethrough/index.js';
44
+ export { UnderlineLeafButton } from '../../field/leaves/underline/LeafButton.js';
45
+ export { UnderlineLeaf } from '../../field/leaves/underline/Underline/index.js';
46
+ export { useElementButton } from '../../field/providers/ElementButtonProvider.js';
47
+ export { useElement } from '../../field/providers/ElementProvider.js';
48
+ export { useLeafButton } from '../../field/providers/LeafButtonProvider.js';
49
+ export { useLeaf } from '../../field/providers/LeafProvider.js';
50
+ export { useSlatePlugin } from '../../utilities/useSlatePlugin.js';
51
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exports/client/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAA;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAA;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAA;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAA;AAEtE,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAA;AAExE,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAE3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAA;AAEtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAA;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAA;AAE9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAA;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAA;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAA;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAEzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAA;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAE1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAA;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAA;AAE3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAA;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAA;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAA;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA"}
@@ -0,0 +1,53 @@
1
+ 'use client';
2
+ export { BlockquoteElementButton } from '../../field/elements/blockquote/Button.js';
3
+ export { BlockquoteElement } from '../../field/elements/blockquote/Element.js';
4
+ export { ElementButton } from '../../field/elements/Button.js';
5
+ export { H1ElementButton } from '../../field/elements/h1/Button.js';
6
+ export { Heading1Element } from '../../field/elements/h1/Heading1.js';
7
+ export { H2ElementButton } from '../../field/elements/h2/Button.js';
8
+ export { Heading2Element } from '../../field/elements/h2/Heading2.js';
9
+ export { H3ElementButton } from '../../field/elements/h3/Button.js';
10
+ export { Heading3Element } from '../../field/elements/h3/Heading3.js';
11
+ export { H4ElementButton } from '../../field/elements/h4/Button.js';
12
+ export { Heading4Element } from '../../field/elements/h4/Heading4.js';
13
+ export { H5ElementButton } from '../../field/elements/h5/Button.js';
14
+ export { Heading5Element } from '../../field/elements/h5/Heading5.js';
15
+ export { H6ElementButton } from '../../field/elements/h6/Button.js';
16
+ export { Heading6Element } from '../../field/elements/h6/Heading6.js';
17
+ export { IndentButton } from '../../field/elements/indent/Button.js';
18
+ export { IndentElement } from '../../field/elements/indent/Element.js';
19
+ export { ListItemElement } from '../../field/elements/li/ListItem.js';
20
+ export { LinkButton } from '../../field/elements/link/Button/index.js';
21
+ export { LinkElement } from '../../field/elements/link/Element/index.js';
22
+ export { WithLinks } from '../../field/elements/link/WithLinks.js';
23
+ export { OLElementButton } from '../../field/elements/ol/Button.js';
24
+ export { OrderedListElement } from '../../field/elements/ol/OrderedList.js';
25
+ export { RelationshipButton } from '../../field/elements/relationship/Button/index.js';
26
+ export { RelationshipElement } from '../../field/elements/relationship/Element/index.js';
27
+ export { WithRelationship } from '../../field/elements/relationship/plugin.js';
28
+ export { TextAlignElementButton } from '../../field/elements/textAlign/Button.js';
29
+ export { toggleElement } from '../../field/elements/toggle.js';
30
+ export { ULElementButton } from '../../field/elements/ul/Button.js';
31
+ export { UnorderedListElement } from '../../field/elements/ul/UnorderedList.js';
32
+ export { UploadElementButton } from '../../field/elements/upload/Button/index.js';
33
+ export { UploadElement } from '../../field/elements/upload/Element/index.js';
34
+ export { WithUpload } from '../../field/elements/upload/plugin.js';
35
+ export { RichTextField } from '../../field/index.js';
36
+ export { BoldLeaf } from '../../field/leaves/bold/Bold/index.js';
37
+ export { BoldLeafButton } from '../../field/leaves/bold/LeafButton.js';
38
+ export { LeafButton } from '../../field/leaves/Button.js';
39
+ export { CodeLeaf } from '../../field/leaves/code/Code/index.js';
40
+ export { CodeLeafButton } from '../../field/leaves/code/LeafButton.js';
41
+ export { ItalicLeaf } from '../../field/leaves/italic/Italic/index.js';
42
+ export { ItalicLeafButton } from '../../field/leaves/italic/LeafButton.js';
43
+ export { StrikethroughLeafButton } from '../../field/leaves/strikethrough/LeafButton.js';
44
+ export { StrikethroughLeaf } from '../../field/leaves/strikethrough/Strikethrough/index.js';
45
+ export { UnderlineLeafButton } from '../../field/leaves/underline/LeafButton.js';
46
+ export { UnderlineLeaf } from '../../field/leaves/underline/Underline/index.js';
47
+ export { useElementButton } from '../../field/providers/ElementButtonProvider.js';
48
+ export { useElement } from '../../field/providers/ElementProvider.js';
49
+ export { useLeafButton } from '../../field/providers/LeafButtonProvider.js';
50
+ export { useLeaf } from '../../field/providers/LeafProvider.js';
51
+ export { useSlatePlugin } from '../../utilities/useSlatePlugin.js';
52
+
53
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/exports/client/index.ts"],"sourcesContent":["'use client'\n\nexport { BlockquoteElementButton } from '../../field/elements/blockquote/Button.js'\nexport { BlockquoteElement } from '../../field/elements/blockquote/Element.js'\nexport { ElementButton } from '../../field/elements/Button.js'\nexport { H1ElementButton } from '../../field/elements/h1/Button.js'\nexport { Heading1Element } from '../../field/elements/h1/Heading1.js'\nexport { H2ElementButton } from '../../field/elements/h2/Button.js'\nexport { Heading2Element } from '../../field/elements/h2/Heading2.js'\nexport { H3ElementButton } from '../../field/elements/h3/Button.js'\nexport { Heading3Element } from '../../field/elements/h3/Heading3.js'\nexport { H4ElementButton } from '../../field/elements/h4/Button.js'\nexport { Heading4Element } from '../../field/elements/h4/Heading4.js'\nexport { H5ElementButton } from '../../field/elements/h5/Button.js'\n\nexport { Heading5Element } from '../../field/elements/h5/Heading5.js'\nexport { H6ElementButton } from '../../field/elements/h6/Button.js'\n\nexport { Heading6Element } from '../../field/elements/h6/Heading6.js'\n\nexport { IndentButton } from '../../field/elements/indent/Button.js'\nexport { IndentElement } from '../../field/elements/indent/Element.js'\nexport { ListItemElement } from '../../field/elements/li/ListItem.js'\n\nexport { LinkButton } from '../../field/elements/link/Button/index.js'\n\nexport { LinkElement } from '../../field/elements/link/Element/index.js'\n\nexport { WithLinks } from '../../field/elements/link/WithLinks.js'\nexport { OLElementButton } from '../../field/elements/ol/Button.js'\nexport { OrderedListElement } from '../../field/elements/ol/OrderedList.js'\n\nexport { RelationshipButton } from '../../field/elements/relationship/Button/index.js'\n\nexport { RelationshipElement } from '../../field/elements/relationship/Element/index.js'\nexport { WithRelationship } from '../../field/elements/relationship/plugin.js'\n\nexport { TextAlignElementButton } from '../../field/elements/textAlign/Button.js'\nexport { toggleElement } from '../../field/elements/toggle.js'\nexport { ULElementButton } from '../../field/elements/ul/Button.js'\nexport { UnorderedListElement } from '../../field/elements/ul/UnorderedList.js'\nexport { UploadElementButton } from '../../field/elements/upload/Button/index.js'\nexport { UploadElement } from '../../field/elements/upload/Element/index.js'\nexport { WithUpload } from '../../field/elements/upload/plugin.js'\nexport { RichTextField } from '../../field/index.js'\nexport { BoldLeaf } from '../../field/leaves/bold/Bold/index.js'\nexport { BoldLeafButton } from '../../field/leaves/bold/LeafButton.js'\n\nexport { LeafButton } from '../../field/leaves/Button.js'\n\nexport { CodeLeaf } from '../../field/leaves/code/Code/index.js'\n\nexport { CodeLeafButton } from '../../field/leaves/code/LeafButton.js'\n\nexport { ItalicLeaf } from '../../field/leaves/italic/Italic/index.js'\nexport { ItalicLeafButton } from '../../field/leaves/italic/LeafButton.js'\n\nexport { StrikethroughLeafButton } from '../../field/leaves/strikethrough/LeafButton.js'\nexport { StrikethroughLeaf } from '../../field/leaves/strikethrough/Strikethrough/index.js'\n\nexport { UnderlineLeafButton } from '../../field/leaves/underline/LeafButton.js'\nexport { UnderlineLeaf } from '../../field/leaves/underline/Underline/index.js'\n\nexport { useElementButton } from '../../field/providers/ElementButtonProvider.js'\nexport { useElement } from '../../field/providers/ElementProvider.js'\nexport { useLeafButton } from '../../field/providers/LeafButtonProvider.js'\nexport { useLeaf } from '../../field/providers/LeafProvider.js'\nexport { useSlatePlugin } from '../../utilities/useSlatePlugin.js'\n"],"names":["BlockquoteElementButton","BlockquoteElement","ElementButton","H1ElementButton","Heading1Element","H2ElementButton","Heading2Element","H3ElementButton","Heading3Element","H4ElementButton","Heading4Element","H5ElementButton","Heading5Element","H6ElementButton","Heading6Element","IndentButton","IndentElement","ListItemElement","LinkButton","LinkElement","WithLinks","OLElementButton","OrderedListElement","RelationshipButton","RelationshipElement","WithRelationship","TextAlignElementButton","toggleElement","ULElementButton","UnorderedListElement","UploadElementButton","UploadElement","WithUpload","RichTextField","BoldLeaf","BoldLeafButton","LeafButton","CodeLeaf","CodeLeafButton","ItalicLeaf","ItalicLeafButton","StrikethroughLeafButton","StrikethroughLeaf","UnderlineLeafButton","UnderlineLeaf","useElementButton","useElement","useLeafButton","useLeaf","useSlatePlugin"],"mappings":"AAAA;AAEA,SAASA,uBAAuB,QAAQ,4CAA2C;AACnF,SAASC,iBAAiB,QAAQ,6CAA4C;AAC9E,SAASC,aAAa,QAAQ,iCAAgC;AAC9D,SAASC,eAAe,QAAQ,oCAAmC;AACnE,SAASC,eAAe,QAAQ,sCAAqC;AACrE,SAASC,eAAe,QAAQ,oCAAmC;AACnE,SAASC,eAAe,QAAQ,sCAAqC;AACrE,SAASC,eAAe,QAAQ,oCAAmC;AACnE,SAASC,eAAe,QAAQ,sCAAqC;AACrE,SAASC,eAAe,QAAQ,oCAAmC;AACnE,SAASC,eAAe,QAAQ,sCAAqC;AACrE,SAASC,eAAe,QAAQ,oCAAmC;AAEnE,SAASC,eAAe,QAAQ,sCAAqC;AACrE,SAASC,eAAe,QAAQ,oCAAmC;AAEnE,SAASC,eAAe,QAAQ,sCAAqC;AAErE,SAASC,YAAY,QAAQ,wCAAuC;AACpE,SAASC,aAAa,QAAQ,yCAAwC;AACtE,SAASC,eAAe,QAAQ,sCAAqC;AAErE,SAASC,UAAU,QAAQ,4CAA2C;AAEtE,SAASC,WAAW,QAAQ,6CAA4C;AAExE,SAASC,SAAS,QAAQ,yCAAwC;AAClE,SAASC,eAAe,QAAQ,oCAAmC;AACnE,SAASC,kBAAkB,QAAQ,yCAAwC;AAE3E,SAASC,kBAAkB,QAAQ,oDAAmD;AAEtF,SAASC,mBAAmB,QAAQ,qDAAoD;AACxF,SAASC,gBAAgB,QAAQ,8CAA6C;AAE9E,SAASC,sBAAsB,QAAQ,2CAA0C;AACjF,SAASC,aAAa,QAAQ,iCAAgC;AAC9D,SAASC,eAAe,QAAQ,oCAAmC;AACnE,SAASC,oBAAoB,QAAQ,2CAA0C;AAC/E,SAASC,mBAAmB,QAAQ,8CAA6C;AACjF,SAASC,aAAa,QAAQ,+CAA8C;AAC5E,SAASC,UAAU,QAAQ,wCAAuC;AAClE,SAASC,aAAa,QAAQ,uBAAsB;AACpD,SAASC,QAAQ,QAAQ,wCAAuC;AAChE,SAASC,cAAc,QAAQ,wCAAuC;AAEtE,SAASC,UAAU,QAAQ,+BAA8B;AAEzD,SAASC,QAAQ,QAAQ,wCAAuC;AAEhE,SAASC,cAAc,QAAQ,wCAAuC;AAEtE,SAASC,UAAU,QAAQ,4CAA2C;AACtE,SAASC,gBAAgB,QAAQ,0CAAyC;AAE1E,SAASC,uBAAuB,QAAQ,iDAAgD;AACxF,SAASC,iBAAiB,QAAQ,0DAAyD;AAE3F,SAASC,mBAAmB,QAAQ,6CAA4C;AAChF,SAASC,aAAa,QAAQ,kDAAiD;AAE/E,SAASC,gBAAgB,QAAQ,iDAAgD;AACjF,SAASC,UAAU,QAAQ,2CAA0C;AACrE,SAASC,aAAa,QAAQ,8CAA6C;AAC3E,SAASC,OAAO,QAAQ,wCAAuC;AAC/D,SAASC,cAAc,QAAQ,oCAAmC"}
@@ -0,0 +1,3 @@
1
+ export { RscEntrySlateCell } from '../../cell/rscEntry.js';
2
+ export { RscEntrySlateField } from '../../field/rscEntry.js';
3
+ //# sourceMappingURL=rsc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rsc.d.ts","sourceRoot":"","sources":["../../../src/exports/server/rsc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export { RscEntrySlateCell } from '../../cell/rscEntry.js';
2
+ export { RscEntrySlateField } from '../../field/rscEntry.js';
3
+
4
+ //# sourceMappingURL=rsc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/exports/server/rsc.ts"],"sourcesContent":["export { RscEntrySlateCell } from '../../cell/rscEntry.js'\nexport { RscEntrySlateField } from '../../field/rscEntry.js'\n"],"names":["RscEntrySlateCell","RscEntrySlateField"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,kBAAkB,QAAQ,0BAAyB"}
@@ -0,0 +1,16 @@
1
+ import type { BaseEditor } from 'slate';
2
+ import type { HistoryEditor } from 'slate-history';
3
+ import type { ReactEditor } from 'slate-react';
4
+ import React from 'react';
5
+ import type { ElementNode, TextNode } from '../types.js';
6
+ import type { LoadedSlateFieldProps } from './types.js';
7
+ import './index.scss';
8
+ declare module 'slate' {
9
+ interface CustomTypes {
10
+ Editor: BaseEditor & HistoryEditor & ReactEditor;
11
+ Element: ElementNode;
12
+ Text: TextNode;
13
+ }
14
+ }
15
+ export declare const RichText: React.FC<LoadedSlateFieldProps>;
16
+ //# sourceMappingURL=RichText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichText.d.ts","sourceRoot":"","sources":["../../src/field/RichText.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,OAAO,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAc9C,OAAO,KAAkD,MAAM,OAAO,CAAA;AAKtE,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAavD,OAAO,cAAc,CAAA;AAIrB,OAAO,QAAQ,OAAO,CAAC;IACrB,UAAU,WAAW;QACnB,MAAM,EAAE,UAAU,GAAG,aAAa,GAAG,WAAW,CAAA;QAChD,OAAO,EAAE,WAAW,CAAA;QACpB,IAAI,EAAE,QAAQ,CAAA;KACf;CACF;AA4ZD,eAAO,MAAM,QAAQ,iCAAgB,CAAA"}
@@ -0,0 +1,434 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { getTranslation } from '@ruya.sa/translations';
4
+ import { FieldDescription, FieldError, FieldLabel, RenderCustomComponent, useEditDepth, useField, useTranslation } from '@ruya.sa/ui';
5
+ import { mergeFieldStyles } from '@ruya.sa/ui/shared';
6
+ import { isHotkey } from 'is-hotkey';
7
+ import React, { useCallback, useEffect, useMemo, useRef } from 'react';
8
+ import { createEditor, Node, Element as SlateElement, Text, Transforms } from 'slate';
9
+ import { withHistory } from 'slate-history';
10
+ import { Editable, Slate, withReact } from 'slate-react';
11
+ import { defaultRichTextValue } from '../data/defaultValue.js';
12
+ import { richTextValidate } from '../data/validation.js';
13
+ import { listTypes } from './elements/listTypes.js';
14
+ import { hotkeys } from './hotkeys.js';
15
+ import { toggleLeaf } from './leaves/toggle.js';
16
+ import { withEnterBreakOut } from './plugins/withEnterBreakOut.js';
17
+ import { withHTML } from './plugins/withHTML.js';
18
+ import { ElementButtonProvider } from './providers/ElementButtonProvider.js';
19
+ import { ElementProvider } from './providers/ElementProvider.js';
20
+ import { LeafButtonProvider } from './providers/LeafButtonProvider.js';
21
+ import { LeafProvider } from './providers/LeafProvider.js';
22
+ import './index.scss';
23
+ const baseClass = 'rich-text';
24
+ const RichTextField = (props)=>{
25
+ const { elements, field, field: { name, admin: { className, description, placeholder, readOnly: readOnlyFromAdmin } = {}, label, required }, leaves, path: pathFromProps, plugins, readOnly: readOnlyFromTopLevelProps, schemaPath: schemaPathFromProps, validate = richTextValidate } = props;
26
+ const schemaPath = schemaPathFromProps ?? name;
27
+ const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin;
28
+ const { i18n } = useTranslation();
29
+ const editorRef = useRef(null);
30
+ const toolbarRef = useRef(null);
31
+ const drawerDepth = useEditDepth();
32
+ const drawerIsOpen = drawerDepth > 1;
33
+ const memoizedValidate = useCallback((value, validationOptions)=>{
34
+ if (typeof validate === 'function') {
35
+ return validate(value, {
36
+ ...validationOptions,
37
+ req: {
38
+ t: i18n.t
39
+ },
40
+ required
41
+ });
42
+ }
43
+ }, [
44
+ validate,
45
+ required,
46
+ i18n
47
+ ]);
48
+ const { customComponents: { Description, Error, Label } = {}, disabled: disabledFromField, initialValue, path, setValue, showError, value } = useField({
49
+ potentiallyStalePath: pathFromProps,
50
+ validate: memoizedValidate
51
+ });
52
+ const disabled = readOnlyFromProps || disabledFromField;
53
+ const editor = useMemo(()=>{
54
+ let CreatedEditor = withEnterBreakOut(withHistory(withReact(createEditor())));
55
+ CreatedEditor = withHTML(CreatedEditor);
56
+ if (plugins.length) {
57
+ CreatedEditor = plugins.reduce((editorWithPlugins, plugin)=>{
58
+ return plugin(editorWithPlugins);
59
+ }, CreatedEditor);
60
+ }
61
+ return CreatedEditor;
62
+ }, [
63
+ plugins
64
+ ]);
65
+ const renderElement = useCallback(({ attributes, children, element })=>{
66
+ // return <div {...attributes}>{children}</div>
67
+ const matchedElement = elements[element.type];
68
+ const Element = matchedElement?.Element;
69
+ let attr = {
70
+ ...attributes
71
+ };
72
+ // this converts text alignment to margin when dealing with void elements
73
+ if (element.textAlign) {
74
+ if (element.type === 'relationship' || element.type === 'upload') {
75
+ switch(element.textAlign){
76
+ case 'center':
77
+ attr = {
78
+ ...attr,
79
+ style: {
80
+ marginLeft: 'auto',
81
+ marginRight: 'auto'
82
+ }
83
+ };
84
+ break;
85
+ case 'left':
86
+ attr = {
87
+ ...attr,
88
+ style: {
89
+ marginRight: 'auto'
90
+ }
91
+ };
92
+ break;
93
+ case 'right':
94
+ attr = {
95
+ ...attr,
96
+ style: {
97
+ marginLeft: 'auto'
98
+ }
99
+ };
100
+ break;
101
+ default:
102
+ attr = {
103
+ ...attr,
104
+ style: {
105
+ textAlign: element.textAlign
106
+ }
107
+ };
108
+ break;
109
+ }
110
+ } else if (element.type === 'li') {
111
+ switch(element.textAlign){
112
+ case 'center':
113
+ attr = {
114
+ ...attr,
115
+ style: {
116
+ listStylePosition: 'inside',
117
+ textAlign: 'center'
118
+ }
119
+ };
120
+ break;
121
+ case 'right':
122
+ attr = {
123
+ ...attr,
124
+ style: {
125
+ listStylePosition: 'inside',
126
+ textAlign: 'right'
127
+ }
128
+ };
129
+ break;
130
+ case 'left':
131
+ default:
132
+ attr = {
133
+ ...attr,
134
+ style: {
135
+ listStylePosition: 'outside',
136
+ textAlign: 'left'
137
+ }
138
+ };
139
+ break;
140
+ }
141
+ } else {
142
+ attr = {
143
+ ...attr,
144
+ style: {
145
+ textAlign: element.textAlign
146
+ }
147
+ };
148
+ }
149
+ }
150
+ if (Element) {
151
+ const el = /*#__PURE__*/ _jsx(ElementProvider, {
152
+ attributes: attr,
153
+ childNodes: children,
154
+ editorRef: editorRef,
155
+ element: element,
156
+ fieldProps: props,
157
+ path: path,
158
+ schemaPath: schemaPath,
159
+ children: Element
160
+ });
161
+ return el;
162
+ }
163
+ return /*#__PURE__*/ _jsx("div", {
164
+ ...attr,
165
+ children: children
166
+ });
167
+ }, [
168
+ elements,
169
+ path,
170
+ props,
171
+ schemaPath
172
+ ]);
173
+ const renderLeaf = useCallback(({ attributes, children, leaf })=>{
174
+ const matchedLeaves = Object.entries(leaves).filter(([leafName])=>leaf[leafName]);
175
+ if (matchedLeaves.length > 0) {
176
+ return matchedLeaves.reduce((result, [, leafConfig], i)=>{
177
+ if (leafConfig?.Leaf) {
178
+ const Leaf = leafConfig.Leaf;
179
+ return /*#__PURE__*/ _jsx(LeafProvider, {
180
+ attributes: attributes,
181
+ editorRef: editorRef,
182
+ fieldProps: props,
183
+ leaf: leaf,
184
+ path: path,
185
+ result: result,
186
+ schemaPath: schemaPath,
187
+ children: Leaf
188
+ }, i);
189
+ }
190
+ return result;
191
+ }, /*#__PURE__*/ _jsx("span", {
192
+ ...attributes,
193
+ children: children
194
+ }));
195
+ }
196
+ return /*#__PURE__*/ _jsx("span", {
197
+ ...attributes,
198
+ children: children
199
+ });
200
+ }, [
201
+ path,
202
+ props,
203
+ schemaPath,
204
+ leaves
205
+ ]);
206
+ // All slate changes fire the onChange event
207
+ // including selection changes
208
+ // so we will filter the set_selection operations out
209
+ // and only fire setValue when onChange is because of value
210
+ const handleChange = useCallback((val)=>{
211
+ const ops = editor?.operations.filter((o)=>{
212
+ if (o) {
213
+ return o.type !== 'set_selection';
214
+ }
215
+ return false;
216
+ });
217
+ if (ops && Array.isArray(ops) && ops.length > 0) {
218
+ if (!disabled && val !== defaultRichTextValue && val !== value) {
219
+ setValue(val);
220
+ }
221
+ }
222
+ }, [
223
+ editor?.operations,
224
+ disabled,
225
+ setValue,
226
+ value
227
+ ]);
228
+ useEffect(()=>{
229
+ function setClickableState(clickState) {
230
+ const selectors = 'button, a, [role="button"]';
231
+ const toolbarButtons = toolbarRef.current?.querySelectorAll(selectors);
232
+ (toolbarButtons || []).forEach((child)=>{
233
+ const isButton = child.tagName === 'BUTTON';
234
+ const isDisabling = clickState === 'disabled';
235
+ child.setAttribute('tabIndex', isDisabling ? '-1' : '0');
236
+ if (isButton) {
237
+ child.setAttribute('disabled', isDisabling ? 'disabled' : null);
238
+ }
239
+ });
240
+ }
241
+ if (disabled) {
242
+ setClickableState('disabled');
243
+ }
244
+ return ()=>{
245
+ if (disabled) {
246
+ setClickableState('enabled');
247
+ }
248
+ };
249
+ }, [
250
+ disabled
251
+ ]);
252
+ // useEffect(() => {
253
+ // // If there is a change to the initial value, we need to reset Slate history
254
+ // // and clear selection because the old selection may no longer be valid
255
+ // // as returned JSON may be modified in hooks and have a different shape
256
+ // if (editor.selection) {
257
+ // console.log('deselecting');
258
+ // ReactEditor.deselect(editor);
259
+ // }
260
+ // }, [path, editor]);
261
+ const styles = useMemo(()=>mergeFieldStyles(field), [
262
+ field
263
+ ]);
264
+ const classes = [
265
+ baseClass,
266
+ 'field-type',
267
+ className,
268
+ showError && 'error',
269
+ disabled && `${baseClass}--read-only`
270
+ ].filter(Boolean).join(' ');
271
+ let valueToRender = value;
272
+ if (typeof valueToRender === 'string') {
273
+ try {
274
+ const parsedJSON = JSON.parse(valueToRender);
275
+ valueToRender = parsedJSON;
276
+ } catch (err) {
277
+ valueToRender = null;
278
+ }
279
+ }
280
+ if (!valueToRender) {
281
+ valueToRender = defaultRichTextValue;
282
+ }
283
+ return /*#__PURE__*/ _jsxs("div", {
284
+ className: classes,
285
+ style: styles,
286
+ children: [
287
+ Label || /*#__PURE__*/ _jsx(FieldLabel, {
288
+ label: label,
289
+ path: path,
290
+ required: required
291
+ }),
292
+ /*#__PURE__*/ _jsxs("div", {
293
+ className: `${baseClass}__wrap`,
294
+ children: [
295
+ /*#__PURE__*/ _jsx(RenderCustomComponent, {
296
+ CustomComponent: Error,
297
+ Fallback: /*#__PURE__*/ _jsx(FieldError, {
298
+ path: path,
299
+ showError: showError
300
+ })
301
+ }),
302
+ /*#__PURE__*/ _jsx(Slate, {
303
+ editor: editor,
304
+ onChange: handleChange,
305
+ value: valueToRender,
306
+ children: /*#__PURE__*/ _jsxs("div", {
307
+ className: `${baseClass}__wrapper`,
308
+ children: [
309
+ Object.keys(elements)?.length + Object.keys(leaves)?.length > 0 && /*#__PURE__*/ _jsx("div", {
310
+ className: [
311
+ `${baseClass}__toolbar`,
312
+ drawerIsOpen && `${baseClass}__drawerIsOpen`
313
+ ].filter(Boolean).join(' '),
314
+ ref: toolbarRef,
315
+ children: /*#__PURE__*/ _jsxs("div", {
316
+ className: `${baseClass}__toolbar-wrap`,
317
+ children: [
318
+ Object.values(elements).map((element)=>{
319
+ const Button = element?.Button;
320
+ if (Button) {
321
+ return /*#__PURE__*/ _jsx(ElementButtonProvider, {
322
+ disabled: disabled,
323
+ fieldProps: props,
324
+ path: path,
325
+ schemaPath: schemaPath,
326
+ children: Button
327
+ }, element.name);
328
+ }
329
+ return null;
330
+ }),
331
+ Object.values(leaves).map((leaf)=>{
332
+ const Button = leaf?.Button;
333
+ if (Button) {
334
+ return /*#__PURE__*/ _jsx(LeafButtonProvider, {
335
+ fieldProps: props,
336
+ path: path,
337
+ schemaPath: schemaPath,
338
+ children: Button
339
+ }, leaf.name);
340
+ }
341
+ return null;
342
+ })
343
+ ]
344
+ })
345
+ }),
346
+ /*#__PURE__*/ _jsx("div", {
347
+ className: `${baseClass}__editor`,
348
+ ref: editorRef,
349
+ children: /*#__PURE__*/ _jsx(Editable, {
350
+ className: `${baseClass}__input`,
351
+ id: `field-${path.replace(/\./g, '__')}`,
352
+ onKeyDown: (event)=>{
353
+ if (event.key === 'Enter') {
354
+ if (event.shiftKey) {
355
+ event.preventDefault();
356
+ editor.insertText('\n');
357
+ } else {
358
+ const selectedElement = Node.descendant(editor, editor.selection.anchor.path.slice(0, -1));
359
+ if (SlateElement.isElement(selectedElement)) {
360
+ // Allow hard enter to "break out" of certain elements
361
+ if (editor.shouldBreakOutOnEnter(selectedElement)) {
362
+ event.preventDefault();
363
+ const selectedLeaf = Node.descendant(editor, editor.selection.anchor.path);
364
+ if (Text.isText(selectedLeaf) && String(selectedLeaf.text).length === editor.selection.anchor.offset) {
365
+ Transforms.insertNodes(editor, {
366
+ children: [
367
+ {
368
+ text: ''
369
+ }
370
+ ]
371
+ });
372
+ } else {
373
+ Transforms.splitNodes(editor);
374
+ Transforms.setNodes(editor, {});
375
+ }
376
+ }
377
+ }
378
+ }
379
+ }
380
+ if (event.key === 'Backspace') {
381
+ const selectedElement = Node.descendant(editor, editor.selection.anchor.path.slice(0, -1));
382
+ if (SlateElement.isElement(selectedElement) && selectedElement.type === 'li') {
383
+ const selectedLeaf = Node.descendant(editor, editor.selection.anchor.path);
384
+ if (Text.isText(selectedLeaf) && String(selectedLeaf.text).length === 0) {
385
+ event.preventDefault();
386
+ Transforms.unwrapNodes(editor, {
387
+ match: (n)=>SlateElement.isElement(n) && listTypes.includes(n.type),
388
+ mode: 'lowest',
389
+ split: true
390
+ });
391
+ Transforms.setNodes(editor, {
392
+ type: undefined
393
+ });
394
+ }
395
+ } else if (editor.isVoid(selectedElement)) {
396
+ Transforms.removeNodes(editor);
397
+ }
398
+ }
399
+ Object.keys(hotkeys).forEach((hotkey)=>{
400
+ if (isHotkey(hotkey, event)) {
401
+ event.preventDefault();
402
+ const mark = hotkeys[hotkey];
403
+ toggleLeaf(editor, mark);
404
+ }
405
+ });
406
+ },
407
+ placeholder: getTranslation(placeholder, i18n),
408
+ readOnly: disabled,
409
+ renderElement: renderElement,
410
+ renderLeaf: renderLeaf,
411
+ spellCheck: true
412
+ })
413
+ })
414
+ ]
415
+ })
416
+ }, JSON.stringify({
417
+ initialValue,
418
+ path
419
+ })),
420
+ /*#__PURE__*/ _jsx(RenderCustomComponent, {
421
+ CustomComponent: Description,
422
+ Fallback: /*#__PURE__*/ _jsx(FieldDescription, {
423
+ description: description,
424
+ path: path
425
+ })
426
+ })
427
+ ]
428
+ })
429
+ ]
430
+ });
431
+ };
432
+ export const RichText = RichTextField;
433
+
434
+ //# sourceMappingURL=RichText.js.map