@pie-lib/editable-html-tip-tap 2.1.2-next.31 → 2.1.2-next.34

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 (276) hide show
  1. package/CHANGELOG.json +32 -0
  2. package/CHANGELOG.md +2532 -0
  3. package/LICENSE.md +5 -0
  4. package/lib/components/CharacterPicker.js +201 -0
  5. package/lib/components/CharacterPicker.js.map +1 -0
  6. package/lib/components/EditableHtml.js +376 -0
  7. package/lib/components/EditableHtml.js.map +1 -0
  8. package/lib/components/MenuBar.js +696 -0
  9. package/lib/components/MenuBar.js.map +1 -0
  10. package/lib/components/TiptapContainer.js +234 -0
  11. package/lib/components/TiptapContainer.js.map +1 -0
  12. package/lib/components/characters/characterUtils.js +378 -0
  13. package/lib/components/characters/characterUtils.js.map +1 -0
  14. package/lib/components/characters/custom-popper.js +44 -0
  15. package/lib/components/characters/custom-popper.js.map +1 -0
  16. package/lib/components/common/done-button.js +34 -0
  17. package/lib/components/common/done-button.js.map +1 -0
  18. package/lib/components/common/toolbar-buttons.js +144 -0
  19. package/lib/components/common/toolbar-buttons.js.map +1 -0
  20. package/lib/components/icons/CssIcon.js +25 -0
  21. package/lib/components/icons/CssIcon.js.map +1 -0
  22. package/lib/components/icons/RespArea.js +72 -0
  23. package/lib/components/icons/RespArea.js.map +1 -0
  24. package/lib/components/icons/TableIcons.js +53 -0
  25. package/lib/components/icons/TableIcons.js.map +1 -0
  26. package/lib/components/icons/TextAlign.js +157 -0
  27. package/lib/components/icons/TextAlign.js.map +1 -0
  28. package/lib/components/image/AltDialog.js +98 -0
  29. package/lib/components/image/AltDialog.js.map +1 -0
  30. package/lib/components/image/ImageToolbar.js +137 -0
  31. package/lib/components/image/ImageToolbar.js.map +1 -0
  32. package/lib/components/image/InsertImageHandler.js +135 -0
  33. package/lib/components/image/InsertImageHandler.js.map +1 -0
  34. package/lib/components/media/MediaDialog.js +594 -0
  35. package/lib/components/media/MediaDialog.js.map +1 -0
  36. package/lib/components/media/MediaToolbar.js +74 -0
  37. package/lib/components/media/MediaToolbar.js.map +1 -0
  38. package/lib/components/media/MediaWrapper.js +67 -0
  39. package/lib/components/media/MediaWrapper.js.map +1 -0
  40. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +84 -0
  41. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -0
  42. package/lib/components/respArea/DragInTheBlank/choice.js +250 -0
  43. package/lib/components/respArea/DragInTheBlank/choice.js.map +1 -0
  44. package/lib/components/respArea/ExplicitConstructedResponse.js +136 -0
  45. package/lib/components/respArea/ExplicitConstructedResponse.js.map +1 -0
  46. package/lib/components/respArea/InlineDropdown.js +209 -0
  47. package/lib/components/respArea/InlineDropdown.js.map +1 -0
  48. package/lib/components/respArea/MathTemplated.js +130 -0
  49. package/lib/components/respArea/MathTemplated.js.map +1 -0
  50. package/lib/components/respArea/ToolbarIcon.js +81 -0
  51. package/lib/components/respArea/ToolbarIcon.js.map +1 -0
  52. package/lib/components/respArea/inlineDropdownUtils.js +67 -0
  53. package/lib/components/respArea/inlineDropdownUtils.js.map +1 -0
  54. package/lib/constants.js +11 -0
  55. package/lib/constants.js.map +1 -0
  56. package/lib/extensions/css.js +217 -0
  57. package/lib/extensions/css.js.map +1 -0
  58. package/lib/extensions/custom-toolbar-wrapper.js +92 -0
  59. package/lib/extensions/custom-toolbar-wrapper.js.map +1 -0
  60. package/lib/extensions/div-node.js +83 -0
  61. package/lib/extensions/div-node.js.map +1 -0
  62. package/lib/extensions/ensure-empty-root-div.js +48 -0
  63. package/lib/extensions/ensure-empty-root-div.js.map +1 -0
  64. package/lib/extensions/ensure-list-item-content-is-div.js +64 -0
  65. package/lib/extensions/ensure-list-item-content-is-div.js.map +1 -0
  66. package/lib/extensions/extended-list-item.js +15 -0
  67. package/lib/extensions/extended-list-item.js.map +1 -0
  68. package/lib/extensions/extended-table-cell.js +22 -0
  69. package/lib/extensions/extended-table-cell.js.map +1 -0
  70. package/lib/extensions/extended-table.js +75 -0
  71. package/lib/extensions/extended-table.js.map +1 -0
  72. package/lib/extensions/heading-paragraph.js +61 -0
  73. package/lib/extensions/heading-paragraph.js.map +1 -0
  74. package/lib/extensions/image-component.js +348 -0
  75. package/lib/extensions/image-component.js.map +1 -0
  76. package/lib/extensions/image.js +134 -0
  77. package/lib/extensions/image.js.map +1 -0
  78. package/lib/extensions/index.js +46 -0
  79. package/lib/extensions/index.js.map +1 -0
  80. package/lib/extensions/math.js +342 -0
  81. package/lib/extensions/math.js.map +1 -0
  82. package/lib/extensions/media.js +243 -0
  83. package/lib/extensions/media.js.map +1 -0
  84. package/lib/extensions/responseArea.js +446 -0
  85. package/lib/extensions/responseArea.js.map +1 -0
  86. package/lib/index.js +37 -0
  87. package/lib/index.js.map +1 -0
  88. package/lib/styles/editorContainerStyles.js +137 -0
  89. package/lib/styles/editorContainerStyles.js.map +1 -0
  90. package/lib/theme.js +8 -0
  91. package/lib/theme.js.map +1 -0
  92. package/lib/utils/helper.js +73 -0
  93. package/lib/utils/helper.js.map +1 -0
  94. package/lib/utils/size.js +26 -0
  95. package/lib/utils/size.js.map +1 -0
  96. package/package.json +24 -40
  97. package/src/__tests__/EditableHtml.test.jsx +554 -0
  98. package/src/__tests__/constants.test.js +19 -0
  99. package/src/__tests__/div-to-paragraph-conversion.test.jsx +125 -0
  100. package/src/__tests__/extensions.test.js +208 -0
  101. package/src/__tests__/index.test.jsx +154 -0
  102. package/src/__tests__/size-utils.test.js +64 -0
  103. package/src/__tests__/theme.test.js +17 -0
  104. package/src/components/CharacterPicker.jsx +207 -0
  105. package/src/components/EditableHtml.jsx +440 -0
  106. package/src/components/MenuBar.jsx +554 -0
  107. package/src/components/TiptapContainer.jsx +219 -0
  108. package/src/components/__tests__/AltDialog.test.jsx +147 -0
  109. package/src/components/__tests__/CharacterPicker.test.jsx +261 -0
  110. package/src/components/__tests__/CssIcon.test.jsx +46 -0
  111. package/src/components/__tests__/DragInTheBlank.test.jsx +255 -0
  112. package/src/components/__tests__/ExplicitConstructedResponse.test.jsx +204 -0
  113. package/src/components/__tests__/ImageToolbar.test.jsx +128 -0
  114. package/src/components/__tests__/InlineDropdown.test.jsx +388 -0
  115. package/src/components/__tests__/InsertImageHandler.test.js +161 -0
  116. package/src/components/__tests__/MediaDialog.test.jsx +293 -0
  117. package/src/components/__tests__/MediaToolbar.test.jsx +74 -0
  118. package/src/components/__tests__/MediaWrapper.test.jsx +81 -0
  119. package/src/components/__tests__/MenuBar.test.jsx +250 -0
  120. package/src/components/__tests__/RespArea.test.jsx +122 -0
  121. package/src/components/__tests__/TableIcons.test.jsx +149 -0
  122. package/src/components/__tests__/TextAlign.test.jsx +167 -0
  123. package/src/components/__tests__/TiptapContainer.test.jsx +138 -0
  124. package/src/components/__tests__/characterUtils.test.js +166 -0
  125. package/src/components/__tests__/choice.test.jsx +171 -0
  126. package/src/components/__tests__/custom-popper.test.jsx +82 -0
  127. package/src/components/__tests__/done-button.test.jsx +54 -0
  128. package/src/components/__tests__/toolbar-buttons.test.jsx +234 -0
  129. package/src/components/characters/characterUtils.js +447 -0
  130. package/src/components/characters/custom-popper.js +38 -0
  131. package/src/components/common/done-button.jsx +27 -0
  132. package/src/components/common/toolbar-buttons.jsx +122 -0
  133. package/src/components/icons/CssIcon.jsx +15 -0
  134. package/src/components/icons/RespArea.jsx +71 -0
  135. package/src/components/icons/TableIcons.jsx +52 -0
  136. package/src/components/icons/TextAlign.jsx +114 -0
  137. package/src/components/image/AltDialog.jsx +82 -0
  138. package/src/components/image/ImageToolbar.jsx +99 -0
  139. package/src/components/image/InsertImageHandler.js +107 -0
  140. package/src/components/media/MediaDialog.jsx +596 -0
  141. package/src/components/media/MediaToolbar.jsx +49 -0
  142. package/src/components/media/MediaWrapper.jsx +39 -0
  143. package/src/components/respArea/DragInTheBlank/DragInTheBlank.jsx +76 -0
  144. package/src/components/respArea/DragInTheBlank/choice.jsx +256 -0
  145. package/src/components/respArea/ExplicitConstructedResponse.jsx +135 -0
  146. package/src/components/respArea/InlineDropdown.jsx +220 -0
  147. package/src/components/respArea/MathTemplated.jsx +124 -0
  148. package/src/components/respArea/ToolbarIcon.jsx +66 -0
  149. package/src/components/respArea/__tests__/MathTemplated.test.jsx +210 -0
  150. package/src/components/respArea/inlineDropdownUtils.js +79 -0
  151. package/src/constants.js +5 -0
  152. package/src/extensions/__tests__/css.test.js +196 -0
  153. package/src/extensions/__tests__/custom-toolbar-wrapper.test.jsx +180 -0
  154. package/src/extensions/__tests__/divNode.test.js +87 -0
  155. package/src/extensions/__tests__/ensure-empty-root-div.test.js +57 -0
  156. package/src/extensions/__tests__/ensure-list-item-content-is-div.test.js +44 -0
  157. package/src/extensions/__tests__/extended-list-item.test.js +13 -0
  158. package/src/extensions/__tests__/extended-table-cell.test.js +22 -0
  159. package/src/extensions/__tests__/extended-table.test.js +183 -0
  160. package/src/extensions/__tests__/image-component.test.jsx +345 -0
  161. package/src/extensions/__tests__/image.test.js +237 -0
  162. package/src/extensions/__tests__/math.test.js +603 -0
  163. package/src/extensions/__tests__/media-node-view.test.jsx +298 -0
  164. package/src/extensions/__tests__/media.test.js +271 -0
  165. package/src/extensions/__tests__/responseArea.test.js +601 -0
  166. package/src/extensions/css.js +220 -0
  167. package/src/extensions/custom-toolbar-wrapper.jsx +78 -0
  168. package/src/extensions/div-node.js +86 -0
  169. package/src/extensions/ensure-empty-root-div.js +47 -0
  170. package/src/extensions/ensure-list-item-content-is-div.js +62 -0
  171. package/src/extensions/extended-list-item.js +10 -0
  172. package/src/extensions/extended-table-cell.js +19 -0
  173. package/src/extensions/extended-table.js +60 -0
  174. package/src/extensions/heading-paragraph.js +53 -0
  175. package/src/extensions/image-component.jsx +338 -0
  176. package/src/extensions/image.js +109 -0
  177. package/src/extensions/index.js +81 -0
  178. package/src/extensions/math.js +326 -0
  179. package/src/extensions/media.js +188 -0
  180. package/src/extensions/responseArea.js +401 -0
  181. package/src/index.jsx +5 -0
  182. package/src/styles/editorContainerStyles.js +145 -0
  183. package/src/theme.js +1 -0
  184. package/src/utils/__tests__/helper.test.js +126 -0
  185. package/src/utils/helper.js +69 -0
  186. package/src/utils/size.js +32 -0
  187. package/dist/components/CharacterPicker.d.ts +0 -31
  188. package/dist/components/CharacterPicker.js +0 -131
  189. package/dist/components/EditableHtml.d.ts +0 -11
  190. package/dist/components/EditableHtml.js +0 -291
  191. package/dist/components/MenuBar.d.ts +0 -11
  192. package/dist/components/MenuBar.js +0 -462
  193. package/dist/components/TiptapContainer.d.ts +0 -11
  194. package/dist/components/TiptapContainer.js +0 -154
  195. package/dist/components/characters/characterUtils.d.ts +0 -35
  196. package/dist/components/characters/characterUtils.js +0 -465
  197. package/dist/components/characters/custom-popper.d.ts +0 -14
  198. package/dist/components/characters/custom-popper.js +0 -32
  199. package/dist/components/common/done-button.d.ts +0 -30
  200. package/dist/components/common/done-button.js +0 -26
  201. package/dist/components/common/toolbar-buttons.d.ts +0 -38
  202. package/dist/components/common/toolbar-buttons.js +0 -91
  203. package/dist/components/icons/CssIcon.d.ts +0 -11
  204. package/dist/components/icons/CssIcon.js +0 -14
  205. package/dist/components/icons/RespArea.d.ts +0 -26
  206. package/dist/components/icons/RespArea.js +0 -42
  207. package/dist/components/icons/TableIcons.d.ts +0 -14
  208. package/dist/components/icons/TableIcons.js +0 -32
  209. package/dist/components/icons/TextAlign.d.ts +0 -18
  210. package/dist/components/icons/TextAlign.js +0 -134
  211. package/dist/components/image/AltDialog.d.ts +0 -22
  212. package/dist/components/image/AltDialog.js +0 -61
  213. package/dist/components/image/ImageToolbar.d.ts +0 -24
  214. package/dist/components/image/ImageToolbar.js +0 -80
  215. package/dist/components/image/InsertImageHandler.d.ts +0 -32
  216. package/dist/components/image/InsertImageHandler.js +0 -53
  217. package/dist/components/media/MediaDialog.d.ts +0 -43
  218. package/dist/components/media/MediaDialog.js +0 -389
  219. package/dist/components/media/MediaToolbar.d.ts +0 -19
  220. package/dist/components/media/MediaToolbar.js +0 -41
  221. package/dist/components/media/MediaWrapper.d.ts +0 -19
  222. package/dist/components/respArea/DragInTheBlank/DragInTheBlank.d.ts +0 -23
  223. package/dist/components/respArea/DragInTheBlank/DragInTheBlank.js +0 -58
  224. package/dist/components/respArea/DragInTheBlank/choice.d.ts +0 -56
  225. package/dist/components/respArea/DragInTheBlank/choice.js +0 -156
  226. package/dist/components/respArea/ExplicitConstructedResponse.d.ts +0 -20
  227. package/dist/components/respArea/ExplicitConstructedResponse.js +0 -83
  228. package/dist/components/respArea/InlineDropdown.d.ts +0 -18
  229. package/dist/components/respArea/InlineDropdown.js +0 -119
  230. package/dist/components/respArea/MathTemplated.d.ts +0 -19
  231. package/dist/components/respArea/MathTemplated.js +0 -97
  232. package/dist/components/respArea/ToolbarIcon.d.ts +0 -14
  233. package/dist/components/respArea/ToolbarIcon.js +0 -17
  234. package/dist/components/respArea/inlineDropdownUtils.d.ts +0 -15
  235. package/dist/components/respArea/inlineDropdownUtils.js +0 -15
  236. package/dist/constants.d.ts +0 -13
  237. package/dist/constants.js +0 -4
  238. package/dist/extensions/css.d.ts +0 -11
  239. package/dist/extensions/css.js +0 -115
  240. package/dist/extensions/custom-toolbar-wrapper.d.ts +0 -11
  241. package/dist/extensions/custom-toolbar-wrapper.js +0 -61
  242. package/dist/extensions/div-node.d.ts +0 -10
  243. package/dist/extensions/div-node.js +0 -42
  244. package/dist/extensions/ensure-empty-root-div.d.ts +0 -14
  245. package/dist/extensions/ensure-empty-root-div.js +0 -24
  246. package/dist/extensions/ensure-list-item-content-is-div.d.ts +0 -15
  247. package/dist/extensions/ensure-list-item-content-is-div.js +0 -31
  248. package/dist/extensions/extended-list-item.d.ts +0 -13
  249. package/dist/extensions/extended-list-item.js +0 -5
  250. package/dist/extensions/extended-table-cell.d.ts +0 -10
  251. package/dist/extensions/extended-table-cell.js +0 -6
  252. package/dist/extensions/extended-table.d.ts +0 -17
  253. package/dist/extensions/extended-table.js +0 -34
  254. package/dist/extensions/heading-paragraph.d.ts +0 -17
  255. package/dist/extensions/heading-paragraph.js +0 -30
  256. package/dist/extensions/image-component.d.ts +0 -22
  257. package/dist/extensions/image-component.js +0 -220
  258. package/dist/extensions/image.d.ts +0 -10
  259. package/dist/extensions/image.js +0 -68
  260. package/dist/extensions/index.d.ts +0 -16
  261. package/dist/extensions/index.js +0 -64
  262. package/dist/extensions/math.d.ts +0 -15
  263. package/dist/extensions/math.js +0 -158
  264. package/dist/extensions/media.d.ts +0 -19
  265. package/dist/extensions/media.js +0 -149
  266. package/dist/extensions/responseArea.d.ts +0 -27
  267. package/dist/extensions/responseArea.js +0 -259
  268. package/dist/index.d.ts +0 -13
  269. package/dist/index.js +0 -7
  270. package/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js +0 -16
  271. package/dist/styles/editorContainerStyles.d.ts +0 -134
  272. package/dist/theme.d.ts +0 -9
  273. package/dist/utils/helper.d.ts +0 -9
  274. package/dist/utils/helper.js +0 -27
  275. package/dist/utils/size.d.ts +0 -9
  276. package/dist/utils/size.js +0 -14
