@dhtmlx/vault 5.0.6

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 (175) hide show
  1. package/README.md +251 -0
  2. package/codebase/fonts/roboto-bold-webfont.woff +0 -0
  3. package/codebase/fonts/roboto-bold-webfont.woff2 +0 -0
  4. package/codebase/fonts/roboto-medium-webfont.woff +0 -0
  5. package/codebase/fonts/roboto-medium-webfont.woff2 +0 -0
  6. package/codebase/fonts/roboto-regular-webfont.woff +0 -0
  7. package/codebase/fonts/roboto-regular-webfont.woff2 +0 -0
  8. package/codebase/types/ts-calendar/index.d.ts +2 -0
  9. package/codebase/types/ts-calendar/sources/Calendar.d.ts +37 -0
  10. package/codebase/types/ts-calendar/sources/helper.d.ts +1 -0
  11. package/codebase/types/ts-calendar/sources/types.d.ts +64 -0
  12. package/codebase/types/ts-combobox/index.d.ts +3 -0
  13. package/codebase/types/ts-combobox/sources/Combobox.d.ts +53 -0
  14. package/codebase/types/ts-combobox/sources/ProCombobox.d.ts +6 -0
  15. package/codebase/types/ts-combobox/sources/helper.d.ts +4 -0
  16. package/codebase/types/ts-combobox/sources/keyListener.d.ts +14 -0
  17. package/codebase/types/ts-combobox/sources/locales/en.d.ts +8 -0
  18. package/codebase/types/ts-combobox/sources/types.d.ts +95 -0
  19. package/codebase/types/ts-common/FocusManager.d.ts +15 -0
  20. package/codebase/types/ts-common/KeyManager.d.ts +19 -0
  21. package/codebase/types/ts-common/ScrollView.d.ts +40 -0
  22. package/codebase/types/ts-common/core.d.ts +40 -0
  23. package/codebase/types/ts-common/date.d.ts +34 -0
  24. package/codebase/types/ts-common/dom.d.ts +24 -0
  25. package/codebase/types/ts-common/events.d.ts +35 -0
  26. package/codebase/types/ts-common/html.d.ts +74 -0
  27. package/codebase/types/ts-common/input.d.ts +24 -0
  28. package/codebase/types/ts-common/keycodes.d.ts +9 -0
  29. package/codebase/types/ts-common/locale.d.ts +1 -0
  30. package/codebase/types/ts-common/polyfills/array.d.ts +0 -0
  31. package/codebase/types/ts-common/polyfills/element.d.ts +0 -0
  32. package/codebase/types/ts-common/polyfills/fetch.d.ts +0 -0
  33. package/codebase/types/ts-common/polyfills/math.d.ts +0 -0
  34. package/codebase/types/ts-common/polyfills/object.d.ts +0 -0
  35. package/codebase/types/ts-common/polyfills/string.d.ts +0 -0
  36. package/codebase/types/ts-common/types.d.ts +76 -0
  37. package/codebase/types/ts-common/view.d.ts +27 -0
  38. package/codebase/types/ts-data/index.d.ts +13 -0
  39. package/codebase/types/ts-data/sources/CollectionStore.d.ts +7 -0
  40. package/codebase/types/ts-data/sources/DragManager.d.ts +19 -0
  41. package/codebase/types/ts-data/sources/ajax.d.ts +2 -0
  42. package/codebase/types/ts-data/sources/datacollection/group.d.ts +43 -0
  43. package/codebase/types/ts-data/sources/datacollection/loader.d.ts +16 -0
  44. package/codebase/types/ts-data/sources/datacollection/sort.d.ts +7 -0
  45. package/codebase/types/ts-data/sources/datacollection.d.ts +101 -0
  46. package/codebase/types/ts-data/sources/dataproxy.d.ts +10 -0
  47. package/codebase/types/ts-data/sources/drivers/CsvDriver.d.ts +16 -0
  48. package/codebase/types/ts-data/sources/drivers/JsonDriver.d.ts +10 -0
  49. package/codebase/types/ts-data/sources/drivers/XMLDriver.d.ts +18 -0
  50. package/codebase/types/ts-data/sources/drivers/drivers.d.ts +12 -0
  51. package/codebase/types/ts-data/sources/helpers.d.ts +17 -0
  52. package/codebase/types/ts-data/sources/lazydataproxy.d.ts +9 -0
  53. package/codebase/types/ts-data/sources/methods.d.ts +11 -0
  54. package/codebase/types/ts-data/sources/selection.d.ts +17 -0
  55. package/codebase/types/ts-data/sources/serializers/xml.d.ts +2 -0
  56. package/codebase/types/ts-data/sources/treecollection.d.ts +72 -0
  57. package/codebase/types/ts-data/sources/types.d.ts +340 -0
  58. package/codebase/types/ts-dataview/index.d.ts +3 -0
  59. package/codebase/types/ts-dataview/sources/DataView.d.ts +41 -0
  60. package/codebase/types/ts-dataview/sources/ProDataView.d.ts +11 -0
  61. package/codebase/types/ts-dataview/sources/editors/InputEditor.d.ts +16 -0
  62. package/codebase/types/ts-dataview/sources/editors/editors.d.ts +4 -0
  63. package/codebase/types/ts-dataview/sources/types.d.ts +63 -0
  64. package/codebase/types/ts-grid/index.d.ts +7 -0
  65. package/codebase/types/ts-grid/sources/ExtendedGrid.d.ts +47 -0
  66. package/codebase/types/ts-grid/sources/Grid.d.ts +114 -0
  67. package/codebase/types/ts-grid/sources/ProGrid.d.ts +67 -0
  68. package/codebase/types/ts-grid/sources/helpers/cells.d.ts +9 -0
  69. package/codebase/types/ts-grid/sources/helpers/data.d.ts +36 -0
  70. package/codebase/types/ts-grid/sources/helpers/default.d.ts +6 -0
  71. package/codebase/types/ts-grid/sources/helpers/dom.d.ts +3 -0
  72. package/codebase/types/ts-grid/sources/helpers/keys.d.ts +27 -0
  73. package/codebase/types/ts-grid/sources/helpers/main.d.ts +23 -0
  74. package/codebase/types/ts-grid/sources/locales/en.d.ts +7 -0
  75. package/codebase/types/ts-grid/sources/modules/BlockSelection.d.ts +122 -0
  76. package/codebase/types/ts-grid/sources/modules/Clipboard.d.ts +55 -0
  77. package/codebase/types/ts-grid/sources/modules/DropManager.d.ts +21 -0
  78. package/codebase/types/ts-grid/sources/modules/Exporter.d.ts +80 -0
  79. package/codebase/types/ts-grid/sources/modules/History.d.ts +72 -0
  80. package/codebase/types/ts-grid/sources/modules/Range.d.ts +71 -0
  81. package/codebase/types/ts-grid/sources/modules/Resizer.d.ts +2 -0
  82. package/codebase/types/ts-grid/sources/modules/Selection.d.ts +58 -0
  83. package/codebase/types/ts-grid/sources/types.d.ts +660 -0
  84. package/codebase/types/ts-grid/sources/ui/FixedCols.d.ts +3 -0
  85. package/codebase/types/ts-grid/sources/ui/FixedRows.d.ts +5 -0
  86. package/codebase/types/ts-grid/sources/ui/cells.d.ts +34 -0
  87. package/codebase/types/ts-grid/sources/ui/common.d.ts +8 -0
  88. package/codebase/types/ts-grid/sources/ui/components/dragPanel.d.ts +7 -0
  89. package/codebase/types/ts-grid/sources/ui/components/groupPanel.d.ts +13 -0
  90. package/codebase/types/ts-grid/sources/ui/components/subRow.d.ts +4 -0
  91. package/codebase/types/ts-grid/sources/ui/content/ComboFilter.d.ts +35 -0
  92. package/codebase/types/ts-grid/sources/ui/content/DateFilter.d.ts +42 -0
  93. package/codebase/types/ts-grid/sources/ui/content/InputFilter.d.ts +32 -0
  94. package/codebase/types/ts-grid/sources/ui/content/SelectFilter.d.ts +28 -0
  95. package/codebase/types/ts-grid/sources/ui/content.d.ts +55 -0
  96. package/codebase/types/ts-grid/sources/ui/editors/CheckboxEditor.d.ts +18 -0
  97. package/codebase/types/ts-grid/sources/ui/editors/ComboboxEditor.d.ts +18 -0
  98. package/codebase/types/ts-grid/sources/ui/editors/DateEditor.d.ts +37 -0
  99. package/codebase/types/ts-grid/sources/ui/editors/InputEditor.d.ts +22 -0
  100. package/codebase/types/ts-grid/sources/ui/editors/SelectEditor.d.ts +16 -0
  101. package/codebase/types/ts-grid/sources/ui/editors/TextAreaEditor.d.ts +27 -0
  102. package/codebase/types/ts-grid/sources/ui/editors/editors.d.ts +2 -0
  103. package/codebase/types/ts-grid/sources/ui/proContent.d.ts +37 -0
  104. package/codebase/types/ts-grid/sources/ui/render.d.ts +9 -0
  105. package/codebase/types/ts-layout/index.d.ts +3 -0
  106. package/codebase/types/ts-layout/sources/Cell.d.ts +60 -0
  107. package/codebase/types/ts-layout/sources/Layout.d.ts +29 -0
  108. package/codebase/types/ts-layout/sources/ProCell.d.ts +9 -0
  109. package/codebase/types/ts-layout/sources/ProLayout.d.ts +6 -0
  110. package/codebase/types/ts-layout/sources/helpers.d.ts +6 -0
  111. package/codebase/types/ts-layout/sources/types.d.ts +129 -0
  112. package/codebase/types/ts-list/index.d.ts +4 -0
  113. package/codebase/types/ts-list/sources/List.d.ts +56 -0
  114. package/codebase/types/ts-list/sources/ProList.d.ts +11 -0
  115. package/codebase/types/ts-list/sources/Selection.d.ts +24 -0
  116. package/codebase/types/ts-list/sources/editors/InputEditor.d.ts +16 -0
  117. package/codebase/types/ts-list/sources/editors/editors.d.ts +4 -0
  118. package/codebase/types/ts-list/sources/types.d.ts +98 -0
  119. package/codebase/types/ts-message/index.d.ts +5 -0
  120. package/codebase/types/ts-message/sources/alert.d.ts +2 -0
  121. package/codebase/types/ts-message/sources/common.d.ts +1 -0
  122. package/codebase/types/ts-message/sources/confirm.d.ts +2 -0
  123. package/codebase/types/ts-message/sources/locales/en.d.ts +5 -0
  124. package/codebase/types/ts-message/sources/message.d.ts +4 -0
  125. package/codebase/types/ts-message/sources/tooltip.d.ts +6 -0
  126. package/codebase/types/ts-message/sources/types.d.ts +79 -0
  127. package/codebase/types/ts-navbar/index.d.ts +3 -0
  128. package/codebase/types/ts-navbar/sources/Navbar.d.ts +61 -0
  129. package/codebase/types/ts-navbar/sources/elements/button.d.ts +1 -0
  130. package/codebase/types/ts-navbar/sources/elements/customHTMLButton.d.ts +1 -0
  131. package/codebase/types/ts-navbar/sources/elements/datePicker.d.ts +1 -0
  132. package/codebase/types/ts-navbar/sources/elements/helpers.d.ts +17 -0
  133. package/codebase/types/ts-navbar/sources/elements/imageButton.d.ts +1 -0
  134. package/codebase/types/ts-navbar/sources/elements/input.d.ts +1 -0
  135. package/codebase/types/ts-navbar/sources/elements/menuItem.d.ts +1 -0
  136. package/codebase/types/ts-navbar/sources/elements/navItem.d.ts +1 -0
  137. package/codebase/types/ts-navbar/sources/elements/separator.d.ts +1 -0
  138. package/codebase/types/ts-navbar/sources/elements/spacer.d.ts +1 -0
  139. package/codebase/types/ts-navbar/sources/elements/title.d.ts +1 -0
  140. package/codebase/types/ts-navbar/sources/itemfactory.d.ts +10 -0
  141. package/codebase/types/ts-navbar/sources/types.d.ts +210 -0
  142. package/codebase/types/ts-popup/index.d.ts +2 -0
  143. package/codebase/types/ts-popup/sources/Popup.d.ts +29 -0
  144. package/codebase/types/ts-popup/sources/types.d.ts +42 -0
  145. package/codebase/types/ts-slider/index.d.ts +2 -0
  146. package/codebase/types/ts-slider/sources/Slider.d.ts +55 -0
  147. package/codebase/types/ts-slider/sources/types.d.ts +60 -0
  148. package/codebase/types/ts-timepicker/index.d.ts +2 -0
  149. package/codebase/types/ts-timepicker/sources/Timepicker.d.ts +28 -0
  150. package/codebase/types/ts-timepicker/sources/helper.d.ts +4 -0
  151. package/codebase/types/ts-timepicker/sources/locales/en.d.ts +6 -0
  152. package/codebase/types/ts-timepicker/sources/types.d.ts +52 -0
  153. package/codebase/types/ts-toolbar/index.d.ts +2 -0
  154. package/codebase/types/ts-toolbar/sources/ProToolbar.d.ts +10 -0
  155. package/codebase/types/ts-toolbar/sources/Toolbar.d.ts +33 -0
  156. package/codebase/types/ts-treegrid/index.d.ts +3 -0
  157. package/codebase/types/ts-treegrid/sources/TreeGrid.d.ts +26 -0
  158. package/codebase/types/ts-treegrid/sources/TreeGridCollection.d.ts +21 -0
  159. package/codebase/types/ts-treegrid/sources/types.d.ts +17 -0
  160. package/codebase/types/ts-vault/sources/ProgressBar.d.ts +12 -0
  161. package/codebase/types/ts-vault/sources/ReadStackPreview.d.ts +11 -0
  162. package/codebase/types/ts-vault/sources/Uploader.d.ts +26 -0
  163. package/codebase/types/ts-vault/sources/Vault.d.ts +39 -0
  164. package/codebase/types/ts-vault/sources/configs.d.ts +2 -0
  165. package/codebase/types/ts-vault/sources/entry.d.ts +8 -0
  166. package/codebase/types/ts-vault/sources/helper.d.ts +31 -0
  167. package/codebase/types/ts-vault/sources/locales/en.d.ts +21 -0
  168. package/codebase/types/ts-vault/sources/types.d.ts +127 -0
  169. package/codebase/vault.d.ts +3 -0
  170. package/codebase/vault.min.css +1 -0
  171. package/codebase/vault.min.js +21 -0
  172. package/codebase/vault.min.js.map +1 -0
  173. package/license.md +360 -0
  174. package/package.json +14 -0
  175. package/whatsnew.txt +99 -0
