impact-nova 2.1.0-alpha.4 → 2.1.0-alpha.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 (153) hide show
  1. package/dist/components/data/ag-grid-react/ag-grid-tooltip-overflow.d.ts +3 -0
  2. package/dist/components/data/ag-grid-react/ag-grid-tooltip-overflow.js +6 -0
  3. package/dist/components/data/ag-grid-react/ag-grid.types.d.ts +15 -21
  4. package/dist/components/data/ag-grid-react/cell-renderers/date-display-renderer.js +1 -1
  5. package/dist/components/data/ag-grid-react/cell-renderers/default-text-cell-renderer.d.ts +1 -2
  6. package/dist/components/data/ag-grid-react/cell-renderers/default-text-cell-renderer.js +12 -6
  7. package/dist/components/data/ag-grid-react/cell-renderers/editors/textarea-cell-editor.js +19 -19
  8. package/dist/components/data/ag-grid-react/cell-renderers/select-display-renderer.js +1 -1
  9. package/dist/components/data/ag-grid-react/cell-renderers/switch-display-renderer.js +15 -15
  10. package/dist/components/data/ag-grid-react/headers/advanced-filter/advanced-filter-dialog.js +1 -1
  11. package/dist/components/data/ag-grid-react/headers/advanced-filter/column-filter-section.js +33 -33
  12. package/dist/components/data/ag-grid-react/headers/components/header-info.js +66 -62
  13. package/dist/components/data/ag-grid-react/headers/components/info-modal.js +6 -6
  14. package/dist/components/data/ag-grid-react/headers/components/section-renderers.js +18 -18
  15. package/dist/components/data/ag-grid-react/headers/custom-header-group.js +40 -29
  16. package/dist/components/data/ag-grid-react/headers/custom-header.js +102 -98
  17. package/dist/components/data/ag-grid-react/index.d.ts +1 -1
  18. package/dist/components/data/ag-grid-react/index.js +136 -127
  19. package/dist/components/data/ag-grid-react/notify-column-indicator-sync.d.ts +7 -0
  20. package/dist/components/data/ag-grid-react/notify-column-indicator-sync.js +6 -0
  21. package/dist/components/data/ag-grid-react/theme.js +8 -4
  22. package/dist/components/data/ag-grid-react/use-ag-grid-truncation-tooltip.d.ts +5 -0
  23. package/dist/components/data/ag-grid-react/use-ag-grid-truncation-tooltip.js +13 -0
  24. package/dist/components/data/ag-grid-react/useGridAutoSizeStrategyOnResize.js +8 -5
  25. package/dist/components/data/data-table/build-column-tree-from-grid.d.ts +14 -0
  26. package/dist/components/data/data-table/build-column-tree-from-grid.js +95 -0
  27. package/dist/components/data/data-table/data-table-column-apply.d.ts +29 -0
  28. package/dist/components/data/data-table/data-table-column-apply.js +102 -0
  29. package/dist/components/data/data-table/data-table-column-def-pin.d.ts +25 -0
  30. package/dist/components/data/data-table/data-table-column-def-pin.js +66 -0
  31. package/dist/components/data/data-table/data-table-column-list-sync.d.ts +8 -0
  32. package/dist/components/data/data-table/data-table-column-list-sync.js +15 -0
  33. package/dist/components/data/data-table/data-table-column-list.d.ts +14 -4
  34. package/dist/components/data/data-table/data-table-column-list.js +74 -277
  35. package/dist/components/data/data-table/data-table-constants.d.ts +3 -4
  36. package/dist/components/data/data-table/data-table-context.d.ts +3 -6
  37. package/dist/components/data/data-table/data-table-context.js +21 -10
  38. package/dist/components/data/data-table/data-table-saved-views.js +26 -26
  39. package/dist/components/data/data-table/data-table-sheet-portal-store.d.ts +13 -0
  40. package/dist/components/data/data-table/data-table-sheet-portal-store.js +36 -0
  41. package/dist/components/data/data-table/data-table-sheet.d.ts +3 -6
  42. package/dist/components/data/data-table/data-table-sheet.js +4 -2
  43. package/dist/components/data/data-table/data-table-view-menu.js +40 -40
  44. package/dist/components/data/data-table/data-table.d.ts +8 -10
  45. package/dist/components/data/data-table/data-table.js +138 -111
  46. package/dist/components/data/data-table/data-table.types.d.ts +35 -0
  47. package/dist/components/data/data-table/index.js +28 -27
  48. package/dist/components/data/data-table/indicator-legend.js +6 -6
  49. package/dist/components/data/data-table/use-data-table-column-list-sync.d.ts +16 -0
  50. package/dist/components/data/data-table/use-data-table-column-list-sync.js +222 -0
  51. package/dist/components/data/expandable-list-item/expandable-list-item-attributes.d.ts +8 -0
  52. package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +72 -0
  53. package/dist/components/data/expandable-list-item/expandable-list-item-context.d.ts +13 -0
  54. package/dist/components/data/expandable-list-item/expandable-list-item-context.js +25 -0
  55. package/dist/components/data/expandable-list-item/expandable-list-item-metrics.d.ts +6 -0
  56. package/dist/components/data/expandable-list-item/expandable-list-item-metrics.js +41 -0
  57. package/dist/components/data/expandable-list-item/expandable-list-item-parts.d.ts +31 -0
  58. package/dist/components/data/expandable-list-item/expandable-list-item-parts.js +233 -0
  59. package/dist/components/data/expandable-list-item/expandable-list-item-preset.d.ts +18 -0
  60. package/dist/components/data/expandable-list-item/expandable-list-item-preset.js +133 -0
  61. package/dist/components/data/expandable-list-item/expandable-list-item.d.ts +5 -0
  62. package/dist/components/data/{expandable-sku/expandable-sku.types.d.ts → expandable-list-item/expandable-list-item.types.d.ts} +7 -7
  63. package/dist/components/data/expandable-list-item/index.d.ts +5 -0
  64. package/dist/components/data/expandable-list-item/index.js +19 -0
  65. package/dist/components/data/nested-list/components/NestedListHeader.js +11 -11
  66. package/dist/components/data/nested-list/components/SortableItem.js +2 -2
  67. package/dist/components/data-display/avatar/avatar.types.d.ts +2 -0
  68. package/dist/components/data-display/badge/badge.types.d.ts +2 -0
  69. package/dist/components/data-display/calendar/calendar-day-picker-classnames.js +11 -11
  70. package/dist/components/data-display/calendar/calendar-month-picker-panel.js +7 -7
  71. package/dist/components/data-display/calendar/calendar-week-number-cell.js +31 -31
  72. package/dist/components/data-display/card/card.js +8 -8
  73. package/dist/components/data-display/chart/chart.types.d.ts +9 -0
  74. package/dist/components/data-display/skeleton/skeleton.js +6 -6
  75. package/dist/components/data-display/statistics-card/statistics-card.js +14 -14
  76. package/dist/components/feedback/alert-dialog/alert-dialog.js +19 -19
  77. package/dist/components/feedback/dialog/dialog.js +1 -1
  78. package/dist/components/feedback/drawer/drawer.js +18 -18
  79. package/dist/components/feedback/dropdown-menu/dropdown-menu.js +70 -57
  80. package/dist/components/feedback/popover/popover.js +1 -1
  81. package/dist/components/feedback/sheet/sheet.js +1 -1
  82. package/dist/components/feedback/tooltip/tooltip.js +22 -22
  83. package/dist/components/feedback/tooltip/tooltip.variants.js +1 -1
  84. package/dist/components/flows/command-palette/command-palette.js +104 -104
  85. package/dist/components/flows/command-palette/shortcut-settings.js +34 -34
  86. package/dist/components/flows/filter-strip/filter-tag-list.js +4 -4
  87. package/dist/components/flows/notification-panel/notification-list.js +17 -17
  88. package/dist/components/flows/notification-panel/notification-panel.js +4 -4
  89. package/dist/components/flows/notification-panel/notification-panel.types.d.ts +3 -0
  90. package/dist/components/flows/wizard/wizard.js +8 -8
  91. package/dist/components/forms/combobox/combobox.js +20 -20
  92. package/dist/components/forms/date-picker/date-picker.js +17 -17
  93. package/dist/components/forms/date-picker/date-range-picker.js +3 -3
  94. package/dist/components/forms/date-picker/month-picker.js +1 -1
  95. package/dist/components/forms/date-picker/month-range-picker.js +42 -42
  96. package/dist/components/forms/date-picker/week-picker.js +15 -15
  97. package/dist/components/forms/date-picker/week-range-picker.js +3 -3
  98. package/dist/components/forms/file-upload/file-upload.js +33 -33
  99. package/dist/components/forms/input/input.js +8 -8
  100. package/dist/components/forms/input/input.variants.js +3 -3
  101. package/dist/components/forms/select/components/SelectMenuPanel.d.ts +1 -2
  102. package/dist/components/forms/select/components/SelectMenuPanel.js +18 -20
  103. package/dist/components/forms/select/components/SelectTrigger.d.ts +9 -6
  104. package/dist/components/forms/select/components/SelectTrigger.js +120 -122
  105. package/dist/components/forms/select/components/Submenu.js +8 -8
  106. package/dist/components/forms/select/hooks/useSelectKeyboardHandlers.d.ts +1 -1
  107. package/dist/components/forms/select/hooks/useSelectValueState.d.ts +19 -0
  108. package/dist/components/forms/select/hooks/useSelectValueState.js +41 -0
  109. package/dist/components/forms/select/index.js +4 -3
  110. package/dist/components/forms/select/select.js +180 -175
  111. package/dist/components/forms/select/select.types.d.ts +3 -2
  112. package/dist/components/forms/select/select.variants.js +4 -4
  113. package/dist/components/forms/select/utils/select.d.ts +2 -1
  114. package/dist/components/forms/select/utils/select.js +47 -37
  115. package/dist/components/layout/sidebar/sidebar.d.ts +7 -50
  116. package/dist/components/layout/sidebar/sidebar.js +12 -11
  117. package/dist/components/layout/sidebar/sidebar.types.d.ts +35 -1
  118. package/dist/components/primitives/button-group/button-group.js +32 -32
  119. package/dist/components/primitives/chips/chips.variants.js +5 -5
  120. package/dist/components/primitives/empty-container/empty-container.types.d.ts +3 -0
  121. package/dist/components/primitives/kbd/kbd.variants.js +3 -3
  122. package/dist/components/primitives/stepper/stepper.js +6 -6
  123. package/dist/impact-nova-components.css +113 -7
  124. package/dist/impact-nova-tokens.scss +2 -4
  125. package/dist/impact-nova.css +1 -1
  126. package/dist/index.d.ts +1 -1
  127. package/dist/index.js +467 -433
  128. package/dist/lib/compose-refs.d.ts +8 -0
  129. package/dist/lib/compose-refs.js +14 -0
  130. package/dist/lib/primitives/field.types.d.ts +8 -2
  131. package/dist/lib/virtualized/index.d.ts +3 -0
  132. package/dist/lib/virtualized/index.js +33 -16
  133. package/dist/lib/virtualized/useVirtualizedList.d.ts +2 -0
  134. package/dist/lib/virtualized/useVirtualizedList.js +115 -109
  135. package/dist/lib/virtualized/virtualized-list-context.d.ts +12 -0
  136. package/dist/lib/virtualized/virtualized-list-context.js +21 -0
  137. package/dist/lib/virtualized/virtualized-list-parts.d.ts +51 -0
  138. package/dist/lib/virtualized/virtualized-list-parts.js +175 -0
  139. package/dist/lib/virtualized/virtualized-list-utils.d.ts +5 -0
  140. package/dist/lib/virtualized/virtualized-list-utils.js +6 -0
  141. package/dist/llms/rules/ag-grid.js +1 -1
  142. package/dist/llms/rules/installation.js +1 -1
  143. package/dist/llms/rules/migration.js +1 -1
  144. package/dist/llms/rules/real-world-patterns.js +1 -1
  145. package/dist/llms/rules/requirements.js +1 -1
  146. package/package.json +24 -15
  147. package/tailwind.config.js +1 -0
  148. package/dist/components/data/ag-grid-react/headers/components/truncated-text.d.ts +0 -15
  149. package/dist/components/data/ag-grid-react/headers/components/truncated-text.js +0 -27
  150. package/dist/components/data/expandable-sku/expandable-sku.d.ts +0 -38
  151. package/dist/components/data/expandable-sku/expandable-sku.js +0 -245
  152. package/dist/components/data/expandable-sku/index.d.ts +0 -2
  153. package/dist/components/data/expandable-sku/index.js +0 -4
