@meowdown/react 0.64.3 → 0.65.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 +3 -3
- package/dist/index.js +22 -13
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -410,9 +410,9 @@ interface EditorProps {
|
|
|
410
410
|
*/
|
|
411
411
|
onFileSaveError?: FilePasteOptions['onFileSaveError'];
|
|
412
412
|
/**
|
|
413
|
-
* Called when the user clicks a rendered image
|
|
414
|
-
* `alt`, and the originating
|
|
415
|
-
* `useCallback`).
|
|
413
|
+
* Called when the user clicks a rendered image (or presses `Enter` on a
|
|
414
|
+
* selected one), with its markdown `src`, `alt`, and the originating event.
|
|
415
|
+
* Pass a stable function (e.g. from `useCallback`).
|
|
416
416
|
*/
|
|
417
417
|
onImageClick?: ImageClickHandler;
|
|
418
418
|
/**
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { clsx } from "clsx/lite";
|
|
2
2
|
import { Fragment, cloneElement, createElement, useCallback, useDeferredValue, useEffect, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
3
|
-
import { buildFileMarkdown, codeBlockLanguages, collectReferenceDefinitions, defaultResolveImageUrl, defineBulletAfterHeading, defineCodeBlockPreviewPlugin, defineEditorExtension, defineEmbedPaste, defineExitBoundaryHandler, defineFileClickHandler, defineFilePaste, defineFileView, defineFollowLinkHandler, defineImage, defineImageClickHandler, defineLinkClickHandler, defineLinkEditKeymap, defineLinkHoverHandler, defineLinkPaste, definePendingReplacementHandler, definePlaceholder, defineReadonly, defineSearchStatusHandler, defineSpellCheckPlugin, defineSubstitution, defineTagClickHandler, defineViewAttributes, defineVirtualCaret, defineWikilinkClickHandler, defineWikilinkHoverHandler, defineWikilinkTrigger, docToMarkdown, formatFileSize, getCodeTokens, getFileKind, getMarkBuilders, getPendingReplacement, getSearchStatus, getSelectedText, getTableColumnAlign, getTextblockDisplayText, getVirtualElementFromRange, inlineTextToMarkChunksWithContext, isCodeBlockPreviewHiddenDecoration, isNodeOfType, isSelectionInTableCell, listenForTweetHeight, loadKaTeX, markdownToDoc, matchEmbed, renderMathInto } from "@meowdown/core";
|
|
3
|
+
import { buildFileMarkdown, codeBlockLanguages, collectReferenceDefinitions, defaultResolveImageUrl, defineBulletAfterHeading, defineCodeBlockPreviewPlugin, defineEditorExtension, defineEmbedPaste, defineExitBoundaryHandler, defineFileClickHandler, defineFilePaste, defineFileView, defineFollowLinkHandler, defineImage, defineImageClickHandler, defineLinkClickHandler, defineLinkEditKeymap, defineLinkHoverHandler, defineLinkPaste, definePendingReplacementHandler, definePlaceholder, defineReadonly, defineSearchStatusHandler, defineSpellCheckPlugin, defineSubstitution, defineTagClickHandler, defineViewAttributes, defineVirtualCaret, defineWikilinkClickHandler, defineWikilinkHoverHandler, defineWikilinkTrigger, docToMarkdown, formatFileSize, getCodeTokens, getFileKind, getMarkBuilders, getPendingReplacement, getSearchStatus, getSelectedText, getTableColumnAlign, getTextblockDisplayText, getVirtualElementFromRange, inlineTextToMarkChunksWithContext, isCodeBlockPreviewHiddenDecoration, isModEvent, isNodeOfType, isSelectionInTableCell, listenForTweetHeight, loadKaTeX, markdownToDoc, matchEmbed, renderMathInto } from "@meowdown/core";
|
|
4
4
|
import { clamp } from "@ocavue/utils";
|
|
5
5
|
import { canUseRegexLookbehind, createEditor, defineDocChangeHandler, defineUpdateHandler, isTextSelection, union } from "@prosekit/core";
|
|
6
6
|
import { Selection, TextSelection } from "@prosekit/pm/state";
|
|
@@ -425,17 +425,19 @@ function EditorExtensions({ markMode, onDocChange, onWikilinkClick, onLinkClick,
|
|
|
425
425
|
return onTagClick ? defineTagClickHandler(onTagClick) : null;
|
|
426
426
|
}, [onTagClick]));
|
|
427
427
|
useExtension$1(useMemo(() => {
|
|
428
|
-
return onWikilinkClick || onTagClick || onFileClick || onLinkClick ? defineFollowLinkHandler({
|
|
428
|
+
return onWikilinkClick || onTagClick || onFileClick || onLinkClick || onImageClick ? defineFollowLinkHandler({
|
|
429
429
|
onWikilinkClick,
|
|
430
430
|
onTagClick,
|
|
431
431
|
onFileClick,
|
|
432
|
-
onLinkClick
|
|
432
|
+
onLinkClick,
|
|
433
|
+
onImageClick
|
|
433
434
|
}) : null;
|
|
434
435
|
}, [
|
|
435
436
|
onWikilinkClick,
|
|
436
437
|
onTagClick,
|
|
437
438
|
onFileClick,
|
|
438
|
-
onLinkClick
|
|
439
|
+
onLinkClick,
|
|
440
|
+
onImageClick
|
|
439
441
|
]));
|
|
440
442
|
useExtension$1(useMemo(() => {
|
|
441
443
|
return onExitBoundary ? defineExitBoundaryHandler(onExitBoundary) : null;
|
|
@@ -585,7 +587,8 @@ function LinkInfoContent({ href, onLinkClick, onLinkCopy, onEdit, onRemove }) {
|
|
|
585
587
|
event.preventDefault();
|
|
586
588
|
onLinkClick({
|
|
587
589
|
href,
|
|
588
|
-
event: event.nativeEvent
|
|
590
|
+
event: event.nativeEvent,
|
|
591
|
+
mod: isModEvent(event)
|
|
589
592
|
});
|
|
590
593
|
},
|
|
591
594
|
children: href
|
|
@@ -2184,7 +2187,8 @@ function WikilinkChip(props) {
|
|
|
2184
2187
|
contentEditable: false,
|
|
2185
2188
|
onClick: onWikilinkClick ? (event) => onWikilinkClick({
|
|
2186
2189
|
target,
|
|
2187
|
-
event: event.nativeEvent
|
|
2190
|
+
event: event.nativeEvent,
|
|
2191
|
+
mod: isModEvent(event)
|
|
2188
2192
|
}) : void 0,
|
|
2189
2193
|
children: /* @__PURE__ */ jsx("span", {
|
|
2190
2194
|
className: "md-wikilink-view-label",
|
|
@@ -2248,7 +2252,8 @@ function ImagePreview(props) {
|
|
|
2248
2252
|
onClick: onImageClick ? (event) => onImageClick({
|
|
2249
2253
|
src,
|
|
2250
2254
|
alt,
|
|
2251
|
-
event: event.nativeEvent
|
|
2255
|
+
event: event.nativeEvent,
|
|
2256
|
+
mod: isModEvent(event)
|
|
2252
2257
|
}) : void 0,
|
|
2253
2258
|
style: width == null ? void 0 : { width: `${width}px` }
|
|
2254
2259
|
})
|
|
@@ -2298,11 +2303,14 @@ function FileView(props) {
|
|
|
2298
2303
|
};
|
|
2299
2304
|
}, [resolveFileInfo, href]);
|
|
2300
2305
|
const size = resolvedSize?.href === href && resolvedSize.resolver === resolveFileInfo ? resolvedSize.text : "";
|
|
2301
|
-
const handleClick = context.onFileClick ? (event) =>
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
+
const handleClick = context.onFileClick ? (event) => {
|
|
2307
|
+
context.onFileClick?.({
|
|
2308
|
+
href,
|
|
2309
|
+
name,
|
|
2310
|
+
event: event.nativeEvent,
|
|
2311
|
+
mod: isModEvent(event)
|
|
2312
|
+
});
|
|
2313
|
+
} : void 0;
|
|
2306
2314
|
return /* @__PURE__ */ jsxs("span", {
|
|
2307
2315
|
className: "md-file-view md-atom-view",
|
|
2308
2316
|
children: [/* @__PURE__ */ jsxs("span", {
|
|
@@ -2487,7 +2495,8 @@ function wrapMark(mark, children, context) {
|
|
|
2487
2495
|
event.preventDefault();
|
|
2488
2496
|
context.onLinkClick?.({
|
|
2489
2497
|
href: attrs.href,
|
|
2490
|
-
event: event.nativeEvent
|
|
2498
|
+
event: event.nativeEvent,
|
|
2499
|
+
mod: isModEvent(event)
|
|
2491
2500
|
});
|
|
2492
2501
|
} : void 0;
|
|
2493
2502
|
return /* @__PURE__ */ jsx("a", {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@meowdown/react",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.65.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"github-slugger": "^2.0.0",
|
|
32
32
|
"lucide-react": "^1.28.0",
|
|
33
33
|
"react-property": "^2.0.2",
|
|
34
|
-
"@meowdown/core": "0.
|
|
34
|
+
"@meowdown/core": "0.65.0"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
37
|
"react": "^19.0.0",
|