commspliant-html-editor 0.0.1

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 (323) hide show
  1. package/README.md +315 -0
  2. package/dist/commspliant-html-editor.css +1 -0
  3. package/dist/components/Editor.d.ts +3 -0
  4. package/dist/components/Editor.d.ts.map +1 -0
  5. package/dist/components/HtmlSurface.d.ts +9 -0
  6. package/dist/components/HtmlSurface.d.ts.map +1 -0
  7. package/dist/components/VisualSurface.d.ts +13 -0
  8. package/dist/components/VisualSurface.d.ts.map +1 -0
  9. package/dist/core/blockFormat.d.ts +10 -0
  10. package/dist/core/blockFormat.d.ts.map +1 -0
  11. package/dist/core/blocks.d.ts +19 -0
  12. package/dist/core/blocks.d.ts.map +1 -0
  13. package/dist/core/bookmark.d.ts +10 -0
  14. package/dist/core/bookmark.d.ts.map +1 -0
  15. package/dist/core/cellProperties.d.ts +18 -0
  16. package/dist/core/cellProperties.d.ts.map +1 -0
  17. package/dist/core/clearFormatting.d.ts +2 -0
  18. package/dist/core/clearFormatting.d.ts.map +1 -0
  19. package/dist/core/clipboard.d.ts +9 -0
  20. package/dist/core/clipboard.d.ts.map +1 -0
  21. package/dist/core/commandTypes.d.ts +229 -0
  22. package/dist/core/commandTypes.d.ts.map +1 -0
  23. package/dist/core/commands.d.ts +5 -0
  24. package/dist/core/commands.d.ts.map +1 -0
  25. package/dist/core/cssLength.d.ts +13 -0
  26. package/dist/core/cssLength.d.ts.map +1 -0
  27. package/dist/core/customActions.d.ts +12 -0
  28. package/dist/core/customActions.d.ts.map +1 -0
  29. package/dist/core/fontFamily.d.ts +40 -0
  30. package/dist/core/fontFamily.d.ts.map +1 -0
  31. package/dist/core/fontSize.d.ts +25 -0
  32. package/dist/core/fontSize.d.ts.map +1 -0
  33. package/dist/core/fontSizeUnits.d.ts +29 -0
  34. package/dist/core/fontSizeUnits.d.ts.map +1 -0
  35. package/dist/core/image.d.ts +19 -0
  36. package/dist/core/image.d.ts.map +1 -0
  37. package/dist/core/imageProperties.d.ts +35 -0
  38. package/dist/core/imageProperties.d.ts.map +1 -0
  39. package/dist/core/imageResize.d.ts +18 -0
  40. package/dist/core/imageResize.d.ts.map +1 -0
  41. package/dist/core/imageSize.d.ts +23 -0
  42. package/dist/core/imageSize.d.ts.map +1 -0
  43. package/dist/core/indent.d.ts +7 -0
  44. package/dist/core/indent.d.ts.map +1 -0
  45. package/dist/core/inlineColor.d.ts +23 -0
  46. package/dist/core/inlineColor.d.ts.map +1 -0
  47. package/dist/core/inlineRange.d.ts +10 -0
  48. package/dist/core/inlineRange.d.ts.map +1 -0
  49. package/dist/core/link.d.ts +18 -0
  50. package/dist/core/link.d.ts.map +1 -0
  51. package/dist/core/lists.d.ts +12 -0
  52. package/dist/core/lists.d.ts.map +1 -0
  53. package/dist/core/marks.d.ts +18 -0
  54. package/dist/core/marks.d.ts.map +1 -0
  55. package/dist/core/page.d.ts +8 -0
  56. package/dist/core/page.d.ts.map +1 -0
  57. package/dist/core/pageProperties.d.ts +7 -0
  58. package/dist/core/pageProperties.d.ts.map +1 -0
  59. package/dist/core/paragraphBox.d.ts +82 -0
  60. package/dist/core/paragraphBox.d.ts.map +1 -0
  61. package/dist/core/paragraphProperties.d.ts +17 -0
  62. package/dist/core/paragraphProperties.d.ts.map +1 -0
  63. package/dist/core/rowProperties.d.ts +17 -0
  64. package/dist/core/rowProperties.d.ts.map +1 -0
  65. package/dist/core/selection.d.ts +22 -0
  66. package/dist/core/selection.d.ts.map +1 -0
  67. package/dist/core/table.d.ts +28 -0
  68. package/dist/core/table.d.ts.map +1 -0
  69. package/dist/core/tableProperties.d.ts +18 -0
  70. package/dist/core/tableProperties.d.ts.map +1 -0
  71. package/dist/core/textAlign.d.ts +9 -0
  72. package/dist/core/textAlign.d.ts.map +1 -0
  73. package/dist/hooks/useControllableState.d.ts +8 -0
  74. package/dist/hooks/useControllableState.d.ts.map +1 -0
  75. package/dist/i18n/LocaleProvider.d.ts +11 -0
  76. package/dist/i18n/LocaleProvider.d.ts.map +1 -0
  77. package/dist/i18n/en.d.ts +3 -0
  78. package/dist/i18n/en.d.ts.map +1 -0
  79. package/dist/i18n/es.d.ts +3 -0
  80. package/dist/i18n/es.d.ts.map +1 -0
  81. package/dist/i18n/types.d.ts +333 -0
  82. package/dist/i18n/types.d.ts.map +1 -0
  83. package/dist/icons/AlignCenterIcon.d.ts +3 -0
  84. package/dist/icons/AlignCenterIcon.d.ts.map +1 -0
  85. package/dist/icons/AlignJustifyIcon.d.ts +3 -0
  86. package/dist/icons/AlignJustifyIcon.d.ts.map +1 -0
  87. package/dist/icons/AlignLeftIcon.d.ts +3 -0
  88. package/dist/icons/AlignLeftIcon.d.ts.map +1 -0
  89. package/dist/icons/AlignRightIcon.d.ts +3 -0
  90. package/dist/icons/AlignRightIcon.d.ts.map +1 -0
  91. package/dist/icons/BoldIcon.d.ts +3 -0
  92. package/dist/icons/BoldIcon.d.ts.map +1 -0
  93. package/dist/icons/BookmarkIcon.d.ts +3 -0
  94. package/dist/icons/BookmarkIcon.d.ts.map +1 -0
  95. package/dist/icons/BulletListIcon.d.ts +3 -0
  96. package/dist/icons/BulletListIcon.d.ts.map +1 -0
  97. package/dist/icons/CellPropertiesIcon.d.ts +3 -0
  98. package/dist/icons/CellPropertiesIcon.d.ts.map +1 -0
  99. package/dist/icons/ClearFormattingIcon.d.ts +3 -0
  100. package/dist/icons/ClearFormattingIcon.d.ts.map +1 -0
  101. package/dist/icons/CloseIcon.d.ts +3 -0
  102. package/dist/icons/CloseIcon.d.ts.map +1 -0
  103. package/dist/icons/CommspliantShieldIcon.d.ts +3 -0
  104. package/dist/icons/CommspliantShieldIcon.d.ts.map +1 -0
  105. package/dist/icons/CustomActionIcon.d.ts +3 -0
  106. package/dist/icons/CustomActionIcon.d.ts.map +1 -0
  107. package/dist/icons/FontColorIcon.d.ts +3 -0
  108. package/dist/icons/FontColorIcon.d.ts.map +1 -0
  109. package/dist/icons/FontPropertiesIcon.d.ts +3 -0
  110. package/dist/icons/FontPropertiesIcon.d.ts.map +1 -0
  111. package/dist/icons/FullscreenIcon.d.ts +3 -0
  112. package/dist/icons/FullscreenIcon.d.ts.map +1 -0
  113. package/dist/icons/HighlightColorIcon.d.ts +3 -0
  114. package/dist/icons/HighlightColorIcon.d.ts.map +1 -0
  115. package/dist/icons/HtmlIcon.d.ts +3 -0
  116. package/dist/icons/HtmlIcon.d.ts.map +1 -0
  117. package/dist/icons/ImageIcon.d.ts +3 -0
  118. package/dist/icons/ImageIcon.d.ts.map +1 -0
  119. package/dist/icons/IndentIcon.d.ts +3 -0
  120. package/dist/icons/IndentIcon.d.ts.map +1 -0
  121. package/dist/icons/ItalicIcon.d.ts +3 -0
  122. package/dist/icons/ItalicIcon.d.ts.map +1 -0
  123. package/dist/icons/LinkIcon.d.ts +3 -0
  124. package/dist/icons/LinkIcon.d.ts.map +1 -0
  125. package/dist/icons/MenuIcon.d.ts +3 -0
  126. package/dist/icons/MenuIcon.d.ts.map +1 -0
  127. package/dist/icons/NumberedListIcon.d.ts +3 -0
  128. package/dist/icons/NumberedListIcon.d.ts.map +1 -0
  129. package/dist/icons/OpenIcon.d.ts +3 -0
  130. package/dist/icons/OpenIcon.d.ts.map +1 -0
  131. package/dist/icons/OutdentIcon.d.ts +3 -0
  132. package/dist/icons/OutdentIcon.d.ts.map +1 -0
  133. package/dist/icons/PagePropertiesIcon.d.ts +3 -0
  134. package/dist/icons/PagePropertiesIcon.d.ts.map +1 -0
  135. package/dist/icons/ParagraphPropertiesIcon.d.ts +3 -0
  136. package/dist/icons/ParagraphPropertiesIcon.d.ts.map +1 -0
  137. package/dist/icons/PlusIcon.d.ts +3 -0
  138. package/dist/icons/PlusIcon.d.ts.map +1 -0
  139. package/dist/icons/PrintIcon.d.ts +3 -0
  140. package/dist/icons/PrintIcon.d.ts.map +1 -0
  141. package/dist/icons/RedoIcon.d.ts +3 -0
  142. package/dist/icons/RedoIcon.d.ts.map +1 -0
  143. package/dist/icons/RowPropertiesIcon.d.ts +3 -0
  144. package/dist/icons/RowPropertiesIcon.d.ts.map +1 -0
  145. package/dist/icons/SaveIcon.d.ts +3 -0
  146. package/dist/icons/SaveIcon.d.ts.map +1 -0
  147. package/dist/icons/StrikethroughIcon.d.ts +3 -0
  148. package/dist/icons/StrikethroughIcon.d.ts.map +1 -0
  149. package/dist/icons/TableColumnIcon.d.ts +3 -0
  150. package/dist/icons/TableColumnIcon.d.ts.map +1 -0
  151. package/dist/icons/TableIcon.d.ts +3 -0
  152. package/dist/icons/TableIcon.d.ts.map +1 -0
  153. package/dist/icons/TableRowIcon.d.ts +3 -0
  154. package/dist/icons/TableRowIcon.d.ts.map +1 -0
  155. package/dist/icons/UnderlineIcon.d.ts +3 -0
  156. package/dist/icons/UnderlineIcon.d.ts.map +1 -0
  157. package/dist/icons/UndoIcon.d.ts +3 -0
  158. package/dist/icons/UndoIcon.d.ts.map +1 -0
  159. package/dist/icons/VisualIcon.d.ts +3 -0
  160. package/dist/icons/VisualIcon.d.ts.map +1 -0
  161. package/dist/icons/index.d.ts +41 -0
  162. package/dist/icons/index.d.ts.map +1 -0
  163. package/dist/icons/types.d.ts +4 -0
  164. package/dist/icons/types.d.ts.map +1 -0
  165. package/dist/index.cjs +92 -0
  166. package/dist/index.d.ts +3 -0
  167. package/dist/index.d.ts.map +1 -0
  168. package/dist/index.js +13150 -0
  169. package/dist/modules/contextMenu/ContextMenu.d.ts +13 -0
  170. package/dist/modules/contextMenu/ContextMenu.d.ts.map +1 -0
  171. package/dist/modules/contextMenu/commands.d.ts +3 -0
  172. package/dist/modules/contextMenu/commands.d.ts.map +1 -0
  173. package/dist/modules/contextMenu/index.d.ts +4 -0
  174. package/dist/modules/contextMenu/index.d.ts.map +1 -0
  175. package/dist/modules/file/catalog.d.ts +3 -0
  176. package/dist/modules/file/catalog.d.ts.map +1 -0
  177. package/dist/modules/file/commands.d.ts +3 -0
  178. package/dist/modules/file/commands.d.ts.map +1 -0
  179. package/dist/modules/file/fileDialogs.d.ts +3 -0
  180. package/dist/modules/file/fileDialogs.d.ts.map +1 -0
  181. package/dist/modules/file/index.d.ts +4 -0
  182. package/dist/modules/file/index.d.ts.map +1 -0
  183. package/dist/modules/file/printHtml.d.ts +2 -0
  184. package/dist/modules/file/printHtml.d.ts.map +1 -0
  185. package/dist/modules/format/ColorField.d.ts +11 -0
  186. package/dist/modules/format/ColorField.d.ts.map +1 -0
  187. package/dist/modules/format/ColorPicker.d.ts +13 -0
  188. package/dist/modules/format/ColorPicker.d.ts.map +1 -0
  189. package/dist/modules/format/ColorSelect.d.ts +16 -0
  190. package/dist/modules/format/ColorSelect.d.ts.map +1 -0
  191. package/dist/modules/format/CustomParagraphStyleDialog.d.ts +21 -0
  192. package/dist/modules/format/CustomParagraphStyleDialog.d.ts.map +1 -0
  193. package/dist/modules/format/FontColorSelect.d.ts +3 -0
  194. package/dist/modules/format/FontColorSelect.d.ts.map +1 -0
  195. package/dist/modules/format/FontFamilyList.d.ts +16 -0
  196. package/dist/modules/format/FontFamilyList.d.ts.map +1 -0
  197. package/dist/modules/format/FontFamilySelect.d.ts +15 -0
  198. package/dist/modules/format/FontFamilySelect.d.ts.map +1 -0
  199. package/dist/modules/format/FontPropertiesDialog.d.ts +24 -0
  200. package/dist/modules/format/FontPropertiesDialog.d.ts.map +1 -0
  201. package/dist/modules/format/FontPropertiesFields.d.ts +12 -0
  202. package/dist/modules/format/FontPropertiesFields.d.ts.map +1 -0
  203. package/dist/modules/format/FontSizeCombobox.d.ts +13 -0
  204. package/dist/modules/format/FontSizeCombobox.d.ts.map +1 -0
  205. package/dist/modules/format/FontSizeSelect.d.ts +3 -0
  206. package/dist/modules/format/FontSizeSelect.d.ts.map +1 -0
  207. package/dist/modules/format/HighlightColorSelect.d.ts +4 -0
  208. package/dist/modules/format/HighlightColorSelect.d.ts.map +1 -0
  209. package/dist/modules/format/LengthField.d.ts +12 -0
  210. package/dist/modules/format/LengthField.d.ts.map +1 -0
  211. package/dist/modules/format/PagePropertiesDialog.d.ts +14 -0
  212. package/dist/modules/format/PagePropertiesDialog.d.ts.map +1 -0
  213. package/dist/modules/format/ParagraphPropertiesDialog.d.ts +12 -0
  214. package/dist/modules/format/ParagraphPropertiesDialog.d.ts.map +1 -0
  215. package/dist/modules/format/ParagraphPropertiesFields.d.ts +13 -0
  216. package/dist/modules/format/ParagraphPropertiesFields.d.ts.map +1 -0
  217. package/dist/modules/format/ParagraphStyleList.d.ts +22 -0
  218. package/dist/modules/format/ParagraphStyleList.d.ts.map +1 -0
  219. package/dist/modules/format/ParagraphStyleSelect.d.ts +4 -0
  220. package/dist/modules/format/ParagraphStyleSelect.d.ts.map +1 -0
  221. package/dist/modules/format/ShadowFields.d.ts +8 -0
  222. package/dist/modules/format/ShadowFields.d.ts.map +1 -0
  223. package/dist/modules/format/catalog.d.ts +3 -0
  224. package/dist/modules/format/catalog.d.ts.map +1 -0
  225. package/dist/modules/format/colorModel.d.ts +22 -0
  226. package/dist/modules/format/colorModel.d.ts.map +1 -0
  227. package/dist/modules/format/colorPalette.d.ts +3 -0
  228. package/dist/modules/format/colorPalette.d.ts.map +1 -0
  229. package/dist/modules/format/commands.d.ts +4 -0
  230. package/dist/modules/format/commands.d.ts.map +1 -0
  231. package/dist/modules/format/fontDialog.d.ts +9 -0
  232. package/dist/modules/format/fontDialog.d.ts.map +1 -0
  233. package/dist/modules/format/fontSize.d.ts +2 -0
  234. package/dist/modules/format/fontSize.d.ts.map +1 -0
  235. package/dist/modules/format/index.d.ts +3 -0
  236. package/dist/modules/format/index.d.ts.map +1 -0
  237. package/dist/modules/format/pageDialog.d.ts +9 -0
  238. package/dist/modules/format/pageDialog.d.ts.map +1 -0
  239. package/dist/modules/format/paragraphDialog.d.ts +9 -0
  240. package/dist/modules/format/paragraphDialog.d.ts.map +1 -0
  241. package/dist/modules/history/catalog.d.ts +3 -0
  242. package/dist/modules/history/catalog.d.ts.map +1 -0
  243. package/dist/modules/history/commands.d.ts +4 -0
  244. package/dist/modules/history/commands.d.ts.map +1 -0
  245. package/dist/modules/history/history.d.ts +15 -0
  246. package/dist/modules/history/history.d.ts.map +1 -0
  247. package/dist/modules/history/index.d.ts +5 -0
  248. package/dist/modules/history/index.d.ts.map +1 -0
  249. package/dist/modules/insert/BookmarkDialog.d.ts +9 -0
  250. package/dist/modules/insert/BookmarkDialog.d.ts.map +1 -0
  251. package/dist/modules/insert/ImageDialog.d.ts +12 -0
  252. package/dist/modules/insert/ImageDialog.d.ts.map +1 -0
  253. package/dist/modules/insert/ImagePropertiesDialog.d.ts +13 -0
  254. package/dist/modules/insert/ImagePropertiesDialog.d.ts.map +1 -0
  255. package/dist/modules/insert/ImagePropertiesFields.d.ts +11 -0
  256. package/dist/modules/insert/ImagePropertiesFields.d.ts.map +1 -0
  257. package/dist/modules/insert/ImageResizeOverlay.d.ts +7 -0
  258. package/dist/modules/insert/ImageResizeOverlay.d.ts.map +1 -0
  259. package/dist/modules/insert/ImageSizeField.d.ts +10 -0
  260. package/dist/modules/insert/ImageSizeField.d.ts.map +1 -0
  261. package/dist/modules/insert/LinkDialog.d.ts +22 -0
  262. package/dist/modules/insert/LinkDialog.d.ts.map +1 -0
  263. package/dist/modules/insert/catalog.d.ts +3 -0
  264. package/dist/modules/insert/catalog.d.ts.map +1 -0
  265. package/dist/modules/insert/commands.d.ts +4 -0
  266. package/dist/modules/insert/commands.d.ts.map +1 -0
  267. package/dist/modules/insert/imagePropertiesDialog.d.ts +9 -0
  268. package/dist/modules/insert/imagePropertiesDialog.d.ts.map +1 -0
  269. package/dist/modules/insert/index.d.ts +3 -0
  270. package/dist/modules/insert/index.d.ts.map +1 -0
  271. package/dist/modules/table/CellPropertiesDialog.d.ts +10 -0
  272. package/dist/modules/table/CellPropertiesDialog.d.ts.map +1 -0
  273. package/dist/modules/table/CellPropertiesFields.d.ts +8 -0
  274. package/dist/modules/table/CellPropertiesFields.d.ts.map +1 -0
  275. package/dist/modules/table/RowPropertiesDialog.d.ts +10 -0
  276. package/dist/modules/table/RowPropertiesDialog.d.ts.map +1 -0
  277. package/dist/modules/table/RowPropertiesFields.d.ts +8 -0
  278. package/dist/modules/table/RowPropertiesFields.d.ts.map +1 -0
  279. package/dist/modules/table/TableDialog.d.ts +9 -0
  280. package/dist/modules/table/TableDialog.d.ts.map +1 -0
  281. package/dist/modules/table/TablePropertiesDialog.d.ts +10 -0
  282. package/dist/modules/table/TablePropertiesDialog.d.ts.map +1 -0
  283. package/dist/modules/table/TablePropertiesFields.d.ts +8 -0
  284. package/dist/modules/table/TablePropertiesFields.d.ts.map +1 -0
  285. package/dist/modules/table/catalog.d.ts +3 -0
  286. package/dist/modules/table/catalog.d.ts.map +1 -0
  287. package/dist/modules/table/commands.d.ts +4 -0
  288. package/dist/modules/table/commands.d.ts.map +1 -0
  289. package/dist/modules/table/index.d.ts +3 -0
  290. package/dist/modules/table/index.d.ts.map +1 -0
  291. package/dist/modules/view/catalog.d.ts +3 -0
  292. package/dist/modules/view/catalog.d.ts.map +1 -0
  293. package/dist/modules/view/commands.d.ts +4 -0
  294. package/dist/modules/view/commands.d.ts.map +1 -0
  295. package/dist/modules/view/index.d.ts +3 -0
  296. package/dist/modules/view/index.d.ts.map +1 -0
  297. package/dist/toolbar/EditorToolbar.d.ts +14 -0
  298. package/dist/toolbar/EditorToolbar.d.ts.map +1 -0
  299. package/dist/toolbar/IconNav.d.ts +12 -0
  300. package/dist/toolbar/IconNav.d.ts.map +1 -0
  301. package/dist/toolbar/MenuBar.d.ts +18 -0
  302. package/dist/toolbar/MenuBar.d.ts.map +1 -0
  303. package/dist/toolbar/ScrollChevronIcons.d.ts +4 -0
  304. package/dist/toolbar/ScrollChevronIcons.d.ts.map +1 -0
  305. package/dist/toolbar/Tooltip.d.ts +11 -0
  306. package/dist/toolbar/Tooltip.d.ts.map +1 -0
  307. package/dist/toolbar/defaultCatalog.d.ts +4 -0
  308. package/dist/toolbar/defaultCatalog.d.ts.map +1 -0
  309. package/dist/toolbar/defaultLayout.d.ts +3 -0
  310. package/dist/toolbar/defaultLayout.d.ts.map +1 -0
  311. package/dist/toolbar/index.d.ts +7 -0
  312. package/dist/toolbar/index.d.ts.map +1 -0
  313. package/dist/toolbar/overflow.d.ts +7 -0
  314. package/dist/toolbar/overflow.d.ts.map +1 -0
  315. package/dist/toolbar/resolveChrome.d.ts +12 -0
  316. package/dist/toolbar/resolveChrome.d.ts.map +1 -0
  317. package/dist/toolbar/types.d.ts +65 -0
  318. package/dist/toolbar/types.d.ts.map +1 -0
  319. package/dist/toolbar/useIconNavOverflow.d.ts +9 -0
  320. package/dist/toolbar/useIconNavOverflow.d.ts.map +1 -0
  321. package/dist/types.d.ts +186 -0
  322. package/dist/types.d.ts.map +1 -0
  323. package/package.json +53 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIconNavOverflow.d.ts","sourceRoot":"","sources":["../../src/toolbar/useIconNavOverflow.ts"],"names":[],"mappings":"AAKA,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,OAAO;;;;;;;EAqDrD"}
