@milkdown/crepe 7.5.0 → 7.5.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 (197) hide show
  1. package/lib/cjs/{index--tnUmqZ_.js → index--2zEz40J.js} +8 -23
  2. package/lib/cjs/{index--tnUmqZ_.js.map → index--2zEz40J.js.map} +1 -1
  3. package/lib/cjs/{index-92bwto5V.js → index-5n9R-QCl.js} +5 -20
  4. package/lib/cjs/{index-92bwto5V.js.map → index-5n9R-QCl.js.map} +1 -1
  5. package/lib/cjs/{index-HH5lPgpj.js → index-HEdBw63r.js} +8 -23
  6. package/lib/cjs/{index-HH5lPgpj.js.map → index-HEdBw63r.js.map} +1 -1
  7. package/lib/cjs/{index-J1-yHn7v.js → index-Hlt9dRH5.js} +5 -20
  8. package/lib/cjs/{index-J1-yHn7v.js.map → index-Hlt9dRH5.js.map} +1 -1
  9. package/lib/cjs/{index-cb-5m0vG.js → index-KCW2CzRk.js} +8 -23
  10. package/lib/cjs/index-KCW2CzRk.js.map +1 -0
  11. package/lib/cjs/{index-VYwHTL3F.js → index-KSZhahYb.js} +6 -21
  12. package/lib/cjs/{index-VYwHTL3F.js.map → index-KSZhahYb.js.map} +1 -1
  13. package/lib/cjs/index-N1cRxqdw.js +39 -0
  14. package/lib/cjs/index-N1cRxqdw.js.map +1 -0
  15. package/lib/cjs/{index-c_OzudR7.js → index-NNo_VSEA.js} +5 -20
  16. package/lib/{esm/index-DS7Z4Ach.js.map → cjs/index-NNo_VSEA.js.map} +1 -1
  17. package/lib/cjs/{index-Tjg8KyK7.js → index-O1bDbloo.js} +5 -20
  18. package/lib/{esm/index-eqd5wtjX.js.map → cjs/index-O1bDbloo.js.map} +1 -1
  19. package/lib/cjs/{index-55VIM-52.js → index-OPh9naof.js} +8 -23
  20. package/lib/cjs/{index-55VIM-52.js.map → index-OPh9naof.js.map} +1 -1
  21. package/lib/cjs/{index-E4Ist86Z.js → index-PAhfZtcH.js} +5 -20
  22. package/lib/cjs/{index-E4Ist86Z.js.map → index-PAhfZtcH.js.map} +1 -1
  23. package/lib/cjs/{index-vfzLCXfi.js → index-PeRHVz4A.js} +5 -20
  24. package/lib/{esm/index-3bDzhU6z.js.map → cjs/index-PeRHVz4A.js.map} +1 -1
  25. package/lib/cjs/{index-Jztk6JlP.js → index-U7GWrg-w.js} +9 -456
  26. package/lib/cjs/index-U7GWrg-w.js.map +1 -0
  27. package/lib/cjs/{index-zXSAHvAj.js → index-UTb0Az5e.js} +2 -2
  28. package/lib/cjs/{index-zXSAHvAj.js.map → index-UTb0Az5e.js.map} +1 -1
  29. package/lib/cjs/{index-lBumFRUQ.js → index-UnEAyH8X.js} +5 -20
  30. package/lib/cjs/{index-lBumFRUQ.js.map → index-UnEAyH8X.js.map} +1 -1
  31. package/lib/cjs/{index-1vHyMXH8.js → index-VCkq0ru1.js} +5 -20
  32. package/lib/{esm/index-g_3dzLYU.js.map → cjs/index-VCkq0ru1.js.map} +1 -1
  33. package/lib/cjs/{index-FbNqlZU8.js → index-WQl7Du53.js} +4 -19
  34. package/lib/cjs/index-WQl7Du53.js.map +1 -0
  35. package/lib/cjs/{index-nTfDKYYi.js → index-ahL5MvrQ.js} +28 -43
  36. package/lib/cjs/{index-nTfDKYYi.js.map → index-ahL5MvrQ.js.map} +1 -1
  37. package/lib/cjs/{index--sa4NMpW.js → index-bpgWLeRY.js} +5 -20
  38. package/lib/cjs/{index--sa4NMpW.js.map → index-bpgWLeRY.js.map} +1 -1
  39. package/lib/cjs/index-dEVmN_aj.js +26 -0
  40. package/lib/cjs/index-dEVmN_aj.js.map +1 -0
  41. package/lib/cjs/{index-von4W2LG.js → index-fZupvR_f.js} +8 -23
  42. package/lib/{esm/index-NZ5-xr5_.js.map → cjs/index-fZupvR_f.js.map} +1 -1
  43. package/lib/cjs/{index-mcxgNBq9.js → index-gSM-jgti.js} +5 -20
  44. package/lib/cjs/{index-mcxgNBq9.js.map → index-gSM-jgti.js.map} +1 -1
  45. package/lib/cjs/{index-lUNj3xuC.js → index-jlPr_A_N.js} +5 -20
  46. package/lib/cjs/{index-lUNj3xuC.js.map → index-jlPr_A_N.js.map} +1 -1
  47. package/lib/cjs/index-ocxd4A-M.js +675 -0
  48. package/lib/cjs/index-ocxd4A-M.js.map +1 -0
  49. package/lib/cjs/{index-J3XY9IPt.js → index-rFFAL9YA.js} +9 -17
  50. package/lib/cjs/{index-J3XY9IPt.js.map → index-rFFAL9YA.js.map} +1 -1
  51. package/lib/cjs/index-tlx25I_m.js +36 -0
  52. package/lib/cjs/index-tlx25I_m.js.map +1 -0
  53. package/lib/cjs/index-tqAbVyds.js +28 -0
  54. package/lib/cjs/index-tqAbVyds.js.map +1 -0
  55. package/lib/cjs/{index-cpC-j5Nt.js → index-udZSknd8.js} +30 -39
  56. package/lib/cjs/{index-cpC-j5Nt.js.map → index-udZSknd8.js.map} +1 -1
  57. package/lib/cjs/index-uleaJDBC.js +19 -0
  58. package/lib/cjs/index-uleaJDBC.js.map +1 -0
  59. package/lib/cjs/{index-jn036wuh.js → index-urB-WDqA.js} +7 -22
  60. package/lib/{esm/index-VoX_n1l_.js.map → cjs/index-urB-WDqA.js.map} +1 -1
  61. package/lib/cjs/{index-jlfsu92T.js → index-xWgWtxUR.js} +6 -21
  62. package/lib/cjs/{index-jlfsu92T.js.map → index-xWgWtxUR.js.map} +1 -1
  63. package/lib/cjs/index.js +150 -14
  64. package/lib/cjs/index.js.map +1 -1
  65. package/lib/cjs/{todoList-Ze4FLMlx.js → todoList-YYRQo7wG.js} +1 -12
  66. package/lib/cjs/todoList-YYRQo7wG.js.map +1 -0
  67. package/lib/esm/{index-Yuj7sNhQ.js → index-1NetiFdJ.js} +8 -23
  68. package/lib/esm/{index-Yuj7sNhQ.js.map → index-1NetiFdJ.js.map} +1 -1
  69. package/lib/esm/{index-6GrVnloh.js → index-2I_xbjAZ.js} +28 -43
  70. package/lib/esm/{index-6GrVnloh.js.map → index-2I_xbjAZ.js.map} +1 -1
  71. package/lib/esm/{index-bexsWrgs.js → index-2huXYfuJ.js} +8 -23
  72. package/lib/esm/{index-bexsWrgs.js.map → index-2huXYfuJ.js.map} +1 -1
  73. package/lib/esm/{index-zrQXXSXm.js → index-4x6_TVZv.js} +5 -20
  74. package/lib/esm/{index-zrQXXSXm.js.map → index-4x6_TVZv.js.map} +1 -1
  75. package/lib/esm/index-6JoGWH2I.js +17 -0
  76. package/lib/esm/index-6JoGWH2I.js.map +1 -0
  77. package/lib/esm/{index-OpUb5xP6.js → index-A-dNwMMf.js} +2 -2
  78. package/lib/esm/{index-OpUb5xP6.js.map → index-A-dNwMMf.js.map} +1 -1
  79. package/lib/esm/{index-SDPCpsD5.js → index-AV99ipmP.js} +5 -20
  80. package/lib/esm/{index-SDPCpsD5.js.map → index-AV99ipmP.js.map} +1 -1
  81. package/lib/esm/{index-MB6wQe1U.js → index-CMGDOz11.js} +5 -13
  82. package/lib/esm/{index-MB6wQe1U.js.map → index-CMGDOz11.js.map} +1 -1
  83. package/lib/esm/index-HlPKwzLC.js +34 -0
  84. package/lib/esm/index-HlPKwzLC.js.map +1 -0
  85. package/lib/esm/{index-MxgqkRtj.js → index-PC2bahtq.js} +5 -20
  86. package/lib/esm/{index-MxgqkRtj.js.map → index-PC2bahtq.js.map} +1 -1
  87. package/lib/esm/{index-eqd5wtjX.js → index-QBYz82jZ.js} +5 -20
  88. package/lib/{cjs/index-Tjg8KyK7.js.map → esm/index-QBYz82jZ.js.map} +1 -1
  89. package/lib/esm/{index-VP76m4nW.js → index-W1pAMr_8.js} +6 -21
  90. package/lib/esm/{index-VP76m4nW.js.map → index-W1pAMr_8.js.map} +1 -1
  91. package/lib/esm/{index-i79QMXpJ.js → index-Xzdc2jbA.js} +7 -454
  92. package/lib/esm/index-Xzdc2jbA.js.map +1 -0
  93. package/lib/esm/{index-_4fWmRbN.js → index-ZAtZWqJQ.js} +5 -20
  94. package/lib/esm/{index-_4fWmRbN.js.map → index-ZAtZWqJQ.js.map} +1 -1
  95. package/lib/esm/index-_A9vu1ED.js +673 -0
  96. package/lib/esm/index-_A9vu1ED.js.map +1 -0
  97. package/lib/esm/{index-x8SyiPMC.js → index-bnSKBrbD.js} +5 -20
  98. package/lib/esm/{index-x8SyiPMC.js.map → index-bnSKBrbD.js.map} +1 -1
  99. package/lib/esm/index-fVrfHXda.js +24 -0
  100. package/lib/esm/index-fVrfHXda.js.map +1 -0
  101. package/lib/esm/{index-Vl0W0S3h.js → index-ftnOhuRS.js} +4 -19
  102. package/lib/esm/index-ftnOhuRS.js.map +1 -0
  103. package/lib/esm/{index-1l-61HI-.js → index-iQPB0Rdl.js} +6 -21
  104. package/lib/esm/{index-1l-61HI-.js.map → index-iQPB0Rdl.js.map} +1 -1
  105. package/lib/esm/{index-grT-Kuf2.js → index-kPj3-TKp.js} +5 -20
  106. package/lib/esm/{index-grT-Kuf2.js.map → index-kPj3-TKp.js.map} +1 -1
  107. package/lib/esm/{index-NZ5-xr5_.js → index-kgOR7SZ6.js} +8 -23
  108. package/lib/{cjs/index-von4W2LG.js.map → esm/index-kgOR7SZ6.js.map} +1 -1
  109. package/lib/esm/{index-A83StUe6.js → index-lm00PM0y.js} +8 -17
  110. package/lib/esm/{index-A83StUe6.js.map → index-lm00PM0y.js.map} +1 -1
  111. package/lib/esm/{index-g_3dzLYU.js → index-m49Bj3q7.js} +5 -20
  112. package/lib/{cjs/index-1vHyMXH8.js.map → esm/index-m49Bj3q7.js.map} +1 -1
  113. package/lib/esm/index-ohmbt6Ys.js +37 -0
  114. package/lib/esm/index-ohmbt6Ys.js.map +1 -0
  115. package/lib/esm/{index-rvOBAXap.js → index-sWVjGw-3.js} +8 -23
  116. package/lib/esm/index-sWVjGw-3.js.map +1 -0
  117. package/lib/esm/{index-DS7Z4Ach.js → index-twh8lL5o.js} +5 -20
  118. package/lib/{cjs/index-c_OzudR7.js.map → esm/index-twh8lL5o.js.map} +1 -1
  119. package/lib/esm/{index-3bDzhU6z.js → index-v02MCz4_.js} +5 -20
  120. package/lib/{cjs/index-vfzLCXfi.js.map → esm/index-v02MCz4_.js.map} +1 -1
  121. package/lib/esm/index-v3rvbocl.js +26 -0
  122. package/lib/esm/index-v3rvbocl.js.map +1 -0
  123. package/lib/esm/{index-XH7OnwZl.js → index-wEXT8mbN.js} +5 -20
  124. package/lib/esm/{index-XH7OnwZl.js.map → index-wEXT8mbN.js.map} +1 -1
  125. package/lib/esm/{index-VoX_n1l_.js → index-wFIac5Kw.js} +7 -22
  126. package/lib/{cjs/index-jn036wuh.js.map → esm/index-wFIac5Kw.js.map} +1 -1
  127. package/lib/esm/{index-3HeWs5rX.js → index-wg94ewRo.js} +8 -23
  128. package/lib/esm/{index-3HeWs5rX.js.map → index-wg94ewRo.js.map} +1 -1
  129. package/lib/esm/index.js +152 -12
  130. package/lib/esm/index.js.map +1 -1
  131. package/lib/esm/{todoList-M-PGJKde.js → todoList-9QsDDcmB.js} +2 -12
  132. package/lib/esm/todoList-9QsDDcmB.js.map +1 -0
  133. package/package.json +1 -1
  134. package/lib/cjs/_view-N32ied53.js +0 -27
  135. package/lib/cjs/_view-N32ied53.js.map +0 -1
  136. package/lib/cjs/floating-ui.dom-2cjBpir5.js +0 -1134
  137. package/lib/cjs/floating-ui.dom-2cjBpir5.js.map +0 -1
  138. package/lib/cjs/helper-1aludV1Z.js +0 -15
  139. package/lib/cjs/helper-1aludV1Z.js.map +0 -1
  140. package/lib/cjs/index-28q261C7.js +0 -448
  141. package/lib/cjs/index-28q261C7.js.map +0 -1
  142. package/lib/cjs/index-Buu2tD9O.js +0 -534
  143. package/lib/cjs/index-Buu2tD9O.js.map +0 -1
  144. package/lib/cjs/index-FbNqlZU8.js.map +0 -1
  145. package/lib/cjs/index-Jztk6JlP.js.map +0 -1
  146. package/lib/cjs/index-N6pPZY61.js +0 -191
  147. package/lib/cjs/index-N6pPZY61.js.map +0 -1
  148. package/lib/cjs/index-TUJs6KKL.js +0 -472
  149. package/lib/cjs/index-TUJs6KKL.js.map +0 -1
  150. package/lib/cjs/index-_GOdKqUK.js +0 -1147
  151. package/lib/cjs/index-_GOdKqUK.js.map +0 -1
  152. package/lib/cjs/index-cKQcw-eu.js +0 -386
  153. package/lib/cjs/index-cKQcw-eu.js.map +0 -1
  154. package/lib/cjs/index-cb-5m0vG.js.map +0 -1
  155. package/lib/cjs/index-crv_k6dv.js +0 -1353
  156. package/lib/cjs/index-crv_k6dv.js.map +0 -1
  157. package/lib/cjs/index-kqz-P6o6.js +0 -55
  158. package/lib/cjs/index-kqz-P6o6.js.map +0 -1
  159. package/lib/cjs/index-tBw4NmwY.js +0 -33852
  160. package/lib/cjs/index-tBw4NmwY.js.map +0 -1
  161. package/lib/cjs/schema-RVrwDDcq.js +0 -74
  162. package/lib/cjs/schema-RVrwDDcq.js.map +0 -1
  163. package/lib/cjs/todoList-Ze4FLMlx.js.map +0 -1
  164. package/lib/cjs/tooltip-plugin--lhebztC.js +0 -191
  165. package/lib/cjs/tooltip-plugin--lhebztC.js.map +0 -1
  166. package/lib/esm/_view-IlZC8FA6.js +0 -25
  167. package/lib/esm/_view-IlZC8FA6.js.map +0 -1
  168. package/lib/esm/floating-ui.dom-CAYjY8Gv.js +0 -1130
  169. package/lib/esm/floating-ui.dom-CAYjY8Gv.js.map +0 -1
  170. package/lib/esm/helper-wZAtC67x.js +0 -13
  171. package/lib/esm/helper-wZAtC67x.js.map +0 -1
  172. package/lib/esm/index-0-j8Icms.js +0 -384
  173. package/lib/esm/index-0-j8Icms.js.map +0 -1
  174. package/lib/esm/index-8QJbxTYk.js +0 -1145
  175. package/lib/esm/index-8QJbxTYk.js.map +0 -1
  176. package/lib/esm/index-9w_hdnvb.js +0 -532
  177. package/lib/esm/index-9w_hdnvb.js.map +0 -1
  178. package/lib/esm/index-AOoFzBaK.js +0 -53
  179. package/lib/esm/index-AOoFzBaK.js.map +0 -1
  180. package/lib/esm/index-LAdX6LsO.js +0 -33805
  181. package/lib/esm/index-LAdX6LsO.js.map +0 -1
  182. package/lib/esm/index-Vl0W0S3h.js.map +0 -1
  183. package/lib/esm/index-chrnjY1D.js +0 -470
  184. package/lib/esm/index-chrnjY1D.js.map +0 -1
  185. package/lib/esm/index-hF04phbf.js +0 -189
  186. package/lib/esm/index-hF04phbf.js.map +0 -1
  187. package/lib/esm/index-i79QMXpJ.js.map +0 -1
  188. package/lib/esm/index-rvOBAXap.js.map +0 -1
  189. package/lib/esm/index-uP9BKsTM.js +0 -446
  190. package/lib/esm/index-uP9BKsTM.js.map +0 -1
  191. package/lib/esm/index-ueQQMSgm.js +0 -1351
  192. package/lib/esm/index-ueQQMSgm.js.map +0 -1
  193. package/lib/esm/schema-JWJqD9qa.js +0 -71
  194. package/lib/esm/schema-JWJqD9qa.js.map +0 -1
  195. package/lib/esm/todoList-M-PGJKde.js.map +0 -1
  196. package/lib/esm/tooltip-plugin-iw2EQWIG.js +0 -185
  197. package/lib/esm/tooltip-plugin-iw2EQWIG.js.map +0 -1
