@dust-tt/sparkle 0.2.534 → 0.2.535

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.
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlockWithExtendedSupport.d.ts","sourceRoot":"","sources":["../../../../src/components/markdown/CodeBlockWithExtendedSupport.tsx"],"names":[],"mappings":"AACA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAkQvE,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,qBAQA;AAED,wBAAgB,4BAA4B,CAAC,EAC3C,QAAQ,EACR,SAAS,EACT,MAAM,GACP,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,qBA0FA"}
1
+ {"version":3,"file":"CodeBlockWithExtendedSupport.d.ts","sourceRoot":"","sources":["../../../../src/components/markdown/CodeBlockWithExtendedSupport.tsx"],"names":[],"mappings":"AACA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAsQvE,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,qBAQA;AAED,wBAAgB,4BAA4B,CAAC,EAC3C,QAAQ,EACR,SAAS,EACT,MAAM,GACP,EAAE;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,qBA+HA"}
@@ -5,6 +5,7 @@ import { amber, blue, gray, green, indigo, purple, red, rose, sky, violet, yello
5
5
  import { Button, ContentBlockWrapper, } from "../../components";
6
6
  import { CodeBlock } from "../../components/markdown/CodeBlock";
7
7
  import { MarkdownContentContext } from "../../components/markdown/MarkdownContentContext";
8
+ import { PrettyJsonViewer, } from "../../components/markdown/PrettyJsonViewer";
8
9
  import { CommandLineIcon, SparklesIcon } from "../../icons/app";
9
10
  import { cn } from "../../lib/utils";
10
11
  // Helper function to ensure we get hex values
@@ -189,6 +190,8 @@ export function CodeBlockWithExtendedSupport(_a) {
189
190
  var validChildrenContent = String(children).trim();
190
191
  var _b = __read(useState(false), 2), showMermaid = _b[0], setShowMermaid = _b[1];
191
192
  var _c = __read(useState(false), 2), isValidMermaid = _c[0], setIsValidMermaid = _c[1];
193
+ var _d = __read(useState(false), 2), showPrettyJson = _d[0], setShowPrettyJson = _d[1];
194
+ var _e = __read(useState(null), 2), parsedJson = _e[0], setParsedJson = _e[1];
192
195
  var isStreaming = useContext(MarkdownContentContext).isStreaming;
193
196
  // Detect language from className
194
197
  var language = className === null || className === void 0 ? void 0 : className.split("-")[1];
@@ -206,49 +209,57 @@ export function CodeBlockWithExtendedSupport(_a) {
206
209
  });
207
210
  }); }
208
211
  : undefined;
