impact-nova 2.1.0-alpha.9 → 2.2.1

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 (75) hide show
  1. package/README.md +6 -0
  2. package/dist/components/data/ag-grid-react/cell-renderers/editors/split-cell-editor.js +73 -94
  3. package/dist/components/data/ag-grid-react/cell-renderers/editors/split-cell-focus.d.ts +53 -0
  4. package/dist/components/data/ag-grid-react/cell-renderers/editors/split-cell-focus.js +98 -0
  5. package/dist/components/data/ag-grid-react/headers/column-menu/column-settings-menu.js +15 -13
  6. package/dist/components/data/ag-grid-react/headers/custom-header.js +56 -58
  7. package/dist/components/data/ag-grid-react/headers/custom-inner-header-group.d.ts +12 -0
  8. package/dist/components/data/ag-grid-react/headers/custom-inner-header-group.js +31 -0
  9. package/dist/components/data/ag-grid-react/headers/header-search-active-state.d.ts +10 -0
  10. package/dist/components/data/ag-grid-react/headers/header-search-active-state.js +38 -0
  11. package/dist/components/data/ag-grid-react/index.js +166 -163
  12. package/dist/components/data/ag-grid-react/notify-column-indicator-sync.d.ts +3 -4
  13. package/dist/components/data/ag-grid-react/theme.js +0 -2
  14. package/dist/components/data/data-table/data-table-column-list.js +1 -1
  15. package/dist/components/data/data-table/data-table-saved-views.js +1 -1
  16. package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +7 -6
  17. package/dist/components/data/nested-list/components/SortableItem.d.ts +3 -1
  18. package/dist/components/data/nested-list/components/SortableItem.js +111 -109
  19. package/dist/components/data-display/calendar/calendar-footer-emphasis.d.ts +28 -0
  20. package/dist/components/data-display/calendar/calendar-footer-emphasis.js +8 -0
  21. package/dist/components/data-display/calendar/calendar-footer.d.ts +4 -1
  22. package/dist/components/data-display/calendar/calendar-footer.js +60 -38
  23. package/dist/components/data-display/calendar/calendar.js +86 -82
  24. package/dist/components/data-display/calendar/calendar.types.d.ts +2 -0
  25. package/dist/components/data-display/calendar/use-calendar-state.d.ts +3 -0
  26. package/dist/components/feedback/tooltip/tab-tooltip-render.js +3 -2
  27. package/dist/components/flows/filter-strip/filter-strip.js +36 -29
  28. package/dist/components/flows/filter-strip/filter-summary.js +2 -2
  29. package/dist/components/forms/date-picker/date-input-behavior.d.ts +118 -0
  30. package/dist/components/forms/date-picker/date-input-behavior.js +164 -0
  31. package/dist/components/forms/date-picker/date-picker.js +202 -138
  32. package/dist/components/forms/date-picker/date-range-picker.js +302 -215
  33. package/dist/components/forms/date-picker/month-picker.js +160 -119
  34. package/dist/components/forms/date-picker/month-range-picker.js +302 -245
  35. package/dist/components/forms/date-picker/multi-date-picker.js +94 -80
  36. package/dist/components/forms/date-picker/multi-month-picker.js +97 -83
  37. package/dist/components/forms/date-picker/multi-week-picker.js +107 -93
  38. package/dist/components/forms/date-picker/week-picker.js +230 -140
  39. package/dist/components/forms/date-picker/week-range-picker.js +332 -226
  40. package/dist/components/forms/file-upload/file-upload.js +312 -174
  41. package/dist/components/forms/file-upload/file-upload.types.d.ts +17 -2
  42. package/dist/components/layout/dynamic-layout/dynamic-layout.variants.d.ts +1 -1
  43. package/dist/components/layout/header/header.js +45 -38
  44. package/dist/components/layout/horizontal-scroller/index.d.ts +1 -0
  45. package/dist/components/layout/horizontal-scroller/index.js +3 -2
  46. package/dist/components/ui/local-raster-icons/assets/excel-error-icon.webp.js +4 -0
  47. package/dist/components/ui/local-raster-icons/assets/file-upload-error.webp.js +4 -0
  48. package/dist/components/ui/local-raster-icons/rasterIcons.d.ts +2 -0
  49. package/dist/components/ui/local-raster-icons/rasterIcons.js +32 -22
  50. package/dist/components/ui/show.d.ts +10 -0
  51. package/dist/components/ui/show.js +7 -0
  52. package/dist/components/ui/show.types.d.ts +5 -0
  53. package/dist/i18n/defaultMessages.d.ts +17 -0
  54. package/dist/i18n/defaultMessages.js +29 -17
  55. package/dist/i18n/index.d.ts +1 -1
  56. package/dist/i18n/locales/de.js +12 -0
  57. package/dist/i18n/locales/es.js +12 -0
  58. package/dist/i18n/locales/hi.js +12 -0
  59. package/dist/i18n/locales/kn.js +12 -0
  60. package/dist/impact-nova-base.scss +6 -2
  61. package/dist/impact-nova-components.css +141 -16
  62. package/dist/impact-nova-tokens.scss +12 -0
  63. package/dist/impact-nova.css +1 -1
  64. package/dist/index.d.ts +2 -0
  65. package/dist/index.js +273 -271
  66. package/dist/lib/utils.js +40 -24
  67. package/dist/llms/rules/ag-grid.js +1 -1
  68. package/dist/llms/rules/installation.js +1 -1
  69. package/dist/llms/rules/requirements.js +1 -1
  70. package/dist/tailwind.config.js +36 -4
  71. package/dist/theme/tailwind-colors.js +3 -1
  72. package/package.json +15 -6
  73. package/tailwind.config.d.ts +3 -0
  74. package/dist/components/data/ag-grid-react/headers/custom-header-group.d.ts +0 -10
  75. package/dist/components/data/ag-grid-react/headers/custom-header-group.js +0 -58