@@ -0,0 +1,186 @@
1
+ import { ComponentType } from 'react';
2
+ import { FontSizeUnit } from './core/fontSizeUnits';
3
+ import { FontFace } from './core/fontFamily';
4
+ import { ListType } from './core/lists';
5
+ import { FontMarkState } from './core/marks';
6
+ import { BoxSides, CssLength, LineHeightValue, ParagraphBorder, ParagraphShadow } from './core/paragraphBox';
7
+ import { TextAlign } from './core/textAlign';
8
+ import { Locale } from './i18n/types';
9
+ import { IconProps } from './icons';
10
+ export type { BoxSides, CssLength, LineHeightValue, ParagraphBorder, ParagraphShadow, };
11
+ export type CustomFont = FontFace;
12
+ export type { Locale };
13
+ export type EditorMode = 'visual' | 'html';
14
+ export type CustomActionShowIn = 'menu' | 'toolbar' | 'both';
15
+ export type CustomActionSelection = {
16
+ /** Selected plain text, or an empty string when the caret is collapsed */
17
+ text: string;
18
+ collapsed: boolean;
19
+ /** Visual: offset in `textContent`. HTML: textarea index. */
20
+ start: number;
21
+ end: number;
22
+ };
23
+ export type CustomActionApi = {
24
+ mode: EditorMode;
25
+ selection: CustomActionSelection;
26
+ getHtml: () => string;
27
+ /** Replace the entire document */
28
+ setHtml: (html: string) => void;
29
+ /**
30
+ * Insert HTML at the caret, or replace the selection.
31
+ * Pass `formattedText` to insert visible text instead of parsing markup.
32
+ */
33
+ insertHtml: (html: string, formattedText?: string) => void;
34
+ /** Insert formatted text at the caret, or replace the selection */
35
+ insertText: (text: string) => void;
36
+ };
37
+ export type CustomAction = {
38
+ id: string;
39
+ /** Visible name (menu item text; also tooltip and aria fallback) */
40
+ label: string;
41
+ /** Toolbar tooltip. Defaults to `label`. */
42
+ tooltip?: string;
43
+ /** Optional icon. Defaults to the built-in custom-action icon. */
44
+ icon?: ComponentType<IconProps>;
45
+ showIn: CustomActionShowIn;
46
+ /**
47
+ * Menu placement. Ignored when `showIn` is `'toolbar'`.
48
+ * Built-in ids: `'file'` | `'edit'` | `'view'`. Other ids create a new top-level menu.
49
+ * Default: `'custom'`.
50
+ */
51
+ menu?: {
52
+ id?: string;
53
+ label?: string;
54
+ };
55
+ /**
56
+ * Toolbar group. Ignored when `showIn` is `'menu'`.
57
+ * Built-in ids: `'file'` | `'edit'` | `'view'`. Other ids create a group at the end.
58
+ * Default: `'custom'`.
59
+ */
60
+ toolbarGroup?: string;
61
+ onAction: (api: CustomActionApi) => void | Promise<void>;
62
+ };
63
+ export type EditorBorder = {
64
+ /** CSS border-width. Default `1px`. */
65
+ width?: string;
66
+ /** CSS border-color. Default `#d0d0d0`. */
67
+ color?: string;
68
+ /** CSS border-radius. Default `6px`. */
69
+ radius?: string;
70
+ /** CSS box-shadow, or `'none'`. Default none. */
71
+ shadow?: string | 'none';
72
+ };
73
+ export type CustomParagraphStyleFont = {
74
+ size: number | null;
75
+ unit: FontSizeUnit;
76
+ marks: FontMarkState;
77
+ fontFamily: string | null;
78
+ fontColor: string | null;
79
+ highlightColor: string | null;
80
+ };
81
+ export type CustomParagraphStyleParagraph = {
82
+ align?: TextAlign;
83
+ list?: ListType | null;
84
+ margin?: BoxSides;
85
+ padding?: BoxSides;
86
+ lineHeight?: LineHeightValue | null;
87
+ border?: ParagraphBorder;
88
+ borderRadius?: CssLength | null;
89
+ boxShadow?: ParagraphShadow | null;
90
+ backgroundColor?: string | null;
91
+ opacity?: number | null;
92
+ };
93
+ export type CustomParagraphStyle = {
94
+ id: string;
95
+ name: string;
96
+ font: CustomParagraphStyleFont;
97
+ paragraph?: CustomParagraphStyleParagraph;
98
+ };
99
+ export type CustomImageInsert = {
100
+ /** http(s), relative path, or raster data URL */
101
+ src: string;
102
+ alt?: string;
103
+ title?: string;
104
+ /** Extra inline CSS on the inserted `<img>` */
105
+ css?: string;
106
+ };
107
+ export type CustomImagePicker = {
108
+ /** Third source / navigation button label (host copy) */
109
+ text: string;
110
+ description: string;
111
+ buttonCaption: string;
112
+ /**
113
+ * Called when the custom source button is clicked, or when
114
+ * `disableBuiltinImageInsert` is set and Insert → Image runs.
115
+ * Call `insertImage` when the host picker finishes.
116
+ */
117
+ onPick: (insertImage: (image: CustomImageInsert) => void) => void;
118
+ };
119
+ export type EditorProps = {
120
+ value?: string;
121
+ defaultValue?: string;
122
+ onChange?: (html: string) => void;
123
+ mode?: EditorMode;
124
+ defaultMode?: EditorMode;
125
+ onModeChange?: (mode: EditorMode) => void;
126
+ fullscreen?: boolean;
127
+ defaultFullscreen?: boolean;
128
+ onFullscreenChange?: (fullscreen: boolean) => void;
129
+ placeholder?: string;
130
+ disabled?: boolean;
131
+ className?: string;
132
+ locale?: Locale;
133
+ toolbarBackground?: string;
134
+ /** CSS color for menu bar text and dropdown items. Default `#444`. */
135
+ menuColor?: string;
136
+ /** CSS color for the menu bar row and dropdown panel. Default `#fff`. */
137
+ menuBackground?: string;
138
+ /** CSS font-size for menu bar triggers and dropdown items. Default `0.875rem`. */
139
+ menuFontSize?: string;
140
+ /**
141
+ * CSS font-family for menus. Default inherits `system-ui, sans-serif`.
142
+ * The host must load any webfont before passing its family name.
143
+ */
144
+ menuFontFamily?: string;
145
+ /**
146
+ * Outer border of the editor box. `'none'` removes width, radius, and shadow.
147
+ * Object fields are independent; omitted fields keep library defaults.
148
+ * Ignored while the editor is in fullscreen overlay.
149
+ */
150
+ border?: 'none' | EditorBorder;
151
+ menuVisible?: boolean;
152
+ toolbarVisible?: boolean;
153
+ customActions?: CustomAction[];
154
+ /**
155
+ * Extra document font faces appended after the built-in web-safe list.
156
+ * Duplicate `family` values are ignored. Optional `css` stylesheet URLs are
157
+ * loaded in the editor and prepended to exported HTML when that face is used.
158
+ */
159
+ customFonts?: CustomFont[];
160
+ /**
161
+ * Optional map over document HTML before it is stored and passed to `onChange`.
162
+ * Runs on every edit (visual, HTML source, open, insert, `setHtml`).
163
+ * Does not run for the inbound `value` / `defaultValue`.
164
+ */
165
+ transformHtml?: (html: string) => string;
166
+ /**
167
+ * Load host-persisted custom paragraph styles. Called on mount and after save/delete.
168
+ * Custom styles and “Add new” stay hidden unless this and `onSaveCustomParagraphStyle` are both set.
169
+ */
170
+ loadCustomParagraphStyles?: () => CustomParagraphStyle[] | Promise<CustomParagraphStyle[]>;
171
+ /** Persist a created or edited custom paragraph style. Name is always trimmed and non-empty. */
172
+ onSaveCustomParagraphStyle?: (style: CustomParagraphStyle) => void | Promise<void>;
173
+ /** Persist deletion of a custom paragraph style. The Delete button is shown only when this is set. */
174
+ onDeleteCustomParagraphStyle?: (id: string) => void | Promise<void>;
175
+ /**
176
+ * Optional third Insert image source. Omit to keep File and URL only.
177
+ * Host copy (`text`, `description`, `buttonCaption`) is not translated.
178
+ */
179
+ customImagePicker?: CustomImagePicker;
180
+ /**
181
+ * Skip the Insert image dialog and call `customImagePicker.onPick` from the
182
+ * toolbar or Insert menu. Has no effect unless `customImagePicker` is set.
183
+ */
184
+ disableBuiltinImageInsert?: boolean;
185
+ };
186
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,53 @@
1
+ {
2
+ "name": "commspliant-html-editor",
3
+ "version": "0.0.1",
4
+ "description": "Reusable React WYSIWYG editor with visual and HTML modes",
5
+ "type": "module",
6
+ "main": "./dist/index.cjs",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.js",
13
+ "require": "./dist/index.cjs"
14
+ },
15
+ "./styles.css": "./dist/commspliant-html-editor.css"
16
+ },
17
+ "files": ["dist"],
18
+ "sideEffects": ["**/*.css"],
19
+ "scripts": {
20
+ "dev": "vite --config playground/vite.config.ts",
21
+ "build": "vite build --config playground/vite.config.ts",
22
+ "build:lib": "vite build",
23
+ "build:playground": "vite build --config playground/vite.config.ts",
24
+ "preview": "vite preview --config playground/vite.config.ts",
25
+ "storybook": "storybook dev -p 6006",
26
+ "build-storybook": "storybook build",
27
+ "test": "vitest run",
28
+ "test:watch": "vitest"
29
+ },
30
+ "peerDependencies": {
31
+ "react": "^18.0.0",
32
+ "react-dom": "^18.0.0"
33
+ },
34
+ "devDependencies": {
35
+ "@storybook/react": "^8.6.14",
36
+ "@storybook/react-vite": "^8.6.14",
37
+ "@testing-library/jest-dom": "^6.6.3",
38
+ "@testing-library/react": "^16.2.0",
39
+ "@testing-library/user-event": "^14.6.1",
40
+ "@types/node": "^22.13.10",
41
+ "@types/react": "^18.3.18",
42
+ "@types/react-dom": "^18.3.5",
43
+ "@vitejs/plugin-react": "^4.3.4",
44
+ "jsdom": "^26.0.0",
45
+ "react": "^18.3.1",
46
+ "react-dom": "^18.3.1",
47
+ "storybook": "^8.6.14",
48
+ "typescript": "^5.7.3",
49
+ "vite": "^6.2.2",
50
+ "vite-plugin-dts": "^4.5.3",
51
+ "vitest": "^3.0.8"
52
+ }
53
+ }