@@ -1,462 +0,0 @@
1
- import { PIE_TOOLBAR__CLASS as e } from "../constants.js";
2
- import { DoneButton as t } from "./common/done-button.js";
3
- import n from "../node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js";
4
- import { ToolbarIcon as r } from "./respArea/ToolbarIcon.js";
5
- import { spanishConfig as i, specialConfig as a } from "./characters/characterUtils.js";
6
- import o from "./icons/TextAlign.js";
7
- import s from "./icons/CssIcon.js";
8
- import { AddColumn as c, AddRow as l, RemoveColumn as u, RemoveRow as d, RemoveTable as f } from "./icons/TableIcons.js";
9
- import { CharacterIcon as p, CharacterPicker as m } from "./CharacterPicker.js";
10
- import { useMemo as h, useState as g } from "react";
11
- import { useEditorState as _ } from "@tiptap/react";
12
- import { styled as v, useTheme as y } from "@mui/material/styles";
13
- import { NodeSelection as b } from "prosemirror-state";
14
- import x from "@mui/icons-material/Delete";
15
- import { jsx as S, jsxs as C } from "react/jsx-runtime";
16
- import w from "@mui/icons-material/FormatBold";
17
- import T from "@mui/icons-material/FormatItalic";
18
- import E from "@mui/icons-material/FormatStrikethrough";
19
- import D from "@mui/icons-material/Code";
20
- import O from "@mui/icons-material/GridOn";
21
- import k from "@mui/icons-material/FormatListBulleted";
22
- import A from "@mui/icons-material/FormatListNumbered";
23
- import j from "@mui/icons-material/FormatUnderlined";
24
- import M from "@mui/icons-material/Functions";
25
- import N from "@mui/icons-material/Image";
26
- import P from "@mui/icons-material/Redo";
27
- import F from "@mui/icons-material/Undo";
28
- import ee from "@mui/icons-material/FormatQuote";
29
- import I from "@mui/icons-material/Theaters";
30
- import L from "@mui/icons-material/VolumeUp";
31
- import R from "@mui/icons-material/BorderAll";
32
- //#region src/components/MenuBar.tsx
33
- var z = () => /* @__PURE__ */ S("svg", {
34
- xmlns: "http://www.w3.org/2000/svg",
35
- height: "24px",
36
- viewBox: "0 0 24 24",
37
- width: "24px",
38
- fill: "none",
39
- children: /* @__PURE__ */ S("path", {
40
- d: "M22,7h-2v1h3v1h-4V7c0-0.55,0.45-1,1-1h2V5h-3V4h3c0.55,0,1,0.45,1,1v1C23,6.55,22.55,7,22,7z M5.88,20h2.66l3.4-5.42h0.12 l3.4,5.42h2.66l-4.65-7.27L17.81,6h-2.68l-3.07,4.99h-0.12L8.85,6H6.19l4.32,6.73L5.88,20z",
41
- fill: "currentColor"
42
- })
43
- }), B = () => /* @__PURE__ */ S("svg", {
44
- xmlns: "http://www.w3.org/2000/svg",
45
- height: "24px",
46
- viewBox: "0 0 24 24",
47
- width: "24px",
48
- fill: "none",
49
- children: /* @__PURE__ */ S("path", {
50
- d: "M22,18h-2v1h3v1h-4v-2c0-0.55,0.45-1,1-1h2v-1h-3v-1h3c0.55,0,1,0.45,1,1v1C23,17.55,22.55,18,22,18z M5.88,18h2.66 l3.4-5.42h0.12l3.4,5.42h2.66l-4.65-7.27L17.81,4h-2.68l-3.07,4.99h-0.12L8.85,4H6.19l4.32,6.73L5.88,18z",
51
- fill: "currentColor"
52
- })
53
- }), V = () => /* @__PURE__ */ S("svg", {
54
- width: "30",
55
- height: "28",
56
- viewBox: "0 0 30 28",
57
- fill: "none",
58
- xmlns: "http://www.w3.org/2000/svg",
59
- style: {
60
- width: "20px",
61
- height: "18px"
62
- },
63
- children: /* @__PURE__ */ S("path", {
64
- d: "M27 4V24H29C29.5 24 30 24.5 30 25V27C30 27.5625 29.5 28 29 28H19C18.4375 28 18 27.5625 18 27V25C18 24.5 18.4375 24 19 24H21V16H9V24H11C11.5 24 12 24.5 12 25V27C12 27.5625 11.5 28 11 28H1C0.4375 28 0 27.5625 0 27V25C0 24.5 0.4375 24 1 24H3V4H1C0.4375 4 0 3.5625 0 3V1C0 0.5 0.4375 0 1 0H11C11.5 0 12 0.5 12 1V3C12 3.5625 11.5 4 11 4H9V12H21V4H19C18.4375 4 18 3.5625 18 3V1C18 0.5 18.4375 0 19 0H29C29.5 0 30 0.5 30 1V3C30 3.5625 29.5 4 29 4H27Z",
65
- fill: "currentColor"
66
- })
67
- });
68
- function H({ editor: v, classes: y, activePlugins: H, toolbarOpts: U, responseAreaProps: W, onChange: G, autoWidthToolbar: K }) {
69
- let [q, J] = g(!1), Y = U ?? {}, X = _({
70
- editor: v,
71
- selector: (e) => {
72
- let { selection: t } = e.editor?.state || {}, n;
73
- if (!e.editor?.commandManager) return {};
74
- t instanceof b && (n = t.node);
75
- let r = e.editor?.isActive("math") || e.editor?.isActive("explicit_constructed_response") || e.editor?.isActive("imageUploadNode") || e.editor?.isActive("drag_in_the_blank"), i = t && t.empty === !1 && e.editor.isActive("table");
76
- return {
77
- currentNode: n,
78
- hideDefaultToolbar: r,
79
- hasTextSelectionInTable: i,
80
- isFocused: e.editor?.isFocused,
81
- isBold: e.editor.isActive("bold") ?? !1,
82
- canBold: e.editor.can().chain().toggleBold().run() ?? !1,
83
- isTable: e.editor.isActive("table") ?? !1,
84
- tableHasBorder: e.editor.getAttributes("table")?.border === "1",
85
- canTable: e.editor.can().chain().insertTable().run() ?? !1,
86
- isItalic: e.editor.isActive("italic") ?? !1,
87
- canItalic: e.editor.can().chain().toggleItalic().run() ?? !1,
88
- isStrike: e.editor.isActive("strike") ?? !1,
89
- canStrike: e.editor.can().chain().toggleStrike().run() ?? !1,
90
- isCode: e.editor.isActive("code") ?? !1,
91
- canCode: e.editor.can().chain().toggleCode().run() ?? !1,
92
- canClearMarks: e.editor.can().chain().unsetAllMarks().run() ?? !1,
93
- isUnderline: e.editor.isActive("underline") ?? !1,
94
- isSubScript: e.editor.isActive("subscript") ?? !1,
95
- isSuperScript: e.editor.isActive("superscript") ?? !1,
96
- isParagraph: e.editor.isActive("paragraph") ?? !1,
97
- isHeading1: e.editor.isActive("heading", { level: 1 }) ?? !1,
98
- isHeading2: e.editor.isActive("heading", { level: 2 }) ?? !1,
99
- isHeading3: e.editor.isActive("heading", { level: 3 }) ?? !1,
100
- isHeadingParagraph: e.editor.isActive("headingParagraph") ?? !1,
101
- isHeading4: e.editor.isActive("heading", { level: 4 }) ?? !1,
102
- isHeading5: e.editor.isActive("heading", { level: 5 }) ?? !1,
103
- isHeading6: e.editor.isActive("heading", { level: 6 }) ?? !1,
104
- isBulletList: e.editor.isActive("bulletList") ?? !1,
105
- isOrderedList: e.editor.isActive("orderedList") ?? !1,
106
- isCodeBlock: e.editor.isActive("codeBlock") ?? !1,
107
- isBlockquote: e.editor.isActive("blockquote") ?? !1,
108
- canUndo: e.editor.can().chain().undo().run() ?? !1,
109
- canRedo: e.editor.can().chain().redo().run() ?? !1
110
- };
111
- }
112
- }), Z = !!K, Q = n(y.toolbar, e, {
113
- [y.toolbarWithNoDone]: !0,
114
- [y.toolbarTop]: Y.position === "top",
115
- [y.toolbarRight]: Y.alignment === "right",
116
- [y.focused]: Y.alwaysVisible || X.isFocused && !v._toolbarOpened && !X.hideDefaultToolbar,
117
- [y.autoWidth]: Z,
118
- [y.fullWidth]: !Z,
119
- [y.hidden]: Y.isHidden === !0
120
- }), $ = Y.minWidth === void 0 ? {} : { minWidth: Y.minWidth }, te = (e) => {
121
- e.preventDefault();
122
- }, ne = h(() => [
123
- {
124
- icon: /* @__PURE__ */ S(O, {}),
125
- onClick: (e) => e.chain().focus().insertTable({
126
- rows: 2,
127
- cols: 2,
128
- withHeaderRow: !1
129
- }).run(),
130
- hidden: (e) => !H?.includes("table") || e.isTable,
131
- isActive: (e) => e.isTable,
132
- isDisabled: (e) => !e.canTable
133
- },
134
- {
135
- icon: /* @__PURE__ */ S(l, {}),
136
- onClick: (e) => e.chain().focus().addRowAfter().run(),
137
- hidden: (e) => !(e.isTable && !e.hasTextSelectionInTable),
138
- isActive: (e) => e.isTable,
139
- isDisabled: (e) => !e.canTable
140
- },
141
- {
142
- icon: /* @__PURE__ */ S(d, {}),
143
- onClick: (e) => e.chain().focus().deleteRow().run(),
144
- hidden: (e) => !(e.isTable && !e.hasTextSelectionInTable),
145
- isActive: (e) => e.isTable,
146
- isDisabled: (e) => !e.canTable
147
- },
148
- {
149
- icon: /* @__PURE__ */ S(c, {}),
150
- onClick: (e) => e.chain().focus().addColumnAfter().run(),
151
- hidden: (e) => !(e.isTable && !e.hasTextSelectionInTable),
152
- isActive: (e) => e.isTable,
153
- isDisabled: (e) => !e.canTable
154
- },
155
- {
156
- icon: /* @__PURE__ */ S(u, {}),
157
- onClick: (e) => e.chain().focus().deleteColumn().run(),
158
- hidden: (e) => !(e.isTable && !e.hasTextSelectionInTable),
159
- isActive: (e) => e.isTable,
160
- isDisabled: (e) => !e.canTable
161
- },
162
- {
163
- icon: /* @__PURE__ */ S(f, {}),
164
- onClick: (e) => e.chain().focus().deleteTable().run(),
165
- hidden: (e) => !(e.isTable && !e.hasTextSelectionInTable),
166
- isActive: (e) => e.isTable,
167
- isDisabled: (e) => !e.canTable
168
- },
169
- {
170
- icon: /* @__PURE__ */ S(R, {}),
171
- onClick: (e) => {
172
- let t = e.getAttributes("table"), n = {
173
- ...t,
174
- border: t.border === "0" ? "1" : "0"
175
- };
176
- e.commands.updateAttributes("table", n);
177
- },
178
- hidden: (e) => !(e.isTable && !e.hasTextSelectionInTable),
179
- isActive: (e) => e.tableHasBorder,
180
- isDisabled: (e) => !e.canTable
181
- },
182
- {
183
- icon: /* @__PURE__ */ S(w, {}),
184
- onClick: (e) => e.chain().focus().toggleBold().run(),
185
- hidden: () => !H?.includes("bold"),
186
- isActive: (e) => e.isBold,
187
- isDisabled: (e) => !e.canBold
188
- },
189
- {
190
- icon: /* @__PURE__ */ S(T, {}),
191
- onClick: (e) => e.chain().focus().toggleItalic().run(),
192
- hidden: () => !H?.includes("italic"),
193
- isActive: (e) => e.isItalic,
194
- isDisabled: (e) => !e.canItalic
195
- },
196
- {
197
- icon: /* @__PURE__ */ S(E, {}),
198
- onClick: (e) => e.chain().focus().toggleStrike().run(),
199
- hidden: () => !H?.includes("strikethrough"),
200
- isActive: (e) => e.isStrike,
201
- isDisabled: (e) => !e.canStrike
202
- },
203
- {
204
- icon: /* @__PURE__ */ S(D, {}),
205
- onClick: (e) => e.chain().focus().toggleCode().run(),
206
- hidden: () => !H?.includes("code"),
207
- isActive: (e) => e.isCode,
208
- isDisabled: (e) => !e.canCode
209
- },
210
- {
211
- icon: /* @__PURE__ */ S(j, {}),
212
- onClick: (e) => e.chain().focus().toggleUnderline().run(),
213
- hidden: () => !H?.includes("underline"),
214
- isActive: (e) => e.isUnderline
215
- },
216
- {
217
- icon: /* @__PURE__ */ S(B, {}),
218
- onClick: (e) => e.chain().focus().toggleSubscript().run(),
219
- hidden: () => !H?.includes("subscript"),
220
- isActive: (e) => e.isSubScript
221
- },
222
- {
223
- icon: /* @__PURE__ */ S(z, {}),
224
- onClick: (e) => e.chain().focus().toggleSuperscript().run(),
225
- hidden: () => !H?.includes("superscript"),
226
- isActive: (e) => e.isSuperScript
227
- },
228
- {
229
- icon: /* @__PURE__ */ S(N, {}),
230
- hidden: () => !H?.includes("image"),
231
- onClick: (e) => e.chain().focus().setImageUploadNode().run()
232
- },
233
- {
234
- icon: /* @__PURE__ */ S(I, {}),
235
- hidden: () => !H?.includes("video"),
236
- onClick: (e) => e.chain().focus().insertMedia({ type: "video" }).run()
237
- },
238
- {
239
- icon: /* @__PURE__ */ S(L, {}),
240
- hidden: () => !H?.includes("audio"),
241
- onClick: (e) => e.chain().focus().insertMedia({
242
- type: "audio",
243
- tag: "audio"
244
- }).run()
245
- },
246
- {
247
- icon: /* @__PURE__ */ S(s, {}),
248
- hidden: () => !H?.includes("css"),
249
- onClick: (e) => e.commands.openCSSClassDialog()
250
- },
251
- {
252
- icon: /* @__PURE__ */ S(ee, {}),
253
- hidden: () => !H?.includes("blockquote"),
254
- onClick: (e) => e.chain().focus().toggleBlockquote().run(),
255
- isActive: (e) => e.isBlockquote
256
- },
257
- {
258
- icon: /* @__PURE__ */ S(V, {}),
259
- hidden: () => !H?.includes("h3"),
260
- onClick: (e) => e.chain().focus().toggleHeadingParagraph().run(),
261
- isActive: (e) => e.isHeadingParagraph
262
- },
263
- {
264
- icon: /* @__PURE__ */ S(M, {}),
265
- hidden: () => !H?.includes("math"),
266
- onClick: (e) => e.chain().focus().insertMath("").run()
267
- },
268
- {
269
- icon: /* @__PURE__ */ S(p, { letter: "ñ" }),
270
- hidden: () => !H?.includes("languageCharacters"),
271
- onClick: () => J(i)
272
- },
273
- {
274
- icon: /* @__PURE__ */ S(p, { letter: "€" }),
275
- hidden: () => H?.filter((e) => e === "languageCharacters").length !== 2,
276
- onClick: () => J(a)
277
- },
278
- {
279
- icon: /* @__PURE__ */ S(o, { editor: v }),
280
- hidden: () => !H?.includes("text-align"),
281
- onClick: () => {}
282
- },
283
- {
284
- icon: /* @__PURE__ */ S(k, {}),
285
- hidden: () => !H?.includes("bulleted-list"),
286
- onClick: (e) => e.chain().focus().toggleBulletList().run(),
287
- isActive: (e) => e.isBulletList
288
- },
289
- {
290
- icon: /* @__PURE__ */ S(A, {}),
291
- hidden: () => !H?.includes("numbered-list"),
292
- onClick: (e) => e.chain().focus().toggleOrderedList().run(),
293
- isActive: (e) => e.isOrderedList
294
- },
295
- {
296
- icon: /* @__PURE__ */ S(F, {}),
297
- hidden: () => !H?.includes("undo"),
298
- onClick: (e) => e.chain().focus().undo().run(),
299
- isDisabled: (e) => !e.canUndo
300
- },
301
- {
302
- icon: /* @__PURE__ */ S(P, {}),
303
- hidden: () => !H?.includes("redo"),
304
- onClick: (e) => e.chain().focus().redo().run(),
305
- isDisabled: (e) => !e.canRedo
306
- }
307
- ], [H, v]), re = X.hideDefaultToolbar && X.currentNode?.type?.name === "drag_in_the_blank";
308
- return /* @__PURE__ */ C("div", {
309
- className: Q,
310
- style: { ...$ },
311
- onMouseDown: te,
312
- children: [
313
- re && /* @__PURE__ */ S("div", {
314
- className: y.defaultToolbar,
315
- tabIndex: "1",
316
- children: /* @__PURE__ */ S("div", {
317
- className: y.buttonsContainer,
318
- children: /* @__PURE__ */ S("button", {
319
- type: "button",
320
- className: y.button,
321
- onClick: (e) => {
322
- e.preventDefault(), v.chain().focus().deleteSelection().run(), G?.(v.getHTML());
323
- },
324
- "aria-label": "Delete response area",
325
- children: /* @__PURE__ */ S(x, {})
326
- })
327
- })
328
- }),
329
- !X.hideDefaultToolbar && /* @__PURE__ */ C("div", {
330
- className: y.defaultToolbar,
331
- tabIndex: "1",
332
- children: [
333
- /* @__PURE__ */ S("div", {
334
- className: y.buttonsContainer,
335
- children: ne.filter((e) => !e.hidden?.(X)).map((e, t) => {
336
- let r = e.isDisabled?.(X), i = e.isActive?.(X);
337
- return /* @__PURE__ */ S("button", {
338
- disabled: r,
339
- onClick: (t) => {
340
- t.preventDefault(), e.onClick(v);
341
- },
342
- className: n(y.button, { [y.active]: i }),
343
- children: e.icon
344
- }, t);
345
- })
346
- }),
347
- H?.includes("responseArea") && /* @__PURE__ */ S("button", {
348
- onClick: () => {
349
- v.chain().focus().insertResponseArea(W.type).run();
350
- },
351
- className: y.button,
352
- children: /* @__PURE__ */ S(r, {})
353
- }),
354
- Y.showDone && /* @__PURE__ */ S(t, { onClick: () => {
355
- G?.(v.getHTML()), v.commands.blur();
356
- } })
357
- ]
358
- }),
359
- q && /* @__PURE__ */ S(m, {
360
- editor: v,
361
- opts: {
362
- ...q,
363
- renderPopOver: (e, t) => console.log("Show popover", t),
364
- closePopOver: () => console.log("Close popover")
365
- },
366
- onClose: () => J(!1)
367
- })
368
- ]
369
- });
370
- }
371
- var U = (e) => {
372
- y();
373
- let t = {
374
- defaultToolbar: "defaultToolbar",
375
- buttonsContainer: "buttonsContainer",
376
- button: "button",
377
- active: "active",
378
- disabled: "disabled",
379
- isActive: "isActive",
380
- toolbar: "toolbar",
381
- toolbarWithNoDone: "toolbarWithNoDone",
382
- toolbarTop: "toolbarTop",
383
- toolbarRight: "toolbarRight",
384
- fullWidth: "fullWidth",
385
- hidden: "hidden",
386
- autoWidth: "autoWidth",
387
- focused: "focused",
388
- iconRoot: "iconRoot",
389
- label: "label",
390
- shared: "shared"
391
- };
392
- return /* @__PURE__ */ S(W, { children: /* @__PURE__ */ S(H, {
393
- ...e,
394
- classes: t
395
- }) });
396
- }, W = v("div")(({ theme: e }) => ({
397
- "& .defaultToolbar": {
398
- display: "flex",
399
- width: "100%",
400
- justifyContent: "space-between"
401
- },
402
- "& .buttonsContainer": {
403
- alignItems: "center",
404
- display: "flex",
405
- width: "100%"
406
- },
407
- "& .button": {
408
- color: "grey",
409
- display: "inline-flex",
410
- padding: "2px",
411
- background: "none",
412
- border: "none",
413
- cursor: "pointer",
414
- "&:hover": { color: "black" },
415
- "&:focus": { outline: `2px solid ${e.palette.grey[700]}` }
416
- },
417
- "& .active": { color: "black" },
418
- "& .disabled": {
419
- opacity: .7,
420
- cursor: "not-allowed",
421
- "& :hover": { color: "grey" }
422
- },
423
- "& .isActive": {
424
- background: "var(--purple)",
425
- color: "var(--white)"
426
- },
427
- "& .toolbar": {
428
- position: "absolute",
429
- zIndex: 20,
430
- cursor: "pointer",
431
- justifyContent: "space-between",
432
- background: "var(--editable-html-toolbar-bg, #efefef)",
433
- minWidth: "280px",
434
- margin: "5px 0 0 0",
435
- padding: "2px",
436
- boxShadow: "0px 1px 5px 0px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 3px 1px -2px rgba(0, 0, 0, 0.12)",
437
- boxSizing: "border-box",
438
- display: "flex",
439
- opacity: 0,
440
- pointerEvents: "none"
441
- },
442
- "& .toolbarWithNoDone": { minWidth: "265px" },
443
- "& .toolbarTop": { top: "-45px" },
444
- "& .toolbarRight": { right: 0 },
445
- "& .fullWidth": { width: "100%" },
446
- "& .hidden": { visibility: "hidden" },
447
- "& .autoWidth": { width: "auto" },
448
- "& .focused": {
449
- opacity: 1,
450
- pointerEvents: "auto"
451
- },
452
- "& .iconRoot": {
453
- width: "28px",
454
- height: "28px",
455
- padding: "4px",
456
- verticalAlign: "top"
457
- },
458
- "& .label": { color: "var(--editable-html-toolbar-check, #00bb00)" },
459
- "& .shared": { display: "flex" }
460
- }));
461
- //#endregion
462
- export { U as default };
@@ -1,11 +0,0 @@
1
- /**
2
- * @synced-from pie-lib/packages/editable-html-tip-tap/src/components/TiptapContainer.jsx
3
- * @auto-generated
4
- *
5
- * This file is automatically synced from pie-elements and converted to TypeScript.
6
- * Manual edits will be overwritten on next sync.
7
- * To make changes, edit the upstream JavaScript file and run sync again.
8
- */
9
- import React from 'react';
10
- declare function TiptapContainer(props: any): React.JSX.Element;
11
- export default TiptapContainer;
@@ -1,154 +0,0 @@
1
- import { valueToSize as e } from "../utils/size.js";
2
- import t from "./MenuBar.js";
3
- import { useEffect as n, useMemo as r, useRef as i, useState as a } from "react";
4
- import { styled as o } from "@mui/material/styles";
5
- import { jsx as s, jsxs as c } from "react/jsx-runtime";
6
- import { color as l } from "@pie-lib/render-ui";
7
- //#region src/components/TiptapContainer.tsx
8
- var u = o("div", { shouldForwardProp: (e) => !["noBorder", "error"].includes(e) })(({ theme: e, noBorder: t, error: n }) => ({
9
- position: "relative",
10
- padding: "0px",
11
- border: t ? "none" : "1px solid #ccc",
12
- borderRadius: "4px",
13
- cursor: "text",
14
- "& [data-slate-editor=\"true\"]": {
15
- wordBreak: "break-word",
16
- overflow: "visible",
17
- maxHeight: "500px",
18
- padding: "5px"
19
- },
20
- "&:first-child": { marginTop: 0 },
21
- "& ul, & ol": {
22
- padding: "0 1rem",
23
- margin: "1.25rem 1rem 1.25rem 0.4rem"
24
- },
25
- "& ul li p, & ol li p": {
26
- marginTop: "0.25em",
27
- marginBottom: "0.25em"
28
- },
29
- "& h1, & h2, & h3, & h4, & h5, & h6": {
30
- lineHeight: 1.1,
31
- marginTop: "2.5rem",
32
- textWrap: "pretty"
33
- },
34
- "& h1, & h2": {
35
- marginTop: "3.5rem",
36
- marginBottom: "1.5rem"
37
- },
38
- "& h1": { fontSize: "1.4rem" },
39
- "& h2": { fontSize: "1.2rem" },
40
- "& h3": { fontSize: "1.1rem" },
41
- "& h4, & h5, & h6": { fontSize: "1rem" },
42
- "& code": {
43
- backgroundColor: "var(--purple-light)",
44
- borderRadius: "0.4rem",
45
- color: "var(--black)",
46
- fontSize: "0.85rem",
47
- padding: "0.25em 0.3em"
48
- },
49
- "& pre": {
50
- background: "var(--black)",
51
- borderRadius: "0.5rem",
52
- color: "var(--white)",
53
- fontFamily: "'JetBrainsMono', monospace",
54
- margin: "1.5rem 0",
55
- padding: "0.75rem 1rem",
56
- "& code": {
57
- background: "none",
58
- color: "inherit",
59
- fontSize: "0.8rem",
60
- padding: 0
61
- }
62
- },
63
- "& blockquote": {
64
- background: "#f9f9f9",
65
- borderLeft: "5px solid #ccc",
66
- margin: "1.5em 10px",
67
- padding: ".5em 10px"
68
- },
69
- "& p": { margin: "0" },
70
- "& table": {
71
- tableLayout: "fixed",
72
- width: "100%",
73
- borderCollapse: "collapse",
74
- color: l.text(),
75
- backgroundColor: l.background()
76
- },
77
- "& table:not([border=\"1\"]) tr": { borderTop: "1px solid #dfe2e5" },
78
- "& td, th": {
79
- padding: ".6em 1em",
80
- textAlign: "center"
81
- },
82
- "& table:not([border=\"1\"]) td, th": { border: "1px solid #dfe2e5" },
83
- ...n && { border: `2px solid ${e.palette.error.main} !important` }
84
- })), d = o("div", { shouldForwardProp: (e) => !["disableScrollbar", "highlightShape"].includes(e) })(({ theme: e, disableScrollbar: t, highlightShape: n }) => ({
85
- position: "relative",
86
- padding: "0px",
87
- overflowY: "auto",
88
- color: l.text(),
89
- backgroundColor: n ? e.palette.action.selected : l.background(),
90
- ...t && {
91
- "&::-webkit-scrollbar": { display: "none" },
92
- scrollbarWidth: "none",
93
- "-ms-overflow-style": "none"
94
- }
95
- })), f = o("div", { shouldForwardProp: (e) => e !== "noPadding" })(({ noPadding: e }) => ({ padding: e ? 0 : "10px 8px" }));
96
- function p(o) {
97
- let [l, p] = a(null), m = i(null), { editor: h, disabled: g, children: _, disableScrollbar: v, activePlugins: y, toolbarOpts: b, responseAreaProps: x, autoFocus: S, minWidth: C, width: w, maxWidth: T, minHeight: E, height: D, maxHeight: O, highlightShape: k, ref: A } = o;
98
- n(() => {
99
- h && m.current && (h._tiptapContainerEl = m.current);
100
- }, [h, m.current]), n(() => {
101
- h && S && Promise.resolve().then(() => {
102
- h.commands.focus("end");
103
- });
104
- }, [h, S]), n(() => {
105
- if (o.adjustWidthForLimit) {
106
- let e = document.createElement("p");
107
- e.style.visibility = "hidden", e.style.position = "absolute", e.textContent = "W".repeat(o.charactersLimit), m.current.appendChild(e), p(`${e.offsetWidth + 27}px`), e.remove();
108
- }
109
- }, [o.adjustWidthForLimit, o.charactersLimit]);
110
- let j = r(() => ({
111
- width: e(l || w),
112
- minWidth: e(C),
113
- maxWidth: e(T),
114
- height: e(D),
115
- minHeight: e(E),
116
- maxHeight: e(O)
117
- }), [
118
- l,
119
- C,
120
- w,
121
- T,
122
- E,
123
- D,
124
- O
125
- ]);
126
- return /* @__PURE__ */ c(u, {
127
- noBorder: b && b.noBorder,
128
- error: b && b.error,
129
- className: o.className,
130
- style: {
131
- width: j.width,
132
- minWidth: j.minWidth,
133
- maxWidth: j.maxWidth
134
- },
135
- ref: m,
136
- children: [/* @__PURE__ */ s(d, {
137
- disableScrollbar: v,
138
- highlightShape: k,
139
- children: /* @__PURE__ */ s(f, {
140
- noPadding: b && b.noPadding,
141
- children: _
142
- })
143
- }), h && /* @__PURE__ */ s(t, {
144
- editor: h,
145
- responseAreaProps: x,
146
- toolbarOpts: b,
147
- activePlugins: y,
148
- onChange: o.onChange,
149
- autoWidthToolbar: o.autoWidthToolbar
150
- })]
151
- });
152
- }
153
- //#endregion
154
- export { p as default };
@@ -1,35 +0,0 @@
1
- /**
2
- * @synced-from pie-lib/packages/editable-html-tip-tap/src/components/characters/characterUtils.js
3
- * @auto-generated
4
- *
5
- * This file is automatically synced from pie-elements and converted to TypeScript.
6
- * Manual edits will be overwritten on next sync.
7
- * To make changes, edit the upstream JavaScript file and run sync again.
8
- */
9
- export declare const spanishConfig: {
10
- characters: string[][];
11
- };
12
- export declare const specialConfig: {
13
- hasPreview: boolean;
14
- characters: ({
15
- unicode: string;
16
- description: string;
17
- write: string;
18
- label: string;
19
- extraProps?: undefined;
20
- } | {
21
- unicode: string;
22
- description: string;
23
- write: string;
24
- label: string;
25
- extraProps: {
26
- style: {
27
- gridRow: string;
28
- };
29
- };
30
- })[][];
31
- };
32
- export declare const characterIcons: {
33
- spanish: string;
34
- special: string;
35
- };