@@ -1,14 +1,15 @@
1
- import { jsx as r, jsxs as c, Fragment as g } from "react/jsx-runtime";
1
+ import { jsx as r, jsxs as c, Fragment as h } from "react/jsx-runtime";
2
2
  import "react";
3
3
  import { cn as n } from "../../../lib/utils.js";
4
4
  import { createComponent as i } from "../../../lib/primitives/create-component.js";
5
- import { createCompoundPart as m } from "../../../lib/primitives/create-compound.js";
6
- import { Button as h } from "../../primitives/button/button.js";
7
- import { Badge as b } from "../../data-display/badge/badge.js";
8
- import { Separator as x } from "../../data-display/separator/separator.js";
9
- import { Alan as v, Bell as N } from "impact-nova-icons";
10
- import { useImpactNovaI18n as p } from "../../../i18n/use-impact-nova-i18n.js";
11
- const I = i(
5
+ import { createCompoundPart as p } from "../../../lib/primitives/create-compound.js";
6
+ import { Button as x } from "../../primitives/button/button.js";
7
+ import { ButtonIconTooltip as v } from "../../feedback/tooltip/button-icon-tooltip.js";
8
+ import { Badge as N } from "../../data-display/badge/badge.js";
9
+ import { Separator as H } from "../../data-display/separator/separator.js";
10
+ import { Alan as y, Bell as B } from "impact-nova-icons";
11
+ import { useImpactNovaI18n as f } from "../../../i18n/use-impact-nova-i18n.js";
12
+ const P = i(
12
13
  "Header",
13
14
  ({ className: a, children: e, ...t }, o) => /* @__PURE__ */ r(
14
15
  "header",
@@ -23,18 +24,18 @@ const I = i(
23
24
  children: e
24
25
  }
25
26
  )
26
- ), _ = m("header", {
27
+ ), R = p("header", {
27
28
  part: "left",
28
29
  displayName: "HeaderLeft",
29
30
  className: "flex flex-row items-center justify-start"
30
- }), C = m("header", {
31
+ }), F = p("header", {
31
32
  part: "right",
32
33
  displayName: "HeaderRight",
33
34
  className: "flex flex-row items-center justify-start gap-5"
34
- }), P = i(
35
+ }), q = i(
35
36
  "HeaderLogo",
36
37
  ({ className: a, children: e, href: t = "/", "aria-label": o, ...s }, d) => {
37
- const { t: l } = p();
38
+ const { t: l } = f();
38
39
  return /* @__PURE__ */ r(
39
40
  "a",
40
41
  {
@@ -50,15 +51,15 @@ const I = i(
50
51
  }
51
52
  );
52
53
  }
53
- ), R = i("HeaderSeparator", ({ className: a, ...e }, t) => /* @__PURE__ */ r(
54
- x,
54
+ ), D = i("HeaderSeparator", ({ className: a, ...e }, t) => /* @__PURE__ */ r(
55
+ H,
55
56
  {
56
57
  ref: t,
57
58
  orientation: "vertical",
58
59
  className: n("h-6 mx-3", a),
59
60
  ...e
60
61
  }
61
- )), T = i(
62
+ )), E = i(
62
63
  "HeaderTitle",
63
64
  ({ className: a, children: e, ...t }, o) => /* @__PURE__ */ r(
64
65
  "h1",
@@ -69,10 +70,10 @@ const I = i(
69
70
  children: e
70
71
  }
71
72
  )
72
- ), F = i(
73
+ ), G = i(
73
74
  "HeaderBadge",
74
75
  ({ className: a, children: e, style: t, ...o }, s) => /* @__PURE__ */ r(
75
- b,
76
+ N,
76
77
  {
77
78
  ref: s,
78
79
  size: "sm",
@@ -83,7 +84,7 @@ const I = i(
83
84
  children: e
84
85
  }
85
86
  )
86
- ), q = i(
87
+ ), J = i(
87
88
  "HeaderBotButton",
88
89
  ({ className: a, children: e, ...t }, o) => /* @__PURE__ */ r(
89
90
  "button",
@@ -97,13 +98,13 @@ const I = i(
97
98
  a
98
99
  ),
99
100
  ...t,
100
- children: e || /* @__PURE__ */ c(g, { children: [
101
- /* @__PURE__ */ r(v, { size: 20, className: "text-brand-foreground" }),
101
+ children: e || /* @__PURE__ */ c(h, { children: [
102
+ /* @__PURE__ */ r(y, { size: 20, className: "text-brand-foreground" }),
102
103
  /* @__PURE__ */ r("span", { className: "text-sm font-semibold leading-[20px] text-brand-foreground whitespace-nowrap", children: "Ask Alan" })
103
104
  ] })
104
105
  }
105
106
  )
106
- ), D = i(
107
+ ), K = i(
107
108
  "NotificationIconButton",
108
109
  ({
109
110
  className: a,
@@ -113,16 +114,13 @@ const I = i(
113
114
  tooltipKeybinding: s,
114
115
  ...d
115
116
  }, l) => {
116
- const { t: f } = p(), u = t === "stale";
117
- return /* @__PURE__ */ c(
118
- h,
117
+ const { t: u } = f(), g = t === "stale", m = u("notificationPanel.title"), b = /* @__PURE__ */ c(
118
+ x,
119
119
  {
120
120
  variant: "ghost",
121
121
  size: "icon",
122
122
  ref: l,
123
- "aria-label": f("notificationPanel.title"),
124
- tooltipSide: o,
125
- tooltipKeybinding: s,
123
+ "aria-label": m,
126
124
  "data-indicator": e ? "" : void 0,
127
125
  "data-indicator-variant": e ? t : void 0,
128
126
  className: n(
@@ -131,24 +129,33 @@ const I = i(
131
129
  ),
132
130
  ...d,
133
131
  children: [
134
- /* @__PURE__ */ r(N, { size: 24 }),
135
- e && (u ? /* @__PURE__ */ r("div", { className: "absolute top-1.5 right-1.5 size-2 pointer-events-none z-10 rounded-full bg-content-tertiary" }) : /* @__PURE__ */ c("div", { className: "absolute top-1.5 right-1.5 size-2.5 pointer-events-none z-10", children: [
132
+ /* @__PURE__ */ r(B, { size: 24 }),
133
+ e && (g ? /* @__PURE__ */ r("div", { className: "absolute top-1.5 right-1.5 size-2 pointer-events-none z-10 rounded-full bg-content-tertiary" }) : /* @__PURE__ */ c("div", { className: "absolute top-1.5 right-1.5 size-2.5 pointer-events-none z-10", children: [
136
134
  /* @__PURE__ */ r("div", { className: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 size-2.5 rounded-full bg-feedback-error-surface animate-notification-waves motion-reduce:animate-none" }),
137
135
  /* @__PURE__ */ r("div", { className: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 size-2 rounded-full bg-destructive" })
138
136
  ] }))
139
137
  ]
140
138
  }
141
139
  );
140
+ return /* @__PURE__ */ r(
141
+ v,
142
+ {
143
+ label: m,
144
+ side: o,
145
+ keybinding: s,
146
+ children: b
147
+ }
148
+ );
142
149
  }
143
150
  );
144
151
  export {
145
- I as Header,
146
- F as HeaderBadge,
147
- q as HeaderBotButton,
148
- _ as HeaderLeft,
149
- P as HeaderLogo,
150
- C as HeaderRight,
151
- R as HeaderSeparator,
152
- T as HeaderTitle,
153
- D as NotificationIconButton
152
+ P as Header,
153
+ G as HeaderBadge,
154
+ J as HeaderBotButton,
155
+ R as HeaderLeft,
156
+ q as HeaderLogo,
157
+ F as HeaderRight,
158
+ D as HeaderSeparator,
159
+ E as HeaderTitle,
160
+ K as NotificationIconButton
154
161
  };
@@ -1,2 +1,3 @@
1
1
  export { HorizontalScroller } from './horizontal-scroller';
2
+ export { HorizontalScroller as default } from './horizontal-scroller';
2
3
  export * from './horizontal-scroller.types';
@@ -1,4 +1,5 @@
1
- import { HorizontalScroller as l } from "./horizontal-scroller.js";
1
+ import { HorizontalScroller as l, HorizontalScroller as a } from "./horizontal-scroller.js";
2
2
  export {
3
- l as HorizontalScroller
3
+ l as HorizontalScroller,
4
+ a as default
4
5
  };
@@ -0,0 +1,4 @@
1
+ const A = "data:image/webp;base64,UklGRpoEAABXRUJQVlA4WAoAAAAQAAAASwAARQAAQUxQSEMBAAANkCRJkiJJ7lE4s8xwxdPu/3/CzAwNtVkUfiqQylreFYmICcB0cxy7eTI4Fp1g8/7DDjOKKHonlm7su1mO3yhfh5TLEg6Kr5+/zoCjV4p3dbIwx2G+23yegyl7YfGyvPgyBzoZlu8oymqWWOVYTWpNfhmLERl8SptYPM6iIKEB1Qe7xqKBLlwuMZZfn23IWA7zYyUEDln1vjLEesv3+1bQAJNu34KxXFIT3MEBmLc9EWuCXiJGiiBiFiYS8TrIKTELxP+zCa1IAtd69Eg4RREFZhl9BCEXo3mDLDUb4UrKVNHcZpJmKTSgtjxVSrF8azdBHAE/PH/giPfT+8ZhQzh68agrFqJpXRhbHaZCrMLktBfWk8LvfNGsWw0A5rMYGYEpVJjTG6Tk4qAQZtk9rE7nvZZFhvbkkTls82B3qliaoeqOAgBWUDggMAMAADASAJ0BKkwARgA+MRaJQ6IhIRFMBbwgAwS0k4AA+utek7HnJIf9j0Y+4XuD/q8Oawgx0wQStxPVLp0GTwUhiaDRVGXxSWDzDu+siPys4cjBCyDsJwk7bbBYasJSrSTo8UVXJKldgyOcY5gwVJIij61wVYERFs/iX/Al0I57CvWqUI0jhHGPqK9PteKuhhvVQNyF4K1coASx+gAA/v/+ThrrDeqt5AN/7y0qCn5GW1fixN7ZvQLWRmq3vY3+/6vvX7/7e8S5P+cx/CP/iw5Rfj5rylfjCZaZfcQBH7Z4eqGU4TaibAkyqSkOt8auZ+Wy2v+ev6PSEIfxbkjs6puUjagXtaU1/v9Yhs3jh9+31NUx6ojCEiF61eX3YBsFbp0FX9fsMKdSsEpRfCw3aqn41qdu+6b0OEYmopDJdtXmo8SwNU+nPqf/PafKw0y9lGvu9TdsSW1n5iD8FJarxgrbxAFPfXbqS4Dn6ufkgeI4n2tUEATgnV2/uFrznH6j8nhQqOr0b8jqEu8SJngilH7L9Nr60yIlguFTf1N78flFJh737tEwbsRsKapqrLjcj9lp/71ewL9wkvvYrtKaQkbWT8Kl04dDcAq4NCAbSXhWQ7esnctd0780UVeJrM7H3DHceP7atf+CwNvXfTP7V1mv+3IlA3/3XnLrhrt+SAj17R+qAA0BeGb0kDF6E/vLND5eYh25eoOo7NOEk2PJ+o3G3FqaFK9od0rhjGNGeTi7TO/7spQIeSVdno9bJcfN/85u8CzNDObfApUauZMDXpIVFyGn+Vj9g19vGUrjY1fHhsl5ospg0pF7iJiGesS3LRgPDEOTBMvUbqZs4WkbximA7+oOfLglgIFPBEdzEUckotb4/Nin6N6v/AnjMq/AcoAcEWH8p39OePwknLW6ltVXONsN4d5qAVNihH9Esm8yvNSf0Leo3bGe8xWj+y1E4n0eXCSQh6EMoM65dlTis5yhkUP5PuaJMXmKl0wRxZw3Ggbqd8JJ8tBq5TZ1ZT6hN7K+e5BWO/z17Ipbi6A0ipQSSX3TIEAYYAXI/0/13k4kmg9zMEPPET+/uhJgPyIC8CAAAA==";
2
+ export {
3
+ A as default
4
+ };
@@ -0,0 +1,4 @@
1
+ const A = "data:image/webp;base64,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";
2
+ export {
3
+ A as default
4
+ };
@@ -1,7 +1,9 @@
1
1
  export declare const ClickMeArrow: import('impact-nova-icons').ImageComponent;
2
2
  export declare const FileUpload: import('impact-nova-icons').ImageComponent;
3
+ export declare const FileUploadError: import('impact-nova-icons').ImageComponent;
3
4
  export declare const Csv: import('impact-nova-icons').ImageComponent;
4
5
  export declare const Excel: import('impact-nova-icons').ImageComponent;
6
+ export declare const ExcelErrorIcon: import('impact-nova-icons').ImageComponent;
5
7
  export declare const Text: import('impact-nova-icons').ImageComponent;
6
8
  export declare const Info3d: import('impact-nova-icons').ImageComponent;
7
9
  export declare const Success3d: import('impact-nova-icons').ImageComponent;
@@ -1,24 +1,34 @@
1
- import r from "./assets/click-me-arrow.webp.js";
2
- import t from "./assets/csv.webp.js";
3
- import e from "./assets/delete-3d.webp.js";
4
- import s from "./assets/excel.webp.js";
5
- import l from "./assets/file-upload.webp.js";
6
- import c from "./assets/info-3d.webp.js";
7
- import i from "./assets/multicolor-bell.webp.js";
8
- import m from "./assets/success-3d.webp.js";
9
- import n from "./assets/text.webp.js";
10
- import d from "./assets/warning-3d.webp.js";
11
- import { createImage as o } from "../../../lib/createImage.js";
12
- const k = o("ClickMeArrow", r), v = o("FileUpload", l), B = o("Csv", t), I = o("Excel", s), D = o("Text", n), E = o("Info3d", c), F = o("Success3d", m), S = o("Warning3d", d), T = o("Delete3d", e), W = o("MulticolorBell", i);
1
+ import o from "./assets/click-me-arrow.webp.js";
2
+ import e from "./assets/csv.webp.js";
3
+ import t from "./assets/delete-3d.webp.js";
4
+ import l from "./assets/excel.webp.js";
5
+ import s from "./assets/excel-error-icon.webp.js";
6
+ import c from "./assets/file-upload.webp.js";
7
+ import i from "./assets/file-upload-error.webp.js";
8
+ import m from "./assets/info-3d.webp.js";
9
+ import n from "./assets/multicolor-bell.webp.js";
10
+ import p from "./assets/success-3d.webp.js";
11
+ import d from "./assets/text.webp.js";
12
+ import f from "./assets/warning-3d.webp.js";
13
+ import { createImage as r } from "../../../lib/createImage.js";
14
+ const v = r("ClickMeArrow", o), B = r("FileUpload", c), D = r(
15
+ "FileUploadError",
16
+ i
17
+ ), S = r("Csv", e), T = r("Excel", l), W = r(
18
+ "ExcelErrorIcon",
19
+ s
20
+ ), b = r("Text", d), h = r("Info3d", m), j = r("Success3d", p), q = r("Warning3d", f), y = r("Delete3d", t), z = r("MulticolorBell", n);
13
21
  export {
14
- k as ClickMeArrow,
15
- B as Csv,
16
- T as Delete3d,
17
- I as Excel,
18
- v as FileUpload,
19
- E as Info3d,
20
- W as MulticolorBell,
21
- F as Success3d,
22
- D as Text,
23
- S as Warning3d
22
+ v as ClickMeArrow,
23
+ S as Csv,
24
+ y as Delete3d,
25
+ T as Excel,
26
+ W as ExcelErrorIcon,
27
+ B as FileUpload,
28
+ D as FileUploadError,
29
+ h as Info3d,
30
+ z as MulticolorBell,
31
+ j as Success3d,
32
+ b as Text,
33
+ q as Warning3d
24
34
  };
@@ -0,0 +1,10 @@
1
+ import { ShowProps } from './show.types';
2
+ /**
3
+ * Property-controlled conditional render helper.
4
+ * Renders `children` only when `when` is true.
5
+ *
6
+ * Uses `display: contents` so the root does not affect layout while still
7
+ * carrying `data-component` for charter/testing.
8
+ */
9
+ export declare function Show({ when, children }: ShowProps): import("react/jsx-runtime").JSX.Element | null;
10
+ export type { ShowProps } from './show.types';
@@ -0,0 +1,7 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ function e({ when: t, children: n }) {
3
+ return t ? /* @__PURE__ */ o("div", { "data-component": "show", style: { display: "contents" }, children: n }) : null;
4
+ }
5
+ export {
6
+ e as Show
7
+ };
@@ -0,0 +1,5 @@
1
+ import type * as React from "react";
2
+ export interface ShowProps {
3
+ when: boolean;
4
+ children: React.ReactNode;
5
+ }
@@ -175,6 +175,22 @@ export interface PromptMessages {
175
175
  cancel: string;
176
176
  confirm: string;
177
177
  }
178
+ export interface FileUploadMessages {
179
+ /** Dropzone default label, rendered before the "Choose File" action */
180
+ dragDropLabel: string;
181
+ chooseFile: string;
182
+ dropInProgress: string;
183
+ fileTypeNotSupported: string;
184
+ cancelUpload: string;
185
+ retryUpload: string;
186
+ downloadFile: string;
187
+ /** Progress label without time estimate ({{percent}}) */
188
+ progressPercent: string;
189
+ /** Progress label with time estimate ({{percent}}, {{count}}) */
190
+ progressTimeRemaining: string;
191
+ /** Progress label when exactly 1 second remains ({{percent}}) */
192
+ progressTimeRemainingSingular: string;
193
+ }
178
194
  export interface FilterStripMessages {
179
195
  filtersApplied: string;
180
196
  allFilters: string;
@@ -284,6 +300,7 @@ export interface ImpactNovaMessages {
284
300
  dataTable: DataTableMessages;
285
301
  aria: AriaMessages;
286
302
  prompt: PromptMessages;
303
+ fileUpload: FileUploadMessages;
287
304
  filterStrip: FilterStripMessages;
288
305
  filterPanel: FilterPanelMessages;
289
306
  advancedFilter: AdvancedFilterMessages;
@@ -47,7 +47,7 @@ const e = {
47
47
  between: "Between",
48
48
  inSet: "In Set",
49
49
  notInSet: "Not In Set"
50
- }, a = {
50
+ }, o = {
51
51
  search: "Search",
52
52
  searchPlaceholder: "Search...",
53
53
  select: "Select...",
@@ -62,7 +62,7 @@ const e = {
62
62
  logicAll: "all",
63
63
  logicAny: "any",
64
64
  operators: l
65
- }, o = {
65
+ }, a = {
66
66
  placeholder: "Select...",
67
67
  searchHere: "Search here...",
68
68
  selectAll: "Select All",
@@ -153,6 +153,17 @@ const e = {
153
153
  cancel: "Cancel",
154
154
  confirm: "Confirm"
155
155
  }, c = {
156
+ dragDropLabel: "Drag your files here or",
157
+ chooseFile: "Choose File",
158
+ dropInProgress: "File Drop In Progress...",
159
+ fileTypeNotSupported: "File type not supported",
160
+ cancelUpload: "Cancel upload",
161
+ retryUpload: "Retry upload",
162
+ downloadFile: "Download file",
163
+ progressPercent: "{{percent}}%",
164
+ progressTimeRemaining: "{{percent}}% • {{count}} seconds remaining",
165
+ progressTimeRemainingSingular: "{{percent}}% • 1 second remaining"
166
+ }, d = {
156
167
  filtersApplied: "Filters Applied",
157
168
  allFilters: "All Filters",
158
169
  showFilters: "Show filters",
@@ -166,13 +177,13 @@ const e = {
166
177
  deleteFilter: "Delete",
167
178
  setAsDefault: "Set as default",
168
179
  defaultFilter: "Default"
169
- }, d = {
180
+ }, u = {
170
181
  filtersAppliedCount: "{{count}} filters applied",
171
182
  savedFiltersAvailableCount: "{{count}} Saved filters available",
172
183
  tabContainsErrors: "This tab contains errors",
173
184
  tabHasWarnings: "This tab has warnings",
174
185
  additionalInfoAvailable: "Additional information available"
175
- }, u = {
186
+ }, p = {
176
187
  title: "Notifications",
177
188
  description: "Notifications",
178
189
  everythingQuiet: "Everything looks quiet for now",
@@ -192,9 +203,9 @@ const e = {
192
203
  viewMore: "View More",
193
204
  viewLess: "View Less",
194
205
  logout: "Logout"
195
- }, p = {
196
- stepOfTotal: "Step {{current}} of {{total}}"
197
206
  }, f = {
207
+ stepOfTotal: "Step {{current}} of {{total}}"
208
+ }, S = {
198
209
  title: "Advanced Filter",
199
210
  currentColumn: "Current Column",
200
211
  allFilters: "Active Filters",
@@ -208,7 +219,7 @@ const e = {
208
219
  addRule: "+ Add Rule",
209
220
  deleteColumn: "Delete",
210
221
  noValueNeeded: "No value needed"
211
- }, S = {
222
+ }, v = {
212
223
  activeFilter: "Active filter",
213
224
  search: "Search",
214
225
  selection: "Selection",
@@ -243,24 +254,25 @@ const e = {
243
254
  columnOptions: "Column Options",
244
255
  chooseColumns: "Choose Columns",
245
256
  resetColumns: "Reset Columns"
246
- }, v = {
257
+ }, g = {
247
258
  calendar: e,
248
259
  datePicker: t,
249
- filter: a,
250
- select: o,
260
+ filter: o,
261
+ select: a,
251
262
  nestedList: i,
252
263
  dataTable: n,
253
264
  aria: r,
254
265
  prompt: s,
255
- filterStrip: c,
256
- filterPanel: d,
257
- advancedFilter: f,
258
- gridHeader: S,
259
- notificationPanel: u,
266
+ fileUpload: c,
267
+ filterStrip: d,
268
+ filterPanel: u,
269
+ advancedFilter: S,
270
+ gridHeader: v,
271
+ notificationPanel: p,
260
272
  horizontalScroller: m,
261
273
  sidebar: h,
262
- stepper: p
274
+ stepper: f
263
275
  };
264
276
  export {
265
- v as defaultMessages
277
+ g as defaultMessages
266
278
  };
@@ -1,7 +1,7 @@
1
1
  export { ImpactNovaI18nProvider } from './impact-nova-i18n-context';
2
2
  export { useImpactNovaI18n } from './use-impact-nova-i18n';
3
3
  export type { ImpactNovaI18nContextValue, ImpactNovaI18nProviderProps, I18nParams, } from './i18n.types';
4
- export { defaultMessages, type ImpactNovaMessages, type CalendarMessages, type DatePickerMessages, type FilterMessages, type FilterOperatorMessages, type AdvancedFilterMessages, type GridHeaderMessages, type SelectMessages, type NestedListMessages, type DataTableMessages, type AriaMessages, type PromptMessages, type FilterStripMessages, type FilterPanelMessages, type NotificationPanelMessages, type HorizontalScrollerMessages, type SidebarMessages, type StepperMessages, } from './defaultMessages';
4
+ export { defaultMessages, type ImpactNovaMessages, type CalendarMessages, type DatePickerMessages, type FilterMessages, type FilterOperatorMessages, type AdvancedFilterMessages, type GridHeaderMessages, type SelectMessages, type NestedListMessages, type DataTableMessages, type AriaMessages, type PromptMessages, type FileUploadMessages, type FilterStripMessages, type FilterPanelMessages, type NotificationPanelMessages, type HorizontalScrollerMessages, type SidebarMessages, type StepperMessages, } from './defaultMessages';
5
5
  export { getDateFnsLocale, getIntlLocale } from './getDateFnsLocale';
6
6
  /** Locale message packs for i18n. Use as-is or spread and override specific keys. */
7
7
  export { de, es, hi, kn } from './locales';
@@ -161,6 +161,18 @@ const e = {
161
161
  cancel: "Abbrechen",
162
162
  confirm: "Bestätigen"
163
163
  },
164
+ fileUpload: {
165
+ dragDropLabel: "Ziehen Sie Ihre Dateien hierher oder",
166
+ chooseFile: "Datei auswählen",
167
+ dropInProgress: "Dateiablage läuft...",
168
+ fileTypeNotSupported: "Dateityp nicht unterstützt",
169
+ cancelUpload: "Upload abbrechen",
170
+ retryUpload: "Upload wiederholen",
171
+ downloadFile: "Datei herunterladen",
172
+ progressPercent: "{{percent}}%",
173
+ progressTimeRemaining: "{{percent}}% • {{count}} Sekunden verbleibend",
174
+ progressTimeRemainingSingular: "{{percent}}% • 1 Sekunde verbleibend"
175
+ },
164
176
  filterStrip: {
165
177
  filtersApplied: "Filter angewendet",
166
178
  allFilters: "Alle Filter",
@@ -161,6 +161,18 @@ const e = {
161
161
  cancel: "Cancelar",
162
162
  confirm: "Confirmar"
163
163
  },
164
+ fileUpload: {
165
+ dragDropLabel: "Arrastra tus archivos aquí o",
166
+ chooseFile: "Elegir archivo",
167
+ dropInProgress: "Soltando archivo...",
168
+ fileTypeNotSupported: "Tipo de archivo no compatible",
169
+ cancelUpload: "Cancelar carga",
170
+ retryUpload: "Reintentar carga",
171
+ downloadFile: "Descargar archivo",
172
+ progressPercent: "{{percent}}%",
173
+ progressTimeRemaining: "{{percent}}% • {{count}} segundos restantes",
174
+ progressTimeRemainingSingular: "{{percent}}% • 1 segundo restante"
175
+ },
164
176
  filterStrip: {
165
177
  filtersApplied: "Filtros aplicados",
166
178
  allFilters: "Todos los filtros",
@@ -161,6 +161,18 @@ const e = {
161
161
  cancel: "रद्द करें",
162
162
  confirm: "पुष्टि करें"
163
163
  },
164
+ fileUpload: {
165
+ dragDropLabel: "अपनी फ़ाइलें यहाँ खींचें या",
166
+ chooseFile: "फ़ाइल चुनें",
167
+ dropInProgress: "फ़ाइल ड्रॉप हो रही है...",
168
+ fileTypeNotSupported: "फ़ाइल प्रकार समर्थित नहीं है",
169
+ cancelUpload: "अपलोड रद्द करें",
170
+ retryUpload: "अपलोड पुनः प्रयास करें",
171
+ downloadFile: "फ़ाइल डाउनलोड करें",
172
+ progressPercent: "{{percent}}%",
173
+ progressTimeRemaining: "{{percent}}% • {{count}} सेकंड शेष",
174
+ progressTimeRemainingSingular: "{{percent}}% • 1 सेकंड शेष"
175
+ },
164
176
  filterStrip: {
165
177
  filtersApplied: "फ़िल्टर लागू",
166
178
  allFilters: "सभी फ़िल्टर",
@@ -161,6 +161,18 @@ const e = {
161
161
  cancel: "ರದ್ದುಮಾಡಿ",
162
162
  confirm: "ದೃಢೀಕರಿಸಿ"
163
163
  },
164
+ fileUpload: {
165
+ dragDropLabel: "ನಿಮ್ಮ ಫೈಲ್‌ಗಳನ್ನು ಇಲ್ಲಿ ಎಳೆಯಿರಿ ಅಥವಾ",
166
+ chooseFile: "ಫೈಲ್ ಆಯ್ಕೆಮಾಡಿ",
167
+ dropInProgress: "ಫೈಲ್ ಡ್ರಾಪ್ ಪ್ರಗತಿಯಲ್ಲಿದೆ...",
168
+ fileTypeNotSupported: "ಫೈಲ್ ಪ್ರಕಾರ ಬೆಂಬಲಿತವಾಗಿಲ್ಲ",
169
+ cancelUpload: "ಅಪ್‌ಲೋಡ್ ರದ್ದುಮಾಡಿ",
170
+ retryUpload: "ಅಪ್‌ಲೋಡ್ ಮರುಪ್ರಯತ್ನಿಸಿ",
171
+ downloadFile: "ಫೈಲ್ ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ",
172
+ progressPercent: "{{percent}}%",
173
+ progressTimeRemaining: "{{percent}}% • {{count}} ಸೆಕೆಂಡುಗಳು ಬಾಕಿ",
174
+ progressTimeRemainingSingular: "{{percent}}% • 1 ಸೆಕೆಂಡ್ ಬಾಕಿ"
175
+ },
164
176
  filterStrip: {
165
177
  filtersApplied: "ಫಿಲ್ಟರ್ಗಳನ್ನು ಅನ್ವಯಿಸಲಾಗಿದೆ",
166
178
  allFilters: "ಎಲ್ಲಾ ಫಿಲ್ಟರ್ಗಳು",
@@ -207,8 +207,12 @@
207
207
  outline-offset: -2px !important;
208
208
  }
209
209
 
210
- /* Generic rule for any container that might clip focus rings */
211
- [data-component]:has(:focus-visible) {
210
+ /* Generic rule for containers that might clip focus rings.
211
+ Scroll/layout panels are excluded so focus does not break overflow containment. */
212
+ [data-component]:has(:focus-visible):not(
213
+ [data-component="filter-panel-body"],
214
+ [data-component="sheet-content"]
215
+ ) {
212
216
  overflow: visible !important;
213
217
  }
214
218