@milkdown/preset-commonmark 5.1.0 → 5.2.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 (81) hide show
  1. package/lib/index.cjs.js +261 -0
  2. package/lib/index.cjs.js.map +1 -0
  3. package/lib/index.d.ts +4 -4
  4. package/lib/index.es.js +1389 -0
  5. package/lib/index.es.js.map +1 -0
  6. package/lib/mark/code-inline.d.ts +1 -1
  7. package/lib/mark/em.d.ts +1 -1
  8. package/lib/mark/index.d.ts +1 -1
  9. package/lib/mark/index.d.ts.map +1 -1
  10. package/lib/mark/link.d.ts +1 -1
  11. package/lib/mark/strong.d.ts +1 -1
  12. package/lib/node/blockquote.d.ts +1 -1
  13. package/lib/node/bullet-list.d.ts +1 -1
  14. package/lib/node/code-fence.d.ts +3 -1
  15. package/lib/node/code-fence.d.ts.map +1 -1
  16. package/lib/node/doc.d.ts +1 -1
  17. package/lib/node/hardbreak.d.ts +1 -2
  18. package/lib/node/hardbreak.d.ts.map +1 -1
  19. package/lib/node/heading.d.ts +1 -2
  20. package/lib/node/heading.d.ts.map +1 -1
  21. package/lib/node/hr.d.ts +1 -1
  22. package/lib/node/image.d.ts +1 -1
  23. package/lib/node/image.d.ts.map +1 -1
  24. package/lib/node/index.d.ts +2 -2
  25. package/lib/node/list-item.d.ts +1 -1
  26. package/lib/node/list-item.d.ts.map +1 -1
  27. package/lib/node/ordered-list.d.ts +1 -1
  28. package/lib/node/paragraph.d.ts +1 -1
  29. package/lib/node/text.d.ts +1 -1
  30. package/lib/plugin/index.d.ts +1 -1
  31. package/lib/plugin/index.d.ts.map +1 -1
  32. package/package.json +16 -10
  33. package/src/node/code-fence.ts +16 -10
  34. package/src/node/hardbreak.ts +38 -3
  35. package/src/node/heading.ts +1 -2
  36. package/src/node/image.ts +20 -2
  37. package/src/node/list-item.ts +1 -2
  38. package/lib/index.js +0 -32
  39. package/lib/index.js.map +0 -1
  40. package/lib/mark/code-inline.js +0 -47
  41. package/lib/mark/code-inline.js.map +0 -1
  42. package/lib/mark/em.js +0 -41
  43. package/lib/mark/em.js.map +0 -1
  44. package/lib/mark/index.js +0 -11
  45. package/lib/mark/index.js.map +0 -1
  46. package/lib/mark/link.js +0 -110
  47. package/lib/mark/link.js.map +0 -1
  48. package/lib/mark/strong.js +0 -47
  49. package/lib/mark/strong.js.map +0 -1
  50. package/lib/node/blockquote.js +0 -47
  51. package/lib/node/blockquote.js.map +0 -1
  52. package/lib/node/bullet-list.js +0 -38
  53. package/lib/node/bullet-list.js.map +0 -1
  54. package/lib/node/code-fence.js +0 -290
  55. package/lib/node/code-fence.js.map +0 -1
  56. package/lib/node/doc.js +0 -24
  57. package/lib/node/doc.js.map +0 -1
  58. package/lib/node/hardbreak.js +0 -39
  59. package/lib/node/hardbreak.js.map +0 -1
  60. package/lib/node/heading.js +0 -89
  61. package/lib/node/heading.js.map +0 -1
  62. package/lib/node/hr.js +0 -63
  63. package/lib/node/hr.js.map +0 -1
  64. package/lib/node/image.js +0 -279
  65. package/lib/node/image.js.map +0 -1
  66. package/lib/node/index.js +0 -40
  67. package/lib/node/index.js.map +0 -1
  68. package/lib/node/list-item.js +0 -64
  69. package/lib/node/list-item.js.map +0 -1
  70. package/lib/node/ordered-list.js +0 -57
  71. package/lib/node/ordered-list.js.map +0 -1
  72. package/lib/node/paragraph.js +0 -52
  73. package/lib/node/paragraph.js.map +0 -1
  74. package/lib/node/text.js +0 -21
  75. package/lib/node/text.js.map +0 -1
  76. package/lib/plugin/filter-html.js +0 -32
  77. package/lib/plugin/filter-html.js.map +0 -1
  78. package/lib/plugin/index.js +0 -10
  79. package/lib/plugin/index.js.map +0 -1
  80. package/lib/supported-keys.js +0 -22
  81. package/lib/supported-keys.js.map +0 -1
