@gravity-ui/markdown-editor 15.23.0 → 15.24.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 (156) hide show
  1. package/build/cjs/bundle/ToolbarView.js +2 -1
  2. package/build/cjs/bundle/ToolbarView.js.map +1 -1
  3. package/build/cjs/bundle/settings/index.d.ts +2 -1
  4. package/build/cjs/bundle/settings/index.js +6 -2
  5. package/build/cjs/bundle/settings/index.js.map +1 -1
  6. package/build/cjs/bundle/toolbar/ToolbarButtonWithPopupMenu.js +4 -1
  7. package/build/cjs/bundle/toolbar/ToolbarButtonWithPopupMenu.js.map +1 -1
  8. package/build/cjs/common/layout.d.ts +3 -0
  9. package/build/cjs/common/layout.js +7 -0
  10. package/build/cjs/common/layout.js.map +1 -0
  11. package/build/cjs/extensions/base/BaseSchema/BaseSchemaSpecs/index.d.ts +1 -1
  12. package/build/cjs/extensions/base/BaseSchema/BaseSchemaSpecs/index.js +11 -3
  13. package/build/cjs/extensions/base/BaseSchema/BaseSchemaSpecs/index.js.map +1 -1
  14. package/build/cjs/extensions/markdown/Table/commands.d.ts +2 -0
  15. package/build/cjs/extensions/markdown/Table/commands.js +73 -0
  16. package/build/cjs/extensions/markdown/Table/commands.js.map +1 -0
  17. package/build/cjs/extensions/markdown/Table/helpers.d.ts +7 -2
  18. package/build/cjs/extensions/markdown/Table/helpers.js +22 -9
  19. package/build/cjs/extensions/markdown/Table/helpers.js.map +1 -1
  20. package/build/cjs/extensions/markdown/Table/index.js +3 -0
  21. package/build/cjs/extensions/markdown/Table/index.js.map +1 -1
  22. package/build/cjs/extensions/yfm/ImgSize/ImagePaste/index.js +35 -0
  23. package/build/cjs/extensions/yfm/ImgSize/ImagePaste/index.js.map +1 -1
  24. package/build/cjs/extensions/yfm/ImgSize/ImgSizeSpecs/const.d.ts +1 -0
  25. package/build/cjs/extensions/yfm/ImgSize/ImgSizeSpecs/const.js +1 -0
  26. package/build/cjs/extensions/yfm/ImgSize/ImgSizeSpecs/const.js.map +1 -1
  27. package/build/cjs/extensions/yfm/ImgSize/ImgSizeSpecs/index.js +3 -0
  28. package/build/cjs/extensions/yfm/ImgSize/ImgSizeSpecs/index.js.map +1 -1
  29. package/build/cjs/extensions/yfm/ImgSize/utils.d.ts +6 -0
  30. package/build/cjs/extensions/yfm/ImgSize/utils.js +25 -0
  31. package/build/cjs/extensions/yfm/ImgSize/utils.js.map +1 -1
  32. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/const.d.ts +5 -0
  33. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/const.js +6 -1
  34. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/const.js.map +1 -1
  35. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/index.d.ts +1 -1
  36. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/index.js +2 -1
  37. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/index.js.map +1 -1
  38. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/schema.d.ts +1 -1
  39. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/schema.js +6 -6
  40. package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/schema.js.map +1 -1
  41. package/build/cjs/extensions/yfm/YfmCut/actions/toYfmCut.d.ts +1 -1
  42. package/build/cjs/extensions/yfm/YfmCut/actions/toYfmCut.js +6 -6
  43. package/build/cjs/extensions/yfm/YfmCut/actions/toYfmCut.js.map +1 -1
  44. package/build/cjs/extensions/yfm/YfmCut/const.d.ts +9 -1
  45. package/build/cjs/extensions/yfm/YfmCut/const.js +13 -6
  46. package/build/cjs/extensions/yfm/YfmCut/const.js.map +1 -1
  47. package/build/cjs/extensions/yfm/YfmCut/index.css +0 -3
  48. package/build/cjs/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.css +6 -5
  49. package/build/cjs/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.d.ts +5 -2
  50. package/build/cjs/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.js +26 -9
  51. package/build/cjs/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.js.map +1 -1
  52. package/build/cjs/extensions/yfm/YfmCut/plugins/active.d.ts +1 -1
  53. package/build/cjs/extensions/yfm/YfmCut/plugins/active.js +6 -7
  54. package/build/cjs/extensions/yfm/YfmCut/plugins/active.js.map +1 -1
  55. package/build/cjs/extensions/yfm/YfmCut/plugins/auto-open.d.ts +1 -1
  56. package/build/cjs/extensions/yfm/YfmCut/plugins/auto-open.js +8 -9
  57. package/build/cjs/extensions/yfm/YfmCut/plugins/auto-open.js.map +1 -1
  58. package/build/cjs/react-utils/index.d.ts +1 -0
  59. package/build/cjs/react-utils/index.js +1 -0
  60. package/build/cjs/react-utils/index.js.map +1 -1
  61. package/build/cjs/react-utils/useSticky.js +13 -2
  62. package/build/cjs/react-utils/useSticky.js.map +1 -1
  63. package/build/cjs/react-utils/useTargetZIndex.d.ts +1 -0
  64. package/build/cjs/react-utils/useTargetZIndex.js +50 -0
  65. package/build/cjs/react-utils/useTargetZIndex.js.map +1 -0
  66. package/build/cjs/toolbar/ToolbarListButton.js +4 -1
  67. package/build/cjs/toolbar/ToolbarListButton.js.map +1 -1
  68. package/build/cjs/utils/get-target-z-index.d.ts +1 -0
  69. package/build/cjs/utils/get-target-z-index.js +17 -0
  70. package/build/cjs/utils/get-target-z-index.js.map +1 -0
  71. package/build/cjs/utils/inputrules.d.ts +1 -0
  72. package/build/cjs/utils/inputrules.js +8 -3
  73. package/build/cjs/utils/inputrules.js.map +1 -1
  74. package/build/cjs/utils/rulebuilders.js +2 -0
  75. package/build/cjs/utils/rulebuilders.js.map +1 -1
  76. package/build/cjs/version.js +1 -1
  77. package/build/cjs/version.js.map +1 -1
  78. package/build/esm/bundle/ToolbarView.js +2 -1
  79. package/build/esm/bundle/ToolbarView.js.map +1 -1
  80. package/build/esm/bundle/settings/index.d.ts +2 -1
  81. package/build/esm/bundle/settings/index.js +6 -2
  82. package/build/esm/bundle/settings/index.js.map +1 -1
  83. package/build/esm/bundle/toolbar/ToolbarButtonWithPopupMenu.js +4 -1
  84. package/build/esm/bundle/toolbar/ToolbarButtonWithPopupMenu.js.map +1 -1
  85. package/build/esm/common/layout.d.ts +3 -0
  86. package/build/esm/common/layout.js +4 -0
  87. package/build/esm/common/layout.js.map +1 -0
  88. package/build/esm/extensions/base/BaseSchema/BaseSchemaSpecs/index.d.ts +1 -1
  89. package/build/esm/extensions/base/BaseSchema/BaseSchemaSpecs/index.js +10 -2
  90. package/build/esm/extensions/base/BaseSchema/BaseSchemaSpecs/index.js.map +1 -1
  91. package/build/esm/extensions/markdown/Table/commands.d.ts +2 -0
  92. package/build/esm/extensions/markdown/Table/commands.js +69 -0
  93. package/build/esm/extensions/markdown/Table/commands.js.map +1 -0
  94. package/build/esm/extensions/markdown/Table/helpers.d.ts +7 -2
  95. package/build/esm/extensions/markdown/Table/helpers.js +9 -3
  96. package/build/esm/extensions/markdown/Table/helpers.js.map +1 -1
  97. package/build/esm/extensions/markdown/Table/index.js +3 -0
  98. package/build/esm/extensions/markdown/Table/index.js.map +1 -1
  99. package/build/esm/extensions/yfm/ImgSize/ImagePaste/index.js +36 -1
  100. package/build/esm/extensions/yfm/ImgSize/ImagePaste/index.js.map +1 -1
  101. package/build/esm/extensions/yfm/ImgSize/ImgSizeSpecs/const.d.ts +1 -0
  102. package/build/esm/extensions/yfm/ImgSize/ImgSizeSpecs/const.js +1 -0
  103. package/build/esm/extensions/yfm/ImgSize/ImgSizeSpecs/const.js.map +1 -1
  104. package/build/esm/extensions/yfm/ImgSize/ImgSizeSpecs/index.js +3 -0
  105. package/build/esm/extensions/yfm/ImgSize/ImgSizeSpecs/index.js.map +1 -1
  106. package/build/esm/extensions/yfm/ImgSize/utils.d.ts +6 -0
  107. package/build/esm/extensions/yfm/ImgSize/utils.js +22 -0
  108. package/build/esm/extensions/yfm/ImgSize/utils.js.map +1 -1
  109. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/const.d.ts +5 -0
  110. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/const.js +5 -0
  111. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/const.js.map +1 -1
  112. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/index.d.ts +1 -1
  113. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/index.js +1 -1
  114. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/index.js.map +1 -1
  115. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/schema.d.ts +1 -1
  116. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/schema.js +7 -7
  117. package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/schema.js.map +1 -1
  118. package/build/esm/extensions/yfm/YfmCut/actions/toYfmCut.d.ts +1 -1
  119. package/build/esm/extensions/yfm/YfmCut/actions/toYfmCut.js +5 -5
  120. package/build/esm/extensions/yfm/YfmCut/actions/toYfmCut.js.map +1 -1
  121. package/build/esm/extensions/yfm/YfmCut/const.d.ts +9 -1
  122. package/build/esm/extensions/yfm/YfmCut/const.js +8 -1
  123. package/build/esm/extensions/yfm/YfmCut/const.js.map +1 -1
  124. package/build/esm/extensions/yfm/YfmCut/index.css +0 -3
  125. package/build/esm/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.css +6 -5
  126. package/build/esm/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.d.ts +5 -2
  127. package/build/esm/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.js +26 -9
  128. package/build/esm/extensions/yfm/YfmCut/nodeviews/yfm-cut-title.js.map +1 -1
  129. package/build/esm/extensions/yfm/YfmCut/plugins/active.d.ts +1 -1
  130. package/build/esm/extensions/yfm/YfmCut/plugins/active.js +4 -5
  131. package/build/esm/extensions/yfm/YfmCut/plugins/active.js.map +1 -1
  132. package/build/esm/extensions/yfm/YfmCut/plugins/auto-open.d.ts +1 -1
  133. package/build/esm/extensions/yfm/YfmCut/plugins/auto-open.js +6 -7
  134. package/build/esm/extensions/yfm/YfmCut/plugins/auto-open.js.map +1 -1
  135. package/build/esm/react-utils/index.d.ts +1 -0
  136. package/build/esm/react-utils/index.js +1 -0
  137. package/build/esm/react-utils/index.js.map +1 -1
  138. package/build/esm/react-utils/useSticky.js +13 -2
  139. package/build/esm/react-utils/useSticky.js.map +1 -1
  140. package/build/esm/react-utils/useTargetZIndex.d.ts +1 -0
  141. package/build/esm/react-utils/useTargetZIndex.js +47 -0
  142. package/build/esm/react-utils/useTargetZIndex.js.map +1 -0
  143. package/build/esm/toolbar/ToolbarListButton.js +4 -1
  144. package/build/esm/toolbar/ToolbarListButton.js.map +1 -1
  145. package/build/esm/utils/get-target-z-index.d.ts +1 -0
  146. package/build/esm/utils/get-target-z-index.js +14 -0
  147. package/build/esm/utils/get-target-z-index.js.map +1 -0
  148. package/build/esm/utils/inputrules.d.ts +1 -0
  149. package/build/esm/utils/inputrules.js +5 -1
  150. package/build/esm/utils/inputrules.js.map +1 -1
  151. package/build/esm/utils/rulebuilders.js +3 -1
  152. package/build/esm/utils/rulebuilders.js.map +1 -1
  153. package/build/esm/version.js +1 -1
  154. package/build/esm/version.js.map +1 -1
  155. package/build/styles.css +6 -8
  156. package/package.json +2 -2
