photon-grid-core 2.0.1 → 2.0.5
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/README.md +3 -3
- package/cell-selection/cell-selection-engine.d.ts +14 -0
- package/cell-selection/cell-selection-engine.d.ts.map +1 -1
- package/cell-selection/cell-selection-engine.js +63 -9
- package/cell-selection/cell-selection-engine.js.map +1 -1
- package/chart/range-chart-controller.d.ts +10 -0
- package/chart/range-chart-controller.d.ts.map +1 -1
- package/chart/range-chart-controller.js +22 -2
- package/chart/range-chart-controller.js.map +1 -1
- package/column-groups/column-group-drag-handler.d.ts.map +1 -1
- package/column-groups/column-group-drag-handler.js +64 -25
- package/column-groups/column-group-drag-handler.js.map +1 -1
- package/column-groups/column-group-header-builder.d.ts.map +1 -1
- package/column-groups/column-group-header-builder.js +7 -5
- package/column-groups/column-group-header-builder.js.map +1 -1
- package/column-groups/display-group-drag-handler.d.ts +7 -3
- package/column-groups/display-group-drag-handler.d.ts.map +1 -1
- package/column-groups/display-group-drag-handler.js +46 -7
- package/column-groups/display-group-drag-handler.js.map +1 -1
- package/column-groups/display-group-header-builder.d.ts +1 -1
- package/column-groups/display-group-header-builder.d.ts.map +1 -1
- package/column-groups/display-group-header-builder.js +9 -7
- package/column-groups/display-group-header-builder.js.map +1 -1
- package/core/column-model.d.ts +88 -5
- package/core/column-model.d.ts.map +1 -1
- package/core/column-model.js +215 -3
- package/core/column-model.js.map +1 -1
- package/core/grid-api.d.ts +34 -2
- package/core/grid-api.d.ts.map +1 -1
- package/core/grid-api.js +40 -0
- package/core/grid-api.js.map +1 -1
- package/core/grid-core.d.ts +7 -0
- package/core/grid-core.d.ts.map +1 -1
- package/core/grid-core.js +42 -12
- package/core/grid-core.js.map +1 -1
- package/core/grid-store.d.ts +5 -5
- package/core/grid-store.d.ts.map +1 -1
- package/core/pointer-utils.d.ts +59 -0
- package/core/pointer-utils.d.ts.map +1 -0
- package/core/pointer-utils.js +59 -0
- package/core/pointer-utils.js.map +1 -0
- package/drag-drop/drag-drop-engine.d.ts.map +1 -1
- package/drag-drop/drag-drop-engine.js +8 -8
- package/drag-drop/drag-drop-engine.js.map +1 -1
- package/engines/editing/cell-editor-engine.js +1 -1
- package/engines/editing/cell-editor-engine.js.map +1 -1
- package/engines/master-detail/master-detail-engine.d.ts +4 -3
- package/engines/master-detail/master-detail-engine.d.ts.map +1 -1
- package/engines/master-detail/master-detail-engine.js +14 -5
- package/engines/master-detail/master-detail-engine.js.map +1 -1
- package/engines/selection/row-selection-engine.d.ts +41 -0
- package/engines/selection/row-selection-engine.d.ts.map +1 -1
- package/engines/selection/row-selection-engine.js +103 -0
- package/engines/selection/row-selection-engine.js.map +1 -1
- package/index.d.ts +8 -4
- package/index.d.ts.map +1 -1
- package/index.js +4 -1
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/photon-ai/index.d.ts +2 -0
- package/photon-ai/index.d.ts.map +1 -1
- package/photon-ai/index.js +2 -0
- package/photon-ai/index.js.map +1 -1
- package/photon-ai/photon-ai-panel.d.ts +40 -0
- package/photon-ai/photon-ai-panel.d.ts.map +1 -1
- package/photon-ai/photon-ai-panel.js +163 -8
- package/photon-ai/photon-ai-panel.js.map +1 -1
- package/photon-ai/photon-ai-service.d.ts +38 -1
- package/photon-ai/photon-ai-service.d.ts.map +1 -1
- package/photon-ai/photon-ai-service.js +72 -1
- package/photon-ai/photon-ai-service.js.map +1 -1
- package/photon-ai/provider/ai-provider.types.d.ts +174 -0
- package/photon-ai/provider/ai-provider.types.d.ts.map +1 -0
- package/photon-ai/provider/ai-provider.types.js +42 -0
- package/photon-ai/provider/ai-provider.types.js.map +1 -0
- package/photon-ai/provider/command-normalizer.d.ts +36 -0
- package/photon-ai/provider/command-normalizer.d.ts.map +1 -0
- package/photon-ai/provider/command-normalizer.js +120 -0
- package/photon-ai/provider/command-normalizer.js.map +1 -0
- package/photon-ai/provider/grid-context-builder.d.ts +37 -0
- package/photon-ai/provider/grid-context-builder.d.ts.map +1 -0
- package/photon-ai/provider/grid-context-builder.js +96 -0
- package/photon-ai/provider/grid-context-builder.js.map +1 -0
- package/photon-ai/provider/http-ai-provider.d.ts +42 -0
- package/photon-ai/provider/http-ai-provider.d.ts.map +1 -0
- package/photon-ai/provider/http-ai-provider.js +125 -0
- package/photon-ai/provider/http-ai-provider.js.map +1 -0
- package/photon-ai/provider/index.d.ts +30 -0
- package/photon-ai/provider/index.d.ts.map +1 -0
- package/photon-ai/provider/index.js +42 -0
- package/photon-ai/provider/index.js.map +1 -0
- package/photon-ai/provider/presets.d.ts +29 -0
- package/photon-ai/provider/presets.d.ts.map +1 -0
- package/photon-ai/provider/presets.js +110 -0
- package/photon-ai/provider/presets.js.map +1 -0
- package/photon-ai/provider/response-parsing.d.ts +22 -0
- package/photon-ai/provider/response-parsing.d.ts.map +1 -0
- package/photon-ai/provider/response-parsing.js +79 -0
- package/photon-ai/provider/response-parsing.js.map +1 -0
- package/photon-ai/provider/system-prompt.d.ts +26 -0
- package/photon-ai/provider/system-prompt.d.ts.map +1 -0
- package/photon-ai/provider/system-prompt.js +82 -0
- package/photon-ai/provider/system-prompt.js.map +1 -0
- package/photon-grid.min.js +697 -488
- package/renderer/body-renderer.d.ts.map +1 -1
- package/renderer/body-renderer.js +34 -9
- package/renderer/body-renderer.js.map +1 -1
- package/renderer/column-chooser.d.ts +82 -0
- package/renderer/column-chooser.d.ts.map +1 -0
- package/renderer/column-chooser.js +335 -0
- package/renderer/column-chooser.js.map +1 -0
- package/renderer/column-menu.d.ts.map +1 -1
- package/renderer/column-menu.js +32 -20
- package/renderer/column-menu.js.map +1 -1
- package/renderer/column-style-manager.d.ts +17 -0
- package/renderer/column-style-manager.d.ts.map +1 -1
- package/renderer/column-style-manager.js +28 -0
- package/renderer/column-style-manager.js.map +1 -1
- package/renderer/detail-row-renderer.d.ts.map +1 -1
- package/renderer/detail-row-renderer.js +9 -7
- package/renderer/detail-row-renderer.js.map +1 -1
- package/renderer/grid-renderer.d.ts +23 -1
- package/renderer/grid-renderer.d.ts.map +1 -1
- package/renderer/grid-renderer.js +66 -8
- package/renderer/grid-renderer.js.map +1 -1
- package/renderer/group-drop-zone.js +14 -14
- package/renderer/group-drop-zone.js.map +1 -1
- package/renderer/header-renderer.d.ts +70 -0
- package/renderer/header-renderer.d.ts.map +1 -1
- package/renderer/header-renderer.js +361 -52
- package/renderer/header-renderer.js.map +1 -1
- package/renderer/row-animator.d.ts +18 -1
- package/renderer/row-animator.d.ts.map +1 -1
- package/renderer/row-animator.js +96 -20
- package/renderer/row-animator.js.map +1 -1
- package/renderer/row-drag-renderer.js +6 -6
- package/renderer/row-drag-renderer.js.map +1 -1
- package/renderer/scroll-controller.d.ts +40 -0
- package/renderer/scroll-controller.d.ts.map +1 -1
- package/renderer/scroll-controller.js +215 -13
- package/renderer/scroll-controller.js.map +1 -1
- package/styles/base/cells.css.d.ts +1 -1
- package/styles/base/cells.css.d.ts.map +1 -1
- package/styles/base/cells.css.js +13 -13
- package/styles/base/column-chooser.css.d.ts +13 -0
- package/styles/base/column-chooser.css.d.ts.map +1 -0
- package/styles/base/column-chooser.css.js +241 -0
- package/styles/base/column-chooser.css.js.map +1 -0
- package/styles/base/column-context-menu.css.d.ts +1 -1
- package/styles/base/column-context-menu.css.d.ts.map +1 -1
- package/styles/base/column-context-menu.css.js +29 -5
- package/styles/base/column-context-menu.css.js.map +1 -1
- package/styles/base/column-group-header.css.d.ts +1 -1
- package/styles/base/column-group-header.css.d.ts.map +1 -1
- package/styles/base/column-group-header.css.js +1 -1
- package/styles/base/context-menu.css.d.ts +1 -1
- package/styles/base/context-menu.css.d.ts.map +1 -1
- package/styles/base/context-menu.css.js +8 -0
- package/styles/base/context-menu.css.js.map +1 -1
- package/styles/base/filter.css.d.ts +1 -1
- package/styles/base/filter.css.d.ts.map +1 -1
- package/styles/base/filter.css.js +7 -7
- package/styles/base/group-drop-zone.css.d.ts +1 -1
- package/styles/base/group-drop-zone.css.d.ts.map +1 -1
- package/styles/base/group-drop-zone.css.js +3 -3
- package/styles/base/header.css.d.ts +1 -1
- package/styles/base/header.css.d.ts.map +1 -1
- package/styles/base/header.css.js +23 -0
- package/styles/base/header.css.js.map +1 -1
- package/styles/base/photon-ai.css.d.ts +1 -1
- package/styles/base/photon-ai.css.d.ts.map +1 -1
- package/styles/base/photon-ai.css.js +65 -0
- package/styles/base/photon-ai.css.js.map +1 -1
- package/styles/base/row-drag.css.d.ts +1 -1
- package/styles/base/row-drag.css.d.ts.map +1 -1
- package/styles/base/row-drag.css.js +1 -1
- package/styles/base/rows.css.d.ts +1 -1
- package/styles/base/rows.css.d.ts.map +1 -1
- package/styles/base/rows.css.js +4 -16
- package/styles/base/rows.css.js.map +1 -1
- package/styles/base/scrollbars.css.d.ts +1 -1
- package/styles/base/scrollbars.css.d.ts.map +1 -1
- package/styles/base/scrollbars.css.js +56 -7
- package/styles/base/scrollbars.css.js.map +1 -1
- package/styles/base/sparkline.css.d.ts +1 -1
- package/styles/base/sparkline.css.d.ts.map +1 -1
- package/styles/base/sparkline.css.js +6 -0
- package/styles/base/sparkline.css.js.map +1 -1
- package/styles/base/tooltip.css.d.ts +1 -1
- package/styles/base/tooltip.css.d.ts.map +1 -1
- package/styles/base/tooltip.css.js +1 -1
- package/styles/base/touch.css.d.ts +23 -0
- package/styles/base/touch.css.d.ts.map +1 -0
- package/styles/base/touch.css.js +85 -0
- package/styles/base/touch.css.js.map +1 -0
- package/styles/base-styles.d.ts.map +1 -1
- package/styles/base-styles.js +9 -2
- package/styles/base-styles.js.map +1 -1
- package/styles/themes/theme-alpine.d.ts +9 -1
- package/styles/themes/theme-alpine.d.ts.map +1 -1
- package/styles/themes/theme-alpine.js +34 -43
- package/styles/themes/theme-alpine.js.map +1 -1
- package/styles/themes/theme-balham.d.ts +9 -1
- package/styles/themes/theme-balham.d.ts.map +1 -1
- package/styles/themes/theme-balham.js +33 -42
- package/styles/themes/theme-balham.js.map +1 -1
- package/styles/themes/theme-material.d.ts +9 -1
- package/styles/themes/theme-material.d.ts.map +1 -1
- package/styles/themes/theme-material.js +35 -43
- package/styles/themes/theme-material.js.map +1 -1
- package/styles/themes/theme-quartz.d.ts +14 -1
- package/styles/themes/theme-quartz.d.ts.map +1 -1
- package/styles/themes/theme-quartz.js +63 -43
- package/styles/themes/theme-quartz.js.map +1 -1
- package/theme/theme-manager.d.ts +55 -7
- package/theme/theme-manager.d.ts.map +1 -1
- package/theme/theme-manager.js +139 -35
- package/theme/theme-manager.js.map +1 -1
- package/types/column.types.d.ts +78 -0
- package/types/column.types.d.ts.map +1 -1
- package/types/column.types.js +26 -1
- package/types/column.types.js.map +1 -1
- package/types/grid.types.d.ts +92 -3
- package/types/grid.types.d.ts.map +1 -1
- package/types/photon-ai.types.d.ts +125 -5
- package/types/photon-ai.types.d.ts.map +1 -1
- package/types/photon-ai.types.js +18 -1
- package/types/photon-ai.types.js.map +1 -1
- package/types/theme.types.d.ts +19 -0
- package/types/theme.types.d.ts.map +1 -1
- package/types/theme.types.js +7 -1
- package/types/theme.types.js.map +1 -1
- package/styles/themes/theme-dark.d.ts +0 -2
- package/styles/themes/theme-dark.d.ts.map +0 -1
- package/styles/themes/theme-dark.js +0 -216
- package/styles/themes/theme-dark.js.map +0 -1
package/theme/theme-manager.js
CHANGED
|
@@ -1,56 +1,129 @@
|
|
|
1
|
+
import { THEME_VARIANT_CLASS } from '../types/theme.types';
|
|
1
2
|
import { GridEventType } from '../types/event.types';
|
|
2
3
|
import { CssVarInjector } from './css-var-injector';
|
|
3
4
|
import { lightTheme } from './themes/light-theme';
|
|
4
5
|
import { darkTheme } from './themes/dark-theme';
|
|
6
|
+
/** Attribute used to scope a grid instance's mode tokens to its container. */
|
|
7
|
+
const SCOPE_ATTR = 'data-pg-theme-scope';
|
|
8
|
+
/** Matches any `pg-<name>-theme` variant class so it can be swapped cleanly. */
|
|
9
|
+
const VARIANT_CLASS_RE = /^pg-[a-z0-9]+-theme$/;
|
|
10
|
+
/**
|
|
11
|
+
* Coordinates the two independent theming axes:
|
|
12
|
+
*
|
|
13
|
+
* 1. **Mode** (`light` / `dark`) — the full color palette, injected as design
|
|
14
|
+
* tokens (CSS custom properties) scoped to the grid's container element.
|
|
15
|
+
* 2. **Variant** (`quartz` / `alpine` / …) — a cosmetic skin applied as a CSS
|
|
16
|
+
* class on that same container. Variant stylesheets only override structural
|
|
17
|
+
* and accent concerns, so any variant composes with either mode.
|
|
18
|
+
*
|
|
19
|
+
* Mode tokens are additionally mirrored onto `:root` so fixed/portal elements
|
|
20
|
+
* (menus, dropdowns, overlays appended to `<body>`) inherit the palette.
|
|
21
|
+
*/
|
|
5
22
|
export class ThemeManager {
|
|
6
23
|
constructor(eventBus) {
|
|
7
24
|
this.eventBus = eventBus;
|
|
25
|
+
/** Per-instance stylesheet carrying the active mode's tokens. */
|
|
8
26
|
this.injector = new CssVarInjector();
|
|
9
|
-
|
|
10
|
-
// elements appended to <body> (menus, dropdowns, overlays) can inherit them.
|
|
27
|
+
/** Mirrors mode tokens onto `:root` for portaled elements. */
|
|
11
28
|
this.rootInjector = new CssVarInjector();
|
|
12
29
|
this.registry = new Map();
|
|
13
|
-
this.
|
|
30
|
+
this.activeVariant = 'none';
|
|
14
31
|
this.scopeEl = null;
|
|
15
32
|
this.registry.set('light', lightTheme);
|
|
16
33
|
this.registry.set('dark', darkTheme);
|
|
34
|
+
this.activeMode = lightTheme;
|
|
17
35
|
}
|
|
36
|
+
/** Register (or replace) a mode theme so it can be resolved by name. */
|
|
18
37
|
registerTheme(theme) {
|
|
19
38
|
this.registry.set(theme.name, theme);
|
|
20
39
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
40
|
+
/**
|
|
41
|
+
* Apply a color mode (light/dark) by injecting its tokens. Colors cascade
|
|
42
|
+
* from the container down to every cell; the same tokens are mirrored to
|
|
43
|
+
* `:root` for portaled UI. Does not touch the active variant.
|
|
44
|
+
*/
|
|
45
|
+
applyMode(modeOrTheme, scopeEl) {
|
|
46
|
+
const theme = this.resolveModeTheme(modeOrTheme);
|
|
47
|
+
this.activeMode = theme;
|
|
48
|
+
if (scopeEl)
|
|
49
|
+
this.scopeEl = scopeEl;
|
|
50
|
+
const target = this.scopeEl;
|
|
51
|
+
if (target) {
|
|
52
|
+
const scopeId = this.ensureScopeId(target);
|
|
53
|
+
this.injector.injectAsStylesheet(theme.tokens, `[${SCOPE_ATTR}="${scopeId}"]`);
|
|
54
|
+
target.setAttribute('data-pg-mode', theme.mode);
|
|
55
|
+
// `color-scheme` is inherited, so setting it on the container makes every
|
|
56
|
+
// native control inside (filter inputs/selects, date pickers, native
|
|
57
|
+
// scrollbars) render with the correct light/dark chrome.
|
|
58
|
+
target.style.colorScheme = theme.mode;
|
|
29
59
|
}
|
|
30
60
|
else {
|
|
31
|
-
theme
|
|
32
|
-
|
|
61
|
+
this.injector.injectAsStylesheet(theme.tokens, ':root');
|
|
62
|
+
document.documentElement.setAttribute('data-pg-mode', theme.mode);
|
|
63
|
+
document.documentElement.style.colorScheme = theme.mode;
|
|
33
64
|
}
|
|
34
|
-
this.scopeEl = scopeEl ?? null;
|
|
35
|
-
this.activeTheme = theme;
|
|
36
|
-
const selector = scopeEl
|
|
37
|
-
? `[data-photon-grid-id="${scopeEl.getAttribute('data-photon-grid-id')}"]`
|
|
38
|
-
: ':root';
|
|
39
|
-
this.injector.injectAsStylesheet(theme.tokens, selector);
|
|
40
65
|
// Always mirror variables to :root so fixed/portal elements pick them up.
|
|
41
66
|
this.rootInjector.inject(theme.tokens, document.documentElement);
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
67
|
+
this.eventBus.emit(GridEventType.THEME_CHANGED, { themeName: theme.name });
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Apply (or clear) the cosmetic variant skin. Swaps the `pg-<variant>-theme`
|
|
71
|
+
* class on the scope container; passing `'none'` removes any active variant.
|
|
72
|
+
*/
|
|
73
|
+
applyVariant(variant, scopeEl) {
|
|
74
|
+
if (scopeEl)
|
|
75
|
+
this.scopeEl = scopeEl;
|
|
76
|
+
const target = this.scopeEl ?? document.documentElement;
|
|
77
|
+
// Remove any previously applied variant class before adding the new one.
|
|
78
|
+
for (const cls of Array.from(target.classList)) {
|
|
79
|
+
if (VARIANT_CLASS_RE.test(cls))
|
|
80
|
+
target.classList.remove(cls);
|
|
81
|
+
}
|
|
82
|
+
this.activeVariant = variant;
|
|
83
|
+
if (variant !== 'none') {
|
|
84
|
+
target.classList.add(THEME_VARIANT_CLASS[variant]);
|
|
85
|
+
target.setAttribute('data-pg-variant', variant);
|
|
45
86
|
}
|
|
46
87
|
else {
|
|
47
|
-
|
|
48
|
-
document.documentElement.setAttribute('data-pg-mode', theme.mode);
|
|
88
|
+
target.removeAttribute('data-pg-variant');
|
|
49
89
|
}
|
|
50
|
-
this.eventBus.emit(GridEventType.THEME_CHANGED, { themeName: theme.name });
|
|
51
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Backward-compatible entry point for the deprecated `theme` option / API.
|
|
93
|
+
* Normalizes a legacy value (e.g. `'dark'`, `'quartz'`, `'pg-quartz-theme'`,
|
|
94
|
+
* `'quartz-dark'`) onto the mode/variant axes and applies it.
|
|
95
|
+
*
|
|
96
|
+
* @deprecated Prefer {@link applyMode} + {@link applyVariant}.
|
|
97
|
+
*/
|
|
98
|
+
applyTheme(nameOrTheme, scopeEl) {
|
|
99
|
+
if (typeof nameOrTheme !== 'string') {
|
|
100
|
+
this.registry.set(nameOrTheme.name, nameOrTheme);
|
|
101
|
+
this.applyMode(nameOrTheme, scopeEl);
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
const { mode, variant } = ThemeManager.parseLegacyTheme(nameOrTheme);
|
|
105
|
+
if (scopeEl)
|
|
106
|
+
this.scopeEl = scopeEl;
|
|
107
|
+
if (mode)
|
|
108
|
+
this.applyMode(mode, scopeEl);
|
|
109
|
+
if (variant !== undefined)
|
|
110
|
+
this.applyVariant(variant, scopeEl);
|
|
111
|
+
if (!mode && variant === undefined) {
|
|
112
|
+
console.warn(`[PhotonGrid] Theme "${nameOrTheme}" not recognized. Expected a mode ` +
|
|
113
|
+
`('light' | 'dark') or variant ('quartz' | 'alpine' | 'balham' | 'material').`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/** The active mode theme (light/dark). Never null after construction. */
|
|
52
117
|
getActiveTheme() {
|
|
53
|
-
return this.
|
|
118
|
+
return this.activeMode;
|
|
119
|
+
}
|
|
120
|
+
/** The active mode as a plain string. */
|
|
121
|
+
getActiveMode() {
|
|
122
|
+
return this.activeMode.mode;
|
|
123
|
+
}
|
|
124
|
+
/** The active variant, or `'none'` when no skin is applied. */
|
|
125
|
+
getActiveVariant() {
|
|
126
|
+
return this.activeVariant;
|
|
54
127
|
}
|
|
55
128
|
getTheme(name) {
|
|
56
129
|
return this.registry.get(name);
|
|
@@ -58,22 +131,53 @@ export class ThemeManager {
|
|
|
58
131
|
getAllThemes() {
|
|
59
132
|
return Array.from(this.registry.values());
|
|
60
133
|
}
|
|
134
|
+
/** Toggle between light and dark mode, preserving the active variant. */
|
|
61
135
|
toggleDarkMode() {
|
|
62
|
-
|
|
63
|
-
if (!current)
|
|
64
|
-
return;
|
|
65
|
-
const targetName = current.mode === 'light' ? 'dark' : 'light';
|
|
66
|
-
const target = this.registry.get(targetName);
|
|
67
|
-
if (target)
|
|
68
|
-
this.applyTheme(target, this.scopeEl ?? undefined);
|
|
136
|
+
this.applyMode(this.activeMode.mode === 'light' ? 'dark' : 'light');
|
|
69
137
|
}
|
|
70
138
|
isDarkMode() {
|
|
71
|
-
return this.
|
|
139
|
+
return this.activeMode.mode === 'dark';
|
|
72
140
|
}
|
|
73
141
|
destroy() {
|
|
74
142
|
this.injector.remove();
|
|
75
143
|
this.rootInjector.remove();
|
|
76
|
-
|
|
144
|
+
}
|
|
145
|
+
// ──────────────────── internals ────────────────────
|
|
146
|
+
/** Resolve a mode name or Theme object to a concrete light/dark Theme. */
|
|
147
|
+
resolveModeTheme(modeOrTheme) {
|
|
148
|
+
if (typeof modeOrTheme !== 'string')
|
|
149
|
+
return modeOrTheme;
|
|
150
|
+
return this.registry.get(modeOrTheme) ?? lightTheme;
|
|
151
|
+
}
|
|
152
|
+
/** Ensure the scope element carries a stable id used to target its tokens. */
|
|
153
|
+
ensureScopeId(el) {
|
|
154
|
+
let id = el.getAttribute(SCOPE_ATTR);
|
|
155
|
+
if (!id) {
|
|
156
|
+
id = `pg-scope-${(ThemeManager.scopeSeq += 1)}`;
|
|
157
|
+
el.setAttribute(SCOPE_ATTR, id);
|
|
158
|
+
}
|
|
159
|
+
return id;
|
|
160
|
+
}
|
|
161
|
+
/** Map a legacy `theme` string onto the mode/variant axes. */
|
|
162
|
+
static parseLegacyTheme(name) {
|
|
163
|
+
// Strip the historical `pg-…-theme` wrapper so `pg-quartz-theme` → `quartz`.
|
|
164
|
+
const normalized = name
|
|
165
|
+
.trim()
|
|
166
|
+
.toLowerCase()
|
|
167
|
+
.replace(/^pg-/, '')
|
|
168
|
+
.replace(/-theme$/, '');
|
|
169
|
+
if (normalized === 'light' || normalized === 'dark') {
|
|
170
|
+
return { mode: normalized };
|
|
171
|
+
}
|
|
172
|
+
// Split an optional trailing mode suffix, e.g. `quartz-dark`.
|
|
173
|
+
const [base, suffix] = normalized.split('-');
|
|
174
|
+
const mode = suffix === 'light' || suffix === 'dark' ? suffix : undefined;
|
|
175
|
+
if (base === 'quartz' || base === 'alpine' || base === 'balham' || base === 'material') {
|
|
176
|
+
return { variant: base, mode };
|
|
177
|
+
}
|
|
178
|
+
return {};
|
|
77
179
|
}
|
|
78
180
|
}
|
|
181
|
+
/** Monotonic source for unique per-instance scope ids. */
|
|
182
|
+
ThemeManager.scopeSeq = 0;
|
|
79
183
|
//# sourceMappingURL=theme-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-manager.js","sourceRoot":"","sources":["../../src/theme/theme-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"theme-manager.js","sourceRoot":"","sources":["../../src/theme/theme-manager.ts"],"names":[],"mappings":"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"}
|
package/types/column.types.d.ts
CHANGED
|
@@ -38,6 +38,31 @@ export type ColumnSummaryAggregation = 'sum' | 'avg' | 'min' | 'max' | 'count' |
|
|
|
38
38
|
* Only honoured on columns whose {@link ColumnDef.type} is `'currency'` or `'number'`.
|
|
39
39
|
*/
|
|
40
40
|
export type AggFunc = 'sum' | 'avg' | 'min' | 'max' | 'count';
|
|
41
|
+
/**
|
|
42
|
+
* Visibility strategy for a header action icon — the filter funnel and the
|
|
43
|
+
* column-menu "⋯" button.
|
|
44
|
+
*
|
|
45
|
+
* Applied grid-wide via {@link HeaderIconsConfig}, and overridable per column
|
|
46
|
+
* through {@link ColumnDef.filterIconDisplay} / {@link ColumnDef.menuIconDisplay}.
|
|
47
|
+
*/
|
|
48
|
+
export declare enum HeaderIconDisplay {
|
|
49
|
+
/**
|
|
50
|
+
* Icon stays hidden until the pointer hovers the header cell (or the icon is
|
|
51
|
+
* otherwise activated — e.g. a column with an active filter always shows its
|
|
52
|
+
* funnel). This is the default and matches the classic "reveal on hover"
|
|
53
|
+
* behaviour.
|
|
54
|
+
*/
|
|
55
|
+
HOVER = "hover",
|
|
56
|
+
/** Icon is permanently rendered, regardless of hover state. */
|
|
57
|
+
ALWAYS = "always",
|
|
58
|
+
/**
|
|
59
|
+
* Icon is never rendered. The underlying feature remains available through
|
|
60
|
+
* other affordances (e.g. the filter row, or right-clicking the header for
|
|
61
|
+
* the column menu) — only the header button is suppressed. Use this to hide
|
|
62
|
+
* the filter funnel and/or the "⋯" menu icon entirely.
|
|
63
|
+
*/
|
|
64
|
+
HIDDEN = "hidden"
|
|
65
|
+
}
|
|
41
66
|
export interface ColumnDropdownOption {
|
|
42
67
|
/** The stored value — must be unique within the option list. */
|
|
43
68
|
value: string | number;
|
|
@@ -71,10 +96,32 @@ export interface ColumnDef {
|
|
|
71
96
|
resizable?: boolean;
|
|
72
97
|
draggable?: boolean;
|
|
73
98
|
editable?: boolean;
|
|
99
|
+
/**
|
|
100
|
+
* When `true`, the column is "locked": its cells cannot be edited regardless
|
|
101
|
+
* of {@link ColumnDef.editable}. Toggled by the column menu's "Lock Column".
|
|
102
|
+
*/
|
|
103
|
+
locked?: boolean;
|
|
74
104
|
groupable?: boolean;
|
|
75
105
|
rowDrag?: boolean;
|
|
76
106
|
alwaysVisible?: boolean;
|
|
77
107
|
visible?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Controls when this column's filter funnel icon appears in the header.
|
|
110
|
+
* Only relevant while the column is filterable ({@link ColumnDef.filterable}
|
|
111
|
+
* is not `false`). Overrides the grid-level {@link HeaderIconsConfig.filter}
|
|
112
|
+
* default.
|
|
113
|
+
*
|
|
114
|
+
* @default HeaderIconDisplay.HOVER
|
|
115
|
+
*/
|
|
116
|
+
filterIconDisplay?: HeaderIconDisplay;
|
|
117
|
+
/**
|
|
118
|
+
* Controls when this column's column-menu "⋯" icon appears in the header.
|
|
119
|
+
* Only relevant while the column menu is enabled for the grid. Overrides the
|
|
120
|
+
* grid-level {@link HeaderIconsConfig.menu} default.
|
|
121
|
+
*
|
|
122
|
+
* @default HeaderIconDisplay.HOVER
|
|
123
|
+
*/
|
|
124
|
+
menuIconDisplay?: HeaderIconDisplay;
|
|
78
125
|
renderHtml?: boolean;
|
|
79
126
|
/**
|
|
80
127
|
* Per-column rendering overrides, grouped by concern (display, editor,
|
|
@@ -178,6 +225,37 @@ export interface ColumnDef {
|
|
|
178
225
|
sortOrder?: 'asc' | 'desc' | null;
|
|
179
226
|
filterActive?: boolean;
|
|
180
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* A fully-normalized column as held internally by the grid after
|
|
230
|
+
* {@link ColumnDef} defaults are applied. `colId`, `header` and `type` are
|
|
231
|
+
* always present (defaulted from `field` / `'string'` when omitted on input),
|
|
232
|
+
* so internal code never has to null-check them. Consumers reading columns from
|
|
233
|
+
* the store or `ColumnModel` receive this type.
|
|
234
|
+
*/
|
|
235
|
+
export interface Column extends ColumnDef {
|
|
236
|
+
colId: string;
|
|
237
|
+
header: string;
|
|
238
|
+
type: ColumnDataType;
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* The public, author-friendly column definition. Only {@link ColumnDef.field}
|
|
242
|
+
* is required; `colId`, `header` and `type` (and everything else) are optional
|
|
243
|
+
* and filled in with defaults during normalization:
|
|
244
|
+
*
|
|
245
|
+
* - `colId` → `col_<field>_<index>`
|
|
246
|
+
* - `header` → the `field` rendered in Title Case
|
|
247
|
+
* - `type` → `'string'`
|
|
248
|
+
*
|
|
249
|
+
* This is what `GridOptions.columns` and {@link GridApi.setColumns} accept.
|
|
250
|
+
* Internally the grid works with the fully-normalized {@link ColumnDef}.
|
|
251
|
+
*/
|
|
252
|
+
export interface ColumnDefInput extends Omit<ColumnDef, 'colId' | 'header' | 'type' | 'children'> {
|
|
253
|
+
colId?: string;
|
|
254
|
+
header?: string;
|
|
255
|
+
type?: ColumnDataType;
|
|
256
|
+
/** Nested child columns (also author-friendly). Presence makes this a group. */
|
|
257
|
+
children?: ColumnDefInput[];
|
|
258
|
+
}
|
|
181
259
|
export interface ColumnState {
|
|
182
260
|
colId: string;
|
|
183
261
|
width: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column.types.d.ts","sourceRoot":"","sources":["../../src/types/column.types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"column.types.d.ts","sourceRoot":"","sources":["../../src/types/column.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AACrF,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEjF,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAExD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,MAAM,GACN,MAAM,GACN,UAAU,GACV,QAAQ,GACR,OAAO,GACP,OAAO,GACP,UAAU,GACV,YAAY,GACZ,OAAO,GACP,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,MAAM,wBAAwB,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAExF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;AAE9D;;;;;;GAMG;AACH,oBAAY,iBAAiB;IAC3B;;;;;OAKG;IACH,KAAK,UAAU;IACf,+DAA+D;IAC/D,MAAM,WAAW;IACjB;;;;;OAKG;IACH,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,gEAAgE;IAChE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,cAAc,CAAC;IAErB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,iBAAiB,CAAC;IAEpC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAE7B,eAAe,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,IAAI,CAAC;IAEhD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAExC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,qBAAqB,KAAK,MAAM,CAAC,CAAC;IAEpE;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;IAIvB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;IAEhD;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,qCAAqC,EAAE,yBAAyB,KAAK,WAAW,GAAG,MAAM,CAAC;IAElI;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAE5B,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC;IAClC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,MAAO,SAAQ,SAAS;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,cAAc,CAAC;CACtB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAC/F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B"}
|
package/types/column.types.js
CHANGED
|
@@ -1,2 +1,27 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Visibility strategy for a header action icon — the filter funnel and the
|
|
3
|
+
* column-menu "⋯" button.
|
|
4
|
+
*
|
|
5
|
+
* Applied grid-wide via {@link HeaderIconsConfig}, and overridable per column
|
|
6
|
+
* through {@link ColumnDef.filterIconDisplay} / {@link ColumnDef.menuIconDisplay}.
|
|
7
|
+
*/
|
|
8
|
+
export var HeaderIconDisplay;
|
|
9
|
+
(function (HeaderIconDisplay) {
|
|
10
|
+
/**
|
|
11
|
+
* Icon stays hidden until the pointer hovers the header cell (or the icon is
|
|
12
|
+
* otherwise activated — e.g. a column with an active filter always shows its
|
|
13
|
+
* funnel). This is the default and matches the classic "reveal on hover"
|
|
14
|
+
* behaviour.
|
|
15
|
+
*/
|
|
16
|
+
HeaderIconDisplay["HOVER"] = "hover";
|
|
17
|
+
/** Icon is permanently rendered, regardless of hover state. */
|
|
18
|
+
HeaderIconDisplay["ALWAYS"] = "always";
|
|
19
|
+
/**
|
|
20
|
+
* Icon is never rendered. The underlying feature remains available through
|
|
21
|
+
* other affordances (e.g. the filter row, or right-clicking the header for
|
|
22
|
+
* the column menu) — only the header button is suppressed. Use this to hide
|
|
23
|
+
* the filter funnel and/or the "⋯" menu icon entirely.
|
|
24
|
+
*/
|
|
25
|
+
HeaderIconDisplay["HIDDEN"] = "hidden";
|
|
26
|
+
})(HeaderIconDisplay || (HeaderIconDisplay = {}));
|
|
2
27
|
//# sourceMappingURL=column.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column.types.js","sourceRoot":"","sources":["../../src/types/column.types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"column.types.js","sourceRoot":"","sources":["../../src/types/column.types.ts"],"names":[],"mappings":"AA2DA;;;;;;GAMG;AACH,MAAM,CAAN,IAAY,iBAiBX;AAjBD,WAAY,iBAAiB;IAC3B;;;;;OAKG;IACH,oCAAe,CAAA;IACf,+DAA+D;IAC/D,sCAAiB,CAAA;IACjB;;;;;OAKG;IACH,sCAAiB,CAAA;AACnB,CAAC,EAjBW,iBAAiB,KAAjB,iBAAiB,QAiB5B"}
|
package/types/grid.types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { ColumnDef, ColumnState } from './column.types';
|
|
1
|
+
import type { ColumnDef, ColumnDefInput, ColumnState, HeaderIconDisplay } from './column.types';
|
|
2
2
|
import type { RowNode } from './row.types';
|
|
3
3
|
import type { FilterModel, QuickFilterConfig } from './filter.types';
|
|
4
|
-
import type { BuiltInThemeName } from './theme.types';
|
|
4
|
+
import type { BuiltInThemeName, ThemeMode, ThemeVariant } from './theme.types';
|
|
5
5
|
import type { MasterDetailConfig } from './master-detail.types';
|
|
6
6
|
import type { PhotonAIConfig } from './photon-ai.types';
|
|
7
7
|
import type { TreeDataConfig } from './tree-data.types';
|
|
@@ -24,6 +24,39 @@ export interface SortConfig {
|
|
|
24
24
|
field: string;
|
|
25
25
|
order: 'asc' | 'desc';
|
|
26
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Grid-wide visibility policy for the header action icons — the filter funnel
|
|
29
|
+
* and the column-menu "⋯" button.
|
|
30
|
+
*
|
|
31
|
+
* These are the defaults applied to every eligible column (filterable columns
|
|
32
|
+
* for {@link HeaderIconsConfig.filter}; all columns when the menu is enabled
|
|
33
|
+
* for {@link HeaderIconsConfig.menu}). Any column may override the grid default
|
|
34
|
+
* via {@link ColumnDef.filterIconDisplay} / {@link ColumnDef.menuIconDisplay}.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```ts
|
|
38
|
+
* // Always show the filter funnel, and hide the "⋯" menu icon entirely.
|
|
39
|
+
* headerIcons: {
|
|
40
|
+
* filter: HeaderIconDisplay.ALWAYS,
|
|
41
|
+
* menu: HeaderIconDisplay.HIDDEN,
|
|
42
|
+
* }
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export interface HeaderIconsConfig {
|
|
46
|
+
/**
|
|
47
|
+
* Default display mode for the filter funnel icon on filterable columns.
|
|
48
|
+
* `HIDDEN` suppresses the funnel entirely (filtering remains available via
|
|
49
|
+
* the filter row).
|
|
50
|
+
* @default HeaderIconDisplay.HOVER
|
|
51
|
+
*/
|
|
52
|
+
filter?: HeaderIconDisplay;
|
|
53
|
+
/**
|
|
54
|
+
* Default display mode for the column-menu "⋯" icon. `HIDDEN` removes the
|
|
55
|
+
* three-dots button (the header right-click menu still works).
|
|
56
|
+
* @default HeaderIconDisplay.HOVER
|
|
57
|
+
*/
|
|
58
|
+
menu?: HeaderIconDisplay;
|
|
59
|
+
}
|
|
27
60
|
export interface PaginationConfig {
|
|
28
61
|
enabled: boolean;
|
|
29
62
|
page: number;
|
|
@@ -38,6 +71,20 @@ export interface SelectionConfig {
|
|
|
38
71
|
selectAllOnHeaderClick: boolean;
|
|
39
72
|
headerCheckbox: boolean;
|
|
40
73
|
suppressRowDeselection: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* When `true`, the serial-number (`#`) column acts as an AG Grid–style
|
|
76
|
+
* selection column: mouse-down on a serial cell selects the row, dragging
|
|
77
|
+
* extends a contiguous row range (with edge auto-scroll), Ctrl/Cmd toggles
|
|
78
|
+
* individual rows, and Shift selects a range from the anchor. With a row
|
|
79
|
+
* selection active, Ctrl+C copies the selected rows (values-only TSV) and
|
|
80
|
+
* Delete/Backspace/Ctrl+X remove them.
|
|
81
|
+
*
|
|
82
|
+
* Requires {@link GridOptions.showSerialNumber} and a non-`'none'`
|
|
83
|
+
* {@link SelectionConfig.mode}. Ignored otherwise.
|
|
84
|
+
*
|
|
85
|
+
* @default false
|
|
86
|
+
*/
|
|
87
|
+
serialColumnSelection: boolean;
|
|
41
88
|
}
|
|
42
89
|
/**
|
|
43
90
|
* Configuration for in-cell editing behaviour.
|
|
@@ -131,8 +178,32 @@ export interface ColumnGroupConfig {
|
|
|
131
178
|
suppressOpenByDefault?: boolean;
|
|
132
179
|
}
|
|
133
180
|
export interface GridOptions {
|
|
134
|
-
|
|
181
|
+
/** Column definitions. Only `field` is required per column — see {@link ColumnDefInput}. */
|
|
182
|
+
columns: ColumnDefInput[];
|
|
135
183
|
data?: Record<string, unknown>[];
|
|
184
|
+
/**
|
|
185
|
+
* Base color mode — drives the entire color palette (light or dark).
|
|
186
|
+
* Defaults to `'light'`. This is the primary theming axis.
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```ts
|
|
190
|
+
* new GridCore(el, { columns, mode: 'dark', variant: 'quartz' });
|
|
191
|
+
* ```
|
|
192
|
+
*/
|
|
193
|
+
mode?: ThemeMode;
|
|
194
|
+
/**
|
|
195
|
+
* Cosmetic skin layered on top of {@link GridOptions.mode}. Changes density,
|
|
196
|
+
* border radii, typography, checkbox shape, motion and accent color while the
|
|
197
|
+
* base surface/text colors continue to come from the active mode — so every
|
|
198
|
+
* variant works in both light and dark. Omit for the plain mode look.
|
|
199
|
+
*/
|
|
200
|
+
variant?: ThemeVariant;
|
|
201
|
+
/**
|
|
202
|
+
* @deprecated Use {@link GridOptions.mode} and {@link GridOptions.variant}
|
|
203
|
+
* instead. Retained for backward compatibility: legacy values such as
|
|
204
|
+
* `'dark'`, `'quartz'` or `'pg-quartz-theme'` are mapped onto the mode/variant
|
|
205
|
+
* axes at runtime.
|
|
206
|
+
*/
|
|
136
207
|
theme?: BuiltInThemeName | string;
|
|
137
208
|
rowHeight?: number;
|
|
138
209
|
rowHeightMode?: 'fixed' | 'auto';
|
|
@@ -150,6 +221,24 @@ export interface GridOptions {
|
|
|
150
221
|
showHorizontalBorders?: boolean;
|
|
151
222
|
showFilterRow?: boolean;
|
|
152
223
|
rowShading?: boolean;
|
|
224
|
+
/**
|
|
225
|
+
* Enables the FLIP/slide row animations played when rows reorder (sort),
|
|
226
|
+
* appear/disappear (filter), or a group / master-detail row expands.
|
|
227
|
+
*
|
|
228
|
+
* Set to `false` to disable all row animations entirely — useful for
|
|
229
|
+
* reduced-motion preferences or very high-frequency data updates.
|
|
230
|
+
*
|
|
231
|
+
* @default true
|
|
232
|
+
*/
|
|
233
|
+
animateRows?: boolean;
|
|
234
|
+
/**
|
|
235
|
+
* When the header action icons (filter funnel + column-menu "⋯") appear —
|
|
236
|
+
* on hover (default) or always. Set grid-wide here; override per column with
|
|
237
|
+
* {@link ColumnDef.filterIconDisplay} / {@link ColumnDef.menuIconDisplay}.
|
|
238
|
+
*
|
|
239
|
+
* @see {@link HeaderIconsConfig}
|
|
240
|
+
*/
|
|
241
|
+
headerIcons?: HeaderIconsConfig;
|
|
153
242
|
selection?: Partial<SelectionConfig>;
|
|
154
243
|
editing?: Partial<EditingConfig>;
|
|
155
244
|
pagination?: Partial<PaginationConfig>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid.types.d.ts","sourceRoot":"","sources":["../../src/types/grid.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"grid.types.d.ts","sourceRoot":"","sources":["../../src/types/grid.types.ts"],"names":[],"mappings":"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"}
|