@@ -3,7 +3,6 @@ import { css } from '@emotion/css';
3
3
  import { createCmd, createCmdKey } from '@milkdown/core';
4
4
  import { setBlockType, textblockTypeInputRule } from '@milkdown/prose';
5
5
  import { createNode, createShortcut } from '@milkdown/utils';
6
- import { UnknownRecord } from '@milkdown/utils/src/types';
7
6
 
8
7
  import { SupportedKeys } from '../supported-keys';
9
8
 
@@ -21,7 +20,7 @@ type Keys =
21
20
 
22
21
  export const TurnIntoHeading = createCmdKey<number>();
23
22
 
24
- export const heading = createNode<Keys, UnknownRecord>((utils, options) => {
23
+ export const heading = createNode<Keys>((utils, options) => {
25
24
  const id = 'heading';
26
25
  const headingMap: Record<number, string> = {
27
26
  1: css`
package/src/node/image.ts CHANGED
@@ -32,12 +32,25 @@ export const image = createNode<string, ImageOptions>((utils, options) => {
32
32
  text-align: center;
33
33
  font-size: 0;
34
34
  vertical-align: text-bottom;
35
+ line-height: 1;
36
+
35
37
  ${isBlock
36
38
  ? `
37
39
  width: 100%;
38
40
  margin: 0 auto;
39
41
  `
40
42
  : ''}
43
+
44
+ &.ProseMirror-selectednode::after {
45
+ content: '';
46
+ background: ${themeTool.palette('secondary', 0.38)};
47
+ position: absolute;
48
+ top: 0;
49
+ left: 0;
50
+ right: 0;
51
+ bottom: 0;
52
+ }
53
+
41
54
  img {
42
55
  max-width: 100%;
43
56
  height: auto;
@@ -127,6 +140,7 @@ export const image = createNode<string, ImageOptions>((utils, options) => {
127
140
  schema: () => ({
128
141
  inline: true,
129
142
  group: 'inline',
143
+ selectable: true,
130
144
  draggable: true,
131
145
  marks: '',
132
146
  atom: true,
@@ -240,10 +254,8 @@ export const image = createNode<string, ImageOptions>((utils, options) => {
240
254
  const createIcon = ctx.get(themeToolCtx).slots.icon;
241
255
  const container = document.createElement('span');
242
256
  container.className = utils.getClassName(node.attrs, id, containerStyle);
243
- container.contentEditable = 'false';
244
257
 
245
258
  const content = document.createElement('img');
246
- content.contentEditable = 'true';
247
259
 
248
260
  container.append(content);
249
261
  let icon = createIcon('image');
@@ -329,6 +341,12 @@ export const image = createNode<string, ImageOptions>((utils, options) => {
329
341
  setIcon('image');
330
342
  return true;
331
343
  },
344
+ selectNode: () => {
345
+ container.classList.add('ProseMirror-selectednode');
346
+ },
347
+ deselectNode: () => {
348
+ container.classList.remove('ProseMirror-selectednode');
349
+ },
332
350
  };
333
351
  },
334
352
  };
@@ -1,9 +1,8 @@
1
1
  /* Copyright 2021, Milkdown by Mirone. */
2
2
  import { css } from '@emotion/css';
3
3
  import { createCmd, createCmdKey } from '@milkdown/core';
4
- import { wrappingInputRule } from '@milkdown/prose';
4
+ import { liftListItem, sinkListItem, splitListItem, wrappingInputRule } from '@milkdown/prose';
5
5
  import { createNode, createShortcut } from '@milkdown/utils';
6
- import { liftListItem, sinkListItem, splitListItem } from 'prosemirror-schema-list';
7
6
 
8
7
  import { SupportedKeys } from '../supported-keys';
9
8
 
package/lib/index.js DELETED
@@ -1,32 +0,0 @@
1
- /* Copyright 2021, Milkdown by Mirone. */
2
- import { AtomList } from '@milkdown/utils';
3
- import { marks, ModifyLink, ToggleBold, ToggleInlineCode, ToggleItalic, ToggleLink } from './mark';
4
- import { InsertHardbreak, InsertHr, InsertImage, LiftListItem, ModifyImage, nodes, SinkListItem, SplitListItem, TurnIntoCodeFence, TurnIntoHeading, TurnIntoText, WrapInBlockquote, WrapInBulletList, WrapInOrderedList, } from './node';
5
- import { commonmarkPlugins } from './plugin';
6
- export * from './mark';
7
- export * from './node';
8
- export * from './supported-keys';
9
- export const commonmarkNodes = AtomList.create([...nodes, ...marks]);
10
- export { commonmarkPlugins };
11
- export const commonmark = AtomList.create([...commonmarkPlugins, ...commonmarkNodes]);
12
- export const commands = {
13
- ToggleInlineCode,
14
- ToggleItalic,
15
- ToggleLink,
16
- ToggleBold,
17
- ModifyLink,
18
- ModifyImage,
19
- WrapInBlockquote,
20
- WrapInBulletList,
21
- WrapInOrderedList,
22
- TurnIntoCodeFence,
23
- TurnIntoHeading,
24
- TurnIntoText,
25
- InsertHardbreak,
26
- InsertHr,
27
- InsertImage,
28
- SplitListItem,
29
- SinkListItem,
30
- LiftListItem,
31
- };
32
- //# sourceMappingURL=index.js.map
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACnG,OAAO,EACH,eAAe,EACf,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,WAAW,EACX,KAAK,EACL,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GACpB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,kBAAkB,CAAC;AAEjC,MAAM,CAAC,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAC7B,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,iBAAiB,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC;AAEtF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACpB,gBAAgB;IAChB,YAAY;IACZ,UAAU;IACV,UAAU;IAEV,UAAU;IACV,WAAW;IAEX,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IAEjB,iBAAiB;IACjB,eAAe;IACf,YAAY;IAEZ,eAAe;IACf,QAAQ;IACR,WAAW;IAEX,aAAa;IACb,YAAY;IACZ,YAAY;CACN,CAAC"}
@@ -1,47 +0,0 @@
1
- /* Copyright 2021, Milkdown by Mirone. */
2
- import { css } from '@emotion/css';
3
- import { createCmd, createCmdKey } from '@milkdown/core';
4
- import { markRule, toggleMark } from '@milkdown/prose';
5
- import { createMark, createShortcut } from '@milkdown/utils';
6
- import { SupportedKeys } from '../supported-keys';
7
- const id = 'code_inline';
8
- export const ToggleInlineCode = createCmdKey();
9
- export const codeInline = createMark((utils) => {
10
- const style = utils.getStyle(({ palette, size, font }) => css `
11
- background-color: ${palette('neutral')};
12
- color: ${palette('background')};
13
- border-radius: ${size.radius};
14
- font-weight: 500;
15
- font-family: ${font.code};
16
- padding: 0 0.2rem;
17
- `);
18
- return {
19
- id,
20
- schema: () => ({
21
- excludes: '_',
22
- parseDOM: [{ tag: 'code' }],
23
- toDOM: (mark) => ['code', { class: utils.getClassName(mark.attrs, 'code-inline', style) }],
24
- parseMarkdown: {
25
- match: (node) => node.type === 'inlineCode',
26
- runner: (state, node, markType) => {
27
- state.openMark(markType);
28
- state.addText(node.value);
29
- state.closeMark(markType);
30
- },
31
- },
32
- toMarkdown: {
33
- match: (mark) => mark.type.name === id,
34
- runner: (state, _, node) => {
35
- state.addNode('inlineCode', undefined, node.text || '');
36
- return true;
37
- },
38
- },
39
- }),
40
- inputRules: (markType) => [markRule(/(?:^|[^`])(`([^`]+)`)$/, markType)],
41
- commands: (markType) => [createCmd(ToggleInlineCode, () => toggleMark(markType))],
42
- shortcuts: {
43
- [SupportedKeys.CodeInline]: createShortcut(ToggleInlineCode, 'Mod-e'),
44
- },
45
- };
46
- });
47
- //# sourceMappingURL=code-inline.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"code-inline.js","sourceRoot":"","sources":["../../src/mark/code-inline.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGlD,MAAM,EAAE,GAAG,aAAa,CAAC;AAEzB,MAAM,CAAC,MAAM,gBAAgB,GAAG,YAAY,EAAE,CAAC;AAE/C,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAO,CAAC,KAAK,EAAE,EAAE;IACjD,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CACxB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CACxB,GAAG,CAAA;oCACqB,OAAO,CAAC,SAAS,CAAC;yBAC7B,OAAO,CAAC,YAAY,CAAC;iCACb,IAAI,CAAC,MAAM;;+BAEb,IAAI,CAAC,IAAI;;aAE3B,CACR,CAAC;IACF,OAAO;QACH,EAAE;QACF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACX,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;YAC3B,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;YAC1F,aAAa,EAAE;gBACX,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY;gBAC3C,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBAC9B,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBACzB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC;oBACpC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC9B,CAAC;aACJ;YACD,UAAU,EAAE;gBACR,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE;gBACtC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;oBACvB,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;oBAExD,OAAO,IAAI,CAAC;gBAChB,CAAC;aACJ;SACJ,CAAC;QACF,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;QACxE,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjF,SAAS,EAAE;YACP,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,gBAAgB,EAAE,OAAO,CAAC;SACxE;KACJ,CAAC;AACN,CAAC,CAAC,CAAC"}
package/lib/mark/em.js DELETED
@@ -1,41 +0,0 @@
1
- /* Copyright 2021, Milkdown by Mirone. */
2
- import { createCmd, createCmdKey } from '@milkdown/core';
3
- import { markRule, toggleMark } from '@milkdown/prose';
4
- import { createMark, createShortcut } from '@milkdown/utils';
5
- import { SupportedKeys } from '../supported-keys';
6
- const id = 'em';
7
- export const ToggleItalic = createCmdKey();
8
- export const em = createMark((utils) => ({
9
- id,
10
- schema: () => ({
11
- parseDOM: [
12
- { tag: 'i' },
13
- { tag: 'em' },
14
- { style: 'font-style', getAttrs: (value) => (value === 'italic') },
15
- ],
16
- toDOM: (mark) => ['em', { class: utils.getClassName(mark.attrs, id) }],
17
- parseMarkdown: {
18
- match: (node) => node.type === 'emphasis',
19
- runner: (state, node, markType) => {
20
- state.openMark(markType);
21
- state.next(node.children);
22
- state.closeMark(markType);
23
- },
24
- },
25
- toMarkdown: {
26
- match: (mark) => mark.type.name === id,
27
- runner: (state, mark) => {
28
- state.withMark(mark, 'emphasis');
29
- },
30
- },
31
- }),
32
- inputRules: (markType) => [
33
- markRule(/(?:^|[^_])(_([^_]+)_)$/, markType),
34
- markRule(/(?:^|[^*])(\*([^*]+)\*)$/, markType),
35
- ],
36
- commands: (markType) => [createCmd(ToggleItalic, () => toggleMark(markType))],
37
- shortcuts: {
38
- [SupportedKeys.Em]: createShortcut(ToggleItalic, 'Mod-i'),
39
- },
40
- }));
41
- //# sourceMappingURL=em.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"em.js","sourceRoot":"","sources":["../../src/mark/em.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIlD,MAAM,EAAE,GAAG,IAAI,CAAC;AAEhB,MAAM,CAAC,MAAM,YAAY,GAAG,YAAY,EAAE,CAAC;AAE3C,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,CAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,EAAE;IACF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACX,QAAQ,EAAE;YACN,EAAE,GAAG,EAAE,GAAG,EAAE;YACZ,EAAE,GAAG,EAAE,IAAI,EAAE;YACb,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAU,EAAE;SAC9E;QACD,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;QACtE,aAAa,EAAE;YACX,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU;YACzC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC9B,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACzB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC1B,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;SACJ;QACD,UAAU,EAAE;YACR,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE;YACtC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACpB,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACrC,CAAC;SACJ;KACJ,CAAC;IACF,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;QACtB,QAAQ,CAAC,wBAAwB,EAAE,QAAQ,CAAC;QAC5C,QAAQ,CAAC,0BAA0B,EAAE,QAAQ,CAAC;KACjD;IACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7E,SAAS,EAAE;QACP,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC;KAC5D;CACJ,CAAC,CAAC,CAAC"}
package/lib/mark/index.js DELETED
@@ -1,11 +0,0 @@
1
- /* Copyright 2021, Milkdown by Mirone. */
2
- import { codeInline } from './code-inline';
3
- import { em } from './em';
4
- import { link } from './link';
5
- import { strong } from './strong';
6
- export const marks = [codeInline(), em(), strong(), link()];
7
- export * from './code-inline';
8
- export * from './em';
9
- export * from './link';
10
- export * from './strong';
11
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mark/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AAE5D,cAAc,eAAe,CAAC;AAC9B,cAAc,MAAM,CAAC;AACrB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC"}
package/lib/mark/link.js DELETED
@@ -1,110 +0,0 @@
1
- /* Copyright 2021, Milkdown by Mirone. */
2
- import { css } from '@emotion/css';
3
- import { createCmd, createCmdKey, schemaCtx } from '@milkdown/core';
4
- import { InputRule, TextSelection, toggleMark } from '@milkdown/prose';
5
- import { createMark } from '@milkdown/utils';
6
- export const ToggleLink = createCmdKey();
7
- export const ModifyLink = createCmdKey();
8
- const id = 'link';
9
- export const link = createMark((utils) => {
10
- const style = utils.getStyle((themeTool) => {
11
- const lineColor = themeTool.palette('line');
12
- return css `
13
- color: ${themeTool.palette('secondary')};
14
- cursor: pointer;
15
- transition: all 0.4s ease-in-out;
16
- font-weight: 500;
17
- &:hover {
18
- background-color: ${lineColor};
19
- box-shadow: 0 0.2rem ${lineColor}, 0 -0.2rem ${lineColor};
20
- }
21
- `;
22
- });
23
- return {
24
- id,
25
- schema: () => ({
26
- attrs: {
27
- href: {},
28
- title: { default: null },
29
- },
30
- inclusive: false,
31
- parseDOM: [
32
- {
33
- tag: 'a[href]',
34
- getAttrs: (dom) => {
35
- if (!(dom instanceof HTMLElement)) {
36
- throw new Error();
37
- }
38
- return { href: dom.getAttribute('href'), title: dom.getAttribute('title') };
39
- },
40
- },
41
- ],
42
- toDOM: (mark) => ['a', Object.assign(Object.assign({}, mark.attrs), { class: utils.getClassName(mark.attrs, id, style) })],
43
- parseMarkdown: {
44
- match: (node) => node.type === 'link',
45
- runner: (state, node, markType) => {
46
- const url = node.url;
47
- const title = node.title;
48
- state.openMark(markType, { href: url, title });
49
- state.next(node.children);
50
- state.closeMark(markType);
51
- },
52
- },
53
- toMarkdown: {
54
- match: (mark) => mark.type.name === id,
55
- runner: (state, mark) => {
56
- state.withMark(mark, 'link', undefined, {
57
- title: mark.attrs.title,
58
- url: mark.attrs.href,
59
- });
60
- },
61
- },
62
- }),
63
- commands: (markType) => [
64
- createCmd(ToggleLink, (href = '') => toggleMark(markType, { href })),
65
- createCmd(ModifyLink, (href = '') => (state, dispatch) => {
66
- if (!dispatch)
67
- return false;
68
- const { marks } = state.schema;
69
- let node;
70
- let pos = -1;
71
- const { selection } = state;
72
- state.doc.nodesBetween(selection.from, selection.to, (n, p) => {
73
- if (marks.link.isInSet(n.marks)) {
74
- node = n;
75
- pos = p;
76
- return false;
77
- }
78
- return;
79
- });
80
- if (!node)
81
- return false;
82
- const mark = node.marks.find(({ type }) => type === markType);
83
- if (!mark)
84
- return false;
85
- const start = pos;
86
- const end = pos + node.nodeSize;
87
- const { tr } = state;
88
- const linkMark = marks.link.create(Object.assign(Object.assign({}, mark.attrs), { href }));
89
- dispatch(tr
90
- .removeMark(start, end, mark)
91
- .addMark(start, end, linkMark)
92
- .setSelection(new TextSelection(tr.selection.$anchor))
93
- .scrollIntoView());
94
- return true;
95
- }),
96
- ],
97
- inputRules: (markType, ctx) => [
98
- new InputRule(/\[(?<text>.*?)]\((?<href>.*?)(?=“|\))"?(?<title>[^"]+)?"?\)/, (state, match, start, end) => {
99
- const [okay, text = '', href, title] = match;
100
- const { tr } = state;
101
- if (okay) {
102
- const content = text || 'link';
103
- tr.replaceWith(start, end, ctx.get(schemaCtx).text(content)).addMark(start, content.length + start, markType.create({ title, href }));
104
- }
105
- return tr;
106
- }),
107
- ],
108
- };
109
- });
110
- //# sourceMappingURL=link.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"link.js","sourceRoot":"","sources":["../../src/mark/link.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAqB,aAAa,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,EAAU,CAAC;AACjD,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,EAAU,CAAC;AACjD,MAAM,EAAE,GAAG,MAAM,CAAC;AAClB,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,EAAE;QACvC,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE5C,OAAO,GAAG,CAAA;qBACG,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC;;;;;oCAKf,SAAS;uCACN,SAAS,eAAe,SAAS;;SAE/D,CAAC;IACN,CAAC,CAAC,CAAC;IACH,OAAO;QACH,EAAE;QACF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACX,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;gBACR,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;aAC3B;YACD,SAAS,EAAE,KAAK;YAChB,QAAQ,EAAE;gBACN;oBACI,GAAG,EAAE,SAAS;oBACd,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;wBACd,IAAI,CAAC,CAAC,GAAG,YAAY,WAAW,CAAC,EAAE;4BAC/B,MAAM,IAAI,KAAK,EAAE,CAAC;yBACrB;wBACD,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;oBAChF,CAAC;iBACJ;aACJ;YACD,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,kCAAO,IAAI,CAAC,KAAK,KAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,IAAG;YAC3F,aAAa,EAAE;gBACX,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM;gBACrC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAa,CAAC;oBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;oBACnC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC/C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC1B,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC9B,CAAC;aACJ;YACD,UAAU,EAAE;gBACR,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE;gBACtC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBACpB,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE;wBACpC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;wBACvB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;qBACvB,CAAC,CAAC;gBACP,CAAC;aACJ;SACJ,CAAC;QACF,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;YACpB,SAAS,CAAC,UAAU,EAAE,CAAC,IAAI,GAAG,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACpE,SAAS,CAAC,UAAU,EAAE,CAAC,IAAI,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACrD,IAAI,CAAC,QAAQ;oBAAE,OAAO,KAAK,CAAC;gBAE5B,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;gBAE/B,IAAI,IAA2B,CAAC;gBAChC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;gBACb,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;gBAC5B,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBAC1D,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;wBAC7B,IAAI,GAAG,CAAC,CAAC;wBACT,GAAG,GAAG,CAAC,CAAC;wBACR,OAAO,KAAK,CAAC;qBAChB;oBACD,OAAO;gBACX,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAC;gBAExB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;gBAC9D,IAAI,CAAC,IAAI;oBAAE,OAAO,KAAK,CAAC;gBAExB,MAAM,KAAK,GAAG,GAAG,CAAC;gBAClB,MAAM,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC;gBAChC,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC;gBACrB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,iCAAM,IAAI,CAAC,KAAK,KAAE,IAAI,IAAG,CAAC;gBAC5D,QAAQ,CACJ,EAAE;qBACG,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC;qBAC5B,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC;qBAC7B,YAAY,CAAC,IAAI,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;qBACrD,cAAc,EAAE,CACxB,CAAC;gBAEF,OAAO,IAAI,CAAC;YAChB,CAAC,CAAC;SACL;QACD,UAAU,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;YAC3B,IAAI,SAAS,CAAC,6DAA6D,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACtG,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;gBAC7C,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC;gBACrB,IAAI,IAAI,EAAE;oBACN,MAAM,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC;oBAC/B,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAChE,KAAK,EACL,OAAO,CAAC,MAAM,GAAG,KAAK,EACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CACnC,CAAC;iBACL;gBAED,OAAO,EAAE,CAAC;YACd,CAAC,CAAC;SACL;KACJ,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -1,47 +0,0 @@
1
- /* Copyright 2021, Milkdown by Mirone. */
2
- import { css } from '@emotion/css';
3
- import { createCmd, createCmdKey } from '@milkdown/core';
4
- import { markRule, toggleMark } from '@milkdown/prose';
5
- import { createMark, createShortcut } from '@milkdown/utils';
6
- import { SupportedKeys } from '../supported-keys';
7
- const id = 'strong';
8
- export const ToggleBold = createCmdKey();
9
- export const strong = createMark((utils) => {
10
- const style = utils.getStyle(() => css `
11
- font-weight: 600;
12
- `);
13
- return {
14
- id,
15
- schema: () => ({
16
- parseDOM: [
17
- { tag: 'b' },
18
- { tag: 'strong' },
19
- { style: 'font-style', getAttrs: (value) => (value === 'bold') },
20
- ],
21
- toDOM: (mark) => ['strong', { class: utils.getClassName(mark.attrs, id, style) }],
22
- parseMarkdown: {
23
- match: (node) => node.type === 'strong',
24
- runner: (state, node, markType) => {
25
- state.openMark(markType);
26
- state.next(node.children);
27
- state.closeMark(markType);
28
- },
29
- },
30
- toMarkdown: {
31
- match: (mark) => mark.type.name === id,
32
- runner: (state, mark) => {
33
- state.withMark(mark, 'strong');
34
- },
35
- },
36
- }),
37
- inputRules: (markType) => [
38
- markRule(/(?:__)([^_]+)(?:__)$/, markType),
39
- markRule(/(?:\*\*)([^*]+)(?:\*\*)$/, markType),
40
- ],
41
- commands: (markType) => [createCmd(ToggleBold, () => toggleMark(markType))],
42
- shortcuts: {
43
- [SupportedKeys.Bold]: createShortcut(ToggleBold, 'Mod-b'),
44
- },
45
- };
46
- });
47
- //# sourceMappingURL=strong.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"strong.js","sourceRoot":"","sources":["../../src/mark/strong.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGlD,MAAM,EAAE,GAAG,QAAQ,CAAC;AACpB,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,EAAE,CAAC;AACzC,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAO,CAAC,KAAK,EAAE,EAAE;IAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CACxB,GAAG,EAAE,CACD,GAAG,CAAA;;aAEF,CACR,CAAC;IACF,OAAO;QACH,EAAE;QACF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACX,QAAQ,EAAE;gBACN,EAAE,GAAG,EAAE,GAAG,EAAE;gBACZ,EAAE,GAAG,EAAE,QAAQ,EAAE;gBACjB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,MAAM,CAAU,EAAE;aAC5E;YACD,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;YACjF,aAAa,EAAE;gBACX,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;gBACvC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBAC9B,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC1B,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC9B,CAAC;aACJ;YACD,UAAU,EAAE;gBACR,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE;gBACtC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBACpB,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACnC,CAAC;aACJ;SACJ,CAAC;QACF,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;YACtB,QAAQ,CAAC,sBAAsB,EAAE,QAAQ,CAAC;YAC1C,QAAQ,CAAC,0BAA0B,EAAE,QAAQ,CAAC;SACjD;QACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3E,SAAS,EAAE;YACP,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC;SAC5D;KACJ,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -1,47 +0,0 @@
1
- /* Copyright 2021, Milkdown by Mirone. */
2
- import { css } from '@emotion/css';
3
- import { createCmd, createCmdKey } from '@milkdown/core';
4
- import { wrapIn, wrappingInputRule } from '@milkdown/prose';
5
- import { createNode, createShortcut } from '@milkdown/utils';
6
- import { SupportedKeys } from '../supported-keys';
7
- const id = 'blockquote';
8
- export const WrapInBlockquote = createCmdKey();
9
- export const blockquote = createNode((utils) => {
10
- const style = utils.getStyle((themeTool) => css `
11
- padding-left: 1.875rem;
12
- line-height: 1.75rem;
13
- border-left: 4px solid ${themeTool.palette('primary')};
14
- * {
15
- font-size: 1rem;
16
- line-height: 1.5rem;
17
- }
18
- `);
19
- return {
20
- id,
21
- schema: () => ({
22
- content: 'block+',
23
- group: 'block',
24
- defining: true,
25
- parseDOM: [{ tag: 'blockquote' }],
26
- toDOM: (node) => ['blockquote', { class: utils.getClassName(node.attrs, id, style) }, 0],
27
- parseMarkdown: {
28
- match: ({ type }) => type === id,
29
- runner: (state, node, type) => {
30
- state.openNode(type).next(node.children).closeNode();
31
- },
32
- },
33
- toMarkdown: {
34
- match: (node) => node.type.name === id,
35
- runner: (state, node) => {
36
- state.openNode('blockquote').next(node.content).closeNode();
37
- },
38
- },
39
- }),
40
- inputRules: (nodeType) => [wrappingInputRule(/^\s*>\s$/, nodeType)],
41
- commands: (nodeType) => [createCmd(WrapInBlockquote, () => wrapIn(nodeType))],
42
- shortcuts: {
43
- [SupportedKeys.Blockquote]: createShortcut(WrapInBlockquote, 'Mod-Shift-b'),
44
- },
45
- };
46
- });
47
- //# sourceMappingURL=blockquote.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"blockquote.js","sourceRoot":"","sources":["../../src/node/blockquote.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIlD,MAAM,EAAE,GAAG,YAAY,CAAC;AAExB,MAAM,CAAC,MAAM,gBAAgB,GAAG,YAAY,EAAE,CAAC;AAE/C,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAO,CAAC,KAAK,EAAE,EAAE;IACjD,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CACxB,CAAC,SAAS,EAAE,EAAE,CACV,GAAG,CAAA;;;yCAG0B,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;;;;;aAKxD,CACR,CAAC;IAEF,OAAO;QACH,EAAE;QACF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACX,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC;YACjC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YACxF,aAAa,EAAE;gBACX,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE;gBAChC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;oBAC1B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;gBACzD,CAAC;aACJ;YACD,UAAU,EAAE;gBACR,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE;gBACtC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBACpB,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC;gBAChE,CAAC;aACJ;SACJ,CAAC;QACF,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACnE,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7E,SAAS,EAAE;YACP,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,gBAAgB,EAAE,aAAa,CAAC;SAC9E;KACJ,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -1,38 +0,0 @@
1
- /* Copyright 2021, Milkdown by Mirone. */
2
- import { createCmd, createCmdKey } from '@milkdown/core';
3
- import { wrapIn, wrappingInputRule } from '@milkdown/prose';
4
- import { createNode, createShortcut } from '@milkdown/utils';
5
- import { SupportedKeys } from '../supported-keys';
6
- export const WrapInBulletList = createCmdKey();
7
- export const bulletList = createNode((utils) => {
8
- const id = 'bullet_list';
9
- return {
10
- id,
11
- schema: () => ({
12
- content: 'listItem+',
13
- group: 'block',
14
- parseDOM: [{ tag: 'ul' }],
15
- toDOM: (node) => {
16
- return ['ul', { class: utils.getClassName(node.attrs, 'bullet-list') }, 0];
17
- },
18
- parseMarkdown: {
19
- match: ({ type, ordered }) => type === 'list' && !ordered,
20
- runner: (state, node, type) => {
21
- state.openNode(type).next(node.children).closeNode();
22
- },
23
- },
24
- toMarkdown: {
25
- match: (node) => node.type.name === id,
26
- runner: (state, node) => {
27
- state.openNode('list', undefined, { ordered: false }).next(node.content).closeNode();
28
- },
29
- },
30
- }),
31
- inputRules: (nodeType) => [wrappingInputRule(/^\s*([-+*])\s$/, nodeType)],
32
- commands: (nodeType) => [createCmd(WrapInBulletList, () => wrapIn(nodeType))],
33
- shortcuts: {
34
- [SupportedKeys.BulletList]: createShortcut(WrapInBulletList, 'Mod-Shift-8'),
35
- },
36
- };
37
- });
38
- //# sourceMappingURL=bullet-list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bullet-list.js","sourceRoot":"","sources":["../../src/node/bullet-list.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIlD,MAAM,CAAC,MAAM,gBAAgB,GAAG,YAAY,EAAE,CAAC;AAE/C,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAO,CAAC,KAAK,EAAE,EAAE;IACjD,MAAM,EAAE,GAAG,aAAa,CAAC;IACzB,OAAO;QACH,EAAE;QACF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACX,OAAO,EAAE,WAAW;YACpB,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;YACzB,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;gBACZ,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAC/E,CAAC;YACD,aAAa,EAAE;gBACX,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,OAAO;gBACzD,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;oBAC1B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;gBACzD,CAAC;aACJ;YACD,UAAU,EAAE;gBACR,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE;gBACtC,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBACpB,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC;gBACzF,CAAC;aACJ;SACJ,CAAC;QACF,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACzE,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7E,SAAS,EAAE;YACP,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,gBAAgB,EAAE,aAAa,CAAC;SAC9E;KACJ,CAAC;AACN,CAAC,CAAC,CAAC"}