@@ -1,191 +0,0 @@
1
- 'use strict';
2
-
3
- var atomico = require('atomico');
4
- var clsx = require('./clsx-dASsG01A.js');
5
- var todoList = require('./todoList-Ze4FLMlx.js');
6
- var state = require('@milkdown/prose/state');
7
- var helper = require('./helper-1aludV1Z.js');
8
- var index = require('./index-tBw4NmwY.js');
9
- var $view = require('./_view-N32ied53.js');
10
- require('@milkdown/prose/model');
11
- require('@milkdown/prose');
12
- require('@milkdown/prose/commands');
13
- require('@milkdown/prose/inputrules');
14
- require('@milkdown/prose/keymap');
15
- require('@milkdown/prose/view');
16
- require('@milkdown/prose/schema-list');
17
- require('@milkdown/prose/transform');
18
- require('@milkdown/prose/history');
19
- require('@milkdown/prose/tables');
20
-
21
- const listItemComponent = ({
22
- selected,
23
- label = "",
24
- listType = "",
25
- checked,
26
- onMount,
27
- setAttr,
28
- config,
29
- readonly
30
- }) => {
31
- const host = atomico.useHost();
32
- const contentWrapperRef = atomico.useRef();
33
- atomico.useLayoutEffect(() => {
34
- const current = contentWrapperRef.current;
35
- if (!current)
36
- return;
37
- const contentDOM = host.current.querySelector("[data-content-dom]");
38
- if (contentDOM) {
39
- current.appendChild(contentDOM);
40
- onMount == null ? void 0 : onMount();
41
- }
42
- }, []);
43
- const onClickLabel = () => {
44
- if (checked == null)
45
- return;
46
- setAttr == null ? void 0 : setAttr("checked", !checked);
47
- };
48
- const labelProps = {
49
- label,
50
- listType,
51
- checked,
52
- readonly
53
- };
54
- return atomico.html`<host class=${selected && "ProseMirror-selectednode"}>
55
- <li class='list-item'>
56
- <div class="label-wrapper" onclick=${onClickLabel} contenteditable="false">
57
- ${config == null ? void 0 : config.renderLabel(labelProps)}
58
- </div>
59
- <div class="children" ref=${contentWrapperRef}></div>
60
- </li>
61
- </host>`;
62
- };
63
- listItemComponent.props = {
64
- label: String,
65
- checked: Boolean,
66
- readonly: Boolean,
67
- listType: String,
68
- config: Object,
69
- selected: Boolean,
70
- setAttr: Function,
71
- onMount: Function
72
- };
73
- const ListItemElement = atomico.c(listItemComponent);
74
-
75
- const defaultListItemBlockConfig = {
76
- renderLabel: ({ label, listType, checked, readonly }) => {
77
- if (checked == null)
78
- return atomico.html`<span class='label'>${listType === "bullet" ? "\u29BF" : label}</span>`;
79
- return atomico.html`<input disabled=${readonly} class='label' type="checkbox" checked=${checked} />`;
80
- }
81
- };
82
- const listItemBlockConfig = index.$ctx(defaultListItemBlockConfig, "listItemBlockConfigCtx");
83
- todoList.withMeta(listItemBlockConfig, {
84
- displayName: "Config<list-item-block>",
85
- group: "ListItemBlock"
86
- });
87
-
88
- helper.defIfNotExists("milkdown-list-item-block", ListItemElement);
89
- const listItemBlockView = $view.$view(index.listItemSchema.node, (ctx) => {
90
- return (initialNode, view, getPos) => {
91
- const dom = document.createElement("milkdown-list-item-block");
92
- const contentDOM = document.createElement("div");
93
- contentDOM.setAttribute("data-content-dom", "true");
94
- contentDOM.classList.add("content-dom");
95
- const config = ctx.get(listItemBlockConfig.key);
96
- const bindAttrs = (node2) => {
97
- dom.listType = node2.attrs.listType;
98
- dom.label = node2.attrs.label;
99
- dom.checked = node2.attrs.checked;
100
- dom.readonly = !view.editable;
101
- };
102
- bindAttrs(initialNode);
103
- dom.appendChild(contentDOM);
104
- dom.selected = false;
105
- dom.setAttr = (attr, value) => {
106
- const pos = getPos();
107
- if (pos == null)
108
- return;
109
- view.dispatch(view.state.tr.setNodeAttribute(pos, attr, value));
110
- };
111
- dom.onMount = () => {
112
- var _a;
113
- const pos = (_a = getPos()) != null ? _a : 0;
114
- const end = pos + initialNode.nodeSize;
115
- const { from, to } = view.state.selection;
116
- if (view.hasFocus() && pos < from && to < end) {
117
- Promise.resolve().then(() => {
118
- const p = view.state.doc.resolve(pos);
119
- view.dispatch(view.state.tr.setSelection(state.TextSelection.near(p, 1)));
120
- });
121
- }
122
- };
123
- let node = initialNode;
124
- dom.config = config;
125
- return {
126
- dom,
127
- contentDOM,
128
- update: (updatedNode) => {
129
- if (updatedNode.type !== initialNode.type)
130
- return false;
131
- if (updatedNode.sameMarkup(node) && updatedNode.content.eq(node.content))
132
- return false;
133
- node = updatedNode;
134
- bindAttrs(updatedNode);
135
- return true;
136
- },
137
- ignoreMutation: (mutation) => {
138
- if (!dom || !contentDOM)
139
- return true;
140
- if (mutation.type === "selection")
141
- return false;
142
- if (contentDOM === mutation.target && mutation.type === "attributes")
143
- return true;
144
- if (contentDOM.contains(mutation.target))
145
- return false;
146
- return true;
147
- },
148
- selectNode: () => {
149
- dom.selected = true;
150
- },
151
- deselectNode: () => {
152
- dom.selected = false;
153
- },
154
- destroy: () => {
155
- dom.remove();
156
- contentDOM.remove();
157
- }
158
- };
159
- };
160
- });
161
- todoList.withMeta(listItemBlockView, {
162
- displayName: "NodeView<list-item-block>",
163
- group: "ListItemBlock"
164
- });
165
-
166
- const listItemBlockComponent = [
167
- listItemBlockConfig,
168
- listItemBlockView
169
- ];
170
-
171
- function configureListItem(ctx, config) {
172
- ctx.set(listItemBlockConfig.key, {
173
- renderLabel: ({ label, listType, checked, readonly }) => {
174
- var _a, _b, _c, _d, _e, _f;
175
- if (checked == null) {
176
- if (listType === "bullet")
177
- return atomico.html`<span class='label'>${(_b = (_a = config == null ? void 0 : config.bulletIcon) == null ? void 0 : _a.call(config)) != null ? _b : todoList.bulletIcon}</span>`;
178
- return atomico.html`<span class='label'>${label}</span>`;
179
- }
180
- if (checked)
181
- return atomico.html`<span class=${clsx.clsx("label checkbox", readonly && "readonly")}>${(_d = (_c = config == null ? void 0 : config.checkBoxCheckedIcon) == null ? void 0 : _c.call(config)) != null ? _d : todoList.checkBoxCheckedIcon}</span>`;
182
- return atomico.html`<span class=${clsx.clsx("label checkbox", readonly && "readonly")}>${(_f = (_e = config == null ? void 0 : config.checkBoxUncheckedIcon) == null ? void 0 : _e.call(config)) != null ? _f : todoList.checkBoxUncheckedIcon}</span>`;
183
- }
184
- });
185
- }
186
- const defineFeature = (editor, config) => {
187
- editor.config((ctx) => configureListItem(ctx, config)).use(listItemBlockComponent);
188
- };
189
-
190
- exports.defineFeature = defineFeature;
191
- //# sourceMappingURL=index-N6pPZY61.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-N6pPZY61.js","sources":["../../../components/src/list-item-block/component.ts","../../../components/src/list-item-block/config.ts","../../../components/src/list-item-block/view.ts","../../../components/src/list-item-block/index.ts","../../src/feature/list-item/index.ts"],"sourcesContent":["import type { Component } from 'atomico'\nimport { c, html, useHost, useLayoutEffect, useRef } from 'atomico'\nimport type { ListItemBlockConfig } from './config'\n\ninterface Attrs {\n label: string\n checked: boolean\n listType: string\n}\n\nexport type ListItemComponentProps = Attrs & {\n config: ListItemBlockConfig\n readonly: boolean\n selected: boolean\n setAttr: <T extends keyof Attrs>(attr: T, value: Attrs[T]) => void\n onMount: () => void\n}\n\nexport const listItemComponent: Component<ListItemComponentProps> = ({\n selected,\n label = '',\n listType = '',\n checked,\n onMount,\n setAttr,\n config,\n readonly,\n}) => {\n const host = useHost()\n const contentWrapperRef = useRef<HTMLDivElement>()\n\n useLayoutEffect(() => {\n const current = contentWrapperRef.current\n if (!current)\n return\n\n const contentDOM = host.current.querySelector('[data-content-dom]')\n\n if (contentDOM) {\n current.appendChild(contentDOM)\n onMount?.()\n }\n }, [])\n\n const onClickLabel = () => {\n if (checked == null)\n return\n\n setAttr?.('checked', !checked)\n }\n\n const labelProps = {\n label,\n listType,\n checked,\n readonly,\n }\n\n return html`<host class=${selected && 'ProseMirror-selectednode'}>\n <li class='list-item'>\n <div class=\"label-wrapper\" onclick=${onClickLabel} contenteditable=\"false\">\n ${config?.renderLabel(labelProps)}\n </div>\n <div class=\"children\" ref=${contentWrapperRef}></div>\n </li>\n </host>`\n}\n\nlistItemComponent.props = {\n label: String,\n checked: Boolean,\n readonly: Boolean,\n listType: String,\n config: Object,\n selected: Boolean,\n setAttr: Function,\n onMount: Function,\n}\n\nexport const ListItemElement = c(listItemComponent)\n","import { $ctx } from '@milkdown/utils'\nimport { html } from 'atomico'\nimport { withMeta } from '../__internal__/meta'\n\ninterface RenderLabelProps {\n label: string\n listType: string\n readonly?: boolean\n checked?: boolean\n}\n\nexport interface ListItemBlockConfig {\n renderLabel: (props: RenderLabelProps) => void\n}\n\nexport const defaultListItemBlockConfig: ListItemBlockConfig = {\n renderLabel: ({ label, listType, checked, readonly }: RenderLabelProps) => {\n if (checked == null)\n return html`<span class='label'>${listType === 'bullet' ? '⦿' : label}</span>`\n\n return html`<input disabled=${readonly} class='label' type=\"checkbox\" checked=${checked} />`\n },\n}\n\nexport const listItemBlockConfig = $ctx(defaultListItemBlockConfig, 'listItemBlockConfigCtx')\n\nwithMeta(listItemBlockConfig, {\n displayName: 'Config<list-item-block>',\n group: 'ListItemBlock',\n})\n","import { $view } from '@milkdown/utils'\nimport type { NodeViewConstructor } from '@milkdown/prose/view'\nimport { TextSelection } from '@milkdown/prose/state'\nimport type { Node } from '@milkdown/prose/model'\nimport { listItemSchema } from '@milkdown/preset-commonmark'\nimport { withMeta } from '../__internal__/meta'\nimport { defIfNotExists } from '../__internal__/helper'\nimport type { ListItemComponentProps } from './component'\nimport { ListItemElement } from './component'\nimport { listItemBlockConfig } from './config'\n\ndefIfNotExists('milkdown-list-item-block', ListItemElement)\nexport const listItemBlockView = $view(listItemSchema.node, (ctx): NodeViewConstructor => {\n return (initialNode, view, getPos) => {\n const dom = document.createElement('milkdown-list-item-block') as HTMLElement & ListItemComponentProps\n const contentDOM = document.createElement('div')\n contentDOM.setAttribute('data-content-dom', 'true')\n contentDOM.classList.add('content-dom')\n const config = ctx.get(listItemBlockConfig.key)\n const bindAttrs = (node: Node) => {\n dom.listType = node.attrs.listType\n dom.label = node.attrs.label\n dom.checked = node.attrs.checked\n\n dom.readonly = !view.editable\n }\n\n bindAttrs(initialNode)\n dom.appendChild(contentDOM)\n dom.selected = false\n dom.setAttr = (attr, value) => {\n const pos = getPos()\n if (pos == null)\n return\n\n view.dispatch(view.state.tr.setNodeAttribute(pos, attr, value))\n }\n dom.onMount = () => {\n const pos = getPos() ?? 0\n const end = pos + initialNode.nodeSize\n const { from, to } = view.state.selection\n if (view.hasFocus() && pos < from && to < end) {\n Promise.resolve().then(() => {\n const p = view.state.doc.resolve(pos)\n view.dispatch(view.state.tr.setSelection(TextSelection.near(p, 1)))\n })\n }\n }\n let node = initialNode\n dom.config = config\n return {\n dom,\n contentDOM,\n update: (updatedNode) => {\n if (updatedNode.type !== initialNode.type)\n return false\n\n if (updatedNode.sameMarkup(node) && updatedNode.content.eq(node.content))\n return false\n\n node = updatedNode\n bindAttrs(updatedNode)\n return true\n },\n ignoreMutation: (mutation) => {\n if (!dom || !contentDOM)\n return true\n\n if ((mutation.type as unknown) === 'selection')\n return false\n\n if (contentDOM === mutation.target && mutation.type === 'attributes')\n return true\n\n if (contentDOM.contains(mutation.target))\n return false\n\n return true\n },\n selectNode: () => {\n dom.selected = true\n },\n deselectNode: () => {\n dom.selected = false\n },\n destroy: () => {\n dom.remove()\n contentDOM.remove()\n },\n }\n }\n})\n\nwithMeta(listItemBlockView, {\n displayName: 'NodeView<list-item-block>',\n group: 'ListItemBlock',\n})\n","import type { MilkdownPlugin } from '@milkdown/ctx'\nimport { listItemBlockView } from './view'\nimport { listItemBlockConfig } from './config'\n\nexport * from './component'\nexport * from './config'\nexport * from './view'\n\nexport const listItemBlockComponent: MilkdownPlugin[] = [\n listItemBlockConfig,\n listItemBlockView,\n]\n","import type { Ctx } from '@milkdown/kit/ctx'\nimport { listItemBlockComponent, listItemBlockConfig } from '@milkdown/kit/component/list-item-block'\nimport { html } from 'atomico'\nimport clsx from 'clsx'\nimport type { DefineFeature, Icon } from '../shared'\nimport { bulletIcon, checkBoxCheckedIcon, checkBoxUncheckedIcon } from '../../icons'\n\nexport interface ListItemConfig {\n bulletIcon: Icon\n checkBoxCheckedIcon: Icon\n checkBoxUncheckedIcon: Icon\n}\n\nexport type ListItemFeatureConfig = Partial<ListItemConfig>\n\nfunction configureListItem(ctx: Ctx, config?: ListItemFeatureConfig) {\n ctx.set(listItemBlockConfig.key, {\n renderLabel: ({ label, listType, checked, readonly }) => {\n if (checked == null) {\n if (listType === 'bullet')\n return html`<span class='label'>${config?.bulletIcon?.() ?? bulletIcon}</span>`\n\n return html`<span class='label'>${label}</span>`\n }\n\n if (checked)\n return html`<span class=${clsx('label checkbox', readonly && 'readonly')}>${config?.checkBoxCheckedIcon?.() ?? checkBoxCheckedIcon}</span>`\n\n return html`<span class=${clsx('label checkbox', readonly && 'readonly')}>${config?.checkBoxUncheckedIcon?.() ?? checkBoxUncheckedIcon}</span>`\n },\n })\n}\n\nexport const defineFeature: DefineFeature<ListItemFeatureConfig> = (editor, config) => {\n editor\n .config(ctx => configureListItem(ctx, config))\n .use(listItemBlockComponent)\n}\n"],"names":["useHost","useRef","useLayoutEffect","html","c","$ctx","withMeta","defIfNotExists","$view","listItemSchema","node","TextSelection","bulletIcon","clsx","checkBoxCheckedIcon","checkBoxUncheckedIcon"],"mappings":"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"}