@dust-tt/sparkle 0.2.637 → 0.2.638-rc-1

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 (65) hide show
  1. package/dist/cjs/index.js +1 -1
  2. package/dist/esm/components/LoadingBlock.js +1 -1
  3. package/dist/esm/components/LoadingBlock.js.map +1 -1
  4. package/dist/esm/components/markdown/Markdown.d.ts +14 -0
  5. package/dist/esm/components/markdown/Markdown.d.ts.map +1 -1
  6. package/dist/esm/components/markdown/Markdown.js +18 -7
  7. package/dist/esm/components/markdown/Markdown.js.map +1 -1
  8. package/dist/esm/components/streaming/BlockStreamer.d.ts +8 -0
  9. package/dist/esm/components/streaming/BlockStreamer.d.ts.map +1 -0
  10. package/dist/esm/components/streaming/BlockStreamer.js +40 -0
  11. package/dist/esm/components/streaming/BlockStreamer.js.map +1 -0
  12. package/dist/esm/components/streaming/StreamingListItem.d.ts +14 -0
  13. package/dist/esm/components/streaming/StreamingListItem.d.ts.map +1 -0
  14. package/dist/esm/components/streaming/StreamingListItem.js +93 -0
  15. package/dist/esm/components/streaming/StreamingListItem.js.map +1 -0
  16. package/dist/esm/components/streaming/StreamingMarkdown.d.ts +5 -0
  17. package/dist/esm/components/streaming/StreamingMarkdown.d.ts.map +1 -0
  18. package/dist/esm/components/streaming/StreamingMarkdown.js +80 -0
  19. package/dist/esm/components/streaming/StreamingMarkdown.js.map +1 -0
  20. package/dist/esm/components/streaming/StreamingParagraph.d.ts +14 -0
  21. package/dist/esm/components/streaming/StreamingParagraph.d.ts.map +1 -0
  22. package/dist/esm/components/streaming/StreamingParagraph.js +41 -0
  23. package/dist/esm/components/streaming/StreamingParagraph.js.map +1 -0
  24. package/dist/esm/components/streaming/index.d.ts +3 -0
  25. package/dist/esm/components/streaming/index.d.ts.map +1 -0
  26. package/dist/esm/components/streaming/index.js +2 -0
  27. package/dist/esm/components/streaming/index.js.map +1 -0
  28. package/dist/esm/components/streaming/markdownComponents.d.ts +11 -0
  29. package/dist/esm/components/streaming/markdownComponents.d.ts.map +1 -0
  30. package/dist/esm/components/streaming/markdownComponents.js +85 -0
  31. package/dist/esm/components/streaming/markdownComponents.js.map +1 -0
  32. package/dist/esm/components/streaming/types.d.ts +70 -0
  33. package/dist/esm/components/streaming/types.d.ts.map +1 -0
  34. package/dist/esm/components/streaming/types.js +10 -0
  35. package/dist/esm/components/streaming/types.js.map +1 -0
  36. package/dist/esm/components/streaming/utils.d.ts +18 -0
  37. package/dist/esm/components/streaming/utils.d.ts.map +1 -0
  38. package/dist/esm/components/streaming/utils.js +97 -0
  39. package/dist/esm/components/streaming/utils.js.map +1 -0
  40. package/dist/esm/index.d.ts +1 -0
  41. package/dist/esm/index.d.ts.map +1 -1
  42. package/dist/esm/index.js +1 -0
  43. package/dist/esm/index.js.map +1 -1
  44. package/dist/esm/stories/StreamingMarkdown.stories.d.ts +12 -0
  45. package/dist/esm/stories/StreamingMarkdown.stories.d.ts.map +1 -0
  46. package/dist/esm/stories/StreamingMarkdown.stories.js +620 -0
  47. package/dist/esm/stories/StreamingMarkdown.stories.js.map +1 -0
  48. package/dist/esm/styles/global.css +43 -0
  49. package/dist/esm/styles/tailwind.css +43 -0
  50. package/dist/sparkle.css +56 -0
  51. package/package.json +2 -1
  52. package/src/components/LoadingBlock.tsx +1 -1
  53. package/src/components/markdown/Markdown.tsx +35 -12
  54. package/src/components/streaming/BlockStreamer.tsx +61 -0
  55. package/src/components/streaming/StreamingListItem.tsx +176 -0
  56. package/src/components/streaming/StreamingMarkdown.tsx +126 -0
  57. package/src/components/streaming/StreamingParagraph.tsx +104 -0
  58. package/src/components/streaming/index.ts +2 -0
  59. package/src/components/streaming/markdownComponents.tsx +270 -0
  60. package/src/components/streaming/types.ts +72 -0
  61. package/src/components/streaming/utils.ts +126 -0
  62. package/src/index.ts +1 -0
  63. package/src/stories/StreamingMarkdown.stories.tsx +1454 -0
  64. package/src/styles/global.css +43 -0
  65. package/src/styles/tailwind.css +43 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdownComponents.js","sourceRoot":"","sources":["../../../../src/components/streaming/markdownComponents.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import type React from "react";
