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,21 +1,22 @@
1
- import { jsx as e, jsxs as t } from "react/jsx-runtime";
1
+ import { jsx as e, jsxs as a } from "react/jsx-runtime";
2
2
  import v from "react";
3
3
  import { Sheet as b, SheetContent as g, SheetDescription as N, SheetTitle as y, SheetClose as w } from "../../feedback/sheet/sheet.js";
4
4
  import { createCompoundPart as k } from "../../../lib/primitives/create-compound.js";
5
5
  import { cn as o } from "../../../lib/utils.js";
6
6
  import { MultiColorFilter as C, Cross as F, InfoBadge as u } from "impact-nova-icons";
7
7
  import { Button as P } from "../../primitives/button/button.js";
8
- import { Tooltip as d, TooltipTrigger as h, TooltipContent as f } from "../../feedback/tooltip/tooltip.js";
8
+ import { Tooltip as d, TooltipTrigger as f, TooltipContent as h } from "../../feedback/tooltip/tooltip.js";
9
9
  import { Kbd as S } from "../../primitives/kbd/kbd.js";
10
+ import { OverflowTooltip as j } from "../../feedback/tooltip/overflow-tooltip.js";
10
11
  import { useImpactNovaI18n as x } from "../../../i18n/use-impact-nova-i18n.js";