212
+ // Check for valid Mermaid and JSON.
209
213
  useEffect(function () {
210
- if (isStreaming || !validChildrenContent || isValidMermaid || showMermaid) {
214
+ if (isStreaming || !validChildrenContent) {
211
215
  return;
212
216
  }
213
- var checkValidMermaid = function () { return __awaiter(_this, void 0, void 0, function () {
214
- var e_1;
215
- return __generator(this, function (_a) {
216
- switch (_a.label) {
217
- case 0:
218
- _a.trys.push([0, 2, , 3]);
219
- return [4 /*yield*/, mermaid.parse(validChildrenContent)];
220
- case 1:
221
- _a.sent();
222
- setIsValidMermaid(true);
223
- setShowMermaid(true);
224
- return [3 /*break*/, 3];
225
- case 2:
226
- e_1 = _a.sent();
227
- setIsValidMermaid(false);
228
- setShowMermaid(false);
229
- return [3 /*break*/, 3];
230
- case 3: return [2 /*return*/];
231
- }
232
- });
233
- }); };
234
- void checkValidMermaid();
235
- }, [
236
- isStreaming,
237
- isValidMermaid,
238
- showMermaid,
239
- setIsValidMermaid,
240
- setShowMermaid,
241
- validChildrenContent,
242
- ]);
217
+ if (language === "mermaid") {
218
+ var checkValidMermaid = function () { return __awaiter(_this, void 0, void 0, function () {
219
+ var e_1;
220
+ return __generator(this, function (_a) {
221
+ switch (_a.label) {
222
+ case 0:
223
+ _a.trys.push([0, 2, , 3]);
224
+ return [4 /*yield*/, mermaid.parse(validChildrenContent)];
225
+ case 1:
226
+ _a.sent();
227
+ setIsValidMermaid(true);
228
+ setShowMermaid(true);
229
+ return [3 /*break*/, 3];
230
+ case 2:
231
+ e_1 = _a.sent();
232
+ setIsValidMermaid(false);
233
+ setShowMermaid(false);
234
+ return [3 /*break*/, 3];
235
+ case 3: return [2 /*return*/];
236
+ }
237
+ });
238
+ }); };
239
+ void checkValidMermaid();
240
+ }
241
+ if (language === "json") {
242
+ try {
243
+ var parsed = JSON.parse(validChildrenContent);
244
+ setParsedJson(parsed);
245
+ setShowPrettyJson(true);
246
+ }
247
+ catch (e) {
248
+ setParsedJson(null);
249
+ setShowPrettyJson(false);
250
+ }
251
+ }
252
+ }, [isStreaming, language, validChildrenContent]);
243
253
  if (inline) {
244
254
  return (React.createElement(CodeBlock, { className: className, inline: inline }, children));
245
255
  }
