@3mo/data-grid 0.9.12-preview.5 → 0.9.12-preview.7

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 (123) hide show
  1. package/dist/CsvGenerator.d.ts +6 -0
  2. package/dist/CsvGenerator.d.ts.map +1 -0
  3. package/dist/CsvGenerator.js +36 -0
  4. package/dist/DataGrid.d.ts +221 -0
  5. package/dist/DataGrid.d.ts.map +1 -0
  6. package/dist/DataGrid.js +844 -0
  7. package/dist/DataGridCell.d.ts +38 -0
  8. package/dist/DataGridCell.d.ts.map +1 -0
  9. package/dist/DataGridCell.js +208 -0
  10. package/dist/DataGridColumn.d.ts +38 -0
  11. package/dist/DataGridColumn.d.ts.map +1 -0
  12. package/dist/DataGridColumn.js +78 -0
  13. package/dist/DataGridColumnsController.d.ts +25 -0
  14. package/dist/DataGridColumnsController.d.ts.map +1 -0
  15. package/dist/DataGridColumnsController.js +116 -0
  16. package/dist/DataGridContextMenuController.d.ts +11 -0
  17. package/dist/DataGridContextMenuController.d.ts.map +1 -0
  18. package/dist/DataGridContextMenuController.js +44 -0
  19. package/dist/DataGridDetailsController.d.ts +28 -0
  20. package/dist/DataGridDetailsController.d.ts.map +1 -0
  21. package/dist/DataGridDetailsController.js +63 -0
  22. package/dist/DataGridFooter.d.ts +28 -0
  23. package/dist/DataGridFooter.d.ts.map +1 -0
  24. package/dist/DataGridFooter.js +257 -0
  25. package/dist/DataGridHeader.d.ts +30 -0
  26. package/dist/DataGridHeader.d.ts.map +1 -0
  27. package/dist/DataGridHeader.js +290 -0
  28. package/dist/DataGridHeaderSeparator.d.ts +24 -0
  29. package/dist/DataGridHeaderSeparator.d.ts.map +1 -0
  30. package/dist/DataGridHeaderSeparator.js +135 -0
  31. package/dist/DataGridPrimaryContextMenuItem.d.ts +10 -0
  32. package/dist/DataGridPrimaryContextMenuItem.d.ts.map +1 -0
  33. package/dist/DataGridPrimaryContextMenuItem.js +17 -0
  34. package/dist/DataGridSelectionController.d.ts +45 -0
  35. package/dist/DataGridSelectionController.d.ts.map +1 -0
  36. package/dist/DataGridSelectionController.js +111 -0
  37. package/dist/DataGridSidePanel.d.ts +26 -0
  38. package/dist/DataGridSidePanel.d.ts.map +1 -0
  39. package/dist/DataGridSidePanel.js +174 -0
  40. package/dist/DataGridSortingController.d.ts +41 -0
  41. package/dist/DataGridSortingController.d.ts.map +1 -0
  42. package/dist/DataGridSortingController.js +97 -0
  43. package/dist/DataRecord.d.ts +16 -0
  44. package/dist/DataRecord.d.ts.map +1 -0
  45. package/dist/DataRecord.js +28 -0
  46. package/dist/columns/DataGridColumnBoolean.d.ts +25 -0
  47. package/dist/columns/DataGridColumnBoolean.d.ts.map +1 -0
  48. package/dist/columns/DataGridColumnBoolean.js +55 -0
  49. package/dist/columns/DataGridColumnComponent.d.ts +37 -0
  50. package/dist/columns/DataGridColumnComponent.d.ts.map +1 -0
  51. package/dist/columns/DataGridColumnComponent.js +104 -0
  52. package/dist/columns/DataGridColumnComponent.test.d.ts +2 -0
  53. package/dist/columns/DataGridColumnComponent.test.d.ts.map +1 -0
  54. package/dist/columns/DataGridColumnComponent.test.js +15 -0
  55. package/dist/columns/DataGridColumnDeletion.d.ts +24 -0
  56. package/dist/columns/DataGridColumnDeletion.d.ts.map +1 -0
  57. package/dist/columns/DataGridColumnDeletion.js +45 -0
  58. package/dist/columns/DataGridColumnImage.d.ts +21 -0
  59. package/dist/columns/DataGridColumnImage.d.ts.map +1 -0
  60. package/dist/columns/DataGridColumnImage.js +49 -0
  61. package/dist/columns/DataGridColumnText.d.ts +12 -0
  62. package/dist/columns/DataGridColumnText.d.ts.map +1 -0
  63. package/dist/columns/DataGridColumnText.js +22 -0
  64. package/dist/columns/date-time/DataGridColumnDate.d.ts +13 -0
  65. package/dist/columns/date-time/DataGridColumnDate.d.ts.map +1 -0
  66. package/dist/columns/date-time/DataGridColumnDate.js +21 -0
  67. package/dist/columns/date-time/DataGridColumnDateRange.d.ts +12 -0
  68. package/dist/columns/date-time/DataGridColumnDateRange.d.ts.map +1 -0
  69. package/dist/columns/date-time/DataGridColumnDateRange.js +18 -0
  70. package/dist/columns/date-time/DataGridColumnDateTime.d.ts +13 -0
  71. package/dist/columns/date-time/DataGridColumnDateTime.d.ts.map +1 -0
  72. package/dist/columns/date-time/DataGridColumnDateTime.js +29 -0
  73. package/dist/columns/date-time/DataGridColumnDateTimeBase.d.ts +17 -0
  74. package/dist/columns/date-time/DataGridColumnDateTimeBase.d.ts.map +1 -0
  75. package/dist/columns/date-time/DataGridColumnDateTimeBase.js +33 -0
  76. package/dist/columns/date-time/DataGridColumnDateTimeRange.d.ts +12 -0
  77. package/dist/columns/date-time/DataGridColumnDateTimeRange.d.ts.map +1 -0
  78. package/dist/columns/date-time/DataGridColumnDateTimeRange.js +18 -0
  79. package/dist/columns/date-time/index.d.ts +5 -0
  80. package/dist/columns/date-time/index.d.ts.map +1 -0
  81. package/dist/columns/date-time/index.js +4 -0
  82. package/dist/columns/index.d.ts +8 -0
  83. package/dist/columns/index.d.ts.map +1 -0
  84. package/dist/columns/index.js +7 -0
  85. package/dist/columns/number/DataGridColumnCurrency.d.ts +24 -0
  86. package/dist/columns/number/DataGridColumnCurrency.d.ts.map +1 -0
  87. package/dist/columns/number/DataGridColumnCurrency.js +54 -0
  88. package/dist/columns/number/DataGridColumnNumber.d.ts +13 -0
  89. package/dist/columns/number/DataGridColumnNumber.d.ts.map +1 -0
  90. package/dist/columns/number/DataGridColumnNumber.js +25 -0
  91. package/dist/columns/number/DataGridColumnNumberBase.d.ts +11 -0
  92. package/dist/columns/number/DataGridColumnNumberBase.d.ts.map +1 -0
  93. package/dist/columns/number/DataGridColumnNumberBase.js +27 -0
  94. package/dist/columns/number/DataGridColumnPercent.d.ts +15 -0
  95. package/dist/columns/number/DataGridColumnPercent.d.ts.map +1 -0
  96. package/dist/columns/number/DataGridColumnPercent.js +38 -0
  97. package/dist/columns/number/DataGridFooterSum.d.ts +19 -0
  98. package/dist/columns/number/DataGridFooterSum.d.ts.map +1 -0
  99. package/dist/columns/number/DataGridFooterSum.js +54 -0
  100. package/dist/columns/number/index.d.ts +5 -0
  101. package/dist/columns/number/index.d.ts.map +1 -0
  102. package/dist/columns/number/index.js +4 -0
  103. package/dist/custom-elements.json +908 -0
  104. package/dist/excel.svg.d.ts +3 -0
  105. package/dist/excel.svg.d.ts.map +1 -0
  106. package/dist/excel.svg.js +48 -0
  107. package/dist/index.d.ts +38 -0
  108. package/dist/index.d.ts.map +1 -0
  109. package/dist/index.js +37 -0
  110. package/dist/rows/DataGridDefaultRow.d.ts +12 -0
  111. package/dist/rows/DataGridDefaultRow.d.ts.map +1 -0
  112. package/dist/rows/DataGridDefaultRow.js +80 -0
  113. package/dist/rows/DataGridRow.d.ts +50 -0
  114. package/dist/rows/DataGridRow.d.ts.map +1 -0
  115. package/dist/rows/DataGridRow.js +331 -0
  116. package/dist/rows/index.d.ts +3 -0
  117. package/dist/rows/index.d.ts.map +1 -0
  118. package/dist/rows/index.js +2 -0
  119. package/dist/tsconfig.tsbuildinfo +1 -0
  120. package/dist/types.d.ts +5 -0
  121. package/dist/types.d.ts.map +1 -0
  122. package/dist/types.js +1 -0
  123. package/package.json +1 -1