11
- import { useOverlayHostDismissNestedLayersOnNavigation as j } from "../../../lib/overlay/overlay-portal-context.js";
12
- const I = ({
12
+ import { useOverlayHostDismissNestedLayersOnNavigation as I } from "../../../lib/overlay/overlay-portal-context.js";
13
+ const T = ({
13
14
  title: i,
14
15
  children: n,
15
16
  className: l
16
17
  }) => {
17
18
  const { t: c } = x();
18
- return /* @__PURE__ */ t(
19
+ return /* @__PURE__ */ a(
19
20
  "div",
20
21
  {
21
22
  "data-component": "filter-panel-header",
@@ -24,7 +25,7 @@ const I = ({
24
25
  l
25
26
  ),
26
27
  children: [
27
- /* @__PURE__ */ t("div", { className: "flex items-center gap-3", children: [
28
+ /* @__PURE__ */ a("div", { className: "flex items-center gap-3", children: [
28
29
  /* @__PURE__ */ e(
29
30
  "div",
30
31
  {
@@ -35,7 +36,7 @@ const I = ({
35
36
  ),
36
37
  /* @__PURE__ */ e(y, { className: "text-lg font-bold text-content", children: i })
37
38
  ] }),
38
- /* @__PURE__ */ t("div", { className: "flex items-center gap-2", children: [
39
+ /* @__PURE__ */ a("div", { className: "flex items-center gap-2", children: [
39
40
  n,
40
41
  /* @__PURE__ */ e(w, { asChild: !0, children: /* @__PURE__ */ e(
41
42
  P,
@@ -52,7 +53,7 @@ const I = ({
52
53
  ]
53
54
  }
54
55
  );
55
- }, R = ({
56
+ }, _ = ({
56
57
  open: i,
57
58
  onOpenChange: n,
58
59
  title: l = "Filter panel",
@@ -60,8 +61,8 @@ const I = ({
60
61
  header: s,
61
62
  sidebar: p,
62
63
  className: m,
63
- preventClose: a = !1
64
- }) => /* @__PURE__ */ e(b, { open: i, onOpenChange: n, children: /* @__PURE__ */ t(
64
+ preventClose: t = !1
65
+ }) => /* @__PURE__ */ e(b, { open: i, onOpenChange: n, children: /* @__PURE__ */ a(
65
66
  g,
66
67
  {
67
68
  side: "right",
@@ -70,30 +71,30 @@ const I = ({
70
71
  m
71
72
  ),
72
73
  onInteractOutside: (r) => {
73
- a && r.preventDefault();
74
+ t && r.preventDefault();
74
75
  },
75
76
  onEscapeKeyDown: (r) => {
76
- a && r.preventDefault();
77
+ t && r.preventDefault();
77
78
  },
78
79
  children: [
79
80
  /* @__PURE__ */ e(N, { className: "sr-only", children: "Select filters to apply to the current view." }),
80
- /* @__PURE__ */ t("div", { className: "flex h-full flex-col bg-canvas-elevated", "data-component": "filter-panel", children: [
81
- s || /* @__PURE__ */ e(I, { title: l }),
82
- /* @__PURE__ */ t("div", { className: "flex flex-1 overflow-hidden", children: [
81
+ /* @__PURE__ */ a("div", { className: "flex h-full flex-col bg-canvas-elevated", "data-component": "filter-panel", children: [
82
+ s || /* @__PURE__ */ e(T, { title: l }),
83
+ /* @__PURE__ */ a("div", { className: "flex flex-1 overflow-hidden", children: [
83
84
  p,
84
85
  /* @__PURE__ */ e("div", { className: "flex flex-col flex-1 overflow-hidden", children: c })
85
86
  ] })
86
87
  ] })
87
88
  ]
88
89
  }
89
- ) }), W = ({
90
+ ) }), q = ({
90
91
  items: i,
91
92
  activeTab: n,
92
93
  onTabChange: l,
93
94
  className: c
94
95
  }) => {
95
- const { t: s } = x(), p = j(), m = (a) => {
96
- a !== n && p(), l(a);
96
+ const { t: s } = x(), p = I(), m = (t) => {
97
+ t !== n && p(), l(t);
97
98
  };
98
99
  return /* @__PURE__ */ e(
99
100
  "div",
@@ -103,26 +104,26 @@ const I = ({
103
104
  "flex w-[200px] shrink-0 flex-col border-r bg-navigation-canvas",
104
105
  c
105
106
  ),
106
- children: /* @__PURE__ */ e("div", { className: "flex flex-1 flex-col py-2 gap-1 overflow-y-auto", children: i.map((a) => {
107
- const r = n === a.id;
108
- return /* @__PURE__ */ t(v.Fragment, { children: [
109
- a.separator && /* @__PURE__ */ e("div", { className: "my-2 h-px bg-stroke-hairline" }),
110
- /* @__PURE__ */ t(
107
+ children: /* @__PURE__ */ e("div", { className: "flex flex-1 flex-col py-2 gap-1 overflow-y-auto", children: i.map((t) => {
108
+ const r = n === t.id;
109
+ return /* @__PURE__ */ a(v.Fragment, { children: [
110
+ t.separator && /* @__PURE__ */ e("div", { className: "my-2 h-px bg-stroke-hairline" }),
111
+ /* @__PURE__ */ a(
111
112
  "button",
112
113
  {
113
114
  type: "button",
114
115
  autoFocus: r,
115
- onClick: () => m(a.id),
116
+ onClick: () => m(t.id),
116
117
  "data-component": "filter-panel-sidebar-item",
117
118
  "data-active": r ? "true" : "false",
118
- "data-tab": a.id,
119
- "data-shortcut-id": a.shortcutId,
119
+ "data-tab": t.id,
120
+ "data-shortcut-id": t.shortcutId,
120
121
  className: o(
121
122
  "group flex items-center justify-between px-3 py-[6px] mx-2 rounded-lg text-left text-sm font-medium transition-colors",
122
123
  r ? "bg-canvas-accent text-brand" : "text-content-secondary hover:bg-canvas-accent"
123
124
  ),
124
125
  children: [
125
- /* @__PURE__ */ t("div", { className: "flex items-center gap-2 min-w-0 flex-1", children: [
126
+ /* @__PURE__ */ a("div", { className: "flex items-center gap-2 min-w-0 flex-1", children: [
126
127
  /* @__PURE__ */ e(
127
128
  "span",
128
129
  {
@@ -130,74 +131,80 @@ const I = ({
130
131
  "shrink-0",
131
132
  r ? "text-brand" : "text-content-secondary"
132
133
  ),
133
- children: a.icon
134
+ children: t.icon
134
135
  }
135
136
  ),
136
- /* @__PURE__ */ t("div", { className: "flex items-center gap-1 min-w-0", children: [
137
- /* @__PURE__ */ t(d, { children: [
138
- /* @__PURE__ */ e(h, { asChild: !0, children: /* @__PURE__ */ e("span", { className: "truncate font-['Manrope']", children: a.label }) }),
139
- /* @__PURE__ */ e(f, { variant: "tertiary", side: "right", children: a.tooltipKeybinding ? /* @__PURE__ */ t("span", { className: "flex items-center gap-2", children: [
140
- a.label,
141
- " ",
142
- /* @__PURE__ */ e(
143
- S,
144
- {
145
- keybinding: a.tooltipKeybinding,
146
- size: "sm"
147
- }
148
- )
149
- ] }) : a.label })
150
- ] }),
151
- a.isRequired && /* @__PURE__ */ e("span", { className: "shrink-0 text-danger", children: "*" })
137
+ /* @__PURE__ */ a("div", { className: "flex items-center gap-1 min-w-0", children: [
138
+ /* @__PURE__ */ e(
139
+ j,
140
+ {
141
+ triggerClassName: "truncate font-['Manrope'] block min-w-0",
142
+ content: t.tooltipKeybinding ? /* @__PURE__ */ a("span", { className: "flex items-center gap-2", children: [
143
+ t.label,
144
+ " ",
145
+ /* @__PURE__ */ e(
146
+ S,
147
+ {
148
+ keybinding: t.tooltipKeybinding,
149
+ size: "sm"
150
+ }
151
+ )
152
+ ] }) : t.label,
153
+ side: "right",
154
+ variant: "tertiary",
155
+ children: t.label
156
+ }
157
+ ),
158
+ t.isRequired && /* @__PURE__ */ e("span", { className: "shrink-0 text-danger", children: "*" })
152
159
  ] })
153
160
  ] }),
154
- /* @__PURE__ */ t("div", { className: "flex items-center gap-1 shrink-0 ml-1", children: [
155
- a.count !== void 0 && a.count > 0 && /* @__PURE__ */ t(d, { children: [
156
- /* @__PURE__ */ e(h, { asChild: !0, children: /* @__PURE__ */ e(
161
+ /* @__PURE__ */ a("div", { className: "flex items-center gap-1 shrink-0 ml-1", children: [
162
+ t.count !== void 0 && t.count > 0 && /* @__PURE__ */ a(d, { children: [
163
+ /* @__PURE__ */ e(f, { asChild: !0, children: /* @__PURE__ */ e(
157
164
  "span",
158
165
  {
159
166
  className: o(
160
167
  "inline-flex h-5 min-w-5 items-center justify-center rounded-full px-1.5 text-[11px] font-medium tabular-nums leading-none shrink-0",
161
168
  r ? "bg-canvas-elevated text-brand border border-stroke-subtle" : "bg-brand-tint border border-stroke-subtle"
162
169
  ),
163
- children: a.count
170
+ children: t.count
164
171
  }
165
172
  ) }),
166
- /* @__PURE__ */ e(f, { variant: "tertiary", side: "top", children: s(
167
- a.countBadgeContext === "savedFiltersTotal" ? "filterPanel.savedFiltersAvailableCount" : "filterPanel.filtersAppliedCount",
168
- { count: a.count }
173
+ /* @__PURE__ */ e(h, { variant: "tertiary", side: "top", children: s(
174
+ t.countBadgeContext === "savedFiltersTotal" ? "filterPanel.savedFiltersAvailableCount" : "filterPanel.filtersAppliedCount",
175
+ { count: t.count }
169
176
  ) })
170
177
  ] }),
171
- a.hasError && /* @__PURE__ */ t(d, { children: [
172
- /* @__PURE__ */ e(h, { asChild: !0, children: /* @__PURE__ */ e(u, { className: "h-5 w-5 shrink-0 text-danger" }) }),
173
- /* @__PURE__ */ e(f, { variant: "tertiary", children: s("filterPanel.tabContainsErrors") })
178
+ t.hasError && /* @__PURE__ */ a(d, { children: [
179
+ /* @__PURE__ */ e(f, { asChild: !0, children: /* @__PURE__ */ e(u, { className: "h-5 w-5 shrink-0 text-danger" }) }),
180
+ /* @__PURE__ */ e(h, { variant: "tertiary", children: s("filterPanel.tabContainsErrors") })
174
181
  ] }),
175
- a.hasWarning && /* @__PURE__ */ t(d, { children: [
176
- /* @__PURE__ */ e(h, { asChild: !0, children: /* @__PURE__ */ e(u, { className: "h-5 w-5 shrink-0 text-warning" }) }),
177
- /* @__PURE__ */ e(f, { variant: "tertiary", children: s("filterPanel.tabHasWarnings") })
182
+ t.hasWarning && /* @__PURE__ */ a(d, { children: [
183
+ /* @__PURE__ */ e(f, { asChild: !0, children: /* @__PURE__ */ e(u, { className: "h-5 w-5 shrink-0 text-warning" }) }),
184
+ /* @__PURE__ */ e(h, { variant: "tertiary", children: s("filterPanel.tabHasWarnings") })
178
185
  ] }),
179
- a.hasInfo && /* @__PURE__ */ t(d, { children: [
180
- /* @__PURE__ */ e(h, { asChild: !0, children: /* @__PURE__ */ e(u, { className: "h-5 w-5 shrink-0 text-content-icon" }) }),
181
- /* @__PURE__ */ e(f, { variant: "tertiary", children: s("filterPanel.additionalInfoAvailable") })
186
+ t.hasInfo && /* @__PURE__ */ a(d, { children: [
187
+ /* @__PURE__ */ e(f, { asChild: !0, children: /* @__PURE__ */ e(u, { className: "h-5 w-5 shrink-0 text-content-icon" }) }),
188
+ /* @__PURE__ */ e(h, { variant: "tertiary", children: s("filterPanel.additionalInfoAvailable") })
182
189
  ] })
183
190
  ] })
184
191
  ]
185
192
  }
186
193
  )
187
- ] }, a.id);
194
+ ] }, t.id);
188
195
  }) })
189
196
  }
190
197
  );
191
- }, _ = k("filter-panel", {
198
+ }, G = k("filter-panel", {
192
199
  part: "body",
193
200
  displayName: "FilterPanelBody",
194
201
  className: "flex flex-1 flex-col overflow-auto bg-canvas-elevated p-4",
195
202
  scrollSurface: !0
196
- }), q = ({
203
+ }), J = ({
197
204
  children: i,
198
205
  className: n,
199
206
  leftAction: l
200
- }) => /* @__PURE__ */ t(
207
+ }) => /* @__PURE__ */ a(
201
208
  "div",
202
209
  {
203
210
  "data-component": "filter-panel-footer",
@@ -212,9 +219,9 @@ const I = ({
212
219
  }
213
220
  );
214
221
  export {
215
- R as FilterPanel,
216
- _ as FilterPanelBody,
217
- q as FilterPanelFooter,
218
- I as FilterPanelHeader,
219
- W as FilterPanelSidebar
222
+ _ as FilterPanel,
223
+ G as FilterPanelBody,
224
+ J as FilterPanelFooter,
225
+ T as FilterPanelHeader,
226
+ q as FilterPanelSidebar
220
227
  };