impact-nova 2.5.13 → 2.5.14

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 (148) hide show
  1. package/dist/components/data/data-table/build-column-tree-from-grid.d.ts +0 -1
  2. package/dist/components/data/data-table/build-column-tree-from-grid.js +50 -55
  3. package/dist/components/data/data-table/data-table-column-apply.d.ts +0 -2
  4. package/dist/components/data/data-table/data-table-column-apply.js +73 -84
  5. package/dist/components/data/data-table/data-table-column-list.js +64 -94
  6. package/dist/components/data/data-table/data-table-column-tree-cache.d.ts +6 -12
  7. package/dist/components/data/data-table/data-table-column-tree-cache.js +131 -250
  8. package/dist/components/data/data-table/patch-column-tree-indicators-from-grid.d.ts +0 -5
  9. package/dist/components/data/data-table/patch-column-tree-indicators-from-grid.js +11 -28
  10. package/dist/components/data/data-table/use-data-table-column-list-sync.d.ts +0 -10
  11. package/dist/components/data/data-table/use-data-table-column-list-sync.js +196 -250
  12. package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +3 -2
  13. package/dist/components/data/expandable-list-item/expandable-list-item-metrics.js +3 -2
  14. package/dist/components/data/nested-list/components/NestedListContent.d.ts +2 -10
  15. package/dist/components/data/nested-list/components/NestedListContent.js +138 -253
  16. package/dist/components/data/nested-list/components/SortableItem.d.ts +1 -2
  17. package/dist/components/data/nested-list/components/SortableItem.js +60 -62
  18. package/dist/components/data/nested-list/hooks/useNestedListDragDrop.d.ts +20 -10
  19. package/dist/components/data/nested-list/hooks/useNestedListDragDrop.js +233 -44
  20. package/dist/components/data/nested-list/nested-list-constants.d.ts +1 -4
  21. package/dist/components/data/nested-list/nested-list-constants.js +4 -10
  22. package/dist/components/data/nested-list/nested-list.js +336 -322
  23. package/dist/components/data/nested-list/nested-list.types.d.ts +0 -17
  24. package/dist/components/data-display/calendar/calendar-apply-validation.d.ts +2 -0
  25. package/dist/components/data-display/calendar/calendar-apply-validation.js +64 -67
  26. package/dist/components/data-display/calendar/calendar-available-view.d.ts +27 -0
  27. package/dist/components/data-display/calendar/calendar-available-view.js +85 -0
  28. package/dist/components/data-display/calendar/calendar-config.js +1 -1
  29. package/dist/components/data-display/calendar/calendar-day-picker-components.d.ts +4 -2
  30. package/dist/components/data-display/calendar/calendar-day-picker-components.js +234 -164
  31. package/dist/components/data-display/calendar/calendar-day-picker-view.js +77 -76
  32. package/dist/components/data-display/calendar/calendar-fiscal-day-cell.d.ts +9 -0
  33. package/dist/components/data-display/calendar/calendar-fiscal-day-cell.js +45 -0
  34. package/dist/components/data-display/calendar/calendar-fiscal-period-nav.d.ts +6 -0
  35. package/dist/components/data-display/calendar/calendar-fiscal-period-nav.js +34 -18
  36. package/dist/components/data-display/calendar/calendar-footer.js +21 -21
  37. package/dist/components/data-display/calendar/calendar-injected-week-row.d.ts +5 -0
  38. package/dist/components/data-display/calendar/calendar-injected-week-row.js +92 -0
  39. package/dist/components/data-display/calendar/calendar-leading-week.utils.d.ts +16 -0
  40. package/dist/components/data-display/calendar/calendar-leading-week.utils.js +51 -0
  41. package/dist/components/data-display/calendar/calendar-month-picker-panel.js +50 -49
  42. package/dist/components/data-display/calendar/calendar-month-utils.d.ts +5 -0
  43. package/dist/components/data-display/calendar/calendar-month-utils.js +85 -64
  44. package/dist/components/data-display/calendar/calendar-orphan-week.d.ts +23 -0
  45. package/dist/components/data-display/calendar/calendar-padding-week.utils.d.ts +3 -1
  46. package/dist/components/data-display/calendar/calendar-padding-week.utils.js +7 -5
  47. package/dist/components/data-display/calendar/calendar-period-cell.js +45 -46
  48. package/dist/components/data-display/calendar/calendar-quarter-panes.js +33 -31
  49. package/dist/components/data-display/calendar/calendar-selection-appearance.d.ts +10 -0
  50. package/dist/components/data-display/calendar/calendar-selection-appearance.js +53 -39
  51. package/dist/components/data-display/calendar/calendar-selection.d.ts +25 -0
  52. package/dist/components/data-display/calendar/calendar-selection.js +52 -23
  53. package/dist/components/data-display/calendar/calendar-week-number-cell.d.ts +2 -1
  54. package/dist/components/data-display/calendar/calendar-week-number-cell.js +59 -45
  55. package/dist/components/data-display/calendar/calendar-week-utils.d.ts +15 -4
  56. package/dist/components/data-display/calendar/calendar-week-utils.js +59 -50
  57. package/dist/components/data-display/calendar/calendar-year-panes.d.ts +3 -0
  58. package/dist/components/data-display/calendar/calendar-year-panes.js +53 -49
  59. package/dist/components/data-display/calendar/calendar.js +146 -143
  60. package/dist/components/data-display/calendar/calendar.types.d.ts +5 -0
  61. package/dist/components/data-display/calendar/use-calendar-day-picker-config.d.ts +2 -1
  62. package/dist/components/data-display/calendar/use-calendar-day-picker-config.js +79 -74
  63. package/dist/components/data-display/calendar/use-calendar-state.d.ts +3 -1
  64. package/dist/components/data-display/calendar/use-calendar-state.js +394 -314
  65. package/dist/components/feedback/tooltip/tab-tooltip-render.js +3 -2
  66. package/dist/components/flows/command-palette/shortcut-settings.js +10 -10
  67. package/dist/components/flows/filter-panel/filter-panel.js +4 -4
  68. package/dist/components/forms/date-picker/date-picker.js +60 -58
  69. package/dist/components/forms/date-picker/date-picker.types.d.ts +5 -0
  70. package/dist/components/forms/date-picker/date-range-picker.js +66 -64
  71. package/dist/components/forms/date-picker/fiscal-pass-through.d.ts +1 -0
  72. package/dist/components/forms/date-picker/fiscal-pass-through.js +3 -2
  73. package/dist/components/forms/date-picker/fiscal-picker-fixtures.d.ts +17 -0
  74. package/dist/components/forms/date-picker/month-picker.js +61 -59
  75. package/dist/components/forms/date-picker/month-range-picker.js +63 -61
  76. package/dist/components/forms/date-picker/multi-date-picker.js +51 -49
  77. package/dist/components/forms/date-picker/multi-month-picker.js +49 -47
  78. package/dist/components/forms/date-picker/multi-quarter-picker.js +51 -47
  79. package/dist/components/forms/date-picker/multi-week-picker.js +53 -51
  80. package/dist/components/forms/date-picker/multi-year-picker.js +53 -49
  81. package/dist/components/forms/date-picker/quarter-picker.js +51 -47
  82. package/dist/components/forms/date-picker/quarter-range-picker.js +50 -46
  83. package/dist/components/forms/date-picker/week-picker.js +130 -126
  84. package/dist/components/forms/date-picker/week-range-picker.js +159 -155
  85. package/dist/components/forms/date-picker/year-picker.js +52 -48
  86. package/dist/components/forms/date-picker/year-range-picker.js +52 -48
  87. package/dist/components/forms/select/components/SelectTriggerValue.js +3 -2
  88. package/dist/components/forms/select/components/Submenu.js +3 -2
  89. package/dist/form-react/Fields/DateInputField.js +51 -50
  90. package/dist/form-react/Fields/DateRangeField.js +14 -13
  91. package/dist/form-react/Fields/MonthRangeField.js +29 -28
  92. package/dist/form-react/Fields/MultiMonthPickerField.js +13 -12
  93. package/dist/form-react/Fields/MultiWeekPickerField.js +35 -27
  94. package/dist/form-react/Fields/MultiYearPickerField.d.ts +8 -0
  95. package/dist/form-react/Fields/MultiYearPickerField.js +57 -0
  96. package/dist/form-react/Fields/WeekRangePicker.js +33 -32
  97. package/dist/form-react/Fields/YearPickerField.d.ts +8 -0
  98. package/dist/form-react/Fields/YearPickerField.js +57 -0
  99. package/dist/form-react/Fields/YearRangePickerField.d.ts +8 -0
  100. package/dist/form-react/Fields/YearRangePickerField.js +57 -0
  101. package/dist/form-react/registry/defaultFieldRegistrations.d.ts +1 -1
  102. package/dist/form-react/registry/defaultFieldRegistrations.js +16 -13
  103. package/dist/form-react/types/fields.types.d.ts +69 -1
  104. package/dist/form-react/types/fieldsOutput.types.d.ts +8 -2
  105. package/dist/form-react/utils/fieldDefaults.utils.js +1 -1
  106. package/dist/impact-nova-components.css +13 -6
  107. package/dist/impact-nova.css +1 -1
  108. package/dist/lib/fiscal-calendar/index.d.ts +2 -2
  109. package/dist/lib/fiscal-calendar/index.js +26 -28
  110. package/dist/lib/fiscal-calendar/types.d.ts +0 -7
  111. package/dist/lib/fiscal-calendar/week-selection.d.ts +3 -4
  112. package/dist/lib/fiscal-calendar/week-selection.js +52 -79
  113. package/dist/llms/rules/ag-grid.js +1 -1
  114. package/dist/llms/rules/installation.js +1 -1
  115. package/dist/llms/rules/requirements.js +1 -1
  116. package/package.json +1 -1
  117. package/dist/components/data/data-table/column-picker-authority.d.ts +0 -34
  118. package/dist/components/data/data-table/column-picker-authority.js +0 -116
  119. package/dist/components/data/data-table/column-picker-drop-validation.d.ts +0 -7
  120. package/dist/components/data/data-table/column-picker-drop-validation.js +0 -37
  121. package/dist/components/data/data-table/data-table-column-list-tree-apply.d.ts +0 -10
  122. package/dist/components/data/data-table/data-table-column-list-tree-apply.js +0 -79
  123. package/dist/components/data/data-table/data-table-flat-column-virtual-rows.d.ts +0 -26
  124. package/dist/components/data/data-table/data-table-flat-column-virtual-rows.js +0 -195
  125. package/dist/components/data/data-table/data-table-picker-column-eligibility.d.ts +0 -1
  126. package/dist/components/data/data-table/data-table-picker-column-eligibility.js +0 -7
  127. package/dist/components/data/data-table/reconcile-column-tree-from-grid.d.ts +0 -12
  128. package/dist/components/data/data-table/reconcile-column-tree-from-grid.js +0 -12
  129. package/dist/components/data/nested-list/hooks/useVirtualNestedListDrag.d.ts +0 -24
  130. package/dist/components/data/nested-list/hooks/useVirtualNestedListDrag.js +0 -128
  131. package/dist/components/data/nested-list/nested-list-display-utils.d.ts +0 -11
  132. package/dist/components/data/nested-list/nested-list-display-utils.js +0 -74
  133. package/dist/components/data/nested-list/nested-list-drop-engine.d.ts +0 -31
  134. package/dist/components/data/nested-list/nested-list-drop-engine.js +0 -209
  135. package/dist/components/data/nested-list/nested-list-flat-virtual-handlers.d.ts +0 -26
  136. package/dist/components/data/nested-list/nested-list-flat-virtual-handlers.js +0 -67
  137. package/dist/components/data/nested-list/nested-list-item-tree-mutations.d.ts +0 -4
  138. package/dist/components/data/nested-list/nested-list-item-tree-mutations.js +0 -43
  139. package/dist/components/data/nested-list/nested-list-lazy-flat-rows.d.ts +0 -3
  140. package/dist/components/data/nested-list/nested-list-lazy-flat-rows.js +0 -34
  141. package/dist/components/data/nested-list/nested-list-row-estimates.d.ts +0 -9
  142. package/dist/components/data/nested-list/nested-list-row-estimates.js +0 -14
  143. package/dist/components/data/nested-list/nested-list-scroll-anchor.d.ts +0 -36
  144. package/dist/components/data/nested-list/nested-list-scroll-anchor.js +0 -47
  145. package/dist/components/data/nested-list/nested-list-virtual-drop.d.ts +0 -59
  146. package/dist/components/data/nested-list/nested-list-virtual-drop.js +0 -341
  147. package/dist/lib/hash/fnv1a128.d.ts +0 -16
  148. package/dist/lib/hash/fnv1a128.js +0 -21
