@quen-ui/components 0.0.14 → 1.0.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 (483) hide show
  1. package/README.md +2 -2
  2. package/dist/Accordion/Accordion.cjs.js +88 -0
  3. package/dist/Accordion/Accordion.d.ts +3 -0
  4. package/dist/Accordion/Accordion.es.js +89 -0
  5. package/dist/Accordion/AccordionGroup.cjs.js +82 -0
  6. package/dist/Accordion/AccordionGroup.d.ts +12 -0
  7. package/dist/Accordion/AccordionGroup.es.js +82 -0
  8. package/dist/Accordion/AccordionItem.cjs.js +71 -0
  9. package/dist/Accordion/AccordionItem.d.ts +3 -0
  10. package/dist/Accordion/AccordionItem.es.js +72 -0
  11. package/dist/Accordion/helpers.cjs.js +24 -0
  12. package/dist/Accordion/helpers.d.ts +25 -0
  13. package/dist/Accordion/helpers.es.js +24 -0
  14. package/dist/Accordion/index.cjs.js +7 -0
  15. package/dist/Accordion/index.d.ts +8 -0
  16. package/dist/Accordion/index.es.js +7 -0
  17. package/dist/Accordion/styles.cjs.js +97 -0
  18. package/dist/Accordion/styles.d.ts +23 -0
  19. package/dist/Accordion/styles.es.js +97 -0
  20. package/dist/Accordion/types.d.ts +142 -0
  21. package/dist/Accordion/useAccordionState.cjs.js +34 -0
  22. package/dist/Accordion/useAccordionState.d.ts +12 -0
  23. package/dist/Accordion/useAccordionState.es.js +34 -0
  24. package/dist/Alert/Alert.cjs.js +1 -1
  25. package/dist/Alert/Alert.es.js +1 -1
  26. package/dist/Alert/styles.cjs.js +14 -10
  27. package/dist/Alert/styles.es.js +14 -10
  28. package/dist/Avatar/styles.cjs.js +16 -11
  29. package/dist/Avatar/styles.es.js +16 -11
  30. package/dist/Badge/styles.cjs.js +7 -7
  31. package/dist/Badge/styles.es.js +7 -7
  32. package/dist/Breadcrumbs/BreadcrumbItem.cjs.js +6 -6
  33. package/dist/Breadcrumbs/BreadcrumbItem.es.js +6 -6
  34. package/dist/Breadcrumbs/Breadcrumbs.cjs.js +2 -3
  35. package/dist/Breadcrumbs/Breadcrumbs.es.js +2 -3
  36. package/dist/Breadcrumbs/styles.cjs.js +15 -15
  37. package/dist/Breadcrumbs/styles.es.js +15 -15
  38. package/dist/Button/Button.cjs.js +3 -3
  39. package/dist/Button/Button.es.js +6 -6
  40. package/dist/Button/index.d.ts +1 -1
  41. package/dist/Button/styles.cjs.js +49 -54
  42. package/dist/Button/styles.es.js +50 -55
  43. package/dist/Button/types.d.ts +2 -3
  44. package/dist/Calendar/Calendar.cjs.js +200 -0
  45. package/dist/Calendar/Calendar.d.ts +4 -0
  46. package/dist/Calendar/Calendar.es.js +201 -0
  47. package/dist/Calendar/DaysLevel.cjs.js +93 -0
  48. package/dist/Calendar/DaysLevel.d.ts +3 -0
  49. package/dist/Calendar/DaysLevel.es.js +94 -0
  50. package/dist/Calendar/MonthLevel.cjs.js +23 -0
  51. package/dist/Calendar/MonthLevel.d.ts +3 -0
  52. package/dist/Calendar/MonthLevel.es.js +24 -0
  53. package/dist/Calendar/YearsLevel.cjs.js +24 -0
  54. package/dist/Calendar/YearsLevel.d.ts +3 -0
  55. package/dist/Calendar/YearsLevel.es.js +25 -0
  56. package/dist/Calendar/helpers.cjs.js +60 -0
  57. package/dist/Calendar/helpers.d.ts +9 -0
  58. package/dist/Calendar/helpers.es.js +60 -0
  59. package/dist/Calendar/index.d.ts +2 -0
  60. package/dist/Calendar/styles.cjs.js +116 -0
  61. package/dist/Calendar/styles.d.ts +16 -0
  62. package/dist/Calendar/styles.es.js +116 -0
  63. package/dist/Calendar/types.d.ts +115 -0
  64. package/dist/Card/Card.cjs.js +4 -2
  65. package/dist/Card/Card.d.ts +1 -1
  66. package/dist/Card/Card.es.js +4 -2
  67. package/dist/Card/styles.cjs.js +2 -2
  68. package/dist/Card/styles.es.js +2 -2
  69. package/dist/Card/types.d.ts +2 -0
  70. package/dist/Checkbox/Checkbox.cjs.js +1 -1
  71. package/dist/Checkbox/Checkbox.es.js +1 -1
  72. package/dist/Checkbox/CheckboxGroup.cjs.js +22 -25
  73. package/dist/Checkbox/CheckboxGroup.es.js +22 -25
  74. package/dist/Checkbox/styles.cjs.js +24 -23
  75. package/dist/Checkbox/styles.es.js +24 -23
  76. package/dist/ColorPicker/ColorPicker.cjs.js +404 -0
  77. package/dist/ColorPicker/ColorPicker.d.ts +3 -0
  78. package/dist/ColorPicker/ColorPicker.es.js +405 -0
  79. package/dist/ColorPicker/InputColor.cjs.js +94 -0
  80. package/dist/ColorPicker/InputColor.d.ts +3 -0
  81. package/dist/ColorPicker/InputColor.es.js +95 -0
  82. package/dist/ColorPicker/InputsColor.cjs.js +177 -0
  83. package/dist/ColorPicker/InputsColor.d.ts +3 -0
  84. package/dist/ColorPicker/InputsColor.es.js +178 -0
  85. package/dist/ColorPicker/helpers.cjs.js +32 -0
  86. package/dist/ColorPicker/helpers.d.ts +4 -0
  87. package/dist/ColorPicker/helpers.es.js +32 -0
  88. package/dist/ColorPicker/index.cjs.js +7 -0
  89. package/dist/ColorPicker/index.d.ts +8 -0
  90. package/dist/ColorPicker/index.es.js +7 -0
  91. package/dist/ColorPicker/styles.cjs.js +234 -0
  92. package/dist/ColorPicker/styles.d.ts +43 -0
  93. package/dist/ColorPicker/styles.es.js +234 -0
  94. package/dist/ColorPicker/types.d.ts +56 -0
  95. package/dist/Divider/styles.cjs.js +12 -10
  96. package/dist/Divider/styles.es.js +12 -10
  97. package/dist/Drawer/Drawer.cjs.js +7 -3
  98. package/dist/Drawer/Drawer.es.js +5 -1
  99. package/dist/Drawer/styles.cjs.js +4 -5
  100. package/dist/Drawer/styles.es.js +4 -5
  101. package/dist/Dropdown/Dropdown.cjs.js +33 -4
  102. package/dist/Dropdown/Dropdown.d.ts +2 -2
  103. package/dist/Dropdown/Dropdown.es.js +32 -3
  104. package/dist/Dropdown/DropdownItem.cjs.js +4 -5
  105. package/dist/Dropdown/DropdownItem.es.js +4 -5
  106. package/dist/Dropdown/DropdownList.cjs.js +3 -2
  107. package/dist/Dropdown/DropdownList.es.js +6 -5
  108. package/dist/Dropdown/DropdownPortal.cjs.js +8 -5
  109. package/dist/Dropdown/DropdownPortal.d.ts +5 -3
  110. package/dist/Dropdown/DropdownPortal.es.js +9 -6
  111. package/dist/Dropdown/helpers.cjs.js +1 -1
  112. package/dist/Dropdown/helpers.es.js +1 -1
  113. package/dist/Dropdown/styles.cjs.js +28 -27
  114. package/dist/Dropdown/styles.d.ts +2 -0
  115. package/dist/Dropdown/styles.es.js +28 -27
  116. package/dist/EmptyState/EmptyState.cjs.js +51 -0
  117. package/dist/EmptyState/EmptyState.d.ts +3 -0
  118. package/dist/EmptyState/EmptyState.es.js +52 -0
  119. package/dist/EmptyState/index.d.ts +2 -0
  120. package/dist/EmptyState/types.d.ts +10 -0
  121. package/dist/Flex/Flex.d.ts +1 -1
  122. package/dist/Flex/types.d.ts +1 -0
  123. package/dist/Form/Field.cjs.js +175 -0
  124. package/dist/Form/Field.d.ts +3 -0
  125. package/dist/Form/Field.es.js +176 -0
  126. package/dist/Form/FieldArray.cjs.js +24 -0
  127. package/dist/Form/FieldArray.d.ts +3 -0
  128. package/dist/Form/FieldArray.es.js +25 -0
  129. package/dist/Form/Form.cjs.js +69 -0
  130. package/dist/Form/Form.d.ts +3 -0
  131. package/dist/Form/Form.es.js +69 -0
  132. package/dist/Form/defaultValidateMessages.cjs.js +51 -0
  133. package/dist/Form/defaultValidateMessages.d.ts +47 -0
  134. package/dist/Form/defaultValidateMessages.es.js +51 -0
  135. package/dist/Form/helpers.cjs.js +8 -0
  136. package/dist/Form/helpers.d.ts +1 -0
  137. package/dist/Form/helpers.es.js +8 -0
  138. package/dist/Form/index.cjs.js +13 -0
  139. package/dist/Form/index.d.ts +14 -0
  140. package/dist/Form/index.es.js +13 -0
  141. package/dist/Form/types.d.ts +147 -0
  142. package/dist/Form/useForm.cjs.js +230 -0
  143. package/dist/Form/useForm.d.ts +2 -0
  144. package/dist/Form/useForm.es.js +230 -0
  145. package/dist/Form/useWatch.cjs.js +14 -0
  146. package/dist/Form/useWatch.d.ts +3 -0
  147. package/dist/Form/useWatch.es.js +14 -0
  148. package/dist/Highlight/Highlight.cjs.js +113 -0
  149. package/dist/Highlight/Highlight.d.ts +3 -0
  150. package/dist/Highlight/Highlight.es.js +114 -0
  151. package/dist/Highlight/helpers.cjs.js +147 -0
  152. package/dist/Highlight/helpers.d.ts +27 -0
  153. package/dist/Highlight/helpers.es.js +147 -0
  154. package/dist/Highlight/index.d.ts +2 -0
  155. package/dist/Highlight/styles.cjs.js +11 -0
  156. package/dist/Highlight/styles.d.ts +4 -0
  157. package/dist/Highlight/styles.es.js +11 -0
  158. package/dist/Highlight/types.d.ts +53 -0
  159. package/dist/Image/styles.cjs.js +4 -5
  160. package/dist/Image/styles.es.js +4 -5
  161. package/dist/InputBase/InputBase.cjs.js +32 -0
  162. package/dist/InputBase/InputBase.d.ts +4 -0
  163. package/dist/InputBase/InputBase.es.js +33 -0
  164. package/dist/InputBase/index.d.ts +2 -0
  165. package/dist/InputBase/styles.cjs.js +61 -0
  166. package/dist/InputBase/styles.d.ts +7 -0
  167. package/dist/InputBase/styles.es.js +61 -0
  168. package/dist/InputBase/types.d.ts +25 -0
  169. package/dist/InputDate/InputDate.cjs.js +344 -0
  170. package/dist/InputDate/InputDate.d.ts +4 -0
  171. package/dist/InputDate/InputDate.es.js +345 -0
  172. package/dist/InputDate/helpers.cjs.js +78 -0
  173. package/dist/InputDate/helpers.d.ts +5 -0
  174. package/dist/InputDate/helpers.es.js +78 -0
  175. package/dist/InputDate/index.d.ts +2 -0
  176. package/dist/InputDate/styles.cjs.js +35 -0
  177. package/dist/InputDate/styles.d.ts +5 -0
  178. package/dist/InputDate/styles.es.js +35 -0
  179. package/dist/InputDate/types.d.ts +23 -0
  180. package/dist/InputNumber/InputNumber.cjs.js +70 -73
  181. package/dist/InputNumber/InputNumber.d.ts +1 -1
  182. package/dist/InputNumber/InputNumber.es.js +72 -75
  183. package/dist/InputNumber/styles.cjs.js +20 -60
  184. package/dist/InputNumber/styles.d.ts +4 -8
  185. package/dist/InputNumber/styles.es.js +21 -61
  186. package/dist/InputNumber/types.d.ts +2 -18
  187. package/dist/Layout/Header.cjs.js +27 -23
  188. package/dist/Layout/Header.d.ts +1 -1
  189. package/dist/Layout/Header.es.js +28 -24
  190. package/dist/Layout/Sidebar.cjs.js +24 -25
  191. package/dist/Layout/Sidebar.d.ts +1 -1
  192. package/dist/Layout/Sidebar.es.js +25 -26
  193. package/dist/Layout/index.d.ts +2 -2
  194. package/dist/Layout/styles.cjs.js +16 -52
  195. package/dist/Layout/styles.d.ts +2 -15
  196. package/dist/Layout/styles.es.js +16 -52
  197. package/dist/Layout/types.d.ts +7 -22
  198. package/dist/Loader/styles.cjs.js +5 -4
  199. package/dist/Loader/styles.es.js +5 -4
  200. package/dist/LoadingOverlay/LoadingOverlay.cjs.js +22 -0
  201. package/dist/LoadingOverlay/LoadingOverlay.d.ts +3 -0
  202. package/dist/LoadingOverlay/LoadingOverlay.es.js +23 -0
  203. package/dist/LoadingOverlay/index.d.ts +2 -0
  204. package/dist/LoadingOverlay/styles.cjs.js +28 -0
  205. package/dist/LoadingOverlay/styles.d.ts +5 -0
  206. package/dist/LoadingOverlay/styles.es.js +28 -0
  207. package/dist/LoadingOverlay/types.d.ts +16 -0
  208. package/dist/Menu/Menu.cjs.js +42 -0
  209. package/dist/Menu/Menu.d.ts +3 -0
  210. package/dist/Menu/Menu.es.js +43 -0
  211. package/dist/Menu/MenuItem.cjs.js +112 -0
  212. package/dist/Menu/MenuItem.d.ts +3 -0
  213. package/dist/Menu/MenuItem.es.js +113 -0
  214. package/dist/Menu/helpers.cjs.js +20 -0
  215. package/dist/Menu/helpers.d.ts +17 -0
  216. package/dist/Menu/helpers.es.js +20 -0
  217. package/dist/Menu/index.d.ts +2 -0
  218. package/dist/Menu/styles.cjs.js +98 -0
  219. package/dist/Menu/styles.d.ts +16 -0
  220. package/dist/Menu/styles.es.js +98 -0
  221. package/dist/Menu/types.d.ts +85 -0
  222. package/dist/Modal/Modal.cjs.js +17 -7
  223. package/dist/Modal/Modal.d.ts +1 -1
  224. package/dist/Modal/Modal.es.js +16 -6
  225. package/dist/Modal/styles.cjs.js +39 -9
  226. package/dist/Modal/styles.d.ts +4 -0
  227. package/dist/Modal/styles.es.js +40 -10
  228. package/dist/Modal/types.d.ts +2 -0
  229. package/dist/Notification/Notification.cjs.js +3 -3
  230. package/dist/Notification/Notification.es.js +3 -3
  231. package/dist/Notification/NotificationInstance.cjs.js +10 -17
  232. package/dist/Notification/NotificationInstance.es.js +8 -15
  233. package/dist/Notification/NotificationsStore.cjs.js +2 -7
  234. package/dist/Notification/NotificationsStore.es.js +2 -7
  235. package/dist/Notification/styles.cjs.js +6 -6
  236. package/dist/Notification/styles.es.js +6 -6
  237. package/dist/Pagination/Pagination.cjs.js +114 -0
  238. package/dist/Pagination/Pagination.d.ts +3 -0
  239. package/dist/Pagination/Pagination.es.js +115 -0
  240. package/dist/Pagination/index.d.ts +2 -0
  241. package/dist/Pagination/styles.cjs.js +54 -0
  242. package/dist/Pagination/styles.d.ts +2 -0
  243. package/dist/Pagination/styles.es.js +54 -0
  244. package/dist/Pagination/types.d.ts +49 -0
  245. package/dist/Progress/Progress.cjs.js +1 -1
  246. package/dist/Progress/Progress.es.js +1 -1
  247. package/dist/Progress/styles.cjs.js +5 -50
  248. package/dist/Progress/styles.es.js +5 -50
  249. package/dist/Progress/types.d.ts +1 -0
  250. package/dist/RadioButton/RadioButton.cjs.js +1 -1
  251. package/dist/RadioButton/RadioButton.es.js +1 -1
  252. package/dist/RadioButton/RadioButtonGroup.cjs.js +19 -22
  253. package/dist/RadioButton/RadioButtonGroup.es.js +19 -22
  254. package/dist/RadioButton/styles.cjs.js +11 -13
  255. package/dist/RadioButton/styles.es.js +11 -13
  256. package/dist/RichTextEditor/RichTextEditor.cjs.js +289 -0
  257. package/dist/RichTextEditor/RichTextEditor.d.ts +4 -0
  258. package/dist/RichTextEditor/RichTextEditor.es.js +290 -0
  259. package/dist/RichTextEditor/RichTextEditorColorControl.cjs.js +38 -0
  260. package/dist/RichTextEditor/RichTextEditorColorControl.d.ts +3 -0
  261. package/dist/RichTextEditor/RichTextEditorColorControl.es.js +39 -0
  262. package/dist/RichTextEditor/RichTextEditorTableControl.cjs.js +62 -0
  263. package/dist/RichTextEditor/RichTextEditorTableControl.d.ts +3 -0
  264. package/dist/RichTextEditor/RichTextEditorTableControl.es.js +63 -0
  265. package/dist/RichTextEditor/helpers.cjs.js +151 -0
  266. package/dist/RichTextEditor/helpers.d.ts +10 -0
  267. package/dist/RichTextEditor/helpers.es.js +151 -0
  268. package/dist/RichTextEditor/index.d.ts +2 -0
  269. package/dist/RichTextEditor/plugins.cjs.js +571 -0
  270. package/dist/RichTextEditor/plugins.d.ts +2 -0
  271. package/dist/RichTextEditor/plugins.es.js +571 -0
  272. package/dist/RichTextEditor/styles.cjs.js +60 -0
  273. package/dist/RichTextEditor/styles.d.ts +7 -0
  274. package/dist/RichTextEditor/styles.es.js +60 -0
  275. package/dist/RichTextEditor/types.d.ts +79 -0
  276. package/dist/Select/Select.cjs.js +30 -18
  277. package/dist/Select/Select.es.js +30 -18
  278. package/dist/Select/helpers.cjs.js +1 -1
  279. package/dist/Select/helpers.d.ts +24 -24
  280. package/dist/Select/helpers.es.js +1 -1
  281. package/dist/Select/styles.cjs.js +91 -118
  282. package/dist/Select/styles.d.ts +4 -5
  283. package/dist/Select/styles.es.js +91 -118
  284. package/dist/Select/types.d.ts +3 -23
  285. package/dist/Select/useSelect.cjs.js +8 -14
  286. package/dist/Select/useSelect.d.ts +20 -20
  287. package/dist/Select/useSelect.es.js +8 -14
  288. package/dist/Skeleton/Skeleton.cjs.js +35 -0
  289. package/dist/Skeleton/Skeleton.d.ts +3 -0
  290. package/dist/Skeleton/Skeleton.es.js +36 -0
  291. package/dist/Skeleton/SkeletonAvatar.cjs.js +17 -0
  292. package/dist/Skeleton/SkeletonAvatar.d.ts +3 -0
  293. package/dist/Skeleton/SkeletonAvatar.es.js +18 -0
  294. package/dist/Skeleton/SkeletonButton.cjs.js +21 -0
  295. package/dist/Skeleton/SkeletonButton.d.ts +3 -0
  296. package/dist/Skeleton/SkeletonButton.es.js +22 -0
  297. package/dist/Skeleton/SkeletonCard.cjs.js +15 -0
  298. package/dist/Skeleton/SkeletonCard.d.ts +3 -0
  299. package/dist/Skeleton/SkeletonCard.es.js +16 -0
  300. package/dist/Skeleton/SkeletonLayout.cjs.js +60 -0
  301. package/dist/Skeleton/SkeletonLayout.d.ts +3 -0
  302. package/dist/Skeleton/SkeletonLayout.es.js +61 -0
  303. package/dist/Skeleton/SkeletonList.cjs.js +39 -0
  304. package/dist/Skeleton/SkeletonList.d.ts +3 -0
  305. package/dist/Skeleton/SkeletonList.es.js +40 -0
  306. package/dist/Skeleton/SkeletonTextBlock.cjs.js +7 -0
  307. package/dist/Skeleton/SkeletonTextBlock.d.ts +5 -0
  308. package/dist/Skeleton/SkeletonTextBlock.es.js +8 -0
  309. package/dist/Skeleton/index.cjs.js +17 -0
  310. package/dist/Skeleton/index.d.ts +18 -0
  311. package/dist/Skeleton/index.es.js +17 -0
  312. package/dist/Skeleton/styles.cjs.js +59 -0
  313. package/dist/Skeleton/styles.d.ts +3 -0
  314. package/dist/Skeleton/styles.es.js +59 -0
  315. package/dist/Skeleton/types.d.ts +74 -0
  316. package/dist/Slider/Slider.cjs.js +282 -0
  317. package/dist/Slider/Slider.d.ts +3 -0
  318. package/dist/Slider/Slider.es.js +283 -0
  319. package/dist/Slider/index.d.ts +2 -0
  320. package/dist/Slider/styles.cjs.js +156 -0
  321. package/dist/Slider/styles.d.ts +35 -0
  322. package/dist/Slider/styles.es.js +156 -0
  323. package/dist/Slider/types.d.ts +53 -0
  324. package/dist/Spoiler/Spoiler.cjs.js +62 -0
  325. package/dist/Spoiler/Spoiler.d.ts +3 -0
  326. package/dist/Spoiler/Spoiler.es.js +63 -0
  327. package/dist/Spoiler/index.d.ts +2 -0
  328. package/dist/Spoiler/styles.cjs.js +15 -0
  329. package/dist/Spoiler/styles.d.ts +4 -0
  330. package/dist/Spoiler/styles.es.js +15 -0
  331. package/dist/Spoiler/types.d.ts +23 -0
  332. package/dist/Switch/Switch.cjs.js +32 -6
  333. package/dist/Switch/Switch.d.ts +2 -2
  334. package/dist/Switch/Switch.es.js +33 -7
  335. package/dist/Switch/styles.cjs.js +24 -7
  336. package/dist/Switch/styles.d.ts +4 -0
  337. package/dist/Switch/styles.es.js +24 -7
  338. package/dist/Switch/types.d.ts +3 -0
  339. package/dist/Tabs/Tab.cjs.js +8 -8
  340. package/dist/Tabs/Tab.es.js +8 -8
  341. package/dist/Tabs/TabPanel.cjs.js +3 -3
  342. package/dist/Tabs/TabPanel.es.js +3 -3
  343. package/dist/Tabs/Tabs.cjs.js +5 -4
  344. package/dist/Tabs/Tabs.d.ts +1 -1
  345. package/dist/Tabs/Tabs.es.js +5 -4
  346. package/dist/Tabs/TabsList.cjs.js +25 -1
  347. package/dist/Tabs/TabsList.d.ts +2 -2
  348. package/dist/Tabs/TabsList.es.js +25 -1
  349. package/dist/Tabs/styles.cjs.js +104 -34
  350. package/dist/Tabs/styles.d.ts +2 -0
  351. package/dist/Tabs/styles.es.js +104 -34
  352. package/dist/Tabs/types.d.ts +7 -3
  353. package/dist/Tag/Tag.cjs.js +4 -1
  354. package/dist/Tag/Tag.d.ts +1 -1
  355. package/dist/Tag/Tag.es.js +4 -1
  356. package/dist/Tag/styles.cjs.js +14 -9
  357. package/dist/Tag/styles.d.ts +2 -0
  358. package/dist/Tag/styles.es.js +14 -9
  359. package/dist/Tag/types.d.ts +6 -0
  360. package/dist/TextField/TextField.cjs.js +57 -56
  361. package/dist/TextField/TextField.d.ts +1 -1
  362. package/dist/TextField/TextField.es.js +58 -57
  363. package/dist/TextField/styles.cjs.js +9 -50
  364. package/dist/TextField/styles.d.ts +3 -8
  365. package/dist/TextField/styles.es.js +10 -51
  366. package/dist/TextField/types.d.ts +2 -20
  367. package/dist/Textarea/Textarea.cjs.js +57 -56
  368. package/dist/Textarea/Textarea.d.ts +1 -1
  369. package/dist/Textarea/Textarea.es.js +58 -57
  370. package/dist/Textarea/styles.cjs.js +10 -62
  371. package/dist/Textarea/styles.d.ts +3 -8
  372. package/dist/Textarea/styles.es.js +12 -64
  373. package/dist/Textarea/types.d.ts +2 -21
  374. package/dist/Tooltip/Tooltip.cjs.js +3 -1
  375. package/dist/Tooltip/Tooltip.d.ts +1 -1
  376. package/dist/Tooltip/Tooltip.es.js +3 -1
  377. package/dist/Tooltip/types.d.ts +3 -0
  378. package/dist/_virtual/client.cjs.js +5 -0
  379. package/dist/_virtual/client.cjs2.js +4 -0
  380. package/dist/_virtual/client.es.js +5 -0
  381. package/dist/_virtual/client.es2.js +4 -0
  382. package/dist/_virtual/index.cjs.js +4 -0
  383. package/dist/_virtual/index.es.js +4 -0
  384. package/dist/_virtual/react-dom-client.development.cjs.js +4 -0
  385. package/dist/_virtual/react-dom-client.development.es.js +4 -0
  386. package/dist/_virtual/react-dom-client.production.cjs.js +4 -0
  387. package/dist/_virtual/react-dom-client.production.es.js +4 -0
  388. package/dist/_virtual/scheduler.development.cjs.js +4 -0
  389. package/dist/_virtual/scheduler.development.es.js +4 -0
  390. package/dist/_virtual/scheduler.production.cjs.js +4 -0
  391. package/dist/_virtual/scheduler.production.es.js +4 -0
  392. package/dist/assets/box.svg.cjs.js +21 -0
  393. package/dist/assets/box.svg.es.js +5 -0
  394. package/dist/index.d.ts +1 -50
  395. package/dist/message/Message.cjs.js +42 -0
  396. package/dist/message/Message.d.ts +3 -0
  397. package/dist/message/Message.es.js +43 -0
  398. package/dist/message/MessageContext.cjs.js +101 -0
  399. package/dist/message/MessageContext.d.ts +4 -0
  400. package/dist/message/MessageContext.es.js +101 -0
  401. package/dist/message/index.cjs.js +8 -0
  402. package/dist/message/index.d.ts +6 -0
  403. package/dist/message/index.es.js +8 -0
  404. package/dist/message/styles.cjs.js +79 -0
  405. package/dist/message/styles.d.ts +11 -0
  406. package/dist/message/styles.es.js +79 -0
  407. package/dist/message/types.d.ts +42 -0
  408. package/dist/node_modules/@tabler/icons-react/dist/esm/createReactComponent.cjs.js +30 -0
  409. package/dist/node_modules/@tabler/icons-react/dist/esm/createReactComponent.es.js +31 -0
  410. package/dist/node_modules/@tabler/icons-react/dist/esm/defaultAttributes.cjs.js +23 -0
  411. package/dist/node_modules/@tabler/icons-react/dist/esm/defaultAttributes.es.js +24 -0
  412. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconAlignCenter.cjs.js +7 -0
  413. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconAlignCenter.es.js +7 -0
  414. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconAlignJustified.cjs.js +7 -0
  415. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconAlignJustified.es.js +7 -0
  416. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconAlignLeft.cjs.js +7 -0
  417. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconAlignLeft.es.js +7 -0
  418. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconAlignRight.cjs.js +7 -0
  419. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconAlignRight.es.js +7 -0
  420. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowBackUp.cjs.js +7 -0
  421. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowBackUp.es.js +7 -0
  422. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowForwardUp.cjs.js +7 -0
  423. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowForwardUp.es.js +7 -0
  424. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconBlockquote.cjs.js +7 -0
  425. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconBlockquote.es.js +7 -0
  426. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconBold.cjs.js +7 -0
  427. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconBold.es.js +7 -0
  428. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconCheckbox.cjs.js +7 -0
  429. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconCheckbox.es.js +7 -0
  430. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconClearFormatting.cjs.js +7 -0
  431. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconClearFormatting.es.js +7 -0
  432. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconH1.cjs.js +7 -0
  433. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconH1.es.js +7 -0
  434. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconH2.cjs.js +7 -0
  435. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconH2.es.js +7 -0
  436. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconHighlight.cjs.js +7 -0
  437. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconHighlight.es.js +7 -0
  438. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconImageInPicture.cjs.js +7 -0
  439. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconImageInPicture.es.js +7 -0
  440. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconItalic.cjs.js +7 -0
  441. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconItalic.es.js +7 -0
  442. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconLink.cjs.js +7 -0
  443. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconLink.es.js +7 -0
  444. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconList.cjs.js +7 -0
  445. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconList.es.js +7 -0
  446. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconListNumbers.cjs.js +7 -0
  447. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconListNumbers.es.js +7 -0
  448. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconStrikethrough.cjs.js +7 -0
  449. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconStrikethrough.es.js +7 -0
  450. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconSubscript.cjs.js +7 -0
  451. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconSubscript.es.js +7 -0
  452. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconSuperscript.cjs.js +7 -0
  453. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconSuperscript.es.js +7 -0
  454. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconTable.cjs.js +7 -0
  455. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconTable.es.js +7 -0
  456. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconTextColor.cjs.js +7 -0
  457. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconTextColor.es.js +7 -0
  458. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconUnderline.cjs.js +7 -0
  459. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconUnderline.es.js +7 -0
  460. package/dist/node_modules/react-dom/cjs/react-dom-client.development.cjs.js +19870 -0
  461. package/dist/node_modules/react-dom/cjs/react-dom-client.development.es.js +19870 -0
  462. package/dist/node_modules/react-dom/cjs/react-dom-client.production.cjs.js +11524 -0
  463. package/dist/node_modules/react-dom/cjs/react-dom-client.production.es.js +11524 -0
  464. package/dist/node_modules/react-dom/client.cjs.js +31 -0
  465. package/dist/node_modules/react-dom/client.es.js +31 -0
  466. package/dist/node_modules/scheduler/cjs/scheduler.development.cjs.js +264 -0
  467. package/dist/node_modules/scheduler/cjs/scheduler.development.es.js +264 -0
  468. package/dist/node_modules/scheduler/cjs/scheduler.production.cjs.js +259 -0
  469. package/dist/node_modules/scheduler/cjs/scheduler.production.es.js +259 -0
  470. package/dist/node_modules/scheduler/index.cjs.js +17 -0
  471. package/dist/node_modules/scheduler/index.es.js +17 -0
  472. package/dist/packages/components/index.cjs.js +93 -0
  473. package/dist/packages/components/index.es.js +93 -0
  474. package/dist/typography/Text/Text.es.js +3 -3
  475. package/dist/typography/Title/Title.cjs.js +2 -0
  476. package/dist/typography/Title/Title.d.ts +1 -1
  477. package/dist/typography/Title/Title.es.js +2 -0
  478. package/dist/typography/Title/styles.cjs.js +3 -0
  479. package/dist/typography/Title/styles.es.js +3 -0
  480. package/dist/typography/Title/types.d.ts +1 -0
  481. package/package.json +16 -13
  482. package/dist/index.cjs.js +0 -63
  483. package/dist/index.es.js +0 -63
