@oneplatformdev/ui 0.1.99-beta.214 → 0.1.99-beta.215

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 (35) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/Combobox/Combobox.d.ts +1 -1
  3. package/Combobox/Combobox.d.ts.map +1 -1
  4. package/Combobox/Combobox.js +130 -228
  5. package/Combobox/Combobox.js.map +1 -1
  6. package/Combobox/Combobox.stories.js +113 -80
  7. package/Combobox/Combobox.stories.js.map +1 -1
  8. package/Combobox/Combobox.types.d.ts +35 -13
  9. package/Combobox/Combobox.types.d.ts.map +1 -1
  10. package/Combobox/Combobox.types.js +4 -1
  11. package/Combobox/Combobox.types.js.map +1 -1
  12. package/Combobox/ComboboxOptionItem.d.ts +1 -0
  13. package/Combobox/ComboboxOptionItem.d.ts.map +1 -1
  14. package/Combobox/ComboboxOptionItem.js +67 -38
  15. package/Combobox/ComboboxOptionItem.js.map +1 -1
  16. package/Combobox/ComboboxRenderContent.d.ts +13 -0
  17. package/Combobox/ComboboxRenderContent.d.ts.map +1 -0
  18. package/Combobox/ComboboxRenderContent.js +118 -0
  19. package/Combobox/ComboboxRenderContent.js.map +1 -0
  20. package/Combobox/{ComboboxOptions.d.ts → ComboboxRenderOptions.d.ts} +2 -2
  21. package/Combobox/ComboboxRenderOptions.d.ts.map +1 -0
  22. package/Combobox/ComboboxRenderOptions.js +53 -0
  23. package/Combobox/ComboboxRenderOptions.js.map +1 -0
  24. package/Combobox/ComboboxRenderTrigger.d.ts +13 -0
  25. package/Combobox/ComboboxRenderTrigger.d.ts.map +1 -0
  26. package/Combobox/ComboboxRenderTrigger.js +120 -0
  27. package/Combobox/ComboboxRenderTrigger.js.map +1 -0
  28. package/ScrollArea/ScrollArea.d.ts +5 -1
  29. package/ScrollArea/ScrollArea.d.ts.map +1 -1
  30. package/ScrollArea/ScrollArea.js +23 -17
  31. package/ScrollArea/ScrollArea.js.map +1 -1
  32. package/package.json +4 -4
  33. package/Combobox/ComboboxOptions.d.ts.map +0 -1
  34. package/Combobox/ComboboxOptions.js +0 -75
  35. package/Combobox/ComboboxOptions.js.map +0 -1
@@ -1,33 +1,39 @@
1
- import { jsxs as s, jsx as l } from "react/jsx-runtime";
1
+ import { jsxs as i, jsx as l } from "react/jsx-runtime";
2
2
  import * as o from "@radix-ui/react-scroll-area";
