@meowdown/core 0.78.3 → 0.79.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.
- package/dist/index.d.ts +16 -2
- package/dist/index.js +73 -10
- package/package.json +9 -9
package/dist/index.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ import { ListAttrs } from "@prosekit/extensions/list";
|
|
|
10
10
|
import { HorizontalRuleExtension } from "@prosekit/extensions/horizontal-rule";
|
|
11
11
|
import { Resolver, XPostMediaClickEvent } from "@meowdown/embed/x";
|
|
12
12
|
import { YouTubeVideoClickEvent } from "@meowdown/embed/youtube";
|
|
13
|
+
import "prosemirror-flat-list";
|
|
13
14
|
import { render } from "katex";
|
|
14
15
|
import { XPost, YouTubeVideo } from "@post-embed/types";
|
|
15
16
|
import { VirtualElement } from "@floating-ui/dom";
|
|
@@ -1098,6 +1099,7 @@ interface EditorConfig extends InlineMarkOptions, FollowLinkHandlers, FilePasteO
|
|
|
1098
1099
|
embedPaste?: boolean;
|
|
1099
1100
|
linkPaste?: boolean;
|
|
1100
1101
|
bulletAfterHeading?: boolean;
|
|
1102
|
+
backspaceDeletesEmptyFirstBlock?: boolean;
|
|
1101
1103
|
substitution?: boolean;
|
|
1102
1104
|
wikilinkEnabled?: boolean;
|
|
1103
1105
|
placeholder?: PlaceholderOptions$1['placeholder'];
|
|
@@ -1121,7 +1123,7 @@ declare function defineEditorExtensionImpl(options: EditorExtensionOptions): imp
|
|
|
1121
1123
|
frontmatter?: Frontmatter;
|
|
1122
1124
|
};
|
|
1123
1125
|
};
|
|
1124
|
-
}>, import("@prosekit/extensions/text").TextExtension, import("@prosekit/extensions/blockquote").BlockquoteExtension, import("@prosekit/core").Union<readonly [import("@prosekit/extensions/list").ListSpecExtension, import("@prosekit/core").PlainExtension, import("@prosekit/
|
|
1126
|
+
}>, import("@prosekit/extensions/text").TextExtension, import("@prosekit/extensions/blockquote").BlockquoteExtension, import("@prosekit/core").Union<readonly [import("@prosekit/extensions/list").ListSpecExtension, import("@prosekit/core").PlainExtension, import("@prosekit/extensions/list").ListCommandsExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").Extension<{
|
|
1125
1127
|
Nodes: {
|
|
1126
1128
|
list: {
|
|
1127
1129
|
marker?: ListMarker;
|
|
@@ -1146,6 +1148,9 @@ declare function defineEditorExtensionImpl(options: EditorExtensionOptions): imp
|
|
|
1146
1148
|
wrapInCircleTask: [];
|
|
1147
1149
|
wrapInSquareTask: [];
|
|
1148
1150
|
toggleListCollapsed: [];
|
|
1151
|
+
indentList: [options?: import("prosemirror-flat-list").IndentListOptions | undefined];
|
|
1152
|
+
dedentList: [options?: import("prosemirror-flat-list").DedentListOptions | undefined];
|
|
1153
|
+
splitList: [options?: import("prosemirror-flat-list").SplitListOptions | undefined];
|
|
1149
1154
|
};
|
|
1150
1155
|
}>]>, import("@prosekit/core").Union<readonly [import("@prosekit/extensions/heading").HeadingSpecExtension, import("@prosekit/core").Extension<{
|
|
1151
1156
|
Nodes: {
|
|
@@ -1247,7 +1252,7 @@ declare function defineEditorExtensionImpl(options: EditorExtensionOptions): imp
|
|
|
1247
1252
|
Marks: {
|
|
1248
1253
|
mdPack: MdPackAttrs;
|
|
1249
1254
|
};
|
|
1250
|
-
}>]>, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").Extension<import("@prosekit/core").ExtensionTyping<any, any, any>>, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").Union<readonly [import("@prosekit/core").Extension<{
|
|
1255
|
+
}>]>, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").Extension<import("@prosekit/core").ExtensionTyping<any, any, any>>, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").Union<readonly [import("@prosekit/core").Extension<{
|
|
1251
1256
|
Commands: {
|
|
1252
1257
|
insertSoftBreak: [];
|
|
1253
1258
|
};
|
|
@@ -1343,6 +1348,15 @@ interface DocToMarkdownOptions {
|
|
|
1343
1348
|
*/
|
|
1344
1349
|
export declare function docToMarkdown(node: ProseMirrorNode, options?: DocToMarkdownOptions): string;
|
|
1345
1350
|
//#endregion
|
|
1351
|
+
//#region src/extensions/backspace-empty-first-block.d.ts
|
|
1352
|
+
/**
|
|
1353
|
+
* Nothing sits before the document's first block, so Backspace in an empty
|
|
1354
|
+
* first paragraph has nothing to join and does nothing. When this extension is
|
|
1355
|
+
* applied, that Backspace deletes the empty paragraph instead, and the rest of
|
|
1356
|
+
* the document moves up one line.
|
|
1357
|
+
*/
|
|
1358
|
+
export declare function defineBackspaceEmptyFirstBlock(enabled?: (state: EditorState) => boolean): PlainExtension;
|
|
1359
|
+
//#endregion
|
|
1346
1360
|
//#region src/extensions/bullet-after-heading.d.ts
|
|
1347
1361
|
/**
|
|
1348
1362
|
* "Type a title, press Return, start bullets." When this extension is applied,
|
package/dist/index.js
CHANGED
|
@@ -30,8 +30,8 @@ import { createParser } from "prosemirror-highlight/lezer";
|
|
|
30
30
|
import { defineEnterRule, defineTextBlockEnterRule } from "@prosekit/extensions/enter-rule";
|
|
31
31
|
import { defineInputRule, defineTextBlockInputRule } from "@prosekit/extensions/input-rule";
|
|
32
32
|
import { triggerAutocomplete } from "@prosekit/extensions/autocomplete";
|
|
33
|
-
import { defineListCommands, defineListDropIndicator,
|
|
34
|
-
import { chainCommands, lift, newlineInCode, splitBlock } from "@prosekit/pm/commands";
|
|
33
|
+
import { defineListCommands, defineListDropIndicator, defineListSpec, moveList, toggleList, unwrapList, wrapInList } from "@prosekit/extensions/list";
|
|
34
|
+
import { chainCommands, deleteSelection, lift, newlineInCode, splitBlock } from "@prosekit/pm/commands";
|
|
35
35
|
import { closeHistory } from "@prosekit/pm/history";
|
|
36
36
|
import { defineHorizontalRule } from "@prosekit/extensions/horizontal-rule";
|
|
37
37
|
import { X_POST_MEDIA_CLICK, registerXPost } from "@meowdown/embed/x";
|
|
@@ -44,7 +44,7 @@ import * as v from "valibot";
|
|
|
44
44
|
import { AttrStep, ReplaceStep, Step, StepResult, Transform } from "@prosekit/pm/transform";
|
|
45
45
|
import { decodeString } from "micromark-util-decode-string";
|
|
46
46
|
import { normalizeIdentifier } from "micromark-util-normalize-identifier";
|
|
47
|
-
import { createListRenderingPlugin, createSafariInputMethodWorkaroundPlugin, createToggleCollapsedCommand, defaultAttributesGetter, enterCommand, findCheckboxInListItem, handleListMarkerMouseDown, joinListElements, listToDOM, unwrapListSlice, wrappingListInputRule } from "prosemirror-flat-list";
|
|
47
|
+
import { createDedentListCommand, createIndentListCommand, createListRenderingPlugin, createSafariInputMethodWorkaroundPlugin, createSplitListCommand, createToggleCollapsedCommand, defaultAttributesGetter, deleteCommand, enterCommand, findCheckboxInListItem, handleListMarkerMouseDown, joinCollapsedListBackward, joinListElements, joinListUp, listToDOM, protectCollapsed, unwrapListSlice, wrappingListInputRule } from "prosemirror-flat-list";
|
|
48
48
|
import { defineTableCellSpec, defineTableCommands, defineTableDropIndicator, defineTableEditingPlugin, defineTableHeaderCellSpec, defineTableRowSpec, defineTableSpec, deleteTable, isCellSelection } from "@prosekit/extensions/table";
|
|
49
49
|
import { InputRule } from "@prosekit/pm/inputrules";
|
|
50
50
|
|
|
@@ -428,7 +428,9 @@ function getMarkRangeStrictlyAround(state, pos, markNames) {
|
|
|
428
428
|
//#region src/extensions/atom-mark-navigation.ts
|
|
429
429
|
function getActiveMarkNames(marks, state) {
|
|
430
430
|
const mode = getMarkMode(state);
|
|
431
|
-
|
|
431
|
+
const result = [];
|
|
432
|
+
for (const mark of marks) if (mark.modes.includes(mode)) result.push(mark.name);
|
|
433
|
+
return result;
|
|
432
434
|
}
|
|
433
435
|
function getSelectedRange(state, markNames) {
|
|
434
436
|
const { from, to, empty } = state.selection;
|
|
@@ -627,6 +629,38 @@ function isNodeOfType(node, name) {
|
|
|
627
629
|
return node.type.name === name;
|
|
628
630
|
}
|
|
629
631
|
|
|
632
|
+
//#endregion
|
|
633
|
+
//#region src/extensions/backspace-empty-first-block.ts
|
|
634
|
+
/**
|
|
635
|
+
* Claim Backspace only when the selection is an empty caret in an empty
|
|
636
|
+
* paragraph that is the document's first block and has a block after it.
|
|
637
|
+
* Delete that paragraph and leave the following block as it is.
|
|
638
|
+
*/
|
|
639
|
+
const deleteEmptyFirstBlock = (state, dispatch) => {
|
|
640
|
+
const { $from, empty } = state.selection;
|
|
641
|
+
if (!empty || $from.depth !== 1 || $from.index(0) !== 0) return false;
|
|
642
|
+
const block = $from.parent;
|
|
643
|
+
if (!isNodeOfType(block, "paragraph") || block.content.size > 0) return false;
|
|
644
|
+
if (state.doc.childCount < 2) return false;
|
|
645
|
+
if (dispatch) {
|
|
646
|
+
const tr = state.tr.delete(0, block.nodeSize);
|
|
647
|
+
tr.setSelection(Selection.atStart(tr.doc));
|
|
648
|
+
dispatch(tr.scrollIntoView());
|
|
649
|
+
}
|
|
650
|
+
return true;
|
|
651
|
+
};
|
|
652
|
+
/**
|
|
653
|
+
* Nothing sits before the document's first block, so Backspace in an empty
|
|
654
|
+
* first paragraph has nothing to join and does nothing. When this extension is
|
|
655
|
+
* applied, that Backspace deletes the empty paragraph instead, and the rest of
|
|
656
|
+
* the document moves up one line.
|
|
657
|
+
*/
|
|
658
|
+
function defineBackspaceEmptyFirstBlock(enabled) {
|
|
659
|
+
return withPriority$1(defineKeymap({ Backspace: (state, dispatch) => {
|
|
660
|
+
return (!enabled || enabled(state)) && deleteEmptyFirstBlock(state, dispatch);
|
|
661
|
+
} }), Priority$1.lowest);
|
|
662
|
+
}
|
|
663
|
+
|
|
630
664
|
//#endregion
|
|
631
665
|
//#region src/extensions/bullet-after-heading.ts
|
|
632
666
|
/**
|
|
@@ -5894,13 +5928,34 @@ function cycleBulletOrderedList() {
|
|
|
5894
5928
|
function toggleListCollapsed() {
|
|
5895
5929
|
return createToggleCollapsedCommand({ isToggleable: isCollapsibleBullet });
|
|
5896
5930
|
}
|
|
5931
|
+
function indentList(options) {
|
|
5932
|
+
return createIndentListCommand({
|
|
5933
|
+
strict: true,
|
|
5934
|
+
...options
|
|
5935
|
+
});
|
|
5936
|
+
}
|
|
5937
|
+
function dedentList(options) {
|
|
5938
|
+
return createDedentListCommand({
|
|
5939
|
+
strict: true,
|
|
5940
|
+
...options
|
|
5941
|
+
});
|
|
5942
|
+
}
|
|
5943
|
+
function splitList(options) {
|
|
5944
|
+
return createSplitListCommand({
|
|
5945
|
+
strict: true,
|
|
5946
|
+
...options
|
|
5947
|
+
});
|
|
5948
|
+
}
|
|
5897
5949
|
function defineMeowdownListCommands() {
|
|
5898
5950
|
return defineCommands({
|
|
5899
5951
|
cycleCheckableList,
|
|
5900
5952
|
cycleBulletOrderedList,
|
|
5901
5953
|
wrapInCircleTask,
|
|
5902
5954
|
wrapInSquareTask,
|
|
5903
|
-
toggleListCollapsed
|
|
5955
|
+
toggleListCollapsed,
|
|
5956
|
+
indentList,
|
|
5957
|
+
dedentList,
|
|
5958
|
+
splitList
|
|
5904
5959
|
});
|
|
5905
5960
|
}
|
|
5906
5961
|
/**
|
|
@@ -6000,6 +6055,13 @@ function defineMeowdownListPlugins() {
|
|
|
6000
6055
|
}
|
|
6001
6056
|
function defineMeowdownListKeymap() {
|
|
6002
6057
|
return defineKeymap({
|
|
6058
|
+
Enter: chainCommands(protectCollapsed, splitList()),
|
|
6059
|
+
Backspace: chainCommands(protectCollapsed, deleteSelection, joinListUp, joinCollapsedListBackward),
|
|
6060
|
+
Delete: deleteCommand,
|
|
6061
|
+
Tab: indentList(),
|
|
6062
|
+
"Shift-Tab": dedentList(),
|
|
6063
|
+
"Mod-]": indentList(),
|
|
6064
|
+
"Mod-[": dedentList(),
|
|
6003
6065
|
"Mod-Enter": rotateSquareTask(),
|
|
6004
6066
|
"Mod-Shift-Enter": rotateCircleTask(),
|
|
6005
6067
|
"Mod-.": createToggleCollapsedCommand({ isToggleable: isCollapsibleBullet }),
|
|
@@ -6019,7 +6081,7 @@ function defineMeowdownListKeymap() {
|
|
|
6019
6081
|
});
|
|
6020
6082
|
}
|
|
6021
6083
|
function defineMeowdownList() {
|
|
6022
|
-
return union(defineListSpec(), defineMeowdownListPlugins(),
|
|
6084
|
+
return union(defineListSpec(), defineMeowdownListPlugins(), defineListCommands(), defineMeowdownListSerializer(), defineListDropIndicator(), defineMeowdownListInputRules(), defineMeowdownListKeymap(), defineListMarkerAttr(), defineListTaskMarkerAttr(), defineListMarkerGapAttr(), defineMeowdownListCommands());
|
|
6023
6085
|
}
|
|
6024
6086
|
|
|
6025
6087
|
//#endregion
|
|
@@ -7281,7 +7343,7 @@ function defineYouTubeVideoClickHandler(getOnClick) {
|
|
|
7281
7343
|
//#endregion
|
|
7282
7344
|
//#region src/extensions/extension.ts
|
|
7283
7345
|
function defineEditorExtensionImpl(options) {
|
|
7284
|
-
return union(defineMeowdownParagraph(), defineDoc(), defineDocFrontmatterAttr(), defineText(), defineBlockquote(), defineMeowdownList(), defineHeading(), defineTable(), defineCodeBlock$1(), defineMeowdownHorizontalRule(), defineHTMLComment(), defineInlineMarks(), defineEditorConfig(options), defineImage(getEditorConfig), defineFileView(getEditorConfig), defineModClickPrevention(), defineFileClickHandler((state) => getEditorConfig(state).onFileClick), defineImageClickHandler((state) => getEditorConfig(state).onImageClick), defineXPostMediaClickHandler((state) => getEditorConfig(state).onXPostMediaClick), defineYouTubeVideoClickHandler((state) => getEditorConfig(state).onYouTubeVideoClick), defineWikilinkClickHandler((state) => getEditorConfig(state).onWikilinkClick), defineTagClickHandler((state) => getEditorConfig(state).onTagClick), defineLinkClickHandler((state) => getEditorConfig(state).onLinkClick), defineFollowLinkHandler(getEditorConfig), defineExitBoundaryHandler((state) => getEditorConfig(state).onExitBoundary), defineFilePaste(getEditorConfig), defineEmbedPaste((state) => !!getEditorConfig(state).embedPaste), defineLinkPaste((state) => !!getEditorConfig(state).linkPaste), defineBulletAfterHeading((state) => !!getEditorConfig(state).bulletAfterHeading), defineSubstitution((state) => !!getEditorConfig(state).substitution), defineWikilinkTrigger((state) => !!getEditorConfig(state).wikilinkEnabled), definePlaceholder$1({
|
|
7346
|
+
return union(defineMeowdownParagraph(), defineDoc(), defineDocFrontmatterAttr(), defineText(), defineBlockquote(), defineMeowdownList(), defineHeading(), defineTable(), defineCodeBlock$1(), defineMeowdownHorizontalRule(), defineHTMLComment(), defineInlineMarks(), defineEditorConfig(options), defineImage(getEditorConfig), defineFileView(getEditorConfig), defineModClickPrevention(), defineFileClickHandler((state) => getEditorConfig(state).onFileClick), defineImageClickHandler((state) => getEditorConfig(state).onImageClick), defineXPostMediaClickHandler((state) => getEditorConfig(state).onXPostMediaClick), defineYouTubeVideoClickHandler((state) => getEditorConfig(state).onYouTubeVideoClick), defineWikilinkClickHandler((state) => getEditorConfig(state).onWikilinkClick), defineTagClickHandler((state) => getEditorConfig(state).onTagClick), defineLinkClickHandler((state) => getEditorConfig(state).onLinkClick), defineFollowLinkHandler(getEditorConfig), defineExitBoundaryHandler((state) => getEditorConfig(state).onExitBoundary), defineFilePaste(getEditorConfig), defineEmbedPaste((state) => !!getEditorConfig(state).embedPaste), defineLinkPaste((state) => !!getEditorConfig(state).linkPaste), defineBulletAfterHeading((state) => !!getEditorConfig(state).bulletAfterHeading), defineBackspaceEmptyFirstBlock((state) => !!getEditorConfig(state).backspaceDeletesEmptyFirstBlock), defineSubstitution((state) => !!getEditorConfig(state).substitution), defineWikilinkTrigger((state) => !!getEditorConfig(state).wikilinkEnabled), definePlaceholder$1({
|
|
7285
7347
|
placeholder: (state) => {
|
|
7286
7348
|
const placeholder = getEditorConfig(state).placeholder;
|
|
7287
7349
|
return typeof placeholder === "function" ? placeholder(state) : placeholder ?? "";
|
|
@@ -7904,13 +7966,14 @@ var VirtualCaretView = class {
|
|
|
7904
7966
|
view.dom.removeAttribute(DATA_ATTRIBUTE);
|
|
7905
7967
|
return;
|
|
7906
7968
|
}
|
|
7907
|
-
|
|
7969
|
+
const skipGlide = wasHidden || getIsPointerSelection();
|
|
7970
|
+
if (skipGlide) this.#caret.style.transitionProperty = "none";
|
|
7908
7971
|
this.#caret.style.visibility = "";
|
|
7909
7972
|
this.#caret.style.left = `${rect.left}px`;
|
|
7910
7973
|
this.#caret.style.top = `${rect.top}px`;
|
|
7911
7974
|
this.#caret.style.height = `${rect.height}px`;
|
|
7912
7975
|
view.dom.setAttribute(DATA_ATTRIBUTE, "");
|
|
7913
|
-
if (
|
|
7976
|
+
if (skipGlide) {
|
|
7914
7977
|
forceReflow(this.#caret);
|
|
7915
7978
|
this.#caret.style.transitionProperty = "";
|
|
7916
7979
|
}
|
|
@@ -8071,4 +8134,4 @@ function getVirtualElementFromRange(view, range) {
|
|
|
8071
8134
|
}
|
|
8072
8135
|
|
|
8073
8136
|
//#endregion
|
|
8074
|
-
export { EDITOR_KEY_BINDINGS, Priority, buildFileMarkdown, checkRoundTrip, codeBlockLanguages, collectReferenceDefinitions, defaultResolveImageUrl, defaultResolveXPost, defaultResolveYouTubeVideo, defineBulletAfterHeading, defineCodeBlockPreviewPlugin, defineCodeBlockSyntaxHighlight, defineEditorExtension, defineEmbedPaste, defineExitBoundaryHandler, defineFileClickHandler, defineFilePaste, defineFileView, defineFollowLinkHandler, defineHTMLComment, defineImage, defineImageClickHandler, defineLinkClickHandler, defineLinkCommands, defineLinkEditKeymap, defineLinkHoverHandler, defineLinkPaste, defineMath, definePendingReplacementHandler, definePlaceholder, defineReadonly, defineSearchStatusHandler, defineSingleParagraph, defineSubstitution, defineTagClickHandler, defineViewAttributes, defineVirtualCaret, defineWikilinkClickHandler, defineWikilinkHoverHandler, defineWikilinkTrigger, defineXPostMediaClickHandler, defineYouTubeVideoClickHandler, dismissLinkHover, docToMarkdown, docToParagraphMarkdown, formatFileSize, formatSizedWikiEmbed, getCodeTokens, getEditorConfig, getFileKind, getIsComposing, getLinkText, getLinkUnitAt, getMarkBuilders, getPendingReplacement, getSearchStatus, getSelectedText, getTableColumnAlign, getTextblockDisplayText, getVirtualElementFromRange, inlineTextToMarkChunks, inlineTextToMarkChunksWithContext, insertLink, isCodeBlockPreviewHiddenDecoration, isLinkTextForHref, isMarkOfType, isModEvent, isNodeOfType, isReferenceDefinitionNode, isSelectionInTableCell, loadKaTeX, markdownToDoc, normalizeHref, paragraphMarkdownToDoc, parsePostEmbedSnapshot, parseWikiEmbed, removeLink, renderMathInto, updateEditorConfig, updateLink, wikiEmbedBasename, withPriority };
|
|
8137
|
+
export { EDITOR_KEY_BINDINGS, Priority, buildFileMarkdown, checkRoundTrip, codeBlockLanguages, collectReferenceDefinitions, defaultResolveImageUrl, defaultResolveXPost, defaultResolveYouTubeVideo, defineBackspaceEmptyFirstBlock, defineBulletAfterHeading, defineCodeBlockPreviewPlugin, defineCodeBlockSyntaxHighlight, defineEditorExtension, defineEmbedPaste, defineExitBoundaryHandler, defineFileClickHandler, defineFilePaste, defineFileView, defineFollowLinkHandler, defineHTMLComment, defineImage, defineImageClickHandler, defineLinkClickHandler, defineLinkCommands, defineLinkEditKeymap, defineLinkHoverHandler, defineLinkPaste, defineMath, definePendingReplacementHandler, definePlaceholder, defineReadonly, defineSearchStatusHandler, defineSingleParagraph, defineSubstitution, defineTagClickHandler, defineViewAttributes, defineVirtualCaret, defineWikilinkClickHandler, defineWikilinkHoverHandler, defineWikilinkTrigger, defineXPostMediaClickHandler, defineYouTubeVideoClickHandler, dismissLinkHover, docToMarkdown, docToParagraphMarkdown, formatFileSize, formatSizedWikiEmbed, getCodeTokens, getEditorConfig, getFileKind, getIsComposing, getLinkText, getLinkUnitAt, getMarkBuilders, getPendingReplacement, getSearchStatus, getSelectedText, getTableColumnAlign, getTextblockDisplayText, getVirtualElementFromRange, inlineTextToMarkChunks, inlineTextToMarkChunksWithContext, insertLink, isCodeBlockPreviewHiddenDecoration, isLinkTextForHref, isMarkOfType, isModEvent, isNodeOfType, isReferenceDefinitionNode, isSelectionInTableCell, loadKaTeX, markdownToDoc, normalizeHref, paragraphMarkdownToDoc, parsePostEmbedSnapshot, parseWikiEmbed, removeLink, renderMathInto, updateEditorConfig, updateLink, wikiEmbedBasename, withPriority };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@meowdown/core",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.79.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -21,10 +21,10 @@
|
|
|
21
21
|
"./dist/**/*.css"
|
|
22
22
|
],
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@codemirror/language": "^6.
|
|
24
|
+
"@codemirror/language": "^6.13.1",
|
|
25
25
|
"@codemirror/language-data": "^6.5.2",
|
|
26
26
|
"@floating-ui/dom": "^1.8.0",
|
|
27
|
-
"@lezer/highlight": "^1.2.
|
|
27
|
+
"@lezer/highlight": "^1.2.5",
|
|
28
28
|
"@meowdown/embed": "0.3.1",
|
|
29
29
|
"@meowdown/markdown": "0.76.0",
|
|
30
30
|
"@ocavue/utils": "^1.8.0",
|
|
@@ -36,14 +36,14 @@
|
|
|
36
36
|
"@prosekit/pm": "^0.1.20",
|
|
37
37
|
"@prosekit/web": "^0.9.3",
|
|
38
38
|
"hast-util-to-mdast": "^10.1.2",
|
|
39
|
-
"katex": "^0.
|
|
39
|
+
"katex": "^0.19.0",
|
|
40
40
|
"lru.min": "^1.1.5",
|
|
41
|
-
"mdast-util-to-markdown": "^2.
|
|
41
|
+
"mdast-util-to-markdown": "^2.2.0",
|
|
42
42
|
"micromark-util-decode-string": "^2.0.1",
|
|
43
43
|
"micromark-util-normalize-identifier": "^2.0.1",
|
|
44
|
-
"prosemirror-flat-list": "^0.7.
|
|
44
|
+
"prosemirror-flat-list": "^0.7.2",
|
|
45
45
|
"prosemirror-highlight": "^0.16.0",
|
|
46
|
-
"rehype-parse": "^9.0.
|
|
46
|
+
"rehype-parse": "^9.0.0",
|
|
47
47
|
"rehype-remark": "^10.0.1",
|
|
48
48
|
"remark-gfm": "^4.0.1",
|
|
49
49
|
"remark-stringify": "^11.0.0",
|
|
@@ -57,11 +57,11 @@
|
|
|
57
57
|
"@tsdown/css": "^0.23.0",
|
|
58
58
|
"@types/hast": "^3.0.5",
|
|
59
59
|
"@types/mdast": "^4.0.4",
|
|
60
|
-
"@vitest/browser-playwright": "^5.0.
|
|
60
|
+
"@vitest/browser-playwright": "^5.0.3",
|
|
61
61
|
"dedent": "^1.7.2",
|
|
62
62
|
"diffable-html-snapshot": "^0.3.0",
|
|
63
63
|
"tsdown": "^0.23.0",
|
|
64
|
-
"vitest": "^5.0.
|
|
64
|
+
"vitest": "^5.0.3"
|
|
65
65
|
},
|
|
66
66
|
"publishConfig": {
|
|
67
67
|
"access": "public"
|