@@ -0,0 +1,18 @@
1
+ import { ExpandableListItemSection, ExpandableListItemSelection } from './expandable-list-item.types';
2
+ import * as React from "react";
3
+ export interface ExpandableListItemProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "children" | "onChange"> {
4
+ title: string;
5
+ description?: React.ReactNode;
6
+ badge?: React.ReactNode;
7
+ selection?: ExpandableListItemSelection;
8
+ selected?: boolean;
9
+ expanded?: boolean;
10
+ defaultExpanded?: boolean;
11
+ onExpandedChange?: (open: boolean) => void;
12
+ disabled?: boolean;
13
+ sections?: ReadonlyArray<ExpandableListItemSection>;
14
+ panelFooter?: React.ReactNode;
15
+ expandAriaLabel?: string;
16
+ collapseAriaLabel?: string;
17
+ }
18
+ export declare const ExpandableListItem: React.ForwardRefExoticComponent<ExpandableListItemProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,133 @@
1
+ import { jsx as l, jsxs as d } from "react/jsx-runtime";
2
+ import * as R from "react";
3
+ import { ExpandableListItemAttributes as T } from "./expandable-list-item-attributes.js";
4
+ import { ExpandableListItemMetrics as v } from "./expandable-list-item-metrics.js";
5
+ import { ExpandableListItemRoot as f, ExpandableListItemRow as o, ExpandableListItemCheckbox as C, ExpandableListItemHeader as E, ExpandableListItemMedia as I, ExpandableListItemTitle as k, ExpandableListItemDescription as L, ExpandableListItemTrigger as y, ExpandableListItemContent as j, ExpandableListItemFooter as M } from "./expandable-list-item-parts.js";
6
+ function O(e) {
7
+ switch (e.type) {
8
+ case "metrics":
9
+ return /* @__PURE__ */ l(
10
+ v,
11
+ {
12
+ sectionId: e.id,
13
+ columns: e.columns
14
+ },
15
+ e.id
16
+ );
17
+ case "attributes":
18
+ return /* @__PURE__ */ l(
19
+ T,
20
+ {
21
+ title: e.title,
22
+ tags: e.tags,
23
+ maxVisibleTags: e.maxVisibleTags,
24
+ formatOverflow: e.formatOverflow
25
+ },
26
+ e.id
27
+ );
28
+ case "custom":
29
+ return /* @__PURE__ */ l(V, { section: e }, e.id);
30
+ default:
31
+ return null;
32
+ }
33
+ }
34
+ function V({ section: e }) {
35
+ return /* @__PURE__ */ l("div", { className: "px-4 py-4 sm:px-5", children: e.content });
36
+ }
37
+ const $ = R.forwardRef(
38
+ ({
39
+ className: e,
40
+ title: t,
41
+ description: n,
42
+ badge: m,
43
+ selection: a,
44
+ selected: g,
45
+ expanded: w,
46
+ defaultExpanded: S = !1,
47
+ onExpandedChange: P,
48
+ disabled: c,
49
+ sections: i,
50
+ panelFooter: h,
51
+ expandAriaLabel: s = "Expand details",
52
+ collapseAriaLabel: u = "Collapse details",
53
+ ...b
54
+ }, p) => {
55
+ const x = !!(g || a?.checked);
56
+ return i != null && i.length > 0 || h != null ? /* @__PURE__ */ d(
57
+ f,
58
+ {
59
+ ref: p,
60
+ className: e,
61
+ selected: x,
62
+ expanded: w,
63
+ defaultExpanded: S,
64
+ onExpandedChange: P,
65
+ disabled: c,
66
+ expandAriaLabel: s,
67
+ collapseAriaLabel: u,
68
+ ...b,
69
+ children: [
70
+ /* @__PURE__ */ d(o, { children: [
71
+ a ? /* @__PURE__ */ l(
72
+ C,
73
+ {
74
+ checked: a.checked,
75
+ disabled: a.disabled,
76
+ onCheckedChange: (r) => {
77
+ r !== a.checked && a.onCheckedChange(r);
78
+ },
79
+ "aria-label": a["aria-label"] ?? `Select ${t}`
80
+ }
81
+ ) : null,
82
+ /* @__PURE__ */ l(y, { children: /* @__PURE__ */ d(E, { children: [
83
+ /* @__PURE__ */ d(I, { children: [
84
+ /* @__PURE__ */ l(k, { children: t }),
85
+ m
86
+ ] }),
87
+ n ? /* @__PURE__ */ l(L, { children: n }) : null
88
+ ] }) })
89
+ ] }),
90
+ /* @__PURE__ */ d(j, { children: [
91
+ i?.map((r) => O(r)),
92
+ h ? /* @__PURE__ */ l(M, { children: h }) : null
93
+ ] })
94
+ ]
95
+ }
96
+ ) : /* @__PURE__ */ l(
97
+ f,
98
+ {
99
+ ref: p,
100
+ className: e,
101
+ selected: x,
102
+ disabled: c,
103
+ expandAriaLabel: s,
104
+ collapseAriaLabel: u,
105
+ ...b,
106
+ children: /* @__PURE__ */ d(o, { children: [
107
+ a ? /* @__PURE__ */ l(
108
+ C,
109
+ {
110
+ checked: a.checked,
111
+ disabled: a.disabled,
112
+ onCheckedChange: (r) => {
113
+ r !== a.checked && a.onCheckedChange(r);
114
+ },
115
+ "aria-label": a["aria-label"] ?? `Select ${t}`
116
+ }
117
+ ) : null,
118
+ /* @__PURE__ */ d(E, { children: [
119
+ /* @__PURE__ */ d(I, { children: [
120
+ /* @__PURE__ */ l(k, { children: t }),
121
+ m
122
+ ] }),
123
+ n ? /* @__PURE__ */ l(L, { children: n }) : null
124
+ ] })
125
+ ] })
126
+ }
127
+ );
128
+ }
129
+ );
130
+ $.displayName = "ExpandableListItem";
131
+ export {
132
+ $ as ExpandableListItem
133
+ };
@@ -0,0 +1,5 @@
1
+ export { ExpandableListItem, type ExpandableListItemProps, } from './expandable-list-item-preset';
2
+ export { ExpandableListItemRoot, ExpandableListItemRow, ExpandableListItemCheckbox, ExpandableListItemTrigger, ExpandableListItemTitle, ExpandableListItemDescription, ExpandableListItemMedia, ExpandableListItemHeader, ExpandableListItemContent, ExpandableListItemFooter, type ExpandableListItemRootProps, type ExpandableListItemCheckboxProps, } from './expandable-list-item-parts';
3
+ export { ExpandableListItemMetrics, type ExpandableListItemMetricsProps } from './expandable-list-item-metrics';
4
+ export { ExpandableListItemAttributes, type ExpandableListItemAttributesProps, } from './expandable-list-item-attributes';
5
+ export type { ExpandableListItemAttributesSection, ExpandableListItemCustomSection, ExpandableListItemMetricColumn, ExpandableListItemMetricsSection, ExpandableListItemSelection, ExpandableListItemSection, } from './expandable-list-item.types';
@@ -1,16 +1,16 @@
1
1
  import { ReactNode } from 'react';