246
- else if (!inline && isValidMermaid) {
256
+ if (isValidMermaid) {
247
257
  return (React.createElement(ContentBlockWrapper, { content: validChildrenContent, getContentToDownload: getContentToDownload, actions: React.createElement(Button, { size: "xs", variant: "outline", label: showMermaid ? "Markdown" : "Mermaid", icon: showMermaid ? CommandLineIcon : SparklesIcon, onClick: function () { return setShowMermaid(!showMermaid); }, tooltip: showMermaid ? "Switch to Markdown" : "Switch to Mermaid" }) }, showMermaid ? (React.createElement(MermaidGraph, { chart: validChildrenContent })) : (React.createElement(CodeBlock, { className: className, inline: inline }, children))));
248
258
  }
249
- else {
250
- return (React.createElement(ContentBlockWrapper, { content: validChildrenContent, getContentToDownload: getContentToDownload },
251
- React.createElement(CodeBlock, { className: className, inline: inline }, children)));
259
+ if (parsedJson !== null) {
260
+ return (React.createElement(ContentBlockWrapper, { content: validChildrenContent, getContentToDownload: getContentToDownload, actions: React.createElement(Button, { size: "xs", variant: "outline", label: showPrettyJson ? "Raw JSON" : "Pretty JSON", icon: showPrettyJson ? CommandLineIcon : SparklesIcon, onClick: function () { return setShowPrettyJson(!showPrettyJson); }, tooltip: showPrettyJson ? "Switch to Raw JSON" : "Switch to Pretty View" }) }, showPrettyJson ? (React.createElement(PrettyJsonViewer, { data: parsedJson })) : (React.createElement(CodeBlock, { className: className, inline: inline }, children))));
252
261
  }
262
+ return (React.createElement(ContentBlockWrapper, { content: validChildrenContent, getContentToDownload: getContentToDownload },
263
+ React.createElement(CodeBlock, { className: className, inline: inline }, children)));
253
264
  }
254
265
  //# sourceMappingURL=CodeBlockWithExtendedSupport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlockWithExtendedSupport.js","sourceRoot":"","sources":["../../../../src/components/markdown/CodeBlockWithExtendedSupport.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodeBlockWithExtendedSupport.js","sourceRoot":"","sources":["../../../../src/components/markdown/CodeBlockWithExtendedSupport.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ export type JsonValueType = string | number | boolean | null | undefined | JsonValueType[] | {
3
+ [key: string]: JsonValueType;
4
+ };
5
+ interface JsonViewerProps {
6
+ data: JsonValueType;
7
+ className?: string;
8
+ }
9
+ export declare function PrettyJsonViewer({ data, className }: JsonViewerProps): React.JSX.Element;
10
+ export {};
11
+ //# sourceMappingURL=PrettyJsonViewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrettyJsonViewer.d.ts","sourceRoot":"","sources":["../../../../src/components/markdown/PrettyJsonViewer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,GACT,aAAa,EAAE,GACf;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAA;CAAE,CAAC;AAwLrC,UAAU,eAAe;IACvB,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AACD,wBAAgB,gBAAgB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,eAAe,qBAcpE"}
@@ -0,0 +1,92 @@
1
+ import { __read } from "tslib";
2
+ import React from "react";
3
+ import { Chip } from "../../components/Chip";
4
+ import { cn } from "../../lib/utils";
5
+ // Constants for consistent styling
6
+ var VALUE_CLASSES = "s-text-primary-700 dark:s-text-primary-700-night s-pt-1 s-text-sm";
7
+ var EMPTY_CLASSES = "s-text-primary-500 dark:s-text-primary-500-night s-pt-1 s-text-sm s-italic";
8
+ var INDENT_CLASSES = "s-border-structure-200 dark:s-border-structure-200-night s-max-w-full s-border-l s-pl-4 s-ml-4";
9
+ // Helper component for rendering key-value pairs with consistent styling.
10
+ function KeyValuePair(_a) {
11
+ var keyName = _a.keyName, value = _a.value, depth = _a.depth, chipColor = _a.chipColor, _b = _a.isRootLevel, isRootLevel = _b === void 0 ? false : _b;
12
+ var isComplexValue = typeof value === "object" && value !== null;
13
+ if (isComplexValue) {
14
+ return (React.createElement(React.Fragment, null,
15
+ React.createElement(Chip, { size: "xs", color: chipColor, label: formatKey(keyName), className: "s-mb-2" }),
16
+ React.createElement("div", { className: cn("s-max-w-full", isRootLevel && "s-ml-4") },
17
+ React.createElement(JsonValue, { value: value, depth: depth + 1 }))));
18
+ }
19
+ return (React.createElement("div", { className: cn("s-flex s-items-start", isRootLevel ? "s-gap-3" : "s-gap-2") },
20
+ React.createElement(Chip, { size: "xs", color: chipColor, label: formatKey(keyName) }),
21
+ React.createElement(JsonValue, { value: value, depth: depth + 1 })));
22
+ }
23
+ function JsonValue(_a) {
24
+ var value = _a.value, _b = _a.depth, depth = _b === void 0 ? 0 : _b;
25
+ if (value === null || value === undefined) {
26
+ return React.createElement("span", { className: EMPTY_CLASSES }, "empty");
27
+ }
28
+ if (typeof value === "boolean") {
29
+ return React.createElement("span", { className: VALUE_CLASSES }, value ? "Yes" : "No");
30
+ }
31
+ if (typeof value === "number") {
32
+ return React.createElement("span", { className: VALUE_CLASSES }, value);
33
+ }
34
+ if (typeof value === "string") {
35
+ return (React.createElement("span", { className: "".concat(VALUE_CLASSES, " s-whitespace-pre-wrap s-break-normal") }, value));
36
+ }
37
+ if (Array.isArray(value)) {
38
+ if (value.length === 0) {
39
+ return React.createElement("span", { className: EMPTY_CLASSES }, "empty list");
40
+ }
41
+ // Check if it's a simple array of primitives.
42
+ var isSimpleArray = value.every(function (item) { return typeof item !== "object" || item === null; });
43
+ if (isSimpleArray && value.length <= 5) {
44
+ return (React.createElement("span", { className: VALUE_CLASSES }, value.map(function (item, index) { return (React.createElement("span", { key: index },
45
+ React.createElement(JsonValue, { value: item, depth: depth + 1 }),
46
+ index < value.length - 1 && ", ")); })));
47
+ }
48
+ return (React.createElement("div", { className: "s-mt-2" }, value.map(function (item, index) { return (React.createElement("div", { key: index, className: cn(INDENT_CLASSES) },
49
+ React.createElement("div", { className: "s-flex s-flex-col s-gap-2" },
50
+ React.createElement(Chip, { size: "xs", color: "primary", label: "Item ".concat(index + 1) }),
51
+ React.createElement("div", { className: "s-max-w-full" },
52
+ React.createElement(JsonValue, { value: item, depth: depth + 1 }))))); })));
53
+ }
54
+ if (typeof value === "object") {
55
+ var entries = Object.entries(value);
56
+ if (entries.length === 0) {
57
+ return React.createElement("span", { className: EMPTY_CLASSES }, "empty");
58
+ }
59
+ // For nested objects, use a card-like layout with vertical bars.
60
+ if (depth > 0) {
61
+ return (React.createElement("div", { className: "s-space-y-2" }, entries.map(function (_a) {
62
+ var _b = __read(_a, 2), key = _b[0], val = _b[1];
63
+ return (React.createElement("div", { key: key, className: cn(INDENT_CLASSES) },
64
+ React.createElement(KeyValuePair, { keyName: key, value: val, depth: depth, chipColor: "info" })));
65
+ })));
66
+ }
67
+ // Root level objects use a table-like layout.
68
+ return (React.createElement("div", { className: "s-max-w-full s-space-y-3" }, entries.map(function (_a) {
69
+ var _b = __read(_a, 2), key = _b[0], val = _b[1];
70
+ return (React.createElement("div", { key: key, className: cn("s-max-w-full s-border-b s-pb-3 last:s-border-0", "s-border-structure-200 dark:s-border-structure-200-night") },
71
+ React.createElement(KeyValuePair, { keyName: key, value: val, depth: depth, chipColor: "highlight", isRootLevel: true })));
72
+ })));
73
+ }
74
+ return (React.createElement("span", { className: cn("s-text-sm", "s-text-element-700 dark:s-text-element-700-night") }, String(value)));
75
+ }
76
+ function formatKey(key) {
77
+ // Convert snake_case or camelCase to Title Case.
78
+ return key
79
+ .replace(/_/g, " ")
80
+ .replace(/([A-Z])/g, " $1")
81
+ .trim()
82
+ .split(" ")
83
+ .map(function (word) { return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase(); })
84
+ .join(" ");
85
+ }
86
+ export function PrettyJsonViewer(_a) {
87
+ var data = _a.data, className = _a.className;
88
+ return (React.createElement("div", { className: cn("s-bg-structure-50 dark:s-bg-structure-50-night", "s-overflow-hidden s-rounded-lg s-p-6 s-text-base", className) },
89
+ React.createElement("div", { className: "s-max-w-full s-overflow-x-auto" },
90
+ React.createElement(JsonValue, { value: data }))));
91
+ }
92
+ //# sourceMappingURL=PrettyJsonViewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrettyJsonViewer.js","sourceRoot":"","sources":["../../../../src/components/markdown/PrettyJsonViewer.tsx"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export * from "./CodeBlockWithExtendedSupport";
3
3
  export * from "./ContentBlockWrapper";
