@assistant-ui/react-markdown 0.2.22 → 0.2.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/dist/index.d.ts +6 -45
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +8 -307
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +7 -293
  6. package/dist/index.mjs.map +1 -1
  7. package/dist/overrides/CodeBlock.d.ts +14 -0
  8. package/dist/overrides/CodeBlock.d.ts.map +1 -0
  9. package/dist/overrides/CodeBlock.js +50 -0
  10. package/dist/overrides/CodeBlock.js.map +1 -0
  11. package/dist/overrides/CodeBlock.mjs +26 -0
  12. package/dist/overrides/CodeBlock.mjs.map +1 -0
  13. package/dist/overrides/CodeOverride.d.ts +16 -0
  14. package/dist/overrides/CodeOverride.d.ts.map +1 -0
  15. package/dist/overrides/CodeOverride.js +85 -0
  16. package/dist/overrides/CodeOverride.js.map +1 -0
  17. package/dist/overrides/CodeOverride.mjs +61 -0
  18. package/dist/overrides/CodeOverride.mjs.map +1 -0
  19. package/dist/overrides/PreOverride.d.ts +6 -0
  20. package/dist/overrides/PreOverride.d.ts.map +1 -0
  21. package/dist/overrides/PreOverride.js +41 -0
  22. package/dist/overrides/PreOverride.js.map +1 -0
  23. package/dist/overrides/PreOverride.mjs +15 -0
  24. package/dist/overrides/PreOverride.mjs.map +1 -0
  25. package/dist/overrides/defaultComponents.d.ts +13 -0
  26. package/dist/overrides/defaultComponents.d.ts.map +1 -0
  27. package/dist/overrides/defaultComponents.js +39 -0
  28. package/dist/overrides/defaultComponents.js.map +1 -0
  29. package/dist/overrides/defaultComponents.mjs +12 -0
  30. package/dist/overrides/defaultComponents.mjs.map +1 -0
  31. package/dist/overrides/types.d.ts +16 -0
  32. package/dist/overrides/types.d.ts.map +1 -0
  33. package/dist/overrides/types.js +17 -0
  34. package/dist/overrides/types.js.map +1 -0
  35. package/dist/overrides/types.mjs +1 -0
  36. package/dist/overrides/types.mjs.map +1 -0
  37. package/dist/overrides/withDefaults.d.ts +4 -0
  38. package/dist/overrides/withDefaults.d.ts.map +1 -0
  39. package/dist/overrides/withDefaults.js +49 -0
  40. package/dist/overrides/withDefaults.js.map +1 -0
  41. package/dist/overrides/withDefaults.mjs +15 -0
  42. package/dist/overrides/withDefaults.mjs.map +1 -0
  43. package/dist/primitives/MarkdownText.d.ts +22 -0
  44. package/dist/primitives/MarkdownText.d.ts.map +1 -0
  45. package/dist/primitives/MarkdownText.js +96 -0
  46. package/dist/primitives/MarkdownText.js.map +1 -0
  47. package/dist/primitives/MarkdownText.mjs +69 -0
  48. package/dist/primitives/MarkdownText.mjs.map +1 -0
  49. package/dist/styles/markdown.css +1 -0
  50. package/dist/styles/markdown.css.map +1 -0
  51. package/dist/tailwindcss/index.d.ts +4 -6
  52. package/dist/tailwindcss/index.d.ts.map +1 -0
  53. package/dist/tailwindcss/index.js +3 -76
  54. package/dist/tailwindcss/index.js.map +1 -1
  55. package/dist/tailwindcss/index.mjs +3 -75
  56. package/dist/tailwindcss/index.mjs.map +1 -1
  57. package/dist/ui/code-header.d.ts +4 -0
  58. package/dist/ui/code-header.d.ts.map +1 -0
  59. package/dist/ui/code-header.js +52 -0
  60. package/dist/ui/code-header.js.map +1 -0
  61. package/dist/ui/code-header.mjs +28 -0
  62. package/dist/ui/code-header.mjs.map +1 -0
  63. package/dist/ui/markdown-text.d.ts +4 -0
  64. package/dist/ui/markdown-text.d.ts.map +1 -0
  65. package/dist/ui/markdown-text.js +112 -0
  66. package/dist/ui/markdown-text.js.map +1 -0
  67. package/dist/ui/markdown-text.mjs +80 -0
  68. package/dist/ui/markdown-text.mjs.map +1 -0
  69. package/dist/ui/useCopyToClipboard.d.ts +7 -0
  70. package/dist/ui/useCopyToClipboard.d.ts.map +1 -0
  71. package/dist/ui/useCopyToClipboard.js +42 -0
  72. package/dist/ui/useCopyToClipboard.js.map +1 -0
  73. package/dist/ui/useCopyToClipboard.mjs +18 -0
  74. package/dist/ui/useCopyToClipboard.mjs.map +1 -0
  75. package/package.json +15 -21
  76. package/src/index.ts +18 -0
  77. package/src/overrides/CodeBlock.tsx +41 -0
  78. package/src/overrides/CodeOverride.tsx +91 -0
  79. package/src/overrides/PreOverride.tsx +15 -0
  80. package/src/overrides/defaultComponents.tsx +21 -0
  81. package/src/overrides/types.ts +22 -0
  82. package/src/overrides/withDefaults.tsx +14 -0
  83. package/src/primitives/MarkdownText.tsx +110 -0
  84. package/src/styles/tailwindcss/markdown.css +106 -0
  85. package/src/tailwindcss/index.ts +8 -0
  86. package/src/ui/code-header.tsx +32 -0
  87. package/src/ui/markdown-text.tsx +114 -0
  88. package/src/ui/useCopyToClipboard.tsx +21 -0
  89. package/tailwindcss/README.md +1 -0
  90. package/tailwindcss/package.json +5 -0
  91. package/dist/index.d.mts +0 -45
  92. package/dist/tailwindcss/index.d.mts +0 -11
