impact-nova 2.2.4 → 2.2.6

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 (47) hide show
  1. package/dist/components/data/ag-grid-react/ag-grid-tooltip-overflow.d.ts +2 -1
  2. package/dist/components/data/ag-grid-react/ag-grid-tooltip-overflow.js +12 -11
  3. package/dist/components/data/ag-grid-react/cell-renderers/link-with-batch-cell-renderer.js +109 -87
  4. package/dist/components/data/ag-grid-react/index.d.ts +2 -0
  5. package/dist/components/data/ag-grid-react/index.js +41 -36
  6. package/dist/components/data/data-table/data-table-saved-views.js +216 -191
  7. package/dist/components/data/expandable-list-item/expandable-list-item-attributes.d.ts +2 -1
  8. package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +30 -27
  9. package/dist/components/data/expandable-list-item/expandable-list-item-metrics.js +44 -30
  10. package/dist/components/data/expandable-list-item/expandable-list-item-parts.d.ts +1 -1
  11. package/dist/components/data/expandable-list-item/expandable-list-item-parts.js +162 -127
  12. package/dist/components/data/expandable-list-item/expandable-list-item-preset.js +30 -29
  13. package/dist/components/data/expandable-list-item/expandable-list-item.types.d.ts +8 -1
  14. package/dist/components/data/expandable-list-item/index.d.ts +1 -1
  15. package/dist/components/data-display/statistics-card/statistics-card.js +138 -111
  16. package/dist/components/feedback/tooltip/index.d.ts +3 -0
  17. package/dist/components/feedback/tooltip/index.js +13 -9
  18. package/dist/components/feedback/tooltip/overflow-tooltip.d.ts +2 -0
  19. package/dist/components/feedback/tooltip/overflow-tooltip.js +69 -0
  20. package/dist/components/feedback/tooltip/overflow-tooltip.types.d.ts +37 -0
  21. package/dist/components/feedback/tooltip/tab-tooltip-render.js +3 -2
  22. package/dist/components/feedback/tooltip/use-overflow-tooltip.d.ts +3 -0
  23. package/dist/components/feedback/tooltip/use-overflow-tooltip.js +55 -0
  24. package/dist/components/flows/command-palette/shortcut-settings.js +85 -66
  25. package/dist/components/flows/filter-panel/filter-panel.js +76 -69
  26. package/dist/components/flows/filter-strip/filter-summary.js +184 -163
  27. package/dist/components/flows/filter-strip/filter-tag-list.js +119 -103
  28. package/dist/components/forms/select/components/SelectOptionRow.js +35 -27
  29. package/dist/components/forms/select/components/SelectTriggerValue.js +49 -20
  30. package/dist/components/forms/select/components/Submenu.js +40 -31
  31. package/dist/components/layout/horizontal-scroller/index.d.ts +4 -0
  32. package/dist/components/layout/horizontal-scroller/index.js +6 -2
  33. package/dist/components/layout/horizontal-scroller/scroll-overflow-affordance.d.ts +10 -0
  34. package/dist/components/layout/horizontal-scroller/scroll-overflow-affordance.js +124 -0
  35. package/dist/components/layout/horizontal-scroller/use-horizontal-scroll-overflow.d.ts +13 -0
  36. package/dist/components/layout/horizontal-scroller/use-horizontal-scroll-overflow.js +40 -0
  37. package/dist/components/primitives/stepper/stepper.js +61 -42
  38. package/dist/impact-nova.css +1 -1
  39. package/dist/index.js +468 -460
  40. package/dist/lib/overflow/is-text-overflowing.d.ts +3 -0
  41. package/dist/lib/overflow/is-text-overflowing.js +6 -0
  42. package/dist/llms/rules/ag-grid.js +1 -1
  43. package/dist/llms/rules/best-practices.js +1 -1
  44. package/dist/llms/rules/installation.js +1 -1
  45. package/dist/llms/rules/requirements.js +1 -1
  46. package/dist/llms/rules/troubleshooting.js +1 -1
  47. package/package.json +1 -1
@@ -1,28 +1,29 @@
1
- import { jsxs as i, Fragment as W, jsx as t } from "react/jsx-runtime";
1
+ import { jsxs as l, Fragment as X, jsx as t } from "react/jsx-runtime";
2
2
  import * as n from "react";
3
- import { ChevronRight as xe, Star as I, Search as ye, Bookmark as we, Pencil as Ne, Bin as Te } from "impact-nova-icons";
4
- import { cn as k } from "../../../lib/utils.js";
3
+ import { ChevronRight as ye, Star as I, Search as we, Bookmark as Ne, Pencil as Te, Bin as Ve } from "impact-nova-icons";
4
+ import { cn as m } from "../../../lib/utils.js";
5
5
  import { useImpactNovaI18n as ke } from "../../../i18n/use-impact-nova-i18n.js";