4
4
  export * from "./Markdown";
5
5
  export * from "./MarkdownContentContext";
6
+ export * from "./PrettyJsonViewer";
6
7
  export * from "./TableBlock";
7
8
  export * from "./utils";
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/markdown/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/markdown/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
@@ -3,6 +3,7 @@ export * from "./CodeBlockWithExtendedSupport";
3
3
  export * from "./ContentBlockWrapper";
4
4
  export * from "./Markdown";
5
5
  export * from "./MarkdownContentContext";
6
+ export * from "./PrettyJsonViewer";
6
7
  export * from "./TableBlock";
7
8
  export * from "./utils";
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/markdown/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/markdown/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
@@ -4,4 +4,5 @@ declare const meta: Meta<typeof Markdown>;
4
4
  export default meta;
5
5
  type Story = StoryObj<typeof meta>;
6
6
  export declare const ExtendedMarkdownStory: Story;
7
+ export declare const JSONMarkdownStory: Story;
7
8
  //# sourceMappingURL=Markdown.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.stories.d.ts","sourceRoot":"","sources":["../../../src/stories/Markdown.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,QAAQ,CAc/B,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAgUnC,eAAO,MAAM,qBAAqB,EAAE,KAInC,CAAC"}
1
+ {"version":3,"file":"Markdown.stories.d.ts","sourceRoot":"","sources":["../../../src/stories/Markdown.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,QAAQ,CAc/B,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAgUnC,eAAO,MAAM,qBAAqB,EAAE,KAInC,CAAC;AA2EF,eAAO,MAAM,iBAAiB,EAAE,KAI/B,CAAC"}
@@ -22,4 +22,10 @@ export var ExtendedMarkdownStory = {
22
22
  content: example,
23
23
  },
24
24
  };