@@ -0,0 +1,660 @@
1
+ import { IEventSystem } from "../../ts-common/events";
2
+ import { IKeyManager } from "../../ts-common/KeyManager";
3
+ import { IAlign } from "../../ts-common/html";
4
+ import { ITooltipConfig } from "../../ts-message";
5
+ import { IDataCollection, IDragConfig, IDataItem, IDragInfo, ISortMode, TSortDir } from "../../ts-data";
6
+ import { IHandlers, IPDFConfig, IPNGConfig, Id } from "../../ts-common/types";
7
+ import { ScrollView } from "../../ts-common/ScrollView";
8
+ import { ICalendarConfig } from "../../ts-calendar";
9
+ import { INumberMask, IPatternMask } from "../../ts-common/input";
10
+ import { IGroupOrder, TDisplayMode } from "../../ts-data/sources/datacollection/group";
11
+ import { IGroupItem } from "./ui/components/groupPanel";
12
+ import { ITreeGrid, ITreeGridConfig } from "../../ts-treegrid";
13
+ import { ISelection } from "./modules/Selection";
14
+ import { IProCell, IViewConstructor } from "../../ts-layout";
15
+ import { IRange, IRangeConfig } from "./modules/Range";
16
+ import { IBlockSelection, IBlockSelectionConfig } from "./modules/BlockSelection";
17
+ import { IClipboard, IClipboardConfig } from "./modules/Clipboard";
18
+ import { IHistory, IHistoryConfig } from "./modules/History";
19
+ import { IComboFilterConfig, IContentList, IHeaderFilter, IInputFilterConfig } from "./ui/content";
20
+ import { ExportType, ICsvExportConfig, IXlsxExportConfig } from "./modules/Exporter";
21
+ import { IDateFilterConfig, IProContentList, IProHeaderFilter } from "./ui/proContent";
22
+ export interface IGrid {
23
+ data: IDataCollection;
24
+ name: "grid" | string;
25
+ config: IGridConfig;
26
+ events: IEventSystem<GridEvents, IEventHandlersMap>;
27
+ selection: ISelection;
28
+ content: IContentList | IProContentList;
29
+ keyManager: IKeyManager;
30
+ export: any;
31
+ paint(): void;
32
+ destructor(): void;
33
+ setColumns(col: ICol[]): void;
34
+ addRowCss(rowId: Id, css: string): void;
35
+ removeRowCss(rowId: Id, css: string): void;
36
+ addCellCss(rowId: Id, colId: Id, css: string): void;
37
+ removeCellCss(rowId: Id, colId: Id, css: string): void;
38
+ getRootView(): any;
39
+ showColumn(colId: Id): void;
40
+ hideColumn(colId: Id): void;
41
+ isColumnHidden(colId: Id): boolean;
42
+ showRow(rowId: Id): void;
43
+ hideRow(rowId: Id): void;
44
+ isRowHidden(rowId: Id): boolean;
45
+ scroll(x?: number, y?: number): void;
46
+ scrollTo(rowId: Id, colId: Id): void;
47
+ getScrollState(): ICoords;
48
+ adjustColumnWidth(colId: Id, adjust?: IAdjustBy): void;
49
+ getCellRect(rowId: Id, colId?: Id): ICellRect;
50
+ getColumn(colId: Id): ICol;
51
+ addSpan(spanObj: ISpan): void;
52
+ getSpan(rowId: Id, colId: Id): ISpan;
53
+ removeSpan(rowId: Id, colId: Id): void;
54
+ editCell(rowId: Id, colId: Id, editorType?: EditorType): void;
55
+ editEnd(withoutSave?: boolean): void;
56
+ getHeaderFilter(colId: Id): IHeaderFilter | IProHeaderFilter;
57
+ getRootNode(): HTMLElement;
58
+ getSummary(colId?: Id): ISummaryList;
59
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/suite/migration/ */
60
+ getSortingState(): {
61
+ dir?: TSortDir;
62
+ by?: Id;
63
+ };
64
+ }
65
+ export interface IExtendedGrid extends IGrid {
66
+ name: "progrid" | string;
67
+ scrollView: ScrollView;
68
+ config: IExtendedGridConfig;
69
+ range: IRange;
70
+ block: IBlockSelection;
71
+ clipboard: IClipboard;
72
+ history: IHistory;
73
+ content: IProContentList;
74
+ getSubRow(id: Id): ISubViewCell | null;
75
+ expand(rowId: Id): void;
76
+ collapse(rowId: Id): void;
77
+ expandAll(): void;
78
+ collapseAll(): void;
79
+ getHeaderFilter(colId: Id): IProHeaderFilter;
80
+ }
81
+ export interface IProGrid extends ITreeGrid {
82
+ config: IProGridConfig;
83
+ }
84
+ export interface IGridConfig extends IDragConfig {
85
+ columns?: ICol[];
86
+ spans?: ISpan[];
87
+ data?: IRow[];
88
+ width?: number;
89
+ height?: number | "auto";
90
+ autoWidth?: boolean;
91
+ rowHeight?: number;
92
+ headerRowHeight?: number;
93
+ footerRowHeight?: number;
94
+ footerPosition?: IFooterPosition;
95
+ leftSplit?: number;
96
+ topSplit?: number;
97
+ rightSplit?: number;
98
+ bottomSplit?: number;
99
+ sortable?: boolean;
100
+ multiSort?: boolean;
101
+ editable?: boolean;
102
+ resizable?: boolean;
103
+ groupable?: boolean;
104
+ closable?: boolean;
105
+ css?: string;
106
+ rowCss?: (row: IRow) => string;
107
+ exportStyles?: boolean | string[];
108
+ selection?: ISelectionType;
109
+ multiselection?: boolean;
110
+ rangeSelection?: boolean | IRangeConfig;
111
+ blockSelection?: boolean | IBlockSelectionConfig;
112
+ clipboard?: boolean | IClipboardConfig;
113
+ history?: boolean | IHistoryConfig;
114
+ dragItem?: IDragType;
115
+ dragPanel?: boolean | IDragPanelConfig;
116
+ tooltip?: boolean | IGridTooltipConfig;
117
+ headerTooltip?: boolean | IGridTooltipConfig;
118
+ footerTooltip?: boolean | IGridTooltipConfig;
119
+ keyNavigation?: boolean;
120
+ autoEmptyRow?: boolean;
121
+ htmlEnable?: boolean;
122
+ adjust?: IAdjustBy;
123
+ eventHandlers?: {
124
+ [eventName: string]: {
125
+ [className: string]: (event: Event, item: ICellObj) => void;
126
+ };
127
+ };
128
+ summary?: ISummary;
129
+ hotkeys?: IHandlers;
130
+ rootParent?: Id;
131
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
132
+ groupTitleTemplate?: (groupName: string, groupItems: IDataItem[]) => string;
133
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
134
+ editing?: boolean;
135
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
136
+ headerSort?: boolean;
137
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
138
+ columnsAutoWidth?: boolean;
139
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
140
+ fitToContainer?: boolean;
141
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
142
+ splitAt?: number;
143
+ $width?: number;
144
+ $height?: number;
145
+ $headerHeight?: number;
146
+ $footerHeight?: number;
147
+ $headerHeightMap?: number[];
148
+ $footerHeightMap?: number[];
149
+ $totalWidth?: number;
150
+ $totalHeight?: number;
151
+ $positions?: IPositions;
152
+ $colspans?: boolean;
153
+ $footer?: boolean;
154
+ $editable?: {
155
+ row: any;
156
+ col: any;
157
+ isSpan: boolean;
158
+ editorType?: EditorType;
159
+ editor?: IEditor;
160
+ };
161
+ $resizing?: string | number;
162
+ $scrollBarWidth?: IScrollBarWidth;
163
+ $data?: any[];
164
+ $grouped?: IGroupItem[];
165
+ $subRowCells?: Map<Id, ISubRowCell>;
166
+ }
167
+ export type IProGridConfig = IExtendedGridConfig & ITreeGridConfig;
168
+ export interface IExtendedGridConfig extends IGridConfig {
169
+ subRowConfig?: ((row: IRow) => ISubRowConfig) | ISubRowConfig;
170
+ subRow?: (row: IRow) => string | IViewConstructor;
171
+ height?: number | "auto";
172
+ autoHeight?: boolean;
173
+ headerAutoHeight?: boolean;
174
+ footerAutoHeight?: boolean;
175
+ group?: boolean | IGroup;
176
+ dragItem?: IDragType;
177
+ dragPanel?: boolean | IDragPanelConfig;
178
+ multiSort?: boolean;
179
+ rangeSelection?: boolean | IRangeConfig;
180
+ blockSelection?: boolean | IBlockSelectionConfig;
181
+ clipboard?: boolean | IClipboardConfig;
182
+ history?: boolean | IHistoryConfig;
183
+ exportConfig?: TExportConfigFunction;
184
+ }
185
+ export interface IExportGridConfig extends Omit<IExtendedGridConfig, "exportConfig" | "columns" | "data" | "spans"> {
186
+ typeConfig?: IXlsxExportConfig | ICsvExportConfig | IPDFConfig | IPNGConfig;
187
+ columns?: (column: ICol, index: number, columns: ICol[], api: IGrid) => ICol | null;
188
+ data?: (row: IRow, index: number, columns: IRow[], api: IGrid) => IRow | null;
189
+ spans?: (span: ISpan, index: number, spans: ISpan[], api: IGrid) => ISpan | null;
190
+ }
191
+ export type TExportConfigFunction = (config: IExtendedGridConfig | ITreeGridConfig, exportType: ExportType) => IExportGridConfig;
192
+ export interface IRendererConfig extends Required<IProGridConfig> {
193
+ scroll?: IScrollState;
194
+ datacollection: any;
195
+ filteredColumns?: ICol[];
196
+ currentColumns?: ICol[];
197
+ currentRows?: IRow[];
198
+ currentSpans?: ISpan[];
199
+ fixedColumns?: IFixedColumns;
200
+ fixedRows?: IFixedRows;
201
+ firstColId?: Id;
202
+ headerHeight?: number;
203
+ footerHeight?: number;
204
+ events?: IEventSystem<GridEvents, IEventHandlersMap>;
205
+ selection: any;
206
+ dropManager: any;
207
+ blockSelection: any;
208
+ sort: ISortingStates;
209
+ filterLocation?: string;
210
+ content?: IContentList;
211
+ gridId?: string;
212
+ commonSummary: ISummaryList;
213
+ colSummary: {
214
+ [colId: string]: ISummaryList;
215
+ };
216
+ $renderFrom?: RenderFrom;
217
+ _events?: IEventSystem<GridSystemEvents>;
218
+ }
219
+ export declare enum GridEvents {
220
+ scroll = "scroll",
221
+ expand = "expand",
222
+ filterChange = "filterChange",
223
+ beforeFilter = "beforeFilter",
224
+ beforeResizeStart = "beforeResizeStart",
225
+ resize = "resize",
226
+ afterResizeEnd = "afterResizeEnd",
227
+ cellClick = "cellClick",
228
+ cellRightClick = "cellRightClick",
229
+ cellMouseOver = "cellMouseOver",
230
+ cellMouseDown = "cellMouseDown",
231
+ cellDblClick = "cellDblClick",
232
+ headerCellClick = "headerCellClick",
233
+ footerCellClick = "footerCellClick",
234
+ headerCellMouseOver = "headerCellMouseOver",
235
+ footerCellMouseOver = "footerCellMouseOver",
236
+ headerCellMouseDown = "headerCellMouseDown",
237
+ footerCellMouseDown = "footerCellMouseDown",
238
+ headerCellDblClick = "headerCellDblClick",
239
+ footerCellDblClick = "footerCellDblClick",
240
+ headerCellRightClick = "headerCellRightClick",
241
+ footerCellRightClick = "footerCellRightClick",
242
+ beforeEditStart = "beforeEditStart",
243
+ afterEditStart = "afterEditStart",
244
+ beforeEditEnd = "beforeEditEnd",
245
+ afterEditEnd = "afterEditEnd",
246
+ beforeKeyDown = "beforeKeyDown",
247
+ afterKeyDown = "afterKeyDown",
248
+ beforeColumnHide = "beforeColumnHide",
249
+ afterColumnHide = "afterColumnHide",
250
+ beforeColumnShow = "beforeColumnShow",
251
+ afterColumnShow = "afterColumnShow",
252
+ beforeRowHide = "beforeRowHide",
253
+ afterRowHide = "afterRowHide",
254
+ beforeRowShow = "beforeRowShow",
255
+ afterRowShow = "afterRowShow",
256
+ beforeCollapse = "beforeCollapse",
257
+ afterCollapse = "afterCollapse",
258
+ beforeExpand = "beforeExpand",
259
+ afterExpand = "afterExpand",
260
+ beforeRowDrag = "beforeRowDrag",
261
+ dragRowStart = "dragRowStart",
262
+ dragRowOut = "dragRowOut",
263
+ dragRowIn = "dragRowIn",
264
+ canRowDrop = "canRowDrop",
265
+ cancelRowDrop = "cancelRowDrop",
266
+ beforeRowDrop = "beforeRowDrop",
267
+ afterRowDrop = "afterRowDrop",
268
+ afterRowDrag = "afterRowDrag",
269
+ beforeColumnDrag = "beforeColumnDrag",
270
+ dragColumnStart = "dragColumnStart",
271
+ dragColumnOut = "dragColumnOut",
272
+ dragColumnIn = "dragColumnIn",
273
+ canColumnDrop = "canColumnDrop",
274
+ cancelColumnDrop = "cancelColumnDrop",
275
+ beforeColumnDrop = "beforeColumnDrop",
276
+ afterColumnDrop = "afterColumnDrop",
277
+ afterColumnDrag = "afterColumnDrag",
278
+ beforeRowResize = "beforeRowResize",
279
+ afterRowResize = "afterRowResize",
280
+ beforeSort = "beforeSort",
281
+ afterSort = "afterSort",
282
+ groupPanelItemClick = "groupPanelItemClick",
283
+ groupPanelItemMouseDown = "groupPanelItemMouseDown",
284
+ dragPanelItemClick = "dragPanelItemClick",
285
+ dragPanelItemMouseDown = "dragPanelItemMouseDown"
286
+ }
287
+ export interface IEventHandlersMap {
288
+ [key: string]: (...args: any[]) => any;
289
+ [GridEvents.scroll]: (scrollState: ICoords) => void;
290
+ [GridEvents.beforeSort]: (column: ICol, dir: TSortDir) => void | boolean;
291
+ [GridEvents.afterSort]: (column: ICol, dir: TSortDir) => void;
292
+ [GridEvents.filterChange]: (value: string | string[] | Date | Date[], colId: Id, content: TContentFilter, silent?: boolean) => void;
293
+ [GridEvents.beforeFilter]: (value: string | string[] | Date | Date[], colId: Id) => void | boolean;
294
+ [GridEvents.beforeResizeStart]: (column: ICol, event: MouseEvent) => boolean | void;
295
+ [GridEvents.resize]: (column: ICol, event: MouseEvent) => void;
296
+ [GridEvents.afterResizeEnd]: (column: ICol, event: MouseEvent) => void;
297
+ [GridEvents.cellClick]: (row: IRow, column: ICol, event: MouseEvent) => void;
298
+ [GridEvents.cellRightClick]: (row: IRow, column: ICol, event: MouseEvent) => void;
299
+ [GridEvents.cellMouseOver]: (row: IRow, column: ICol, event: MouseEvent) => void;
300
+ [GridEvents.cellMouseDown]: (row: IRow, column: ICol, event: MouseEvent & TouchEvent) => void;
301
+ [GridEvents.cellDblClick]: (row: IRow, column: ICol, event: MouseEvent) => void;
302
+ [GridEvents.headerCellClick]: (cell: IHeader, column: ICol, event: MouseEvent) => void;
303
+ [GridEvents.footerCellClick]: (cell: IFooter, column: ICol, event: MouseEvent) => void;
304
+ [GridEvents.headerCellMouseOver]: (cell: IHeader, column: ICol, event: MouseEvent) => void;
305
+ [GridEvents.footerCellMouseOver]: (cell: IFooter, column: ICol, event: MouseEvent) => void;
306
+ [GridEvents.headerCellMouseDown]: (cell: IHeader, column: ICol, event: MouseEvent & TouchEvent) => void;
307
+ [GridEvents.footerCellMouseDown]: (cell: IFooter, column: ICol, event: MouseEvent & TouchEvent) => void;
308
+ [GridEvents.headerCellDblClick]: (cell: IHeader, column: ICol, event: MouseEvent) => void;
309
+ [GridEvents.footerCellDblClick]: (cell: IFooter, column: ICol, event: MouseEvent) => void;
310
+ [GridEvents.headerCellRightClick]: (cell: IHeader, column: ICol, event: MouseEvent) => void;
311
+ [GridEvents.footerCellRightClick]: (cell: IFooter, column: ICol, event: MouseEvent) => void;
312
+ [GridEvents.beforeEditStart]: (row: IRow, col: ICol, editorType: EditorType) => boolean | void;
313
+ [GridEvents.afterEditStart]: (row: IRow, col: ICol, editorType: EditorType) => void;
314
+ [GridEvents.beforeEditEnd]: (value: string | number | boolean | Date, row: IRow, column: ICol) => boolean | void;
315
+ [GridEvents.afterEditEnd]: (value: string | number | boolean | Date, row: IRow, column: ICol) => void;
316
+ [GridEvents.beforeKeyDown]: (event: Event) => boolean | void;
317
+ [GridEvents.afterKeyDown]: (event: Event) => void;
318
+ [GridEvents.beforeColumnHide]: (column: ICol) => boolean | void;
319
+ [GridEvents.afterColumnHide]: (column: ICol) => void;
320
+ [GridEvents.beforeColumnShow]: (column: ICol) => boolean | void;
321
+ [GridEvents.afterColumnShow]: (column: ICol) => void;
322
+ [GridEvents.beforeRowHide]: (row: IRow) => boolean | void;
323
+ [GridEvents.afterRowHide]: (row: IRow) => void;
324
+ [GridEvents.beforeRowShow]: (row: IRow) => boolean | void;
325
+ [GridEvents.afterRowShow]: (row: IRow) => void;
326
+ [GridEvents.beforeCollapse]: (rowId: Id) => boolean | void;
327
+ [GridEvents.afterCollapse]: (rowId: Id) => void;
328
+ [GridEvents.beforeExpand]: (rowId: Id) => boolean | void;
329
+ [GridEvents.afterExpand]: (rowId: Id) => void;
330
+ [GridEvents.beforeRowDrag]: (data: IDragInfo, event: MouseEvent) => void | boolean;
331
+ [GridEvents.dragRowStart]: (data: IDragInfo, event: MouseEvent) => void;
332
+ [GridEvents.dragRowOut]: (data: IDragInfo, event: MouseEvent) => void;
333
+ [GridEvents.dragRowIn]: (data: IDragInfo, event: MouseEvent) => void;
334
+ [GridEvents.canRowDrop]: (data: IDragInfo, event: MouseEvent) => void;
335
+ [GridEvents.cancelRowDrop]: (data: IDragInfo, event: MouseEvent) => void;
336
+ [GridEvents.beforeRowDrop]: (data: IDragInfo, event: MouseEvent) => void | boolean;
337
+ [GridEvents.afterRowDrop]: (data: IDragInfo, event: MouseEvent) => void;
338
+ [GridEvents.afterRowDrag]: (data: IDragInfo, event: MouseEvent) => void;
339
+ [GridEvents.beforeColumnDrag]: (data: IDragInfo, event: MouseEvent) => void | boolean;
340
+ [GridEvents.dragColumnStart]: (data: IDragInfo, event: MouseEvent) => void;
341
+ [GridEvents.dragColumnOut]: (data: IDragInfo, event: MouseEvent) => void;
342
+ [GridEvents.dragColumnIn]: (data: IDragInfo, event: MouseEvent) => void;
343
+ [GridEvents.canColumnDrop]: (data: IDragInfo, event: MouseEvent) => void;
344
+ [GridEvents.cancelColumnDrop]: (data: IDragInfo, event: MouseEvent) => void;
345
+ [GridEvents.beforeColumnDrop]: (data: IDragInfo, event: MouseEvent) => void | boolean;
346
+ [GridEvents.afterColumnDrop]: (data: IDragInfo, event: MouseEvent) => void;
347
+ [GridEvents.afterColumnDrag]: (data: IDragInfo, event: MouseEvent) => void;
348
+ [GridEvents.beforeRowResize]: (row: IRow, event: Event, currentHeight: number) => boolean;
349
+ [GridEvents.afterRowResize]: (row: IRow, event: Event, currentHeight: number) => void;
350
+ [GridEvents.groupPanelItemClick]: (id: string, event: MouseEvent | TouchEvent) => void;
351
+ [GridEvents.groupPanelItemMouseDown]: (id: string, event: MouseEvent | TouchEvent) => void;
352
+ [GridEvents.dragPanelItemClick]: (id: string, event: MouseEvent | TouchEvent) => void;
353
+ [GridEvents.dragPanelItemMouseDown]: (id: string, event: MouseEvent | TouchEvent) => void;
354
+ [GridEvents.expand]: (rowId: Id) => void;
355
+ }
356
+ export declare enum GridSystemEvents {
357
+ cellTouchMove = "cellTouchMove",
358
+ cellTouchEnd = "cellTouchEnd",
359
+ headerCellTouchMove = "headerCellTouchMove",
360
+ headerCellTouchEnd = "headerCellTouchEnd",
361
+ groupPanelItemTouchMove = "groupPanelItemTouchMove",
362
+ groupPanelItemItemTouchEnd = "groupPanelItemItemTouchEnd"
363
+ }
364
+ export interface ISystemEventHandlersMap {
365
+ [key: string]: (...args: any[]) => any;
366
+ [GridSystemEvents.cellTouchMove]: (row: IRow, col: ICol, event: TouchEvent) => void;
367
+ [GridSystemEvents.cellTouchEnd]: (row: IRow, col: ICol, event: TouchEvent) => void;
368
+ [GridSystemEvents.headerCellTouchMove]: (cell: IHeader, col: ICol, event: TouchEvent) => void;
369
+ [GridSystemEvents.headerCellTouchEnd]: (cell: IHeader, col: ICol, event: TouchEvent) => void;
370
+ [GridSystemEvents.groupPanelItemTouchMove]: (id: string, event: TouchEvent) => void;
371
+ [GridSystemEvents.groupPanelItemItemTouchEnd]: (id: string, event: TouchEvent) => void;
372
+ }
373
+ export interface ICol {
374
+ id: Id;
375
+ type?: colType;
376
+ header?: IHeader[];
377
+ footer?: IFooter[];
378
+ width?: number;
379
+ minWidth?: number;
380
+ maxWidth?: number;
381
+ autoWidth?: boolean;
382
+ adjust?: IAdjustBy;
383
+ align?: IAlign;
384
+ mark?: IMark | MarkFunction;
385
+ numberMask?: INumberMask | boolean;
386
+ patternMask?: IPatternMask | string;
387
+ template?: (cellValue: any, row: IRow, col: ICol) => string;
388
+ editorType?: EditorType;
389
+ editorConfig?: IComboEditorConfig | IDatePickerConfig | IInputEditorConfig;
390
+ options?: ((col: ICol, row?: IRow) => TOption[]) | TOption[];
391
+ editable?: boolean;
392
+ resizable?: boolean;
393
+ sortable?: boolean;
394
+ draggable?: boolean;
395
+ groupable?: boolean;
396
+ closable?: boolean;
397
+ htmlEnable?: boolean;
398
+ hidden?: boolean;
399
+ tooltip?: boolean | IGridTooltipConfig;
400
+ tooltipTemplate?: (cellValue: any, row: IRow, col: ICol) => string;
401
+ dateFormat?: string;
402
+ summary?: TSummary;
403
+ gravity?: number;
404
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
405
+ format?: string;
406
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
407
+ editing?: boolean;
408
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
409
+ headerSort?: boolean;
410
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
411
+ columnsAutoWidth?: boolean;
412
+ /** @deprecated See a documentation: https://docs.dhtmlx.com/suite/migration/ */
413
+ fitToContainer?: boolean;
414
+ $cellCss?: {
415
+ [key: string]: string;
416
+ };
417
+ $uniqueData?: any[];
418
+ $activeFilterData?: any[];
419
+ $width?: number;
420
+ $fixedWidth?: boolean;
421
+ $customOptions?: any;
422
+ }
423
+ export interface IRow {
424
+ id?: Id;
425
+ height?: number;
426
+ hidden?: boolean;
427
+ [key: string]: any;
428
+ $index?: number;
429
+ $height?: number;
430
+ $opened?: boolean;
431
+ $subRowHeight?: number;
432
+ $draggable?: boolean;
433
+ }
434
+ export interface ISpan {
435
+ row: Id;
436
+ column: Id;
437
+ rowspan?: number;
438
+ colspan?: number;
439
+ text?: string | ((args: ISummaryList) => string);
440
+ css?: string;
441
+ tooltip?: boolean | IGridTooltipConfig;
442
+ tooltipTemplate?: (content: {
443
+ value: string;
444
+ } & ISummaryList, span: ISpan) => string | boolean;
445
+ $rowsVisibility?: number[];
446
+ $colsVisibility?: number[];
447
+ $renderFrom?: RenderFrom[];
448
+ }
449
+ export interface IContent {
450
+ id?: string;
451
+ text?: string | ((args: ISummaryList) => string);
452
+ colspan?: number;
453
+ rowspan?: number;
454
+ css?: string;
455
+ align?: IAlign;
456
+ tooltip?: boolean | IGridTooltipConfig;
457
+ htmlEnable?: boolean;
458
+ }
459
+ export type TContentFilter = "inputFilter" | "selectFilter" | "comboFilter" | "dateFilter";
460
+ export interface IHeader extends IContent {
461
+ content?: TContentFilter;
462
+ filterConfig?: IComboFilterConfig | IInputFilterConfig | IDateFilterConfig;
463
+ customFilter?: (item: string | number | Date | Date[], match: string | string[] | Date | Date[]) => boolean;
464
+ headerSort?: boolean;
465
+ sortAs?: SortFunction;
466
+ tooltipTemplate?: (content: {
467
+ value: string;
468
+ } & ISummaryList, header: IHeader, column: ICol) => string | boolean;
469
+ }
470
+ export interface IFooter extends IContent {
471
+ tooltipTemplate?: (content: {
472
+ value: string;
473
+ } & ISummaryList, header: IFooter, column: ICol) => string | boolean;
474
+ }
475
+ export interface ISubViewCell extends ISubRowConfig {
476
+ view: string | any;
477
+ element: HTMLElement | null;
478
+ }
479
+ export interface ISubRowCell extends ISubRowConfig {
480
+ cell?: IProCell;
481
+ }
482
+ export interface ISubRowConfig {
483
+ expanded?: boolean;
484
+ preserve?: boolean;
485
+ toggleIcon?: boolean;
486
+ height?: number;
487
+ padding?: number | string;
488
+ fullWidth?: boolean;
489
+ css?: string;
490
+ }
491
+ export interface ISummaryList {
492
+ [key: string]: string | number | null;
493
+ }
494
+ export type TSummaryMethod = (row: IRow[]) => string | number;
495
+ export interface ISummary {
496
+ [key: string]: string | [string, string] | TSummaryMethod;
497
+ }
498
+ export type TSummary = ISummary | string;
499
+ export type TGroupType = TDisplayMode;
500
+ export type IGroupOrderItem = string | IGroupOrder | ((row: IRow) => string);
501
+ export interface IGroup {
502
+ type?: TGroupType;
503
+ panel?: boolean;
504
+ panelHeight: number;
505
+ hideableColumns?: boolean;
506
+ showMissed?: boolean | string;
507
+ fields?: {
508
+ [colId: string]: Omit<IGroupOrder, "by">;
509
+ };
510
+ order?: IGroupOrderItem[];
511
+ column?: string | ICol;
512
+ }
513
+ export type IGridTooltipConfig = Omit<ITooltipConfig, "node" | "htmlEnable">;
514
+ export interface IScrollBarWidth {
515
+ x: number;
516
+ y: number;
517
+ xState: boolean;
518
+ yState: boolean;
519
+ }
520
+ export interface IDragPanelConfig {
521
+ css?: string;
522
+ icon?: string;
523
+ width?: number;
524
+ }
525
+ interface ICellObj {
526
+ col: ICol;
527
+ row: IRow;
528
+ }
529
+ export interface IColumnsWidth {
530
+ [col: string]: number;
531
+ }
532
+ export interface IScrollState {
533
+ left: number;
534
+ top: number;
535
+ }
536
+ export interface IVisibleRange {
537
+ xStart: number;
538
+ xEnd: number;
539
+ yStart: number;
540
+ yEnd: number;
541
+ }
542
+ interface IFixedColumns {
543
+ left: ICol[];
544
+ right: ICol[];
545
+ }
546
+ interface IFixedRows {
547
+ top: IRow[];
548
+ bottom: IRow[];
549
+ }
550
+ type RenderFrom = "leftFixedCols" | "rightFixedCols" | "topFixedRows" | "bottomFixedRows" | "render";
551
+ export type EditorType = "input" | "select" | "datePicker" | "checkbox" | "combobox" | "multiselect" | "textarea";
552
+ export interface ISort extends Omit<ISortMode, "as" | "rule"> {
553
+ permanent?: boolean;
554
+ }
555
+ export type ISortingStates = ISort[];
556
+ export interface IComboEditorConfig {
557
+ newOptions?: boolean;
558
+ readOnly?: boolean;
559
+ selectAllButton?: boolean;
560
+ placeholder?: string;
561
+ itemHeight?: number | string;
562
+ listHeight?: number | string;
563
+ css?: string;
564
+ template?: (item: {
565
+ id: Id;
566
+ value: string;
567
+ }) => string;
568
+ }
569
+ export interface IInputEditorConfig {
570
+ min?: number;
571
+ max?: number;
572
+ }
573
+ export interface IDatePickerConfig extends ICalendarConfig {
574
+ asDateObject?: boolean;
575
+ }
576
+ export interface IBaseHandlersMap {
577
+ [key: string]: (...args: any[]) => any;
578
+ }
579
+ export interface ICellRect extends ICoords, ISizes {
580
+ }
581
+ export type colType = "string" | "number" | "boolean" | "date";
582
+ export interface IOption {
583
+ id: Id;
584
+ value: string;
585
+ }
586
+ export type TOption = IOption | string;
587
+ export type SortFunction = (cellValue: any) => string | number;
588
+ type MarkFunction = (cell: any, columnCells: any[], row: IRow, column: ICol) => string;
589
+ export interface IMark {
590
+ min?: string;
591
+ max?: string;
592
+ }
593
+ export interface IPositions {
594
+ xStart: number;
595
+ xEnd: number;
596
+ yStart: number;
597
+ yEnd: number;
598
+ }
599
+ export interface ICellCss {
600
+ color?: string;
601
+ background?: string;
602
+ fontSize?: number;
603
+ bold?: boolean;
604
+ }
605
+ export interface ILayoutState {
606
+ wrapper: ISizes;
607
+ shifts: ICoords;
608
+ sticky: boolean;
609
+ gridBodyHeight: number;
610
+ footerAtBottom: boolean;
611
+ }
612
+ export interface IFixedRowsConfig extends ILayoutState {
613
+ name: "header" | "footer";
614
+ position: "top" | "bottom";
615
+ }
616
+ export interface ICoords {
617
+ x: number;
618
+ y: number;
619
+ }
620
+ export interface ISizes {
621
+ width: number;
622
+ height: number;
623
+ }
624
+ export interface ICell {
625
+ row: IRow;
626
+ column: ICol;
627
+ }
628
+ export interface IEditor {
629
+ toHTML(text?: string): any;
630
+ endEdit(withoutSave?: boolean): void;
631
+ }
632
+ export type ISelectionType = "cell" | "row" | "complex";
633
+ export type IDirection = "horizontal" | "vertical" | "auto";
634
+ export type IDragType = "row" | "column" | "both";
635
+ export type AdjustTargetType = "data" | "header" | "footer";
636
+ export type IAdjustBy = AdjustTargetType | boolean;
637
+ export type IFooterPosition = "bottom" | "relative";
638
+ export interface IAdjustColumns {
639
+ rows: IRow[];
640
+ cols: ICol[];
641
+ totalCols?: ICol[];
642
+ adjust?: IAdjustBy;
643
+ }
644
+ export type TRowStatus = "firstFilledRow" | "firstEmptyRow";
645
+ export declare enum Split {
646
+ left = "leftSplit",
647
+ right = "rightSplit",
648
+ top = "topSplit",
649
+ bottom = "bottomSplit"
650
+ }
651
+ export interface INormalizeColumnsParams {
652
+ config: IGridConfig & IProGridConfig;
653
+ columns: ICol[];
654
+ configChanged?: boolean;
655
+ }
656
+ export interface IExportGridCell {
657
+ v: string | number;
658
+ s: number;
659
+ }
660
+ export {};
@@ -0,0 +1,3 @@
1
+ import { ILayoutState, IRendererConfig, Split } from "../types";
2
+ export declare function getFixedColsHeader(renderConfig: IRendererConfig, layout: ILayoutState, mode: Split.left | Split.right): any;
3
+ export declare function getFixedCols(renderConfig: IRendererConfig, layout: ILayoutState, mode: Split.left | Split.right, source?: Split.top | Split.bottom): any[];
@@ -0,0 +1,5 @@
1
+ import { IFixedRowsConfig, ILayoutState, IRendererConfig, Split } from "../types";
2
+ export declare function getRows(config: IRendererConfig, rowsConfig: IFixedRowsConfig): any[];
3
+ export declare function getFixedSpans(config: IRendererConfig, rowsConfig: IFixedRowsConfig, mode?: Split): any[];
4
+ export declare function getFixedRows(config: IRendererConfig, rowsConfig: IFixedRowsConfig, mode?: Split): any;
5
+ export declare function getFixedDataRows(config: IRendererConfig, layout: ILayoutState, mode: Split.top | Split.bottom): any[];