@automattic/agenttic-ui 0.1.68 → 0.1.70
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/README.md +19 -0
- package/dist/QuestionCard-KolZKB58.js +81 -0
- package/dist/QuestionCard.css +1 -0
- package/dist/components/AgentUIContainer.d.ts.map +1 -1
- package/dist/components/AgentUIContainer.test.d.ts +2 -0
- package/dist/components/AgentUIContainer.test.d.ts.map +1 -0
- package/dist/components/chat/Chat.d.ts.map +1 -1
- package/dist/components/chat/Chat.test.d.ts +2 -0
- package/dist/components/chat/Chat.test.d.ts.map +1 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/question/QuestionCard.d.ts +13 -0
- package/dist/components/question/QuestionCard.d.ts.map +1 -0
- package/dist/components/question/QuestionCard.test.d.ts +2 -0
- package/dist/components/question/QuestionCard.test.d.ts.map +1 -0
- package/dist/components/question/index.d.ts +3 -0
- package/dist/components/question/index.d.ts.map +1 -0
- package/dist/embedded-agent-ui.css +1 -1
- package/dist/embedded-agent-ui.d.ts +3 -1
- package/dist/embedded-agent-ui.d.ts.map +1 -1
- package/dist/embedded-agent-ui.js +114 -112
- package/dist/index.css +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1695 -1634
- package/dist/markdown-extensions/charts/index.d.ts +15 -15
- package/dist/types/index.d.ts +1 -20
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/chatStorage.d.ts +21 -0
- package/dist/utils/chatStorage.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -178,6 +178,25 @@ interface QuestionChoice {
|
|
|
178
178
|
All `presentation` fields are optional. Renderers should fall back to the choice
|
|
179
179
|
label and description when presentation metadata is absent or unsupported.
|
|
180
180
|
|
|
181
|
+
`QuestionCard` uses CSS Modules internally. Consumers that need product-level
|
|
182
|
+
design-system overrides should target the stable data hooks instead of generated
|
|
183
|
+
class names:
|
|
184
|
+
|
|
185
|
+
```css
|
|
186
|
+
[data-agenttic-question-card] [data-slot="choice"] {
|
|
187
|
+
/* Product choice styles. */
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
[data-agenttic-question-card] [data-slot="presentation"] {
|
|
191
|
+
/* Product presentation layout. */
|
|
192
|
+
}
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
Supported slots include `card`, `question`, `choices`, `choice`, `label`,
|
|
196
|
+
`description`, `presentation`, `swatches`, `swatch`, `font-sample`,
|
|
197
|
+
`font-heading`, `font-body`, `image`, `layout-hint`, `freeform`,
|
|
198
|
+
`freeform-label`, `freeform-input`, and `freeform-submit`.
|
|
199
|
+
|
|
181
200
|
### AgentUI Components
|
|
182
201
|
|
|
183
202
|
**AgentUI** - Convenience wrapper with default layout
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { jsxs as m, jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import "react";
|
|
3
|
+
import './QuestionCard.css';function n(...o) {
|
|
4
|
+
return o.flat().filter(Boolean).map((s) => typeof s == "string" ? s : typeof s == "object" && !Array.isArray(s) && s !== null ? Object.entries(s).filter(([t, c]) => c).map(([t]) => t).join(" ") : "").join(" ").trim();
|
|
5
|
+
}
|
|
6
|
+
const Q = "QuestionCard-module_card", _ = "QuestionCard-module_question", q = "QuestionCard-module_choices", j = "QuestionCard-module_choicesGrid", w = "QuestionCard-module_choice", y = "QuestionCard-module_answered", N = "QuestionCard-module_label", g = "QuestionCard-module_description", a = {
|
|
7
|
+
card: Q,
|
|
8
|
+
question: _,
|
|
9
|
+
choices: q,
|
|
10
|
+
choicesGrid: j,
|
|
11
|
+
choice: w,
|
|
12
|
+
answered: y,
|
|
13
|
+
label: N,
|
|
14
|
+
description: g
|
|
15
|
+
};
|
|
16
|
+
function x({
|
|
17
|
+
prompt: o,
|
|
18
|
+
onAnswer: s,
|
|
19
|
+
disabled: t = !1,
|
|
20
|
+
answered: c = !1,
|
|
21
|
+
answeredChoice: b,
|
|
22
|
+
className: h,
|
|
23
|
+
renderChoiceContent: l
|
|
24
|
+
}) {
|
|
25
|
+
const p = t || c, r = o.choices.slice(0, 4);
|
|
26
|
+
return /* @__PURE__ */ m(
|
|
27
|
+
"section",
|
|
28
|
+
{
|
|
29
|
+
className: n(a.card, h),
|
|
30
|
+
"data-agenttic-question-card": !0,
|
|
31
|
+
"data-slot": "card",
|
|
32
|
+
children: [
|
|
33
|
+
/* @__PURE__ */ i("p", { className: a.question, "data-slot": "question", children: o.question }),
|
|
34
|
+
/* @__PURE__ */ i(
|
|
35
|
+
"div",
|
|
36
|
+
{
|
|
37
|
+
className: n(
|
|
38
|
+
a.choices,
|
|
39
|
+
r.length === 4 ? a.choicesGrid : void 0
|
|
40
|
+
),
|
|
41
|
+
"data-slot": "choices",
|
|
42
|
+
children: r.map((e, f) => {
|
|
43
|
+
const d = e.message ?? e.label, u = b === d;
|
|
44
|
+
return /* @__PURE__ */ m(
|
|
45
|
+
"button",
|
|
46
|
+
{
|
|
47
|
+
type: "button",
|
|
48
|
+
"data-slot": "choice",
|
|
49
|
+
className: n(
|
|
50
|
+
a.choice,
|
|
51
|
+
u ? a.answered : void 0
|
|
52
|
+
),
|
|
53
|
+
disabled: p,
|
|
54
|
+
"aria-pressed": u || void 0,
|
|
55
|
+
onClick: () => s(d, e),
|
|
56
|
+
children: [
|
|
57
|
+
/* @__PURE__ */ i("span", { className: a.label, "data-slot": "label", children: e.label }),
|
|
58
|
+
e.description ? /* @__PURE__ */ i(
|
|
59
|
+
"span",
|
|
60
|
+
{
|
|
61
|
+
className: a.description,
|
|
62
|
+
"data-slot": "description",
|
|
63
|
+
children: e.description
|
|
64
|
+
}
|
|
65
|
+
) : null,
|
|
66
|
+
l == null ? void 0 : l(e)
|
|
67
|
+
]
|
|
68
|
+
},
|
|
69
|
+
`${e.label}-${f}`
|
|
70
|
+
);
|
|
71
|
+
})
|
|
72
|
+
}
|
|
73
|
+
)
|
|
74
|
+
]
|
|
75
|
+
}
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
export {
|
|
79
|
+
x as Q,
|
|
80
|
+
n as c
|
|
81
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.QuestionCard-module_card{background:var(--color-background);border:1px solid color-mix(in srgb,var(--color-foreground) 10%,transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-4)}.QuestionCard-module_question{color:var(--color-foreground);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:var(--text-base--line-height);margin:0}.QuestionCard-module_choices{display:grid;gap:var(--spacing-2)}.QuestionCard-module_choicesGrid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 520px){.QuestionCard-module_choicesGrid{grid-template-columns:1fr}}.QuestionCard-module_choice{align-items:stretch;background:var(--color-background);border:1px solid color-mix(in srgb,var(--color-foreground) 10%,transparent);border-radius:var(--radius-md);color:var(--color-foreground);cursor:pointer;display:grid;gap:var(--spacing-2);padding:var(--spacing-3);text-align:left;transition:var(--transition-colors);width:100%}.QuestionCard-module_choice:hover:not(:disabled){border-color:var(--color-ring);box-shadow:var(--shadow-outline)}.QuestionCard-module_choice:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.QuestionCard-module_choice:disabled{cursor:default;opacity:.66}.QuestionCard-module_answered{border-color:var(--color-primary)}.QuestionCard-module_label{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:var(--text-sm--line-height)}.QuestionCard-module_description,.QuestionCard-module_layoutHint{color:var(--color-muted-foreground);font-size:var(--text-sm);line-height:var(--text-sm--line-height)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentUIContainer.d.ts","sourceRoot":"","sources":["../../src/components/AgentUIContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAcxE,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"AgentUIContainer.d.ts","sourceRoot":"","sources":["../../src/components/AgentUIContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAcxE,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,UAAU,CAAC;AAoBzD,UAAU,qBAAsB,SAAQ,YAAY;IACnD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAuBD,wBAAgB,gBAAgB,CAAE,EACjC,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,OAAoB,EACpB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,QAAQ,EACR,OAAO,EACP,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,UAAU,EAAE,oBAAoB,EAChC,aAAa,EAAE,uBAAuB,EACtC,eAAgC,EAAE,sDAAsD;AACxF,MAAa,EACb,cAAoB,EAAE,4BAA4B;AAClD,oBAAoB,EACpB,aAAa,EACb,aAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,QAAgB,EAChB,uBAAuB,EACvB,aAAa,GACb,EAAE,qBAAqB,2CA4xBvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentUIContainer.test.d.ts","sourceRoot":"","sources":["../../src/components/AgentUIContainer.test.tsx"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../src/components/chat/Chat.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../src/components/chat/Chat.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAgB7C,wBAAgB,IAAI,CAAE,EACrB,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,OAAoB,EACpB,WAAW,EACX,YAAY,EACZ,WAAkD,EAClD,MAAM,EACN,MAAM,EACN,QAAQ,EACR,OAAO,EACP,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,SAAS,EACT,aAAoB,EACpB,QAAgB,EAChB,uBAAuB,EACvB,aAAa,GACb,EAAE,SAAS,2CA0kBX"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Chat.test.d.ts","sourceRoot":"","sources":["../../../src/components/chat/Chat.test.tsx"],"names":[],"mappings":""}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export * from './chat';
|
|
2
2
|
export { Button } from './ui/button';
|
|
3
3
|
export { Textarea } from './ui/textarea';
|
|
4
|
+
export { QuestionCard } from './question';
|
|
5
|
+
export type { QuestionCardProps } from './question';
|
|
4
6
|
export { Suggestions } from './chat/Suggestions';
|
|
5
7
|
export { CollapsedView } from './views/CollapsedView';
|
|
6
8
|
export { CompactView } from './views/CompactView';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AACA,cAAc,QAAQ,CAAC;AAGvB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AACA,cAAc,QAAQ,CAAC;AAGvB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { QuestionChoice, QuestionPrompt } from '../../types';
|
|
3
|
+
export interface QuestionCardProps {
|
|
4
|
+
prompt: QuestionPrompt;
|
|
5
|
+
onAnswer: (answer: string, choice: QuestionChoice) => void | Promise<void>;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
answered?: boolean;
|
|
8
|
+
answeredChoice?: string;
|
|
9
|
+
className?: string;
|
|
10
|
+
renderChoiceContent?: (choice: QuestionChoice) => ReactNode;
|
|
11
|
+
}
|
|
12
|
+
export declare function QuestionCard({ prompt, onAnswer, disabled, answered, answeredChoice, className, renderChoiceContent, }: QuestionCardProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=QuestionCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuestionCard.d.ts","sourceRoot":"","sources":["../../../src/components/question/QuestionCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlE,MAAM,WAAW,iBAAiB;IACjC,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,EAAE,CACT,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,KAClB,IAAI,GAAG,OAAO,CAAE,IAAI,CAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,CAAE,MAAM,EAAE,cAAc,KAAM,SAAS,CAAC;CAC9D;AAED,wBAAgB,YAAY,CAAE,EAC7B,MAAM,EACN,QAAQ,EACR,QAAgB,EAChB,QAAgB,EAChB,cAAc,EACd,SAAS,EACT,mBAAmB,GACnB,EAAE,iBAAiB,2CAuDnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuestionCard.test.d.ts","sourceRoot":"","sources":["../../../src/components/question/QuestionCard.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/question/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.agenttic-embedded{display:flex;flex-direction:column;height:100%;min-height:0;background:#fff;color:#111827}.agenttic-embedded__messages{flex:1;min-height:0;overflow-y:auto;padding:16px}.agenttic-embedded__message{display:flex;margin:
|
|
1
|
+
.agenttic-embedded{display:flex;flex-direction:column;height:100%;min-height:0;background:#fff;color:#111827}.agenttic-embedded__messages{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow-y:auto;padding:16px}.agenttic-embedded__message{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0;min-width:0}.agenttic-embedded__bubble{max-width:100%;padding:10px 12px;border-radius:14px;background:#f3f4f6;line-height:1.45;overflow-wrap:anywhere}.agenttic-embedded__bubble>*{margin:0 0 .75em;padding:0}.agenttic-embedded__bubble>:last-child{margin-bottom:0}.agenttic-embedded__bubble ul,.agenttic-embedded__bubble ol{padding-left:1.25em}.agenttic-embedded__bubble li+li{margin-top:4px}.agenttic-embedded__message p{max-width:100%}.agenttic-embedded__message--user{align-items:flex-end}.agenttic-embedded__message pre{max-width:100%;overflow-x:auto;white-space:pre-wrap}.agenttic-embedded__message--user .agenttic-embedded__bubble{background:#111827;color:#fff}.agenttic-embedded__thinking,.agenttic-embedded__error{padding:8px 0;font-size:13px;color:#6b7280}.agenttic-embedded__error{color:#b91c1c}.agenttic-embedded__footer{border-top:1px solid #e5e7eb;padding:12px}.agenttic-embedded__suggestions{display:flex;gap:8px;margin-bottom:8px;flex-wrap:wrap}.agenttic-embedded__suggestions button,.agenttic-embedded__input button{border:1px solid #d1d5db;border-radius:999px;background:#fff;color:#111827;cursor:pointer}.agenttic-embedded__suggestions button{padding:6px 10px;font-size:13px}.agenttic-embedded__input{display:flex;align-items:flex-end;gap:8px}.agenttic-embedded__input textarea{flex:1;min-height:40px;max-height:160px;resize:vertical;border:1px solid #d1d5db;border-radius:16px;padding:10px 12px;font:inherit}.agenttic-embedded__input button{width:36px;height:36px;font-size:18px}.agenttic-embedded__input button:disabled{cursor:not-allowed;opacity:.5}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { AgentUI, EmbeddedAgentUI, EmbeddedAgentUIContainer, EmbeddedAgentUIConversationView, EmbeddedAgentUIFooter, EmbeddedAgentUIInput, EmbeddedAgentUIMessages, EmbeddedAgentUINotice, EmbeddedAgentUISuggestions, EmptyView, ThinkingMessage, } from './components/EmbeddedAgentUI';
|
|
2
2
|
export { LightweightMarkdownRenderer } from './components/LightweightMarkdownRenderer';
|
|
3
|
-
export
|
|
3
|
+
export { QuestionCard } from './components/question';
|
|
4
|
+
export type { QuestionCardProps } from './components/question';
|
|
5
|
+
export type { AgentUIProps, Message, NoticeConfig, QuestionChoice, QuestionPrompt, Suggestion, } from './types';
|
|
4
6
|
//# sourceMappingURL=embedded-agent-ui.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedded-agent-ui.d.ts","sourceRoot":"","sources":["../src/embedded-agent-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,OAAO,EACP,eAAe,EACf,wBAAwB,EACxB,+BAA+B,EAC/B,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,EAC1B,SAAS,EACT,eAAe,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AACvF,YAAY,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,cAAc,EACd,
|
|
1
|
+
{"version":3,"file":"embedded-agent-ui.d.ts","sourceRoot":"","sources":["../src/embedded-agent-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,OAAO,EACP,eAAe,EACf,wBAAwB,EACxB,+BAA+B,EAC/B,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,EAC1B,SAAS,EACT,eAAe,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,YAAY,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,cAAc,EACd,cAAc,EACd,UAAU,GACV,MAAM,SAAS,CAAC"}
|