2
+ import type { Components } from "react-markdown";
3
+ import type { PluggableList } from "react-markdown/lib/react-markdown";
4
+ export interface StreamingMarkdownProps {
5
+ content: string;
6
+ animationName?: string;
7
+ animationDuration?: string;
8
+ animationTimingFunction?: string;
9
+ animationCurve?: "linear" | "accelerate" | "accelerate-fast" | "custom";
10
+ animationSteps?: Array<{
11
+ percent: number;
12
+ opacity: number;
13
+ }>;
14
+ codeStyle?: React.CSSProperties;
15
+ isStreaming?: boolean;
16
+ isLastMessage?: boolean;
17
+ textColor?: string;
18
+ forcedTextSize?: string;
19
+ additionalMarkdownComponents?: Components;
20
+ additionalMarkdownPlugins?: PluggableList;
21
+ }
22
+ export interface DirectiveNode {
23
+ type: string;
24
+ name?: string;
25
+ value?: string;
26
+ children?: Array<{
27
+ value?: string;
28
+ }>;
29
+ }
30
+ export interface MarkdownNode {
31
+ position?: {
32
+ start?: {
33
+ line: number;
34
+ column: number;
35
+ };
36
+ };
37
+ }
38
+ export interface MdastNode {
39
+ type: string;
40
+ value?: string;
41
+ children?: MdastNode[];
42
+ }
43
+ export type ComponentProps = {
44
+ node?: MarkdownNode;
45
+ children?: React.ReactNode;
46
+ [key: string]: unknown;
47
+ };
48
+ export interface BlockStreamerProps {
49
+ text: string;
50
+ animate?: boolean;
51
+ animationName: string;
52
+ animationDuration: string;
53
+ animationTimingFunction: string;
54
+ }
55
+ export interface ProcessChildrenContext {
56
+ isStreaming: boolean;
57
+ animationName: string;
58
+ animationDuration: string;
59
+ animationTimingFunction: string;
60
+ }
61
+ export declare const MARKDOWN_TEXT_SIZES: {
62
+ readonly p: "s-copy-sm @sm:s-text-base @sm:s-leading-7";
63
+ readonly h1: "s-heading-2xl";
64
+ readonly h2: "s-heading-xl";
65
+ readonly h3: "s-heading-lg";
66
+ readonly h4: "s-text-base s-font-semibold";
67
+ readonly h5: "s-text-sm s-font-semibold";
68
+ readonly h6: "s-text-sm s-font-regular s-italic";
69
+ };
70
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/streaming/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAEvE,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,iBAAiB,GAAG,QAAQ,CAAC;IACxE,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4BAA4B,CAAC,EAAE,UAAU,CAAC;IAC1C,yBAAyB,CAAC,EAAE,aAAa,CAAC;CAC3C;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE;QACT,KAAK,CAAC,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;CACxB;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,eAAO,MAAM,mBAAmB;;;;;;;;CAQtB,CAAC"}
@@ -0,0 +1,10 @@
1
+ export var MARKDOWN_TEXT_SIZES = {
2
+ p: "s-copy-sm @sm:s-text-base @sm:s-leading-7",
3
+ h1: "s-heading-2xl",
4
+ h2: "s-heading-xl",
5
+ h3: "s-heading-lg",
6
+ h4: "s-text-base s-font-semibold",
7
+ h5: "s-text-sm s-font-semibold",
8
+ h6: "s-text-sm s-font-regular s-italic",
9
+ };
10
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/streaming/types.ts"],"names":[],"mappings":"AA+DA,MAAM,CAAC,IAAM,mBAAmB,GAAG;IACjC,CAAC,EAAE,2CAA2C;IAC9C,EAAE,EAAE,eAAe;IACnB,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,6BAA6B;IACjC,EAAE,EAAE,2BAA2B;IAC/B,EAAE,EAAE,mCAAmC;CAC/B,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { Root } from "hast";
2
+ import React from "react";
3
+ import type { DirectiveNode, MarkdownNode, MdastNode } from "./types";
4
+ export declare function isDirectiveNode(node: unknown): node is DirectiveNode;
5
+ export declare function isReactElementWithProps(el: unknown): el is React.ReactElement<{
6
+ children?: React.ReactNode;
7
+ }>;
8
+ export declare function getElementProps(el: React.ReactElement): {
9
+ children?: React.ReactNode;
10
+ } & Record<string, unknown>;
11
+ export declare function isListElement(el: unknown): boolean;
12
+ export declare function isTableElement(el: unknown): boolean;
13
+ export declare function isCodeElement(el: unknown): boolean;
14
+ export declare function showUnsupportedDirective(): (tree: Root) => void;
15
+ export declare function keyOf(node: MarkdownNode | undefined, fallback: string): string;
16
+ export declare function flatten(child: React.ReactNode): string;
17
+ export declare function mdToText(n: MdastNode | undefined): string;
18
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/components/streaming/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEtE,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,aAAa,CAOpE;AAED,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,OAAO,GACV,EAAE,IAAI,KAAK,CAAC,YAAY,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAAC,CAE1D;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,KAAK,CAAC,YAAY,GACrB;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE1D;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAQlD;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAenD;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAQlD;AAED,wBAAgB,wBAAwB,WACxB,IAAI,UAUnB;AAED,wBAAgB,KAAK,CACnB,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,GACf,MAAM,CAIR;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAQtD;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,CAkBzD"}
@@ -0,0 +1,97 @@
1
+ import React from "react";
2
+ import { visit } from "unist-util-visit";
3
+ import { CodeBlockWithExtendedSupport } from "../../components/markdown/CodeBlockWithExtendedSupport";
4
+ import { OlBlock, UlBlock } from "../../components/markdown/List";
5
+ import { PreBlock } from "../../components/markdown/PreBlock";
6
+ import { TableBlock, TableBodyBlock, TableDataBlock, TableHeadBlock, TableHeaderBlock, } from "../../components/markdown/TableBlock";
7
+ export function isDirectiveNode(node) {
8
+ return (typeof node === "object" &&
9
+ node !== null &&
10
+ "type" in node &&
11
+ typeof node.type === "string");
12
+ }
13
+ export function isReactElementWithProps(el) {
14
+ return React.isValidElement(el);
15
+ }
16
+ export function getElementProps(el) {
17
+ return el.props;
18
+ }
19
+ export function isListElement(el) {
20
+ return (React.isValidElement(el) &&
21
+ (el.type === "ul" ||
22
+ el.type === "ol" ||
23
+ el.type === UlBlock ||
24
+ el.type === OlBlock));
25
+ }
26
+ export function isTableElement(el) {
27
+ return (React.isValidElement(el) &&
28
+ (el.type === "table" ||
29
+ el.type === TableBlock ||
30
+ el.type === "thead" ||
31
+ el.type === TableHeadBlock ||
32
+ el.type === "tbody" ||
33
+ el.type === TableBodyBlock ||
34
+ el.type === "th" ||
35
+ el.type === TableHeaderBlock ||
36
+ el.type === "td" ||
37
+ el.type === TableDataBlock ||
38
+ el.type === "tr"));
39
+ }
40
+ export function isCodeElement(el) {
41
+ return (React.isValidElement(el) &&
42
+ (el.type === "code" ||
43
+ el.type === CodeBlockWithExtendedSupport ||
44
+ el.type === "pre" ||
45
+ el.type === PreBlock));
46
+ }
47
+ export function showUnsupportedDirective() {
48
+ return function (tree) {
49
+ visit(tree, ["textDirective"], function (node) {
50
+ if (isDirectiveNode(node) && node.type === "textDirective") {
51
+ node.type = "text";
52
+ node.value = ":".concat(node.name).concat(node.children ? node.children.map(function (c) { return c.value; }).join("") : "");
53
+ }
54
+ });
55
+ };
56
+ }
57
+ export function keyOf(node, fallback) {
58
+ var _a;
59
+ return ((_a = node === null || node === void 0 ? void 0 : node.position) === null || _a === void 0 ? void 0 : _a.start)
60
+ ? "".concat(node.position.start.line, ":").concat(node.position.start.column)
61
+ : fallback;
62
+ }
63
+ export function flatten(child) {
64
+ if (typeof child === "string") {
65
+ return child;
66
+ }
67
+ if (Array.isArray(child)) {
68
+ return child.map(function (c) { return flatten(c); }).join("");
69
+ }
70
+ if (isReactElementWithProps(child)) {
71
+ var props = getElementProps(child);
72
+ return flatten(props.children);
73
+ }
74
+ return "";
75
+ }
76
+ export function mdToText(n) {
77
+ if (!n) {
78
+ return "";
79
+ }
80
+ switch (n.type) {
81
+ case "text":
82
+ return n.value || "";
83
+ case "paragraph":
84
+ case "emphasis":
85
+ case "strong":
86
+ case "delete":
87
+ case "link":
88
+ return (n.children || []).map(mdToText).join("");
89
+ case "inlineCode":
90
+ return n.value || "";
91
+ case "break":
92
+ return "\n";
93
+ default:
94
+ return "";
95
+ }
96
+ }
97
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/streaming/utils.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export * from "./components";
2
+ export * from "./components/streaming";
2
3
  export * from "./components/WindowUtility";