package/dist/index.d.ts CHANGED
@@ -1,45 +1,6 @@
1
- import * as react from 'react';
2
- import { ElementType, ComponentType, ForwardRefExoticComponent, RefAttributes, ElementRef, ComponentPropsWithoutRef, FC } from 'react';
3
- import { Options } from 'react-markdown';
4
- import { Primitive } from '@radix-ui/react-primitive';
5
-
6
- type PreComponent = NonNullable<NonNullable<Options["components"]>["pre"]>;
7
- type CodeComponent = NonNullable<NonNullable<Options["components"]>["code"]>;
8
- type CodeHeaderProps = {
9
- language: string | undefined;
10
- code: string;
11
- };
12
- type SyntaxHighlighterProps = {
13
- components: {
14
- Pre: PreComponent;
15
- Code: CodeComponent;
16
- };
17
- language: string;
18
- code: string;
19
- };
20
-
21
- type MarkdownTextPrimitiveElement = ElementRef<typeof Primitive.div>;
22
- type PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;
23
- type MarkdownTextPrimitiveProps = Omit<Options, "components" | "children"> & {
24
- containerProps?: Omit<PrimitiveDivProps, "children" | "asChild">;
25
- containerComponent?: ElementType;
26
- components?: NonNullable<Options["components"]> & {
27
- SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps>;
28
- CodeHeader?: ComponentType<CodeHeaderProps>;
29
- by_language?: Record<string, {
30
- CodeHeader?: ComponentType<CodeHeaderProps>;
31
- SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps>;
32
- }>;
33
- };
34
- smooth?: boolean;
35
- };
36
- declare const MarkdownTextPrimitive: ForwardRefExoticComponent<MarkdownTextPrimitiveProps> & RefAttributes<MarkdownTextPrimitiveElement>;
37
-
38
- declare const useIsMarkdownCodeBlock: () => boolean;
39
-
40
- type MakeMarkdownTextProps = MarkdownTextPrimitiveProps;
41
- declare const makeMarkdownText: ({ className, components: userComponents, ...rest }?: MakeMarkdownTextProps) => react.NamedExoticComponent<{}>;
42
-
43
- declare const CodeHeader: FC<CodeHeaderProps>;
44
-
45
- export { CodeHeader, type CodeHeaderProps, type MakeMarkdownTextProps, MarkdownTextPrimitive, type MarkdownTextPrimitiveProps, type SyntaxHighlighterProps, makeMarkdownText, useIsMarkdownCodeBlock };
1
+ export { MarkdownTextPrimitive, type MarkdownTextPrimitiveProps, } from "./primitives/MarkdownText";
2
+ export type { CodeHeaderProps, SyntaxHighlighterProps, } from "./overrides/types";
3
+ export { useIsMarkdownCodeBlock } from "./overrides/PreOverride";
4
+ export { makeMarkdownText, type MakeMarkdownTextProps, } from "./ui/markdown-text";
5
+ export { CodeHeader } from "./ui/code-header";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +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"}
package/dist/index.js CHANGED
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,316 +15,19 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
-
30
- // src/index.ts
31
19
  var src_exports = {};
