@haklex/rich-editor 0.0.9 → 0.0.11
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/{RichEditor-CZCt6CCb.js → RichEditor-DHLA-bpl.js} +149 -1
- package/dist/{RichRenderer-DALnGZXp.js → RichRenderer-BxR2eaIT.js} +1 -1
- package/dist/editor.mjs +2 -2
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +5 -4
- package/dist/renderer.mjs +1 -1
- package/dist/transformers/index.d.ts +1 -0
- package/dist/transformers/index.d.ts.map +1 -1
- package/dist/transformers/rich-blocks.d.ts +10 -0
- package/dist/transformers/rich-blocks.d.ts.map +1 -0
- package/dist/{utils-9gyGMPKX.js → utils-CFAhGrxg.js} +10 -2
- package/package.json +3 -3
|
@@ -9,7 +9,7 @@ import { ListPlugin } from "@lexical/react/LexicalListPlugin";
|
|
|
9
9
|
import { RichTextPlugin } from "@lexical/react/LexicalRichTextPlugin";
|
|
10
10
|
import { TabIndentationPlugin } from "@lexical/react/LexicalTabIndentationPlugin";
|
|
11
11
|
import { TablePlugin } from "@lexical/react/LexicalTablePlugin";
|
|
12
|
-
import { V as $isAlertQuoteNode, W as RendererWrapper, X as AlertRenderer, Y as AlertQuoteNode, Z as $isBannerNode, _ as BannerRenderer, a0 as BannerNode, a1 as normalizeBannerType, a2 as $isCodeBlockNode, a3 as CodeBlockRenderer, a4 as CodeBlockNode, Q as useFootnoteDefinitions, s as FootnoteSectionNode, k as $isGridContainerNode, G as GridContainerNode, e as editorTheme, N as NESTED_EDITOR_NODES, b as builtinNodes, a5 as SpoilerNode, a6 as MentionNode, t as KaTeXInlineNode, K as KaTeXBlockNode, a7 as ImageNode, a8 as FootnoteNode, a9 as VideoNode, L as LinkCardNode, aa as DetailsNode, M as MermaidNode, ab as $createAlertQuoteNode, ac as $createImageNode, ad as $createKaTeXInlineNode, ae as $createKaTeXBlockNode, af as $createBannerNode, ag as $createDetailsNode, ah as $isDetailsNode, ai as $createFootnoteNode, aj as $isFootnoteNode, j as $isFootnoteSectionNode, $ as $createFootnoteSectionNode, m as $isKaTeXInlineNode, l as $isKaTeXBlockNode, ak as $createMentionNode, al as $isMentionNode, am as $
|
|
12
|
+
import { V as $isAlertQuoteNode, W as RendererWrapper, X as AlertRenderer, Y as AlertQuoteNode, Z as $isBannerNode, _ as BannerRenderer, a0 as BannerNode, a1 as normalizeBannerType, a2 as $isCodeBlockNode, a3 as CodeBlockRenderer, a4 as CodeBlockNode, Q as useFootnoteDefinitions, s as FootnoteSectionNode, k as $isGridContainerNode, G as GridContainerNode, e as editorTheme, N as NESTED_EDITOR_NODES, b as builtinNodes, a5 as SpoilerNode, a6 as MentionNode, t as KaTeXInlineNode, K as KaTeXBlockNode, a7 as ImageNode, a8 as FootnoteNode, a9 as VideoNode, L as LinkCardNode, aa as DetailsNode, M as MermaidNode, ab as $createAlertQuoteNode, ac as $createImageNode, ad as $createKaTeXInlineNode, ae as $createKaTeXBlockNode, af as $createBannerNode, ag as $createDetailsNode, ah as $isDetailsNode, ai as $createFootnoteNode, aj as $isFootnoteNode, j as $isFootnoteSectionNode, $ as $createFootnoteSectionNode, m as $isKaTeXInlineNode, l as $isKaTeXBlockNode, ak as $createMentionNode, al as $isMentionNode, am as $isImageNode, an as $isVideoNode, n as $isLinkCardNode, o as $isMermaidNode, ao as $createSpoilerNode, ap as $isSpoilerNode, i as $createMermaidNode, d as clsx, C as ColorSchemeProvider, R as RendererConfigProvider, F as FootnotePlugin, g as getVariantClass } from "./utils-CFAhGrxg.js";
|
|
13
13
|
import { useCallback, createElement, useState, useEffect, useRef } from "react";
|
|
14
14
|
import { useLexicalComposerContext } from "@lexical/react/LexicalComposerContext";
|
|
15
15
|
import { ContentEditable as ContentEditable$1 } from "@lexical/react/LexicalContentEditable";
|
|
@@ -21,6 +21,7 @@ import { INSERT_HORIZONTAL_RULE_COMMAND, $createHorizontalRuleNode } from "@lexi
|
|
|
21
21
|
import { MarkdownShortcutPlugin } from "@lexical/react/LexicalMarkdownShortcutPlugin";
|
|
22
22
|
import { CHECK_LIST, TRANSFORMERS } from "@lexical/markdown";
|
|
23
23
|
import { $isQuoteNode } from "@lexical/rich-text";
|
|
24
|
+
import { $isTableNode, $isTableRowNode, $isTableCellNode } from "@lexical/table";
|
|
24
25
|
function AlertEditDecorator({
|
|
25
26
|
nodeKey,
|
|
26
27
|
alertType,
|
|
@@ -917,6 +918,144 @@ const MENTION_TRANSFORMER = {
|
|
|
917
918
|
trigger: "}",
|
|
918
919
|
type: "text-match"
|
|
919
920
|
};
|
|
921
|
+
const NEVER_MATCH = /a^/;
|
|
922
|
+
function quoteAttr(value) {
|
|
923
|
+
return value.replaceAll('"', '\\"');
|
|
924
|
+
}
|
|
925
|
+
function escapeCell(value) {
|
|
926
|
+
return value.replaceAll("|", "\\|").replaceAll("\n", "<br/>");
|
|
927
|
+
}
|
|
928
|
+
function pickFence(content) {
|
|
929
|
+
const matches = content.match(/`+/g);
|
|
930
|
+
const maxLen = matches?.reduce((max, run) => Math.max(max, run.length), 0) ?? 0;
|
|
931
|
+
return "`".repeat(Math.max(3, maxLen + 1));
|
|
932
|
+
}
|
|
933
|
+
const IMAGE_BLOCK_TRANSFORMER = {
|
|
934
|
+
dependencies: [],
|
|
935
|
+
export: (node) => {
|
|
936
|
+
if (!$isImageNode(node)) return null;
|
|
937
|
+
const image = node.exportJSON();
|
|
938
|
+
const alt = image.altText || "";
|
|
939
|
+
const title = image.caption ? ` "${image.caption.replaceAll('"', '\\"')}"` : "";
|
|
940
|
+
return ``;
|
|
941
|
+
},
|
|
942
|
+
regExp: NEVER_MATCH,
|
|
943
|
+
replace: () => {
|
|
944
|
+
},
|
|
945
|
+
type: "element"
|
|
946
|
+
};
|
|
947
|
+
const VIDEO_BLOCK_TRANSFORMER = {
|
|
948
|
+
dependencies: [],
|
|
949
|
+
export: (node) => {
|
|
950
|
+
if (!$isVideoNode(node)) return null;
|
|
951
|
+
const video = node.exportJSON();
|
|
952
|
+
const attrs = [`src="${quoteAttr(video.src)}"`];
|
|
953
|
+
if (video.poster) attrs.push(`poster="${quoteAttr(video.poster)}"`);
|
|
954
|
+
if (video.width) attrs.push(`width=${video.width}`);
|
|
955
|
+
if (video.height) attrs.push(`height=${video.height}`);
|
|
956
|
+
return `<video ${attrs.join(" ")} controls></video>`;
|
|
957
|
+
},
|
|
958
|
+
regExp: NEVER_MATCH,
|
|
959
|
+
replace: () => {
|
|
960
|
+
},
|
|
961
|
+
type: "element"
|
|
962
|
+
};
|
|
963
|
+
const CODE_BLOCK_NODE_TRANSFORMER = {
|
|
964
|
+
dependencies: [],
|
|
965
|
+
export: (node) => {
|
|
966
|
+
if (!$isCodeBlockNode(node)) return null;
|
|
967
|
+
const codeBlock = node.exportJSON();
|
|
968
|
+
const fence = pickFence(codeBlock.code);
|
|
969
|
+
return `${fence}${codeBlock.language}
|
|
970
|
+
${codeBlock.code}
|
|
971
|
+
${fence}`;
|
|
972
|
+
},
|
|
973
|
+
regExp: NEVER_MATCH,
|
|
974
|
+
replace: () => {
|
|
975
|
+
},
|
|
976
|
+
type: "element"
|
|
977
|
+
};
|
|
978
|
+
const LINK_CARD_BLOCK_TRANSFORMER = {
|
|
979
|
+
dependencies: [],
|
|
980
|
+
export: (node) => {
|
|
981
|
+
if (!$isLinkCardNode(node)) return null;
|
|
982
|
+
const linkCard = node.exportJSON();
|
|
983
|
+
return linkCard.title ? `[${linkCard.title}](${linkCard.url})` : `<${linkCard.url}>`;
|
|
984
|
+
},
|
|
985
|
+
regExp: NEVER_MATCH,
|
|
986
|
+
replace: () => {
|
|
987
|
+
},
|
|
988
|
+
type: "element"
|
|
989
|
+
};
|
|
990
|
+
const MERMAID_BLOCK_TRANSFORMER = {
|
|
991
|
+
dependencies: [],
|
|
992
|
+
export: (node) => {
|
|
993
|
+
if (!$isMermaidNode(node)) return null;
|
|
994
|
+
const fence = pickFence(node.getDiagram());
|
|
995
|
+
return `${fence}mermaid
|
|
996
|
+
${node.getDiagram()}
|
|
997
|
+
${fence}`;
|
|
998
|
+
},
|
|
999
|
+
regExp: NEVER_MATCH,
|
|
1000
|
+
replace: () => {
|
|
1001
|
+
},
|
|
1002
|
+
type: "element"
|
|
1003
|
+
};
|
|
1004
|
+
const GRID_CONTAINER_BLOCK_TRANSFORMER = {
|
|
1005
|
+
dependencies: [],
|
|
1006
|
+
export: (node) => {
|
|
1007
|
+
if (!$isGridContainerNode(node)) return null;
|
|
1008
|
+
const cells = node.getCellEditors().map(
|
|
1009
|
+
(editor) => editor.getEditorState().read(() => {
|
|
1010
|
+
return $getRoot().getTextContent();
|
|
1011
|
+
})
|
|
1012
|
+
);
|
|
1013
|
+
const body = cells.map((content) => `::: cell
|
|
1014
|
+
${content}
|
|
1015
|
+
:::`).join("\n");
|
|
1016
|
+
return `::: grid{cols=${node.getCols()} gap="${quoteAttr(node.getGap())}"}
|
|
1017
|
+
${body}
|
|
1018
|
+
:::`;
|
|
1019
|
+
},
|
|
1020
|
+
regExp: NEVER_MATCH,
|
|
1021
|
+
replace: () => {
|
|
1022
|
+
},
|
|
1023
|
+
type: "element"
|
|
1024
|
+
};
|
|
1025
|
+
const HORIZONTAL_RULE_BLOCK_TRANSFORMER = {
|
|
1026
|
+
dependencies: [],
|
|
1027
|
+
export: (node) => {
|
|
1028
|
+
return node.getType() === "horizontalrule" ? "---" : null;
|
|
1029
|
+
},
|
|
1030
|
+
regExp: NEVER_MATCH,
|
|
1031
|
+
replace: () => {
|
|
1032
|
+
},
|
|
1033
|
+
type: "element"
|
|
1034
|
+
};
|
|
1035
|
+
const TABLE_BLOCK_TRANSFORMER = {
|
|
1036
|
+
dependencies: [],
|
|
1037
|
+
export: (node) => {
|
|
1038
|
+
if (!$isTableNode(node)) return null;
|
|
1039
|
+
const rows = node.getChildren().filter($isTableRowNode);
|
|
1040
|
+
if (rows.length === 0) return "| |\n| --- |";
|
|
1041
|
+
const tableRows = rows.map(
|
|
1042
|
+
(row) => row.getChildren().filter($isTableCellNode).map((cell) => escapeCell(cell.getTextContent()))
|
|
1043
|
+
);
|
|
1044
|
+
const header = tableRows[0];
|
|
1045
|
+
const separator = header.map(() => "---");
|
|
1046
|
+
const body = tableRows.slice(1);
|
|
1047
|
+
const lines = [
|
|
1048
|
+
`| ${header.join(" | ")} |`,
|
|
1049
|
+
`| ${separator.join(" | ")} |`,
|
|
1050
|
+
...body.map((cells) => `| ${cells.join(" | ")} |`)
|
|
1051
|
+
];
|
|
1052
|
+
return lines.join("\n");
|
|
1053
|
+
},
|
|
1054
|
+
regExp: NEVER_MATCH,
|
|
1055
|
+
replace: () => {
|
|
1056
|
+
},
|
|
1057
|
+
type: "element"
|
|
1058
|
+
};
|
|
920
1059
|
const SPOILER_TRANSFORMER = {
|
|
921
1060
|
dependencies: [SpoilerNode],
|
|
922
1061
|
export: (node) => {
|
|
@@ -947,6 +1086,14 @@ const ALL_TRANSFORMERS = [
|
|
|
947
1086
|
GIT_ALERT_TRANSFORMER,
|
|
948
1087
|
CHECK_LIST,
|
|
949
1088
|
KATEX_BLOCK_TRANSFORMER,
|
|
1089
|
+
IMAGE_BLOCK_TRANSFORMER,
|
|
1090
|
+
VIDEO_BLOCK_TRANSFORMER,
|
|
1091
|
+
CODE_BLOCK_NODE_TRANSFORMER,
|
|
1092
|
+
LINK_CARD_BLOCK_TRANSFORMER,
|
|
1093
|
+
MERMAID_BLOCK_TRANSFORMER,
|
|
1094
|
+
GRID_CONTAINER_BLOCK_TRANSFORMER,
|
|
1095
|
+
HORIZONTAL_RULE_BLOCK_TRANSFORMER,
|
|
1096
|
+
TABLE_BLOCK_TRANSFORMER,
|
|
950
1097
|
...TRANSFORMERS
|
|
951
1098
|
];
|
|
952
1099
|
function MarkdownShortcutsPlugin() {
|
|
@@ -1118,6 +1265,7 @@ function RichEditor({
|
|
|
1118
1265
|
] }) }) }) }) }) });
|
|
1119
1266
|
}
|
|
1120
1267
|
export {
|
|
1268
|
+
ALL_TRANSFORMERS as A,
|
|
1121
1269
|
FootnoteSectionEditNode as F,
|
|
1122
1270
|
INSERT_ALERT_COMMAND as I,
|
|
1123
1271
|
RichEditor as R,
|
|
@@ -4,7 +4,7 @@ import { LexicalComposer } from "@lexical/react/LexicalComposer";
|
|
|
4
4
|
import { ContentEditable } from "@lexical/react/LexicalContentEditable";
|
|
5
5
|
import { LexicalErrorBoundary } from "@lexical/react/LexicalErrorBoundary";
|
|
6
6
|
import { RichTextPlugin } from "@lexical/react/LexicalRichTextPlugin";
|
|
7
|
-
import { a as allNodes, C as ColorSchemeProvider, R as RendererConfigProvider, e as editorTheme, F as FootnotePlugin, d as clsx, g as getVariantClass } from "./utils-
|
|
7
|
+
import { a as allNodes, C as ColorSchemeProvider, R as RendererConfigProvider, e as editorTheme, F as FootnotePlugin, d as clsx, g as getVariantClass } from "./utils-CFAhGrxg.js";
|
|
8
8
|
import { useLexicalComposerContext } from "@lexical/react/LexicalComposerContext";
|
|
9
9
|
import { HeadingNode } from "@lexical/rich-text";
|
|
10
10
|
import { useEffect } from "react";
|
package/dist/editor.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { R, a, c, g, s } from "./RichEditor-
|
|
2
|
-
import { a as a2, b, c as c2 } from "./utils-
|
|
1
|
+
import { R, a, c, g, s } from "./RichEditor-DHLA-bpl.js";
|
|
2
|
+
import { a as a2, b, c as c2 } from "./utils-CFAhGrxg.js";
|
|
3
3
|
export {
|
|
4
4
|
R as RichEditor,
|
|
5
5
|
a as allEditNodes,
|
package/dist/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export { FootnoteDefinitionsProvider, useFootnoteContent, useFootnoteDefinitions
|
|
|
9
9
|
export type { RendererMode } from './context/RendererConfigContext';
|
|
10
10
|
export { useRendererMode } from './context/RendererConfigContext';
|
|
11
11
|
export * from './styles';
|
|
12
|
+
export { ALL_TRANSFORMERS } from './transformers';
|
|
12
13
|
export type { RichEditorProps, RichEditorVariant, RichRendererProps, } from './types';
|
|
13
14
|
export type { RendererConfig } from './types/renderer-config';
|
|
14
15
|
export type { SlashMenuItemConfig } from './types/slash-menu';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { F, I, b, d, e, f, R, a, c, g, s } from "./RichEditor-
|
|
2
|
-
import { R as R2 } from "./RichRenderer-
|
|
3
|
-
import { $, f as f2, h, i, j, k, l, m, n, o, A, p, B, q, C, r, F as F2, s as s2, G, K, t, u, L, v, M, N, a as a2, w, b as b2, x, y, z, c as c2, D, E, H, I as I2, e as e2, g as g2, J, O, P, Q, S, T, U } from "./utils-
|
|
1
|
+
import { A, F, I, b, d, e, f, R, a, c, g, s } from "./RichEditor-DHLA-bpl.js";
|
|
2
|
+
import { R as R2 } from "./RichRenderer-BxR2eaIT.js";
|
|
3
|
+
import { $, f as f2, h, i, j, k, l, m, n, o, A as A2, p, B, q, C, r, F as F2, s as s2, G, K, t, u, L, v, M, N, a as a2, w, b as b2, x, y, z, c as c2, D, E, H, I as I2, e as e2, g as g2, J, O, P, Q, S, T, U } from "./utils-CFAhGrxg.js";
|
|
4
4
|
var richContent = "r8uj4t0";
|
|
5
5
|
var articleTheme = "_17pm0gw0";
|
|
6
6
|
var commentTheme = "_17pm0gw1";
|
|
@@ -20,8 +20,9 @@ export {
|
|
|
20
20
|
m as $isKaTeXInlineNode,
|
|
21
21
|
n as $isLinkCardNode,
|
|
22
22
|
o as $isMermaidNode,
|
|
23
|
-
|
|
23
|
+
A2 as ALERT_LABELS,
|
|
24
24
|
p as ALERT_TYPES,
|
|
25
|
+
A as ALL_TRANSFORMERS,
|
|
25
26
|
B as BANNER_LABELS,
|
|
26
27
|
q as BANNER_TYPES,
|
|
27
28
|
C as ColorSchemeProvider,
|
package/dist/renderer.mjs
CHANGED
|
@@ -5,5 +5,6 @@ export { FOOTNOTE_SECTION_TRANSFORMER, FOOTNOTE_TRANSFORMER } from './footnote';
|
|
|
5
5
|
export { INSERT_TRANSFORMER } from './insert';
|
|
6
6
|
export { KATEX_BLOCK_TRANSFORMER, KATEX_INLINE_TRANSFORMER } from './katex';
|
|
7
7
|
export { MENTION_TRANSFORMER } from './mention';
|
|
8
|
+
export { CODE_BLOCK_NODE_TRANSFORMER, GRID_CONTAINER_BLOCK_TRANSFORMER, HORIZONTAL_RULE_BLOCK_TRANSFORMER, IMAGE_BLOCK_TRANSFORMER, LINK_CARD_BLOCK_TRANSFORMER, MERMAID_BLOCK_TRANSFORMER, TABLE_BLOCK_TRANSFORMER, VIDEO_BLOCK_TRANSFORMER, } from './rich-blocks';
|
|
8
9
|
export { SPOILER_TRANSFORMER } from './spoiler';
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transformers/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transformers/index.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,gBAAgB,2CAsB5B,CAAA;AAED,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EACL,2BAA2B,EAC3B,gCAAgC,EAChC,iCAAiC,EACjC,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ElementTransformer } from '@lexical/markdown';
|
|
2
|
+
export declare const IMAGE_BLOCK_TRANSFORMER: ElementTransformer;
|
|
3
|
+
export declare const VIDEO_BLOCK_TRANSFORMER: ElementTransformer;
|
|
4
|
+
export declare const CODE_BLOCK_NODE_TRANSFORMER: ElementTransformer;
|
|
5
|
+
export declare const LINK_CARD_BLOCK_TRANSFORMER: ElementTransformer;
|
|
6
|
+
export declare const MERMAID_BLOCK_TRANSFORMER: ElementTransformer;
|
|
7
|
+
export declare const GRID_CONTAINER_BLOCK_TRANSFORMER: ElementTransformer;
|
|
8
|
+
export declare const HORIZONTAL_RULE_BLOCK_TRANSFORMER: ElementTransformer;
|
|
9
|
+
export declare const TABLE_BLOCK_TRANSFORMER: ElementTransformer;
|
|
10
|
+
//# sourceMappingURL=rich-blocks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rich-blocks.d.ts","sourceRoot":"","sources":["../../src/transformers/rich-blocks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAkC3D,eAAO,MAAM,uBAAuB,EAAE,kBAcrC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,kBAcrC,CAAA;AAED,eAAO,MAAM,2BAA2B,EAAE,kBAWzC,CAAA;AAED,eAAO,MAAM,2BAA2B,EAAE,kBAYzC,CAAA;AAED,eAAO,MAAM,yBAAyB,EAAE,kBAUvC,CAAA;AAED,eAAO,MAAM,gCAAgC,EAAE,kBAe9C,CAAA;AAED,eAAO,MAAM,iCAAiC,EAAE,kBAQ/C,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,kBA4BrC,CAAA"}
|
|
@@ -1755,6 +1755,9 @@ let ImageNode = _ImageNode;
|
|
|
1755
1755
|
function $createImageNode(payload) {
|
|
1756
1756
|
return new ImageNode(payload);
|
|
1757
1757
|
}
|
|
1758
|
+
function $isImageNode(node) {
|
|
1759
|
+
return node instanceof ImageNode;
|
|
1760
|
+
}
|
|
1758
1761
|
const _KaTeXBlockNode = class _KaTeXBlockNode extends DecoratorNode {
|
|
1759
1762
|
constructor(equation, key) {
|
|
1760
1763
|
super(key);
|
|
@@ -2181,6 +2184,9 @@ let VideoNode = _VideoNode;
|
|
|
2181
2184
|
function $createVideoNode(payload) {
|
|
2182
2185
|
return new VideoNode(payload);
|
|
2183
2186
|
}
|
|
2187
|
+
function $isVideoNode(node) {
|
|
2188
|
+
return node instanceof VideoNode;
|
|
2189
|
+
}
|
|
2184
2190
|
const builtinNodes = [
|
|
2185
2191
|
HeadingNode,
|
|
2186
2192
|
QuoteNode,
|
|
@@ -2322,8 +2328,10 @@ export {
|
|
|
2322
2328
|
$isFootnoteNode as aj,
|
|
2323
2329
|
$createMentionNode as ak,
|
|
2324
2330
|
$isMentionNode as al,
|
|
2325
|
-
$
|
|
2326
|
-
$
|
|
2331
|
+
$isImageNode as am,
|
|
2332
|
+
$isVideoNode as an,
|
|
2333
|
+
$createSpoilerNode as ao,
|
|
2334
|
+
$isSpoilerNode as ap,
|
|
2327
2335
|
builtinNodes as b,
|
|
2328
2336
|
customNodes as c,
|
|
2329
2337
|
clsx as d,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@haklex/rich-editor",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.11",
|
|
4
4
|
"description": "Core rich text editor based on Lexical",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"thumbhash": "^0.1.1",
|
|
28
|
-
"@haklex/rich-editor-ui": "0.0.
|
|
29
|
-
"@haklex/rich-style-token": "0.0.
|
|
28
|
+
"@haklex/rich-editor-ui": "0.0.11",
|
|
29
|
+
"@haklex/rich-style-token": "0.0.11"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@base-ui/react": "^1.1.0",
|