@@ -0,0 +1,571 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const client = require("../_virtual/client.cjs.js");
5
+ const theme = require("@quen-ui/theme");
6
+ const RichTextEditorTableControl = require("./RichTextEditorTableControl.cjs.js");
7
+ const RichTextEditorColorControl = require("./RichTextEditorColorControl.cjs.js");
8
+ const helpers = require("./helpers.cjs.js");
9
+ const IconAlignLeft = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconAlignLeft.cjs.js");
10
+ const IconAlignCenter = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconAlignCenter.cjs.js");
11
+ const IconAlignRight = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconAlignRight.cjs.js");
12
+ const IconAlignJustified = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconAlignJustified.cjs.js");
13
+ const IconLink = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconLink.cjs.js");
14
+ const IconImageInPicture = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconImageInPicture.cjs.js");
15
+ const IconTextColor = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconTextColor.cjs.js");
16
+ const IconClearFormatting = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconClearFormatting.cjs.js");
17
+ const IconArrowBackUp = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconArrowBackUp.cjs.js");
18
+ const IconArrowForwardUp = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconArrowForwardUp.cjs.js");
19
+ const IconTable = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconTable.cjs.js");
20
+ const IconBold = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconBold.cjs.js");
21
+ const IconItalic = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconItalic.cjs.js");
22
+ const IconUnderline = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconUnderline.cjs.js");
23
+ const IconStrikethrough = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconStrikethrough.cjs.js");
24
+ const IconHighlight = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconHighlight.cjs.js");
25
+ const IconBlockquote = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconBlockquote.cjs.js");
26
+ const IconH1 = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconH1.cjs.js");
27
+ const IconH2 = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconH2.cjs.js");
28
+ const IconSuperscript = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconSuperscript.cjs.js");
29
+ const IconSubscript = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconSubscript.cjs.js");
30
+ const IconList = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconList.cjs.js");
31
+ const IconListNumbers = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconListNumbers.cjs.js");
32
+ const IconCheckbox = require("../node_modules/@tabler/icons-react/dist/esm/icons/IconCheckbox.cjs.js");
33
+ const onPluginLink = ({ exec }) => {
34
+ const url = window.prompt(
35
+ "Paste the URL (start with http:// or https://):",
36
+ "https://"
37
+ );
38
+ if (url) {
39
+ exec("createLink", url);
40
+ }
41
+ };
42
+ const onPluginImage = ({ exec }) => {
43
+ const url = window.prompt("Paste image link (URL):");
44
+ if (url) {
45
+ const img = `<img src="${url}" alt="image" style="max-width:100%;height:auto;" />`;
46
+ exec("insertHTML", img);
47
+ }
48
+ };
49
+ const onClearFormattingPlugin = ({ exec }) => {
50
+ exec("removeFormat");
51
+ };
52
+ const onTablePlugin = ({
53
+ exec,
54
+ context,
55
+ ref
56
+ }) => {
57
+ context.editor?.focus();
58
+ const container = document.createElement("div");
59
+ document.body.appendChild(container);
60
+ const savedSelection = context.selection?.getRangeAt(0);
61
+ const handleSelect = ({ rows, cols }) => {
62
+ context.selection?.removeAllRanges();
63
+ if (savedSelection) {
64
+ context.selection?.addRange(savedSelection);
65
+ }
66
+ const createRow = () => `<tr>${Array.from({ length: cols }).map(() => "<td>&nbsp;</td>").join("")}</tr>`;
67
+ const html = `<table><tbody>${Array.from({
68
+ length: rows
69
+ }).map(() => createRow()).join("")}</tbody></table><br />`;
70
+ exec("insertHTML", html);
71
+ container.remove();
72
+ };
73
+ const handleClose = () => {
74
+ container.remove();
75
+ };
76
+ const root = client.clientExports.createRoot(container);
77
+ root.render(
78
+ /* @__PURE__ */ jsxRuntime.jsx(
79
+ RichTextEditorTableControl,
80
+ {
81
+ onSelect: handleSelect,
82
+ onClose: handleClose,
83
+ ref,
84
+ theme: context.theme
85
+ }
86
+ )
87
+ );
88
+ };
89
+ const onColorPickerPlugin = ({
90
+ update,
91
+ context,
92
+ ref
93
+ }) => {
94
+ const savedRange = context.selection && context.selection.rangeCount ? context.selection.getRangeAt(0).cloneRange() : null;
95
+ const currentColor = savedRange ? helpers.getCurrentTextColor(savedRange) : null;
96
+ const container = document.createElement("div");
97
+ document.body.appendChild(container);
98
+ const root = client.clientExports.createRoot(container);
99
+ const closePopup = () => {
100
+ try {
101
+ root.unmount();
102
+ } catch (err) {
103
+ window.console.error(err);
104
+ }
105
+ if (container.parentNode) {
106
+ container.parentNode.removeChild(container);
107
+ }
108
+ };
109
+ const applyColor = (colorVal) => {
110
+ const sel = window.getSelection();
111
+ sel?.removeAllRanges();
112
+ if (savedRange) sel?.addRange(savedRange.cloneRange());
113
+ const selection = window.getSelection();
114
+ if (!selection || selection.rangeCount === 0) {
115
+ return;
116
+ }
117
+ const range = selection.getRangeAt(0);
118
+ const editorRoot = context.editor;
119
+ try {
120
+ editorRoot?.normalize();
121
+ } catch (err) {
122
+ window.console.error(err);
123
+ }
124
+ if (range.collapsed) {
125
+ if (!colorVal) {
126
+ closePopup();
127
+ return;
128
+ }
129
+ const span = document.createElement("span");
130
+ span.style.color = String(colorVal);
131
+ const zw = document.createTextNode("​");
132
+ span.appendChild(zw);
133
+ range.insertNode(span);
134
+ const sel2 = window.getSelection();
135
+ const r = document.createRange();
136
+ r.setStart(zw, 1);
137
+ r.collapse(true);
138
+ sel2?.removeAllRanges();
139
+ sel2?.addRange(r);
140
+ update?.();
141
+ return;
142
+ }
143
+ const startAncestor = helpers.findClosestAncestorElement(
144
+ range.startContainer,
145
+ (el) => el.tagName === "SPAN" && (!!el.style.color || !!el.style.backgroundColor)
146
+ );
147
+ const endAncestor = helpers.findClosestAncestorElement(
148
+ range.endContainer,
149
+ (el) => el.tagName === "SPAN" && (!!el.style.color || !!el.style.backgroundColor)
150
+ );
151
+ if (startAncestor && startAncestor === endAncestor) {
152
+ if (!colorVal) {
153
+ startAncestor.style.color = "";
154
+ startAncestor.style.backgroundColor = "";
155
+ if (!startAncestor.getAttribute("style") || startAncestor.getAttribute("style") === "") {
156
+ const p = startAncestor.parentNode;
157
+ if (p) {
158
+ while (startAncestor.firstChild)
159
+ p.insertBefore(startAncestor.firstChild, startAncestor);
160
+ p.removeChild(startAncestor);
161
+ }
162
+ }
163
+ } else {
164
+ startAncestor.style.color = String(colorVal);
165
+ }
166
+ update?.();
167
+ return;
168
+ }
169
+ try {
170
+ const frag = range.extractContents();
171
+ const cleaned = helpers.unwrapInlineColorSpans(frag);
172
+ if (!colorVal) {
173
+ range.insertNode(cleaned);
174
+ const afterRange = document.createRange();
175
+ let last = null;
176
+ if (cleaned.childNodes && cleaned.childNodes.length) {
177
+ last = cleaned.childNodes[cleaned.childNodes.length - 1];
178
+ }
179
+ if (last && last.parentNode) {
180
+ afterRange.setStartAfter(last);
181
+ } else {
182
+ afterRange.setStart(range.endContainer, range.endOffset);
183
+ }
184
+ afterRange.collapse(true);
185
+ selection.removeAllRanges();
186
+ selection.addRange(afterRange);
187
+ update?.();
188
+ closePopup();
189
+ return;
190
+ }
191
+ const wrapper = document.createElement("span");
192
+ wrapper.style.color = String(colorVal);
193
+ wrapper.appendChild(cleaned);
194
+ range.insertNode(wrapper);
195
+ const newRange = document.createRange();
196
+ newRange.setStartAfter(wrapper);
197
+ newRange.collapse(true);
198
+ selection.removeAllRanges();
199
+ selection.addRange(newRange);
200
+ update?.();
201
+ } catch {
202
+ try {
203
+ selection.removeAllRanges();
204
+ if (savedRange) selection.addRange(savedRange.cloneRange());
205
+ const html = colorVal ? `<span style="color:${String(colorVal)}">${selection.toString()}</span>` : selection.toString();
206
+ document.execCommand("insertHTML", false, html);
207
+ update?.();
208
+ } catch (e) {
209
+ window.console.error("applyColor fallback failed", e);
210
+ }
211
+ }
212
+ };
213
+ const handleChoose = (color) => applyColor(color);
214
+ const handleClose = () => closePopup();
215
+ root.render(
216
+ /* @__PURE__ */ jsxRuntime.jsx(theme.QuenUIProvider, { theme: theme.QuenUILightTheme, children: /* @__PURE__ */ jsxRuntime.jsx(
217
+ RichTextEditorColorControl,
218
+ {
219
+ ref,
220
+ onChange: handleChoose,
221
+ onClose: handleClose,
222
+ color: currentColor || "#000",
223
+ theme: context.theme
224
+ }
225
+ ) })
226
+ );
227
+ };
228
+ const insertCheckbox = (editor) => {
229
+ const wrapper = document.createElement("div");
230
+ wrapper.setAttribute("data-checkbox-line", "true");
231
+ const checkbox = document.createElement("input");
232
+ checkbox.type = "checkbox";
233
+ checkbox.setAttribute("data-checkbox", "true");
234
+ const text = document.createTextNode(" ");
235
+ wrapper.appendChild(checkbox);
236
+ wrapper.appendChild(text);
237
+ helpers.insertNodeAtSelection(editor, wrapper);
238
+ helpers.setCursorAtEnd(wrapper);
239
+ };
240
+ const checkBoxPlugin = {
241
+ key: "checkbox",
242
+ title: "Check list",
243
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconCheckbox.default, {}),
244
+ action: ({ editor, context }) => {
245
+ editor?.focus();
246
+ const prev = context.getPluginState("checkbox")?.active ?? false;
247
+ context.setPluginState("checkbox", { active: !prev });
248
+ if (editor && !prev) {
249
+ insertCheckbox(editor);
250
+ }
251
+ },
252
+ onKeyDown: (event, ctx) => {
253
+ const state = ctx.getPluginState("checkbox");
254
+ const isActive = state?.active ?? false;
255
+ if (!ctx.editor) return;
256
+ const block = helpers.getCurrentBlock();
257
+ if (!block) return;
258
+ const isCheckboxLine = block.hasAttribute("data-checkbox-line");
259
+ if (event.key === "Enter" && isCheckboxLine && isActive) {
260
+ event.preventDefault();
261
+ insertCheckbox(ctx.editor);
262
+ return;
263
+ }
264
+ if (event.key === "Backspace" && isCheckboxLine) {
265
+ const checkbox = block.querySelector("input[data-checkbox]");
266
+ const text = block.innerText.replace("\n", "").trim();
267
+ if (checkbox && text === "") {
268
+ event.preventDefault();
269
+ block.remove();
270
+ }
271
+ }
272
+ },
273
+ getState: (_, ctx) => {
274
+ return ctx.getPluginState("checkbox") || { active: false };
275
+ }
276
+ };
277
+ const boldPlugin = {
278
+ key: "bold",
279
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconBold.default, {}),
280
+ title: "Bold (Ctrl/Cmd+B)",
281
+ action: ({ exec, context, editor }) => {
282
+ const prev = context.getPluginState("bold")?.active ?? false;
283
+ context.setPluginState("bold", { active: !prev });
284
+ editor?.focus();
285
+ exec("bold");
286
+ },
287
+ getState: (_, ctx) => {
288
+ return ctx.getPluginState("bold") || { active: false };
289
+ }
290
+ };
291
+ const italicPlugin = {
292
+ key: "italic",
293
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconItalic.default, {}),
294
+ title: "Italic (Ctrl/Cmd+I)",
295
+ action: ({ exec, context, editor }) => {
296
+ const prev = context.getPluginState("italic")?.active ?? false;
297
+ context.setPluginState("italic", { active: !prev });
298
+ editor?.focus();
299
+ exec("italic");
300
+ },
301
+ getState: (_, ctx) => {
302
+ return ctx.getPluginState("italic") || { active: false };
303
+ }
304
+ };
305
+ const underlinePlugin = {
306
+ key: "underline",
307
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconUnderline.default, {}),
308
+ title: "Underlined (Ctrl/Cmd+U)",
309
+ action: ({ exec, context }) => {
310
+ const prev = context.getPluginState("underline")?.active ?? false;
311
+ context.setPluginState("underline", { active: !prev });
312
+ exec("underline");
313
+ },
314
+ getState: (_, ctx) => {
315
+ return ctx.getPluginState("underline") || { active: false };
316
+ }
317
+ };
318
+ const strikethroughPlugin = {
319
+ key: "strikethrough",
320
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconStrikethrough.default, {}),
321
+ title: "Strikethrough",
322
+ action: ({ exec, context }) => {
323
+ const prev = context.getPluginState("strikethrough")?.active ?? false;
324
+ context.setPluginState("strikethrough", { active: !prev });
325
+ exec("strikeThrough");
326
+ },
327
+ getState: (_, ctx) => {
328
+ return ctx.getPluginState("strikethrough") || { active: false };
329
+ }
330
+ };
331
+ const highlightPlugin = {
332
+ key: "highlight",
333
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconHighlight.default, {}),
334
+ title: "Highlight",
335
+ action: ({ exec, context }) => {
336
+ const prev = context.getPluginState("highlight")?.active ?? false;
337
+ context.setPluginState("highlight", { active: !prev });
338
+ if (!prev) {
339
+ exec("backColor", context.theme.colors.yellow[5]);
340
+ } else {
341
+ exec("backColor", "white");
342
+ }
343
+ },
344
+ getState: (_, ctx) => {
345
+ return ctx.getPluginState("highlight") || { active: false };
346
+ }
347
+ };
348
+ const blockquotePlugin = {
349
+ key: "blockquote",
350
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconBlockquote.default, {}),
351
+ title: "Blockquote",
352
+ action: ({ exec, context }) => {
353
+ const prev = context.getPluginState("blockquote")?.active ?? false;
354
+ context.setPluginState("blockquote", { active: !prev });
355
+ exec("formatBlock", "<blockquote>");
356
+ },
357
+ onKeyDown: (event, ctx) => {
358
+ const state = ctx.getPluginState("blockquote");
359
+ const isActive = state?.active ?? false;
360
+ if (isActive && event.shiftKey && event.key === "Enter") {
361
+ ctx.exec("insertBrOnReturn");
362
+ } else if (event.key === "Enter" && isActive) {
363
+ setTimeout(() => {
364
+ ctx.setPluginState("blockquote", { active: false });
365
+ ctx.exec("insertBrOnReturn");
366
+ ctx.exec("formatBlock", "<div>");
367
+ }, 0);
368
+ }
369
+ },
370
+ getState: (_, ctx) => {
371
+ return ctx.getPluginState("blockquote") || { active: false };
372
+ },
373
+ onSelectionChange: (sel, context) => {
374
+ const isBlockquote = helpers.isCursorInTag("blockquote", sel);
375
+ context.setPluginState("blockquote", { active: isBlockquote });
376
+ }
377
+ };
378
+ const superscriptPlugin = {
379
+ key: "superscript",
380
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconSuperscript.default, {}),
381
+ title: "Superscript",
382
+ action: ({ exec, context }) => {
383
+ const prev = context.getPluginState("superscript")?.active ?? false;
384
+ context.setPluginState("superscript", { active: !prev });
385
+ exec("superscript");
386
+ },
387
+ getState: (_, ctx) => {
388
+ return ctx.getPluginState("superscript") || { active: false };
389
+ },
390
+ onSelectionChange: (sel, context) => {
391
+ const isSuperscript = helpers.isCursorInTag("sup", sel);
392
+ context.setPluginState("superscript", { active: isSuperscript });
393
+ }
394
+ };
395
+ const h1Plugin = {
396
+ key: "h1",
397
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconH1.default, {}),
398
+ title: "H1 heading",
399
+ action: ({ exec, context }) => {
400
+ const prev = context.getPluginState("h1")?.active ?? false;
401
+ context.setPluginState("h1", { active: !prev });
402
+ exec("formatBlock", "H1");
403
+ },
404
+ getState: (_, ctx) => {
405
+ return ctx.getPluginState("h1") || { active: false };
406
+ },
407
+ onKeyDown: (event, context) => {
408
+ if (event.key === "Enter") {
409
+ context.setPluginState("h1", { active: false });
410
+ }
411
+ },
412
+ onSelectionChange: (sel, context) => {
413
+ const isH1 = helpers.isCursorInTag("h1", sel);
414
+ context.setPluginState("h1", { active: isH1 });
415
+ }
416
+ };
417
+ const h2Plugin = {
418
+ key: "h2",
419
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconH2.default, {}),
420
+ title: "H2 heading",
421
+ action: ({ exec, context }) => {
422
+ const prev = context.getPluginState("h2")?.active ?? false;
423
+ context.setPluginState("h2", { active: !prev });
424
+ exec("formatBlock", "H2");
425
+ },
426
+ onKeyDown: (event, context) => {
427
+ if (event.key === "Enter") {
428
+ context.setPluginState("h2", { active: false });
429
+ }
430
+ },
431
+ getState: (_, ctx) => {
432
+ return ctx.getPluginState("h2") || { active: false };
433
+ },
434
+ onSelectionChange: (sel, context) => {
435
+ const isH2 = helpers.isCursorInTag("h2", sel);
436
+ context.setPluginState("h2", { active: isH2 });
437
+ }
438
+ };
439
+ const subscriptPlugin = {
440
+ key: "subscript",
441
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconSubscript.default, {}),
442
+ title: "Subscript",
443
+ action: ({ exec, context }) => {
444
+ const prev = context.getPluginState("subscript")?.active ?? false;
445
+ context.setPluginState("subscript", { active: !prev });
446
+ exec("subscript");
447
+ },
448
+ getState: (_, ctx) => {
449
+ return ctx.getPluginState("subscript") || { active: false };
450
+ },
451
+ onSelectionChange: (sel, context) => {
452
+ const isSubscript = helpers.isCursorInTag("sub", sel);
453
+ context.setPluginState("subscript", { active: isSubscript });
454
+ }
455
+ };
456
+ const bulletedListPlugin = {
457
+ key: "bulletedList",
458
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconList.default, {}),
459
+ title: "Bulleted List",
460
+ action: ({ exec, context }) => {
461
+ const prev = context.getPluginState("bulletedList")?.active ?? false;
462
+ context.setPluginState("bulletedList", { active: !prev });
463
+ exec("insertUnorderedList");
464
+ },
465
+ getState: (_, ctx) => {
466
+ return ctx.getPluginState("bulletedList") || { active: false };
467
+ },
468
+ onSelectionChange: (sel, context) => {
469
+ const isBulletedList = helpers.isCursorInTag("ul", sel);
470
+ context.setPluginState("bulletedList", { active: isBulletedList });
471
+ }
472
+ };
473
+ const numberedListPlugin = {
474
+ key: "numberedList",
475
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconListNumbers.default, {}),
476
+ title: "Numbered list",
477
+ action: ({ exec, context }) => {
478
+ const prev = context.getPluginState("numberedList")?.active ?? false;
479
+ context.setPluginState("numberedList", { active: !prev });
480
+ exec("insertOrderedList");
481
+ },
482
+ getState: (_, ctx) => {
483
+ return ctx.getPluginState("numberedList") || { active: false };
484
+ },
485
+ onSelectionChange: (sel, context) => {
486
+ const isNumberedList = helpers.isCursorInTag("ol", sel);
487
+ context.setPluginState("isNumberedList", { active: isNumberedList });
488
+ }
489
+ };
490
+ const defaultPlugins = [
491
+ boldPlugin,
492
+ italicPlugin,
493
+ underlinePlugin,
494
+ strikethroughPlugin,
495
+ highlightPlugin,
496
+ blockquotePlugin,
497
+ h1Plugin,
498
+ h2Plugin,
499
+ superscriptPlugin,
500
+ subscriptPlugin,
501
+ bulletedListPlugin,
502
+ numberedListPlugin,
503
+ {
504
+ key: "alignLeft",
505
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconAlignLeft.default, {}),
506
+ title: "Align left",
507
+ action: ({ exec }) => exec("justifyLeft")
508
+ },
509
+ {
510
+ key: "alignCenter",
511
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconAlignCenter.default, {}),
512
+ title: "Align center",
513
+ action: ({ exec }) => exec("justifyCenter")
514
+ },
515
+ {
516
+ key: "alignRight",
517
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconAlignRight.default, {}),
518
+ title: "Align right",
519
+ action: ({ exec }) => exec("justifyRight")
520
+ },
521
+ {
522
+ key: "justify",
523
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconAlignJustified.default, {}),
524
+ title: "Justify",
525
+ action: ({ exec }) => exec("justifyFull")
526
+ },
527
+ {
528
+ key: "link",
529
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconLink.default, {}),
530
+ title: "Paste link (Ctrl/Cmd+K)",
531
+ action: onPluginLink
532
+ },
533
+ {
534
+ key: "image",
535
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconImageInPicture.default, {}),
536
+ title: "Insert image",
537
+ action: onPluginImage
538
+ },
539
+ {
540
+ key: "textColor",
541
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconTextColor.default, {}),
542
+ title: "Text color",
543
+ action: onColorPickerPlugin
544
+ },
545
+ {
546
+ key: "clear",
547
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconClearFormatting.default, {}),
548
+ title: "Clear formatting",
549
+ action: onClearFormattingPlugin
550
+ },
551
+ {
552
+ key: "undo",
553
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconArrowBackUp.default, {}),
554
+ title: "Undo",
555
+ action: ({ exec }) => exec("undo")
556
+ },
557
+ {
558
+ key: "redo",
559
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconArrowForwardUp.default, {}),
560
+ title: "Redo",
561
+ action: ({ exec }) => exec("redo")
562
+ },
563
+ checkBoxPlugin,
564
+ {
565
+ key: "table",
566
+ title: "Table",
567
+ label: /* @__PURE__ */ jsxRuntime.jsx(IconTable.default, {}),
568
+ action: onTablePlugin
569
+ }
570
+ ];
571
+ exports.defaultPlugins = defaultPlugins;
@@ -0,0 +1,2 @@
1
+ import { IRichTextEditorPlugin } from './types';
2
+ export declare const defaultPlugins: IRichTextEditorPlugin[];