@@ -0,0 +1,6 @@
1
+ import type { DataGrid } from './DataGrid.js';
2
+ export declare class CsvGenerator {
3
+ static escape: (value: string) => string;
4
+ static generate<TData>(dataGrid: DataGrid<TData, any>): void;
5
+ }
6
+ //# sourceMappingURL=CsvGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CsvGenerator.d.ts","sourceRoot":"","sources":["../CsvGenerator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,qBAAa,YAAY;IACxB,MAAM,CAAC,MAAM,UAAW,MAAM,YAS7B;IAED,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;CA6BrD"}
@@ -0,0 +1,36 @@
1
+ import { Downloader } from '@3mo/downloader';
2
+ export class CsvGenerator {
3
+ static generate(dataGrid) {
4
+ const flattenedData = [...dataGrid['getFlattenedData']()];
5
+ const maxLevel = Math.max(...flattenedData.map(d => d.level));
6
+ const [firstHeading, ...restHeadings] = dataGrid.visibleColumns.map(c => `${this.escape(c.heading.length < 3 && c.description ? c.description : c.heading)}${!c.suffix ? '' : ` ${c.suffix}`}`);
7
+ const rows = [
8
+ [firstHeading, ...Array.from({ length: maxLevel }).fill(firstHeading), ...restHeadings],
9
+ ...flattenedData.map(d => {
10
+ const nestedPadding = Array.from({ length: d.level }).fill('');
11
+ const childrenPadding = Array.from({ length: maxLevel - d.level }).fill('');
12
+ const [first, ...rest] = dataGrid.visibleColumns
13
+ .flatMap(column => this.escape(String(column.format(getValueByKeyPath(d.data, column.dataSelector), d.data))));
14
+ return [
15
+ ...nestedPadding,
16
+ first,
17
+ ...childrenPadding,
18
+ ...rest
19
+ ];
20
+ })
21
+ ];
22
+ const csv = rows.map(row => row.join(',')).join('\n');
23
+ // @ts-expect-error manifest can be undefined
24
+ const fileName = (globalThis.manifest?.short_name ?? '') + 'Export'.replace(/ /g, '_');
25
+ Downloader.download(`data:text/csv;charset=utf-8,${encodeURIComponent(csv)}`, `${fileName}.csv`);
26
+ }
27
+ }
28
+ CsvGenerator.escape = (value) => {
29
+ if (value.includes(',')) {
30
+ if (value.includes('"')) {
31
+ value = value.replaceAll('"', '""');
32
+ }
33
+ value = `"${value}"`;
34
+ }
35
+ return value;
36
+ };
@@ -0,0 +1,221 @@
1
+ import { Component, type PropertyValues, type HTMLTemplateResult } from '@a11d/lit';
2
+ import { LocalStorage } from '@a11d/local-storage';
3
+ import { InstanceofAttributeController } from '@3mo/instanceof-attribute-controller';
4
+ import { SlotController } from '@3mo/slot-controller';
5
+ import { ThemeController } from '@3mo/theme';
6
+ import { MediaQueryController } from '@3mo/media-query-observer';
7
+ import { DataGridColumnsController } from './DataGridColumnsController.js';
8
+ import { DataGridSelectionBehaviorOnDataChange, DataGridSelectionController, DataGridSelectionMode } from './DataGridSelectionController.js';
9
+ import { DataGridSortingController, type DataGridRankedSortDefinition, type DataGridSorting } from './DataGridSortingController.js';
10
+ import { DataGridDetailsController } from './DataGridDetailsController.js';
11
+ import { DataGridSidePanelTab, type DataGridColumn, type DataGridCell, type DataGridRow, DataGridContextMenuController } from './index.js';
12
+ import { DataRecord } from './DataRecord.js';
13
+ export type DataGridPagination = 'auto' | number;
14
+ export declare enum DataGridEditability {
15
+ Never = "never",
16
+ Cell = "cell",
17
+ Always = "always"
18
+ }
19
+ /**
20
+ * @element mo-data-grid
21
+ *
22
+ * @attr data - The data to be displayed in the DataGrid. It is an array of objects, where each object represents a row.
23
+ * @attr columns - The columns to be displayed in the DataGrid. It is an array of objects, where each object represents a column.
24
+ * @attr headerHidden - Whether the header should be hidden.
25
+ * @attr preventVerticalContentScroll - Whether the content should be prevented from scrolling vertically.
26
+ * @attr page - The current page.
27
+ * @attr pagination - The pagination mode. It can be either `auto` or a number.
28
+ * @attr sorting - The sorting mode. It is an object with `selector` and `strategy` properties.
29
+ * @attr selectionMode - The selection mode.
30
+ * @attr isDataSelectable - Whether data of a given row is selectable.
31
+ * @attr selectedData - The selected data.
32
+ * @attr selectOnClick - Whether the row should be selected on click.
33
+ * @attr selectionCheckboxesHidden - Whether the selection checkboxes should be hidden. This activates selection on row click ignoring the `selectOnClick` attribute.
34
+ * @attr selectionBehaviorOnDataChange - The behavior of the selection when the data changes.
35
+ * @attr multipleDetails - Whether multiple details can be opened at the same time.
36
+ * @attr subDataGridDataSelector - The key path of the sub data grid data.
37
+ * @attr hasDataDetail - Whether the data has a detail.
38
+ * @attr detailsOnClick - Whether the details should be opened on click.
39
+ * @attr primaryContextMenuItemOnDoubleClick - The primary context menu item on double click.
40
+ * @attr editability - The editability mode.
41
+ * @attr getRowDetailsTemplate - A function which returns a template for the details of a given row.
42
+ * @attr getRowContextMenuTemplate - A function which returns a template for the context menu of a given row.
43
+ * @attr sidePanelTab - The side panel tab.
44
+ * @attr sidePanelHidden - Whether the side panel should be hidden.
45
+ * @attr hasAlternatingBackground - Whether the rows should have alternating background.
46
+ * @attr preventFabCollapse - Whether the FAB should be prevented from collapsing.
47
+ * @attr cellFontSize - The font size of the cells relative to the default font size. Defaults @see DataGrid.cellFontSize 's value which defaults to 0.8.
48
+ * @attr rowHeight - The height of the rows in pixels. Defaults to @see DataGrid.rowHeight 's value which defaults to 35.
49
+ * @attr exportable - Whether the DataGrid is exportable. This will show an export button in the footer.
50
+ *
51
+ * @slot - Use this slot only for declarative DataGrid APIs e.g. setting ColumnDefinitions via `mo-data-grid-columns` tag.
52
+ * @slot toolbar - The horizontal bar above DataGrid's contents.
53
+ * @slot filter - A vertical bar for elements which filter DataGrid's data. It is opened through an icon-button in the toolbar.
54
+ * @slot sum - A horizontal bar in the DataGrid's footer for showing sums. Calculated sums are also placed here by default.
55
+ * @slot settings - A vertical bar for elements which change DataGrid's settings. It is pre-filled with columns' settings and can be opened through an icon-button in the toolbar.
56
+ * @slot fab - A wrapper at the bottom right edge, floating right above the footer, expecting Floating Action Button to be placed in.
57
+ * @slot error-no-content - A slot for displaying an error message when no data is available.
58
+ *
59
+ * @cssprop --mo-data-grid-min-visible-rows - The minimum number of visible rows. Default to 2.5.
60
+ * @cssprop --mo-data-grid-footer-background - The background of the footer.
61
+ * @cssprop --mo-data-grid-cell-padding - The inline padding of the cells. Default to 10px.
62
+ * @cssprop --mo-data-grid-column-sub-row-indentation - The indentation of the first column in the sub row. Default to 20px.
63
+ *
64
+ * @fires dataChange
65
+ * @fires selectionChange
66
+ * @fires pageChange
67
+ * @fires paginationChange
68
+ * @fires columnsChange
69
+ * @fires sidePanelOpen
70
+ * @fires sidePanelClose
71
+ * @fires sortingChange
72
+ * @fires rowDetailsOpen
73
+ * @fires rowDetailsClose
74
+ * @fires rowClick
75
+ * @fires rowDoubleClick
76
+ * @fires rowMiddleClick
77
+ * @fires cellEdit
78
+ */
79
+ export declare class DataGrid<TData, TDetailsElement extends Element | undefined = undefined> extends Component {
80
+ static readonly rowHeight: LocalStorage<number>;
81
+ static readonly cellRelativeFontSize: LocalStorage<number>;
82
+ static readonly pageSize: LocalStorage<number>;
83
+ static readonly hasAlternatingBackground: LocalStorage<boolean>;
84
+ readonly dataChange: EventDispatcher<Array<TData>>;
85
+ readonly selectionChange: EventDispatcher<Array<TData>>;
86
+ readonly pageChange: EventDispatcher<number>;
87
+ readonly paginationChange: EventDispatcher<DataGridPagination | undefined>;
88
+ readonly columnsChange: EventDispatcher<Array<DataGridColumn<TData>>>;
89
+ readonly sidePanelOpen: EventDispatcher<DataGridSidePanelTab>;
90
+ readonly sidePanelClose: EventDispatcher;
91
+ readonly sortingChange: EventDispatcher<Array<DataGridRankedSortDefinition<TData>>>;
92
+ readonly rowDetailsOpen: EventDispatcher<DataGridRow<TData, TDetailsElement>>;
93
+ readonly rowDetailsClose: EventDispatcher<DataGridRow<TData, TDetailsElement>>;
94
+ readonly rowClick: EventDispatcher<DataGridRow<TData, TDetailsElement>>;
95
+ readonly rowDoubleClick: EventDispatcher<DataGridRow<TData, TDetailsElement>>;
96
+ readonly rowMiddleClick: EventDispatcher<DataGridRow<TData, TDetailsElement>>;
97
+ readonly cellEdit: EventDispatcher<DataGridCell<any, TData, TDetailsElement>>;
98
+ data: TData[];
99
+ columns: DataGridColumn<TData, unknown>[];
100
+ headerHidden: boolean;
101
+ preventVerticalContentScroll: boolean;
102
+ page: number;
103
+ pagination?: DataGridPagination;
104
+ sorting?: DataGridSorting<TData>;
105
+ selectionMode: DataGridSelectionMode;
106
+ isDataSelectable?: (data: TData) => boolean;
107
+ selectedData: TData[];
108
+ selectOnClick: boolean;
109
+ selectionCheckboxesHidden: boolean;
110
+ selectionBehaviorOnDataChange: DataGridSelectionBehaviorOnDataChange;
111
+ getRowDetailsTemplate?: (data: TData) => HTMLTemplateResult;
112
+ multipleDetails: boolean;
113
+ subDataGridDataSelector?: KeyPathOf<TData>;
114
+ hasDataDetail?: (data: TData) => boolean;
115
+ detailsOnClick: boolean;
116
+ getRowContextMenuTemplate?: (data: Array<TData>) => HTMLTemplateResult;
117
+ primaryContextMenuItemOnDoubleClick: boolean;
118
+ editability: DataGridEditability;
119
+ sidePanelTab: DataGridSidePanelTab | undefined;
120
+ sidePanelHidden: boolean;
121
+ hasAlternatingBackground: boolean;
122
+ preventFabCollapse: boolean;
123
+ protected fabSlotCollapsed: boolean;
124
+ exportable: boolean;
125
+ cellFontSize: number;
126
+ rowHeight: number;
127
+ private readonly header?;
128
+ private readonly scroller?;
129
+ readonly rows: Array<DataGridRow<TData, TDetailsElement>>;
130
+ private readonly footer?;
131
+ private readonly sidePanel?;
132
+ setPage(page: number): void;
133
+ setPagination(pagination?: DataGridPagination): void;
134
+ setData(data: Array<TData>, selectionBehavior?: DataGridSelectionBehaviorOnDataChange): void;
135
+ get hasSelection(): boolean;
136
+ selectAll(...parameters: Parameters<typeof this.selectionController.selectAll>): void;
137
+ deselectAll(...parameters: Parameters<typeof this.selectionController.deselectAll>): void;
138
+ select(...parameters: Parameters<typeof this.selectionController.select>): void;
139
+ isSelectable(...parameters: Parameters<typeof this.selectionController.isSelectable>): boolean;
140
+ get hasDetails(): boolean;
141
+ get allRowDetailsOpen(): boolean;
142
+ openRowDetails(...parameters: Parameters<typeof this.detailsController.openAll>): void;
143
+ closeRowDetails(...parameters: Parameters<typeof this.detailsController.closeAll>): void;
144
+ toggleRowDetails(...parameters: Parameters<typeof this.detailsController.toggleAll>): void;
145
+ getSorting(...parameters: Parameters<typeof DataGridSortingController.prototype.get>): DataGridRankedSortDefinition<TData>[];
146
+ sort(...parameters: Parameters<typeof this.sortingController.set>): void;
147
+ unsort(...parameters: Parameters<typeof this.sortingController.reset>): void;
148
+ setColumns(...parameters: Parameters<typeof this.columnsController.setColumns>): void;
149
+ extractColumns(...parameters: Parameters<typeof this.columnsController.extractColumns>): void;
150
+ get visibleColumns(): DataGridColumn<TData, unknown>[];
151
+ getRow(data: TData): DataGridRow<TData, TDetailsElement> | undefined;
152
+ getCell(data: TData, column: DataGridColumn<TData, unknown>): DataGridCell<any, TData, TDetailsElement> | undefined;
153
+ handleEdit(data: TData, column: DataGridColumn<TData, unknown>, value: KeyPathValueOf<TData, KeyPathOf<TData>> | undefined): void;
154
+ navigateToSidePanelTab(tab?: DataGridSidePanelTab): void;
155
+ exportExcelFile(): void;
156
+ get hasContextMenu(): boolean;
157
+ get toolbarElements(): Element[];
158
+ get filterElements(): Element[];
159
+ get hasToolbar(): boolean;
160
+ get hasFilters(): boolean;
161
+ get hasSums(): boolean;
162
+ get hasFabs(): boolean;
163
+ get hasPagination(): boolean;
164
+ get supportsDynamicPageSize(): boolean;
165
+ get pageSize(): number;
166
+ get hasFooter(): boolean;
167
+ get dataLength(): number;
168
+ get maxPage(): number;
169
+ get hasNextPage(): boolean;
170
+ protected readonly slotController: SlotController;
171
+ protected readonly instanceofAttributeController: InstanceofAttributeController;
172
+ protected readonly smallScreenObserverController: MediaQueryController;
173
+ protected readonly themeController: ThemeController;
174
+ readonly columnsController: DataGridColumnsController<TData>;
175
+ readonly selectionController: DataGridSelectionController<TData>;
176
+ readonly sortingController: DataGridSortingController<TData>;
177
+ readonly contextMenuController: DataGridContextMenuController<TData>;
178
+ readonly detailsController: DataGridDetailsController<TData>;
179
+ readonly rowIntersectionObserver?: IntersectionObserver;
180
+ protected updated(...parameters: Parameters<Component['updated']>): void;
181
+ private navigateToLastValidPageIfNeeded;
182
+ protected firstUpdated(props: PropertyValues): void;
183
+ static get styles(): import("@a11d/lit").CSSResult;
184
+ protected get template(): HTMLTemplateResult;
185
+ private readonly splitterResizerTemplate;
186
+ private get splitterModeTemplate();
187
+ private get overlayModeTemplate();
188
+ private get sidePanelTemplate();
189
+ protected get settingsDefaultTemplate(): HTMLTemplateResult;
190
+ protected get filtersDefaultTemplate(): HTMLTemplateResult;
191
+ protected get columnsTemplate(): HTMLTemplateResult;
192
+ protected get rowElementTag(): import("lit-html/static.js").StaticValue;
193
+ protected get fabTemplate(): HTMLTemplateResult;
194
+ protected get contentTemplate(): HTMLTemplateResult;
195
+ protected get noContentTemplate(): HTMLTemplateResult;
196
+ protected get dataGridTemplate(): HTMLTemplateResult;
197
+ protected get headerTemplate(): HTMLTemplateResult;
198
+ private get rowsTemplate();
199
+ getRowTemplate(dataRecord: DataRecord<TData>, index?: number): import("lit-html").TemplateResult;
200
+ protected get footerTemplate(): HTMLTemplateResult;
201
+ get sumsTemplate(): HTMLTemplateResult;
202
+ protected get toolbarTemplate(): HTMLTemplateResult;
203
+ protected get toolbarDefaultTemplate(): HTMLTemplateResult;
204
+ protected get toolbarActionDefaultTemplate(): HTMLTemplateResult;
205
+ protected get sumDefaultTemplate(): HTMLTemplateResult;
206
+ protected get toolbarActionsTemplate(): HTMLTemplateResult;
207
+ private lastScrollElementTop;
208
+ private handleScroll;
209
+ protected handlePointerDown(event: PointerEvent): void;
210
+ private getFlattenedData;
211
+ get dataRecords(): Array<DataRecord<TData>>;
212
+ get renderDataRecords(): DataRecord<TData>[];
213
+ protected get dataSkip(): number;
214
+ protected get dataTake(): number;
215
+ }
216
+ declare global {
217
+ interface HTMLElementTagNameMap {
218
+ 'mo-data-grid': DataGrid<unknown, undefined>;
219
+ }
220
+ }
221
+ //# sourceMappingURL=DataGrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataGrid.d.ts","sourceRoot":"","sources":["../DataGrid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,SAAS,EAA+B,KAAK,cAAc,EAAqC,KAAK,kBAAkB,EAAwD,MAAM,WAAW,CAAA;AAE9N,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAGhE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAC1E,OAAO,EAAE,qCAAqC,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAC5I,OAAO,EAAE,yBAAyB,EAAE,KAAK,4BAA4B,EAAE,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAA;AACnI,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAC1E,OAAO,EAAgB,oBAAoB,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAA4C,KAAK,WAAW,EAA0B,6BAA6B,EAAE,MAAM,YAAY,CAAA;AAC1N,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAS5C,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,CAAA;AAEhD,oBAAY,mBAAmB;IAC9B,KAAK,UAAU;IACf,IAAI,SAAS;IACb,MAAM,WAAW;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,qBACa,QAAQ,CAAC,KAAK,EAAE,eAAe,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,CAAE,SAAQ,SAAS;IACtG,MAAM,CAAC,QAAQ,CAAC,SAAS,uBAAqD;IAC9E,MAAM,CAAC,QAAQ,CAAC,oBAAoB,uBAAiE;IACrG,MAAM,CAAC,QAAQ,CAAC,QAAQ,uBAAiF;IACzG,MAAM,CAAC,QAAQ,CAAC,wBAAwB,wBAA8D;IAE7F,QAAQ,CAAC,UAAU,EAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IACnD,QAAQ,CAAC,eAAe,EAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IACxD,QAAQ,CAAC,UAAU,EAAG,eAAe,CAAC,MAAM,CAAC,CAAA;IAC7C,QAAQ,CAAC,gBAAgB,EAAG,eAAe,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAA;IAC3E,QAAQ,CAAC,aAAa,EAAG,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACtE,QAAQ,CAAC,aAAa,EAAG,eAAe,CAAC,oBAAoB,CAAC,CAAA;IAC9D,QAAQ,CAAC,cAAc,EAAG,eAAe,CAAA;IACzC,QAAQ,CAAC,aAAa,EAAG,eAAe,CAAC,KAAK,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACpF,QAAQ,CAAC,cAAc,EAAG,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAA;IAC9E,QAAQ,CAAC,eAAe,EAAG,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAA;IAC/E,QAAQ,CAAC,QAAQ,EAAG,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAA;IACxE,QAAQ,CAAC,cAAc,EAAG,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAA;IAC9E,QAAQ,CAAC,cAAc,EAAG,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAA;IAC9E,QAAQ,CAAC,QAAQ,EAAG,eAAe,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAA;IAE5D,IAAI,UAAqB;IACzB,OAAO,mCAAqC;IAE3B,YAAY,UAAQ;IACpB,4BAA4B,UAAQ;IACpD,IAAI,SAAI;IACmJ,UAAU,CAAC,EAAE,kBAAkB,CAAA;IAE1L,OAAO,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,CAAA;IAE/B,aAAa,wBAA6B;IAC3C,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAA;IAClB,YAAY,UAAqB;IACzD,aAAa,UAAQ;IACrB,yBAAyB,UAAQ;IAClD,6BAA6B,wCAA8C;IAE3D,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,kBAAkB,CAAA;IAC1D,eAAe,UAAQ;IACxC,uBAAuB,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IAC1B,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAA;IACvC,cAAc,UAAQ;IAEvB,yBAAyB,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,kBAAkB,CAAA;IACrE,mCAAmC,UAAQ;IAE3C,WAAW,sBAA4B;IAExD,YAAY,EAAE,oBAAoB,GAAG,SAAS,CAAA;IAC7B,eAAe,UAAQ;IACvB,wBAAwB,UAA0C;IAElE,kBAAkB,UAAQ;IACX,SAAS,CAAC,gBAAgB,UAAQ;IAEjD,UAAU,UAAQ;IAQ5C,YAAY,SAAsC;IAQlD,SAAS,SAA2B;IAET,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAuB;IACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAU;IAC1B,QAAQ,CAAC,IAAI,EAAG,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAA;IAC5D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAuB;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAA0B;IAEvF,OAAO,CAAC,IAAI,EAAE,MAAM;IAKpB,aAAa,CAAC,UAAU,CAAC,EAAE,kBAAkB;IAK7C,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,iBAAiB,wCAAqC;IAMlF,IAAI,YAAY,YAEf;IAED,SAAS,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC;IAI9E,WAAW,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC;IAIlF,MAAM,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC;IAIxE,YAAY,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC;IAIpF,IAAI,UAAU,YAEb;IAED,IAAI,iBAAiB,YAEpB;IAED,cAAc,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;IAI/E,eAAe,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;IAIjF,gBAAgB,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;IAInF,UAAU,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,SAAS,CAAC,GAAG,CAAC;IAIpF,IAAI,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;IAIjE,MAAM,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;IAIrE,UAAU,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;IAI9E,cAAc,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC;IAItF,IAAI,cAAc,qCAEjB;IAED,MAAM,CAAC,IAAI,EAAE,KAAK;IAIlB,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC;IAK3D,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS;IAU1H,sBAAsB,CAAC,GAAG,CAAC,EAAE,oBAAoB;IAKjD,eAAe;IAUf,IAAI,cAAc,YAEjB;IAED,IAAI,eAAe,cAElB;IAED,IAAI,cAAc,cAEjB;IAED,IAAI,UAAU,YAEb;IAED,IAAI,UAAU,YAEb;IAED,IAAI,OAAO,YAIV;IAED,IAAI,OAAO,YAIV;IAED,IAAI,aAAa,YAEhB;IAED,IAAI,uBAAuB,YAE1B;IAED,IAAI,QAAQ,WAgBX;IAED,IAAI,SAAS,YAIZ;IAED,IAAI,UAAU,WAEb;IAED,IAAI,OAAO,WAEV;IAED,IAAI,WAAW,YAEd;IAED,SAAS,CAAC,QAAQ,CAAC,cAAc,iBAK/B;IAEF,SAAS,CAAC,QAAQ,CAAC,6BAA6B,gCAA0C;IAC1F,SAAS,CAAC,QAAQ,CAAC,6BAA6B,uBAAuD;IACvG,SAAS,CAAC,QAAQ,CAAC,eAAe,kBAA4B;IAE9D,QAAQ,CAAC,iBAAiB,mCAAsC;IAChE,QAAQ,CAAC,mBAAmB,qCAAwC;IACpE,QAAQ,CAAC,iBAAiB,mCAAsC;IAChE,QAAQ,CAAC,qBAAqB,uCAA0C;IACxE,QAAQ,CAAC,iBAAiB,mCAAsC;IAEhE,QAAQ,CAAC,uBAAuB,CAAC,EAAE,oBAAoB,CAAA;cAEpC,OAAO,CAAC,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAqB1E,OAAO,CAAC,+BAA+B;cAMpB,YAAY,CAAC,KAAK,EAAE,cAAc;IAMrD,WAAoB,MAAM,kCAkIzB;IAED,cAAuB,QAAQ,uBAM9B;IAED,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAEvC;IAED,OAAO,KAAK,oBAAoB,GAc/B;IAED,OAAO,KAAK,mBAAmB,GAO9B;IAED,OAAO,KAAK,iBAAiB,GAU5B;IAED,SAAS,KAAK,uBAAuB,uBAEpC;IAED,SAAS,KAAK,sBAAsB,uBAEnC;IAED,SAAS,KAAK,eAAe,uBAE5B;IAED,SAAS,KAAK,aAAa,6CAE1B;IAED,SAAS,KAAK,WAAW,uBAOxB;IAED,SAAS,KAAK,eAAe,uBAE5B;IAED,SAAS,KAAK,iBAAiB,uBAM9B;IAED,SAAS,KAAK,gBAAgB,uBAgB7B;IAED,SAAS,KAAK,cAAc,uBAI3B;IAED,OAAO,KAAK,YAAY,GAMvB;IAED,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,SAAI;IASvD,SAAS,KAAK,cAAc,uBAa3B;IAED,IAAI,YAAY,IAAI,kBAAkB,CAIrC;IAED,SAAS,KAAK,eAAe,uBAY5B;IAED,SAAS,KAAK,sBAAsB,uBAEnC;IAED,SAAS,KAAK,4BAA4B,uBAEzC;IAED,SAAS,KAAK,kBAAkB,uBAE/B;IAED,SAAS,KAAK,sBAAsB,uBAgBnC;IAGD,OAAO,CAAC,oBAAoB,CAAI;IAEhC,OAAO,CAAC,YAAY;IAkBpB,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,YAAY;IAI/C,OAAO,CAAE,gBAAgB;IA+BzB,IAAI,WAAW,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAO1C;IAED,IAAI,iBAAiB,wBAUpB;IAED,SAAS,KAAK,QAAQ,WAErB;IAED,SAAS,KAAK,QAAQ,WAErB;CACD;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,cAAc,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;KAC5C;CACD"}