6
- import { Popover as Ve, PopoverTrigger as Ce, PopoverContent as Se } from "../../feedback/popover/popover.js";
7
- import { Tooltip as X, TooltipTrigger as Z, TooltipContent as q } from "../../feedback/tooltip/tooltip.js";
8
- import { Button as m } from "../../primitives/button/button.js";
9
- import { Badge as j } from "../../data-display/badge/badge.js";
10
- import { Input as ze } from "../../forms/input/input.js";
6
+ import { Popover as De, PopoverTrigger as Se, PopoverContent as Ce } from "../../feedback/popover/popover.js";
7
+ import { OverflowTooltip as Z } from "../../feedback/tooltip/overflow-tooltip.js";
8
+ import { Button as u } from "../../primitives/button/button.js";
9
+ import { Badge as q } from "../../data-display/badge/badge.js";
10
+ import { badgeVariants as ze } from "../../data-display/badge/badge.variants.js";
11
+ import { Input as Me } from "../../forms/input/input.js";
11
12
  import { Separator as ee } from "../../data-display/separator/separator.js";
12
- import { Skeleton as B } from "../../data-display/skeleton/skeleton.js";
13
- import { Prompt as De } from "../../forms/prompt/prompt.js";
14
- function Me(b) {
15
- return b.isSystemView ? "system" : b.isDefaultView ? "default" : b.isActive ? "active" : "other";
13
+ import { Skeleton as R } from "../../data-display/skeleton/skeleton.js";
14
+ import { Prompt as Ae } from "../../forms/prompt/prompt.js";
15
+ function Pe(v) {
16
+ return v.isSystemView ? "system" : v.isDefaultView ? "default" : v.isActive ? "active" : "other";
16
17
  }
17
- const Ae = ["default", "active", "system"], _e = ({
18
- isSaveViewEnabled: b = !0,
18
+ const Oe = ["default", "active", "system"], Ge = ({
19
+ isSaveViewEnabled: v = !0,
19
20
  views: o,
20
21
  activeViewSummary: te,
21
22
  viewTypeOptions: ae,
22
- menuOpen: R,
23
+ menuOpen: E,
23
24
  defaultMenuOpen: ne = !1,
24
- onMenuOpenChange: E,
25
- onSearch: V,
25
+ onMenuOpenChange: j,
26
+ onSearch: D,
26
27
  isLoadingViews: L = !1,
27
28
  customListContent: U,
28
29
  disableApply: ie = !1,
@@ -34,73 +35,73 @@ const Ae = ["default", "active", "system"], _e = ({
34
35
  onDeleteView: ce,
35
36
  onSetDefaultView: Q
36
37
  }) => {
37
- const { t: a } = ke(), C = R !== void 0, [me, y] = n.useState(null), [ue, pe] = n.useState(
38
+ const { t: a } = ke(), S = E !== void 0, [me, N] = n.useState(null), [ue, pe] = n.useState(
38
39
  ne
39
- ), u = C ? !!R : ue, p = n.useCallback(
40
+ ), p = S ? !!E : ue, f = n.useCallback(
40
41
  (e) => {
41
- C || pe(e), E?.(e);
42
+ S || pe(e), j?.(e);
42
43
  },
43
- [C, E]
44
- ), [v, S] = n.useState("All"), [w, z] = n.useState(""), [F, D] = n.useState("");
44
+ [S, j]
45
+ ), [x, C] = n.useState("All"), [T, z] = n.useState(""), [F, M] = n.useState("");
45
46
  n.useEffect(() => {
46
- const e = window.setTimeout(() => D(w), 300);
47
+ const e = window.setTimeout(() => M(T), 300);
47
48
  return () => window.clearTimeout(e);
48
- }, [w]), n.useEffect(() => {
49
- V && V(F);
50
- }, [F, V]);
49
+ }, [T]), n.useEffect(() => {
50
+ D && D(F);
51
+ }, [F, D]);
51
52
  const Y = n.useMemo(
52
53
  () => o.find((e) => e.isActive),
53
54
  [o]
54
- ), d = Y ?? null, _ = te ?? Y?.viewName ?? a("dataTable.savedViewsNotApplicable"), [N, M] = n.useState(null), [g, $] = n.useState(null), K = n.useRef(!1);
55
+ ), d = Y ?? null, _ = te ?? Y?.viewName ?? a("dataTable.savedViewsNotApplicable"), [V, A] = n.useState(null), [y, $] = n.useState(null), K = n.useRef(!1);
55
56
  n.useEffect(() => {
56
- const e = u && !K.current;
57
- if (K.current = u, e) {
58
- const r = o.find((c) => c.isActive);
59
- M(r?.id ?? null), S("All"), z(""), D("");
57
+ const e = p && !K.current;
58
+ if (K.current = p, e) {
59
+ const i = o.find((c) => c.isActive);
60
+ A(i?.id ?? null), C("All"), z(""), M("");
60
61
  }
61
- }, [u, o]);
62
- const x = n.useMemo(() => v === "All" ? o : o.filter((e) => e.viewType === v), [o, v]), f = w.trim().toLowerCase(), T = n.useCallback(
63
- (e, r) => r ? (e.viewName ?? "").trim().toLowerCase().includes(r) : !0,
62
+ }, [p, o]);
63
+ const w = n.useMemo(() => x === "All" ? o : o.filter((e) => e.viewType === x), [o, x]), h = T.trim().toLowerCase(), k = n.useCallback(
64
+ (e, i) => i ? (e.viewName ?? "").trim().toLowerCase().includes(i) : !0,
64
65
  []
65
- ), A = n.useMemo(() => {
66
- let e = x;
67
- return f && (e = e.filter((r) => T(r, f))), e;
68
- }, [x, f, T]), h = n.useMemo(() => {
69
- if (x.length === 0) return [];
70
- const e = Object.groupBy(x, Me);
71
- return Ae.flatMap((r) => {
72
- const c = e[r]?.[0];
73
- return c ? f && !T(c, f) ? [] : [c] : [];
66
+ ), P = n.useMemo(() => {
67
+ let e = w;
68
+ return h && (e = e.filter((i) => k(i, h))), e;
69
+ }, [w, h, k]), b = n.useMemo(() => {
70
+ if (w.length === 0) return [];
71
+ const e = Object.groupBy(w, Pe);
72
+ return Oe.flatMap((i) => {
73
+ const c = e[i]?.[0];
74
+ return c ? h && !k(c, h) ? [] : [c] : [];
74
75
  });
75
- }, [x, f, T]), P = n.useMemo(() => {
76
- const e = new Set(h.map((r) => r.id));
77
- return A.filter((r) => !e.has(r.id));
78
- }, [A, h]), G = N === null ? null : o.find((e) => e.id === N) ?? null, fe = () => {
79
- se?.(G, { activeView: d }), p(!1);
76
+ }, [w, h, k]), O = n.useMemo(() => {
77
+ const e = new Set(b.map((i) => i.id));
78
+ return P.filter((i) => !e.has(i.id));
79
+ }, [P, b]), G = V === null ? null : o.find((e) => e.id === V) ?? null, fe = () => {
80
+ se?.(G, { activeView: d }), f(!1);
80
81
  }, he = () => {
81
- oe?.({ activeView: d, pendingView: G }), p(!1);
82
+ oe?.({ activeView: d, pendingView: G }), f(!1);
82
83
  }, be = (e) => {
83
- p(e), e || (z(""), D(""));
84
+ f(e), e || (z(""), M(""));
84
85
  };
85
- if (!b)
86
+ if (!v)
86
87
  return null;
87
- const ve = o.length > 0, H = (e, r, c) => {
88
- const O = N === e.id, s = me === e.id, J = r === "priority" && !!e.isActive, ge = r === "list" && !!e.isActive;
89
- return /* @__PURE__ */ i(
88
+ const ge = o.length > 0, H = (e, i, c) => {
89
+ const B = V === e.id, s = me === e.id, J = i === "priority" && !!e.isActive, ve = i === "list" && !!e.isActive, xe = !!(e.isEditable || e.isDeletable), g = !e.hideDefaultStar, W = xe || g;
90
+ return /* @__PURE__ */ l(
90
91
  "div",
91
92
  {
92
93
  tabIndex: 0,
93
- className: k(
94
- "mb-1 flex cursor-pointer items-center justify-between rounded-lg px-3 py-2 text-left text-sm font-medium font-['Manrope'] transition-all duration-300 relative overflow-hidden",
94
+ className: m(
95
+ "group mb-1 flex min-w-0 cursor-pointer items-center rounded-lg px-3 py-2 text-left text-sm font-medium font-['Manrope'] transition-all duration-300 relative overflow-hidden",
95
96
  !s && "hover:bg-canvas-muted",
96
- !s && J && !O && "bg-primary/10 dark:bg-primary/15",
97
- !s && O && "bg-badge-info-muted text-badge-info-foreground",
98
- !s && !O && !J && "text-foreground",
97
+ !s && J && !B && "bg-primary/10 dark:bg-primary/15",
98
+ !s && B && "bg-badge-info-muted text-badge-info-foreground",
99
+ !s && !B && !J && "text-foreground",
99
100
  s && "pointer-events-none"
100
101
  ),
101
- onClick: () => !s && M(e.id),
102
- onKeyDown: (l) => {
103
- (l.key === "Enter" || l.key === " ") && (l.preventDefault(), s || M(e.id));
102
+ onClick: () => !s && A(e.id),
103
+ onKeyDown: (r) => {
104
+ (r.key === "Enter" || r.key === " ") && (r.preventDefault(), s || A(e.id));
104
105
  },
105
106
  children: [
106
107
  s && /* @__PURE__ */ t(
@@ -113,157 +114,181 @@ const Ae = ["default", "active", "system"], _e = ({
113
114
  }
114
115
  }
115
116
  ),
116
- /* @__PURE__ */ i(X, { children: [
117
- /* @__PURE__ */ t(Z, { asChild: !0, children: /* @__PURE__ */ t(
118
- "span",
119
- {
120
- className: k(
121
- "min-w-0 flex-1 truncate relative z-10",
122
- ge && "underline decoration-primary decoration-2 underline-offset-2"
123
- ),
124
- children: e.viewName
125
- }
126
- ) }),
127
- /* @__PURE__ */ t(q, { variant: "tertiary", side: "right", children: e.viewName })
128
- ] }),
129
- /* @__PURE__ */ i("div", { className: "flex shrink-0 items-center gap-0.5 relative z-10", children: [
130
- e.isEditable ? /* @__PURE__ */ t(
131
- m,
132
- {
133
- type: "button",
134
- variant: "ghost",
135
- size: "iconSm",
136
- className: "text-foreground hover:text-content-charcoal",
137
- "aria-label": a("dataTable.savedViewsEdit"),
138
- onClick: (l) => {
139
- l.stopPropagation(), l.preventDefault(), p(!1), de?.(e, { activeView: d });
140
- },
141
- children: /* @__PURE__ */ t(Ne, { className: "size-3.5" })
142
- }
143
- ) : null,
144
- e.isDeletable ? /* @__PURE__ */ t(
145
- m,
146
- {
147
- type: "button",
148
- variant: "ghost",
149
- size: "iconSm",
150
- className: "text-foreground hover:text-destructive",
151
- "aria-label": a("dataTable.savedViewsDelete"),
152
- onClick: (l) => {
153
- l.stopPropagation(), l.preventDefault(), p(!1), $(e);
154
- },
155
- children: /* @__PURE__ */ t(Te, { className: "size-3.5" })
156
- }
157
- ) : null,
158
- e.hideDefaultStar ? null : e.isDefaultView ? /* @__PURE__ */ t(
159
- m,
160
- {
161
- type: "button",
162
- variant: "ghost",
163
- size: "iconSm",
164
- className: "text-warning hover:text-badge-warning-ink disabled:opacity-50",
165
- "aria-label": a("dataTable.savedViewsDefaultAction"),
166
- disabled: s,
167
- onClick: (l) => {
168
- l.stopPropagation(), l.preventDefault(), s || (y(e.id), setTimeout(() => y(null), 1200), Q?.(e, { activeView: d }));
169
- },
170
- children: s ? /* @__PURE__ */ t("div", { className: "size-3.5 animate-spin motion-reduce:animate-none rounded-full border-2 border-warning border-t-transparent" }) : /* @__PURE__ */ t(I, { className: "size-3.5 fill-current text-warning" })
171
- }
172
- ) : /* @__PURE__ */ t(
173
- m,
174
- {
175
- type: "button",
176
- variant: "ghost",
177
- size: "iconSm",
178
- className: "text-warning hover:text-badge-warning-ink disabled:opacity-50",
179
- "aria-label": a("dataTable.savedViewsSetDefault"),
180
- disabled: s,
181
- onClick: (l) => {
182
- l.stopPropagation(), l.preventDefault(), s || (y(e.id), setTimeout(() => y(null), 1200), Q?.(e, { activeView: d }));
183
- },
184
- children: s ? /* @__PURE__ */ t("div", { className: "size-3.5 animate-spin motion-reduce:animate-none rounded-full border-2 border-warning border-t-transparent" }) : /* @__PURE__ */ t(I, { className: "size-3.5 text-warning" })
185
- }
186
- )
187
- ] })
117
+ /* @__PURE__ */ t(
118
+ Z,
119
+ {
120
+ triggerClassName: m(
121
+ "relative z-10 block min-w-0 w-full truncate text-start",
122
+ W && (e.isDefaultView && g ? "pe-7 group-hover:pe-[4.75rem]" : "pe-0 group-hover:pe-[4.75rem]"),
123
+ ve && "underline decoration-primary decoration-2 underline-offset-2"
124
+ ),
125
+ content: e.viewName,
126
+ side: "right",
127
+ variant: "tertiary",
128
+ children: e.viewName
129
+ }
130
+ ),
131
+ W ? /* @__PURE__ */ l(
132
+ "div",
133
+ {
134
+ className: m(
135
+ "absolute end-2 top-1/2 z-20 flex -translate-y-1/2 items-center gap-0.5 transition-opacity",
136
+ e.isDefaultView && g ? "opacity-100" : "pointer-events-none opacity-0 group-hover:pointer-events-auto group-hover:opacity-100"
137
+ ),
138
+ children: [
139
+ e.isEditable ? /* @__PURE__ */ t(
140
+ u,
141
+ {
142
+ type: "button",
143
+ variant: "ghost",
144
+ size: "iconSm",
145
+ className: m(
146
+ "text-foreground hover:text-content-charcoal",
147
+ e.isDefaultView && g && "opacity-0 group-hover:opacity-100"
148
+ ),
149
+ "aria-label": a("dataTable.savedViewsEdit"),
150
+ onClick: (r) => {
151
+ r.stopPropagation(), r.preventDefault(), f(!1), de?.(e, { activeView: d });
152
+ },
153
+ children: /* @__PURE__ */ t(Te, { className: "size-3.5" })
154
+ }
155
+ ) : null,
156
+ e.isDeletable ? /* @__PURE__ */ t(
157
+ u,
158
+ {
159
+ type: "button",
160
+ variant: "ghost",
161
+ size: "iconSm",
162
+ className: m(
163
+ "text-foreground hover:text-destructive",
164
+ e.isDefaultView && g && "opacity-0 group-hover:opacity-100"
165
+ ),
166
+ "aria-label": a("dataTable.savedViewsDelete"),
167
+ onClick: (r) => {
168
+ r.stopPropagation(), r.preventDefault(), f(!1), $(e);
169
+ },
170
+ children: /* @__PURE__ */ t(Ve, { className: "size-3.5" })
171
+ }
172
+ ) : null,
173
+ g ? e.isDefaultView ? /* @__PURE__ */ t(
174
+ u,
175
+ {
176
+ type: "button",
177
+ variant: "ghost",
178
+ size: "iconSm",
179
+ className: "text-warning hover:text-badge-warning-ink disabled:opacity-50",
180
+ "aria-label": a("dataTable.savedViewsDefaultAction"),
181
+ disabled: s,
182
+ onClick: (r) => {
183
+ r.stopPropagation(), r.preventDefault(), s || (N(e.id), setTimeout(() => N(null), 1200), Q?.(e, { activeView: d }));
184
+ },
185
+ children: s ? /* @__PURE__ */ t("div", { className: "size-3.5 animate-spin motion-reduce:animate-none rounded-full border-2 border-warning border-t-transparent" }) : /* @__PURE__ */ t(I, { className: "size-3.5 fill-current text-warning" })
186
+ }
187
+ ) : /* @__PURE__ */ t(
188
+ u,
189
+ {
190
+ type: "button",
191
+ variant: "ghost",
192
+ size: "iconSm",
193
+ className: "text-warning hover:text-badge-warning-ink disabled:opacity-50",
194
+ "aria-label": a("dataTable.savedViewsSetDefault"),
195
+ disabled: s,
196
+ onClick: (r) => {
197
+ r.stopPropagation(), r.preventDefault(), s || (N(e.id), setTimeout(() => N(null), 1200), Q?.(e, { activeView: d }));
198
+ },
199
+ children: s ? /* @__PURE__ */ t("div", { className: "size-3.5 animate-spin motion-reduce:animate-none rounded-full border-2 border-warning border-t-transparent" }) : /* @__PURE__ */ t(I, { className: "size-3.5 text-warning" })
200
+ }
201
+ ) : null
202
+ ]
203
+ }
204
+ ) : null
188
205
  ]
189
206
  },
190
207
  c
191
208
  );
192
209
  };
193
- return /* @__PURE__ */ i(W, { children: [
194
- /* @__PURE__ */ i(
210
+ return /* @__PURE__ */ l(X, { children: [
211
+ /* @__PURE__ */ l(
195
212
  "div",
196
213
  {
197
214
  "data-component": "data-table-saved-views",
198
- className: k(
215
+ className: m(
199
216
  "saved-view-bar-gradient mb-2 mx-4 flex min-w-0 flex-nowrap items-center justify-between gap-2 rounded-lg px-2 py-3",
200
217
  re
201
218
  ),
202
219
  children: [
203
- L ? /* @__PURE__ */ i("div", { className: "flex min-w-0 flex-1 items-center gap-1 overflow-hidden", children: [
204
- /* @__PURE__ */ t(B, { className: "h-6 w-24 rounded-full bg-scrim-skeleton" }),
205
- /* @__PURE__ */ t(B, { className: "h-6 w-6 shrink-0 rounded-md bg-scrim-skeleton" })
206
- ] }) : ve ? /* @__PURE__ */ t("div", { className: "flex min-w-0 flex-1 items-center justify-start gap-1 overflow-hidden", children: /* @__PURE__ */ i(Ve, { open: u, onOpenChange: be, children: [
207
- /* @__PURE__ */ t(Ce, { asChild: !0, children: /* @__PURE__ */ i(
220
+ L ? /* @__PURE__ */ l("div", { className: "flex min-w-0 flex-1 items-center gap-1 overflow-hidden", children: [
221
+ /* @__PURE__ */ t(R, { className: "h-6 w-24 rounded-full bg-scrim-skeleton" }),
222
+ /* @__PURE__ */ t(R, { className: "h-6 w-6 shrink-0 rounded-md bg-scrim-skeleton" })
223
+ ] }) : ge ? /* @__PURE__ */ t("div", { className: "flex min-w-0 flex-1 items-center justify-start gap-1 overflow-hidden", children: /* @__PURE__ */ l(De, { open: p, onOpenChange: be, children: [
224
+ /* @__PURE__ */ t(Se, { asChild: !0, children: /* @__PURE__ */ l(
208
225
  "button",
209
226
  {
210
227
  type: "button",
211
228
  className: "inline-flex min-w-0 max-w-full cursor-pointer items-center gap-1 overflow-hidden rounded-md border-none bg-transparent p-0 text-left outline-none focus-visible:ring-2 focus-visible:ring-focus-ring focus-visible:ring-offset-2",
212
- "aria-expanded": u,
229
+ "aria-expanded": p,
213
230
  "aria-haspopup": "dialog",
214
231
  "aria-label": a("dataTable.savedViewsOpenMenu"),
215
232
  children: [
216
- /* @__PURE__ */ i(X, { children: [
217
- /* @__PURE__ */ t(Z, { asChild: !0, children: /* @__PURE__ */ t(
218
- j,
219
- {
220
- color: "success",
221
- variant: "outline",
222
- className: "w-fit max-w-full min-w-0 shrink font-['Manrope']",
223
- children: _
224
- }
225
- ) }),
226
- /* @__PURE__ */ t(q, { variant: "tertiary", side: "top", children: _ })
227
- ] }),
233
+ /* @__PURE__ */ t(
234
+ Z,
235
+ {
236
+ as: "div",
237
+ triggerClassName: m(
238
+ ze({
239
+ variant: "outline",
240
+ color: "success",
241
+ size: "md",
242
+ shape: "circle",
243
+ layout: "default"
244
+ }),
245
+ "w-fit max-w-full min-w-0 shrink truncate font-['Manrope']"
246
+ ),
247
+ content: _,
248
+ side: "top",
249
+ variant: "tertiary",
250
+ children: _
251
+ }
252
+ ),
228
253
  /* @__PURE__ */ t(
229
254
  "span",
230
255
  {
231
- className: k(
256
+ className: m(
232
257
  "flex size-6 shrink-0 items-center justify-center rounded-md bg-canvas-elevated transition-transform duration-200",
233
- u && "rotate-180"
258
+ p && "rotate-180"
234
259
  ),
235
260
  "aria-hidden": !0,
236
- children: /* @__PURE__ */ t(xe, { className: "size-3.5 rotate-90 text-content-charcoal" })
261
+ children: /* @__PURE__ */ t(ye, { className: "size-3.5 rotate-90 text-content-charcoal" })
237
262
  }
238
263
  )
239
264
  ]
240
265
  }
241
266
  ) }),
242
267
  /* @__PURE__ */ t(
243
- Se,
268
+ Ce,
244
269
  {
245
270
  align: "start",
246
271
  className: "z-[50] w-[min(100vw-24px,280px)] p-0 shadow-elevation-floating overflow-visible",
247
272
  sideOffset: 8,
248
- children: /* @__PURE__ */ i("div", { className: "flex flex-col py-2", children: [
249
- /* @__PURE__ */ i("div", { className: "flex items-start justify-between gap-2 px-3 pb-2", children: [
273
+ children: /* @__PURE__ */ l("div", { className: "flex flex-col py-2", children: [
274
+ /* @__PURE__ */ l("div", { className: "flex items-start justify-between gap-2 px-3 pb-2", children: [
250
275
  /* @__PURE__ */ t("span", { className: "text-sm font-medium text-content-charcoal font-['Manrope']", children: a("dataTable.savedViewsTitle") }),
251
- /* @__PURE__ */ i("div", { className: "flex shrink-0 items-center gap-1 text-xs font-medium text-content-tertiary font-['Manrope']", children: [
276
+ /* @__PURE__ */ l("div", { className: "flex shrink-0 items-center gap-1 text-xs font-medium text-content-tertiary font-['Manrope']", children: [
252
277
  /* @__PURE__ */ t(I, { className: "size-3.5 fill-current text-warning" }),
253
278
  a("dataTable.savedViewsDefault")
254
279
  ] })
255
280
  ] }),
256
- /* @__PURE__ */ i("div", { className: "flex flex-wrap gap-1.5 px-3 pb-2", children: [
281
+ /* @__PURE__ */ l("div", { className: "flex flex-wrap gap-1.5 px-3 pb-2", children: [
257
282
  /* @__PURE__ */ t(
258
283
  "button",
259
284
  {
260
285
  type: "button",
261
286
  className: "border-none bg-transparent p-0",
262
- onClick: () => S("All"),
287
+ onClick: () => C("All"),
263
288
  children: /* @__PURE__ */ t(
264
- j,
289
+ q,
265
290
  {
266
- color: v === "All" ? "primary" : "neutral",
291
+ color: x === "All" ? "primary" : "neutral",
267
292
  variant: "outline",
268
293
  size: "sm",
269
294
  className: "cursor-pointer font-['Manrope']",
@@ -277,11 +302,11 @@ const Ae = ["default", "active", "system"], _e = ({
277
302
  {
278
303
  type: "button",
279
304
  className: "border-none bg-transparent p-0",
280
- onClick: () => S(e.value),
305
+ onClick: () => C(e.value),
281
306
  children: /* @__PURE__ */ t(
282
- j,
307
+ q,
283
308
  {
284
- color: v === e.value ? "primary" : "neutral",
309
+ color: x === e.value ? "primary" : "neutral",
285
310
  variant: "outline",
286
311
  size: "sm",
287
312
  className: "cursor-pointer font-['Manrope']",
@@ -293,14 +318,14 @@ const Ae = ["default", "active", "system"], _e = ({
293
318
  ))
294
319
  ] }),
295
320
  /* @__PURE__ */ t("div", { className: "px-3 pb-2", children: /* @__PURE__ */ t(
296
- ze,
321
+ Me,
297
322
  {
298
323
  size: "sm",
299
324
  placeholder: a("dataTable.savedViewsSearchPlaceholder"),
300
- value: w,
325
+ value: T,
301
326
  onChange: (e) => z(e.target.value),
302
327
  prefix: /* @__PURE__ */ t(
303
- ye,
328
+ we,
304
329
  {
305
330
  className: "size-4 shrink-0 text-secondary-foreground",
306
331
  "aria-hidden": !0
@@ -310,18 +335,18 @@ const Ae = ["default", "active", "system"], _e = ({
310
335
  "aria-label": a("dataTable.savedViewsSearchPlaceholder")
311
336
  }
312
337
  ) }),
313
- /* @__PURE__ */ t("div", { className: "min-h-[72px] px-1", children: U || (L ? /* @__PURE__ */ t("div", { className: "flex max-h-[160px] flex-col gap-2 overflow-y-auto px-2 py-1", children: [1, 2, 3, 4, 5].map((e) => /* @__PURE__ */ t(B, { className: "h-9 w-full rounded-lg" }, e)) }) : A.length === 0 && h.length === 0 ? /* @__PURE__ */ t("div", { className: "flex min-h-[100px] flex-col items-center justify-center px-4 py-6 text-center", children: /* @__PURE__ */ t("span", { className: "text-sm leading-relaxed text-content-tertiary font-['Manrope']", children: a("dataTable.savedViewsEmptyList") }) }) : /* @__PURE__ */ i("div", { className: "flex max-h-[220px] flex-col gap-0 overflow-y-auto", children: [
314
- h.length > 0 ? /* @__PURE__ */ t("div", { className: "flex flex-col px-1 pb-1 ", children: h.map(
338
+ /* @__PURE__ */ t("div", { className: "min-h-[72px] px-1", children: U || (L ? /* @__PURE__ */ t("div", { className: "flex max-h-[160px] flex-col gap-2 overflow-y-auto px-2 py-1", children: [1, 2, 3, 4, 5].map((e) => /* @__PURE__ */ t(R, { className: "h-9 w-full rounded-lg" }, e)) }) : P.length === 0 && b.length === 0 ? /* @__PURE__ */ t("div", { className: "flex min-h-[100px] flex-col items-center justify-center px-4 py-6 text-center", children: /* @__PURE__ */ t("span", { className: "text-sm leading-relaxed text-content-tertiary font-['Manrope']", children: a("dataTable.savedViewsEmptyList") }) }) : /* @__PURE__ */ l("div", { className: "flex max-h-[220px] flex-col gap-0 overflow-y-auto", children: [
339
+ b.length > 0 ? /* @__PURE__ */ t("div", { className: "flex flex-col px-1 pb-1 ", children: b.map(
315
340
  (e) => H(
316
341
  e,
317
342
  "priority",
318
343
  `priority-${e.id}`
319
344
  )
320
345
  ) }) : null,
321
- h.length > 0 && P.length > 0 ? /* @__PURE__ */ t(ee, { className: "mb-2 bg-stroke-hairline" }) : null,
322
- P.length > 0 ? /* @__PURE__ */ i(W, { children: [
346
+ b.length > 0 && O.length > 0 ? /* @__PURE__ */ t(ee, { className: "mb-2 bg-stroke-hairline" }) : null,
347
+ O.length > 0 ? /* @__PURE__ */ l(X, { children: [
323
348
  /* @__PURE__ */ t("div", { className: "px-3 pb-1.5 pt-0.5 text-xs font-medium tracking-wide text-content-placeholder font-['Manrope']", children: a("dataTable.savedViewsAllSavedViews") }),
324
- /* @__PURE__ */ t("div", { className: "flex flex-col px-1 pb-1", children: P.map(
349
+ /* @__PURE__ */ t("div", { className: "flex flex-col px-1 pb-1", children: O.map(
325
350
  (e) => H(
326
351
  e,
327
352
  "list",
@@ -331,9 +356,9 @@ const Ae = ["default", "active", "system"], _e = ({
331
356
  ] }) : null
332
357
  ] })) }),
333
358
  /* @__PURE__ */ t(ee, { className: "my-1 bg-[var(--color-border-hairline)]" }),
334
- /* @__PURE__ */ i("div", { className: "flex justify-end gap-2 px-3 pt-1", children: [
359
+ /* @__PURE__ */ l("div", { className: "flex justify-end gap-2 px-3 pt-1", children: [
335
360
  /* @__PURE__ */ t(
336
- m,
361
+ u,
337
362
  {
338
363
  type: "button",
339
364
  variant: "tertiary",
@@ -343,12 +368,12 @@ const Ae = ["default", "active", "system"], _e = ({
343
368
  }
344
369
  ),
345
370
  /* @__PURE__ */ t(
346
- m,
371
+ u,
347
372
  {
348
373
  type: "button",
349
374
  variant: "default",
350
375
  size: "md",
351
- disabled: ie || N === d?.id,
376
+ disabled: ie || V === d?.id,
352
377
  onClick: fe,
353
378
  children: a("dataTable.savedViewsApply")
354
379
  }
@@ -357,19 +382,19 @@ const Ae = ["default", "active", "system"], _e = ({
357
382
  ] })
358
383
  }
359
384
  )
360
- ] }) }) : /* @__PURE__ */ i("div", { className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden text-content-tertiary", children: [
361
- /* @__PURE__ */ t(we, { className: "size-4 shrink-0", "aria-hidden": !0 }),
385
+ ] }) }) : /* @__PURE__ */ l("div", { className: "flex min-w-0 flex-1 items-center gap-2 overflow-hidden text-content-tertiary", children: [
386
+ /* @__PURE__ */ t(Ne, { className: "size-4 shrink-0", "aria-hidden": !0 }),
362
387
  /* @__PURE__ */ t("span", { className: "text-sm font-medium font-['Manrope']", children: a("dataTable.savedViewsNoneYet") })
363
388
  ] }),
364
389
  /* @__PURE__ */ t(
365
- m,
390
+ u,
366
391
  {
367
392
  type: "button",
368
393
  variant: "tertiary",
369
394
  size: "sm",
370
395
  className: "shrink-0 font-['Manrope']",
371
396
  onClick: () => {
372
- p(!1), le?.({ activeView: d });
397
+ f(!1), le?.({ activeView: d });
373
398
  },
374
399
  children: a("dataTable.savedViewsSave")
375
400
  }
@@ -378,25 +403,25 @@ const Ae = ["default", "active", "system"], _e = ({
378
403
  }
379
404
  ),
380
405
  /* @__PURE__ */ t(
381
- De,
406
+ Ae,
382
407
  {
383
408
  variant: "destructive",
384
- open: g !== null,
409
+ open: y !== null,
385
410
  onOpenChange: (e) => {
386
411
  e || $(null);
387
412
  },
388
413
  title: a("dataTable.savedViewsDeleteConfirmTitle"),
389
- description: g ? a("dataTable.savedViewsDeleteConfirmDescription", {
390
- viewName: g.viewName
414
+ description: y ? a("dataTable.savedViewsDeleteConfirmDescription", {
415
+ viewName: y.viewName
391
416
  }) : void 0,
392
417
  confirmLabel: a("dataTable.savedViewsDeleteConfirmButton"),
393
418
  onConfirm: () => {
394
- g && ce?.(g, { activeView: d });
419
+ y && ce?.(y, { activeView: d });
395
420
  }
396
421
  }
397
422
  )
398
423
  ] });
399
424
  };
400
425
  export {
401
- _e as DataTableSavedViews
426
+ Ge as DataTableSavedViews
402
427
  };
@@ -4,5 +4,6 @@ export interface ExpandableListItemAttributesProps {
4
4
  title?: string;
5
5
  maxVisibleTags?: number;
6
6
  formatOverflow?: ExpandableListItemAttributesSection["formatOverflow"];
7
+ externalCopyFunction?: ExpandableListItemAttributesSection["externalCopyFunction"];
7
8
  }
8
- export declare function ExpandableListItemAttributes({ tags, title, maxVisibleTags, formatOverflow, }: ExpandableListItemAttributesProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function ExpandableListItemAttributes({ tags, title, maxVisibleTags, formatOverflow, externalCopyFunction, }: ExpandableListItemAttributesProps): import("react/jsx-runtime").JSX.Element;