@@ -4,7 +4,7 @@
4
4
  ///
5
5
  import { InputRule } from 'prosemirror-inputrules';
6
6
  import { canJoin, findWrapping } from 'prosemirror-transform';
7
- import { hasCodeMark } from "./inputrules.js";
7
+ import { hasCodeMark, inDefaultTextblock } from "./inputrules.js";
8
8
  /// Build an input rule for automatically wrapping a textblock when a
9
9
  /// given string is typed. The `regexp` argument is
10
10
  /// directly passed through to the `InputRule` constructor. You'll
@@ -24,6 +24,8 @@ export function wrappingInputRule(regexp, nodeType, getAttrs = null, joinPredica
24
24
  return new InputRule(regexp, (state, match, start, end) => {
25
25
  if (hasCodeMark(state, match, start, end))
26
26
  return null;
27
+ if (!inDefaultTextblock(state, match, start, end))
28
+ return null;
27
29
  const attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;
28
30
  const tr = state.tr.delete(start, end);
29
31
  const $start = tr.doc.resolve(start), range = $start.blockRange(), wrapping = range && findWrapping(range, nodeType, attrs);
@@ -1 +1 @@
1
- {"version":3,"file":"rulebuilders.js","sourceRoot":"../../../src","sources":["utils/rulebuilders.ts"],"names":[],"mappings":"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","sourcesContent":["///\n/// Copy of https://github.com/ProseMirror/prosemirror-inputrules/blob/1.4.0/src/rulebuilders.ts\n/// Added a check for the presence of a code mark\n///\n\nimport {InputRule} from 'prosemirror-inputrules';\nimport type {Attrs, Node, NodeType} from 'prosemirror-model';\nimport {canJoin, findWrapping} from 'prosemirror-transform';\n\nimport {hasCodeMark} from './inputrules';\n\n/// Build an input rule for automatically wrapping a textblock when a\n/// given string is typed. The `regexp` argument is\n/// directly passed through to the `InputRule` constructor. You'll\n/// probably want the regexp to start with `^`, so that the pattern can\n/// only occur at the start of a textblock.\n///\n/// `nodeType` is the type of node to wrap in. If it needs attributes,\n/// you can either pass them directly, or pass a function that will\n/// compute them from the regular expression match.\n///\n/// By default, if there's a node with the same type above the newly\n/// wrapped node, the rule will try to [join](#transform.Transform.join) those\n/// two nodes. You can pass a join predicate, which takes a regular\n/// expression match and the node before the wrapped node, and can\n/// return a boolean to indicate whether a join should happen.\nexport function wrappingInputRule(\n regexp: RegExp,\n nodeType: NodeType,\n getAttrs: Attrs | null | ((matches: RegExpMatchArray) => Attrs | null) = null,\n joinPredicate?: (match: RegExpMatchArray, node: Node) => boolean,\n) {\n return new InputRule(regexp, (state, match, start, end) => {\n if (hasCodeMark(state, match, start, end)) return null;\n\n const attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;\n const tr = state.tr.delete(start, end);\n const $start = tr.doc.resolve(start),\n range = $start.blockRange(),\n wrapping = range && findWrapping(range, nodeType, attrs);\n if (!wrapping) return null;\n tr.wrap(range!, wrapping);\n const before = tr.doc.resolve(start - 1).nodeBefore;\n if (\n before &&\n before.type == nodeType &&\n canJoin(tr.doc, start - 1) &&\n (!joinPredicate || joinPredicate(match, before))\n )\n tr.join(start - 1);\n return tr;\n });\n}\n\n/// Build an input rule that changes the type of a textblock when the\n/// matched text is typed into it. You'll usually want to start your\n/// regexp with `^` to that it is only matched at the start of a\n/// textblock. The optional `getAttrs` parameter can be used to compute\n/// the new node's attributes, and works the same as in the\n/// `wrappingInputRule` function.\nexport function textblockTypeInputRule(\n regexp: RegExp,\n nodeType: NodeType,\n getAttrs: Attrs | null | ((match: RegExpMatchArray) => Attrs | null) = null,\n) {\n return new InputRule(regexp, (state, match, start, end) => {\n if (hasCodeMark(state, match, start, end)) return null;\n\n const $start = state.doc.resolve(start);\n const attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;\n if (!$start.node(-1).canReplaceWith($start.index(-1), $start.indexAfter(-1), nodeType))\n return null;\n return state.tr.delete(start, end).setBlockType(start, start, nodeType, attrs);\n });\n}\n"]}
1
+ {"version":3,"file":"rulebuilders.js","sourceRoot":"../../../src","sources":["utils/rulebuilders.ts"],"names":[],"mappings":"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","sourcesContent":["///\n/// Copy of https://github.com/ProseMirror/prosemirror-inputrules/blob/1.4.0/src/rulebuilders.ts\n/// Added a check for the presence of a code mark\n///\n\nimport {InputRule} from 'prosemirror-inputrules';\nimport type {Attrs, Node, NodeType} from 'prosemirror-model';\nimport {canJoin, findWrapping} from 'prosemirror-transform';\n\nimport {hasCodeMark, inDefaultTextblock} from './inputrules';\n\n/// Build an input rule for automatically wrapping a textblock when a\n/// given string is typed. The `regexp` argument is\n/// directly passed through to the `InputRule` constructor. You'll\n/// probably want the regexp to start with `^`, so that the pattern can\n/// only occur at the start of a textblock.\n///\n/// `nodeType` is the type of node to wrap in. If it needs attributes,\n/// you can either pass them directly, or pass a function that will\n/// compute them from the regular expression match.\n///\n/// By default, if there's a node with the same type above the newly\n/// wrapped node, the rule will try to [join](#transform.Transform.join) those\n/// two nodes. You can pass a join predicate, which takes a regular\n/// expression match and the node before the wrapped node, and can\n/// return a boolean to indicate whether a join should happen.\nexport function wrappingInputRule(\n regexp: RegExp,\n nodeType: NodeType,\n getAttrs: Attrs | null | ((matches: RegExpMatchArray) => Attrs | null) = null,\n joinPredicate?: (match: RegExpMatchArray, node: Node) => boolean,\n) {\n return new InputRule(regexp, (state, match, start, end) => {\n if (hasCodeMark(state, match, start, end)) return null;\n if (!inDefaultTextblock(state, match, start, end)) return null;\n\n const attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;\n const tr = state.tr.delete(start, end);\n const $start = tr.doc.resolve(start),\n range = $start.blockRange(),\n wrapping = range && findWrapping(range, nodeType, attrs);\n if (!wrapping) return null;\n tr.wrap(range!, wrapping);\n const before = tr.doc.resolve(start - 1).nodeBefore;\n if (\n before &&\n before.type == nodeType &&\n canJoin(tr.doc, start - 1) &&\n (!joinPredicate || joinPredicate(match, before))\n )\n tr.join(start - 1);\n return tr;\n });\n}\n\n/// Build an input rule that changes the type of a textblock when the\n/// matched text is typed into it. You'll usually want to start your\n/// regexp with `^` to that it is only matched at the start of a\n/// textblock. The optional `getAttrs` parameter can be used to compute\n/// the new node's attributes, and works the same as in the\n/// `wrappingInputRule` function.\nexport function textblockTypeInputRule(\n regexp: RegExp,\n nodeType: NodeType,\n getAttrs: Attrs | null | ((match: RegExpMatchArray) => Attrs | null) = null,\n) {\n return new InputRule(regexp, (state, match, start, end) => {\n if (hasCodeMark(state, match, start, end)) return null;\n\n const $start = state.doc.resolve(start);\n const attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;\n if (!$start.node(-1).canReplaceWith($start.index(-1), $start.indexAfter(-1), nodeType))\n return null;\n return state.tr.delete(start, end).setBlockType(start, start, nodeType, attrs);\n });\n}\n"]}
@@ -1,3 +1,3 @@
1
1
  /** During build process, the current version will be injected here */
2
- export const VERSION = typeof '15.23.0' !== 'undefined' ? '15.23.0' : 'unknown';
2
+ export const VERSION = typeof '15.24.1' !== 'undefined' ? '15.24.1' : '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.23.0' !== 'undefined' ? '15.23.0' : '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.24.1' !== 'undefined' ? '15.24.1' : 'unknown';\n"]}
package/build/styles.css CHANGED
@@ -1199,9 +1199,6 @@ body :has(.g-md-resizable_resizing) {
1199
1199
  .ProseMirror.yfm .yfm-cut .yfm-cut-title:focus {
1200
1200
  outline: 0;
1201
1201
  }
1202
- .ProseMirror.yfm .yfm-cut.open > .yfm-cut-title:before {
1203
- transform: translateY(-50%);
1204
- }
1205
1202
  .yfm-editor .yfm-file {
1206
1203
  pointer-events: none;
1207
1204
  }
@@ -1639,17 +1636,18 @@ body :has(.g-md-resizable_resizing) {
1639
1636
  font-size: var(--g-text-body-2-font-size);
1640
1637
  line-height: var(--g-text-body-2-line-height);
1641
1638
  }
1642
- .yfm-cut-title .g-md-yfm-cut-title-inner {
1639
+ .ProseMirror.yfm .yfm-cut-title > .g-md-yfm-cut-title-inner {
1643
1640
  cursor: text;
1644
1641
  }
1645
-
1646
- .yfm-cut-content {
1642
+ .ProseMirror.yfm .yfm-cut-content {
1647
1643
  display: none;
1648
1644
  overflow: hidden;
1649
1645
  transition: height 0.3s ease-in-out;
1650
1646
  }
1651
-
1652
- .open > .yfm-cut-content {
1647
+ .ProseMirror.yfm .yfm-cut.yfm-cut-open > .yfm-cut-title:before {
1648
+ transform: translateY(-50%);
1649
+ }
1650
+ .ProseMirror.yfm .yfm-cut.yfm-cut-open > .yfm-cut-content {
1653
1651
  display: revert;
1654
1652
  }
1655
1653
  .g-md-file-skeleton {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravity-ui/markdown-editor",
3
- "version": "15.23.0",
3
+ "version": "15.24.1",
4
4
  "description": "Markdown wysiwyg and markup editor",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -318,7 +318,7 @@
318
318
  }
319
319
  },
320
320
  "peerDependencies": {
321
- "@diplodoc/cut-extension": "^0.5.0 || ^0.6.1 || ^0.7.1",
321
+ "@diplodoc/cut-extension": "^0.5.0 || ^0.6.1 || ^0.7.1 || ^1.0.0",
322
322
  "@diplodoc/file-extension": "^0.2.1",
323
323
  "@diplodoc/folding-headings-extension": "^0.1.0",
324
324
  "@diplodoc/html-extension": "^2.3.2",