@gravity-ui/markdown-editor 15.24.1 → 15.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/build/cjs/bundle/Editor.js +56 -23
  2. package/build/cjs/bundle/Editor.js.map +1 -1
  3. package/build/cjs/extensions/markdown/CodeBlock/CodeBlockHighlight/CodeBlockHighlight.js +11 -4
  4. package/build/cjs/extensions/markdown/CodeBlock/CodeBlockHighlight/CodeBlockHighlight.js.map +1 -1
  5. package/build/cjs/extensions/markdown/CodeBlock/CodeBlockSpecs/index.d.ts +1 -0
  6. package/build/cjs/extensions/markdown/CodeBlock/CodeBlockSpecs/index.js +8 -0
  7. package/build/cjs/extensions/markdown/CodeBlock/CodeBlockSpecs/index.js.map +1 -1
  8. package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/const.d.ts +3 -0
  9. package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/const.js +4 -1
  10. package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/const.js.map +1 -1
  11. package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/parser.js +9 -1
  12. package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/parser.js.map +1 -1
  13. package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/schema.js +3 -2
  14. package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/schema.js.map +1 -1
  15. package/build/cjs/extensions/markdown/Lists/ListsSpecs/const.d.ts +2 -1
  16. package/build/cjs/extensions/markdown/Lists/ListsSpecs/const.js +1 -0
  17. package/build/cjs/extensions/markdown/Lists/ListsSpecs/const.js.map +1 -1
  18. package/build/cjs/extensions/markdown/Lists/ListsSpecs/parser.js +4 -1
  19. package/build/cjs/extensions/markdown/Lists/ListsSpecs/parser.js.map +1 -1
  20. package/build/cjs/extensions/markdown/Lists/ListsSpecs/schema.js +3 -2
  21. package/build/cjs/extensions/markdown/Lists/ListsSpecs/schema.js.map +1 -1
  22. package/build/cjs/extensions/markdown/Table/TableSpecs/const.d.ts +2 -1
  23. package/build/cjs/extensions/markdown/Table/TableSpecs/const.js +1 -0
  24. package/build/cjs/extensions/markdown/Table/TableSpecs/const.js.map +1 -1
  25. package/build/cjs/extensions/markdown/Table/TableSpecs/parser.js +9 -1
  26. package/build/cjs/extensions/markdown/Table/TableSpecs/parser.js.map +1 -1
  27. package/build/cjs/extensions/markdown/Table/TableSpecs/schema.js +3 -2
  28. package/build/cjs/extensions/markdown/Table/TableSpecs/schema.js.map +1 -1
  29. package/build/cjs/extensions/yfm/Checkbox/CheckboxSpecs/const.d.ts +1 -0
  30. package/build/cjs/extensions/yfm/Checkbox/CheckboxSpecs/const.js +1 -0
  31. package/build/cjs/extensions/yfm/Checkbox/CheckboxSpecs/const.js.map +1 -1
  32. package/build/cjs/extensions/yfm/Checkbox/CheckboxSpecs/schema.js +1 -0
  33. package/build/cjs/extensions/yfm/Checkbox/CheckboxSpecs/schema.js.map +1 -1
  34. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/const.d.ts +1 -0
  35. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/const.js +1 -0
  36. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/const.js.map +1 -1
  37. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/parser.js +14 -1
  38. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/parser.js.map +1 -1
  39. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/schema.js +4 -1
  40. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/schema.js.map +1 -1
  41. package/build/cjs/extensions/yfm/YfmCut/const.d.ts +1 -1
  42. package/build/cjs/extensions/yfm/YfmCut/const.js +2 -1
  43. package/build/cjs/extensions/yfm/YfmCut/const.js.map +1 -1
  44. package/build/cjs/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.js +10 -0
  45. package/build/cjs/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.js.map +1 -1
  46. package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/const.d.ts +2 -1
  47. package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/const.js +1 -0
  48. package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/const.js.map +1 -1
  49. package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/parser.js +14 -1
  50. package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/parser.js.map +1 -1
  51. package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/schema.js +3 -2
  52. package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/schema.js.map +1 -1
  53. package/build/cjs/utils/index.d.ts +1 -0
  54. package/build/cjs/utils/index.js +1 -0
  55. package/build/cjs/utils/index.js.map +1 -1
  56. package/build/cjs/utils/node-descedants.d.ts +10 -0
  57. package/build/cjs/utils/node-descedants.js +23 -0
  58. package/build/cjs/utils/node-descedants.js.map +1 -0
  59. package/build/cjs/version.js +1 -1
  60. package/build/cjs/version.js.map +1 -1
  61. package/build/esm/bundle/Editor.js +56 -23
  62. package/build/esm/bundle/Editor.js.map +1 -1
  63. package/build/esm/extensions/markdown/CodeBlock/CodeBlockHighlight/CodeBlockHighlight.js +11 -4
  64. package/build/esm/extensions/markdown/CodeBlock/CodeBlockHighlight/CodeBlockHighlight.js.map +1 -1
  65. package/build/esm/extensions/markdown/CodeBlock/CodeBlockSpecs/index.d.ts +1 -0
  66. package/build/esm/extensions/markdown/CodeBlock/CodeBlockSpecs/index.js +8 -0
  67. package/build/esm/extensions/markdown/CodeBlock/CodeBlockSpecs/index.js.map +1 -1
  68. package/build/esm/extensions/markdown/Deflist/DeflistSpecs/const.d.ts +3 -0
  69. package/build/esm/extensions/markdown/Deflist/DeflistSpecs/const.js +3 -0
  70. package/build/esm/extensions/markdown/Deflist/DeflistSpecs/const.js.map +1 -1
  71. package/build/esm/extensions/markdown/Deflist/DeflistSpecs/parser.js +10 -2
  72. package/build/esm/extensions/markdown/Deflist/DeflistSpecs/parser.js.map +1 -1
  73. package/build/esm/extensions/markdown/Deflist/DeflistSpecs/schema.js +4 -3
  74. package/build/esm/extensions/markdown/Deflist/DeflistSpecs/schema.js.map +1 -1
  75. package/build/esm/extensions/markdown/Lists/ListsSpecs/const.d.ts +2 -1
  76. package/build/esm/extensions/markdown/Lists/ListsSpecs/const.js +1 -0
  77. package/build/esm/extensions/markdown/Lists/ListsSpecs/const.js.map +1 -1
  78. package/build/esm/extensions/markdown/Lists/ListsSpecs/parser.js +4 -1
  79. package/build/esm/extensions/markdown/Lists/ListsSpecs/parser.js.map +1 -1
  80. package/build/esm/extensions/markdown/Lists/ListsSpecs/schema.js +3 -2
  81. package/build/esm/extensions/markdown/Lists/ListsSpecs/schema.js.map +1 -1
  82. package/build/esm/extensions/markdown/Table/TableSpecs/const.d.ts +2 -1
  83. package/build/esm/extensions/markdown/Table/TableSpecs/const.js +1 -0
  84. package/build/esm/extensions/markdown/Table/TableSpecs/const.js.map +1 -1
  85. package/build/esm/extensions/markdown/Table/TableSpecs/parser.js +9 -1
  86. package/build/esm/extensions/markdown/Table/TableSpecs/parser.js.map +1 -1
  87. package/build/esm/extensions/markdown/Table/TableSpecs/schema.js +3 -2
  88. package/build/esm/extensions/markdown/Table/TableSpecs/schema.js.map +1 -1
  89. package/build/esm/extensions/yfm/Checkbox/CheckboxSpecs/const.d.ts +1 -0
  90. package/build/esm/extensions/yfm/Checkbox/CheckboxSpecs/const.js +1 -0
  91. package/build/esm/extensions/yfm/Checkbox/CheckboxSpecs/const.js.map +1 -1
  92. package/build/esm/extensions/yfm/Checkbox/CheckboxSpecs/schema.js +1 -0
  93. package/build/esm/extensions/yfm/Checkbox/CheckboxSpecs/schema.js.map +1 -1
  94. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/const.d.ts +1 -0
  95. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/const.js +1 -0
  96. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/const.js.map +1 -1
  97. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/parser.js +14 -1
  98. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/parser.js.map +1 -1
  99. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/schema.js +4 -1
  100. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/schema.js.map +1 -1
  101. package/build/esm/extensions/yfm/YfmCut/const.d.ts +1 -1
  102. package/build/esm/extensions/yfm/YfmCut/const.js +1 -1
  103. package/build/esm/extensions/yfm/YfmCut/const.js.map +1 -1
  104. package/build/esm/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.js +11 -1
  105. package/build/esm/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.js.map +1 -1
  106. package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/const.d.ts +2 -1
  107. package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/const.js +1 -0
  108. package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/const.js.map +1 -1
  109. package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/parser.js +15 -2
  110. package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/parser.js.map +1 -1
  111. package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/schema.js +3 -2
  112. package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/schema.js.map +1 -1
  113. package/build/esm/utils/index.d.ts +1 -0
  114. package/build/esm/utils/index.js +1 -0
  115. package/build/esm/utils/index.js.map +1 -1
  116. package/build/esm/utils/node-descedants.d.ts +10 -0
  117. package/build/esm/utils/node-descedants.js +19 -0
  118. package/build/esm/utils/node-descedants.js.map +1 -0
  119. package/build/esm/version.js +1 -1
  120. package/build/esm/version.js.map +1 -1
  121. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"../../../../../../src","sources":["extensions/yfm/YfmNote/YfmNoteSpecs/schema.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAC,mBAAgB;AAI5C,MAAM,yBAAyB,GAAG,MAAM,CAAC;AACzC,MAAM,2BAA2B,GAAG,cAAc,CAAC;AAEnD,MAAM,CAAC,MAAM,cAAc,GAAG,CAC1B,IAA0B,EAC1B,WAAgC,EACN,EAAE,CAAC,CAAC;IAC9B,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACb,KAAK,EAAE;YACH,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAC,OAAO,EAAE,0BAA0B,EAAC;YACxD,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAC,OAAO,EAAE,MAAM,EAAC;SACtC;QACD,OAAO,EAAE,GAAG,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,WAAW,EAAE;QACxD,KAAK,EAAE,gBAAgB;QACvB,QAAQ,EAAE;YACN;gBACI,GAAG,EAAE,cAAc;gBACnB,QAAQ,EAAE,GAAG;gBACb,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACjB,CAAC,SAAS,CAAC,KAAK,CAAC,EAAG,IAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE;oBACxE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAG,IAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,MAAM;iBAC7E,CAAC;aACL;SACJ;QACD,KAAK,CAAC,IAAI;YACN,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,MAAM;KAClB;IAED,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAClB,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,gBAAgB;QACvB,QAAQ,EAAE;YACN;gBACI,GAAG,EAAE,kBAAkB;gBACvB,QAAQ,EAAE,GAAG;aAChB;SACJ;QACD,KAAK;YACD,OAAO,CAAC,GAAG,EAAE,EAAC,KAAK,EAAE,gBAAgB,EAAC,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE,KAAK;QACrB,WAAW,EAAE;YACT,OAAO,EACH,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACjC,IAAI,EAAE,uBAAuB;gBAC7B,yBAAyB;YAC7B,aAAa,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;KAClB;IACD,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;QACpB,OAAO,EAAE,sBAAsB;QAC/B,KAAK,EAAE,gBAAgB;QACvB,QAAQ,EAAE;YACN;gBACI,GAAG,EAAE,sBAAsB;gBAC3B,QAAQ,EAAE,GAAG;aAChB;SACJ;QACD,KAAK;YACD,OAAO,CAAC,KAAK,EAAE,EAAC,KAAK,EAAE,kBAAkB,EAAC,EAAE,CAAC,CAAC,CAAC;QACnD,CAAC;QACD,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE,KAAK;QACrB,WAAW,EAAE;YACT,OAAO,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,2BAA2B;YAC3E,aAAa,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;KAClB;CACJ,CAAC,CAAC","sourcesContent":["import type {NodeSpec} from 'prosemirror-model';\n\nimport type {PlaceholderOptions} from '../../../../utils/placeholder';\n\nimport {NoteAttrs, NoteNode} from './const';\n\nimport type {YfmNoteSpecsOptions} from './index';\n\nconst DEFAULT_TITLE_PLACEHOLDER = 'Note';\nconst DEFAULT_CONTENT_PLACEHOLDER = 'Note content';\n\nexport const getSchemaSpecs = (\n opts?: YfmNoteSpecsOptions,\n placeholder?: PlaceholderOptions,\n): Record<NoteNode, NodeSpec> => ({\n [NoteNode.Note]: {\n attrs: {\n [NoteAttrs.Class]: {default: 'yfm-note yfm-accent-info'},\n [NoteAttrs.Type]: {default: 'info'},\n },\n content: `${NoteNode.NoteTitle} ${NoteNode.NoteContent}`,\n group: 'block yfm-note',\n parseDOM: [\n {\n tag: 'div.yfm-note',\n priority: 100,\n getAttrs: (node) => ({\n [NoteAttrs.Class]: (node as Element).getAttribute(NoteAttrs.Class) || '',\n [NoteAttrs.Type]: (node as Element).getAttribute(NoteAttrs.Type) || 'info',\n }),\n },\n ],\n toDOM(node) {\n return ['div', node.attrs, 0];\n },\n selectable: true,\n allowSelection: true,\n complex: 'root',\n },\n\n [NoteNode.NoteTitle]: {\n content: 'inline*',\n group: 'block yfm-note',\n parseDOM: [\n {\n tag: 'p.yfm-note-title',\n priority: 100,\n },\n ],\n toDOM() {\n return ['p', {class: 'yfm-note-title'}, 0];\n },\n selectable: false,\n allowSelection: false,\n placeholder: {\n content:\n placeholder?.[NoteNode.NoteTitle] ??\n opts?.yfmNoteTitlePlaceholder ??\n DEFAULT_TITLE_PLACEHOLDER,\n alwaysVisible: true,\n },\n complex: 'leaf',\n },\n [NoteNode.NoteContent]: {\n content: '(block | paragraph)+',\n group: 'block yfm-note',\n parseDOM: [\n {\n tag: 'div.yfm-note-content',\n priority: 100,\n },\n ],\n toDOM() {\n return ['div', {class: 'yfm-note-content'}, 0];\n },\n selectable: false,\n allowSelection: false,\n placeholder: {\n content: placeholder?.[NoteNode.NoteContent] ?? DEFAULT_CONTENT_PLACEHOLDER,\n alwaysVisible: true,\n },\n complex: 'leaf',\n },\n});\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"../../../../../../src","sources":["extensions/yfm/YfmNote/YfmNoteSpecs/schema.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAC,mBAAgB;AAI5C,MAAM,yBAAyB,GAAG,MAAM,CAAC;AACzC,MAAM,2BAA2B,GAAG,cAAc,CAAC;AAEnD,MAAM,CAAC,MAAM,cAAc,GAAG,CAC1B,IAA0B,EAC1B,WAAgC,EACN,EAAE,CAAC,CAAC;IAC9B,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACb,KAAK,EAAE;YACH,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAC,OAAO,EAAE,0BAA0B,EAAC;YACxD,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAC,OAAO,EAAE,MAAM,EAAC;SACtC;QACD,OAAO,EAAE,GAAG,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,WAAW,EAAE;QACxD,KAAK,EAAE,gBAAgB;QACvB,QAAQ,EAAE;YACN;gBACI,GAAG,EAAE,cAAc;gBACnB,QAAQ,EAAE,GAAG;gBACb,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACjB,CAAC,SAAS,CAAC,KAAK,CAAC,EAAG,IAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE;oBACxE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAG,IAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,MAAM;iBAC7E,CAAC;aACL;SACJ;QACD,KAAK,CAAC,IAAI;YACN,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,MAAM;KAClB;IAED,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAClB,KAAK,EAAE,EAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,EAAC;QAC1C,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,gBAAgB;QACvB,QAAQ,EAAE;YACN;gBACI,GAAG,EAAE,kBAAkB;gBACvB,QAAQ,EAAE,GAAG;aAChB;SACJ;QACD,KAAK,CAAC,IAAI;YACN,OAAO,CAAC,GAAG,EAAE,EAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,KAAK,EAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE,KAAK;QACrB,WAAW,EAAE;YACT,OAAO,EACH,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACjC,IAAI,EAAE,uBAAuB;gBAC7B,yBAAyB;YAC7B,aAAa,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;KAClB;IACD,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;QACpB,OAAO,EAAE,sBAAsB;QAC/B,KAAK,EAAE,gBAAgB;QACvB,QAAQ,EAAE;YACN;gBACI,GAAG,EAAE,sBAAsB;gBAC3B,QAAQ,EAAE,GAAG;aAChB;SACJ;QACD,KAAK;YACD,OAAO,CAAC,KAAK,EAAE,EAAC,KAAK,EAAE,kBAAkB,EAAC,EAAE,CAAC,CAAC,CAAC;QACnD,CAAC;QACD,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE,KAAK;QACrB,WAAW,EAAE;YACT,OAAO,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,2BAA2B;YAC3E,aAAa,EAAE,IAAI;SACtB;QACD,OAAO,EAAE,MAAM;KAClB;CACJ,CAAC,CAAC","sourcesContent":["import type {NodeSpec} from 'prosemirror-model';\n\nimport type {PlaceholderOptions} from '../../../../utils/placeholder';\n\nimport {NoteAttrs, NoteNode} from './const';\n\nimport type {YfmNoteSpecsOptions} from './index';\n\nconst DEFAULT_TITLE_PLACEHOLDER = 'Note';\nconst DEFAULT_CONTENT_PLACEHOLDER = 'Note content';\n\nexport const getSchemaSpecs = (\n opts?: YfmNoteSpecsOptions,\n placeholder?: PlaceholderOptions,\n): Record<NoteNode, NodeSpec> => ({\n [NoteNode.Note]: {\n attrs: {\n [NoteAttrs.Class]: {default: 'yfm-note yfm-accent-info'},\n [NoteAttrs.Type]: {default: 'info'},\n },\n content: `${NoteNode.NoteTitle} ${NoteNode.NoteContent}`,\n group: 'block yfm-note',\n parseDOM: [\n {\n tag: 'div.yfm-note',\n priority: 100,\n getAttrs: (node) => ({\n [NoteAttrs.Class]: (node as Element).getAttribute(NoteAttrs.Class) || '',\n [NoteAttrs.Type]: (node as Element).getAttribute(NoteAttrs.Type) || 'info',\n }),\n },\n ],\n toDOM(node) {\n return ['div', node.attrs, 0];\n },\n selectable: true,\n allowSelection: true,\n complex: 'root',\n },\n\n [NoteNode.NoteTitle]: {\n attrs: {[NoteAttrs.Line]: {default: null}},\n content: 'inline*',\n group: 'block yfm-note',\n parseDOM: [\n {\n tag: 'p.yfm-note-title',\n priority: 100,\n },\n ],\n toDOM(node) {\n return ['p', {class: 'yfm-note-title', ...node.attrs}, 0];\n },\n selectable: false,\n allowSelection: false,\n placeholder: {\n content:\n placeholder?.[NoteNode.NoteTitle] ??\n opts?.yfmNoteTitlePlaceholder ??\n DEFAULT_TITLE_PLACEHOLDER,\n alwaysVisible: true,\n },\n complex: 'leaf',\n },\n [NoteNode.NoteContent]: {\n content: '(block | paragraph)+',\n group: 'block yfm-note',\n parseDOM: [\n {\n tag: 'div.yfm-note-content',\n priority: 100,\n },\n ],\n toDOM() {\n return ['div', {class: 'yfm-note-content'}, 0];\n },\n selectable: false,\n allowSelection: false,\n placeholder: {\n content: placeholder?.[NoteNode.NoteContent] ?? DEFAULT_CONTENT_PLACEHOLDER,\n alwaysVisible: true,\n },\n complex: 'leaf',\n },\n});\n"]}
@@ -11,6 +11,7 @@ export * from "./inputrules.js";
11
11
  export * from "./keymap.js";
12
12
  export * from "./marks.js";
13
13
  export * from "./node-children.js";
14
+ export * from "./node-descedants.js";
14
15
  export * from "./nodes.js";
15
16
  export * from "./placeholder.js";
16
17
  export * from "./platform.js";
@@ -11,6 +11,7 @@ export * from "./inputrules.js";
11
11
  export * from "./keymap.js";
12
12
  export * from "./marks.js";
13
13
  export * from "./node-children.js";
14
+ export * from "./node-descedants.js";
14
15
  export * from "./nodes.js";
15
16
  export * from "./placeholder.js";
16
17
  export * from "./platform.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["utils/index.ts"],"names":[],"mappings":"AAAA,6BAA0B;AAC1B,wCAAqC;AACrC,oCAA2B;AAC3B,+BAA4B;AAC5B,gCAA6B;AAC7B,iCAA8B;AAC9B,+BAA4B;AAC5B,mCAAgC;AAChC,6BAA0B;AAC1B,gCAA6B;AAC7B,4BAAyB;AACzB,2BAAwB;AACxB,mCAAgC;AAChC,2BAAwB;AACxB,iCAA8B;AAC9B,8BAA2B;AAC3B,iCAA8B;AAC9B,4BAAyB;AACzB,+BAA4B;AAC5B,6CAA0C;AAC1C,iCAA8B;AAC9B,4BAAyB;AACzB,2CAAwC","sourcesContent":["export * from './actions';\nexport * from './autocomplete-popup';\nexport * from './carousel';\nexport * from './clipboard';\nexport * from './descedants';\nexport * from './ecapeRegexp';\nexport * from './entity-id';\nexport * from './event-emitter';\nexport * from './helpers';\nexport * from './inputrules';\nexport * from './keymap';\nexport * from './marks';\nexport * from './node-children';\nexport * from './nodes';\nexport * from './placeholder';\nexport * from './platform';\nexport * from './remove-node';\nexport * from './schema';\nexport * from './selection';\nexport * from './serialize-for-clipboard';\nexport * from './sync-scroll';\nexport * from './upload';\nexport * from './get-proportional-size';\nexport type {DirectiveSyntaxValue, DirectiveSyntaxOption} from './directive';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["utils/index.ts"],"names":[],"mappings":"AAAA,6BAA0B;AAC1B,wCAAqC;AACrC,oCAA2B;AAC3B,+BAA4B;AAC5B,gCAA6B;AAC7B,iCAA8B;AAC9B,+BAA4B;AAC5B,mCAAgC;AAChC,6BAA0B;AAC1B,gCAA6B;AAC7B,4BAAyB;AACzB,2BAAwB;AACxB,mCAAgC;AAChC,qCAAkC;AAClC,2BAAwB;AACxB,iCAA8B;AAC9B,8BAA2B;AAC3B,iCAA8B;AAC9B,4BAAyB;AACzB,+BAA4B;AAC5B,6CAA0C;AAC1C,iCAA8B;AAC9B,4BAAyB;AACzB,2CAAwC","sourcesContent":["export * from './actions';\nexport * from './autocomplete-popup';\nexport * from './carousel';\nexport * from './clipboard';\nexport * from './descedants';\nexport * from './ecapeRegexp';\nexport * from './entity-id';\nexport * from './event-emitter';\nexport * from './helpers';\nexport * from './inputrules';\nexport * from './keymap';\nexport * from './marks';\nexport * from './node-children';\nexport * from './node-descedants';\nexport * from './nodes';\nexport * from './placeholder';\nexport * from './platform';\nexport * from './remove-node';\nexport * from './schema';\nexport * from './selection';\nexport * from './serialize-for-clipboard';\nexport * from './sync-scroll';\nexport * from './upload';\nexport * from './get-proportional-size';\nexport type {DirectiveSyntaxValue, DirectiveSyntaxOption} from './directive';\n"]}
@@ -0,0 +1,10 @@
1
+ import type { Node } from "../pm/model.js";
2
+ type DescendantWithMeta = {
3
+ node: Node;
4
+ pos: number;
5
+ parent: Node | null;
6
+ index: number;
7
+ };
8
+ export declare function getDescedantBy(node: Node, f: (child: DescendantWithMeta) => boolean): DescendantWithMeta | null;
9
+ export declare function getDescedantByAttribute(node: Node, attr: string, value: unknown | unknown[]): DescendantWithMeta | null;
10
+ export {};
@@ -0,0 +1,19 @@
1
+ export function getDescedantBy(node, f) {
2
+ let result = null;
3
+ node.descendants((node, pos, parent, index) => {
4
+ if (result)
5
+ return false;
6
+ const child = { node, pos, parent, index };
7
+ if (f(child)) {
8
+ result = child;
9
+ return false;
10
+ }
11
+ return true;
12
+ });
13
+ return result;
14
+ }
15
+ export function getDescedantByAttribute(node, attr, value) {
16
+ const values = Array().concat(value);
17
+ return getDescedantBy(node, (item) => values.includes(item.node.attrs[attr]));
18
+ }
19
+ //# sourceMappingURL=node-descedants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-descedants.js","sourceRoot":"../../../src","sources":["utils/node-descedants.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,cAAc,CAC1B,IAAU,EACV,CAAyC;IAEzC,IAAI,MAAM,GAA8B,IAAI,CAAC;IAC7C,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;QAC1C,IAAI,MAAM;YAAE,OAAO,KAAK,CAAC;QAEzB,MAAM,KAAK,GAAuB,EAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAC,CAAC;QAC7D,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,KAAK,CAAC;YACf,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACnC,IAAU,EACV,IAAY,EACZ,KAA0B;IAE1B,MAAM,MAAM,GAAG,KAAK,EAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,cAAc,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC","sourcesContent":["import type {Node} from '#pm/model';\n\ntype DescendantWithMeta = {\n node: Node;\n pos: number;\n parent: Node | null;\n index: number;\n};\n\nexport function getDescedantBy(\n node: Node,\n f: (child: DescendantWithMeta) => boolean,\n): DescendantWithMeta | null {\n let result: DescendantWithMeta | null = null;\n node.descendants((node, pos, parent, index) => {\n if (result) return false;\n\n const child: DescendantWithMeta = {node, pos, parent, index};\n if (f(child)) {\n result = child;\n return false;\n }\n\n return true;\n });\n return result;\n}\n\nexport function getDescedantByAttribute(\n node: Node,\n attr: string,\n value: unknown | unknown[],\n): DescendantWithMeta | null {\n const values = Array<unknown>().concat(value);\n return getDescedantBy(node, (item) => values.includes(item.node.attrs[attr]));\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  /** During build process, the current version will be injected here */
2
- export const VERSION = typeof '15.24.1' !== 'undefined' ? '15.24.1' : 'unknown';
2
+ export const VERSION = typeof '15.25.0' !== 'undefined' ? '15.25.0' : 'unknown';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"../../src","sources":["version.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC","sourcesContent":["/** During build process, the current version will be injected here */\nexport const VERSION = typeof '15.24.1' !== 'undefined' ? '15.24.1' : 'unknown';\n"]}
1
+ {"version":3,"file":"version.js","sourceRoot":"../../src","sources":["version.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC","sourcesContent":["/** During build process, the current version will be injected here */\nexport const VERSION = typeof '15.25.0' !== 'undefined' ? '15.25.0' : 'unknown';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravity-ui/markdown-editor",
3
- "version": "15.24.1",
3
+ "version": "15.25.0",
4
4
  "description": "Markdown wysiwyg and markup editor",
5
5
  "license": "MIT",
6
6
  "repository": {