@pibit.ai/cure-design-system 0.6.53 → 0.6.54

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 (28) hide show
  1. package/dist/patterns/condition-builder/add-action-button.d.ts +2 -0
  2. package/dist/patterns/condition-builder/add-action-button.d.ts.map +1 -1
  3. package/dist/patterns/condition-builder/add-action-button.js +22 -18
  4. package/dist/patterns/condition-builder/condition-builder.d.ts +1 -1
  5. package/dist/patterns/condition-builder/condition-builder.d.ts.map +1 -1
  6. package/dist/patterns/condition-builder/condition-builder.js +58 -57
  7. package/dist/patterns/condition-builder/condition-group.d.ts +1 -1
  8. package/dist/patterns/condition-builder/condition-group.d.ts.map +1 -1
  9. package/dist/patterns/condition-builder/condition-group.js +238 -233
  10. package/dist/patterns/condition-builder/types.d.ts +10 -0
  11. package/dist/patterns/condition-builder/types.d.ts.map +1 -1
  12. package/dist/patterns/confirm-dialog/confirm-dialog.d.ts +8 -1
  13. package/dist/patterns/confirm-dialog/confirm-dialog.d.ts.map +1 -1
  14. package/dist/patterns/confirm-dialog/confirm-dialog.js +76 -71
  15. package/dist/patterns/filter-group/document-fields-to-tree.d.ts +1 -0
  16. package/dist/patterns/filter-group/document-fields-to-tree.d.ts.map +1 -1
  17. package/dist/patterns/filter-group/document-fields-to-tree.js +14 -13
  18. package/dist/patterns/filter-group/filter-condition-row.js +30 -30
  19. package/dist/patterns/filter-group/nested-field-select.d.ts.map +1 -1
  20. package/dist/patterns/filter-group/nested-field-select.js +175 -167
  21. package/dist/patterns/filter-group/types.d.ts +4 -0
  22. package/dist/patterns/filter-group/types.d.ts.map +1 -1
  23. package/dist/patterns/filter-group/types.js +27 -12
  24. package/dist/rich-text/token-input/token-suggestion.d.ts +5 -0
  25. package/dist/rich-text/token-input/token-suggestion.d.ts.map +1 -1
  26. package/dist/rich-text/token-input/token-suggestion.js +14 -6
  27. package/dist/styles/components.css +1 -1
  28. package/package.json +1 -1
@@ -3,6 +3,8 @@ import { FC, ReactNode } from 'react';
3
3
  * Link-style add action ("Add Filter", "Add Filter Group") on the DS Button, kept visually
4
4
  * identical to the raw button it replaces: medium weight, 1.5 gap, caller-driven colour and
5
5
  * font size (the caller's classes land last, so they win over the link variant's defaults).
6
+ * Like the raw button: the icon takes the label's colour (`currentColor`) rather than the link
7
+ * variant's lighter icon shade, and the label is not underlined on hover.
6
8
  */
