impact-nova 2.1.0-alpha.9 → 2.2.0
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.
- package/dist/components/data/ag-grid-react/cell-renderers/editors/split-cell-editor.js +73 -94
- package/dist/components/data/ag-grid-react/cell-renderers/editors/split-cell-focus.d.ts +53 -0
- package/dist/components/data/ag-grid-react/cell-renderers/editors/split-cell-focus.js +98 -0
- package/dist/components/data/ag-grid-react/headers/column-menu/column-settings-menu.js +15 -13
- package/dist/components/data/ag-grid-react/headers/custom-header.js +56 -58
- package/dist/components/data/ag-grid-react/headers/custom-inner-header-group.d.ts +12 -0
- package/dist/components/data/ag-grid-react/headers/custom-inner-header-group.js +31 -0
- package/dist/components/data/ag-grid-react/headers/header-search-active-state.d.ts +10 -0
- package/dist/components/data/ag-grid-react/headers/header-search-active-state.js +38 -0
- package/dist/components/data/ag-grid-react/index.js +166 -163
- package/dist/components/data/ag-grid-react/notify-column-indicator-sync.d.ts +3 -4
- package/dist/components/data/ag-grid-react/theme.js +0 -2
- package/dist/components/data/data-table/data-table-column-list.js +1 -1
- package/dist/components/data/data-table/data-table-saved-views.js +1 -1
- package/dist/components/data/nested-list/components/SortableItem.d.ts +3 -1
- package/dist/components/data/nested-list/components/SortableItem.js +111 -109
- package/dist/components/data-display/calendar/calendar-footer-emphasis.d.ts +28 -0
- package/dist/components/data-display/calendar/calendar-footer-emphasis.js +8 -0
- package/dist/components/data-display/calendar/calendar-footer.d.ts +4 -1
- package/dist/components/data-display/calendar/calendar-footer.js +60 -38
- package/dist/components/data-display/calendar/calendar.js +86 -82
- package/dist/components/data-display/calendar/calendar.types.d.ts +2 -0
- package/dist/components/data-display/calendar/use-calendar-state.d.ts +3 -0
- package/dist/components/flows/filter-strip/filter-strip.js +36 -29
- package/dist/components/flows/filter-strip/filter-summary.js +2 -2
- package/dist/components/forms/date-picker/date-input-behavior.d.ts +118 -0
- package/dist/components/forms/date-picker/date-input-behavior.js +164 -0
- package/dist/components/forms/date-picker/date-picker.js +202 -138
- package/dist/components/forms/date-picker/date-range-picker.js +302 -215
- package/dist/components/forms/date-picker/month-picker.js +160 -119
- package/dist/components/forms/date-picker/month-range-picker.js +302 -245
- package/dist/components/forms/date-picker/multi-date-picker.js +94 -80
- package/dist/components/forms/date-picker/multi-month-picker.js +97 -83
- package/dist/components/forms/date-picker/multi-week-picker.js +107 -93
- package/dist/components/forms/date-picker/week-picker.js +230 -140
- package/dist/components/forms/date-picker/week-range-picker.js +332 -226
- package/dist/components/forms/file-upload/file-upload.js +312 -174
- package/dist/components/forms/file-upload/file-upload.types.d.ts +17 -2
- package/dist/components/layout/dynamic-layout/dynamic-layout.variants.d.ts +1 -1
- package/dist/components/layout/header/header.js +45 -38
- package/dist/components/layout/horizontal-scroller/index.d.ts +1 -0
- package/dist/components/layout/horizontal-scroller/index.js +3 -2
- package/dist/components/ui/local-raster-icons/assets/excel-error-icon.webp.js +4 -0
- package/dist/components/ui/local-raster-icons/assets/file-upload-error.webp.js +4 -0
- package/dist/components/ui/local-raster-icons/rasterIcons.d.ts +2 -0
- package/dist/components/ui/local-raster-icons/rasterIcons.js +32 -22
- package/dist/components/ui/show.d.ts +10 -0
- package/dist/components/ui/show.js +7 -0
- package/dist/components/ui/show.types.d.ts +5 -0
- package/dist/i18n/defaultMessages.d.ts +17 -0
- package/dist/i18n/defaultMessages.js +29 -17
- package/dist/i18n/index.d.ts +1 -1
- package/dist/i18n/locales/de.js +12 -0
- package/dist/i18n/locales/es.js +12 -0
- package/dist/i18n/locales/hi.js +12 -0
- package/dist/i18n/locales/kn.js +12 -0
- package/dist/impact-nova-base.scss +6 -2
- package/dist/impact-nova-components.css +141 -16
- package/dist/impact-nova-tokens.scss +12 -0
- package/dist/impact-nova.css +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +273 -271
- package/dist/lib/utils.js +40 -24
- package/dist/llms/rules/ag-grid.js +1 -1
- package/dist/llms/rules/installation.js +1 -1
- package/dist/llms/rules/requirements.js +1 -1
- package/dist/tailwind.config.js +36 -4
- package/dist/theme/tailwind-colors.js +3 -1
- package/package.json +11 -3
- package/tailwind.config.d.ts +3 -0
- package/dist/components/data/ag-grid-react/headers/custom-header-group.d.ts +0 -10
- package/dist/components/data/ag-grid-react/headers/custom-header-group.js +0 -58
|
@@ -139,6 +139,21 @@
|
|
|
139
139
|
.header-badge-gradient {
|
|
140
140
|
background-image: linear-gradient(270deg, var(--color-header-badge-gradient-from) 0%, var(--color-header-badge-gradient-to) 100%);
|
|
141
141
|
}
|
|
142
|
+
|
|
143
|
+
[data-component=file-upload-dropzone][data-state=drag-over] {
|
|
144
|
+
background-image: var(--gradient-file-upload-drag);
|
|
145
|
+
box-shadow: var(--shadow-file-upload-drag);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
[data-component=file-upload-dropzone][data-state=invalid-type] {
|
|
149
|
+
background-image: var(--gradient-file-upload-error);
|
|
150
|
+
box-shadow: var(--shadow-file-upload-error);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
/* Data-table saved-views bar — subtle olive gradient (tokens in impact-nova-tokens.scss) */
|
|
154
|
+
.saved-view-bar-gradient {
|
|
155
|
+
background-image: linear-gradient(83.74deg, var(--color-saved-view-surface-start) 72.68%, var(--color-saved-view-surface-end) 108.88%);
|
|
156
|
+
}
|
|
142
157
|
/* Custom AG Grid Styles — plain CSS (no SCSS nesting). */
|
|
143
158
|
|
|
144
159
|
/* ponytail: Quartz theme sets transition:all on header cells. Column virtualization updates
|
|
@@ -149,6 +164,16 @@
|
|
|
149
164
|
transition: none;
|
|
150
165
|
}
|
|
151
166
|
|
|
167
|
+
/* Spanning + pinned header cells must be opaque — center header tiers scroll beneath them. */
|
|
168
|
+
.ag-header-cell.ag-header-span-height,
|
|
169
|
+
.ag-header-group-cell,
|
|
170
|
+
.ag-pinned-left-header .ag-header-cell,
|
|
171
|
+
.ag-pinned-left-header .ag-header-group-cell,
|
|
172
|
+
.ag-pinned-right-header .ag-header-cell,
|
|
173
|
+
.ag-pinned-right-header .ag-header-group-cell {
|
|
174
|
+
background-color: var(--ag-header-background-color);
|
|
175
|
+
}
|
|
176
|
+
|
|
152
177
|
/* Pinned column depth — header: boundary cell. Body: row container (parent overflow:hidden clips cell shadow). */
|
|
153
178
|
.ag-header-cell-last-left-pinned {
|
|
154
179
|
box-shadow: 1px 0px 12px 0px color-mix(in srgb, var(--color-primary) 12%, transparent);
|
|
@@ -242,6 +267,23 @@
|
|
|
242
267
|
display: none;
|
|
243
268
|
}
|
|
244
269
|
|
|
270
|
+
/* innerHeaderGroupComponent mounts inside AG Grid's .ag-header-group-text shell.
|
|
271
|
+
Ellipsis on that shell only applies to direct text nodes — constrain the React
|
|
272
|
+
mount so inner truncation and overflow tooltips work. */
|
|
273
|
+
.ag-header-group-cell-label > .ag-header-group-text:has(.ag-react-container) {
|
|
274
|
+
display: flex;
|
|
275
|
+
min-width: 0;
|
|
276
|
+
flex: 1 1 auto;
|
|
277
|
+
max-width: 100%;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
.ag-header-group-cell-label .ag-header-group-text .ag-react-container {
|
|
281
|
+
display: flex;
|
|
282
|
+
min-width: 0;
|
|
283
|
+
width: 100%;
|
|
284
|
+
overflow: hidden;
|
|
285
|
+
}
|
|
286
|
+
|
|
245
287
|
.ag-header-group-cell-with-group {
|
|
246
288
|
border-bottom-width: 2px;
|
|
247
289
|
border-bottom-style: solid;
|
|
@@ -365,6 +407,102 @@
|
|
|
365
407
|
padding-right: 6px;
|
|
366
408
|
}
|
|
367
409
|
|
|
410
|
+
/* Capture theme cell horizontal inset before per-cell `ag-cell-no-padding` zeros it. */
|
|
411
|
+
.ag-root-wrapper {
|
|
412
|
+
--in-ag-cell-horizontal-inset: var(--ag-cell-horizontal-padding);
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
/* Tree auto-group column (treeData + autoGroupColumnDef → col-id ag-Grid-AutoColumn).
|
|
416
|
+
Body uses `ag-cell-no-padding` + link `ag-cell-inner-padding`. Restore theme horizontal
|
|
417
|
+
inset on the cell so body left/right spacing matches the header and standard columns
|
|
418
|
+
(e.g. Priority); inner renderer keeps vertical inset only. */
|
|
419
|
+
.ag-cell[col-id="ag-Grid-AutoColumn"].ag-cell-no-padding {
|
|
420
|
+
--ag-cell-horizontal-padding: var(--in-ag-cell-horizontal-inset);
|
|
421
|
+
padding-left: var(--in-ag-cell-horizontal-inset);
|
|
422
|
+
padding-right: var(--in-ag-cell-horizontal-inset);
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
.ag-cell[col-id="ag-Grid-AutoColumn"] .ag-cell-inner-padding {
|
|
426
|
+
padding-left: 0;
|
|
427
|
+
padding-right: 0;
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
.table-with-loader[data-density] .ag-cell[col-id="ag-Grid-AutoColumn"] .ag-cell-inner-padding {
|
|
431
|
+
padding-left: 0 !important;
|
|
432
|
+
padding-right: 0 !important;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
/* Tree row-group layout (ellipsis, flex fill). */
|
|
436
|
+
.ag-cell-wrapper.ag-row-group {
|
|
437
|
+
min-width: 0;
|
|
438
|
+
max-width: 100%;
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
.ag-group-expanded,
|
|
442
|
+
.ag-group-contracted,
|
|
443
|
+
.ag-group-checkbox {
|
|
444
|
+
flex-shrink: 0;
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
/* Top-level leaf rows: agGroupCellRenderer reserves chevron width via
|
|
448
|
+
.ag-row-group-leaf-indent even when the row is not expandable. Drop the
|
|
449
|
+
placeholder at depth 0 so text aligns with the column header; nested leaves
|
|
450
|
+
keep indent so they stay aligned with parent row labels. */
|
|
451
|
+
:where(.ag-ltr) .ag-row.ag-row-level-0 .ag-row-group-leaf-indent {
|
|
452
|
+
margin-left: 0;
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
:where(.ag-rtl) .ag-row.ag-row-level-0 .ag-row-group-leaf-indent {
|
|
456
|
+
margin-right: 0;
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
.ag-group-value {
|
|
460
|
+
flex: 1 1 0%;
|
|
461
|
+
min-width: 0;
|
|
462
|
+
max-width: 100%;
|
|
463
|
+
overflow: hidden;
|
|
464
|
+
text-overflow: ellipsis;
|
|
465
|
+
white-space: nowrap;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
.ag-group-value > div {
|
|
469
|
+
min-width: 0;
|
|
470
|
+
max-width: 100%;
|
|
471
|
+
width: 100%;
|
|
472
|
+
overflow: hidden;
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
.ag-cell:has(.ag-cell-wrapper.ag-row-group) {
|
|
476
|
+
overflow: hidden;
|
|
477
|
+
}
|
|
478
|
+
|
|
479
|
+
.ag-cell-wrapper > .ag-cell-value {
|
|
480
|
+
flex: 1 1 auto;
|
|
481
|
+
min-width: 0;
|
|
482
|
+
width: 100%;
|
|
483
|
+
max-width: 100%;
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
/* AG Grid v36 may mount renderers as direct flex children (no .ag-cell-wrapper). */
|
|
487
|
+
.ag-cell.ag-cell-no-padding {
|
|
488
|
+
display: flex;
|
|
489
|
+
align-items: center;
|
|
490
|
+
min-width: 0;
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
.ag-cell.ag-cell-no-padding > .ag-cell-wrapper {
|
|
494
|
+
flex: 1 1 0%;
|
|
495
|
+
min-width: 0;
|
|
496
|
+
max-width: 100%;
|
|
497
|
+
width: 100%;
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
.ag-cell.ag-cell-no-padding > div:first-child:not(.ag-cell-wrapper) {
|
|
501
|
+
flex: 1 1 0%;
|
|
502
|
+
min-width: 0;
|
|
503
|
+
width: 100%;
|
|
504
|
+
}
|
|
505
|
+
|
|
368
506
|
.ag-cell-renderer-full-control {
|
|
369
507
|
--ag-cell-horizontal-padding: 0px;
|
|
370
508
|
padding-left: 0;
|
|
@@ -414,16 +552,9 @@
|
|
|
414
552
|
white-space: nowrap;
|
|
415
553
|
}
|
|
416
554
|
|
|
417
|
-
|
|
418
|
-
.ag-cell.ag-cell-
|
|
419
|
-
|
|
420
|
-
outline: 2px solid Highlight !important;
|
|
421
|
-
outline-offset: -2px !important;
|
|
422
|
-
}
|
|
423
|
-
|
|
424
|
-
.ag-cell.ag-cell-focus:not(:focus):not(:focus-within) {
|
|
425
|
-
outline: none !important;
|
|
426
|
-
}
|
|
555
|
+
/* Cell focus + range selection: use AG Grid theme defaults (border per
|
|
556
|
+
.ag-cell-range-selected / .ag-cell-range-single-cell), including ranges
|
|
557
|
+
that span pinned columns. Do not override with a custom outline here. */
|
|
427
558
|
|
|
428
559
|
.ag-header-cell:focus,
|
|
429
560
|
.ag-header-cell:focus-visible {
|
|
@@ -437,12 +568,6 @@
|
|
|
437
568
|
outline-offset: -2px !important;
|
|
438
569
|
}
|
|
439
570
|
|
|
440
|
-
.ag-cell:focus,
|
|
441
|
-
.ag-cell:focus-visible {
|
|
442
|
-
outline: 2px solid Highlight !important;
|
|
443
|
-
outline-offset: -2px !important;
|
|
444
|
-
}
|
|
445
|
-
|
|
446
571
|
.ag-tooltip {
|
|
447
572
|
display: block;
|
|
448
573
|
padding: 8px 16px;
|
|
@@ -99,12 +99,16 @@
|
|
|
99
99
|
--color-pin-switch-track-bg: #f5f6fa;
|
|
100
100
|
--color-pin-switch-track-border: #eff2fa;
|
|
101
101
|
--color-pin-switch-track-hover: #ebedf5;
|
|
102
|
+
--color-saved-view-surface-end: #d7e5b2;
|
|
103
|
+
--color-saved-view-surface-start: #f5f9ec;
|
|
102
104
|
--color-tab-active-border: #4259ee;
|
|
103
105
|
--color-tab-active-foreground: #3649c6;
|
|
104
106
|
--color-tab-active-surface: #f8f9fb;
|
|
105
107
|
--color-tab-hover-border: #c6ccf1;
|
|
106
108
|
--color-tab-hover-foreground: #7a83b8;
|
|
107
109
|
--color-tab-hover-surface: #f2f3fd;
|
|
110
|
+
--gradient-file-upload-drag: radial-gradient(circle at center, #fafbff 0%, #f4f6ff 60%, #eef1ff 100%);
|
|
111
|
+
--gradient-file-upload-error: radial-gradient(circle at center, #ffffff 0%, #fffcfc 65%, #fdf5f4 100%);
|
|
108
112
|
|
|
109
113
|
/* —— Status & feedback —— */
|
|
110
114
|
--color-destructive: #e15554;
|
|
@@ -159,6 +163,8 @@
|
|
|
159
163
|
--shadow-elevation-settings: 0px 0px 2px 0px rgb(0 0 0 / 25%);
|
|
160
164
|
--shadow-elevation-toast: 0px 10px 30px 0px rgb(0 0 0 / 15%);
|
|
161
165
|
--shadow-elevation-wizard-footer: 0 -4px 8px -6px rgb(13 21 44 / 8%);
|
|
166
|
+
--shadow-file-upload-drag: inset 0 0 96px 23px rgb(66 89 238 / 0.14);
|
|
167
|
+
--shadow-file-upload-error: inset 0 0 20px rgb(225 85 84 / 0.12);
|
|
162
168
|
|
|
163
169
|
/* —— Overlay / scrim —— */
|
|
164
170
|
--color-scrim: hsl(0 0% 0% / 0.4);
|
|
@@ -318,12 +324,16 @@
|
|
|
318
324
|
--color-pin-switch-track-bg: #171717;
|
|
319
325
|
--color-pin-switch-track-border: #282828;
|
|
320
326
|
--color-pin-switch-track-hover: #404040;
|
|
327
|
+
--color-saved-view-surface-end: #2d3818;
|
|
328
|
+
--color-saved-view-surface-start: #1e2416;
|
|
321
329
|
--color-tab-active-border: #fafafa;
|
|
322
330
|
--color-tab-active-foreground: #fafafa;
|
|
323
331
|
--color-tab-active-surface: #262626;
|
|
324
332
|
--color-tab-hover-border: #737373;
|
|
325
333
|
--color-tab-hover-foreground: #fafafa;
|
|
326
334
|
--color-tab-hover-surface: #404040;
|
|
335
|
+
--gradient-file-upload-drag: radial-gradient(circle at center, #fafbff 0%, #f4f6ff 60%, #eef1ff 100%);
|
|
336
|
+
--gradient-file-upload-error: radial-gradient(circle at center, #ffffff 0%, #fffcfc 65%, #fdf5f4 100%);
|
|
327
337
|
|
|
328
338
|
/* —— Status & feedback —— */
|
|
329
339
|
--color-destructive: #ff6467;
|
|
@@ -378,6 +388,8 @@
|
|
|
378
388
|
--shadow-elevation-settings: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 1px 2px -1px hsl(0 0% 0% / 0.10);
|
|
379
389
|
--shadow-elevation-toast: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 4px 6px -1px hsl(0 0% 0% / 0.10);
|
|
380
390
|
--shadow-elevation-wizard-footer: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 2px 4px -1px hsl(0 0% 0% / 0.10);
|
|
391
|
+
--shadow-file-upload-drag: inset 0 0 96px 23px rgb(66 89 238 / 0.14);
|
|
392
|
+
--shadow-file-upload-error: inset 0 0 20px rgb(225 85 84 / 0.12);
|
|
381
393
|
|
|
382
394
|
/* —— Overlay / scrim —— */
|
|
383
395
|
--color-scrim: hsl(0 0% 0% / 0.55);
|