2
- export type SkuRowMetricColumn = {
2
+ export type ExpandableListItemMetricColumn = {
3
3
  label: string;
4
4
  value: string;
5
5
  };
6
6
  /** Horizontal metrics row (any column count). */
7
- export type SkuRowMetricsSection = {
7
+ export type ExpandableListItemMetricsSection = {
8
8
  id: string;
9
9
  type: "metrics";
10
- columns: ReadonlyArray<SkuRowMetricColumn>;
10
+ columns: ReadonlyArray<ExpandableListItemMetricColumn>;
11
11
  };
12
12
  /** Tag pills with optional overflow summary (e.g. `+64`). */
13
- export type SkuRowAttributesSection = {
13
+ export type ExpandableListItemAttributesSection = {
14
14
  id: string;
15
15
  type: "attributes";
16
16
  title?: string;
@@ -21,13 +21,13 @@ export type SkuRowAttributesSection = {
21
21
  formatOverflow?: (hiddenCount: number) => string;
22
22
  };
23
23
  /** Arbitrary block inside the expanded panel. */
24
- export type SkuRowCustomSection = {
24
+ export type ExpandableListItemCustomSection = {
25
25
  id: string;
26
26
  type: "custom";
27
27
  content: ReactNode;
28
28
  };
29
- export type SkuRowSection = SkuRowMetricsSection | SkuRowAttributesSection | SkuRowCustomSection;
30
- export type SkuRowSelection = {
29
+ export type ExpandableListItemSection = ExpandableListItemMetricsSection | ExpandableListItemAttributesSection | ExpandableListItemCustomSection;
30
+ export type ExpandableListItemSelection = {
31
31
  checked: boolean;
32
32
  onCheckedChange: (checked: boolean) => void;
33
33
  disabled?: boolean;
@@ -0,0 +1,5 @@
1
+ export { ExpandableListItem, type ExpandableListItemProps, } from './expandable-list-item-preset';
2
+ export { ExpandableListItemRoot, ExpandableListItemRow, ExpandableListItemCheckbox, ExpandableListItemTrigger, ExpandableListItemTitle, ExpandableListItemDescription, ExpandableListItemMedia, ExpandableListItemHeader, ExpandableListItemContent, ExpandableListItemFooter, type ExpandableListItemRootProps, type ExpandableListItemCheckboxProps, } from './expandable-list-item-parts';
3
+ export { ExpandableListItemMetrics, type ExpandableListItemMetricsProps } from './expandable-list-item-metrics';
4
+ export { ExpandableListItemAttributes, type ExpandableListItemAttributesProps, } from './expandable-list-item-attributes';
5
+ export type { ExpandableListItemAttributesSection, ExpandableListItemCustomSection, ExpandableListItemMetricColumn, ExpandableListItemMetricsSection, ExpandableListItemSelection, ExpandableListItemSection, } from './expandable-list-item.types';
@@ -0,0 +1,19 @@
1
+ import { ExpandableListItem as a } from "./expandable-list-item-preset.js";
2
+ import { ExpandableListItemCheckbox as p, ExpandableListItemContent as x, ExpandableListItemDescription as m, ExpandableListItemFooter as n, ExpandableListItemHeader as o, ExpandableListItemMedia as s, ExpandableListItemRoot as b, ExpandableListItemRow as d, ExpandableListItemTitle as r, ExpandableListItemTrigger as l } from "./expandable-list-item-parts.js";
3
+ import { ExpandableListItemMetrics as I } from "./expandable-list-item-metrics.js";
4
+ import { ExpandableListItemAttributes as f } from "./expandable-list-item-attributes.js";
5
+ export {
6
+ a as ExpandableListItem,
7
+ f as ExpandableListItemAttributes,
8
+ p as ExpandableListItemCheckbox,
9
+ x as ExpandableListItemContent,
10
+ m as ExpandableListItemDescription,
11
+ n as ExpandableListItemFooter,
12
+ o as ExpandableListItemHeader,
13
+ s as ExpandableListItemMedia,
14
+ I as ExpandableListItemMetrics,
15
+ b as ExpandableListItemRoot,
16
+ d as ExpandableListItemRow,
17
+ r as ExpandableListItemTitle,
18
+ l as ExpandableListItemTrigger
19
+ };
@@ -1,7 +1,7 @@
1
1
  import { jsx as t, jsxs as o } from "react/jsx-runtime";
2
2
  import "react";
3
- import { Checkbox as N } from "../../../forms/checkbox/checkbox.js";
4
- import { Input as v } from "../../../forms/input/input.js";
3
+ import { Checkbox as v } from "../../../forms/checkbox/checkbox.js";
4
+ import { Input as N } from "../../../forms/input/input.js";
5
5
  import { ChevronRight as k, Search as g } from "impact-nova-icons";
6
6
  import { cn as C } from "../../../../lib/utils.js";
7
7
  import { useImpactNovaI18n as z } from "../../../../i18n/use-impact-nova-i18n.js";
@@ -12,8 +12,8 @@ const E = ({
12
12
  enableSearch: n,
13
13
  enableSelectAll: e,
14
14
  groupLabel: i,
15
- allChecked: m,
16
- isIndeterminate: a = !1,
15
+ allChecked: a,
16
+ isIndeterminate: m = !1,
17
17
  onSelectAll: d,
18
18
  searchText: x,
19
19
  onSearchChange: l,
@@ -28,7 +28,7 @@ const E = ({
28
28
  {
29
29
  type: "button",
30
30
  onClick: y,
31
- className: "p-1 hover:bg-muted rounded-full transition-colors flex items-center text-content-icon hover:text-brand",
31
+ className: "p-1 hover:bg-canvas-muted rounded-full transition-colors flex items-center text-content-icon hover:text-brand",
32
32
  "aria-label": u(c ? "nestedList.expandAll" : "nestedList.collapseAll"),
33
33
  children: /* @__PURE__ */ t(
34
34
  k,
@@ -46,14 +46,14 @@ const E = ({
46
46
  ] }),
47
47
  /* @__PURE__ */ o("div", { className: "flex items-center gap-1", children: [
48
48
  e && /* @__PURE__ */ t(
49
- N,
49
+ v,
50
50
  {
51
- checked: a ? "indeterminate" : m,
51
+ checked: m ? "indeterminate" : a,
52
52
  onCheckedChange: d
53
53
  }
54
54
  ),
55
55
  n ? /* @__PURE__ */ t("div", { className: "flex-1 ml-auto", children: /* @__PURE__ */ t(
56
- v,
56
+ N,
57
57
  {
58
58
  type: "text",
59
59
  placeholder: p,
@@ -66,14 +66,14 @@ const E = ({
66
66
  ] }) : /* @__PURE__ */ o("div", { className: "flex items-center gap-1 mb-3", children: [
67
67
  s && r && h,
68
68
  e && /* @__PURE__ */ t(
69
- N,
69
+ v,
70
70
  {
71
- checked: a ? "indeterminate" : m,
71
+ checked: m ? "indeterminate" : a,
72
72
  onCheckedChange: d
73
73
  }
74
74
  ),
75
75
  n ? /* @__PURE__ */ t("div", { className: "flex-1 ml-auto", children: /* @__PURE__ */ t(
76
- v,
76
+ N,
77
77
  {
78
78
  type: "text",
79
79
  placeholder: p,
@@ -102,7 +102,7 @@ const E = (e, r) => {
102
102
  d.stopPropagation(), i(e.id);
103
103
  },
104
104
  onMouseDown: (d) => d.stopPropagation(),
105
- className: "flex h-4 w-4 items-center justify-center rounded-full p-0 hover:bg-muted transition-colors text-content-icon hover:text-brand",
105
+ className: "flex h-4 w-4 items-center justify-center rounded-full p-0 hover:bg-canvas-muted transition-colors text-content-icon hover:text-brand",
106
106
  "aria-label": h(a ? "nestedList.expand" : "nestedList.collapse"),
107
107
  children: /* @__PURE__ */ t(
108
108
  P,
@@ -130,7 +130,7 @@ const E = (e, r) => {
130
130
  ...C,
131
131
  ...I,
132
132
  "aria-label": `${h("aria.dragHandle")}: ${e.label}`,
133
- className: "shrink-0 mt-0.5 cursor-grab active:cursor-grabbing p-0 hover:bg-muted rounded flex items-center h-4",
133
+ className: "shrink-0 mt-0.5 cursor-grab active:cursor-grabbing p-0 hover:bg-canvas-muted rounded flex items-center h-4",
134
134
  style: {
135
135
  pointerEvents: "auto",
136
136
  position: "relative",
@@ -3,5 +3,7 @@ import { avatarVariants } from './avatar.variants';
3
3
  import type * as React from "react";
4
4
  import type * as AvatarPrimitive from "@radix-ui/react-avatar";
5
5
  export type AvatarProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root> & VariantProps<typeof avatarVariants>;
6
+ /** Image slot — Radix `Avatar.Image`. Cross-fades to `AvatarFallback` on load failure. */
6
7
  export type AvatarImageProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image>;
8
+ /** Shown when the image is loading or failed. Use 1–2 initials or an icon. */
7
9
  export type AvatarFallbackProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Fallback>;
@@ -2,6 +2,8 @@ import { VariantProps } from 'class-variance-authority';
2
2
  import { badgeVariants } from './badge.variants';
3
3
  import type * as React from "react";
4
4
  export interface BadgeProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "color">, Omit<VariantProps<typeof badgeVariants>, "layout"> {
5
+ /** Optional leading icon (16px). Omit `children` for icon-only badge (`data-layout="iconOnly"`). */
5
6
  icon?: React.ReactNode;
7
+ /** Inactive visual — `pointer-events-none` and disabled token colors. */
6
8
  disabled?: boolean;
7
9
  }
@@ -1,7 +1,7 @@
1
1
  import "react-day-picker";
2
2
  import { cn as e } from "../../../lib/utils.js";
3
3
  function s(o) {
4
- const { defaultClassNames: t, pickerType: n, calendarType: l, showOutsideDays: a, classNames: r } = o;
4
+ const { defaultClassNames: t, pickerType: r, calendarType: l, showOutsideDays: a, classNames: n } = o;
5
5
  return {
6
6
  root: e("w-fit", t.root),
7
7
  months: e("relative", t.months),
@@ -33,39 +33,39 @@ function s(o) {
33
33
  ),
34
34
  weekday: e(
35
35
  "flex-1 select-none rounded-md font-normal text-center",
36
- "text-[11px] text-content-muted pb-2",
36
+ "text-[11px] text-secondary-foreground pb-2",
37
37
  "[&:nth-child(2)]:pl-2",
38
38
  t.weekday
39
39
  ),
40
40
  week: e("mt-1 flex w-full items-stretch group/week", t.week),
41
41
  week_number_header: e(
42
42
  "select-none font-normal text-center h-[30px] flex items-center justify-center",
43
- "text-[11px] text-content-muted w-[30px] flex-shrink-0",
43
+ "text-[11px] text-secondary-foreground w-[30px] flex-shrink-0",
44
44
  t.week_number_header
45
45
  ),
46
46
  week_number: e(
47
47
  "select-none flex items-center justify-center h-[30px]",
48
- "text-[11px] text-content-muted w-[30px] flex-shrink-0 transition-colors",
49
- n === "week" && "group-hover/week:bg-accent group-hover/week:rounded-l-lg",
48
+ "text-[11px] text-secondary-foreground w-[30px] flex-shrink-0 transition-colors",
49
+ r === "week" && "group-hover/week:bg-accent group-hover/week:rounded-l-lg",
50
50
  t.week_number
51
51
  ),
52
52
  day: e(
53
53
  "group/day relative select-none p-0 text-center flex-1 h-[30px] flex items-center justify-center [&:nth-child(2)]:pl-2 rdp-day",
54
- n === "week" && "group-hover/week:bg-accent [&:nth-child(2)]:group-hover/week:rounded-l-full [&:nth-child(8)]:group-hover/week:rounded-r-full",
55
- n === "week" && "[&.rdp-selected:nth-child(2)]:rounded-l-full [&.rdp-selected:nth-child(8)]:rounded-r-full",
56
- r?.day
54
+ r === "week" && "group-hover/week:bg-accent [&:nth-child(2)]:group-hover/week:rounded-l-full [&:nth-child(8)]:group-hover/week:rounded-r-full",
55
+ r === "week" && "[&.rdp-selected:nth-child(2)]:rounded-l-full [&.rdp-selected:nth-child(8)]:rounded-r-full",
56
+ n?.day
57
57
  ),
58
58
  range_start: e("bg-accent rounded-l-full", t.range_start),
59
59
  range_middle: e("bg-accent rounded-none", t.range_middle),
60
60
  range_end: e("bg-accent rounded-r-full", t.range_end),
61
61
  today: e("text-brand", t.today),
62
62
  outside: e(
63
- l === "fiscal" || a ? "text-content-muted opacity-50" : "invisible",
63
+ l === "fiscal" || a ? "text-secondary-foreground opacity-50" : "invisible",
64
64
  t.outside
65
65
  ),
66
- disabled: e("text-content-muted opacity-50", t.disabled),
66
+ disabled: e("text-secondary-foreground opacity-50", t.disabled),
67
67
  hidden: e("invisible", t.hidden),
68
- ...r
68
+ ...n
69
69
  };
70
70
  }
71
71
  export {
@@ -7,7 +7,7 @@ import { isMonthRangeSelection as q } from "../../forms/date-picker/calendar-sel
7
7
  function K({
8
8
  yearOffset: s = 0,
9
9
  displayYear: e,
10
- monthMode: u,
10
+ monthMode: h,
11
11
  monthsShort: N,
12
12
  showFooter: p,
13
13
  pendingMonthSelection: w,
@@ -15,7 +15,7 @@ function K({
15
15
  resolvedStartYear: S,
16
16
  resolvedEndYear: j,
17
17
  yearOptions: k,
18
- previousYearLabel: h,
18
+ previousYearLabel: u,
19
19
  nextYearLabel: g,
20
20
  isMonthSelected: z,
21
21
  getMonthRangeProps: R,
@@ -33,8 +33,8 @@ function K({
33
33
  variant: "ghost",
34
34
  size: "icon",
35
35
  className: "h-7 w-7 shrink-0",
36
- "aria-label": h,
37
- title: h,
36
+ "aria-label": u,
37
+ title: u,
38
38
  disabled: e <= S,
39
39
  onClick: () => P(e),
40
40
  children: /* @__PURE__ */ t(v, { size: 16, className: "rotate-180" })
@@ -54,7 +54,7 @@ function K({
54
54
  menuWidth: "140px"
55
55
  }
56
56
  ) }),
57
- (u === "single" || s === 1) && /* @__PURE__ */ t(
57
+ (h === "single" || s === 1) && /* @__PURE__ */ t(
58
58
  m,
59
59
  {
60
60
  variant: "ghost",
@@ -69,7 +69,7 @@ function K({
69
69
  )
70
70
  ] }),
71
71
  /* @__PURE__ */ t("div", { className: "grid grid-cols-4 gap-x-0 gap-y-4", children: N.map((r, o) => {
72
- const f = z(e, o), { isStart: l, isEnd: i, isMiddle: a } = R(e, o), c = u === "range", b = p ? w : C, I = q(b) && !!b.to, n = M(e, o);
72
+ const f = z(e, o), { isStart: l, isEnd: i, isMiddle: a } = R(e, o), c = h === "range", b = p ? w : C, I = q(b) && !!b.to, n = M(e, o);
73
73
  return /* @__PURE__ */ d("div", { className: "group relative flex h-10 w-full items-center justify-center", children: [
74
74
  c && I && (a || l || i) && !n && /* @__PURE__ */ t(
75
75
  "div",
@@ -95,7 +95,7 @@ function K({
95
95
  c && (l || i) && !n && "rounded-lg bg-brand text-brand-foreground hover:bg-brand/90 hover:text-brand-foreground",
96
96
  !f && !n && "border border-transparent hover:border-brand hover:bg-accent hover:text-accent-foreground",
97
97
  a && !n && "text-accent-foreground",
98
- n && "cursor-not-allowed text-content-muted opacity-50"
98
+ n && "cursor-not-allowed text-content-placeholder opacity-50"
99
99
  ),
100
100
  children: r
101
101
  }
@@ -1,69 +1,69 @@
1
- import { jsx as n } from "react/jsx-runtime";
1
+ import { jsx as r } from "react/jsx-runtime";
2
2
  import "react";
3
- import { cn as o } from "../../../lib/utils.js";
3
+ import { cn as a } from "../../../lib/utils.js";
4
4
  function C({
5
- week: m,
6
- weekStartsOn: a,
5
+ week: y,
6
+ weekStartsOn: c,
7
7
  pickerType: h,
8
8
  weekNumberLabel: i,
9
9
  weekLabel: p,
10
- onWeekSelect: y,
11
- className: c,
10
+ onWeekSelect: m,
11
+ className: s,
12
12
  ...f
13
13
  }) {
14
- const e = m.days.find((s) => !s.outside)?.date;
14
+ const e = y.days.find((o) => !o.outside)?.date;
15
15
  if (!e)
16
- return /* @__PURE__ */ n(
16
+ return /* @__PURE__ */ r(
17
17
  "td",
18
18
  {
19
19
  ...f,
20
- className: o(
21
- "select-none flex h-8 w-8 flex-shrink-0 items-center justify-center text-[11px] text-content-muted rdp-week_number",
22
- c
20
+ className: a(
21
+ "select-none flex h-8 w-8 flex-shrink-0 items-center justify-center text-[11px] text-secondary-foreground rdp-week_number",
22
+ s
23
23
  ),
24
- children: /* @__PURE__ */ n("div", { className: "flex size-[--cell-size] items-center justify-center text-center" })
24
+ children: /* @__PURE__ */ r("div", { className: "flex size-[--cell-size] items-center justify-center text-center" })
25
25
  }
26
26
  );
27
- const l = e.getFullYear(), u = e.getMonth(), k = (new Date(l, u, 1).getDay() + 7 - a) % 7, D = new Date(l, u, 1 - k), d = new Date(e), w = (e.getDay() + 7 - a) % 7;
28
- d.setDate(e.getDate() - w);
29
- const r = Math.round(
30
- (d.getTime() - D.getTime()) / (10080 * 60 * 1e3)
31
- ) + 1, x = p(r);
27
+ const l = e.getFullYear(), d = e.getMonth(), k = (new Date(l, d, 1).getDay() + 7 - c) % 7, D = new Date(l, d, 1 - k), u = new Date(e), g = (e.getDay() + 7 - c) % 7;
28
+ u.setDate(e.getDate() - g);
29
+ const n = Math.round(
30
+ (u.getTime() - D.getTime()) / (10080 * 60 * 1e3)
31
+ ) + 1, x = p(n);
32
32
  if (h === "week") {
33
- const s = () => y(e);
34
- return /* @__PURE__ */ n(
33
+ const o = () => m(e);
34
+ return /* @__PURE__ */ r(
35
35
  "td",
36
36
  {
37
37
  "aria-label": x,
38
- "data-week-index": r,
39
- "data-week-number": r,
38
+ "data-week-index": n,
39
+ "data-week-number": n,
40
40
  tabIndex: 0,
41
41
  role: "button",
42
- className: o(
42
+ className: a(
43
43
  "select-none flex h-[30px] w-[30px] flex-shrink-0 cursor-pointer items-center justify-center rounded-lg rdp-week_number transition-colors hover:bg-accent hover:text-accent-foreground group-hover/week:bg-accent group-hover/week:rounded-l-lg",
44
- c
44
+ s
45
45
  ),
46
46
  onClick: (t) => {
47
- t.preventDefault(), t.stopPropagation(), s();
47
+ t.preventDefault(), t.stopPropagation(), o();
48
48
  },
49
49
  onKeyDown: (t) => {
50
- (t.key === "Enter" || t.key === " ") && (t.preventDefault(), t.stopPropagation(), s());
50
+ (t.key === "Enter" || t.key === " ") && (t.preventDefault(), t.stopPropagation(), o());
51
51
  },
52
- children: /* @__PURE__ */ n("div", { className: "flex h-8 w-full items-center justify-center text-center text-[11px] text-content-muted", children: i(r) })
52
+ children: /* @__PURE__ */ r("div", { className: "flex h-8 w-full items-center justify-center text-center text-[11px] text-secondary-foreground", children: i(n) })
53
53
  }
54
54
  );
55
55
  }
56
- return /* @__PURE__ */ n(
56
+ return /* @__PURE__ */ r(
57
57
  "th",
58
58
  {
59
59
  ...f,
60
60
  "aria-label": x,
61
- className: o(
62
- "select-none flex h-[30px] w-[30px] flex-shrink-0 items-center justify-center text-[11px] text-content-muted rdp-week_number",
63
- c
61
+ className: a(
62
+ "select-none flex h-[30px] w-[30px] flex-shrink-0 items-center justify-center text-[11px] text-secondary-foreground rdp-week_number",
63
+ s
64
64
  ),
65
65
  scope: "row",
66
- children: /* @__PURE__ */ n("div", { className: "flex h-8 w-full items-center justify-center text-center", children: i(r) })
66
+ children: /* @__PURE__ */ r("div", { className: "flex h-8 w-full items-center justify-center text-center", children: i(n) })
67
67
  }
68
68
  );
69
69
  }
@@ -4,16 +4,16 @@ import { createCompoundPart as a } from "../../../lib/primitives/create-compound
4
4
  import { cn as s } from "../../../lib/utils.js";
5
5
  const i = d(
6
6
  "Card",
7
- ({ className: e, ...t }, r) => /* @__PURE__ */ o(
7
+ ({ className: e, ...r }, t) => /* @__PURE__ */ o(
8
8
  "div",
9
9
  {
10
- ref: r,
10
+ ref: t,
11
11
  "data-component": "card",
12
12
  className: s(
13
13
  "rounded-xl border bg-canvas-elevated text-canvas-elevated-foreground shadow",
14
14
  e
15
15
  ),
16
- ...t
16
+ ...r
17
17
  }
18
18
  )
19
19
  ), l = a("card", {
@@ -24,11 +24,11 @@ const i = d(
24
24
  part: "title",
25
25
  displayName: "CardTitle",
26
26
  className: "font-semibold leading-none tracking-tight"
27
- }), N = a("card", {
27
+ }), f = a("card", {
28
28
  part: "description",
29
29
  displayName: "CardDescription",
30
- className: "text-sm text-content-muted"
31
- }), f = a("card", {
30
+ className: "text-sm text-secondary-foreground"
31
+ }), N = a("card", {
32
32
  part: "content",
33
33
  displayName: "CardContent",
34
34
  className: "p-6 pt-0"
@@ -39,8 +39,8 @@ const i = d(
39
39
  });
40
40
  export {
41
41
  i as Card,
42
- f as CardContent,
43
- N as CardDescription,
42
+ N as CardContent,
43
+ f as CardDescription,
44
44
  x as CardFooter,
45
45
  l as CardHeader,
46
46
  C as CardTitle
@@ -1,6 +1,15 @@
1
1
  import type * as Highcharts from 'highcharts';
2
2
  export type ChartSeriesOptions = Highcharts.SeriesOptionsType;
3
3
  export type ChartType = ChartSeriesOptions['type'];
4
+ /**
5
+ * Impact Nova chart props — a styled wrapper around Highcharts only.
6
+ *
7
+ * - `series` accepts native `Highcharts.SeriesOptionsType[]` (all Highcharts series types).
8
+ * - `options` accepts full `Highcharts.Options` and merges over design-system defaults.
9
+ * - Simplified props map common cases; use `options` for the rest of the Highcharts API.
10
+ *
11
+ * @see https://api.highcharts.com/highcharts/
12
+ */
4
13
  export interface ChartProps {
5
14
  type?: ChartType;
6
15
  series?: ChartSeriesOptions[];
@@ -1,15 +1,15 @@
1
- import { jsx as n } from "react/jsx-runtime";
2
- import { createComponent as m } from "../../../lib/primitives/create-component.js";
1
+ import { jsx as m } from "react/jsx-runtime";
2
+ import { createComponent as n } from "../../../lib/primitives/create-component.js";
3
3
  import { cn as r } from "../../../lib/utils.js";
4
- const s = m(
4
+ const s = n(
5
5
  "Skeleton",
6
- ({ className: o, ...e }, t) => /* @__PURE__ */ n(
6
+ ({ className: e, ...o }, t) => /* @__PURE__ */ m(
7
7
  "div",
8
8
  {
9
9
  ref: t,
10
10
  "data-component": "skeleton",
11
- className: r("animate-pulse rounded-md bg-brand/10", o),
12
- ...e
11
+ className: r("animate-pulse rounded-md bg-muted", e),
12
+ ...o
13
13
  }
14
14
  )
15
15
  );