32
20
  __export(src_exports, {
33
- CodeHeader: () => CodeHeader,
34
- MarkdownTextPrimitive: () => MarkdownTextPrimitive,
35
- makeMarkdownText: () => makeMarkdownText,
36
- useIsMarkdownCodeBlock: () => useIsMarkdownCodeBlock
21
+ CodeHeader: () => import_code_header.CodeHeader,
22
+ MarkdownTextPrimitive: () => import_MarkdownText.MarkdownTextPrimitive,
23
+ makeMarkdownText: () => import_markdown_text.makeMarkdownText,
24
+ useIsMarkdownCodeBlock: () => import_PreOverride.useIsMarkdownCodeBlock
37
25
  });
38
26
  module.exports = __toCommonJS(src_exports);
39
-
40
- // src/primitives/MarkdownText.tsx
41
- var import_react4 = require("@assistant-ui/react");
42
- var import_react5 = require("react");
43
- var import_react_markdown = __toESM(require("react-markdown"));
44
-
45
- // src/overrides/PreOverride.tsx
46
- var import_react = require("react");
47
- var import_jsx_runtime = require("react/jsx-runtime");
48
- var PreContext = (0, import_react.createContext)(null);
49
- var useIsMarkdownCodeBlock = () => {
50
- return (0, import_react.useContext)(PreContext) !== null;
51
- };
52
- var PreOverride = ({ children, ...rest }) => {
53
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PreContext.Provider, { value: rest, children });
54
- };
55
-
56
- // src/overrides/defaultComponents.tsx
57
- var import_jsx_runtime2 = require("react/jsx-runtime");
58
- var DefaultPre = ({ node, ...rest }) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("pre", { ...rest });
59
- var DefaultCode = ({ node, ...rest }) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("code", { ...rest });
60
- var DefaultCodeBlockContent = ({ components: { Pre, Code }, code }) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Pre, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Code, { children: code }) });
61
- var DefaultCodeHeader = () => null;
62
-
63
- // src/primitives/MarkdownText.tsx
64
- var import_react_use_callback_ref2 = require("@radix-ui/react-use-callback-ref");
65
-
66
- // src/overrides/CodeOverride.tsx
67
- var import_react3 = require("react");
68
-
69
- // src/overrides/CodeBlock.tsx
70
- var import_react2 = require("react");
71
- var import_jsx_runtime3 = require("react/jsx-runtime");
72
- var DefaultCodeBlock = ({
73
- components: { Pre, Code, SyntaxHighlighter, CodeHeader: CodeHeader2 },
74
- language,
75
- code
76
- }) => {
77
- const components = (0, import_react2.useMemo)(() => ({ Pre, Code }), [Pre, Code]);
78
- const SH = !!language ? SyntaxHighlighter : DefaultCodeBlockContent;
79
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
80
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(CodeHeader2, { language, code }),
81
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
82
- SH,
83
- {
84
- components,
85
- language: language ?? "unknown",
86
- code
87
- }
88
- )
89
- ] });
90
- };
91
-
92
- // src/overrides/CodeOverride.tsx
93
- var import_react_use_callback_ref = require("@radix-ui/react-use-callback-ref");
94
-
95
- // src/overrides/withDefaults.tsx
96
- var import_classnames = __toESM(require("classnames"));
97
- var withDefaultProps = ({
98
- className,
99
- ...defaultProps
100
- }) => ({ className: classNameProp, ...props }) => {
101
- return {
102
- className: (0, import_classnames.default)(className, classNameProp),
103
- ...defaultProps,
104
- ...props
105
- };
106
- };
107
-
108
- // src/overrides/CodeOverride.tsx
109
- var import_jsx_runtime4 = require("react/jsx-runtime");
110
- var CodeBlockOverride = ({
111
- components: {
112
- Pre,
113
- Code,
114
- SyntaxHighlighter: FallbackSyntaxHighlighter,
115
- CodeHeader: FallbackCodeHeader,
116
- by_language = {}
117
- },
118
- children,
119
- ...codeProps
120
- }) => {
121
- const preProps = (0, import_react3.useContext)(PreContext);
122
- const getPreProps = withDefaultProps(preProps);
123
- const WrappedPre = (0, import_react_use_callback_ref.useCallbackRef)((props) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Pre, { ...getPreProps(props) }));
124
- const getCodeProps = withDefaultProps(codeProps);
125
- const WrappedCode = (0, import_react_use_callback_ref.useCallbackRef)((props) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Code, { ...getCodeProps(props) }));
126
- const language = /language-(\w+)/.exec(codeProps.className || "")?.[1] ?? "";
127
- if (typeof children !== "string") {
128
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
129
- DefaultCodeBlockContent,
130
- {
131
- components: { Pre: WrappedPre, Code: WrappedCode },
132
- code: children
133
- }
134
- );
135
- }
136
- const SyntaxHighlighter = by_language[language]?.SyntaxHighlighter ?? FallbackSyntaxHighlighter;
137
- const CodeHeader2 = by_language[language]?.CodeHeader ?? FallbackCodeHeader;
138
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
139
- DefaultCodeBlock,
140
- {
141
- components: {
142
- Pre: WrappedPre,
143
- Code: WrappedCode,
144
- SyntaxHighlighter,
145
- CodeHeader: CodeHeader2
146
- },
147
- language: language || "unknown",
148
- code: children
149
- }
150
- );
151
- };
152
- var CodeOverride = ({
153
- components,
154
- ...props
155
- }) => {
156
- const preProps = (0, import_react3.useContext)(PreContext);
157
- if (!preProps) return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(components.Code, { ...props });
158
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(CodeBlockOverride, { components, ...props });
159
- };
160
-
161
- // src/primitives/MarkdownText.tsx
162
- var import_classnames2 = __toESM(require("classnames"));
163
- var import_jsx_runtime5 = require("react/jsx-runtime");
164
- var { useSmooth } = import_react4.INTERNAL;
165
- var MarkdownTextPrimitive = (0, import_react5.forwardRef)(
166
- ({
167
- components: userComponents,
168
- className,
169
- containerProps,
170
- containerComponent: Container = "div",
171
- ...rest
172
- }, forwardedRef, smooth = true) => {
173
- const { text, status } = useSmooth((0, import_react4.useContentPartText)(), smooth);
174
- const {
175
- pre = DefaultPre,
176
- code = DefaultCode,
177
- SyntaxHighlighter = DefaultCodeBlockContent,
178
- CodeHeader: CodeHeader2 = DefaultCodeHeader,
179
- by_language,
180
- ...componentsRest
181
- } = userComponents ?? {};
182
- const components = {
183
- ...componentsRest,
184
- pre: PreOverride,
185
- code: (0, import_react_use_callback_ref2.useCallbackRef)((props) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
186
- CodeOverride,
187
- {
188
- components: {
189
- Pre: pre,
190
- Code: code,
191
- SyntaxHighlighter,
192
- CodeHeader: CodeHeader2,
193
- by_language
194
- },
195
- ...props
196
- }
197
- ))
198
- };
199
- return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
200
- Container,
201
- {
202
- "data-status": status.type,
203
- ...containerProps,
204
- className: (0, import_classnames2.default)(className, containerProps?.className),
205
- ref: forwardedRef,
206
- children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react_markdown.default, { components, ...rest, children: text })
207
- }
208
- );
209
- }
210
- );
211
- MarkdownTextPrimitive.displayName = "MarkdownTextPrimitive";
212
-
213
- // src/ui/markdown-text.tsx
214
- var import_react8 = require("react");
215
-
216
- // src/ui/code-header.tsx
217
- var import_lucide_react = require("lucide-react");
218
- var import_react7 = require("@assistant-ui/react");
219
-
220
- // src/ui/useCopyToClipboard.tsx
221
- var import_react6 = require("react");
222
- var useCopyToClipboard = ({
223
- copiedDuration = 3e3
224
- } = {}) => {
225
- const [isCopied, setIsCopied] = (0, import_react6.useState)(false);
226
- const copyToClipboard = (value) => {
227
- if (!value) return;
228
- navigator.clipboard.writeText(value).then(() => {
229
- setIsCopied(true);
230
- setTimeout(() => setIsCopied(false), copiedDuration);
231
- });
232
- };
233
- return { isCopied, copyToClipboard };
234
- };
235
-
236
- // src/ui/code-header.tsx
237
- var import_jsx_runtime6 = require("react/jsx-runtime");
238
- var { TooltipIconButton } = import_react7.INTERNAL;
239
- var CodeHeader = ({ language, code }) => {
240
- const {
241
- strings: {
242
- code: { header: { copy: { tooltip = "Copy" } = {} } = {} } = {}
243
- } = {}
244
- } = (0, import_react7.useThreadConfig)();
245
- const { isCopied, copyToClipboard } = useCopyToClipboard();
246
- const onCopy = () => {
247
- if (!code || isCopied) return;
248
- copyToClipboard(code);
249
- };
250
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "aui-code-header-root", children: [
251
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: "aui-code-header-language", children: language }),
252
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(TooltipIconButton, { tooltip, onClick: onCopy, children: [
253
- !isCopied && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.CopyIcon, {}),
254
- isCopied && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.CheckIcon, {})
255
- ] })
256
- ] });
257
- };
258
-
259
- // src/ui/markdown-text.tsx
260
- var import_classnames3 = __toESM(require("classnames"));
261
- var import_react9 = require("@assistant-ui/react");
262
- var import_jsx_runtime7 = require("react/jsx-runtime");
263
- var { withSmoothContextProvider, useSmoothStatus } = import_react9.INTERNAL;
264
- var defaultComponents = {
265
- h1: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("h1", { className: (0, import_classnames3.default)("aui-md-h1", className), ...props }),
266
- h2: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("h2", { className: (0, import_classnames3.default)("aui-md-h2", className), ...props }),
267
- h3: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("h3", { className: (0, import_classnames3.default)("aui-md-h3", className), ...props }),
268
- h4: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("h4", { className: (0, import_classnames3.default)("aui-md-h4", className), ...props }),
269
- h5: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("h5", { className: (0, import_classnames3.default)("aui-md-h5", className), ...props }),
270
- h6: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("h6", { className: (0, import_classnames3.default)("aui-md-h6", className), ...props }),
271
- p: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: (0, import_classnames3.default)("aui-md-p", className), ...props }),
272
- a: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("a", { className: (0, import_classnames3.default)("aui-md-a", className), ...props }),
273
- blockquote: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
274
- "blockquote",
275
- {
276
- className: (0, import_classnames3.default)("aui-md-blockquote", className),
277
- ...props
278
- }
279
- ),
280
- ul: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("ul", { className: (0, import_classnames3.default)("aui-md-ul", className), ...props }),
281
- ol: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("ol", { className: (0, import_classnames3.default)("aui-md-ol", className), ...props }),
282
- hr: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("hr", { className: (0, import_classnames3.default)("aui-md-hr", className), ...props }),
283
- table: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("table", { className: (0, import_classnames3.default)("aui-md-table", className), ...props }),
284
- th: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("th", { className: (0, import_classnames3.default)("aui-md-th", className), ...props }),
285
- td: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("td", { className: (0, import_classnames3.default)("aui-md-td", className), ...props }),
286
- tr: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("tr", { className: (0, import_classnames3.default)("aui-md-tr", className), ...props }),
287
- sup: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("sup", { className: (0, import_classnames3.default)("aui-md-sup", className), ...props }),
288
- pre: ({ node, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("pre", { className: (0, import_classnames3.default)("aui-md-pre", className), ...props }),
289
- code: ({ node, className, ...props }) => {
290
- const isCodeBlock = useIsMarkdownCodeBlock();
291
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
292
- "code",
293
- {
294
- className: (0, import_classnames3.default)(!isCodeBlock && "aui-md-inline-code", className),
295
- ...props
296
- }
297
- );
298
- },
299
- CodeHeader
300
- };
301
- var makeMarkdownText = ({
302
- className,
303
- components: userComponents,
304
- ...rest
305
- } = {}) => {
306
- const components = {
307
- ...defaultComponents,
308
- ...Object.fromEntries(
309
- // ignore undefined values, so undefined values do not override default components
310
- Object.entries(userComponents ?? {}).filter(([_, v]) => v !== void 0)
311
- )
312
- };
313
- const MarkdownTextImpl = () => {
314
- const status = useSmoothStatus();
315
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
316
- MarkdownTextPrimitive,
317
- {
318
- components,
319
- ...rest,
320
- className: (0, import_classnames3.default)(
321
- status.type === "running" && "aui-md-running",
322
- className
323
- )
324
- }
325
- );
326
- };
327
- MarkdownTextImpl.displayName = "MarkdownText";
328
- return (0, import_react8.memo)(withSmoothContextProvider(MarkdownTextImpl), () => true);
329
- };
27
+ var import_MarkdownText = require("./primitives/MarkdownText");
28
+ var import_PreOverride = require("./overrides/PreOverride");
29
+ var import_markdown_text = require("./ui/markdown-text");
30
+ var import_code_header = require("./ui/code-header");
330
31
  // Annotate the CommonJS export names for ESM import in node:
