igniteui-grid-lite 0.10.0 → 0.11.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/components/cell.d.ts +5 -17
- package/components/cell.js +2 -2
- package/components/cell.js.map +1 -1
- package/components/filter-row.d.ts +2 -5
- package/components/filter-row.js +22 -27
- package/components/filter-row.js.map +1 -1
- package/components/grid.d.ts +10 -15
- package/components/grid.js +33 -36
- package/components/grid.js.map +1 -1
- package/components/header-row.js +2 -1
- package/components/header-row.js.map +1 -1
- package/components/header.js +2 -6
- package/components/header.js.map +1 -1
- package/components/row.d.ts +0 -3
- package/components/row.js +3 -3
- package/components/row.js.map +1 -1
- package/controllers/data-operation.d.ts +1 -3
- package/controllers/data-operation.js +0 -2
- package/controllers/data-operation.js.map +1 -1
- package/controllers/dom.d.ts +4 -16
- package/controllers/dom.js +14 -13
- package/controllers/dom.js.map +1 -1
- package/controllers/filter.d.ts +10 -22
- package/controllers/filter.js +14 -8
- package/controllers/filter.js.map +1 -1
- package/controllers/navigation.d.ts +4 -9
- package/controllers/navigation.js +23 -43
- package/controllers/navigation.js.map +1 -1
- package/controllers/resize.d.ts +3 -9
- package/controllers/resize.js +2 -7
- package/controllers/resize.js.map +1 -1
- package/controllers/sort.d.ts +3 -5
- package/controllers/sort.js +19 -14
- package/controllers/sort.js.map +1 -1
- package/controllers/state.d.ts +2 -13
- package/controllers/state.js +12 -10
- package/controllers/state.js.map +1 -1
- package/custom-elements.json +201 -350
- package/docs/igniteui-grid-lite.json +849 -859
- package/internal/a11y.d.ts +2 -5
- package/internal/a11y.js.map +1 -1
- package/internal/body-focus.d.ts +6 -0
- package/internal/body-focus.js +46 -0
- package/internal/body-focus.js.map +1 -0
- package/internal/constants.d.ts +4 -1
- package/internal/constants.js +2 -0
- package/internal/constants.js.map +1 -1
- package/internal/element-from-event-path.d.ts +1 -1
- package/internal/element-from-event-path.js +2 -9
- package/internal/element-from-event-path.js.map +1 -1
- package/internal/tags.d.ts +0 -1
- package/internal/tags.js +0 -1
- package/internal/tags.js.map +1 -1
- package/internal/types.d.ts +6 -7
- package/internal/types.js.map +1 -1
- package/internal/utils.d.ts +4 -8
- package/internal/utils.js +7 -3
- package/internal/utils.js.map +1 -1
- package/operations/base.js +2 -2
- package/operations/base.js.map +1 -1
- package/operations/filter/state.d.ts +0 -1
- package/operations/filter/state.js +0 -3
- package/operations/filter/state.js.map +1 -1
- package/operations/filter/types.d.ts +1 -1
- package/operations/filter/types.js.map +1 -1
- package/operations/filter.js +3 -2
- package/operations/filter.js.map +1 -1
- package/operations/sort/types.d.ts +1 -1
- package/operations/sort/types.js.map +1 -1
- package/operations/sort.js +5 -1
- package/operations/sort.js.map +1 -1
- package/package.json +2 -3
- package/styles/header-cell/header-cell.css.js +1 -1
- package/styles/header-cell/header-cell.css.js.map +1 -1
- package/styles/themes/filtering-row-themes.js +2 -30
- package/styles/themes/filtering-row-themes.js.map +1 -1
- package/styles/themes/grid-header-themes.js +2 -20
- package/styles/themes/grid-header-themes.js.map +1 -1
- package/styles/themes/grid-themes.js +10 -31
- package/styles/themes/grid-themes.js.map +1 -1
- package/styles/themes/grid.base.css.js +1 -1
- package/styles/themes/grid.base.css.js.map +1 -1
- package/styles/themes/shared/grid.common.css.js +1 -1
- package/styles/themes/shared/grid.common.css.js.map +1 -1
- package/components/virtualizer.d.ts +0 -14
- package/components/virtualizer.js +0 -49
- package/components/virtualizer.js.map +0 -1
- package/internal/virt-flow-layout.d.ts +0 -4
- package/internal/virt-flow-layout.js +0 -15
- package/internal/virt-flow-layout.js.map +0 -1
package/controllers/state.js
CHANGED
|
@@ -24,7 +24,7 @@ class StateController {
|
|
|
24
24
|
this.resizing = new ResizeController(this, dom);
|
|
25
25
|
}
|
|
26
26
|
updateObservers() {
|
|
27
|
-
this._observersCallback
|
|
27
|
+
this._observersCallback();
|
|
28
28
|
}
|
|
29
29
|
setColumnConfiguration(columns) {
|
|
30
30
|
this._columns = columns.map((column) => createColumnConfiguration(column));
|
|
@@ -33,21 +33,23 @@ class StateController {
|
|
|
33
33
|
this.host.requestUpdate(PIPELINE);
|
|
34
34
|
}
|
|
35
35
|
setAutoColumnConfiguration() {
|
|
36
|
-
if (this.host.autoGenerate
|
|
37
|
-
|
|
38
|
-
this.filtering.resolveConditions();
|
|
39
|
-
this.host.requestUpdate(PIPELINE);
|
|
36
|
+
if (!this.host.autoGenerate || this.host.data.length === 0) {
|
|
37
|
+
return;
|
|
40
38
|
}
|
|
39
|
+
this._columns = setColumnsFromData(this.host.data[0]);
|
|
40
|
+
this.filtering.resolveConditions();
|
|
41
|
+
this.host.requestUpdate(PIPELINE);
|
|
41
42
|
}
|
|
42
43
|
updateColumnsConfiguration(config) {
|
|
43
44
|
for (const columnConfig of config) {
|
|
44
45
|
const existing = this._columns.findIndex((column) => column.field === columnConfig.field);
|
|
45
|
-
if (existing
|
|
46
|
-
|
|
47
|
-
...this._columns[existing],
|
|
48
|
-
...createColumnConfiguration(columnConfig),
|
|
49
|
-
};
|
|
46
|
+
if (existing === -1) {
|
|
47
|
+
continue;
|
|
50
48
|
}
|
|
49
|
+
this._columns[existing] = {
|
|
50
|
+
...this._columns[existing],
|
|
51
|
+
...createColumnConfiguration(columnConfig),
|
|
52
|
+
};
|
|
51
53
|
}
|
|
52
54
|
this._columns = [...this._columns];
|
|
53
55
|
this.updateObservers();
|
package/controllers/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/controllers/state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAW3C,MAAM,eAAe;
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/controllers/state.ts"],"names":[],"mappings":"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","sourcesContent":["import { PIPELINE } from '../internal/constants.js';\nimport type { ActiveNode, ColumnConfiguration, GridHost, Keys } from '../internal/types.js';\nimport { createColumnConfiguration, setColumnsFromData } from '../internal/utils.js';\nimport type { GridDOMController } from './dom.js';\nimport { FilterController } from './filter.js';\nimport { NavigationController } from './navigation.js';\nimport { ResizeController } from './resize.js';\nimport { SortController } from './sort.js';\n\n/**\n * Holds the column configuration of the grid and owns the controllers for its\n * data operations. Column objects are immutable: each change produces new objects\n * and a new array, so consumers can dirty-check by identity.\n *\n * @remarks\n * Not a reactive controller: it has no host lifecycle. All DOM concerns live in\n * {@link GridDOMController}.\n */\nclass StateController<T extends object> {\n private _columns: ColumnConfiguration<T>[] = [];\n private readonly _observersCallback: () => void;\n\n public readonly host: GridHost<T>;\n\n public readonly sorting: SortController<T>;\n public readonly filtering: FilterController<T>;\n public readonly navigation: NavigationController<T>;\n public readonly resizing: ResizeController<T>;\n\n public get columns(): ColumnConfiguration<T>[] {\n return this._columns;\n }\n\n /** The currently active node in the grid. */\n public get active(): ActiveNode<T> {\n return this.navigation.active;\n }\n\n /** Sets the currently active node in the grid. */\n public set active(node: ActiveNode<T>) {\n this.navigation.active = node;\n }\n\n constructor(host: GridHost<T>, dom: GridDOMController<T>, observersCallback: () => void) {\n this._observersCallback = observersCallback;\n this.host = host;\n\n this.sorting = new SortController(this);\n this.filtering = new FilterController(this, dom);\n this.navigation = new NavigationController(this, dom);\n this.resizing = new ResizeController(this, dom);\n }\n\n /** Pings the state consumers (headers, header row, filter row). Call at mutation points only. */\n public updateObservers(): void {\n this._observersCallback();\n }\n\n public setColumnConfiguration(columns: ColumnConfiguration<T>[]): void {\n this._columns = columns.map((column) => createColumnConfiguration(column));\n this.filtering.resolveConditions();\n this.updateObservers();\n this.host.requestUpdate(PIPELINE);\n }\n\n public setAutoColumnConfiguration(): void {\n if (!this.host.autoGenerate || this.host.data.length === 0) {\n return;\n }\n\n this._columns = setColumnsFromData(this.host.data[0]);\n this.filtering.resolveConditions();\n this.host.requestUpdate(PIPELINE);\n }\n\n public updateColumnsConfiguration(config: ColumnConfiguration<T>[]): void {\n // NOTE: Write in place first. Holders of the current array (header row, DOM\n // controller) must see the new objects this cycle, not the next.\n for (const columnConfig of config) {\n const existing = this._columns.findIndex((column) => column.field === columnConfig.field);\n\n if (existing === -1) {\n continue;\n }\n\n this._columns[existing] = {\n ...this._columns[existing],\n ...createColumnConfiguration(columnConfig),\n };\n }\n\n this._columns = [...this._columns];\n this.updateObservers();\n this.host.requestUpdate(PIPELINE);\n }\n\n /** Replaces one column's width. Skips the pipeline: resize drags call this per pointer move. */\n public setColumnWidth(field: Keys<T>, width: string): void {\n const index = this._columns.findIndex((column) => column.field === field);\n\n if (index === -1) {\n return;\n }\n\n this._columns = this._columns.with(index, { ...this._columns[index], width });\n this.updateObservers();\n this.host.requestUpdate();\n }\n}\n\nfunction createStateController<T extends object>(\n host: GridHost<T>,\n dom: GridDOMController<T>,\n observersCallback: () => void\n): StateController<T> {\n return new StateController<T>(host, dom, observersCallback);\n}\n\nexport type { StateController };\nexport { createStateController };\n"]}
|