sheetgl 0.0.0-stage → 2.0.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.
Files changed (184) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +166 -2
  3. package/bin/cli.mjs +345 -0
  4. package/dist/lib/sheetgl.cjs +5 -0
  5. package/dist/lib/sheetgl.cjs.map +1 -0
  6. package/dist/lib/sheetgl.js +10316 -0
  7. package/dist/lib/sheetgl.js.map +1 -0
  8. package/dist/lib/types/columns/ColumnTypeRegistry.d.ts +9 -0
  9. package/dist/lib/types/columns/ColumnTypeRegistry.d.ts.map +1 -0
  10. package/dist/lib/types/columns/IColumnTypePlugin.d.ts +68 -0
  11. package/dist/lib/types/columns/IColumnTypePlugin.d.ts.map +1 -0
  12. package/dist/lib/types/columns/initPlugins.d.ts +2 -0
  13. package/dist/lib/types/columns/initPlugins.d.ts.map +1 -0
  14. package/dist/lib/types/columns/types/ActionColumn/ActionPainter.d.ts +3 -0
  15. package/dist/lib/types/columns/types/ActionColumn/ActionPainter.d.ts.map +1 -0
  16. package/dist/lib/types/columns/types/ActionColumn/index.d.ts +3 -0
  17. package/dist/lib/types/columns/types/ActionColumn/index.d.ts.map +1 -0
  18. package/dist/lib/types/columns/types/BooleanColumn/BooleanPainter.d.ts +3 -0
  19. package/dist/lib/types/columns/types/BooleanColumn/BooleanPainter.d.ts.map +1 -0
  20. package/dist/lib/types/columns/types/BooleanColumn/index.d.ts +3 -0
  21. package/dist/lib/types/columns/types/BooleanColumn/index.d.ts.map +1 -0
  22. package/dist/lib/types/columns/types/ColorColumn/ColorEditor.d.ts +4 -0
  23. package/dist/lib/types/columns/types/ColorColumn/ColorEditor.d.ts.map +1 -0
  24. package/dist/lib/types/columns/types/ColorColumn/index.d.ts +4 -0
  25. package/dist/lib/types/columns/types/ColorColumn/index.d.ts.map +1 -0
  26. package/dist/lib/types/columns/types/CurrencyColumn/CurrencyPainter.d.ts +3 -0
  27. package/dist/lib/types/columns/types/CurrencyColumn/CurrencyPainter.d.ts.map +1 -0
  28. package/dist/lib/types/columns/types/CurrencyColumn/index.d.ts +3 -0
  29. package/dist/lib/types/columns/types/CurrencyColumn/index.d.ts.map +1 -0
  30. package/dist/lib/types/columns/types/DateColumn/DateEditor.d.ts +4 -0
  31. package/dist/lib/types/columns/types/DateColumn/DateEditor.d.ts.map +1 -0
  32. package/dist/lib/types/columns/types/DateColumn/DatePainter.d.ts +3 -0
  33. package/dist/lib/types/columns/types/DateColumn/DatePainter.d.ts.map +1 -0
  34. package/dist/lib/types/columns/types/DateColumn/index.d.ts +3 -0
  35. package/dist/lib/types/columns/types/DateColumn/index.d.ts.map +1 -0
  36. package/dist/lib/types/columns/types/DateTimeColumn/DateTimeEditor.d.ts +4 -0
  37. package/dist/lib/types/columns/types/DateTimeColumn/DateTimeEditor.d.ts.map +1 -0
  38. package/dist/lib/types/columns/types/DateTimeColumn/DateTimePainter.d.ts +7 -0
  39. package/dist/lib/types/columns/types/DateTimeColumn/DateTimePainter.d.ts.map +1 -0
  40. package/dist/lib/types/columns/types/DateTimeColumn/index.d.ts +3 -0
  41. package/dist/lib/types/columns/types/DateTimeColumn/index.d.ts.map +1 -0
  42. package/dist/lib/types/columns/types/DropdownColumn/DropdownPainter.d.ts +3 -0
  43. package/dist/lib/types/columns/types/DropdownColumn/DropdownPainter.d.ts.map +1 -0
  44. package/dist/lib/types/columns/types/DropdownColumn/index.d.ts +3 -0
  45. package/dist/lib/types/columns/types/DropdownColumn/index.d.ts.map +1 -0
  46. package/dist/lib/types/columns/types/EmailColumn/index.d.ts +4 -0
  47. package/dist/lib/types/columns/types/EmailColumn/index.d.ts.map +1 -0
  48. package/dist/lib/types/columns/types/LookupColumn/LookupEditor.d.ts +4 -0
  49. package/dist/lib/types/columns/types/LookupColumn/LookupEditor.d.ts.map +1 -0
  50. package/dist/lib/types/columns/types/LookupColumn/LookupPainter.d.ts +3 -0
  51. package/dist/lib/types/columns/types/LookupColumn/LookupPainter.d.ts.map +1 -0
  52. package/dist/lib/types/columns/types/LookupColumn/index.d.ts +3 -0
  53. package/dist/lib/types/columns/types/LookupColumn/index.d.ts.map +1 -0
  54. package/dist/lib/types/columns/types/MultiSelectColumn/MultiSelectEditor.d.ts +4 -0
  55. package/dist/lib/types/columns/types/MultiSelectColumn/MultiSelectEditor.d.ts.map +1 -0
  56. package/dist/lib/types/columns/types/MultiSelectColumn/MultiSelectPainter.d.ts +4 -0
  57. package/dist/lib/types/columns/types/MultiSelectColumn/MultiSelectPainter.d.ts.map +1 -0
  58. package/dist/lib/types/columns/types/MultiSelectColumn/index.d.ts +3 -0
  59. package/dist/lib/types/columns/types/MultiSelectColumn/index.d.ts.map +1 -0
  60. package/dist/lib/types/columns/types/NumberColumn/NumberEditor.d.ts +4 -0
  61. package/dist/lib/types/columns/types/NumberColumn/NumberEditor.d.ts.map +1 -0
  62. package/dist/lib/types/columns/types/NumberColumn/NumberPainter.d.ts +3 -0
  63. package/dist/lib/types/columns/types/NumberColumn/NumberPainter.d.ts.map +1 -0
  64. package/dist/lib/types/columns/types/NumberColumn/index.d.ts +3 -0
  65. package/dist/lib/types/columns/types/NumberColumn/index.d.ts.map +1 -0
  66. package/dist/lib/types/columns/types/ObjectColumn/ObjectEditor.d.ts +4 -0
  67. package/dist/lib/types/columns/types/ObjectColumn/ObjectEditor.d.ts.map +1 -0
  68. package/dist/lib/types/columns/types/ObjectColumn/ObjectPainter.d.ts +5 -0
  69. package/dist/lib/types/columns/types/ObjectColumn/ObjectPainter.d.ts.map +1 -0
  70. package/dist/lib/types/columns/types/ObjectColumn/index.d.ts +3 -0
  71. package/dist/lib/types/columns/types/ObjectColumn/index.d.ts.map +1 -0
  72. package/dist/lib/types/columns/types/PercentColumn/index.d.ts +5 -0
  73. package/dist/lib/types/columns/types/PercentColumn/index.d.ts.map +1 -0
  74. package/dist/lib/types/columns/types/PhoneColumn/index.d.ts +4 -0
  75. package/dist/lib/types/columns/types/PhoneColumn/index.d.ts.map +1 -0
  76. package/dist/lib/types/columns/types/ProgressColumn/ProgressPainter.d.ts +3 -0
  77. package/dist/lib/types/columns/types/ProgressColumn/ProgressPainter.d.ts.map +1 -0
  78. package/dist/lib/types/columns/types/ProgressColumn/index.d.ts +3 -0
  79. package/dist/lib/types/columns/types/ProgressColumn/index.d.ts.map +1 -0
  80. package/dist/lib/types/columns/types/RatingColumn/RatingPainter.d.ts +3 -0
  81. package/dist/lib/types/columns/types/RatingColumn/RatingPainter.d.ts.map +1 -0
  82. package/dist/lib/types/columns/types/RatingColumn/index.d.ts +3 -0
  83. package/dist/lib/types/columns/types/RatingColumn/index.d.ts.map +1 -0
  84. package/dist/lib/types/columns/types/SelectColumn/SelectEditor.d.ts +4 -0
  85. package/dist/lib/types/columns/types/SelectColumn/SelectEditor.d.ts.map +1 -0
  86. package/dist/lib/types/columns/types/SelectColumn/SelectPainter.d.ts +3 -0
  87. package/dist/lib/types/columns/types/SelectColumn/SelectPainter.d.ts.map +1 -0
  88. package/dist/lib/types/columns/types/SelectColumn/index.d.ts +3 -0
  89. package/dist/lib/types/columns/types/SelectColumn/index.d.ts.map +1 -0
  90. package/dist/lib/types/columns/types/SparklineColumn/SparklinePainter.d.ts +3 -0
  91. package/dist/lib/types/columns/types/SparklineColumn/SparklinePainter.d.ts.map +1 -0
  92. package/dist/lib/types/columns/types/SparklineColumn/index.d.ts +3 -0
  93. package/dist/lib/types/columns/types/SparklineColumn/index.d.ts.map +1 -0
  94. package/dist/lib/types/columns/types/TextColumn/TextEditor.d.ts +4 -0
  95. package/dist/lib/types/columns/types/TextColumn/TextEditor.d.ts.map +1 -0
  96. package/dist/lib/types/columns/types/TextColumn/TextPainter.d.ts +3 -0
  97. package/dist/lib/types/columns/types/TextColumn/TextPainter.d.ts.map +1 -0
  98. package/dist/lib/types/columns/types/TextColumn/index.d.ts +3 -0
  99. package/dist/lib/types/columns/types/TextColumn/index.d.ts.map +1 -0
  100. package/dist/lib/types/columns/types/TimeColumn/TimeEditor.d.ts +4 -0
  101. package/dist/lib/types/columns/types/TimeColumn/TimeEditor.d.ts.map +1 -0
  102. package/dist/lib/types/columns/types/TimeColumn/TimePainter.d.ts +3 -0
  103. package/dist/lib/types/columns/types/TimeColumn/TimePainter.d.ts.map +1 -0
  104. package/dist/lib/types/columns/types/TimeColumn/index.d.ts +3 -0
  105. package/dist/lib/types/columns/types/TimeColumn/index.d.ts.map +1 -0
  106. package/dist/lib/types/columns/types/UrlColumn/index.d.ts +4 -0
  107. package/dist/lib/types/columns/types/UrlColumn/index.d.ts.map +1 -0
  108. package/dist/lib/types/core/FilterEngine.d.ts +16 -0
  109. package/dist/lib/types/core/FilterEngine.d.ts.map +1 -0
  110. package/dist/lib/types/core/GeometryEngine.d.ts +51 -0
  111. package/dist/lib/types/core/GeometryEngine.d.ts.map +1 -0
  112. package/dist/lib/types/core/GroupingEngine.d.ts +8 -0
  113. package/dist/lib/types/core/GroupingEngine.d.ts.map +1 -0
  114. package/dist/lib/types/core/HistoryManager.d.ts +18 -0
  115. package/dist/lib/types/core/HistoryManager.d.ts.map +1 -0
  116. package/dist/lib/types/core/SelectionModel.d.ts +17 -0
  117. package/dist/lib/types/core/SelectionModel.d.ts.map +1 -0
  118. package/dist/lib/types/core/SortEngine.d.ts +7 -0
  119. package/dist/lib/types/core/SortEngine.d.ts.map +1 -0
  120. package/dist/lib/types/core/ValidationEngine.d.ts +33 -0
  121. package/dist/lib/types/core/ValidationEngine.d.ts.map +1 -0
  122. package/dist/lib/types/data/BlockCache.d.ts +12 -0
  123. package/dist/lib/types/data/BlockCache.d.ts.map +1 -0
  124. package/dist/lib/types/data/LocalDataStore.d.ts +78 -0
  125. package/dist/lib/types/data/LocalDataStore.d.ts.map +1 -0
  126. package/dist/lib/types/data/RemoteDataStore.d.ts +45 -0
  127. package/dist/lib/types/data/RemoteDataStore.d.ts.map +1 -0
  128. package/dist/lib/types/i18n/IGridLocale.d.ts +25 -0
  129. package/dist/lib/types/i18n/IGridLocale.d.ts.map +1 -0
  130. package/dist/lib/types/i18n/LocaleEngine.d.ts +10 -0
  131. package/dist/lib/types/i18n/LocaleEngine.d.ts.map +1 -0
  132. package/dist/lib/types/i18n/locales/enUS.d.ts +3 -0
  133. package/dist/lib/types/i18n/locales/enUS.d.ts.map +1 -0
  134. package/dist/lib/types/i18n/locales/trTR.d.ts +3 -0
  135. package/dist/lib/types/i18n/locales/trTR.d.ts.map +1 -0
  136. package/dist/lib/types/index.d.ts +30 -0
  137. package/dist/lib/types/index.d.ts.map +1 -0
  138. package/dist/lib/types/overlays/ContextMenuOverlay.d.ts +44 -0
  139. package/dist/lib/types/overlays/ContextMenuOverlay.d.ts.map +1 -0
  140. package/dist/lib/types/overlays/DynamicCellEditor.d.ts +15 -0
  141. package/dist/lib/types/overlays/DynamicCellEditor.d.ts.map +1 -0
  142. package/dist/lib/types/overlays/HeaderFilterPopover.d.ts +31 -0
  143. package/dist/lib/types/overlays/HeaderFilterPopover.d.ts.map +1 -0
  144. package/dist/lib/types/overlays/SparklineModalOverlay.d.ts +18 -0
  145. package/dist/lib/types/overlays/SparklineModalOverlay.d.ts.map +1 -0
  146. package/dist/lib/types/renderer/CanvasRenderer.d.ts +41 -0
  147. package/dist/lib/types/renderer/CanvasRenderer.d.ts.map +1 -0
  148. package/dist/lib/types/renderer/GroupRowPainter.d.ts +10 -0
  149. package/dist/lib/types/renderer/GroupRowPainter.d.ts.map +1 -0
  150. package/dist/lib/types/renderer/SkeletonPainter.d.ts +5 -0
  151. package/dist/lib/types/renderer/SkeletonPainter.d.ts.map +1 -0
  152. package/dist/lib/types/theme/IGridTheme.d.ts +47 -0
  153. package/dist/lib/types/theme/IGridTheme.d.ts.map +1 -0
  154. package/dist/lib/types/theme/ThemeEngine.d.ts +10 -0
  155. package/dist/lib/types/theme/ThemeEngine.d.ts.map +1 -0
  156. package/dist/lib/types/theme/presets/appleDark.d.ts +3 -0
  157. package/dist/lib/types/theme/presets/appleDark.d.ts.map +1 -0
  158. package/dist/lib/types/theme/presets/appleLight.d.ts +3 -0
  159. package/dist/lib/types/theme/presets/appleLight.d.ts.map +1 -0
  160. package/dist/lib/types/theme/presets/googleDark.d.ts +3 -0
  161. package/dist/lib/types/theme/presets/googleDark.d.ts.map +1 -0
  162. package/dist/lib/types/theme/presets/googleLight.d.ts +3 -0
  163. package/dist/lib/types/theme/presets/googleLight.d.ts.map +1 -0
  164. package/dist/lib/types/types/filter.d.ts +26 -0
  165. package/dist/lib/types/types/filter.d.ts.map +1 -0
  166. package/dist/lib/types/types/grid.d.ts +332 -0
  167. package/dist/lib/types/types/grid.d.ts.map +1 -0
  168. package/dist/lib/types/types/group.d.ts +31 -0
  169. package/dist/lib/types/types/group.d.ts.map +1 -0
  170. package/dist/lib/types/types/store.d.ts +85 -0
  171. package/dist/lib/types/types/store.d.ts.map +1 -0
  172. package/dist/lib/types/ui/FormulaBar.d.ts +28 -0
  173. package/dist/lib/types/ui/FormulaBar.d.ts.map +1 -0
  174. package/dist/lib/types/ui/MaterialIcon.d.ts +28 -0
  175. package/dist/lib/types/ui/MaterialIcon.d.ts.map +1 -0
  176. package/dist/lib/types/ui/SheetGL.d.ts +48 -0
  177. package/dist/lib/types/ui/SheetGL.d.ts.map +1 -0
  178. package/dist/lib/types/ui/SheetGLLogo.d.ts +9 -0
  179. package/dist/lib/types/ui/SheetGLLogo.d.ts.map +1 -0
  180. package/dist/lib/types/ui/SummaryFooter.d.ts +27 -0
  181. package/dist/lib/types/ui/SummaryFooter.d.ts.map +1 -0
  182. package/dist/lib/types/ui/ToolBar.d.ts +44 -0
  183. package/dist/lib/types/ui/ToolBar.d.ts.map +1 -0
  184. package/package.json +76 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CanvasRenderer.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/renderer/CanvasRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIvD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,UAAU,CAAC;IAClB,SAAS,EAAE,cAAc,CAAC;IAC1B,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAClD,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpC,aAAa,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC1F,cAAc,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,qBAAa,cAAc;WACX,gBAAgB,CAAC,GAAG,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,eAAe,GAAG,OAAO;WAOxE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IA6WhD,OAAO,CAAC,MAAM,CAAC,UAAU;IA6GzB,OAAO,CAAC,MAAM,CAAC,aAAa;IAgG5B,OAAO,CAAC,MAAM,CAAC,kBAAkB;CA2HlC"}