3
4
  export { SparkleContext } from "./context";
4
5
  export * from "./hooks";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
package/dist/esm/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./components";
2
+ export * from "./components/streaming";
2
3
  export * from "./components/WindowUtility";
3
4
  export { SparkleContext } from "./context";
4
5
  export * from "./hooks";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
+ import { StreamingMarkdown } from "../index_with_tw_base";
3
+ declare const meta: Meta<typeof StreamingMarkdown>;
4
+ export default meta;
5
+ export declare const AnimationCurveComparison: Story;
6
+ export declare const MathStreamingTest: Story;
7
+ export declare const StaticVsStreaming: Story;
8
+ type Story = StoryObj<typeof StreamingMarkdown>;
9
+ export declare const EnhancedFeaturesDemo: Story;
10
+ export declare const ComprehensiveDemo: Story;
11
+ export declare const StreamingVsProductionComparison: Story;
12
+ //# sourceMappingURL=StreamingMarkdown.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StreamingMarkdown.stories.d.ts","sourceRoot":"","sources":["../../../src/stories/StreamingMarkdown.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAY,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA6HpE,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,iBAAiB,CA2BxC,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,wBAAwB,EAAE,KA4FtC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAuF/B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAkF/B,CAAC;AACF,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAuehD,eAAO,MAAM,oBAAoB,EAAE,KAqIlC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAyF/B,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,KAwT7C,CAAC"}