331
32
  0 && (module.exports = {
332
33
  CodeHeader,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/primitives/MarkdownText.tsx","../src/overrides/PreOverride.tsx","../src/overrides/defaultComponents.tsx","../src/overrides/CodeOverride.tsx","../src/overrides/CodeBlock.tsx","../src/overrides/withDefaults.tsx","../src/ui/markdown-text.tsx","../src/ui/code-header.tsx","../src/ui/useCopyToClipboard.tsx"],"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","\"use client\";\n\nimport { INTERNAL, useContentPartText } from \"@assistant-ui/react\";\nimport {\n ElementRef,\n ElementType,\n forwardRef,\n ForwardRefExoticComponent,\n RefAttributes,\n type ComponentPropsWithoutRef,\n type ComponentType,\n} from \"react\";\nimport ReactMarkdown, { type Options } from \"react-markdown\";\nimport { SyntaxHighlighterProps, CodeHeaderProps } from \"../overrides/types\";\nimport { PreOverride } from \"../overrides/PreOverride\";\nimport {\n DefaultPre,\n DefaultCode,\n DefaultCodeBlockContent,\n DefaultCodeHeader,\n} from \"../overrides/defaultComponents\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { CodeOverride } from \"../overrides/CodeOverride\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport classNames from \"classnames\";\n\nconst { useSmooth } = INTERNAL;\n\ntype MarkdownTextPrimitiveElement = ElementRef<typeof Primitive.div>;\ntype PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;\n\nexport type MarkdownTextPrimitiveProps = Omit<\n Options,\n \"components\" | \"children\"\n> & {\n containerProps?: Omit<PrimitiveDivProps, \"children\" | \"asChild\">;\n containerComponent?: ElementType;\n components?: NonNullable<Options[\"components\"]> & {\n SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps>;\n CodeHeader?: ComponentType<CodeHeaderProps>;\n by_language?: Record<\n string,\n {\n CodeHeader?: ComponentType<CodeHeaderProps>;\n SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps>;\n }\n >;\n };\n smooth?: boolean;\n};\n\nexport const MarkdownTextPrimitive: ForwardRefExoticComponent<MarkdownTextPrimitiveProps> &\n RefAttributes<MarkdownTextPrimitiveElement> = forwardRef<\n MarkdownTextPrimitiveElement,\n MarkdownTextPrimitiveProps\n>(\n (\n {\n components: userComponents,\n className,\n containerProps,\n containerComponent: Container = \"div\",\n ...rest\n },\n forwardedRef,\n smooth = true,\n ) => {\n const { text, status } = useSmooth(useContentPartText(), smooth);\n\n const {\n pre = DefaultPre,\n code = DefaultCode,\n SyntaxHighlighter = DefaultCodeBlockContent,\n CodeHeader = DefaultCodeHeader,\n by_language,\n ...componentsRest\n } = userComponents ?? {};\n const components: typeof userComponents = {\n ...componentsRest,\n pre: PreOverride,\n code: useCallbackRef((props) => (\n <CodeOverride\n components={{\n Pre: pre,\n Code: code,\n SyntaxHighlighter,\n CodeHeader,\n by_language,\n }}\n {...props}\n />\n )),\n };\n\n return (\n <Container\n data-status={status.type}\n {...containerProps}\n className={classNames(className, containerProps?.className)}\n ref={forwardedRef}\n >\n <ReactMarkdown components={components} {...rest}>\n {text}\n </ReactMarkdown>\n </Container>\n );\n },\n);\n\nMarkdownTextPrimitive.displayName = \"MarkdownTextPrimitive\";\n","import { createContext, ComponentPropsWithoutRef, useContext } from \"react\";\nimport { PreComponent } from \"./types\";\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\nexport const PreOverride: PreComponent = ({ children, ...rest }) => {\n return <PreContext.Provider value={rest}>{children}</PreContext.Provider>;\n};\n","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","import { ComponentPropsWithoutRef, ComponentType, FC, useContext } from \"react\";\nimport { PreContext } 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\";\n\nconst CodeBlockOverride: FC<CodeOverrideProps> = ({\n components: {\n Pre,\n Code,\n SyntaxHighlighter: FallbackSyntaxHighlighter,\n CodeHeader: FallbackCodeHeader,\n by_language = {},\n },\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 by_language[language]?.SyntaxHighlighter ?? FallbackSyntaxHighlighter;\n\n const CodeHeader: ComponentType<CodeHeaderProps> =\n by_language[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 by_language?: Record<\n string,\n {\n CodeHeader?: ComponentType<CodeHeaderProps>;\n SyntaxHighlighter?: ComponentType<SyntaxHighlighterProps>;\n }\n >;\n };\n};\n\nexport const CodeOverride: FC<CodeOverrideProps> = ({\n components,\n ...props\n}) => {\n const preProps = useContext(PreContext);\n if (!preProps) return <components.Code {...(props as any)} />;\n return <CodeBlockOverride components={components} {...props} />;\n};\n","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","import classNames from \"classnames\";\n\nexport const withDefaultProps =\n <TProps extends { className?: string | undefined }>({\n className,\n ...defaultProps\n }: Partial<TProps>) =>\n ({ className: classNameProp, ...props }: TProps) => {\n return {\n className: classNames(className, classNameProp),\n ...defaultProps,\n ...props,\n } as TProps;\n };\n","import { FC, memo } from \"react\";\nimport { CodeHeader } from \"./code-header\";\nimport classNames from \"classnames\";\nimport {\n MarkdownTextPrimitive,\n MarkdownTextPrimitiveProps,\n} from \"../primitives/MarkdownText\";\nimport { INTERNAL } from \"@assistant-ui/react\";\nimport { useIsMarkdownCodeBlock } from \"../overrides/PreOverride\";\n\nconst { withSmoothContextProvider, useSmoothStatus } = INTERNAL;\n\nexport type MakeMarkdownTextProps = MarkdownTextPrimitiveProps;\n\nconst defaultComponents: MakeMarkdownTextProps[\"components\"] = {\n h1: ({ node, className, ...props }) => (\n <h1 className={classNames(\"aui-md-h1\", className)} {...props} />\n ),\n h2: ({ node, className, ...props }) => (\n <h2 className={classNames(\"aui-md-h2\", className)} {...props} />\n ),\n h3: ({ node, className, ...props }) => (\n <h3 className={classNames(\"aui-md-h3\", className)} {...props} />\n ),\n h4: ({ node, className, ...props }) => (\n <h4 className={classNames(\"aui-md-h4\", className)} {...props} />\n ),\n h5: ({ node, className, ...props }) => (\n <h5 className={classNames(\"aui-md-h5\", className)} {...props} />\n ),\n h6: ({ node, className, ...props }) => (\n <h6 className={classNames(\"aui-md-h6\", className)} {...props} />\n ),\n p: ({ node, className, ...props }) => (\n <p className={classNames(\"aui-md-p\", className)} {...props} />\n ),\n a: ({ node, className, ...props }) => (\n <a className={classNames(\"aui-md-a\", className)} {...props} />\n ),\n blockquote: ({ node, className, ...props }) => (\n <blockquote\n className={classNames(\"aui-md-blockquote\", className)}\n {...props}\n />\n ),\n ul: ({ node, className, ...props }) => (\n <ul className={classNames(\"aui-md-ul\", className)} {...props} />\n ),\n ol: ({ node, className, ...props }) => (\n <ol className={classNames(\"aui-md-ol\", className)} {...props} />\n ),\n hr: ({ node, className, ...props }) => (\n <hr className={classNames(\"aui-md-hr\", className)} {...props} />\n ),\n table: ({ node, className, ...props }) => (\n <table className={classNames(\"aui-md-table\", className)} {...props} />\n ),\n th: ({ node, className, ...props }) => (\n <th className={classNames(\"aui-md-th\", className)} {...props} />\n ),\n td: ({ node, className, ...props }) => (\n <td className={classNames(\"aui-md-td\", className)} {...props} />\n ),\n tr: ({ node, className, ...props }) => (\n <tr className={classNames(\"aui-md-tr\", className)} {...props} />\n ),\n sup: ({ node, className, ...props }) => (\n <sup className={classNames(\"aui-md-sup\", className)} {...props} />\n ),\n pre: ({ node, className, ...props }) => (\n <pre className={classNames(\"aui-md-pre\", className)} {...props} />\n ),\n code: ({ node, className, ...props }) => {\n const isCodeBlock = useIsMarkdownCodeBlock();\n return (\n <code\n className={classNames(!isCodeBlock && \"aui-md-inline-code\", className)}\n {...props}\n />\n );\n },\n CodeHeader,\n};\n\nexport const makeMarkdownText = ({\n className,\n components: userComponents,\n ...rest\n}: MakeMarkdownTextProps = {}) => {\n const components = {\n ...defaultComponents,\n ...Object.fromEntries(\n // ignore undefined values, so undefined values do not override default components\n Object.entries(userComponents ?? {}).filter(([_, v]) => v !== undefined),\n ),\n };\n\n const MarkdownTextImpl: FC = () => {\n const status = useSmoothStatus();\n return (\n <MarkdownTextPrimitive\n components={components}\n {...rest}\n className={classNames(\n status.type === \"running\" && \"aui-md-running\",\n className,\n )}\n />\n );\n };\n MarkdownTextImpl.displayName = \"MarkdownText\";\n\n return memo(withSmoothContextProvider(MarkdownTextImpl), () => true);\n};\n","import { FC } from \"react\";\nimport { CheckIcon, CopyIcon } from \"lucide-react\";\nimport { INTERNAL, useThreadConfig } from \"@assistant-ui/react\";\n\nimport { CodeHeaderProps } from \"../overrides/types\";\nimport { useCopyToClipboard } from \"./useCopyToClipboard\";\n\nconst { TooltipIconButton } = INTERNAL;\n\nexport const CodeHeader: FC<CodeHeaderProps> = ({ language, code }) => {\n const {\n strings: {\n code: { header: { copy: { tooltip = \"Copy\" } = {} } = {} } = {},\n } = {},\n } = useThreadConfig();\n\n const { isCopied, copyToClipboard } = useCopyToClipboard();\n const onCopy = () => {\n if (!code || isCopied) return;\n copyToClipboard(code);\n };\n\n return (\n <div className=\"aui-code-header-root\">\n <span className=\"aui-code-header-language\">{language}</span>\n <TooltipIconButton tooltip={tooltip} onClick={onCopy}>\n {!isCopied && <CopyIcon />}\n {isCopied && <CheckIcon />}\n </TooltipIconButton>\n </div>\n );\n};\n","import { useState } from \"react\";\nimport { UseActionBarCopyProps } from \"@assistant-ui/react\";\n\nexport type useCopyToClipboardProps = UseActionBarCopyProps;\n\nexport const useCopyToClipboard = ({\n copiedDuration = 3000,\n}: useCopyToClipboardProps = {}) => {\n const [isCopied, setIsCopied] = useState<boolean>(false);\n\n const copyToClipboard = (value: string) => {\n if (!value) return;\n\n navigator.clipboard.writeText(value).then(() => {\n setIsCopied(true);\n setTimeout(() => setIsCopied(false), copiedDuration);\n });\n };\n\n return { isCopied, copyToClipboard };\n};\n"],"mappings":"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","names":["import_react","import_jsx_runtime","import_react_use_callback_ref","import_react","import_react","import_jsx_runtime","CodeHeader","classNames","import_jsx_runtime","CodeHeader","import_classnames","import_jsx_runtime","CodeHeader","classNames","ReactMarkdown","import_react","import_react","import_react","import_jsx_runtime","import_classnames","import_react","import_jsx_runtime","classNames"]}
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":[]}