@@ -0,0 +1,10 @@
1
+ import { VirtualRow } from '../types/group';
2
+ import { IGridThemeTokens } from '../theme/IGridTheme';
3
+ import { IGridLocale } from '../i18n/IGridLocale';
4
+ import { ColumnDef } from '../types/grid';
5
+ export declare class GroupRowPainter {
6
+ static paintGroupRow(ctx: CanvasRenderingContext2D, groupRow: Extract<VirtualRow, {
7
+ type: 'group';
8
+ }>, y: number, width: number, height: number, theme: IGridThemeTokens, locale: IGridLocale, columns?: ColumnDef[], isHovered?: boolean): void;
9
+ }
10
+ //# sourceMappingURL=GroupRowPainter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupRowPainter.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/renderer/GroupRowPainter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,qBAAa,eAAe;WACZ,aAAa,CACzB,GAAG,EAAE,wBAAwB,EAC7B,QAAQ,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,EAChD,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE,SAAS,EAAE,EACrB,SAAS,CAAC,EAAE,OAAO,GAClB,IAAI;CAmHR"}
@@ -0,0 +1,5 @@
1
+ import { IGridThemeTokens } from '../theme/IGridTheme';
2
+ export declare class SkeletonPainter {
3
+ static paintSkeletonCell(ctx: CanvasRenderingContext2D, x: number, y: number, width: number, height: number, theme: IGridThemeTokens): void;
4
+ }
5
+ //# sourceMappingURL=SkeletonPainter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkeletonPainter.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/renderer/SkeletonPainter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,qBAAa,eAAe;WACZ,iBAAiB,CAC7B,GAAG,EAAE,wBAAwB,EAC7B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,gBAAgB,GACtB,IAAI;CAaR"}
@@ -0,0 +1,47 @@
1
+ export interface IGridThemeTokens {
2
+ name: 'apple-light' | 'apple-dark' | 'google-light' | 'google-dark' | string;
3
+ isDark: boolean;
4
+ fontFamily: string;
5
+ fontSize: number;
6
+ headerFontSize: number;
7
+ fontFeatureSettings: string;
8
+ canvas: {
9
+ bg: string;
10
+ gridLine: string;
11
+ headerBg: string;
12
+ headerText: string;
13
+ headerBorder: string;
14
+ cellText: string;
15
+ rowNumberBg: string;
16
+ rowNumberText: string;
17
+ rowNumberBorder: string;
18
+ frozenDividerShadow: string;
19
+ groupRowBg: string;
20
+ groupRowText: string;
21
+ groupRowBorder: string;
22
+ selectionBorder: string;
23
+ selectionFill: string;
24
+ fillHandleColor: string;
25
+ searchHighlight: string;
26
+ skeletonBar: string;
27
+ };
28
+ dom: {
29
+ toolbarBg: string;
30
+ toolbarBorder: string;
31
+ toolbarText: string;
32
+ glassBackdrop: string;
33
+ popoverBg: string;
34
+ popoverBorder: string;
35
+ popoverShadow: string;
36
+ popoverText: string;
37
+ inputBg: string;
38
+ inputText: string;
39
+ inputBorder: string;
40
+ inputFocusBorder: string;
41
+ accentColor: string;
42
+ buttonHoverBg: string;
43
+ badgeBg: string;
44
+ badgeText: string;
45
+ };
46
+ }
47
+ //# sourceMappingURL=IGridTheme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IGridTheme.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/theme/IGridTheme.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,GAAG,MAAM,CAAC;IAC7E,MAAM,EAAE,OAAO,CAAC;IAGhB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAG5B,MAAM,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,EAAE,MAAM,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IAGF,GAAG,EAAE;QACH,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH"}
@@ -0,0 +1,10 @@
1
+ import { IGridThemeTokens } from './IGridTheme';
2
+ export type ThemeInput = 'system' | 'apple-light' | 'apple-dark' | 'google-light' | 'google-dark' | IGridThemeTokens;
3
+ export declare class ThemeEngine {
4
+ private static presets;
5
+ static registerPreset(name: string, tokens: IGridThemeTokens): void;
6
+ static resolve(themeInput?: ThemeInput): IGridThemeTokens;
7
+ static applyToElement(el: HTMLElement, theme: IGridThemeTokens): void;
8
+ static watchSystem(onChange: (isDark: boolean) => void): () => void;
9
+ }
10
+ //# sourceMappingURL=ThemeEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeEngine.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/theme/ThemeEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAMhD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,aAAa,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,GAAG,gBAAgB,CAAC;AAErH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,OAAO,CAKnB;WAEW,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI;WAI5D,OAAO,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,gBAAgB;WAkBlD,cAAc,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI;WAyB9D,WAAW,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;CAO3E"}
@@ -0,0 +1,3 @@
1
+ import { IGridThemeTokens } from '../IGridTheme';
2
+ export declare const appleDark: IGridThemeTokens;
3
+ //# sourceMappingURL=appleDark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appleDark.d.ts","sourceRoot":"","sources":["../../../../../src/datagrid/theme/presets/appleDark.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,eAAO,MAAM,SAAS,EAAE,gBA+CvB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IGridThemeTokens } from '../IGridTheme';
2
+ export declare const appleLight: IGridThemeTokens;
3
+ //# sourceMappingURL=appleLight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appleLight.d.ts","sourceRoot":"","sources":["../../../../../src/datagrid/theme/presets/appleLight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,eAAO,MAAM,UAAU,EAAE,gBA+CxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IGridThemeTokens } from '../IGridTheme';
2
+ export declare const googleDark: IGridThemeTokens;
3
+ //# sourceMappingURL=googleDark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googleDark.d.ts","sourceRoot":"","sources":["../../../../../src/datagrid/theme/presets/googleDark.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,eAAO,MAAM,UAAU,EAAE,gBA+CxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { IGridThemeTokens } from '../IGridTheme';
2
+ export declare const googleLight: IGridThemeTokens;
3
+ //# sourceMappingURL=googleLight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googleLight.d.ts","sourceRoot":"","sources":["../../../../../src/datagrid/theme/presets/googleLight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,eAAO,MAAM,WAAW,EAAE,gBA+CzB,CAAC"}
@@ -0,0 +1,26 @@
1
+ export type FilterOperation = 'contains' | 'notcontains' | 'startswith' | 'endswith' | '=' | '<>' | '<' | '<=' | '>' | '>=' | 'between' | 'in' | 'notin';
2
+ export type SingleFilter = [string, FilterOperation, any];
3
+ export type CompositeFilter = (SingleFilter | 'and' | 'or' | CompositeFilter)[];
4
+ export type FilterDescriptor = SingleFilter | CompositeFilter | any[];
5
+ export interface ColumnFilterState {
6
+ columnId: string;
7
+ mode: 'values' | 'condition';
8
+ selectedValues?: any[];
9
+ operator?: FilterOperation;
10
+ value1?: any;
11
+ value2?: any;
12
+ }
13
+ export interface SortDescriptor {
14
+ selector: string;
15
+ desc: boolean;
16
+ }
17
+ export interface DistinctItem {
18
+ value: any;
19
+ label: string;
20
+ count?: number;
21
+ }
22
+ export interface SearchDescriptor {
23
+ keyword: string;
24
+ columns?: string[];
25
+ }
26
+ //# sourceMappingURL=filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/types/filter.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GACvB,UAAU,GACV,aAAa,GACb,YAAY,GACZ,UAAU,GACV,GAAG,GACH,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,SAAS,GACT,IAAI,GACJ,OAAO,CAAC;AAEZ,MAAM,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;AAC1D,MAAM,MAAM,eAAe,GAAG,CAAC,YAAY,GAAG,KAAK,GAAG,IAAI,GAAG,eAAe,CAAC,EAAE,CAAC;AAChF,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,eAAe,GAAG,GAAG,EAAE,CAAC;AAEtE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC7B,cAAc,CAAC,EAAE,GAAG,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB"}
@@ -0,0 +1,332 @@
1
+ import { SummaryType } from './group';
2
+ import { BatchChanges, IDataStore } from './store';
3
+ export type ColumnId = string;
4
+ export type ColumnType = 'text' | 'number' | 'currency' | 'percent' | 'boolean' | 'select' | 'dropdown' | 'multiselect' | 'lookup' | 'object' | 'progress' | 'date' | 'datetime' | 'time' | 'email' | 'url' | 'phone' | 'color' | 'rating' | 'sparkline' | 'action' | (string & {});
5
+ export type ColumnPermission = 'write' | 'readonly' | 'read';
6
+ export interface SelectOption {
7
+ value: string;
8
+ label: string;
9
+ subtitle?: string;
10
+ icon?: string;
11
+ color?: string;
12
+ bgColor?: string;
13
+ bg?: string;
14
+ fg?: string;
15
+ darkBg?: string;
16
+ darkFg?: string;
17
+ }
18
+ export type ValidationRuleResult = boolean | string | void | {
19
+ valid: boolean;
20
+ message?: string;
21
+ };
22
+ /**
23
+ * DevExtreme-compatible Deferred object for asynchronous validation rules.
24
+ * Can be resolved with `true` (valid) or `false` (invalid, uses rule.message),
25
+ * or rejected with `reject("Custom error message")` / `reject()`.
26
+ */
27
+ export interface IDeferred<T = ValidationRuleResult> {
28
+ resolve: (result?: T) => void;
29
+ reject: (errorMessage?: string | {
30
+ valid?: boolean;
31
+ message?: string;
32
+ }) => void;
33
+ promise: () => Promise<ValidationRuleResult>;
34
+ }
35
+ export interface ValidationCallbackParams {
36
+ value: any;
37
+ data: Record<string, any>;
38
+ column: ColumnDef;
39
+ rule?: ValidationRule;
40
+ /**
41
+ * Built-in DevExtreme-style Deferred instance ready to use inside async validationCallback:
42
+ * `deferred.resolve(true)` / `deferred.resolve(false)` / `deferred.reject("Error")`
43
+ * and `return deferred.promise()` (or `return deferred`).
44
+ */
45
+ deferred: IDeferred<ValidationRuleResult>;
46
+ }
47
+ export type ValidationRule = {
48
+ type: 'required';
49
+ trim?: boolean;
50
+ message?: string;
51
+ } | {
52
+ type: 'range';
53
+ min?: number;
54
+ max?: number;
55
+ message?: string;
56
+ } | {
57
+ type: 'stringLength';
58
+ min?: number;
59
+ max?: number;
60
+ trim?: boolean;
61
+ message?: string;
62
+ } | {
63
+ type: 'pattern';
64
+ pattern: RegExp | string;
65
+ message?: string;
66
+ } | {
67
+ type: 'email';
68
+ ignoreEmptyValue?: boolean;
69
+ message?: string;
70
+ } | {
71
+ type: 'url';
72
+ ignoreEmptyValue?: boolean;
73
+ message?: string;
74
+ } | {
75
+ type: 'compare';
76
+ comparisonTarget: (row: Record<string, any>) => any;
77
+ comparisonType?: '==' | '!=' | '<' | '<=' | '>' | '>=';
78
+ message?: string;
79
+ } | {
80
+ type: 'custom';
81
+ validationCallback: (params: ValidationCallbackParams) => ValidationRuleResult;
82
+ message?: string;
83
+ } | {
84
+ type: 'async';
85
+ validationCallback: (params: ValidationCallbackParams) => Promise<ValidationRuleResult> | IDeferred<ValidationRuleResult> | ValidationRuleResult;
86
+ message?: string;
87
+ };
88
+ export interface CascadingUpdateContext {
89
+ rowKey: any;
90
+ columnId: string;
91
+ store: IDataStore;
92
+ }
93
+ export interface ColumnDef {
94
+ id: ColumnId;
95
+ title: string;
96
+ type: ColumnType;
97
+ width: number;
98
+ minWidth?: number;
99
+ maxWidth?: number;
100
+ pinned?: 'left' | 'right' | boolean;
101
+ readonly?: boolean;
102
+ permission?: ColumnPermission;
103
+ visible?: boolean;
104
+ align?: 'left' | 'center' | 'right';
105
+ sortable?: boolean;
106
+ filterable?: boolean;
107
+ groupable?: boolean;
108
+ currencySymbol?: string;
109
+ decimalDigits?: number;
110
+ showVarianceSign?: boolean;
111
+ objectDisplayKey?: string;
112
+ options?: SelectOption[];
113
+ sparklineColor?: string;
114
+ buttonText?: string;
115
+ onActionClick?: (row: any, rowIndex: number) => void;
116
+ headerTooltip?: string;
117
+ defaultValue?: any;
118
+ summaryType?: SummaryType;
119
+ /**
120
+ * Conditional permission callback per row/cell (cell-level allowEditing rule)
121
+ */
122
+ canEdit?: (row: any, column: ColumnDef) => boolean;
123
+ /**
124
+ * Declarative DevExtreme/AG-Grid style static & async validation rules
125
+ */
126
+ validationRules?: ValidationRule[];
127
+ /**
128
+ * Cell validation callback (supports both synchronous/static and async Promise validation)
129
+ */
130
+ validator?: (value: any, row: any, column: ColumnDef) => ValidationRuleResult | Promise<ValidationRuleResult>;
131
+ /**
132
+ * Enterprise setCellValue cascading hook (sync or async backend fetch).
133
+ * Can mutate `newData` or return a Promise resolving to a partial row patch fetched from backend.
134
+ */
135
+ setCellValue?: (newData: Record<string, any>, value: any, currentRowData: Record<string, any>, context: CascadingUpdateContext) => void | Record<string, any> | Promise<void | Record<string, any>>;
136
+ }
137
+ export interface GridPermissions {
138
+ mode?: 'write' | 'read' | 'readonly';
139
+ allowAdding?: boolean;
140
+ allowUpdating?: boolean;
141
+ allowDeleting?: boolean;
142
+ allowDuplicating?: boolean;
143
+ allowClipboardPaste?: boolean;
144
+ allowExport?: boolean;
145
+ allowFiltering?: boolean;
146
+ allowSorting?: boolean;
147
+ allowGrouping?: boolean;
148
+ allowBatchSave?: boolean;
149
+ }
150
+ export interface EditingStartEvent {
151
+ row: Record<string, any>;
152
+ rowKey: any;
153
+ rowIndex: number;
154
+ column: ColumnDef;
155
+ value: any;
156
+ cancel?: boolean;
157
+ }
158
+ export interface CellValueChangingEvent {
159
+ row: Record<string, any>;
160
+ rowKey: any;
161
+ rowIndex: number;
162
+ column: ColumnDef;
163
+ oldValue: any;
164
+ newValue: any;
165
+ cancel?: boolean;
166
+ errorMessage?: string;
167
+ }
168
+ export interface CellValueChangedEvent {
169
+ row: Record<string, any>;
170
+ rowKey: any;
171
+ rowIndex: number;
172
+ column: ColumnDef;
173
+ oldValue: any;
174
+ newValue: any;
175
+ updateRow: (patch: Record<string, any>) => void;
176
+ }
177
+ export interface RowInsertingEvent {
178
+ data: Record<string, any>;
179
+ targetRowIndex?: number;
180
+ cancel?: boolean;
181
+ }
182
+ export interface RowInsertedEvent {
183
+ data: Record<string, any>;
184
+ key: any;
185
+ }
186
+ export interface RowUpdatingEvent {
187
+ key: any;
188
+ oldData: Record<string, any>;
189
+ newData: Record<string, any>;
190
+ cancel?: boolean;
191
+ }
192
+ export interface RowUpdatedEvent {
193
+ key: any;
194
+ data: Record<string, any>;
195
+ }
196
+ export interface RowRemovingEvent {
197
+ key: any;
198
+ data: Record<string, any>;
199
+ cancel?: boolean;
200
+ }
201
+ export interface RowRemovedEvent {
202
+ key: any;
203
+ data: Record<string, any>;
204
+ }
205
+ export interface SavingEvent {
206
+ changes: BatchChanges;
207
+ cancel?: boolean;
208
+ }
209
+ export interface SavedEvent {
210
+ changes: BatchChanges;
211
+ }
212
+ export interface GridEventLogEntry {
213
+ id: string;
214
+ timestamp: string;
215
+ eventName: string;
216
+ summary: string;
217
+ payload?: any;
218
+ status?: 'info' | 'success' | 'warning' | 'async';
219
+ }
220
+ export interface CellCoords {
221
+ row: number;
222
+ col: number;
223
+ }
224
+ export interface CellRange {
225
+ startRow: number;
226
+ startCol: number;
227
+ endRow: number;
228
+ endCol: number;
229
+ }
230
+ export interface ActiveOverlayState {
231
+ row: number;
232
+ col: number;
233
+ x: number;
234
+ y: number;
235
+ width: number;
236
+ height: number;
237
+ column: ColumnDef;
238
+ initialValue: any;
239
+ initialChar?: string;
240
+ }
241
+ /**
242
+ * Toolbar button display mode:
243
+ * - 'icon': Only Google Material Symbols icon
244
+ * - 'icon-text': Google Material Symbols icon + text label
245
+ * - 'text': Only text label
246
+ */
247
+ export type ToolbarButtonDisplayMode = 'icon' | 'icon-text' | 'text';
248
+ export interface GridToolbarCustomItem {
249
+ id: string;
250
+ label: string;
251
+ /** Google Material Symbols icon name (from https://fonts.google.com/icons), e.g. 'refresh', 'print', 'upload_file' */
252
+ icon?: string;
253
+ tooltip?: string;
254
+ position?: 'left' | 'right';
255
+ /** Overrides the toolbar-level buttonDisplayMode for this item */
256
+ displayMode?: ToolbarButtonDisplayMode;
257
+ disabled?: boolean;
258
+ active?: boolean;
259
+ variant?: 'default' | 'primary' | 'danger' | 'success';
260
+ onClick: () => void;
261
+ }
262
+ export interface GridToolbarConfig {
263
+ /** Whether the toolbar is visible (default: true) */
264
+ visible?: boolean;
265
+ /**
266
+ * Controls how action buttons are rendered across the toolbar:
267
+ * - 'icon': Only Google Material Symbols icon
268
+ * - 'icon-text': Google Material Symbols icon + text label (default)
269
+ * - 'text': Only text label
270
+ */
271
+ buttonDisplayMode?: ToolbarButtonDisplayMode;
272
+ /** Allow switching buttonDisplayMode ('icon' | 'icon-text' | 'text') interactively in the toolbar UI (default: true) */
273
+ allowDisplayModeSwitch?: boolean;
274
+ /** Show SheetGL brand badge on the left (default: true) */
275
+ showBrand?: boolean;
276
+ /** Show Add Row button (default: true) */
277
+ showAddRow?: boolean;
278
+ /** Show Duplicate Row button (default: true) */
279
+ showDuplicateRow?: boolean;
280
+ /** Show Delete Row button (default: true) */
281
+ showDeleteRow?: boolean;
282
+ /** Show Undo / Redo buttons (default: true) */
283
+ showUndoRedo?: boolean;
284
+ /** Show global search input (default: true) */
285
+ showSearch?: boolean;
286
+ /** Show Group By selector (default: true) */
287
+ showGroupBy?: boolean;
288
+ /** Show Clear Active Filters button when filters exist (default: true) */
289
+ showClearFilters?: boolean;
290
+ /** Show Batch Save / Discard controls when there are unsaved changes (default: true) */
291
+ showBatchActions?: boolean;
292
+ /** Show Permission Mode switcher (default: true) */
293
+ showPermissionsSwitch?: boolean;
294
+ /** Show Column Settings & Summary configuration popover button (default: true) */
295
+ showColumnSettings?: boolean;
296
+ /** Show Locale (EN / TR) switcher (default: true) */
297
+ showLocaleSwitch?: boolean;
298
+ /** Show Theme preset switcher (default: true) */
299
+ showThemeSwitch?: boolean;
300
+ /** Show Export CSV button (default: true) */
301
+ showExportCsv?: boolean;
302
+ /** Custom toolbar action items with Google Material Symbols icon support */
303
+ customItems?: GridToolbarCustomItem[];
304
+ }
305
+ export type SelectionStatMetric = 'cells' | 'count' | 'numeric' | 'sum' | 'avg' | 'min' | 'max';
306
+ export interface GridSummaryItemConfig {
307
+ columnId: string;
308
+ summaryType: SummaryType;
309
+ label?: string;
310
+ prefix?: string;
311
+ suffix?: string;
312
+ decimalDigits?: number;
313
+ }
314
+ export interface GridSummaryConfig {
315
+ /** Whether the bottom Summary Row / Footer is visible (default: true) */
316
+ visible?: boolean;
317
+ /** Show total row count badge on the left (default: true) */
318
+ showTotalCount?: boolean;
319
+ /** Show live Excel range selection statistics in the center (default: true) */
320
+ showSelectionStats?: boolean;
321
+ /** Which selection metrics to display when multiple cells are selected */
322
+ selectionMetrics?: SelectionStatMetric[];
323
+ /** Show column aggregation summary pills on the right (default: true) */
324
+ showColumnSummaries?: boolean;
325
+ /** Allow user to interactively add/remove/change column summary aggregations in the UI (default: true) */
326
+ allowConfiguration?: boolean;
327
+ /** Map of columnId -> SummaryType ('sum' | 'avg' | 'min' | 'max' | 'count' | 'none') */
328
+ columnSummaryTypes?: Record<string, SummaryType>;
329
+ /** Declarative list of summary items (DevExtreme-style totalItems) */
330
+ items?: GridSummaryItemConfig[];
331
+ }
332
+ //# sourceMappingURL=grid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/types/grid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAEnD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,QAAQ,GACR,UAAU,GACV,SAAS,GACT,SAAS,GACT,QAAQ,GACR,UAAU,GACV,aAAa,GACb,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,MAAM,GACN,UAAU,GACV,MAAM,GACN,OAAO,GACP,KAAK,GACL,OAAO,GACP,OAAO,GACP,QAAQ,GACR,WAAW,GACX,QAAQ,GACR,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAE7D,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,oBAAoB,GAC5B,OAAO,GACP,MAAM,GACN,IAAI,GACJ;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzC;;;;GAIG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,oBAAoB;IACjD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;IAC9B,MAAM,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAChF,OAAO,EAAE,MAAM,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,GAAG,CAAC;IACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB;;;;OAIG;IACH,QAAQ,EAAE,SAAS,CAAC,oBAAoB,CAAC,CAAC;CAC3C;AAED,MAAM,MAAM,cAAc,GACtB;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,cAAc,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,KAAK,CAAC;IACZ,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC;IACpD,cAAc,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,kBAAkB,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,oBAAoB,CAAC;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,CAClB,MAAM,EAAE,wBAAwB,KAE9B,OAAO,CAAC,oBAAoB,CAAC,GAC7B,SAAS,CAAC,oBAAoB,CAAC,GAC/B,oBAAoB,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEN,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,QAAQ,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC;IAEnD;;OAEG;IACH,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,EAAE,CACV,KAAK,EAAE,GAAG,EACV,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,SAAS,KACd,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAE1D;;;OAGG;IACH,YAAY,CAAC,EAAE,CACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5B,KAAK,EAAE,GAAG,EACV,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACnC,OAAO,EAAE,sBAAsB,KAC5B,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;CACvE;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;CACjD;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,GAAG,EAAE,GAAG,CAAC;CACV;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,GAAG,CAAC;IACT,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,GAAG,CAAC;IACT,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,GAAG,CAAC;IACT,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,YAAY,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;CACnD;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,CAAC;IAClB,YAAY,EAAE,GAAG,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;AAErE,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,sHAAsH;IACtH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,kEAAkE;IAClE,WAAW,CAAC,EAAE,wBAAwB,CAAC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IACvD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAC7C,wHAAwH;IACxH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,2DAA2D;IAC3D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wFAAwF;IACxF,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oDAAoD;IACpD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,kFAAkF;IAClF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iDAAiD;IACjD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,6CAA6C;IAC7C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,qBAAqB,EAAE,CAAC;CACvC;AAED,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAEhG,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,yEAAyE;IACzE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6DAA6D;IAC7D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,+EAA+E;IAC/E,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACzC,yEAAyE;IACzE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,0GAA0G;IAC1G,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,wFAAwF;IACxF,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjD,sEAAsE;IACtE,KAAK,CAAC,EAAE,qBAAqB,EAAE,CAAC;CACjC"}
@@ -0,0 +1,31 @@
1
+ export interface GroupDescriptor {
2
+ selector: string;
3
+ isExpanded?: boolean;
4
+ }
5
+ export type SummaryType = 'sum' | 'avg' | 'min' | 'max' | 'count' | 'none';
6
+ export interface SummaryDescriptor {
7
+ selector: string;
8
+ summaryType: SummaryType;
9
+ label?: string;
10
+ }
11
+ export interface ComputedSummaryValue {
12
+ selector: string;
13
+ summaryType: SummaryType;
14
+ value: number;
15
+ }
16
+ export type VirtualRow = {
17
+ type: 'group';
18
+ level: number;
19
+ groupKey: string;
20
+ field: string;
21
+ value: any;
22
+ rowCount: number;
23
+ isExpanded: boolean;
24
+ summaries?: Record<string, number>;
25
+ summaryTypes?: Record<string, SummaryType>;
26
+ } | {
27
+ type: 'data';
28
+ rawIndex: number;
29
+ data: Record<string, any>;
30
+ };
31
+ //# sourceMappingURL=group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/types/group.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,UAAU,GAClB;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CAC5C,GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC3B,CAAC"}
@@ -0,0 +1,85 @@
1
+ import { FilterDescriptor, SortDescriptor, DistinctItem } from './filter';
2
+ import { GroupDescriptor, SummaryDescriptor, SummaryType, VirtualRow } from './group';
3
+ export interface DataGridQuery {
4
+ skip?: number;
5
+ take?: number;
6
+ filter?: FilterDescriptor | null;
7
+ sort?: SortDescriptor[];
8
+ group?: GroupDescriptor[];
9
+ groupSummary?: SummaryDescriptor[];
10
+ totalSummary?: SummaryDescriptor[];
11
+ search?: string;
12
+ }
13
+ export interface LoadResult {
14
+ data: any[];
15
+ totalCount: number;
16
+ summary?: number[];
17
+ groupCount?: number;
18
+ }
19
+ export interface RemoteOperationsConfig {
20
+ paging?: boolean;
21
+ filtering?: boolean;
22
+ sorting?: boolean;
23
+ grouping?: boolean;
24
+ summary?: boolean;
25
+ distinct?: boolean;
26
+ }
27
+ export interface BatchChanges {
28
+ inserted?: any[];
29
+ updated?: Array<{
30
+ key: any;
31
+ values: Record<string, any>;
32
+ }>;
33
+ deleted?: any[];
34
+ }
35
+ export interface IReadableStore {
36
+ getRowCount(): number;
37
+ getViewRow(rowIndex: number): VirtualRow | undefined;
38
+ ensureRange(startRow: number, endRow: number): Promise<void>;
39
+ on(event: 'loading' | 'loaded' | 'error', callback: (...args: any[]) => void): void;
40
+ off(event: 'loading' | 'loaded' | 'error', callback: (...args: any[]) => void): void;
41
+ }
42
+ export interface IFilterableStore {
43
+ setFilter(filter: FilterDescriptor | null): Promise<void>;
44
+ setSearch(keyword: string): Promise<void>;
45
+ getDistinctValues(columnId: string, search?: string): Promise<DistinctItem[]>;
46
+ }
47
+ export interface ISortableStore {
48
+ setSorting(sortRules: SortDescriptor[]): Promise<void>;
49
+ }
50
+ export interface IGroupableStore {
51
+ setGrouping(groupDescriptors: GroupDescriptor[]): Promise<void>;
52
+ toggleGroup(groupKey: string): Promise<void>;
53
+ expandAllGroups?(): void;
54
+ collapseAllGroups?(): void;
55
+ }
56
+ export interface IMutableStore {
57
+ setCell(rowKey: any, columnId: string, value: any): Promise<void>;
58
+ setCellsBatch?(updates: Array<{
59
+ rowKey: any;
60
+ columnId: string;
61
+ value: any;
62
+ }>): Promise<void>;
63
+ commitBatch(changes: BatchChanges): Promise<void>;
64
+ updateRowFields?(rowKey: any, patch: Record<string, any>): Promise<void>;
65
+ insertRow?(rowData: Record<string, any>, targetViewRowIndex?: number): Promise<any>;
66
+ duplicateRow?(rowKey: any, targetViewRowIndex?: number): Promise<any>;
67
+ deleteRow?(rowKey: any): Promise<void>;
68
+ restoreRow?(rowData: Record<string, any>, rawIndex?: number): Promise<void>;
69
+ setBatchMode?(enabled: boolean): void;
70
+ isBatchMode?(): boolean;
71
+ getPendingChanges?(): BatchChanges;
72
+ hasPendingChanges?(): boolean;
73
+ isCellDirty?(rowKey: any, columnId: string): boolean;
74
+ isColumnDirty?(columnId: string): boolean;
75
+ isRowInserted?(rowKey: any): boolean;
76
+ saveBatchChanges?(): Promise<BatchChanges>;
77
+ discardBatchChanges?(): void;
78
+ }
79
+ export interface IDataStore extends IReadableStore, IFilterableStore, ISortableStore, IGroupableStore, IMutableStore {
80
+ getSummaries(): Record<string, number> | undefined;
81
+ getSummaryTypes?(): Record<string, SummaryType>;
82
+ setSummaryType?(columnId: string, summaryType: SummaryType): void;
83
+ isRemote(): boolean;
84
+ }
85
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/datagrid/types/store.ts"],"names":[],"mappings":"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"}