@assistant-ui/react-markdown 0.7.13 → 0.7.15
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 +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +1 -1
- package/dist/memoization.d.ts +22 -0
- package/dist/memoization.d.ts.map +1 -0
- package/dist/memoization.js +60 -0
- package/dist/memoization.js.map +1 -0
- package/dist/memoization.mjs +33 -0
- package/dist/memoization.mjs.map +1 -0
- package/dist/overrides/CodeBlock.d.ts +0 -2
- package/dist/overrides/CodeBlock.d.ts.map +1 -1
- package/dist/overrides/CodeBlock.js +2 -4
- package/dist/overrides/CodeBlock.js.map +1 -1
- package/dist/overrides/CodeBlock.mjs +2 -4
- package/dist/overrides/CodeBlock.mjs.map +1 -1
- package/dist/overrides/CodeOverride.d.ts +2 -2
- package/dist/overrides/CodeOverride.d.ts.map +1 -1
- package/dist/overrides/CodeOverride.js +10 -8
- package/dist/overrides/CodeOverride.js.map +1 -1
- package/dist/overrides/CodeOverride.mjs +15 -10
- package/dist/overrides/CodeOverride.mjs.map +1 -1
- package/dist/overrides/PreOverride.d.ts +3 -2
- package/dist/overrides/PreOverride.d.ts.map +1 -1
- package/dist/overrides/PreOverride.js +3 -1
- package/dist/overrides/PreOverride.js.map +1 -1
- package/dist/overrides/PreOverride.mjs +8 -2
- package/dist/overrides/PreOverride.mjs.map +1 -1
- package/dist/overrides/defaultComponents.d.ts +0 -2
- package/dist/overrides/defaultComponents.d.ts.map +1 -1
- package/dist/overrides/defaultComponents.js +1 -1
- package/dist/overrides/defaultComponents.js.map +1 -1
- package/dist/overrides/defaultComponents.mjs +1 -1
- package/dist/overrides/defaultComponents.mjs.map +1 -1
- package/dist/primitives/MarkdownText.d.ts +2 -3
- package/dist/primitives/MarkdownText.d.ts.map +1 -1
- package/dist/primitives/MarkdownText.js +53 -32
- package/dist/primitives/MarkdownText.js.map +1 -1
- package/dist/primitives/MarkdownText.mjs +55 -33
- package/dist/primitives/MarkdownText.mjs.map +1 -1
- package/package.json +3 -3
- package/src/index.ts +2 -0
- package/src/memoization.tsx +47 -0
- package/src/overrides/CodeBlock.tsx +0 -4
- package/src/overrides/CodeOverride.tsx +20 -8
- package/src/overrides/PreOverride.tsx +10 -2
- package/src/overrides/defaultComponents.tsx +3 -5
- package/src/primitives/MarkdownText.tsx +64 -36
package/dist/index.d.ts
CHANGED
|
@@ -3,4 +3,5 @@ export type { CodeHeaderProps, SyntaxHighlighterProps, } from "./overrides/types
|
|
|
3
3
|
export { useIsMarkdownCodeBlock } from "./overrides/PreOverride";
|
|
4
4
|
export { makeMarkdownText, type MakeMarkdownTextProps, } from "./ui/markdown-text";
|
|
5
5
|
export { CodeHeader } from "./ui/code-header";
|
|
6
|
+
export { memoizeMarkdownComponents as unstable_memoizeMarkdownComponents } from "./memoization";
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,KAAK,0BAA0B,GAChC,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACV,eAAe,EACf,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,EACL,gBAAgB,EAChB,KAAK,qBAAqB,GAC3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,KAAK,0BAA0B,GAChC,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACV,eAAe,EACf,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,EACL,gBAAgB,EAChB,KAAK,qBAAqB,GAC3B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,yBAAyB,IAAI,kCAAkC,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -23,6 +23,7 @@ __export(index_exports, {
|
|
|
23
23
|
CodeHeader: () => import_code_header.CodeHeader,
|
|
24
24
|
MarkdownTextPrimitive: () => import_MarkdownText.MarkdownTextPrimitive,
|
|
25
25
|
makeMarkdownText: () => import_markdown_text.makeMarkdownText,
|
|
26
|
+
unstable_memoizeMarkdownComponents: () => import_memoization.memoizeMarkdownComponents,
|
|
26
27
|
useIsMarkdownCodeBlock: () => import_PreOverride.useIsMarkdownCodeBlock
|
|
27
28
|
});
|
|
28
29
|
module.exports = __toCommonJS(index_exports);
|
|
@@ -30,11 +31,13 @@ var import_MarkdownText = require("./primitives/MarkdownText.js");
|
|
|
30
31
|
var import_PreOverride = require("./overrides/PreOverride.js");
|
|
31
32
|
var import_markdown_text = require("./ui/markdown-text.js");
|
|
32
33
|
var import_code_header = require("./ui/code-header.js");
|
|
34
|
+
var import_memoization = require("./memoization.js");
|
|
33
35
|
// Annotate the CommonJS export names for ESM import in node:
|
|
34
36
|
0 && (module.exports = {
|
|
35
37
|
CodeHeader,
|
|
36
38
|
MarkdownTextPrimitive,
|
|
37
39
|
makeMarkdownText,
|
|
40
|
+
unstable_memoizeMarkdownComponents,
|
|
38
41
|
useIsMarkdownCodeBlock
|
|
39
42
|
});
|
|
40
43
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export {\n MarkdownTextPrimitive,\n type MarkdownTextPrimitiveProps,\n} from \"./primitives/MarkdownText\";\n\nexport type {\n CodeHeaderProps,\n SyntaxHighlighterProps,\n} from \"./overrides/types\";\n\nexport { useIsMarkdownCodeBlock } from \"./overrides/PreOverride\";\n\nexport {\n makeMarkdownText,\n type MakeMarkdownTextProps,\n} from \"./ui/markdown-text\";\n\nexport { CodeHeader } from \"./ui/code-header\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAGO;AAOP,yBAAuC;AAEvC,2BAGO;AAEP,yBAA2B;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export {\n MarkdownTextPrimitive,\n type MarkdownTextPrimitiveProps,\n} from \"./primitives/MarkdownText\";\n\nexport type {\n CodeHeaderProps,\n SyntaxHighlighterProps,\n} from \"./overrides/types\";\n\nexport { useIsMarkdownCodeBlock } from \"./overrides/PreOverride\";\n\nexport {\n makeMarkdownText,\n type MakeMarkdownTextProps,\n} from \"./ui/markdown-text\";\n\nexport { CodeHeader } from \"./ui/code-header\";\n\nexport { memoizeMarkdownComponents as unstable_memoizeMarkdownComponents } from \"./memoization\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAGO;AAOP,yBAAuC;AAEvC,2BAGO;AAEP,yBAA2B;AAE3B,yBAAgF;","names":[]}
|
package/dist/index.mjs
CHANGED
|
@@ -7,10 +7,12 @@ import {
|
|
|
7
7
|
makeMarkdownText
|
|
8
8
|
} from "./ui/markdown-text.mjs";
|
|
9
9
|
import { CodeHeader } from "./ui/code-header.mjs";
|
|
10
|
+
import { memoizeMarkdownComponents } from "./memoization.mjs";
|
|
10
11
|
export {
|
|
11
12
|
CodeHeader,
|
|
12
13
|
MarkdownTextPrimitive,
|
|
13
14
|
makeMarkdownText,
|
|
15
|
+
memoizeMarkdownComponents as unstable_memoizeMarkdownComponents,
|
|
14
16
|
useIsMarkdownCodeBlock
|
|
15
17
|
};
|
|
16
18
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export {\n MarkdownTextPrimitive,\n type MarkdownTextPrimitiveProps,\n} from \"./primitives/MarkdownText\";\n\nexport type {\n CodeHeaderProps,\n SyntaxHighlighterProps,\n} from \"./overrides/types\";\n\nexport { useIsMarkdownCodeBlock } from \"./overrides/PreOverride\";\n\nexport {\n makeMarkdownText,\n type MakeMarkdownTextProps,\n} from \"./ui/markdown-text\";\n\nexport { CodeHeader } from \"./ui/code-header\";\n"],"mappings":";AAAA;AAAA,EACE;AAAA,OAEK;AAOP,SAAS,8BAA8B;AAEvC;AAAA,EACE;AAAA,OAEK;AAEP,SAAS,kBAAkB;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export {\n MarkdownTextPrimitive,\n type MarkdownTextPrimitiveProps,\n} from \"./primitives/MarkdownText\";\n\nexport type {\n CodeHeaderProps,\n SyntaxHighlighterProps,\n} from \"./overrides/types\";\n\nexport { useIsMarkdownCodeBlock } from \"./overrides/PreOverride\";\n\nexport {\n makeMarkdownText,\n type MakeMarkdownTextProps,\n} from \"./ui/markdown-text\";\n\nexport { CodeHeader } from \"./ui/code-header\";\n\nexport { memoizeMarkdownComponents as unstable_memoizeMarkdownComponents } from \"./memoization\";\n"],"mappings":";AAAA;AAAA,EACE;AAAA,OAEK;AAOP,SAAS,8BAA8B;AAEvC;AAAA,EACE;AAAA,OAEK;AAEP,SAAS,kBAAkB;AAE3B,SAAsC,iCAA0C;","names":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Element } from "hast";
|
|
2
|
+
import { ComponentProps, ComponentType, ElementType } from "react";
|
|
3
|
+
import { CodeHeaderProps, SyntaxHighlighterProps } from "./overrides/types";
|
|
4
|
+
type Components = {
|
|
5
|
+
[Key in Extract<ElementType, string>]?: ComponentType<ComponentProps<Key>>;
|
|
6
|
+
} & {
|
|
7
|
+
SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps> | undefined;
|
|
8
|
+
CodeHeader?: ComponentType<CodeHeaderProps> | undefined;
|
|
9
|
+
};
|
|
10
|
+
export declare const areNodesEqual: (prev: Element | undefined, next: Element | undefined) => boolean;
|
|
11
|
+
export declare const memoCompareNodes: (prev: {
|
|
12
|
+
node?: Element | undefined;
|
|
13
|
+
}, next: {
|
|
14
|
+
node?: Element | undefined;
|
|
15
|
+
}) => boolean;
|
|
16
|
+
export declare const memoizeMarkdownComponents: (components?: Components) => {
|
|
17
|
+
[k: string]: import("react").MemoExoticComponent<({ node, ...props }: {
|
|
18
|
+
node?: Element;
|
|
19
|
+
}) => import("react/jsx-runtime").JSX.Element> | undefined;
|
|
20
|
+
};
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=memoization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memoization.d.ts","sourceRoot":"","sources":["../src/memoization.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAQ,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAE5E,KAAK,UAAU,GAAG;KACf,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;CAC3E,GAAG;IACF,iBAAiB,CAAC,EAAE,aAAa,CAAC,sBAAsB,CAAC,GAAG,SAAS,CAAC;IACtE,UAAU,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;CACzD,CAAC;AAOF,eAAO,MAAM,aAAa,SAClB,OAAO,GAAG,SAAS,QACnB,OAAO,GAAG,SAAS,YAO1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,SACrB;IAAE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,QAC9B;IAAE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,YAGrC,CAAC;AAEF,eAAO,MAAM,yBAAyB,gBAAgB,UAAU;0EAMjB;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE;CAMhE,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/memoization.tsx
|
|
21
|
+
var memoization_exports = {};
|
|
22
|
+
__export(memoization_exports, {
|
|
23
|
+
areNodesEqual: () => areNodesEqual,
|
|
24
|
+
memoCompareNodes: () => memoCompareNodes,
|
|
25
|
+
memoizeMarkdownComponents: () => memoizeMarkdownComponents
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(memoization_exports);
|
|
28
|
+
var import_react = require("react");
|
|
29
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
30
|
+
var areChildrenEqual = (prev, next) => {
|
|
31
|
+
if (typeof prev === "string") return prev === next;
|
|
32
|
+
return JSON.stringify(prev) === JSON.stringify(next);
|
|
33
|
+
};
|
|
34
|
+
var areNodesEqual = (prev, next) => {
|
|
35
|
+
if (!prev || !next) return prev === next;
|
|
36
|
+
const isEqual = JSON.stringify(prev?.properties) === JSON.stringify(next?.properties) && areChildrenEqual(prev?.children, next?.children);
|
|
37
|
+
return isEqual;
|
|
38
|
+
};
|
|
39
|
+
var memoCompareNodes = (prev, next) => {
|
|
40
|
+
return areNodesEqual(prev.node, next.node);
|
|
41
|
+
};
|
|
42
|
+
var memoizeMarkdownComponents = (components = {}) => {
|
|
43
|
+
return Object.fromEntries(
|
|
44
|
+
Object.entries(components ?? {}).map(([key, value]) => {
|
|
45
|
+
if (!value) return [key, value];
|
|
46
|
+
const Component = value;
|
|
47
|
+
const WithoutNode = ({ node, ...props }) => {
|
|
48
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props });
|
|
49
|
+
};
|
|
50
|
+
return [key, (0, import_react.memo)(WithoutNode, memoCompareNodes)];
|
|
51
|
+
})
|
|
52
|
+
);
|
|
53
|
+
};
|
|
54
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
55
|
+
0 && (module.exports = {
|
|
56
|
+
areNodesEqual,
|
|
57
|
+
memoCompareNodes,
|
|
58
|
+
memoizeMarkdownComponents
|
|
59
|
+
});
|
|
60
|
+
//# sourceMappingURL=memoization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/memoization.tsx"],"sourcesContent":["import { Element } from \"hast\";\nimport { ComponentProps, ComponentType, ElementType, memo } from \"react\";\nimport { CodeHeaderProps, SyntaxHighlighterProps } from \"./overrides/types\";\n\ntype Components = {\n [Key in Extract<ElementType, string>]?: ComponentType<ComponentProps<Key>>;\n} & {\n SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps> | undefined;\n CodeHeader?: ComponentType<CodeHeaderProps> | undefined;\n};\n\nconst areChildrenEqual = (prev: string | unknown, next: string | unknown) => {\n if (typeof prev === \"string\") return prev === next;\n return JSON.stringify(prev) === JSON.stringify(next);\n};\n\nexport const areNodesEqual = (\n prev: Element | undefined,\n next: Element | undefined,\n) => {\n if (!prev || !next) return prev === next;\n const isEqual =\n JSON.stringify(prev?.properties) === JSON.stringify(next?.properties) &&\n areChildrenEqual(prev?.children, next?.children);\n return isEqual;\n};\n\nexport const memoCompareNodes = (\n prev: { node?: Element | undefined },\n next: { node?: Element | undefined },\n) => {\n return areNodesEqual(prev.node, next.node);\n};\n\nexport const memoizeMarkdownComponents = (components: Components = {}) => {\n return Object.fromEntries(\n Object.entries(components ?? {}).map(([key, value]) => {\n if (!value) return [key, value];\n\n const Component = value as ComponentType;\n const WithoutNode = ({ node, ...props }: { node?: Element }) => {\n return <Component {...props} />;\n };\n return [key, memo(WithoutNode, memoCompareNodes)];\n }),\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAiE;AAwClD;AA9Bf,IAAM,mBAAmB,CAAC,MAAwB,SAA2B;AAC3E,MAAI,OAAO,SAAS,SAAU,QAAO,SAAS;AAC9C,SAAO,KAAK,UAAU,IAAI,MAAM,KAAK,UAAU,IAAI;AACrD;AAEO,IAAM,gBAAgB,CAC3B,MACA,SACG;AACH,MAAI,CAAC,QAAQ,CAAC,KAAM,QAAO,SAAS;AACpC,QAAM,UACJ,KAAK,UAAU,MAAM,UAAU,MAAM,KAAK,UAAU,MAAM,UAAU,KACpE,iBAAiB,MAAM,UAAU,MAAM,QAAQ;AACjD,SAAO;AACT;AAEO,IAAM,mBAAmB,CAC9B,MACA,SACG;AACH,SAAO,cAAc,KAAK,MAAM,KAAK,IAAI;AAC3C;AAEO,IAAM,4BAA4B,CAAC,aAAyB,CAAC,MAAM;AACxE,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrD,UAAI,CAAC,MAAO,QAAO,CAAC,KAAK,KAAK;AAE9B,YAAM,YAAY;AAClB,YAAM,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,MAA0B;AAC9D,eAAO,4CAAC,aAAW,GAAG,OAAO;AAAA,MAC/B;AACA,aAAO,CAAC,SAAK,mBAAK,aAAa,gBAAgB,CAAC;AAAA,IAClD,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// src/memoization.tsx
|
|
2
|
+
import { memo } from "react";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
var areChildrenEqual = (prev, next) => {
|
|
5
|
+
if (typeof prev === "string") return prev === next;
|
|
6
|
+
return JSON.stringify(prev) === JSON.stringify(next);
|
|
7
|
+
};
|
|
8
|
+
var areNodesEqual = (prev, next) => {
|
|
9
|
+
if (!prev || !next) return prev === next;
|
|
10
|
+
const isEqual = JSON.stringify(prev?.properties) === JSON.stringify(next?.properties) && areChildrenEqual(prev?.children, next?.children);
|
|
11
|
+
return isEqual;
|
|
12
|
+
};
|
|
13
|
+
var memoCompareNodes = (prev, next) => {
|
|
14
|
+
return areNodesEqual(prev.node, next.node);
|
|
15
|
+
};
|
|
16
|
+
var memoizeMarkdownComponents = (components = {}) => {
|
|
17
|
+
return Object.fromEntries(
|
|
18
|
+
Object.entries(components ?? {}).map(([key, value]) => {
|
|
19
|
+
if (!value) return [key, value];
|
|
20
|
+
const Component = value;
|
|
21
|
+
const WithoutNode = ({ node, ...props }) => {
|
|
22
|
+
return /* @__PURE__ */ jsx(Component, { ...props });
|
|
23
|
+
};
|
|
24
|
+
return [key, memo(WithoutNode, memoCompareNodes)];
|
|
25
|
+
})
|
|
26
|
+
);
|
|
27
|
+
};
|
|
28
|
+
export {
|
|
29
|
+
areNodesEqual,
|
|
30
|
+
memoCompareNodes,
|
|
31
|
+
memoizeMarkdownComponents
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=memoization.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/memoization.tsx"],"sourcesContent":["import { Element } from \"hast\";\nimport { ComponentProps, ComponentType, ElementType, memo } from \"react\";\nimport { CodeHeaderProps, SyntaxHighlighterProps } from \"./overrides/types\";\n\ntype Components = {\n [Key in Extract<ElementType, string>]?: ComponentType<ComponentProps<Key>>;\n} & {\n SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps> | undefined;\n CodeHeader?: ComponentType<CodeHeaderProps> | undefined;\n};\n\nconst areChildrenEqual = (prev: string | unknown, next: string | unknown) => {\n if (typeof prev === \"string\") return prev === next;\n return JSON.stringify(prev) === JSON.stringify(next);\n};\n\nexport const areNodesEqual = (\n prev: Element | undefined,\n next: Element | undefined,\n) => {\n if (!prev || !next) return prev === next;\n const isEqual =\n JSON.stringify(prev?.properties) === JSON.stringify(next?.properties) &&\n areChildrenEqual(prev?.children, next?.children);\n return isEqual;\n};\n\nexport const memoCompareNodes = (\n prev: { node?: Element | undefined },\n next: { node?: Element | undefined },\n) => {\n return areNodesEqual(prev.node, next.node);\n};\n\nexport const memoizeMarkdownComponents = (components: Components = {}) => {\n return Object.fromEntries(\n Object.entries(components ?? {}).map(([key, value]) => {\n if (!value) return [key, value];\n\n const Component = value as ComponentType;\n const WithoutNode = ({ node, ...props }: { node?: Element }) => {\n return <Component {...props} />;\n };\n return [key, memo(WithoutNode, memoCompareNodes)];\n }),\n );\n};\n"],"mappings":";AACA,SAAqD,YAAY;AAwClD;AA9Bf,IAAM,mBAAmB,CAAC,MAAwB,SAA2B;AAC3E,MAAI,OAAO,SAAS,SAAU,QAAO,SAAS;AAC9C,SAAO,KAAK,UAAU,IAAI,MAAM,KAAK,UAAU,IAAI;AACrD;AAEO,IAAM,gBAAgB,CAC3B,MACA,SACG;AACH,MAAI,CAAC,QAAQ,CAAC,KAAM,QAAO,SAAS;AACpC,QAAM,UACJ,KAAK,UAAU,MAAM,UAAU,MAAM,KAAK,UAAU,MAAM,UAAU,KACpE,iBAAiB,MAAM,UAAU,MAAM,QAAQ;AACjD,SAAO;AACT;AAEO,IAAM,mBAAmB,CAC9B,MACA,SACG;AACH,SAAO,cAAc,KAAK,MAAM,KAAK,IAAI;AAC3C;AAEO,IAAM,4BAA4B,CAAC,aAAyB,CAAC,MAAM;AACxE,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrD,UAAI,CAAC,MAAO,QAAO,CAAC,KAAK,KAAK;AAE9B,YAAM,YAAY;AAClB,YAAM,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,MAA0B;AAC9D,eAAO,oBAAC,aAAW,GAAG,OAAO;AAAA,MAC/B;AACA,aAAO,CAAC,KAAK,KAAK,aAAa,gBAAgB,CAAC;AAAA,IAClD,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ComponentType, FC } from "react";
|
|
2
2
|
import { CodeComponent, CodeHeaderProps, PreComponent, SyntaxHighlighterProps } from "./types";
|
|
3
|
-
import { Element } from "hast";
|
|
4
3
|
export type CodeBlockProps = {
|
|
5
4
|
language: string;
|
|
6
5
|
code: string;
|
|
@@ -10,7 +9,6 @@ export type CodeBlockProps = {
|
|
|
10
9
|
CodeHeader: ComponentType<CodeHeaderProps>;
|
|
11
10
|
SyntaxHighlighter: ComponentType<SyntaxHighlighterProps>;
|
|
12
11
|
};
|
|
13
|
-
node: Element | undefined;
|
|
14
12
|
};
|
|
15
13
|
export declare const DefaultCodeBlock: FC<CodeBlockProps>;
|
|
16
14
|
//# sourceMappingURL=CodeBlock.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeBlock.d.ts","sourceRoot":"","sources":["../../src/overrides/CodeBlock.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAEnD,OAAO,EACL,aAAa,EACb,eAAe,EACf,YAAY,EACZ,sBAAsB,EACvB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"CodeBlock.d.ts","sourceRoot":"","sources":["../../src/overrides/CodeBlock.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAEnD,OAAO,EACL,aAAa,EACb,eAAe,EACf,YAAY,EACZ,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAGjB,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE;QACV,GAAG,EAAE,YAAY,CAAC;QAClB,IAAI,EAAE,aAAa,CAAC;QACpB,UAAU,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;QAC3C,iBAAiB,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAC;KAC1D,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,cAAc,CAmB/C,CAAC"}
|
|
@@ -29,8 +29,7 @@ var import_jsx_runtime = require("react/jsx-runtime");
|
|
|
29
29
|
var DefaultCodeBlock = ({
|
|
30
30
|
components: { Pre, Code, SyntaxHighlighter, CodeHeader },
|
|
31
31
|
language,
|
|
32
|
-
code
|
|
33
|
-
node
|
|
32
|
+
code
|
|
34
33
|
}) => {
|
|
35
34
|
const components = (0, import_react.useMemo)(() => ({ Pre, Code }), [Pre, Code]);
|
|
36
35
|
const SH = !!language ? SyntaxHighlighter : import_defaultComponents.DefaultCodeBlockContent;
|
|
@@ -41,8 +40,7 @@ var DefaultCodeBlock = ({
|
|
|
41
40
|
{
|
|
42
41
|
components,
|
|
43
42
|
language: language ?? "unknown",
|
|
44
|
-
code
|
|
45
|
-
node
|
|
43
|
+
code
|
|
46
44
|
}
|
|
47
45
|
)
|
|
48
46
|
] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/overrides/CodeBlock.tsx"],"sourcesContent":["import { ComponentType, FC, useMemo } from \"react\";\n\nimport {\n CodeComponent,\n CodeHeaderProps,\n PreComponent,\n SyntaxHighlighterProps,\n} from \"./types\";\nimport { DefaultCodeBlockContent } from \"./defaultComponents\";\
|
|
1
|
+
{"version":3,"sources":["../../src/overrides/CodeBlock.tsx"],"sourcesContent":["import { ComponentType, FC, useMemo } from \"react\";\n\nimport {\n CodeComponent,\n CodeHeaderProps,\n PreComponent,\n SyntaxHighlighterProps,\n} from \"./types\";\nimport { DefaultCodeBlockContent } from \"./defaultComponents\";\n\nexport type CodeBlockProps = {\n language: string;\n code: string;\n components: {\n Pre: PreComponent;\n Code: CodeComponent;\n CodeHeader: ComponentType<CodeHeaderProps>;\n SyntaxHighlighter: ComponentType<SyntaxHighlighterProps>;\n };\n};\n\nexport const DefaultCodeBlock: FC<CodeBlockProps> = ({\n components: { Pre, Code, SyntaxHighlighter, CodeHeader },\n language,\n code,\n}) => {\n const components = useMemo(() => ({ Pre, Code }), [Pre, Code]);\n\n const SH = !!language ? SyntaxHighlighter : DefaultCodeBlockContent;\n\n return (\n <>\n <CodeHeader language={language} code={code} />\n <SH\n components={components}\n language={language ?? \"unknown\"}\n code={code}\n />\n </>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA2C;AAQ3C,+BAAwC;AAuBpC;AAVG,IAAM,mBAAuC,CAAC;AAAA,EACnD,YAAY,EAAE,KAAK,MAAM,mBAAmB,WAAW;AAAA,EACvD;AAAA,EACA;AACF,MAAM;AACJ,QAAM,iBAAa,sBAAQ,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC;AAE7D,QAAM,KAAK,CAAC,CAAC,WAAW,oBAAoB;AAE5C,SACE,4EACE;AAAA,gDAAC,cAAW,UAAoB,MAAY;AAAA,IAC5C;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,UAAU,YAAY;AAAA,QACtB;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;","names":[]}
|
|
@@ -5,8 +5,7 @@ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
|
5
5
|
var DefaultCodeBlock = ({
|
|
6
6
|
components: { Pre, Code, SyntaxHighlighter, CodeHeader },
|
|
7
7
|
language,
|
|
8
|
-
code
|
|
9
|
-
node
|
|
8
|
+
code
|
|
10
9
|
}) => {
|
|
11
10
|
const components = useMemo(() => ({ Pre, Code }), [Pre, Code]);
|
|
12
11
|
const SH = !!language ? SyntaxHighlighter : DefaultCodeBlockContent;
|
|
@@ -17,8 +16,7 @@ var DefaultCodeBlock = ({
|
|
|
17
16
|
{
|
|
18
17
|
components,
|
|
19
18
|
language: language ?? "unknown",
|
|
20
|
-
code
|
|
21
|
-
node
|
|
19
|
+
code
|
|
22
20
|
}
|
|
23
21
|
)
|
|
24
22
|
] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/overrides/CodeBlock.tsx"],"sourcesContent":["import { ComponentType, FC, useMemo } from \"react\";\n\nimport {\n CodeComponent,\n CodeHeaderProps,\n PreComponent,\n SyntaxHighlighterProps,\n} from \"./types\";\nimport { DefaultCodeBlockContent } from \"./defaultComponents\";\
|
|
1
|
+
{"version":3,"sources":["../../src/overrides/CodeBlock.tsx"],"sourcesContent":["import { ComponentType, FC, useMemo } from \"react\";\n\nimport {\n CodeComponent,\n CodeHeaderProps,\n PreComponent,\n SyntaxHighlighterProps,\n} from \"./types\";\nimport { DefaultCodeBlockContent } from \"./defaultComponents\";\n\nexport type CodeBlockProps = {\n language: string;\n code: string;\n components: {\n Pre: PreComponent;\n Code: CodeComponent;\n CodeHeader: ComponentType<CodeHeaderProps>;\n SyntaxHighlighter: ComponentType<SyntaxHighlighterProps>;\n };\n};\n\nexport const DefaultCodeBlock: FC<CodeBlockProps> = ({\n components: { Pre, Code, SyntaxHighlighter, CodeHeader },\n language,\n code,\n}) => {\n const components = useMemo(() => ({ Pre, Code }), [Pre, Code]);\n\n const SH = !!language ? SyntaxHighlighter : DefaultCodeBlockContent;\n\n return (\n <>\n <CodeHeader language={language} code={code} />\n <SH\n components={components}\n language={language ?? \"unknown\"}\n code={code}\n />\n </>\n );\n};\n"],"mappings":";AAAA,SAA4B,eAAe;AAQ3C,SAAS,+BAA+B;AAuBpC,mBACE,KADF;AAVG,IAAM,mBAAuC,CAAC;AAAA,EACnD,YAAY,EAAE,KAAK,MAAM,mBAAmB,WAAW;AAAA,EACvD;AAAA,EACA;AACF,MAAM;AACJ,QAAM,aAAa,QAAQ,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC;AAE7D,QAAM,KAAK,CAAC,CAAC,WAAW,oBAAoB;AAE5C,SACE,iCACE;AAAA,wBAAC,cAAW,UAAoB,MAAY;AAAA,IAC5C;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,UAAU,YAAY;AAAA,QACtB;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;","names":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ComponentPropsWithoutRef, ComponentType
|
|
1
|
+
import { ComponentPropsWithoutRef, ComponentType } from "react";
|
|
2
2
|
import { CodeComponent, CodeHeaderProps, PreComponent, SyntaxHighlighterProps } from "./types";
|
|
3
3
|
export type CodeOverrideProps = ComponentPropsWithoutRef<CodeComponent> & {
|
|
4
4
|
components: {
|
|
@@ -12,5 +12,5 @@ export type CodeOverrideProps = ComponentPropsWithoutRef<CodeComponent> & {
|
|
|
12
12
|
SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps>;
|
|
13
13
|
}> | undefined;
|
|
14
14
|
};
|
|
15
|
-
export declare const CodeOverride:
|
|
15
|
+
export declare const CodeOverride: import("react").NamedExoticComponent<CodeOverrideProps>;
|
|
16
16
|
//# sourceMappingURL=CodeOverride.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeOverride.d.ts","sourceRoot":"","sources":["../../src/overrides/CodeOverride.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"CodeOverride.d.ts","sourceRoot":"","sources":["../../src/overrides/CodeOverride.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,aAAa,EAId,MAAM,OAAO,CAAC;AAEf,OAAO,EACL,aAAa,EACb,eAAe,EACf,YAAY,EACZ,sBAAsB,EACvB,MAAM,SAAS,CAAC;AA8DjB,MAAM,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,aAAa,CAAC,GAAG;IACxE,UAAU,EAAE;QACV,GAAG,EAAE,YAAY,CAAC;QAClB,IAAI,EAAE,aAAa,CAAC;QACpB,UAAU,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;QAC3C,iBAAiB,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAC;KAC1D,CAAC;IACF,oBAAoB,CAAC,EACjB,MAAM,CACJ,MAAM,EACN;QACE,UAAU,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;QAC5C,iBAAiB,CAAC,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAC;KAC3D,CACF,GACD,SAAS,CAAC;CACf,CAAC;AAkBF,eAAO,MAAM,YAAY,yDAMvB,CAAC"}
|
|
@@ -29,6 +29,7 @@ var import_CodeBlock = require("./CodeBlock.js");
|
|
|
29
29
|
var import_react_use_callback_ref = require("@radix-ui/react-use-callback-ref");
|
|
30
30
|
var import_withDefaults = require("./withDefaults.js");
|
|
31
31
|
var import_defaultComponents = require("./defaultComponents.js");
|
|
32
|
+
var import_memoization = require("../memoization.js");
|
|
32
33
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
33
34
|
var CodeBlockOverride = ({
|
|
34
35
|
components: {
|
|
@@ -39,7 +40,6 @@ var CodeBlockOverride = ({
|
|
|
39
40
|
},
|
|
40
41
|
componentsByLanguage = {},
|
|
41
42
|
children,
|
|
42
|
-
node,
|
|
43
43
|
...codeProps
|
|
44
44
|
}) => {
|
|
45
45
|
const preProps = (0, import_react.useContext)(import_PreOverride.PreContext);
|
|
@@ -53,8 +53,7 @@ var CodeBlockOverride = ({
|
|
|
53
53
|
import_defaultComponents.DefaultCodeBlockContent,
|
|
54
54
|
{
|
|
55
55
|
components: { Pre: WrappedPre, Code: WrappedCode },
|
|
56
|
-
code: children
|
|
57
|
-
node
|
|
56
|
+
code: children
|
|
58
57
|
}
|
|
59
58
|
);
|
|
60
59
|
}
|
|
@@ -70,18 +69,17 @@ var CodeBlockOverride = ({
|
|
|
70
69
|
CodeHeader
|
|
71
70
|
},
|
|
72
71
|
language: language || "unknown",
|
|
73
|
-
code: children
|
|
74
|
-
node
|
|
72
|
+
code: children
|
|
75
73
|
}
|
|
76
74
|
);
|
|
77
75
|
};
|
|
78
|
-
var
|
|
76
|
+
var CodeOverrideImpl = ({
|
|
79
77
|
components,
|
|
80
78
|
componentsByLanguage,
|
|
81
79
|
...props
|
|
82
80
|
}) => {
|
|
83
|
-
const
|
|
84
|
-
if (!
|
|
81
|
+
const isCodeBlock = (0, import_PreOverride.useIsMarkdownCodeBlock)();
|
|
82
|
+
if (!isCodeBlock) return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(components.Code, { ...props });
|
|
85
83
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
86
84
|
CodeBlockOverride,
|
|
87
85
|
{
|
|
@@ -91,6 +89,10 @@ var CodeOverride = ({
|
|
|
91
89
|
}
|
|
92
90
|
);
|
|
93
91
|
};
|
|
92
|
+
var CodeOverride = (0, import_react.memo)(CodeOverrideImpl, (prev, next) => {
|
|
93
|
+
const isEqual = prev.components === next.components && prev.componentsByLanguage === next.componentsByLanguage && (0, import_memoization.memoCompareNodes)(prev, next);
|
|
94
|
+
return isEqual;
|
|
95
|
+
});
|
|
94
96
|
// Annotate the CommonJS export names for ESM import in node:
|
|
95
97
|
0 && (module.exports = {
|
|
96
98
|
CodeOverride
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/overrides/CodeOverride.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../src/overrides/CodeOverride.tsx"],"sourcesContent":["import {\n ComponentPropsWithoutRef,\n ComponentType,\n FC,\n memo,\n useContext,\n} from \"react\";\nimport { PreContext, useIsMarkdownCodeBlock } from \"./PreOverride\";\nimport {\n CodeComponent,\n CodeHeaderProps,\n PreComponent,\n SyntaxHighlighterProps,\n} from \"./types\";\nimport { DefaultCodeBlock } from \"./CodeBlock\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { withDefaultProps } from \"./withDefaults\";\nimport { DefaultCodeBlockContent } from \"./defaultComponents\";\nimport { memoCompareNodes } from \"../memoization\";\n\nconst CodeBlockOverride: FC<CodeOverrideProps> = ({\n components: {\n Pre,\n Code,\n SyntaxHighlighter: FallbackSyntaxHighlighter,\n CodeHeader: FallbackCodeHeader,\n },\n componentsByLanguage = {},\n children,\n ...codeProps\n}) => {\n const preProps = useContext(PreContext)!;\n const getPreProps = withDefaultProps<any>(preProps);\n const WrappedPre: PreComponent = useCallbackRef((props) => (\n <Pre {...getPreProps(props)} />\n ));\n\n const getCodeProps = withDefaultProps<any>(codeProps);\n const WrappedCode: CodeComponent = useCallbackRef((props) => (\n <Code {...getCodeProps(props)} />\n ));\n\n const language = /language-(\\w+)/.exec(codeProps.className || \"\")?.[1] ?? \"\";\n\n // if the code content is not string (due to rehype plugins), return a default code block\n if (typeof children !== \"string\") {\n return (\n <DefaultCodeBlockContent\n components={{ Pre: WrappedPre, Code: WrappedCode }}\n code={children}\n />\n );\n }\n\n const SyntaxHighlighter: ComponentType<SyntaxHighlighterProps> =\n componentsByLanguage[language]?.SyntaxHighlighter ??\n FallbackSyntaxHighlighter;\n\n const CodeHeader: ComponentType<CodeHeaderProps> =\n componentsByLanguage[language]?.CodeHeader ?? FallbackCodeHeader;\n\n return (\n <DefaultCodeBlock\n components={{\n Pre: WrappedPre,\n Code: WrappedCode,\n SyntaxHighlighter,\n CodeHeader,\n }}\n language={language || \"unknown\"}\n code={children}\n />\n );\n};\n\nexport type CodeOverrideProps = ComponentPropsWithoutRef<CodeComponent> & {\n components: {\n Pre: PreComponent;\n Code: CodeComponent;\n CodeHeader: ComponentType<CodeHeaderProps>;\n SyntaxHighlighter: ComponentType<SyntaxHighlighterProps>;\n };\n componentsByLanguage?:\n | Record<\n string,\n {\n CodeHeader?: ComponentType<CodeHeaderProps>;\n SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps>;\n }\n >\n | undefined;\n};\n\nconst CodeOverrideImpl: FC<CodeOverrideProps> = ({\n components,\n componentsByLanguage,\n ...props\n}) => {\n const isCodeBlock = useIsMarkdownCodeBlock();\n if (!isCodeBlock) return <components.Code {...props} />;\n return (\n <CodeBlockOverride\n components={components}\n componentsByLanguage={componentsByLanguage}\n {...props}\n />\n );\n};\n\nexport const CodeOverride = memo(CodeOverrideImpl, (prev, next) => {\n const isEqual =\n prev.components === next.components &&\n prev.componentsByLanguage === next.componentsByLanguage &&\n memoCompareNodes(prev, next);\n return isEqual;\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAMO;AACP,yBAAmD;AAOnD,uBAAiC;AACjC,oCAA+B;AAC/B,0BAAiC;AACjC,+BAAwC;AACxC,yBAAiC;AAgB7B;AAdJ,IAAM,oBAA2C,CAAC;AAAA,EAChD,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA,mBAAmB;AAAA,IACnB,YAAY;AAAA,EACd;AAAA,EACA,uBAAuB,CAAC;AAAA,EACxB;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,eAAW,yBAAW,6BAAU;AACtC,QAAM,kBAAc,sCAAsB,QAAQ;AAClD,QAAM,iBAA2B,8CAAe,CAAC,UAC/C,4CAAC,OAAK,GAAG,YAAY,KAAK,GAAG,CAC9B;AAED,QAAM,mBAAe,sCAAsB,SAAS;AACpD,QAAM,kBAA6B,8CAAe,CAAC,UACjD,4CAAC,QAAM,GAAG,aAAa,KAAK,GAAG,CAChC;AAED,QAAM,WAAW,iBAAiB,KAAK,UAAU,aAAa,EAAE,IAAI,CAAC,KAAK;AAG1E,MAAI,OAAO,aAAa,UAAU;AAChC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,YAAY,EAAE,KAAK,YAAY,MAAM,YAAY;AAAA,QACjD,MAAM;AAAA;AAAA,IACR;AAAA,EAEJ;AAEA,QAAM,oBACJ,qBAAqB,QAAQ,GAAG,qBAChC;AAEF,QAAM,aACJ,qBAAqB,QAAQ,GAAG,cAAc;AAEhD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,YAAY;AAAA,QACV,KAAK;AAAA,QACL,MAAM;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAAA,MACA,UAAU,YAAY;AAAA,MACtB,MAAM;AAAA;AAAA,EACR;AAEJ;AAoBA,IAAM,mBAA0C,CAAC;AAAA,EAC/C;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,kBAAc,2CAAuB;AAC3C,MAAI,CAAC,YAAa,QAAO,4CAAC,WAAW,MAAX,EAAiB,GAAG,OAAO;AACrD,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEO,IAAM,mBAAe,mBAAK,kBAAkB,CAAC,MAAM,SAAS;AACjE,QAAM,UACJ,KAAK,eAAe,KAAK,cACzB,KAAK,yBAAyB,KAAK,4BACnC,qCAAiB,MAAM,IAAI;AAC7B,SAAO;AACT,CAAC;","names":[]}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
// src/overrides/CodeOverride.tsx
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import {
|
|
3
|
+
memo,
|
|
4
|
+
useContext
|
|
5
|
+
} from "react";
|
|
6
|
+
import { PreContext, useIsMarkdownCodeBlock } from "./PreOverride.mjs";
|
|
4
7
|
import { DefaultCodeBlock } from "./CodeBlock.mjs";
|
|
5
8
|
import { useCallbackRef } from "@radix-ui/react-use-callback-ref";
|
|
6
9
|
import { withDefaultProps } from "./withDefaults.mjs";
|
|
7
10
|
import { DefaultCodeBlockContent } from "./defaultComponents.mjs";
|
|
11
|
+
import { memoCompareNodes } from "../memoization.mjs";
|
|
8
12
|
import { jsx } from "react/jsx-runtime";
|
|
9
13
|
var CodeBlockOverride = ({
|
|
10
14
|
components: {
|
|
@@ -15,7 +19,6 @@ var CodeBlockOverride = ({
|
|
|
15
19
|
},
|
|
16
20
|
componentsByLanguage = {},
|
|
17
21
|
children,
|
|
18
|
-
node,
|
|
19
22
|
...codeProps
|
|
20
23
|
}) => {
|
|
21
24
|
const preProps = useContext(PreContext);
|
|
@@ -29,8 +32,7 @@ var CodeBlockOverride = ({
|
|
|
29
32
|
DefaultCodeBlockContent,
|
|
30
33
|
{
|
|
31
34
|
components: { Pre: WrappedPre, Code: WrappedCode },
|
|
32
|
-
code: children
|
|
33
|
-
node
|
|
35
|
+
code: children
|
|
34
36
|
}
|
|
35
37
|
);
|
|
36
38
|
}
|
|
@@ -46,18 +48,17 @@ var CodeBlockOverride = ({
|
|
|
46
48
|
CodeHeader
|
|
47
49
|
},
|
|
48
50
|
language: language || "unknown",
|
|
49
|
-
code: children
|
|
50
|
-
node
|
|
51
|
+
code: children
|
|
51
52
|
}
|
|
52
53
|
);
|
|
53
54
|
};
|
|
54
|
-
var
|
|
55
|
+
var CodeOverrideImpl = ({
|
|
55
56
|
components,
|
|
56
57
|
componentsByLanguage,
|
|
57
58
|
...props
|
|
58
59
|
}) => {
|
|
59
|
-
const
|
|
60
|
-
if (!
|
|
60
|
+
const isCodeBlock = useIsMarkdownCodeBlock();
|
|
61
|
+
if (!isCodeBlock) return /* @__PURE__ */ jsx(components.Code, { ...props });
|
|
61
62
|
return /* @__PURE__ */ jsx(
|
|
62
63
|
CodeBlockOverride,
|
|
63
64
|
{
|
|
@@ -67,6 +68,10 @@ var CodeOverride = ({
|
|
|
67
68
|
}
|
|
68
69
|
);
|
|
69
70
|
};
|
|
71
|
+
var CodeOverride = memo(CodeOverrideImpl, (prev, next) => {
|
|
72
|
+
const isEqual = prev.components === next.components && prev.componentsByLanguage === next.componentsByLanguage && memoCompareNodes(prev, next);
|
|
73
|
+
return isEqual;
|
|
74
|
+
});
|
|
70
75
|
export {
|
|
71
76
|
CodeOverride
|
|
72
77
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/overrides/CodeOverride.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../src/overrides/CodeOverride.tsx"],"sourcesContent":["import {\n ComponentPropsWithoutRef,\n ComponentType,\n FC,\n memo,\n useContext,\n} from \"react\";\nimport { PreContext, useIsMarkdownCodeBlock } from \"./PreOverride\";\nimport {\n CodeComponent,\n CodeHeaderProps,\n PreComponent,\n SyntaxHighlighterProps,\n} from \"./types\";\nimport { DefaultCodeBlock } from \"./CodeBlock\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { withDefaultProps } from \"./withDefaults\";\nimport { DefaultCodeBlockContent } from \"./defaultComponents\";\nimport { memoCompareNodes } from \"../memoization\";\n\nconst CodeBlockOverride: FC<CodeOverrideProps> = ({\n components: {\n Pre,\n Code,\n SyntaxHighlighter: FallbackSyntaxHighlighter,\n CodeHeader: FallbackCodeHeader,\n },\n componentsByLanguage = {},\n children,\n ...codeProps\n}) => {\n const preProps = useContext(PreContext)!;\n const getPreProps = withDefaultProps<any>(preProps);\n const WrappedPre: PreComponent = useCallbackRef((props) => (\n <Pre {...getPreProps(props)} />\n ));\n\n const getCodeProps = withDefaultProps<any>(codeProps);\n const WrappedCode: CodeComponent = useCallbackRef((props) => (\n <Code {...getCodeProps(props)} />\n ));\n\n const language = /language-(\\w+)/.exec(codeProps.className || \"\")?.[1] ?? \"\";\n\n // if the code content is not string (due to rehype plugins), return a default code block\n if (typeof children !== \"string\") {\n return (\n <DefaultCodeBlockContent\n components={{ Pre: WrappedPre, Code: WrappedCode }}\n code={children}\n />\n );\n }\n\n const SyntaxHighlighter: ComponentType<SyntaxHighlighterProps> =\n componentsByLanguage[language]?.SyntaxHighlighter ??\n FallbackSyntaxHighlighter;\n\n const CodeHeader: ComponentType<CodeHeaderProps> =\n componentsByLanguage[language]?.CodeHeader ?? FallbackCodeHeader;\n\n return (\n <DefaultCodeBlock\n components={{\n Pre: WrappedPre,\n Code: WrappedCode,\n SyntaxHighlighter,\n CodeHeader,\n }}\n language={language || \"unknown\"}\n code={children}\n />\n );\n};\n\nexport type CodeOverrideProps = ComponentPropsWithoutRef<CodeComponent> & {\n components: {\n Pre: PreComponent;\n Code: CodeComponent;\n CodeHeader: ComponentType<CodeHeaderProps>;\n SyntaxHighlighter: ComponentType<SyntaxHighlighterProps>;\n };\n componentsByLanguage?:\n | Record<\n string,\n {\n CodeHeader?: ComponentType<CodeHeaderProps>;\n SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps>;\n }\n >\n | undefined;\n};\n\nconst CodeOverrideImpl: FC<CodeOverrideProps> = ({\n components,\n componentsByLanguage,\n ...props\n}) => {\n const isCodeBlock = useIsMarkdownCodeBlock();\n if (!isCodeBlock) return <components.Code {...props} />;\n return (\n <CodeBlockOverride\n components={components}\n componentsByLanguage={componentsByLanguage}\n {...props}\n />\n );\n};\n\nexport const CodeOverride = memo(CodeOverrideImpl, (prev, next) => {\n const isEqual =\n prev.components === next.components &&\n prev.componentsByLanguage === next.componentsByLanguage &&\n memoCompareNodes(prev, next);\n return isEqual;\n});\n"],"mappings":";AAAA;AAAA,EAIE;AAAA,EACA;AAAA,OACK;AACP,SAAS,YAAY,8BAA8B;AAOnD,SAAS,wBAAwB;AACjC,SAAS,sBAAsB;AAC/B,SAAS,wBAAwB;AACjC,SAAS,+BAA+B;AACxC,SAAS,wBAAwB;AAgB7B;AAdJ,IAAM,oBAA2C,CAAC;AAAA,EAChD,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA,mBAAmB;AAAA,IACnB,YAAY;AAAA,EACd;AAAA,EACA,uBAAuB,CAAC;AAAA,EACxB;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,WAAW,WAAW,UAAU;AACtC,QAAM,cAAc,iBAAsB,QAAQ;AAClD,QAAM,aAA2B,eAAe,CAAC,UAC/C,oBAAC,OAAK,GAAG,YAAY,KAAK,GAAG,CAC9B;AAED,QAAM,eAAe,iBAAsB,SAAS;AACpD,QAAM,cAA6B,eAAe,CAAC,UACjD,oBAAC,QAAM,GAAG,aAAa,KAAK,GAAG,CAChC;AAED,QAAM,WAAW,iBAAiB,KAAK,UAAU,aAAa,EAAE,IAAI,CAAC,KAAK;AAG1E,MAAI,OAAO,aAAa,UAAU;AAChC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,YAAY,EAAE,KAAK,YAAY,MAAM,YAAY;AAAA,QACjD,MAAM;AAAA;AAAA,IACR;AAAA,EAEJ;AAEA,QAAM,oBACJ,qBAAqB,QAAQ,GAAG,qBAChC;AAEF,QAAM,aACJ,qBAAqB,QAAQ,GAAG,cAAc;AAEhD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,YAAY;AAAA,QACV,KAAK;AAAA,QACL,MAAM;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAAA,MACA,UAAU,YAAY;AAAA,MACtB,MAAM;AAAA;AAAA,EACR;AAEJ;AAoBA,IAAM,mBAA0C,CAAC;AAAA,EAC/C;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,cAAc,uBAAuB;AAC3C,MAAI,CAAC,YAAa,QAAO,oBAAC,WAAW,MAAX,EAAiB,GAAG,OAAO;AACrD,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEO,IAAM,eAAe,KAAK,kBAAkB,CAAC,MAAM,SAAS;AACjE,QAAM,UACJ,KAAK,eAAe,KAAK,cACzB,KAAK,yBAAyB,KAAK,wBACnC,iBAAiB,MAAM,IAAI;AAC7B,SAAO;AACT,CAAC;","names":[]}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { PreComponent } from "./types";
|
|
2
1
|
export declare const PreContext: import("react").Context<Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLPreElement>, HTMLPreElement>, "ref"> & {
|
|
3
2
|
node?: import("hast").Element | undefined;
|
|
4
3
|
}, "children"> | null>;
|
|
5
4
|
export declare const useIsMarkdownCodeBlock: () => boolean;
|
|
6
|
-
export declare const PreOverride:
|
|
5
|
+
export declare const PreOverride: import("react").NamedExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLPreElement>, HTMLPreElement>, "ref"> & {
|
|
6
|
+
node?: import("hast").Element | undefined;
|
|
7
|
+
}>;
|
|
7
8
|
//# sourceMappingURL=PreOverride.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreOverride.d.ts","sourceRoot":"","sources":["../../src/overrides/PreOverride.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PreOverride.d.ts","sourceRoot":"","sources":["../../src/overrides/PreOverride.tsx"],"names":[],"mappings":"AASA,eAAO,MAAM,UAAU;;sBAGR,CAAC;AAEhB,eAAO,MAAM,sBAAsB,eAElC,CAAC;AAMF,eAAO,MAAM,WAAW;;EAA0C,CAAC"}
|
|
@@ -26,14 +26,16 @@ __export(PreOverride_exports, {
|
|
|
26
26
|
});
|
|
27
27
|
module.exports = __toCommonJS(PreOverride_exports);
|
|
28
28
|
var import_react = require("react");
|
|
29
|
+
var import_memoization = require("../memoization.js");
|
|
29
30
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
30
31
|
var PreContext = (0, import_react.createContext)(null);
|
|
31
32
|
var useIsMarkdownCodeBlock = () => {
|
|
32
33
|
return (0, import_react.useContext)(PreContext) !== null;
|
|
33
34
|
};
|
|
34
|
-
var
|
|
35
|
+
var PreOverrideImpl = ({ children, ...rest }) => {
|
|
35
36
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PreContext.Provider, { value: rest, children });
|
|
36
37
|
};
|
|
38
|
+
var PreOverride = (0, import_react.memo)(PreOverrideImpl, import_memoization.memoCompareNodes);
|
|
37
39
|
// Annotate the CommonJS export names for ESM import in node:
|
|
38
40
|
0 && (module.exports = {
|
|
39
41
|
PreContext,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/overrides/PreOverride.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../src/overrides/PreOverride.tsx"],"sourcesContent":["import {\n createContext,\n ComponentPropsWithoutRef,\n useContext,\n memo,\n} from \"react\";\nimport { PreComponent } from \"./types\";\nimport { memoCompareNodes } from \"../memoization\";\n\nexport const PreContext = createContext<Omit<\n ComponentPropsWithoutRef<PreComponent>,\n \"children\"\n> | null>(null);\n\nexport const useIsMarkdownCodeBlock = () => {\n return useContext(PreContext) !== null;\n};\n\nconst PreOverrideImpl: PreComponent = ({ children, ...rest }) => {\n return <PreContext.Provider value={rest}>{children}</PreContext.Provider>;\n};\n\nexport const PreOverride = memo(PreOverrideImpl, memoCompareNodes);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAKO;AAEP,yBAAiC;AAYxB;AAVF,IAAM,iBAAa,4BAGhB,IAAI;AAEP,IAAM,yBAAyB,MAAM;AAC1C,aAAO,yBAAW,UAAU,MAAM;AACpC;AAEA,IAAM,kBAAgC,CAAC,EAAE,UAAU,GAAG,KAAK,MAAM;AAC/D,SAAO,4CAAC,WAAW,UAAX,EAAoB,OAAO,MAAO,UAAS;AACrD;AAEO,IAAM,kBAAc,mBAAK,iBAAiB,mCAAgB;","names":[]}
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
// src/overrides/PreOverride.tsx
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
createContext,
|
|
4
|
+
useContext,
|
|
5
|
+
memo
|
|
6
|
+
} from "react";
|
|
7
|
+
import { memoCompareNodes } from "../memoization.mjs";
|
|
3
8
|
import { jsx } from "react/jsx-runtime";
|
|
4
9
|
var PreContext = createContext(null);
|
|
5
10
|
var useIsMarkdownCodeBlock = () => {
|
|
6
11
|
return useContext(PreContext) !== null;
|
|
7
12
|
};
|
|
8
|
-
var
|
|
13
|
+
var PreOverrideImpl = ({ children, ...rest }) => {
|
|
9
14
|
return /* @__PURE__ */ jsx(PreContext.Provider, { value: rest, children });
|
|
10
15
|
};
|
|
16
|
+
var PreOverride = memo(PreOverrideImpl, memoCompareNodes);
|
|
11
17
|
export {
|
|
12
18
|
PreContext,
|
|
13
19
|
PreOverride,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/overrides/PreOverride.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../src/overrides/PreOverride.tsx"],"sourcesContent":["import {\n createContext,\n ComponentPropsWithoutRef,\n useContext,\n memo,\n} from \"react\";\nimport { PreComponent } from \"./types\";\nimport { memoCompareNodes } from \"../memoization\";\n\nexport const PreContext = createContext<Omit<\n ComponentPropsWithoutRef<PreComponent>,\n \"children\"\n> | null>(null);\n\nexport const useIsMarkdownCodeBlock = () => {\n return useContext(PreContext) !== null;\n};\n\nconst PreOverrideImpl: PreComponent = ({ children, ...rest }) => {\n return <PreContext.Provider value={rest}>{children}</PreContext.Provider>;\n};\n\nexport const PreOverride = memo(PreOverrideImpl, memoCompareNodes);\n"],"mappings":";AAAA;AAAA,EACE;AAAA,EAEA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,wBAAwB;AAYxB;AAVF,IAAM,aAAa,cAGhB,IAAI;AAEP,IAAM,yBAAyB,MAAM;AAC1C,SAAO,WAAW,UAAU,MAAM;AACpC;AAEA,IAAM,kBAAgC,CAAC,EAAE,UAAU,GAAG,KAAK,MAAM;AAC/D,SAAO,oBAAC,WAAW,UAAX,EAAoB,OAAO,MAAO,UAAS;AACrD;AAEO,IAAM,cAAc,KAAK,iBAAiB,gBAAgB;","names":[]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { ComponentType, ReactNode } from "react";
|
|
2
|
-
import { Element } from "hast";
|
|
3
2
|
import { PreComponent, CodeComponent, CodeHeaderProps } from "./types";
|
|
4
3
|
export declare const DefaultPre: PreComponent;
|
|
5
4
|
export declare const DefaultCode: CodeComponent;
|
|
@@ -9,7 +8,6 @@ export declare const DefaultCodeBlockContent: ComponentType<{
|
|
|
9
8
|
Code: CodeComponent;
|
|
10
9
|
};
|
|
11
10
|
code: string | ReactNode | undefined;
|
|
12
|
-
node: Element | undefined;
|
|
13
11
|
}>;
|
|
14
12
|
export declare const DefaultCodeHeader: ComponentType<CodeHeaderProps>;
|
|
15
13
|
//# sourceMappingURL=defaultComponents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultComponents.d.ts","sourceRoot":"","sources":["../../src/overrides/defaultComponents.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"defaultComponents.d.ts","sourceRoot":"","sources":["../../src/overrides/defaultComponents.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAEvE,eAAO,MAAM,UAAU,EAAE,YAExB,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,aAEzB,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC;IAClD,UAAU,EAAE;QAAE,GAAG,EAAE,YAAY,CAAC;QAAC,IAAI,EAAE,aAAa,CAAA;KAAE,CAAC;IACvD,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;CACtC,CAIA,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,eAAe,CAAc,CAAC"}
|
|
@@ -29,7 +29,7 @@ module.exports = __toCommonJS(defaultComponents_exports);
|
|
|
29
29
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
30
30
|
var DefaultPre = ({ node, ...rest }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("pre", { ...rest });
|
|
31
31
|
var DefaultCode = ({ node, ...rest }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("code", { ...rest });
|
|
32
|
-
var DefaultCodeBlockContent = ({ components: { Pre, Code }, code
|
|
32
|
+
var DefaultCodeBlockContent = ({ components: { Pre, Code }, code }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Pre, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Code, { children: code }) });
|
|
33
33
|
var DefaultCodeHeader = () => null;
|
|
34
34
|
// Annotate the CommonJS export names for ESM import in node:
|
|
35
35
|
0 && (module.exports = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/overrides/defaultComponents.tsx"],"sourcesContent":["import type { ComponentType, ReactNode } from \"react\";\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/overrides/defaultComponents.tsx"],"sourcesContent":["import type { ComponentType, ReactNode } from \"react\";\nimport { PreComponent, CodeComponent, CodeHeaderProps } from \"./types\";\n\nexport const DefaultPre: PreComponent = ({ node, ...rest }) => (\n <pre {...rest} />\n);\n\nexport const DefaultCode: CodeComponent = ({ node, ...rest }) => (\n <code {...rest} />\n);\n\nexport const DefaultCodeBlockContent: ComponentType<{\n components: { Pre: PreComponent; Code: CodeComponent };\n code: string | ReactNode | undefined;\n}> = ({ components: { Pre, Code }, code }) => (\n <Pre>\n <Code>{code}</Code>\n </Pre>\n);\n\nexport const DefaultCodeHeader: ComponentType<CodeHeaderProps> = () => null;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIE;AADK,IAAM,aAA2B,CAAC,EAAE,MAAM,GAAG,KAAK,MACvD,4CAAC,SAAK,GAAG,MAAM;AAGV,IAAM,cAA6B,CAAC,EAAE,MAAM,GAAG,KAAK,MACzD,4CAAC,UAAM,GAAG,MAAM;AAGX,IAAM,0BAGR,CAAC,EAAE,YAAY,EAAE,KAAK,KAAK,GAAG,KAAK,MACtC,4CAAC,OACC,sDAAC,QAAM,gBAAK,GACd;AAGK,IAAM,oBAAoD,MAAM;","names":[]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
3
|
var DefaultPre = ({ node, ...rest }) => /* @__PURE__ */ jsx("pre", { ...rest });
|
|
4
4
|
var DefaultCode = ({ node, ...rest }) => /* @__PURE__ */ jsx("code", { ...rest });
|
|
5
|
-
var DefaultCodeBlockContent = ({ components: { Pre, Code }, code
|
|
5
|
+
var DefaultCodeBlockContent = ({ components: { Pre, Code }, code }) => /* @__PURE__ */ jsx(Pre, { children: /* @__PURE__ */ jsx(Code, { children: code }) });
|
|
6
6
|
var DefaultCodeHeader = () => null;
|
|
7
7
|
export {
|
|
8
8
|
DefaultCode,
|