25
+ var mermaidAndJSON = "\n```mermaid pie chart\npie title Distribution\n \"Category A\" : 30\n \"Category B\" : 20\n \"Category C\" : 15\n \"Category D\" : 10\n \"Category E\" : 25\n```\n\n\n```json\n{\n \"message\": \"Invalid JSON should not be pretty printed\",\n \"status\": \"success\",\n}\n```\n\n```json\n{\n \"message\": \"Soupi soupi soupinou ! Youhou !\",\n \"status\": \"success\",\n \"data\": null\n}\n```\n\n```json\n{\n \"query\": \"SELECT COUNT() FROM Account\"\n}\n```\n\n```json\n{\n \"records\": [\n {\n \"attributes\": {\n \"type\": \"Account\",\n \"url\": \"/services/data/v57.0/sobjects/Account/001Qy00000ccRXcIAM\"\n },\n \"Name\": \"Awesome Company\",\n \"Type\": \"Customer - Direct\",\n \"Industry\": \"Apparel\",\n \"BillingCountry\": \"USA\"\n },\n {\n \"attributes\": {\n \"type\": \"Account\",\n \"url\": \"/services/data/v57.0/sobjects/Account/001Qy00000ccRXeIAM\"\n },\n \"Name\": \"Awesomest Company\",\n \"Type\": \"Customer - Channel\",\n \"Industry\": \"Consulting\",\n \"BillingCountry\": \"USA\"\n },\n {\n \"attributes\": {\n \"type\": \"Account\",\n \"url\": \"/services/data/v57.0/sobjects/Account/001Qy00000ccRXbIAM\"\n },\n \"Name\": \"Awesomer Company\",\n \"Type\": \"Customer - Direct\",\n \"Industry\": \"Electronics\",\n \"BillingCountry\": null\n }\n ],\n \"totalSize\": 18,\n \"done\": true\n}\n```\n\n";
26
+ export var JSONMarkdownStory = {
27
+ args: {
28
+ content: mermaidAndJSON,
29
+ },
30
+ };
25
31
  //# sourceMappingURL=Markdown.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.stories.js","sourceRoot":"","sources":["../../../src/stories/Markdown.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,IAAM,IAAI,GAA0B;IAClC,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE,CAAC,UAAC,KAAK,IAAK,OAAA,oBAAC,KAAK,OAAG,EAAT,CAAS,CAAC;IAClC,QAAQ,EAAE;QACR,SAAS,EAAE;YACT,OAAO,EAAE;gBACP,mBAAmB;gBACnB,yBAAyB;gBACzB,kBAAkB;aACnB;YACD,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;SAC3B;KACF;CACF,CAAC;AAEF,eAAe,IAAI,CAAC;AAGpB,IAAM,OAAO,GAAG,ssWA4Tf,CAAC;AAEF,MAAM,CAAC,IAAM,qBAAqB,GAAU;IAC1C,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO;KACjB;CACF,CAAC"}