@@ -1,37 +0,0 @@
1
- import { findNestedListItemById as c, findNestedListParentId as i } from "../nested-list/nested-list-drop-engine.js";
2
- import { NESTED_LIST_SECTION_IDS as l } from "../nested-list/nested-list-constants.js";
3
- function f(t) {
4
- const e = t.indexOf("__");
5
- return e === -1 ? t : t.slice(0, e);
6
- }
7
- function m(t) {
8
- return t?.data?.columnGroupChain ?? [];
9
- }
10
- function h(t, e) {
11
- const n = [];
12
- let r = i(t, e);
13
- for (; r && !l.has(r); ) {
14
- const o = c(t, r);
15
- (o?.category === "group" || o?.children) && n.unshift(f(r)), r = i(t, r);
16
- }
17
- return n;
18
- }
19
- function v(t, e) {
20
- return t.length !== e.length ? !1 : t.every((n, r) => n === e[r]);
21
- }
22
- function C(t) {
23
- const { items: e, activeItemId: n, overItemId: r, insertAfter: o } = t, I = c(e, n), u = m(I);
24
- if (u.length === 0)
25
- return !0;
26
- const d = i(e, n), p = i(e, r);
27
- if (d === p)
28
- return !0;
29
- const a = c(e, r);
30
- if (a?.category !== "group" || o === !1)
31
- return !0;
32
- const s = h(e, r);
33
- return s.push(f(a.id)), v(u, s);
34
- }
35
- export {
36
- C as isValidColumnPickerGroupDrop
37
- };
@@ -1,10 +0,0 @@
1
- import { GridApi } from 'ag-grid-community';
2
- import { NestedListItem } from '../nested-list/nested-list.types';
3
- export interface TreeColumnChangeContext {
4
- gridApi: GridApi;
5
- newItems: NestedListItem[];
6
- releaseLockAndRebuildTreeFromGrid: () => void;
7
- applyExternalGridSync: () => void;
8
- setIsUpdating: (isUpdating: boolean) => void;
9
- }
10
- export declare function applyTreeColumnChanges(context: TreeColumnChangeContext): void;
@@ -1,79 +0,0 @@
1
- import { mergePartialOrderedColumnState as T } from "./data-table-column-state.js";
2
- import { afterSynchronousColumnApply as I, normalizeColumnPinned as C, GRID_AUTO_UNPIN_WAIT_MS as b } from "./data-table-column-apply.js";
3
- import { buildColumnStateFromTree as P } from "./build-column-state-from-tree.js";
4
- import { subscribeGridApiEvent as h } from "../ag-grid-react/grid-api-event-subscription.js";
5
- function k(a) {
6
- const {
7
- gridApi: t,
8
- newItems: r,
9
- releaseLockAndRebuildTreeFromGrid: o,
10
- applyExternalGridSync: s,
11
- setIsUpdating: i
12
- } = a;
13
- i(!0);
14
- const l = P(r);
15
- if (l.length === 0) {
16
- I(() => {
17
- o();
18
- });
19
- return;
20
- }
21
- const c = t.getColumnState(), d = T(c, l);
22
- U({
23
- gridApi: t,
24
- mergedState: d,
25
- releaseLockAndRebuildTreeFromGrid: o,
26
- applyExternalGridSync: s,
27
- setIsUpdating: i
28
- });
29
- }
30
- function U(a) {
31
- const {
32
- gridApi: t,
33
- mergedState: r,
34
- releaseLockAndRebuildTreeFromGrid: o,
35
- applyExternalGridSync: s,
36
- setIsUpdating: i
37
- } = a, l = t.getColumnState(), c = new Set(
38
- l.filter((e) => C(e.pinned)).map((e) => e.colId)
39
- ), d = r.filter(
40
- (e) => C(e.pinned) && !c.has(e.colId)
41
- ), y = new Set(d.map((e) => e.colId));
42
- t.applyColumnState({ state: r, applyOrder: !0 });
43
- const A = () => {
44
- o();
45
- };
46
- if (y.size === 0) {
47
- I(A);
48
- return;
49
- }
50
- let u = !1, m = null, f = null;
51
- f = h(t, "columnPinned", () => {
52
- if (u || t.isDestroyed())
53
- return;
54
- const e = t.getColumnState();
55
- if (d.filter((p) => {
56
- const n = e.find((S) => S.colId === p.colId);
57
- return n && !n.pinned;
58
- }).length > 0) {
59
- u = !0, m && clearTimeout(m), f?.();
60
- const p = r.filter(
61
- (n) => n.pinned && !y.has(n.colId)
62
- );
63
- if (p.length > 0) {
64
- const n = p[0], S = r.map(
65
- (g) => g.colId === n.colId ? { ...g, pinned: null } : g
66
- );
67
- t.applyColumnState({ state: S, applyOrder: !0 });
68
- }
69
- I(() => {
70
- i(!1), s();
71
- });
72
- }
73
- }), m = setTimeout(() => {
74
- f?.(), u || A();
75
- }, b);
76
- }
77
- export {
78
- k as applyTreeColumnChanges
79
- };
@@ -1,26 +0,0 @@
1
- import { FlatNestedListRow } from '../nested-list/nested-list-virtual-drop';
2
- import { NestedListItem } from '../nested-list/nested-list.types';
3
- import { ColumnPickerAuthority } from './column-picker-authority';
4
- import { BuildColumnTreeLabels } from './build-column-tree-from-grid';
5
- export interface FlatColumnVirtualRowModelOptions {
6
- searchQuery?: string;
7
- sortAppliedByColumnId?: ReadonlyMap<string, boolean>;
8
- filterAppliedByColumnId?: ReadonlyMap<string, boolean>;
9
- }
10
- export interface FlatColumnVirtualRowModel {
11
- rowCount: number;
12
- frozenColumnIds: readonly string[];
13
- scrollableColumnIds: readonly string[];
14
- getRowAt: (index: number) => FlatNestedListRow;
15
- getColumnIdAt: (index: number) => string | null;
16
- findFlatIndexByColumnId: (columnId: string) => number;
17
- }
18
- export declare function buildFlatColumnVirtualRowModel(authority: ColumnPickerAuthority, labels: BuildColumnTreeLabels, options?: FlatColumnVirtualRowModelOptions): FlatColumnVirtualRowModel;
19
- export declare function buildAuthorityFlatShellItems(authority: ColumnPickerAuthority, labels: BuildColumnTreeLabels): NestedListItem[];
20
- export declare function isFlatLargeColumnPicker(authority: ColumnPickerAuthority, threshold: number): boolean;
21
- export interface FlatVirtualDropToAuthorityOptions {
22
- draggedColumnId: string;
23
- overId: string;
24
- insertAfter: boolean;
25
- }
26
- export declare function applyFlatVirtualDropToAuthority(authority: ColumnPickerAuthority, rowModel: FlatColumnVirtualRowModel, options: FlatVirtualDropToAuthorityOptions): ColumnPickerAuthority | null;
@@ -1,195 +0,0 @@
1
- import { getSectionIdFromDroppable as S } from "../nested-list/nested-list-drop-engine.js";
2
- import { NESTED_LIST_ROOT_FROZEN_ID as d, NESTED_LIST_ROOT_SCROLLABLE_ID as u } from "../nested-list/nested-list-constants.js";
3
- import { updateColumnPin as h, reorderColumn as k } from "./column-picker-authority.js";
4
- function g(e) {
5
- const n = [], t = [];
6
- for (const l of e.orderedColumnIds)
7
- e.pinByColumnId.get(l) ? n.push(l) : t.push(l);
8
- return { frozenColumnIds: n, scrollableColumnIds: t };
9
- }
10
- function b(e, n, t) {
11
- const l = t.trim().toLowerCase();
12
- return l === "" ? [...n] : n.filter((r) => (e.labelByColumnId.get(r) ?? r).toLowerCase().includes(l));
13
- }
14
- function C(e, n) {
15
- if (e.length === 0)
16
- return { checked: !1, indeterminate: !1 };
17
- let t = 0;
18
- for (const l of e)
19
- (n.visibilityByColumnId.get(l) ?? !0) && (t += 1);
20
- return {
21
- checked: t === e.length,
22
- indeterminate: t > 0 && t < e.length
23
- };
24
- }
25
- function D(e, n, t) {
26
- const l = t.searchQuery ?? "", { frozenColumnIds: r, scrollableColumnIds: c } = g(e), s = b(e, r, l), o = b(e, c, l), i = C(s, e), f = C(o, e), m = [
27
- {
28
- kind: "structure",
29
- sectionId: d,
30
- label: n.frozenColumns,
31
- checked: i.checked,
32
- indeterminate: i.indeterminate,
33
- hasVirtualColumnChildren: s.length > 0
34
- }
35
- ];
36
- for (const a of s)
37
- m.push({ kind: "column", columnId: a, sectionId: d });
38
- m.push({
39
- kind: "structure",
40
- sectionId: u,
41
- label: n.scrollableColumns,
42
- checked: f.checked,
43
- indeterminate: f.indeterminate,
44
- hasVirtualColumnChildren: o.length > 0
45
- });
46
- for (const a of o)
47
- m.push({ kind: "column", columnId: a, sectionId: u });
48
- return m;
49
- }
50
- function z(e, n, t) {
51
- const l = e.pinByColumnId.get(n) ?? null, r = e.visibilityByColumnId.get(n) ?? !0, c = e.labelByColumnId.get(n) ?? n, s = t.sortAppliedByColumnId?.get(n) ?? !1, o = t.filterAppliedByColumnId?.get(n) ?? !1;
52
- return {
53
- item: {
54
- id: n,
55
- label: c,
56
- checked: r,
57
- data: {
58
- hasSortApplied: s,
59
- hasFilterApplied: o,
60
- pinned: l
61
- }
62
- },
63
- level: 1,
64
- indentLevel: 1
65
- };
66
- }
67
- function F(e) {
68
- return {
69
- item: {
70
- id: e.sectionId,
71
- label: e.label,
72
- checked: e.checked,
73
- indeterminate: e.indeterminate,
74
- children: [],
75
- category: "structure",
76
- isDragDisabled: !0,
77
- data: { hasVirtualColumnChildren: e.hasVirtualColumnChildren }
78
- },
79
- level: 0,
80
- indentLevel: 0
81
- };
82
- }
83
- function v(e, n, t = {}) {
84
- const l = D(e, n, t), r = /* @__PURE__ */ new Map();
85
- for (let o = 0; o < l.length; o += 1) {
86
- const i = l[o];
87
- i.kind === "column" && r.set(i.columnId, o);
88
- }
89
- const { frozenColumnIds: c, scrollableColumnIds: s } = g(e);
90
- return {
91
- rowCount: l.length,
92
- frozenColumnIds: c,
93
- scrollableColumnIds: s,
94
- getRowAt: (o) => {
95
- const i = l[o];
96
- if (!i)
97
- throw new RangeError(`Flat column virtual row index out of bounds: ${o}`);
98
- return i.kind === "structure" ? F(i) : z(e, i.columnId, t);
99
- },
100
- getColumnIdAt: (o) => {
101
- const i = l[o];
102
- return i?.kind === "column" ? i.columnId : null;
103
- },
104
- findFlatIndexByColumnId: (o) => r.get(o) ?? -1
105
- };
106
- }
107
- function P(e, n) {
108
- const { frozenColumnIds: t, scrollableColumnIds: l } = g(e), r = C(t, e), c = C(l, e);
109
- return [
110
- {
111
- id: d,
112
- label: n.frozenColumns,
113
- checked: r.checked,
114
- indeterminate: r.indeterminate,
115
- children: [],
116
- category: "structure",
117
- isDragDisabled: !0
118
- },
119
- {
120
- id: u,
121
- label: n.scrollableColumns,
122
- checked: c.checked,
123
- indeterminate: c.indeterminate,
124
- children: [],
125
- category: "structure",
126
- isDragDisabled: !0
127
- }
128
- ];
129
- }
130
- function V(e, n) {
131
- if (e.orderedColumnIds.length < n)
132
- return !1;
133
- for (const t of e.orderedColumnIds) {
134
- const l = e.columnGroupChain.get(t);
135
- if (l && l.length > 0)
136
- return !1;
137
- }
138
- return !0;
139
- }
140
- function A(e, n) {
141
- const t = e.pinByColumnId.get(n);
142
- return t === "left" || t === "right";
143
- }
144
- function B(e, n) {
145
- if (n === d)
146
- return 0;
147
- for (let t = 0; t < e.orderedColumnIds.length; t += 1) {
148
- const l = e.orderedColumnIds[t];
149
- if (!A(e, l))
150
- return t;
151
- }
152
- return e.orderedColumnIds.length;
153
- }
154
- function R(e, n, t, l) {
155
- const r = e.orderedColumnIds.indexOf(n), c = e.orderedColumnIds.indexOf(t);
156
- if (r === -1 || c === -1)
157
- return null;
158
- const s = [...e.orderedColumnIds];
159
- s.splice(r, 1);
160
- const o = s.indexOf(t);
161
- if (o === -1)
162
- return null;
163
- const i = l ? o + 1 : o;
164
- return s.splice(i, 0, n), r === i ? e : k(e, r, i);
165
- }
166
- function O(e, n) {
167
- const t = S(e);
168
- return t === d || t === u ? t : e === d || e === u ? e : n.frozenColumnIds.includes(e) ? d : n.scrollableColumnIds.includes(e) ? u : null;
169
- }
170
- function _(e, n, t) {
171
- const { draggedColumnId: l, overId: r, insertAfter: c } = t;
172
- if (l === r || !e.orderedColumnIds.includes(l))
173
- return null;
174
- const s = O(r, n);
175
- if (s) {
176
- if (S(r) !== null || r === d || r === u) {
177
- const I = h(e, l, s === d ? "left" : null), x = B(I, s), p = I.orderedColumnIds.indexOf(l);
178
- return p === -1 ? null : k(I, p, x);
179
- }
180
- const i = n.frozenColumnIds.includes(l), f = s === d ? "left" : null, m = i === (f === "left") ? e : h(e, l, f);
181
- return R(
182
- m,
183
- l,
184
- r,
185
- c
186
- );
187
- }
188
- return null;
189
- }
190
- export {
191
- _ as applyFlatVirtualDropToAuthority,
192
- P as buildAuthorityFlatShellItems,
193
- v as buildFlatColumnVirtualRowModel,
194
- V as isFlatLargeColumnPicker
195
- };
@@ -1 +0,0 @@
1
- export declare function isPickerEligibleColumnId(columnId: string | null | undefined): boolean;
@@ -1,7 +0,0 @@
1
- const i = /* @__PURE__ */ new Set(["ag-Grid-SelectionColumn"]);
2
- function n(e) {
3
- return e ? !i.has(e) : !1;
4
- }
5
- export {
6
- n as isPickerEligibleColumnId
7
- };
@@ -1,12 +0,0 @@
1
- import { GridApi } from 'ag-grid-community';
2
- import { NestedListItem } from '../nested-list/nested-list.types';
3
- import { ColumnListSyncFingerprints } from './data-table-column-list-sync';
4
- import { BuildColumnTreeLabels } from './build-column-tree-from-grid';
5
- export declare function rebuildColumnTreeFromGrid(gridApi: GridApi, labels: BuildColumnTreeLabels): NestedListItem[] | null;
6
- export declare function commitRebuiltColumnTreeFromGrid(options: {
7
- gridApi: GridApi;
8
- labels: BuildColumnTreeLabels;
9
- }): {
10
- tree: NestedListItem[];
11
- fingerprints: ColumnListSyncFingerprints;
12
- } | null;
@@ -1,12 +0,0 @@
1
- import { buildColumnTreeFromGrid as m } from "./build-column-tree-from-grid.js";
2
- import { writeColumnTreeCache as t } from "./data-table-column-tree-cache.js";
3
- function l(r) {
4
- const e = m(r.gridApi, r.labels);
5
- if (!e)
6
- return null;
7
- const i = t(r.gridApi, e);
8
- return { tree: e, fingerprints: i };
9
- }
10
- export {
11
- l as commitRebuiltColumnTreeFromGrid
12
- };
@@ -1,24 +0,0 @@
1
- import { NestedListItem } from '../nested-list.types';
2
- import { FlatNestedListRow, VirtualDropRowGeometry, VirtualDropTarget } from '../nested-list-virtual-drop';
3
- export type VirtualDragSession = {
4
- draggedId: string;
5
- draggedItem: NestedListItem;
6
- dropTarget: VirtualDropTarget | null;
7
- pointerX: number;
8
- pointerY: number;
9
- isPointerInsideScrollContainer: boolean;
10
- } | null;
11
- export interface UseVirtualNestedListDragOptions {
12
- items: FlatNestedListRow[];
13
- scrollElementRef: React.RefObject<HTMLDivElement | null>;
14
- virtualizer: VirtualDropRowGeometry;
15
- estimateRowSize: (index: number) => number;
16
- onDrop: (activeId: string, overId: string, insertAfter: boolean) => void;
17
- collapsedItems?: Record<string, boolean>;
18
- }
19
- export declare function useVirtualNestedListDrag({ items, scrollElementRef, virtualizer, estimateRowSize, onDrop, collapsedItems, }: UseVirtualNestedListDragOptions): {
20
- dragSession: VirtualDragSession;
21
- handlePointerDown: (event: React.PointerEvent, itemId: string) => void;
22
- handleKeyboardReorder: (itemId: string, direction: "up" | "down") => void;
23
- isDragging: boolean;
24
- };
@@ -1,128 +0,0 @@
1
- import { useState as B, useRef as d, useEffect as w, useCallback as a } from "react";
2
- import { resolveVirtualDropTarget as M, clampPointerToScrollBounds as F } from "../nested-list-virtual-drop.js";
3
- function V({
4
- items: S,
5
- scrollElementRef: s,
6
- virtualizer: L,
7
- estimateRowSize: y,
8
- onDrop: h,
9
- collapsedItems: D = {}
10
- }) {
11
- const [v, C] = B(null), f = d(null), p = d(S), x = d(L), X = d(y), b = d(D), c = d(null), g = d(null), E = d(null);
12
- w(() => {
13
- p.current = S;
14
- }), w(() => {
15
- x.current = L;
16
- }), w(() => {
17
- X.current = y;
18
- }), w(() => {
19
- b.current = D;
20
- });
21
- const I = a((e, r) => {
22
- const n = s.current;
23
- return n ? M({
24
- clientX: e,
25
- clientY: r,
26
- scrollElement: n,
27
- items: p.current,
28
- virtualizer: x.current,
29
- estimateRowSize: X.current,
30
- offsetCacheHolder: E,
31
- collapsedItems: b.current
32
- }) : null;
33
- }, [s]), m = a(() => {
34
- f.current = null, C(null), g.current = null, c.current !== null && (cancelAnimationFrame(c.current), c.current = null);
35
- }, []), R = a(() => {
36
- const e = f.current;
37
- e?.dropTarget && e.draggedId !== e.dropTarget.overId && h(e.draggedId, e.dropTarget.overId, e.dropTarget.insertAfter);
38
- }, [h]), P = a((e, r) => {
39
- const n = f.current;
40
- if (!n)
41
- return;
42
- const t = s.current, o = t?.getBoundingClientRect(), i = o ? F(e, r, o) : {
43
- pointerX: e,
44
- pointerY: r,
45
- isInsideScrollContainer: !0
46
- }, l = I(e, r), u = i.isInsideScrollContainer ? null : n.dropTarget, T = {
47
- ...n,
48
- dropTarget: l ?? u,
49
- pointerX: i.pointerX,
50
- pointerY: i.pointerY,
51
- isPointerInsideScrollContainer: i.isInsideScrollContainer
52
- };
53
- f.current = T, C(T), t && o && (r < o.top + 40 ? t.scrollTop -= 8 : r > o.bottom - 40 && (t.scrollTop += 8));
54
- }, [I, s]), Y = a(() => {
55
- c.current !== null && (cancelAnimationFrame(c.current), c.current = null);
56
- const e = g.current;
57
- e && (P(e.clientX, e.clientY), g.current = null);
58
- }, [P]), A = a((e, r) => {
59
- g.current = { clientX: e, clientY: r }, c.current === null && (c.current = requestAnimationFrame(() => {
60
- c.current = null;
61
- const n = g.current;
62
- n && (P(n.clientX, n.clientY), g.current = null);
63
- }));
64
- }, [P]), k = a((e, r) => {
65
- const n = p.current.findIndex((T) => T.item.id === r), t = p.current[n]?.item;
66
- if (!t || n === -1 || t.isDragDisabled || t.category === "structure")
67
- return;
68
- e.preventDefault(), E.current = null, s.current?.setPointerCapture(e.pointerId);
69
- const o = s.current?.getBoundingClientRect(), i = o ? F(e.clientX, e.clientY, o) : {
70
- pointerX: e.clientX,
71
- pointerY: e.clientY,
72
- isInsideScrollContainer: !0
73
- }, l = I(e.clientX, e.clientY) ?? {
74
- overId: r,
75
- insertAfter: !1,
76
- flatIndex: n
77
- }, u = {
78
- draggedId: r,
79
- draggedItem: t,
80
- dropTarget: l,
81
- pointerX: i.pointerX,
82
- pointerY: i.pointerY,
83
- isPointerInsideScrollContainer: i.isInsideScrollContainer
84
- };
85
- f.current = u, C(u);
86
- }, [I, s]);
87
- w(() => {
88
- if (!v)
89
- return;
90
- const e = (u) => {
91
- A(u.clientX, u.clientY);
92
- }, r = () => {
93
- Y(), R(), m();
94
- }, n = () => {
95
- m();
96
- }, t = () => {
97
- m();
98
- }, o = (u) => {
99
- u.key === "Escape" && m();
100
- };
101
- window.addEventListener("pointermove", e), window.addEventListener("pointerup", r), window.addEventListener("pointercancel", n), window.addEventListener("keydown", o);
102
- const i = s.current;
103
- i?.addEventListener("lostpointercapture", t);
104
- const l = document.createElement("style");
105
- return l.setAttribute("data-virtual-drag-cursor", "true"), l.textContent = "body, body * { cursor: grabbing !important; }", document.head.appendChild(l), () => {
106
- window.removeEventListener("pointermove", e), window.removeEventListener("pointerup", r), window.removeEventListener("pointercancel", n), window.removeEventListener("keydown", o), i?.removeEventListener("lostpointercapture", t), l.remove(), c.current !== null && (cancelAnimationFrame(c.current), c.current = null);
107
- };
108
- }, [v, R, m, Y, A, s]);
109
- const U = a((e, r) => {
110
- const n = p.current.findIndex((i) => i.item.id === e);
111
- if (n === -1)
112
- return;
113
- const t = r === "up" ? Math.max(0, n - 1) : Math.min(p.current.length - 1, n + 1);
114
- if (t === n)
115
- return;
116
- const o = p.current[t];
117
- o && h(e, o.item.id, r === "down");
118
- }, [h]);
119
- return {
120
- dragSession: v,
121
- handlePointerDown: k,
122
- handleKeyboardReorder: U,
123
- isDragging: v !== null
124
- };
125
- }
126
- export {
127
- V as useVirtualNestedListDrag
128
- };
@@ -1,11 +0,0 @@
1
- import { NestedListItem } from './nested-list.types';
2
- export declare function filterNestedListItemsBySearch(items: NestedListItem[], searchText: string): NestedListItem[];
3
- export declare function updateNestedListParentCheckedState(items: NestedListItem[]): NestedListItem[];
4
- export declare function extractNestedListCategories(items: NestedListItem[], getCategory?: (item: NestedListItem) => string | undefined): string[];
5
- export declare function filterNestedListItemsByCategories(items: NestedListItem[], selectedCategories: Set<string>, getCategory?: (item: NestedListItem) => string | undefined): NestedListItem[];
6
- export type FlattenedNestedListRow = {
7
- item: NestedListItem;
8
- level: number;
9
- indentLevel: number;
10
- };
11
- export declare function flattenNestedListTree(items: NestedListItem[], collapsedItems: Record<string, boolean>, activeId: string | null, level?: number, indentLevel?: number): FlattenedNestedListRow[];
@@ -1,74 +0,0 @@
1
- function l(o, r) {
2
- if (!r || typeof r != "string")
3
- return o;
4
- const c = r.toLowerCase(), t = [];
5
- return o.forEach((n) => {
6
- const s = n.label.toLowerCase().includes(c), e = n.children ? l(n.children, r) : void 0;
7
- (s || e && e.length > 0) && t.push({
8
- ...n,
9
- children: e || n.children
10
- });
11
- }), t;
12
- }
13
- function i(o) {
14
- return o.map((r) => {
15
- if (r.children && r.children.length > 0) {
16
- const c = i(r.children), t = c.every((n) => n.checked);
17
- return {
18
- ...r,
19
- checked: t,
20
- children: c
21
- };
22
- }
23
- return r;
24
- });
25
- }
26
- function f(o, r) {
27
- const c = /* @__PURE__ */ new Set(), t = (n) => {
28
- n.forEach((s) => {
29
- const e = r ? r(s) : s.category;
30
- e && c.add(e), s.children && t(s.children);
31
- });
32
- };
33
- return t(o), Array.from(c).sort();
34
- }
35
- function u(o, r, c) {
36
- if (r.size === 0)
37
- return o;
38
- const t = [];
39
- return o.forEach((n) => {
40
- const s = c ? c(n) : n.category, e = s && r.has(s), d = n.children ? u(n.children, r, c) : void 0;
41
- (e || d && d.length > 0) && t.push({
42
- ...n,
43
- children: d
44
- });
45
- }), t;
46
- }
47
- function a(o, r, c, t = 0, n = 0) {
48
- const s = [];
49
- return o.forEach((e) => {
50
- if (s.push({
51
- item: e,
52
- level: t,
53
- indentLevel: e.category === "structure" ? 0 : n
54
- }), !r[e.id] && e.children && e.children.length > 0 && e.id !== c) {
55
- const h = e.category === "structure" ? 0 : n + 1;
56
- s.push(
57
- ...a(
58
- e.children,
59
- r,
60
- c,
61
- t + 1,
62
- h
63
- )
64
- );
65
- }
66
- }), s;
67
- }
68
- export {
69
- f as extractNestedListCategories,
70
- u as filterNestedListItemsByCategories,
71
- l as filterNestedListItemsBySearch,
72
- a as flattenNestedListTree,
73
- i as updateNestedListParentCheckedState
74
- };
@@ -1,31 +0,0 @@
1
- import { DragEndEvent } from '@dnd-kit/core';
2
- import { NestedListItem } from './nested-list.types';
3
- export { NESTED_LIST_SECTION_IDS } from './nested-list-constants';
4
- export declare function getSectionIdFromDroppable(droppableId: string): string | null;
5
- export declare function findNestedListItemById(items: NestedListItem[], id: string): NestedListItem | undefined;
6
- export declare function findNestedListItemLevel(items: NestedListItem[], itemId: string, currentLevel?: number): number | null;
7
- export declare function findNestedListParentId(items: NestedListItem[], itemId: string, parentId?: string | null): string | null;
8
- export interface ApplyNestedListDropOptions {
9
- activeId: string;
10
- overId: string;
11
- insertAfter: boolean;
12
- collapsedItems?: Record<string, boolean>;
13
- canDrag?: (item: NestedListItem, level: number) => boolean;
14
- isValidDropTarget?: (options: {
15
- activeItemId: string;
16
- overItemId: string;
17
- items: NestedListItem[];
18
- insertAfter?: boolean;
19
- }) => boolean;
20
- }
21
- export declare function applyNestedListDrop(prevItems: NestedListItem[], options: ApplyNestedListDropOptions): NestedListItem[];
22
- export declare function applyNestedListDragEndEvent(prevItems: NestedListItem[], event: DragEndEvent, options?: {
23
- collapsedItems?: Record<string, boolean>;
24
- canDrag?: (item: NestedListItem, level: number) => boolean;
25
- isValidDropTarget?: (options: {
26
- activeItemId: string;
27
- overItemId: string;
28
- items: NestedListItem[];
29
- insertAfter?: boolean;
30
- }) => boolean;
31
- }): NestedListItem[];