3
- import { cn as t } from "@oneplatformdev/utils";
4
- function u({
5
- className: e,
6
- children: r,
7
- ...a
8
- }) {
9
- return /* @__PURE__ */ s(
3
+ import { cn as s } from "@oneplatformdev/utils";
4
+ function m(e) {
5
+ const {
6
+ className: r,
7
+ children: a,
8
+ slotProps: t,
9
+ ...c
10
+ } = e;
11
+ return /* @__PURE__ */ i(
10
12
  o.Root,
11
13
  {
12
14
  "data-slot": "scroll-area",
13
- className: t("relative", e),
14
- ...a,
15
+ className: s("relative", r),
16
+ ...c,
15
17
  children: [
16
18
  /* @__PURE__ */ l(
17
19
  o.Viewport,
18
20
  {
21
+ ...t?.viewport || {},
19
22
  "data-slot": "scroll-area-viewport",
20
- className: "focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",
21
- children: r
23
+ className: s(
24
+ "focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",
25
+ t?.viewport?.className
26
+ ),
27
+ children: a
22
28
  }
23
29
  ),
24
- /* @__PURE__ */ l(i, {}),
30
+ /* @__PURE__ */ l(n, {}),
25
31
  /* @__PURE__ */ l(o.Corner, {})
26
32
  ]
27
33
  }
28
34
  );
29
35
  }
30
- function i({
36
+ function n({
31
37
  className: e,
32
38
  orientation: r = "vertical",
33
39
  ...a
@@ -37,7 +43,7 @@ function i({
37
43
  {
38
44
  "data-slot": "scroll-area-scrollbar",
39
45
  orientation: r,
40
- className: t(
46
+ className: s(
41
47
  "flex touch-none p-px transition-colors select-none",
42
48
  r === "vertical" && "h-full w-2.5 border-l border-l-transparent",
43
49
  r === "horizontal" && "h-2.5 flex-col border-t border-t-transparent",
@@ -55,8 +61,8 @@ function i({
55
61
  );
56
62
  }
57
63
  export {
58
- u as ScrollArea,
64
+ m as ScrollArea,
59
65
  o as ScrollAreaPrimitive,
60
- i as ScrollBar
66
+ n as ScrollBar
61
67
  };
62
68
  //# sourceMappingURL=ScrollArea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollArea.js","sources":["../../src/ScrollArea/ScrollArea.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as ScrollAreaPrimitive from \"@radix-ui/react-scroll-area\"\n\nimport { cn } from \"@oneplatformdev/utils\"\n\nfunction ScrollArea({\n className,\n children,\n ...props\n }: React.ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n return (\n <ScrollAreaPrimitive.Root\n data-slot=\"scroll-area\"\n className={cn(\"relative\", className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport\n data-slot=\"scroll-area-viewport\"\n className=\"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1\"\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n )\n}\n\nfunction ScrollBar({\n className,\n orientation = \"vertical\",\n ...props\n }: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n return (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n \"flex touch-none p-px transition-colors select-none\",\n orientation === \"vertical\" &&\n \"h-full w-2.5 border-l border-l-transparent\",\n orientation === \"horizontal\" &&\n \"h-2.5 flex-col border-t border-t-transparent\",\n className\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb\n data-slot=\"scroll-area-thumb\"\n className=\"bg-border relative flex-1 rounded-full\"\n />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n )\n}\n\nexport { ScrollArea, ScrollBar, ScrollAreaPrimitive }\n"],"names":["ScrollArea","className","children","props","jsxs","ScrollAreaPrimitive","cn","jsx","ScrollBar","orientation"],"mappings":";;;AAOA,SAASA,EAAW;AAAA,EACE,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,GAAGC;AACL,GAA0D;AAC5E,SACE,gBAAAC;AAAA,IAACC,EAAoB;AAAA,IAApB;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,EAAG,YAAYL,CAAS;AAAA,MAClC,GAAGE;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAI;AAAA,UAACF,EAAoB;AAAA,UAApB;AAAA,YACC,aAAU;AAAA,YACV,WAAU;AAAA,YAET,UAAAH;AAAA,UAAA;AAAA,QAAA;AAAA,0BAEFM,GAAA,EAAU;AAAA,QACX,gBAAAD,EAACF,EAAoB,QAApB,CAAA,CAA2B;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGlC;AAEA,SAASG,EAAU;AAAA,EACE,WAAAP;AAAA,EACA,aAAAQ,IAAc;AAAA,EACd,GAAGN;AACL,GAAyE;AAC1F,SACE,gBAAAI;AAAA,IAACF,EAAoB;AAAA,IAApB;AAAA,MACC,aAAU;AAAA,MACV,aAAAI;AAAA,MACA,WAAWH;AAAA,QACT;AAAA,QACAG,MAAgB,cAChB;AAAA,QACAA,MAAgB,gBAChB;AAAA,QACAR;AAAA,MAAA;AAAA,MAED,GAAGE;AAAA,MAEJ,UAAA,gBAAAI;AAAA,QAACF,EAAoB;AAAA,QAApB;AAAA,UACC,aAAU;AAAA,UACV,WAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"ScrollArea.js","sources":["../../src/ScrollArea/ScrollArea.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as ScrollAreaPrimitive from \"@radix-ui/react-scroll-area\"\n\nimport { cn } from \"@oneplatformdev/utils\"\n\nfunction ScrollArea(\n props: React.ComponentProps<typeof ScrollAreaPrimitive.Root> & {\n slotProps?: {\n viewport?: React.ComponentProps<typeof ScrollAreaPrimitive.Viewport>;\n }\n }\n) {\n const {\n className,\n children,\n slotProps,\n ...rest\n } = props;\n return (\n <ScrollAreaPrimitive.Root\n data-slot=\"scroll-area\"\n className={cn(\"relative\", className)}\n {...rest}\n >\n <ScrollAreaPrimitive.Viewport\n {...slotProps?.viewport || {}}\n data-slot=\"scroll-area-viewport\"\n className={cn(\n \"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1\",\n slotProps?.viewport?.className\n )}\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n )\n}\n\nfunction ScrollBar({\n className,\n orientation = \"vertical\",\n ...props\n }: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n return (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n \"flex touch-none p-px transition-colors select-none\",\n orientation === \"vertical\" &&\n \"h-full w-2.5 border-l border-l-transparent\",\n orientation === \"horizontal\" &&\n \"h-2.5 flex-col border-t border-t-transparent\",\n className\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb\n data-slot=\"scroll-area-thumb\"\n className=\"bg-border relative flex-1 rounded-full\"\n />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n )\n}\n\nexport { ScrollArea, ScrollBar, ScrollAreaPrimitive }\n"],"names":["ScrollArea","props","className","children","slotProps","rest","jsxs","ScrollAreaPrimitive","cn","jsx","ScrollBar","orientation"],"mappings":";;;AAOA,SAASA,EACPC,GAKA;AACA,QAAM;AAAA,IACJ,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACDJ;AACJ,SACE,gBAAAK;AAAA,IAACC,EAAoB;AAAA,IAApB;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,EAAG,YAAYN,CAAS;AAAA,MAClC,GAAGG;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAI;AAAA,UAACF,EAAoB;AAAA,UAApB;AAAA,YACE,GAAGH,GAAW,YAAY,CAAA;AAAA,YAC3B,aAAU;AAAA,YACV,WAAWI;AAAA,cACT;AAAA,cACAJ,GAAW,UAAU;AAAA,YAAA;AAAA,YAGtB,UAAAD;AAAA,UAAA;AAAA,QAAA;AAAA,0BAEFO,GAAA,EAAU;AAAA,QACX,gBAAAD,EAACF,EAAoB,QAApB,CAAA,CAA2B;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGlC;AAEA,SAASG,EAAU;AAAA,EACE,WAAAR;AAAA,EACA,aAAAS,IAAc;AAAA,EACd,GAAGV;AACL,GAAyE;AAC1F,SACE,gBAAAQ;AAAA,IAACF,EAAoB;AAAA,IAApB;AAAA,MACC,aAAU;AAAA,MACV,aAAAI;AAAA,MACA,WAAWH;AAAA,QACT;AAAA,QACAG,MAAgB,cAChB;AAAA,QACAA,MAAgB,gBAChB;AAAA,QACAT;AAAA,MAAA;AAAA,MAED,GAAGD;AAAA,MAEJ,UAAA,gBAAAQ;AAAA,QAACF,EAAoB;AAAA,QAApB;AAAA,UACC,aAAU;AAAA,UACV,WAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA;AAGN;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oneplatformdev/ui",
3
- "version": "0.1.99-beta.214",
3
+ "version": "0.1.99-beta.215",
4
4
  "description": "UI component library for OnePlatform",
5
5
  "author": "One Platform Development Team",
6
6
  "keywords": [
@@ -106,9 +106,9 @@
106
106
  "recharts": "^3.2.0",
107
107
  "sonner": "^2.0.7",
108
108
  "vaul": "^1.1.2",
109
- "@oneplatformdev/tokens": "^0.1.99-beta.214",
110
- "@oneplatformdev/utils": "^0.1.99-beta.214",
111
- "@oneplatformdev/hooks": "^0.1.99-beta.214"
109
+ "@oneplatformdev/tokens": "^0.1.99-beta.215",
110
+ "@oneplatformdev/hooks": "^0.1.99-beta.215",
111
+ "@oneplatformdev/utils": "^0.1.99-beta.215"
112
112
  },
113
113
  "scripts": {
114
114
  "chromatic": "chromatic"
@@ -1 +0,0 @@
1
- {"version":3,"file":"ComboboxOptions.d.ts","sourceRoot":"","sources":["../../src/Combobox/ComboboxOptions.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAY1B,eAAO,MAAM,mBAAmB,GAAI,IAAI,SAAS,MAAM,EAAE,OAAO,yBAAyB,CAAC,IAAI,CAAC,4CAyE9F,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,IAAI,SAAS,MAAM,EAAE,OAAO,qBAAqB,CAAC,IAAI,CAAC,4CAStF,CAAA"}
@@ -1,75 +0,0 @@
1
- import { jsx as e, jsxs as u } from "react/jsx-runtime";
2
- import { useState as b } from "react";
3
- import { Collapsible as g, CollapsibleTrigger as h, CollapsibleContent as x } from "../Collapsible/Collapsible.js";
4
- import { ComboboxOptionItem as p } from "./ComboboxOptionItem.js";
5
- import { ChevronRightIcon as C } from "lucide-react";
6
- import { cn as s } from "@oneplatformdev/utils";
7
- import { ButtonIcon as v } from "../ButtonIcon/ButtonIcon.js";
8
- import "../ButtonIcon/buttonIconVariants.js";
9
- const m = (n) => {
10
- const { option: r, deep: o = 0, defaultNodeOpen: a, defaultNodeDisabled: i, searchTerm: d } = n, [l, c] = b(() => typeof a == "function" ? a(r, o) : a ?? (!!d || !o));
11
- return r?.items?.length ? /* @__PURE__ */ u(
12
- g,
13
- {
14
- open: l,
15
- onOpenChange: c,
16
- "data-opened": l,
17
- className: s("group/collapsible"),
18
- disabled: typeof i == "function" ? i(r, o) : i ?? !1,
19
- children: [
20
- /* @__PURE__ */ e(p, { ...n, onCollapseToggle: () => c((t) => !t), children: /* @__PURE__ */ e(h, { asChild: !0, children: /* @__PURE__ */ e(
21
- "div",
22
- {
23
- className: s(
24
- "flex items-center justify-end",
25
- "inset-0 absolute top-0",
26
- !o && "right-2"
27
- ),
28
- children: /* @__PURE__ */ e(
29
- v,
30
- {
31
- onClick: (t) => {
32
- t?.preventDefault(), t?.stopPropagation(), c((f) => !f);
33
- },
34
- type: "button",
35
- variant: "ghost",
36
- color: "secondary",
37
- className: s(
38
- "bg-transparent hover:bg-transparent active:bg-transparent focus:bg-transparent"
39
- ),
40
- icon: /* @__PURE__ */ e(
41
- C,
42
- {
43
- strokeWidth: 2,
44
- className: s(
45
- "text-[#06080D]",
46
- "transition-transform",
47
- l && "rotate-90"
48
- )
49
- }
50
- )
51
- }
52
- )
53
- }
54
- ) }) }),
55
- /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e("div", { className: "flex flex-col gap-0", children: r?.items.map((t) => /* @__PURE__ */ e(
56
- m,
57
- {
58
- ...n,
59
- deep: o + 1,
60
- option: t
61
- },
62
- t.value
63
- )) }) })
64
- ]
65
- }
66
- ) : /* @__PURE__ */ e(p, { ...n });
67
- }, B = (n) => {
68
- const { options: r = [], ...o } = n;
69
- return /* @__PURE__ */ e("div", { className: "flex flex-col gap-0", children: r.map((a) => /* @__PURE__ */ e(m, { ...o, option: a }, a.value)) });
70
- };
71
- export {
72
- B as ComboboxOptions,
73
- m as ComboboxOptionsNode
74
- };
75
- //# sourceMappingURL=ComboboxOptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ComboboxOptions.js","sources":["../../src/Combobox/ComboboxOptions.tsx"],"sourcesContent":["import {\n IComboboxOptionsNodeProps,\n IComboboxOptionsProps,\n} from './Combobox.types';\nimport { useState } from 'react';\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from '../Collapsible';\nimport { ComboboxOptionItem } from './ComboboxOptionItem';\nimport { ChevronRightIcon } from 'lucide-react';\nimport { cn } from '@oneplatformdev/utils';\nimport { ButtonIcon } from \"../ButtonIcon\";\n\nexport const ComboboxOptionsNode = <Data extends object>(props: IComboboxOptionsNodeProps<Data>) => {\n const { option, deep = 0, defaultNodeOpen, defaultNodeDisabled, searchTerm } = props;\n\n const [open, onOpenChange] = useState(() => {\n const def = !!searchTerm || !deep;\n return typeof defaultNodeOpen === \"function\"\n ? defaultNodeOpen(option, deep)\n : defaultNodeOpen ?? def\n });\n\n if (!option?.items?.length) return <ComboboxOptionItem {...props} />;\n return (\n <Collapsible\n open={open}\n onOpenChange={onOpenChange}\n data-opened={open}\n className={cn('group/collapsible')}\n disabled={typeof defaultNodeDisabled === \"function\"\n ? defaultNodeDisabled(option, deep)\n : defaultNodeDisabled ?? false}\n >\n <ComboboxOptionItem {...props} onCollapseToggle={() => onOpenChange(prev => !prev)}>\n <CollapsibleTrigger asChild>\n <div\n className={cn(\n 'flex items-center justify-end',\n 'inset-0 absolute top-0',\n !deep && 'right-2',\n )}\n >\n <ButtonIcon\n onClick={(e) => {\n e?.preventDefault();\n e?.stopPropagation();\n onOpenChange((prev) => !prev);\n }}\n type=\"button\"\n variant=\"ghost\"\n color='secondary'\n className={cn(\n 'bg-transparent hover:bg-transparent active:bg-transparent focus:bg-transparent'\n )}\n icon={(\n <ChevronRightIcon\n strokeWidth={2}\n className={cn(\n 'text-[#06080D]',\n 'transition-transform',\n open && 'rotate-90'\n )}\n />\n )}\n />\n </div>\n </CollapsibleTrigger>\n </ComboboxOptionItem>\n\n <CollapsibleContent>\n <div className=\"flex flex-col gap-0\">\n {option?.items.map((opt) => {\n return (\n <ComboboxOptionsNode\n key={opt.value}\n {...props}\n deep={deep + 1}\n option={opt}\n />\n );\n })}\n </div>\n </CollapsibleContent>\n </Collapsible>\n );\n}\n\nexport const ComboboxOptions = <Data extends object>(props: IComboboxOptionsProps<Data>) => {\n const { options = [], ...rest } = props;\n return (\n <div className=\"flex flex-col gap-0\">\n {options.map((option) => (\n <ComboboxOptionsNode key={option.value} {...rest} option={option} />\n ))}\n </div>\n );\n}\n"],"names":["ComboboxOptionsNode","props","option","deep","defaultNodeOpen","defaultNodeDisabled","searchTerm","open","onOpenChange","useState","jsxs","Collapsible","cn","jsx","ComboboxOptionItem","prev","CollapsibleTrigger","ButtonIcon","e","ChevronRightIcon","CollapsibleContent","opt","ComboboxOptions","options","rest"],"mappings":";;;;;;;;AAeO,MAAMA,IAAsB,CAAsBC,MAA2C;AAClG,QAAM,EAAE,QAAAC,GAAQ,MAAAC,IAAO,GAAG,iBAAAC,GAAiB,qBAAAC,GAAqB,YAAAC,MAAeL,GAEzE,CAACM,GAAMC,CAAY,IAAIC,EAAS,MAE7B,OAAOL,KAAoB,aAC9BA,EAAgBF,GAAQC,CAAI,IAC5BC,MAHQ,CAAC,CAACE,KAAc,CAACH,EAI9B;AAED,SAAKD,GAAQ,OAAO,SAElB,gBAAAQ;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAAJ;AAAA,MACA,cAAAC;AAAA,MACA,eAAaD;AAAA,MACb,WAAWK,EAAG,mBAAmB;AAAA,MACjC,UAAU,OAAOP,KAAwB,aACrCA,EAAoBH,GAAQC,CAAI,IAChCE,KAAuB;AAAA,MAE3B,UAAA;AAAA,QAAA,gBAAAQ,EAACC,GAAA,EAAoB,GAAGb,GAAO,kBAAkB,MAAMO,EAAa,CAAAO,MAAQ,CAACA,CAAI,GAC/E,UAAA,gBAAAF,EAACG,GAAA,EAAmB,SAAO,IACzB,UAAA,gBAAAH;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAWD;AAAA,cACT;AAAA,cACA;AAAA,cACA,CAACT,KAAQ;AAAA,YAAA;AAAA,YAGX,UAAA,gBAAAU;AAAA,cAACI;AAAA,cAAA;AAAA,gBACC,SAAS,CAACC,MAAM;AACd,kBAAAA,GAAG,eAAA,GACHA,GAAG,gBAAA,GACHV,EAAa,CAACO,MAAS,CAACA,CAAI;AAAA,gBAC9B;AAAA,gBACA,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,OAAM;AAAA,gBACN,WAAWH;AAAA,kBACT;AAAA,gBAAA;AAAA,gBAEF,MACE,gBAAAC;AAAA,kBAACM;AAAA,kBAAA;AAAA,oBACC,aAAa;AAAA,oBACb,WAAWP;AAAA,sBACT;AAAA,sBACA;AAAA,sBACAL,KAAQ;AAAA,oBAAA;AAAA,kBACV;AAAA,gBAAA;AAAA,cACF;AAAA,YAAA;AAAA,UAEJ;AAAA,QAAA,GAEJ,EAAA,CACF;AAAA,QAEA,gBAAAM,EAACO,GAAA,EACC,UAAA,gBAAAP,EAAC,OAAA,EAAI,WAAU,uBACZ,UAAAX,GAAQ,MAAM,IAAI,CAACmB,MAEhB,gBAAAR;AAAA,UAACb;AAAA,UAAA;AAAA,YAEE,GAAGC;AAAA,YACJ,MAAME,IAAO;AAAA,YACb,QAAQkB;AAAA,UAAA;AAAA,UAHHA,EAAI;AAAA,QAAA,CAMd,GACH,EAAA,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,IA5D+B,gBAAAR,EAACC,GAAA,EAAoB,GAAGb,GAAO;AA+DpE,GAEaqB,IAAkB,CAAsBrB,MAAuC;AAC1F,QAAM,EAAE,SAAAsB,IAAU,CAAA,GAAI,GAAGC,MAASvB;AAClC,2BACG,OAAA,EAAI,WAAU,uBACZ,UAAAsB,EAAQ,IAAI,CAACrB,MACZ,gBAAAW,EAACb,GAAA,EAAwC,GAAGwB,GAAM,QAAAtB,EAAA,GAAxBA,EAAO,KAAiC,CACnE,GACH;AAEJ;"}