1
+ {"version":3,"file":"Markdown.stories.js","sourceRoot":"","sources":["../../../src/stories/Markdown.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,IAAM,IAAI,GAA0B;IAClC,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE,CAAC,UAAC,KAAK,IAAK,OAAA,oBAAC,KAAK,OAAG,EAAT,CAAS,CAAC;IAClC,QAAQ,EAAE;QACR,SAAS,EAAE;YACT,OAAO,EAAE;gBACP,mBAAmB;gBACnB,yBAAyB;gBACzB,kBAAkB;aACnB;YACD,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;SAC3B;KACF;CACF,CAAC;AAEF,eAAe,IAAI,CAAC;AAGpB,IAAM,OAAO,GAAG,ssWA4Tf,CAAC;AAEF,MAAM,CAAC,IAAM,qBAAqB,GAAU;IAC1C,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO;KACjB;CACF,CAAC;AAEF,IAAM,cAAc,GAAG,+9CAuEtB,CAAC;AAEF,MAAM,CAAC,IAAM,iBAAiB,GAAU;IACtC,IAAI,EAAE;QACJ,OAAO,EAAE,cAAc;KACxB;CACF,CAAC"}
package/dist/sparkle.css CHANGED
@@ -1770,6 +1770,10 @@ select {
1770
1770
  max-width: 80vh;
1771
1771
  }
1772
1772
 
1773
+ .s-max-w-full {
1774
+ max-width: 100%;
1775
+ }
1776
+
1773
1777
  .s-max-w-md {
1774
1778
  max-width: 28rem;
1775
1779
  }
@@ -2292,6 +2296,11 @@ select {
2292
2296
  white-space: pre-wrap;
2293
2297
  }
2294
2298
 
2299
+ .s-break-normal {
2300
+ overflow-wrap: normal;
2301
+ word-break: normal;
2302
+ }
2303
+
2295
2304
  .s-break-words {
2296
2305
  overflow-wrap: break-word;
2297
2306
  }
@@ -5369,6 +5378,10 @@ select {
5369
5378
  padding-top: 0px;
5370
5379
  }
5371
5380
 
5381
+ .last\:s-border-0:last-child {
5382
+ border-width: 0px;
5383
+ }
5384
+
5372
5385
  .last\:s-border-none:last-child {
5373
5386
  border-style: none;
5374
5387
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dust-tt/sparkle",
3
- "version": "0.2.534",
3
+ "version": "0.2.535",
4
4
  "scripts": {
5
5
  "build": "rm -rf dist && npm run tailwind && npm run build:esm && npm run build:cjs",
6
6
  "tailwind": "tailwindcss -i ./src/styles/tailwind.css -o dist/sparkle.css",
@@ -21,6 +21,10 @@ import {
21
21
  } from "@sparkle/components";
22
22
  import { CodeBlock } from "@sparkle/components/markdown/CodeBlock";
23
23
  import { MarkdownContentContext } from "@sparkle/components/markdown/MarkdownContentContext";
24
+ import {
25
+ JsonValueType,
26
+ PrettyJsonViewer,
27
+ } from "@sparkle/components/markdown/PrettyJsonViewer";
24
28
  import { CommandLineIcon, SparklesIcon } from "@sparkle/icons/app";
25
29
  import { cn } from "@sparkle/lib/utils";
26
30
 
@@ -285,6 +289,8 @@ export function CodeBlockWithExtendedSupport({
285
289
  const validChildrenContent = String(children).trim();
286
290
  const [showMermaid, setShowMermaid] = useState<boolean>(false);
287
291
  const [isValidMermaid, setIsValidMermaid] = useState<boolean>(false);
292
+ const [showPrettyJson, setShowPrettyJson] = useState<boolean>(false);
293
+ const [parsedJson, setParsedJson] = useState<JsonValueType | null>(null);
288
294
  const { isStreaming } = useContext(MarkdownContentContext);
289
295
 
290
296
  // Detect language from className
@@ -302,31 +308,35 @@ export function CodeBlockWithExtendedSupport({
302
308
  })
303
309
  : undefined;
304
310
 
311
+ // Check for valid Mermaid and JSON.
305
312
  useEffect(() => {
306
- if (isStreaming || !validChildrenContent || isValidMermaid || showMermaid) {
313
+ if (isStreaming || !validChildrenContent) {
307
314
  return;
308
315
  }
309
-
310
- const checkValidMermaid = async () => {
316
+ if (language === "mermaid") {
317
+ const checkValidMermaid = async () => {
318
+ try {
319
+ await mermaid.parse(validChildrenContent);
320
+ setIsValidMermaid(true);
321
+ setShowMermaid(true);
322
+ } catch (e) {
323
+ setIsValidMermaid(false);
324
+ setShowMermaid(false);
325
+ }
326
+ };
327
+ void checkValidMermaid();
328
+ }
329
+ if (language === "json") {
311
330
  try {
312
- await mermaid.parse(validChildrenContent);
313
- setIsValidMermaid(true);
314
- setShowMermaid(true);
331
+ const parsed = JSON.parse(validChildrenContent);
332
+ setParsedJson(parsed);
333
+ setShowPrettyJson(true);
315
334
  } catch (e) {
316
- setIsValidMermaid(false);
317
- setShowMermaid(false);
335
+ setParsedJson(null);
336
+ setShowPrettyJson(false);
318
337
  }
319
- };
320
-
321
- void checkValidMermaid();
322
- }, [
323
- isStreaming,
324
- isValidMermaid,
325
- showMermaid,
326
- setIsValidMermaid,
327
- setShowMermaid,
328
- validChildrenContent,
329
- ]);
338
+ }
339
+ }, [isStreaming, language, validChildrenContent]);
330
340
 
331
341
  if (inline) {
332
342
  return (
@@ -334,7 +344,9 @@ export function CodeBlockWithExtendedSupport({
334
344
  {children}
335
345
  </CodeBlock>
336
346
  );
337
- } else if (!inline && isValidMermaid) {
347
+ }
348
+
349
+ if (isValidMermaid) {
338
350
  return (
339
351
  <ContentBlockWrapper
340
352
  content={validChildrenContent}
@@ -359,16 +371,45 @@ export function CodeBlockWithExtendedSupport({
359
371
  )}
360
372
  </ContentBlockWrapper>
361
373
  );
362
- } else {
374
+ }
375
+
376
+ if (parsedJson !== null) {
363
377
  return (
364
378
  <ContentBlockWrapper
365
379
  content={validChildrenContent}
366
380
  getContentToDownload={getContentToDownload}
381
+ actions={
382
+ <Button
383
+ size="xs"
384
+ variant={"outline"}
385
+ label={showPrettyJson ? "Raw JSON" : "Pretty JSON"}
386
+ icon={showPrettyJson ? CommandLineIcon : SparklesIcon}
387
+ onClick={() => setShowPrettyJson(!showPrettyJson)}
388
+ tooltip={
389
+ showPrettyJson ? "Switch to Raw JSON" : "Switch to Pretty View"
390
+ }
391
+ />
392
+ }
367
393
  >
368
- <CodeBlock className={className} inline={inline}>
369
- {children}
370
- </CodeBlock>
394
+ {showPrettyJson ? (
395
+ <PrettyJsonViewer data={parsedJson} />
396
+ ) : (
397
+ <CodeBlock className={className} inline={inline}>
398
+ {children}
399
+ </CodeBlock>
400
+ )}
371
401
  </ContentBlockWrapper>
372
402
  );
373
403
  }
404
+
405
+ return (
406
+ <ContentBlockWrapper
407
+ content={validChildrenContent}
408
+ getContentToDownload={getContentToDownload}
409
+ >
410
+ <CodeBlock className={className} inline={inline}>
411
+ {children}
412
+ </CodeBlock>
413
+ </ContentBlockWrapper>
414
+ );
374
415
  }