7
9
  export declare const AddActionButton: ({ icon: Icon, fontSize, iconSize, className, onClick, children, }: {
8
10
  icon: FC<{
@@ -1 +1 @@
1
- {"version":3,"file":"add-action-button.d.ts","sourceRoot":"","sources":["../../../src/patterns/condition-builder/add-action-button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAI3C;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,mEAO7B;IACC,IAAI,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACvB,4CAYA,CAAC"}
1
+ {"version":3,"file":"add-action-button.d.ts","sourceRoot":"","sources":["../../../src/patterns/condition-builder/add-action-button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAI3C;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,mEAO7B;IACC,IAAI,EAAE,EAAE,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACvB,4CAgBA,CAAC"}
@@ -1,26 +1,30 @@
1
- import { jsx as c } from "react/jsx-runtime";
2
- import { cx as e } from "../../utils/cn.js";
3
- import { Button as s } from "../../primitives/button/button.js";
4
- const d = ({
5
- icon: o,
6
- fontSize: t,
7
- iconSize: i,
8
- className: m,
9
- onClick: n,
10
- children: r
11
- }) => /* @__PURE__ */ c(
12
- s,
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import { cx as c } from "../../utils/cn.js";
3
+ import { Button as m } from "../../primitives/button/button.js";
4
+ const l = ({
5
+ icon: t,
6
+ fontSize: o,
7
+ iconSize: n,
8
+ className: r,
9
+ onClick: e,
10
+ children: a
11
+ }) => /* @__PURE__ */ i(
12
+ m,
13
13
  {
14
14
  type: "button",
15
15
  color: "link-color",
16
16
  size: "sm",
17
- iconLeading: o,
18
- leadingClassName: i,
19
- className: e("gap-1.5 font-medium", t, m),
20
- onClick: n,
21
- children: r
17
+ iconLeading: t,
18
+ leadingClassName: n,
19
+ className: c(
20
+ "gap-1.5 font-medium *:data-icon:text-current hover:*:data-icon:text-current hover:*:data-text:decoration-transparent",
21
+ o,
22
+ r
23
+ ),
24
+ onClick: e,
25
+ children: a
22
26
  }
23
27
  );
24
28
  export {
25
- d as AddActionButton
29
+ l as AddActionButton
26
30
  };
@@ -1,4 +1,4 @@
1
1
  import { ConditionBuilderProps, BaseGroupCondition, BaseLeafCondition } from './types';
2
- export declare function ConditionBuilder<TCondition, TLeaf extends TCondition & BaseLeafCondition, TGroup extends TCondition & BaseGroupCondition<TCondition>>({ conditions, rootOperator, config, onAddCondition, onUpdateCondition, onDeleteCondition, onAddGroup, onUpdateGroupOperator, onDeleteGroup, onDuplicateCondition, onReorder, onUpdateRootOperator, renderLeafRow, hideOperatorColumn, invalidPaths, getErrorMessage, maxDepth, size, emptyStateLabel, addFilterLabel, addFilterGroupLabel, addActionClassName, nestedAddActionClassName, hideAddActions, getOperatorOptions, className, reorderGroupClassName, extraAddActions, renderCustomNode, isDeleteDisabled, showRootClearGroup, onRootClearGroup, }: ConditionBuilderProps<TCondition, TLeaf, TGroup>): import("react/jsx-runtime").JSX.Element;
2
+ export declare function ConditionBuilder<TCondition, TLeaf extends TCondition & BaseLeafCondition, TGroup extends TCondition & BaseGroupCondition<TCondition>>({ conditions, rootOperator, config, onAddCondition, onUpdateCondition, onDeleteCondition, onAddGroup, onUpdateGroupOperator, onDeleteGroup, onDuplicateCondition, onReorder, onUpdateRootOperator, renderLeafRow, hideOperatorColumn, invalidPaths, getErrorMessage, maxDepth, size, emptyStateLabel, emptyStateText, addFilterLabel, addFilterGroupLabel, addActionClassName, nestedAddActionClassName, hideAddActions, getOperatorOptions, className, reorderGroupClassName, extraAddActions, renderCustomNode, isDeleteDisabled, showRootClearGroup, onRootClearGroup, whereLabel, operatorColumnClassName, }: ConditionBuilderProps<TCondition, TLeaf, TGroup>): import("react/jsx-runtime").JSX.Element;
3
3
  export default ConditionBuilder;
4
4
  //# sourceMappingURL=condition-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"condition-builder.d.ts","sourceRoot":"","sources":["../../../src/patterns/condition-builder/condition-builder.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAIH,OAAO,KAAK,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAwB5F,wBAAgB,gBAAgB,CAC5B,UAAU,EACV,KAAK,SAAS,UAAU,GAAG,iBAAiB,EAC5C,MAAM,SAAS,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,EAC5D,EACE,UAAU,EACV,YAAY,EACZ,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,SAAS,EACT,oBAAoB,EACpB,aAAa,EACb,kBAA0B,EAC1B,YAAkC,EAClC,eAAe,EACf,QAAY,EACZ,IAAW,EACX,eAA8B,EAC9B,cAA6B,EAC7B,mBAAwC,EACxC,kBAA0D,EAC1D,wBAAwB,EACxB,cAAsB,EACtB,kBAAkB,EAClB,SAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAA0B,EAC1B,gBAAgB,GACnB,EAAE,qBAAqB,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,2CA6FlD;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"condition-builder.d.ts","sourceRoot":"","sources":["../../../src/patterns/condition-builder/condition-builder.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAIH,OAAO,KAAK,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAwB5F,wBAAgB,gBAAgB,CAC5B,UAAU,EACV,KAAK,SAAS,UAAU,GAAG,iBAAiB,EAC5C,MAAM,SAAS,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,EAC5D,EACE,UAAU,EACV,YAAY,EACZ,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,SAAS,EACT,oBAAoB,EACpB,aAAa,EACb,kBAA0B,EAC1B,YAAkC,EAClC,eAAe,EACf,QAAY,EACZ,IAAW,EACX,eAA8B,EAC9B,cAAc,EACd,cAA6B,EAC7B,mBAAwC,EACxC,kBAA0D,EAC1D,wBAAwB,EACxB,cAAsB,EACtB,kBAAkB,EAClB,SAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAA0B,EAC1B,gBAAgB,EAChB,UAAU,EACV,uBAAuB,GAC1B,EAAE,qBAAqB,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,2CA+FlD;AAED,eAAe,gBAAgB,CAAC"}
@@ -1,10 +1,10 @@
1
- import { jsx as t, jsxs as n } from "react/jsx-runtime";
2
- import { useMemo as q } from "react";
1
+ import { jsx as t, jsxs as h } from "react/jsx-runtime";
2
+ import { useMemo as K } from "react";
3
3
  import { Plus as x } from "@untitledui/icons";
4
- import { ConditionGroup as J } from "./condition-group.js";
4
+ import { ConditionGroup as O } from "./condition-group.js";
5
5
  import { AddActionButton as v } from "./add-action-button.js";
6
6
  import { cx as N } from "../../utils/cn.js";
7
- const o = {
7
+ const n = {
8
8
  sm: "text-xs",
9
9
  md: "text-sm",
10
10
  lg: "text-md"
@@ -13,14 +13,14 @@ const o = {
13
13
  md: "size-5",
14
14
  lg: "size-6"
15
15
  }, g = /* @__PURE__ */ new Set();
16
- function Z({
16
+ function ee({
17
17
  conditions: l,
18
- rootOperator: m,
18
+ rootOperator: o,
19
19
  config: y,
20
- onAddCondition: s,
20
+ onAddCondition: m,
21
21
  onUpdateCondition: P,
22
22
  onDeleteCondition: z,
23
- onAddGroup: c,
23
+ onAddGroup: s,
24
24
  onUpdateGroupOperator: F,
25
25
  onDeleteGroup: G,
26
26
  onDuplicateCondition: w,
@@ -30,80 +30,79 @@ function Z({
30
30
  hideOperatorColumn: B = !1,
31
31
  invalidPaths: I = g,
32
32
  getErrorMessage: M,
33
- maxDepth: f = 2,
33
+ maxDepth: c = 2,
34
34
  size: e = "sm",
35
35
  emptyStateLabel: T = "conditions",
36
- addFilterLabel: a = "Add Filter",
37
- addFilterGroupLabel: d = "Add Filter Group",
36
+ emptyStateText: _,
37
+ addFilterLabel: f = "Add Filter",
38
+ addFilterGroupLabel: a = "Add Filter Group",
38
39
  addActionClassName: i = "text-brand-600 hover:text-brand-700",
39
- nestedAddActionClassName: _,
40
- hideAddActions: p = !1,
41
- getOperatorOptions: C,
42
- className: D = "py-2",
43
- reorderGroupClassName: E,
40
+ nestedAddActionClassName: C,
41
+ hideAddActions: d = !1,
42
+ getOperatorOptions: D,
43
+ className: E = "py-2",
44
+ reorderGroupClassName: H,
44
45
  extraAddActions: r,
45
- renderCustomNode: H,
46
- isDeleteDisabled: L,
47
- showRootClearGroup: U = !1,
48
- onRootClearGroup: V
46
+ renderCustomNode: L,
47
+ isDeleteDisabled: U,
48
+ showRootClearGroup: V = !1,
49
+ onRootClearGroup: Y,
50
+ whereLabel: $,
51
+ operatorColumnClassName: q
49
52
  }) {
50
- const Y = q(
53
+ const J = K(
51
54
  () => ({
52
- operator: m,
55
+ operator: o,
53
56
  conditions: l
54
57
  }),
55
- [m, l]
58
+ [o, l]
56
59
  );
57
- return l.length === 0 ? /* @__PURE__ */ t("div", { className: "py-4", children: /* @__PURE__ */ n("div", { className: N("text-center py-8 text-tertiary", o[e]), children: [
58
- /* @__PURE__ */ n("p", { className: "mb-4", children: [
59
- "No ",
60
- T,
61
- " defined yet."
62
- ] }),
63
- p ? null : /* @__PURE__ */ n("div", { className: "flex items-center justify-center gap-3", children: [
60
+ return l.length === 0 ? /* @__PURE__ */ t("div", { className: "py-4", children: /* @__PURE__ */ h("div", { className: N("text-center py-8 text-tertiary", n[e]), children: [
61
+ /* @__PURE__ */ t("p", { className: "mb-4", children: _ ?? `No ${T} defined yet.` }),
62
+ d ? null : /* @__PURE__ */ h("div", { className: "flex items-center justify-center gap-3", children: [
64
63
  /* @__PURE__ */ t(
65
64
  v,
66
65
  {
67
66
  icon: x,
68
- fontSize: o[e],
67
+ fontSize: n[e],
69
68
  iconSize: S[e],
70
69
  className: i,
71
- onClick: () => s([]),
72
- children: a
70
+ onClick: () => m([]),
71
+ children: f
73
72
  }
74
73
  ),
75
74
  /* @__PURE__ */ t(
76
75
  v,
77
76
  {
78
77
  icon: x,
79
- fontSize: o[e],
78
+ fontSize: n[e],
80
79
  iconSize: S[e],
81
80
  className: i,
82
- onClick: () => c([]),
83
- children: d
81
+ onClick: () => s([]),
82
+ children: a
84
83
  }
85
84
  ),
86
85
  r == null ? void 0 : r({
87
86
  nodePath: [],
88
87
  level: 0,
89
- canAddNestedGroup: 0 < f
88
+ canAddNestedGroup: 0 < c
90
89
  })
91
90
  ] })
92
- ] }) }) : /* @__PURE__ */ t("div", { className: N(D, "min-w-0 max-w-full overflow-x-hidden"), children: /* @__PURE__ */ t(
93
- J,
91
+ ] }) }) : /* @__PURE__ */ t("div", { className: N(E, "min-w-0 max-w-full overflow-x-hidden"), children: /* @__PURE__ */ t(
92
+ O,
94
93
  {
95
- group: Y,
94
+ group: J,
96
95
  nodePath: [],
97
96
  level: 0,
98
- maxDepth: f ?? 2,
97
+ maxDepth: c ?? 2,
99
98
  isFirst: !0,
100
99
  config: y,
101
- onAddCondition: s,
100
+ onAddCondition: m,
102
101
  onUpdateCondition: P,
103
102
  onDeleteCondition: z,
104
- onAddGroup: c,
105
- onUpdateGroupOperator: (u, h) => {
106
- u.length === 0 ? j(h) : F(u, h);
103
+ onAddGroup: s,
104
+ onUpdateGroupOperator: (p, u) => {
105
+ p.length === 0 ? j(u) : F(p, u);
107
106
  },
108
107
  onDeleteGroup: G,
109
108
  onDuplicateCondition: w,
@@ -113,22 +112,24 @@ function Z({
113
112
  invalidPaths: I ?? g,
114
113
  getErrorMessage: M,
115
114
  size: e ?? "sm",
116
- addFilterLabel: a ?? "Add Filter",
117
- addFilterGroupLabel: d ?? "Add Filter Group",
115
+ addFilterLabel: f ?? "Add Filter",
116
+ addFilterGroupLabel: a ?? "Add Filter Group",
118
117
  addActionClassName: i,
119
- nestedAddActionClassName: _,
120
- hideAddActions: p,
121
- getOperatorOptions: C,
122
- reorderGroupClassName: E,
118
+ nestedAddActionClassName: C,
119
+ hideAddActions: d,
120
+ getOperatorOptions: D,
121
+ reorderGroupClassName: H,
123
122
  extraAddActions: r,
124
- renderCustomNode: H,
125
- isDeleteDisabled: L,
126
- showRootClearGroup: U,
127
- onRootClearGroup: V
123
+ renderCustomNode: L,
124
+ isDeleteDisabled: U,
125
+ showRootClearGroup: V,
126
+ onRootClearGroup: Y,
127
+ whereLabel: $,
128
+ operatorColumnClassName: q
128
129
  }
129
130
  ) });
130
131
  }
131
132
  export {
132
- Z as ConditionBuilder,
133
- Z as default
133
+ ee as ConditionBuilder,
134
+ ee as default
134
135
  };
@@ -1,4 +1,4 @@
1
1
  import { ConditionGroupProps, BaseGroupCondition, BaseLeafCondition } from './types';
2
- export declare function ConditionGroup<TCondition, TLeaf extends TCondition & BaseLeafCondition, TGroup extends TCondition & BaseGroupCondition<TCondition>>({ group, nodePath, level, maxDepth, config, onAddCondition, onUpdateCondition, onDeleteCondition, onAddGroup, onUpdateGroupOperator, onDeleteGroup, onDuplicateCondition, onReorder, renderLeafRow, hideOperatorColumn, invalidPaths, getErrorMessage, size, addFilterLabel, addFilterGroupLabel, addActionClassName, nestedAddActionClassName, hideAddActions, getOperatorOptions, reorderGroupClassName, extraAddActions, renderCustomNode, isDeleteDisabled, showRootClearGroup, onRootClearGroup, }: ConditionGroupProps<TCondition, TLeaf, TGroup>): import("react/jsx-runtime").JSX.Element;
2
+ export declare function ConditionGroup<TCondition, TLeaf extends TCondition & BaseLeafCondition, TGroup extends TCondition & BaseGroupCondition<TCondition>>({ group, nodePath, level, maxDepth, config, onAddCondition, onUpdateCondition, onDeleteCondition, onAddGroup, onUpdateGroupOperator, onDeleteGroup, onDuplicateCondition, onReorder, renderLeafRow, hideOperatorColumn, invalidPaths, getErrorMessage, size, addFilterLabel, addFilterGroupLabel, addActionClassName, nestedAddActionClassName, hideAddActions, getOperatorOptions, reorderGroupClassName, extraAddActions, renderCustomNode, isDeleteDisabled, showRootClearGroup, onRootClearGroup, whereLabel, operatorColumnClassName, }: ConditionGroupProps<TCondition, TLeaf, TGroup>): import("react/jsx-runtime").JSX.Element;
3
3
  export default ConditionGroup;
4
4
  //# sourceMappingURL=condition-group.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"condition-group.d.ts","sourceRoot":"","sources":["../../../src/patterns/condition-builder/condition-group.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EACR,mBAAmB,EAEnB,kBAAkB,EAClB,iBAAiB,EAEpB,MAAM,SAAS,CAAC;AA6MjB,wBAAgB,cAAc,CAC1B,UAAU,EACV,KAAK,SAAS,UAAU,GAAG,iBAAiB,EAC5C,MAAM,SAAS,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,EAC5D,EACE,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,SAAS,EACT,aAAa,EACb,kBAA0B,EAC1B,YAAY,EACZ,eAAe,EACf,IAAI,EACJ,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,cAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAA0B,EAC1B,gBAAgB,GACnB,EAAE,mBAAmB,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,2CAufhD;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"condition-group.d.ts","sourceRoot":"","sources":["../../../src/patterns/condition-builder/condition-group.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EACR,mBAAmB,EAEnB,kBAAkB,EAClB,iBAAiB,EAEpB,MAAM,SAAS,CAAC;AAiNjB,wBAAgB,cAAc,CAC1B,UAAU,EACV,KAAK,SAAS,UAAU,GAAG,iBAAiB,EAC5C,MAAM,SAAS,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,EAC5D,EACE,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,SAAS,EACT,aAAa,EACb,kBAA0B,EAC1B,YAAY,EACZ,eAAe,EACf,IAAI,EACJ,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,cAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAA0B,EAC1B,gBAAgB,EAChB,UAAoB,EACpB,uBAAoC,GACvC,EAAE,mBAAmB,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,2CAkgBhD;AAED,eAAe,cAAc,CAAC"}