@mui/x-data-grid-generator 8.0.0-alpha.9 → 8.0.0-beta.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 (224) hide show
  1. package/CHANGELOG.md +1446 -0
  2. package/columns/commodities.columns.d.ts +2 -2
  3. package/columns/commodities.columns.js +63 -56
  4. package/columns/employees.columns.d.ts +2 -2
  5. package/columns/employees.columns.js +38 -31
  6. package/columns/index.d.ts +2 -2
  7. package/columns/index.js +27 -2
  8. package/constants/prompts.d.ts +1 -1
  9. package/constants/prompts.js +7 -1
  10. package/esm/columns/commodities.columns.d.ts +2 -0
  11. package/{node → esm}/columns/commodities.columns.js +56 -63
  12. package/esm/columns/employees.columns.d.ts +2 -0
  13. package/{node → esm}/columns/employees.columns.js +31 -38
  14. package/esm/columns/index.d.ts +2 -0
  15. package/esm/columns/index.js +2 -0
  16. package/esm/constants/prompts.d.ts +2 -0
  17. package/{node → esm}/constants/prompts.js +1 -7
  18. package/esm/hooks/index.d.ts +8 -0
  19. package/esm/hooks/index.js +6 -0
  20. package/esm/hooks/serverUtils.d.ts +61 -0
  21. package/{node → esm}/hooks/serverUtils.js +26 -36
  22. package/esm/hooks/useBasicDemoData.d.ts +2 -0
  23. package/esm/hooks/useBasicDemoData.js +5 -0
  24. package/esm/hooks/useDemoData.d.ts +30 -0
  25. package/{node → esm}/hooks/useDemoData.js +23 -36
  26. package/esm/hooks/useMockServer.d.ts +31 -0
  27. package/{node → esm}/hooks/useMockServer.js +44 -51
  28. package/esm/hooks/useMovieData.d.ts +21 -0
  29. package/{node → esm}/hooks/useMovieData.js +4 -13
  30. package/esm/hooks/useQuery.d.ts +169 -0
  31. package/esm/hooks/useQuery.js +84 -0
  32. package/esm/index.d.ts +4 -0
  33. package/esm/index.js +11 -0
  34. package/esm/package.json +1 -0
  35. package/esm/renderer/index.d.ts +16 -0
  36. package/esm/renderer/index.js +16 -0
  37. package/esm/renderer/renderAvatar.d.ts +6 -0
  38. package/esm/renderer/renderAvatar.js +14 -0
  39. package/esm/renderer/renderCountry.d.ts +4 -0
  40. package/esm/renderer/renderCountry.js +57 -0
  41. package/esm/renderer/renderEditCountry.d.ts +4 -0
  42. package/esm/renderer/renderEditCountry.js +80 -0
  43. package/esm/renderer/renderEditCurrency.d.ts +3 -0
  44. package/esm/renderer/renderEditCurrency.js +78 -0
  45. package/esm/renderer/renderEditIncoterm.d.ts +3 -0
  46. package/esm/renderer/renderEditIncoterm.js +75 -0
  47. package/esm/renderer/renderEditProgress.d.ts +3 -0
  48. package/{node → esm}/renderer/renderEditProgress.js +21 -28
  49. package/esm/renderer/renderEditRating.d.ts +3 -0
  50. package/{node → esm}/renderer/renderEditRating.js +11 -19
  51. package/esm/renderer/renderEditStatus.d.ts +3 -0
  52. package/esm/renderer/renderEditStatus.js +98 -0
  53. package/esm/renderer/renderEmail.d.ts +3 -0
  54. package/esm/renderer/renderEmail.js +11 -0
  55. package/esm/renderer/renderIncoterm.d.ts +3 -0
  56. package/esm/renderer/renderIncoterm.js +40 -0
  57. package/esm/renderer/renderLink.d.ts +10 -0
  58. package/esm/renderer/renderLink.js +31 -0
  59. package/esm/renderer/renderPnl.d.ts +3 -0
  60. package/esm/renderer/renderPnl.js +41 -0
  61. package/esm/renderer/renderProgress.d.ts +3 -0
  62. package/{node → esm}/renderer/renderProgress.js +15 -23
  63. package/esm/renderer/renderRating.d.ts +3 -0
  64. package/esm/renderer/renderRating.js +38 -0
  65. package/esm/renderer/renderStatus.d.ts +3 -0
  66. package/{node → esm}/renderer/renderStatus.js +16 -24
  67. package/esm/renderer/renderTotalPrice.d.ts +3 -0
  68. package/{node → esm}/renderer/renderTotalPrice.js +11 -19
  69. package/esm/services/asyncWorker.d.ts +11 -0
  70. package/{node → esm}/services/asyncWorker.js +1 -7
  71. package/esm/services/basic-data-service.d.ts +13 -0
  72. package/esm/services/basic-data-service.js +37 -0
  73. package/esm/services/gridColDefGenerator.d.ts +23 -0
  74. package/esm/services/gridColDefGenerator.js +1 -0
  75. package/esm/services/index.d.ts +5 -0
  76. package/esm/services/index.js +5 -0
  77. package/esm/services/prompt-resolver.d.ts +2 -0
  78. package/esm/services/prompt-resolver.js +13 -0
  79. package/esm/services/random-generator.d.ts +49 -0
  80. package/esm/services/random-generator.js +124 -0
  81. package/esm/services/real-data-service.d.ts +8 -0
  82. package/{node → esm}/services/real-data-service.js +3 -10
  83. package/esm/services/static-data.d.ts +18 -0
  84. package/{node → esm}/services/static-data.js +12 -18
  85. package/esm/services/tree-data-generator.d.ts +21 -0
  86. package/{node → esm}/services/tree-data-generator.js +6 -14
  87. package/hooks/index.d.ts +7 -7
  88. package/hooks/index.js +71 -6
  89. package/hooks/serverUtils.d.ts +33 -33
  90. package/hooks/serverUtils.js +36 -26
  91. package/hooks/useBasicDemoData.d.ts +2 -2
  92. package/hooks/useBasicDemoData.js +13 -5
  93. package/hooks/useDemoData.d.ts +18 -19
  94. package/hooks/useDemoData.js +36 -23
  95. package/hooks/useMockServer.d.ts +25 -23
  96. package/hooks/useMockServer.js +52 -43
  97. package/hooks/useMovieData.d.ts +15 -15
  98. package/hooks/useMovieData.js +13 -4
  99. package/hooks/useQuery.d.ts +164 -164
  100. package/hooks/useQuery.js +27 -19
  101. package/index.d.ts +4 -4
  102. package/index.js +50 -5
  103. package/modern/columns/commodities.columns.d.ts +2 -0
  104. package/modern/columns/employees.columns.d.ts +2 -0
  105. package/modern/columns/index.d.ts +2 -0
  106. package/modern/constants/prompts.d.ts +2 -0
  107. package/modern/hooks/index.d.ts +8 -0
  108. package/modern/hooks/serverUtils.d.ts +61 -0
  109. package/modern/hooks/useBasicDemoData.d.ts +2 -0
  110. package/modern/hooks/useDemoData.d.ts +30 -0
  111. package/modern/hooks/useMockServer.d.ts +31 -0
  112. package/modern/hooks/useMockServer.js +2 -1
  113. package/modern/hooks/useMovieData.d.ts +21 -0
  114. package/modern/hooks/useQuery.d.ts +169 -0
  115. package/modern/index.d.ts +4 -0
  116. package/modern/index.js +1 -1
  117. package/modern/package.json +1 -0
  118. package/modern/renderer/index.d.ts +16 -0
  119. package/modern/renderer/renderAvatar.d.ts +6 -0
  120. package/modern/renderer/renderCountry.d.ts +4 -0
  121. package/modern/renderer/renderCountry.js +11 -2
  122. package/modern/renderer/renderEditCountry.d.ts +4 -0
  123. package/modern/renderer/renderEditCurrency.d.ts +3 -0
  124. package/modern/renderer/renderEditIncoterm.d.ts +3 -0
  125. package/modern/renderer/renderEditProgress.d.ts +3 -0
  126. package/modern/renderer/renderEditRating.d.ts +3 -0
  127. package/modern/renderer/renderEditStatus.d.ts +3 -0
  128. package/modern/renderer/renderEmail.d.ts +3 -0
  129. package/modern/renderer/renderIncoterm.d.ts +3 -0
  130. package/modern/renderer/renderLink.d.ts +10 -0
  131. package/modern/renderer/renderPnl.d.ts +3 -0
  132. package/modern/renderer/renderProgress.d.ts +3 -0
  133. package/modern/renderer/renderRating.d.ts +3 -0
  134. package/modern/renderer/renderStatus.d.ts +3 -0
  135. package/modern/renderer/renderTotalPrice.d.ts +3 -0
  136. package/modern/services/asyncWorker.d.ts +11 -0
  137. package/modern/services/basic-data-service.d.ts +13 -0
  138. package/modern/services/gridColDefGenerator.d.ts +23 -0
  139. package/modern/services/index.d.ts +5 -0
  140. package/modern/services/prompt-resolver.d.ts +2 -0
  141. package/modern/services/random-generator.d.ts +49 -0
  142. package/modern/services/real-data-service.d.ts +8 -0
  143. package/modern/services/static-data.d.ts +18 -0
  144. package/modern/services/tree-data-generator.d.ts +21 -0
  145. package/package.json +54 -7
  146. package/renderer/index.d.ts +16 -16
  147. package/renderer/index.js +181 -16
  148. package/renderer/renderAvatar.d.ts +3 -3
  149. package/renderer/renderAvatar.js +13 -5
  150. package/renderer/renderCountry.d.ts +2 -2
  151. package/renderer/renderCountry.js +27 -10
  152. package/renderer/renderEditCountry.d.ts +2 -2
  153. package/renderer/renderEditCountry.js +29 -21
  154. package/renderer/renderEditCurrency.d.ts +1 -1
  155. package/renderer/renderEditCurrency.js +28 -20
  156. package/renderer/renderEditIncoterm.d.ts +1 -1
  157. package/renderer/renderEditIncoterm.js +25 -17
  158. package/renderer/renderEditProgress.d.ts +1 -1
  159. package/renderer/renderEditProgress.js +28 -21
  160. package/renderer/renderEditRating.d.ts +1 -1
  161. package/renderer/renderEditRating.js +19 -11
  162. package/renderer/renderEditStatus.d.ts +1 -1
  163. package/renderer/renderEditStatus.js +36 -28
  164. package/renderer/renderEmail.d.ts +1 -1
  165. package/renderer/renderEmail.js +12 -5
  166. package/renderer/renderIncoterm.d.ts +1 -1
  167. package/renderer/renderIncoterm.js +19 -11
  168. package/renderer/renderLink.d.ts +4 -4
  169. package/renderer/renderLink.js +16 -8
  170. package/renderer/renderPnl.d.ts +1 -1
  171. package/renderer/renderPnl.js +20 -12
  172. package/renderer/renderProgress.d.ts +1 -1
  173. package/renderer/renderProgress.js +23 -15
  174. package/renderer/renderRating.d.ts +1 -1
  175. package/renderer/renderRating.js +16 -8
  176. package/renderer/renderStatus.d.ts +1 -1
  177. package/renderer/renderStatus.js +24 -16
  178. package/renderer/renderTotalPrice.d.ts +1 -1
  179. package/renderer/renderTotalPrice.js +19 -11
  180. package/services/asyncWorker.d.ts +11 -7
  181. package/services/asyncWorker.js +7 -1
  182. package/services/basic-data-service.d.ts +6 -6
  183. package/services/basic-data-service.js +10 -3
  184. package/services/gridColDefGenerator.d.ts +19 -19
  185. package/services/gridColDefGenerator.js +5 -1
  186. package/services/index.d.ts +5 -5
  187. package/services/index.js +60 -5
  188. package/services/prompt-resolver.d.ts +1 -1
  189. package/services/prompt-resolver.js +11 -4
  190. package/services/random-generator.d.ts +5 -5
  191. package/services/random-generator.js +92 -46
  192. package/services/real-data-service.d.ts +5 -5
  193. package/services/real-data-service.js +10 -3
  194. package/services/static-data.d.ts +6 -6
  195. package/services/static-data.js +18 -12
  196. package/services/tree-data-generator.d.ts +18 -19
  197. package/services/tree-data-generator.js +14 -6
  198. package/tsconfig.build.tsbuildinfo +1 -0
  199. package/columns/package.json +0 -6
  200. package/hooks/package.json +0 -6
  201. package/node/columns/index.js +0 -27
  202. package/node/hooks/index.js +0 -71
  203. package/node/hooks/useBasicDemoData.js +0 -13
  204. package/node/hooks/useQuery.js +0 -92
  205. package/node/index.js +0 -56
  206. package/node/renderer/index.js +0 -181
  207. package/node/renderer/renderAvatar.js +0 -22
  208. package/node/renderer/renderCountry.js +0 -56
  209. package/node/renderer/renderEditCountry.js +0 -88
  210. package/node/renderer/renderEditCurrency.js +0 -86
  211. package/node/renderer/renderEditIncoterm.js +0 -83
  212. package/node/renderer/renderEditStatus.js +0 -106
  213. package/node/renderer/renderEmail.js +0 -18
  214. package/node/renderer/renderIncoterm.js +0 -48
  215. package/node/renderer/renderLink.js +0 -39
  216. package/node/renderer/renderPnl.js +0 -49
  217. package/node/renderer/renderRating.js +0 -46
  218. package/node/services/basic-data-service.js +0 -44
  219. package/node/services/gridColDefGenerator.js +0 -5
  220. package/node/services/index.js +0 -60
  221. package/node/services/prompt-resolver.js +0 -20
  222. package/node/services/random-generator.js +0 -170
  223. package/renderer/package.json +0 -6
  224. package/services/package.json +0 -6
@@ -0,0 +1,169 @@
1
+ import * as React from 'react';
2
+ import { GridRowModel } from '@mui/x-data-grid-pro';
3
+ import { UseDemoDataOptions } from "./useDemoData.js";
4
+ import type { ServerOptions, QueryOptions, PageInfo } from './serverUtils';
5
+ export declare const createFakeServer: (dataSetOptions?: Partial<UseDemoDataOptions>, serverOptions?: ServerOptions) => {
6
+ columns: import("..").GridColDefGenerator[];
7
+ columnsWithDefaultColDef: ({
8
+ field: string;
9
+ headerName?: string;
10
+ description?: string;
11
+ width?: number;
12
+ flex?: number;
13
+ minWidth?: number;
14
+ maxWidth?: number;
15
+ hideable?: boolean;
16
+ sortable?: boolean;
17
+ sortingOrder?: readonly import("@mui/x-data-grid").GridSortDirection[];
18
+ resizable?: boolean;
19
+ editable?: boolean;
20
+ groupable?: boolean;
21
+ pinnable?: boolean;
22
+ sortComparator?: import("@mui/x-data-grid").GridComparatorFn<any> | undefined;
23
+ getSortComparator?: ((sortDirection: import("@mui/x-data-grid").GridSortDirection) => import("@mui/x-data-grid").GridComparatorFn<any> | undefined) | undefined;
24
+ type?: import("@mui/x-data-grid").GridColType;
25
+ align?: import("@mui/x-data-grid").GridAlignment;
26
+ valueGetter?: import("@mui/x-data-grid").GridValueGetter<any, any, any, never> | undefined;
27
+ rowSpanValueGetter?: import("@mui/x-data-grid").GridValueGetter<any, any, any, never> | undefined;
28
+ valueSetter?: import("@mui/x-data-grid").GridValueSetter<any, any, any> | undefined;
29
+ valueFormatter?: import("@mui/x-data-grid").GridValueFormatter<any, any, any, never> | undefined;
30
+ valueParser?: import("@mui/x-data-grid").GridValueParser<any, any, any> | undefined;
31
+ cellClassName?: import("@mui/x-data-grid").GridCellClassNamePropType<any, any> | undefined;
32
+ display?: "text" | "flex";
33
+ renderCell?: ((params: import("@mui/x-data-grid").GridRenderCellParams<any, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => React.ReactNode) | undefined;
34
+ renderEditCell?: ((params: import("@mui/x-data-grid").GridRenderEditCellParams<any, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => React.ReactNode) | undefined;
35
+ preProcessEditCellProps?: ((params: import("@mui/x-data-grid").GridPreProcessEditCellProps) => import("@mui/x-data-grid").GridEditCellProps | Promise<import("@mui/x-data-grid").GridEditCellProps>) | undefined;
36
+ headerClassName?: import("@mui/x-data-grid").GridColumnHeaderClassNamePropType;
37
+ renderHeader?: ((params: import("@mui/x-data-grid").GridColumnHeaderParams<any, any, any>) => React.ReactNode) | undefined;
38
+ headerAlign?: import("@mui/x-data-grid").GridAlignment;
39
+ hideSortIcons?: boolean;
40
+ disableColumnMenu?: boolean;
41
+ filterable?: boolean;
42
+ filterOperators?: readonly import("@mui/x-data-grid").GridFilterOperator<any, any, any, any>[] | undefined;
43
+ getApplyQuickFilterFn?: import("@mui/x-data-grid").GetApplyQuickFilterFn<any, any> | undefined;
44
+ disableReorder?: boolean;
45
+ disableExport?: boolean;
46
+ colSpan?: number | import("@mui/x-data-grid").GridColSpanFn<any, any, any> | undefined;
47
+ unstable_examples?: any[] | undefined;
48
+ renderHeaderFilter?: (params: import("@mui/x-data-grid-pro").GridRenderHeaderFilterProps) => React.ReactNode;
49
+ aggregable?: boolean;
50
+ availableAggregationFunctions?: string[];
51
+ groupingValueGetter?: import("@mui/x-data-grid-premium").GridGroupingValueGetter<any> | undefined;
52
+ pastedValueParser?: import("@mui/x-data-grid-premium").GridPastedValueParser<any, any, any> | undefined;
53
+ generateData?: (row: any, context: import("..").GridDataGeneratorContext) => any;
54
+ dataGeneratorUniquenessEnabled?: boolean;
55
+ hide?: boolean;
56
+ } | {
57
+ type: "actions";
58
+ getActions: (params: import("@mui/x-data-grid").GridRowParams<any>) => readonly React.ReactElement<import("@mui/x-data-grid").GridActionsCellItemProps>[];
59
+ field: string;
60
+ headerName?: string;
61
+ description?: string;
62
+ width?: number;
63
+ flex?: number;
64
+ minWidth?: number;
65
+ maxWidth?: number;
66
+ hideable?: boolean;
67
+ sortable?: boolean;
68
+ sortingOrder?: readonly import("@mui/x-data-grid").GridSortDirection[];
69
+ resizable?: boolean;
70
+ editable?: boolean;
71
+ groupable?: boolean;
72
+ pinnable?: boolean;
73
+ sortComparator?: import("@mui/x-data-grid").GridComparatorFn<any> | undefined;
74
+ getSortComparator?: ((sortDirection: import("@mui/x-data-grid").GridSortDirection) => import("@mui/x-data-grid").GridComparatorFn<any> | undefined) | undefined;
75
+ align?: import("@mui/x-data-grid").GridAlignment;
76
+ valueGetter?: import("@mui/x-data-grid").GridValueGetter<any, any, any, never> | undefined;
77
+ rowSpanValueGetter?: import("@mui/x-data-grid").GridValueGetter<any, any, any, never> | undefined;
78
+ valueSetter?: import("@mui/x-data-grid").GridValueSetter<any, any, any> | undefined;
79
+ valueFormatter?: import("@mui/x-data-grid").GridValueFormatter<any, any, any, never> | undefined;
80
+ valueParser?: import("@mui/x-data-grid").GridValueParser<any, any, any> | undefined;
81
+ cellClassName?: import("@mui/x-data-grid").GridCellClassNamePropType<any, any> | undefined;
82
+ display?: "text" | "flex";
83
+ renderCell?: ((params: import("@mui/x-data-grid").GridRenderCellParams<any, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => React.ReactNode) | undefined;
84
+ renderEditCell?: ((params: import("@mui/x-data-grid").GridRenderEditCellParams<any, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => React.ReactNode) | undefined;
85
+ preProcessEditCellProps?: ((params: import("@mui/x-data-grid").GridPreProcessEditCellProps) => import("@mui/x-data-grid").GridEditCellProps | Promise<import("@mui/x-data-grid").GridEditCellProps>) | undefined;
86
+ headerClassName?: import("@mui/x-data-grid").GridColumnHeaderClassNamePropType;
87
+ renderHeader?: ((params: import("@mui/x-data-grid").GridColumnHeaderParams<any, any, any>) => React.ReactNode) | undefined;
88
+ headerAlign?: import("@mui/x-data-grid").GridAlignment;
89
+ hideSortIcons?: boolean;
90
+ disableColumnMenu?: boolean;
91
+ filterable?: boolean;
92
+ filterOperators?: readonly import("@mui/x-data-grid").GridFilterOperator<any, any, any, any>[] | undefined;
93
+ getApplyQuickFilterFn?: import("@mui/x-data-grid").GetApplyQuickFilterFn<any, any> | undefined;
94
+ disableReorder?: boolean;
95
+ disableExport?: boolean;
96
+ colSpan?: number | import("@mui/x-data-grid").GridColSpanFn<any, any, any> | undefined;
97
+ unstable_examples?: any[] | undefined;
98
+ renderHeaderFilter?: (params: import("@mui/x-data-grid-pro").GridRenderHeaderFilterProps) => React.ReactNode;
99
+ aggregable?: boolean;
100
+ availableAggregationFunctions?: string[];
101
+ groupingValueGetter?: import("@mui/x-data-grid-premium").GridGroupingValueGetter<any> | undefined;
102
+ pastedValueParser?: import("@mui/x-data-grid-premium").GridPastedValueParser<any, any, any> | undefined;
103
+ generateData?: (row: any, context: import("..").GridDataGeneratorContext) => any;
104
+ dataGeneratorUniquenessEnabled?: boolean;
105
+ hide?: boolean;
106
+ } | {
107
+ type: "singleSelect";
108
+ valueOptions?: import("@mui/x-data-grid").ValueOptions[] | ((params: import("@mui/x-data-grid").GridValueOptionsParams<any>) => Array<import("@mui/x-data-grid").ValueOptions>) | undefined;
109
+ getOptionLabel?: (value: import("@mui/x-data-grid").ValueOptions) => string;
110
+ getOptionValue?: (value: import("@mui/x-data-grid").ValueOptions) => any;
111
+ field: string;
112
+ headerName?: string;
113
+ description?: string;
114
+ width?: number;
115
+ flex?: number;
116
+ minWidth?: number;
117
+ maxWidth?: number;
118
+ hideable?: boolean;
119
+ sortable?: boolean;
120
+ sortingOrder?: readonly import("@mui/x-data-grid").GridSortDirection[];
121
+ resizable?: boolean;
122
+ editable?: boolean;
123
+ groupable?: boolean;
124
+ pinnable?: boolean;
125
+ sortComparator?: import("@mui/x-data-grid").GridComparatorFn<any> | undefined;
126
+ getSortComparator?: ((sortDirection: import("@mui/x-data-grid").GridSortDirection) => import("@mui/x-data-grid").GridComparatorFn<any> | undefined) | undefined;
127
+ align?: import("@mui/x-data-grid").GridAlignment;
128
+ valueGetter?: import("@mui/x-data-grid").GridValueGetter<any, any, any, never> | undefined;
129
+ rowSpanValueGetter?: import("@mui/x-data-grid").GridValueGetter<any, any, any, never> | undefined;
130
+ valueSetter?: import("@mui/x-data-grid").GridValueSetter<any, any, any> | undefined;
131
+ valueFormatter?: import("@mui/x-data-grid").GridValueFormatter<any, any, any, never> | undefined;
132
+ valueParser?: import("@mui/x-data-grid").GridValueParser<any, any, any> | undefined;
133
+ cellClassName?: import("@mui/x-data-grid").GridCellClassNamePropType<any, any> | undefined;
134
+ display?: "text" | "flex";
135
+ renderCell?: ((params: import("@mui/x-data-grid").GridRenderCellParams<any, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => React.ReactNode) | undefined;
136
+ renderEditCell?: ((params: import("@mui/x-data-grid").GridRenderEditCellParams<any, any, any, import("@mui/x-data-grid").GridTreeNodeWithRender>) => React.ReactNode) | undefined;
137
+ preProcessEditCellProps?: ((params: import("@mui/x-data-grid").GridPreProcessEditCellProps) => import("@mui/x-data-grid").GridEditCellProps | Promise<import("@mui/x-data-grid").GridEditCellProps>) | undefined;
138
+ headerClassName?: import("@mui/x-data-grid").GridColumnHeaderClassNamePropType;
139
+ renderHeader?: ((params: import("@mui/x-data-grid").GridColumnHeaderParams<any, any, any>) => React.ReactNode) | undefined;
140
+ headerAlign?: import("@mui/x-data-grid").GridAlignment;
141
+ hideSortIcons?: boolean;
142
+ disableColumnMenu?: boolean;
143
+ filterable?: boolean;
144
+ filterOperators?: readonly import("@mui/x-data-grid").GridFilterOperator<any, any, any, any>[] | undefined;
145
+ getApplyQuickFilterFn?: import("@mui/x-data-grid").GetApplyQuickFilterFn<any, any> | undefined;
146
+ disableReorder?: boolean;
147
+ disableExport?: boolean;
148
+ colSpan?: number | import("@mui/x-data-grid").GridColSpanFn<any, any, any> | undefined;
149
+ unstable_examples?: any[] | undefined;
150
+ renderHeaderFilter?: (params: import("@mui/x-data-grid-pro").GridRenderHeaderFilterProps) => React.ReactNode;
151
+ aggregable?: boolean;
152
+ availableAggregationFunctions?: string[];
153
+ groupingValueGetter?: import("@mui/x-data-grid-premium").GridGroupingValueGetter<any> | undefined;
154
+ pastedValueParser?: import("@mui/x-data-grid-premium").GridPastedValueParser<any, any, any> | undefined;
155
+ generateData?: (row: any, context: import("..").GridDataGeneratorContext) => any;
156
+ dataGeneratorUniquenessEnabled?: boolean;
157
+ hide?: boolean;
158
+ })[];
159
+ initialState: {
160
+ columns: {
161
+ columnVisibilityModel: import("@mui/x-data-grid").GridColumnVisibilityModel;
162
+ };
163
+ };
164
+ useQuery: (queryOptions: QueryOptions) => {
165
+ pageInfo: PageInfo;
166
+ rows: GridRowModel[];
167
+ isLoading: boolean;
168
+ };
169
+ };
@@ -0,0 +1,84 @@
1
+ 'use client';
2
+
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
4
+ import * as React from 'react';
5
+ import { getGridDefaultColumnTypes } from '@mui/x-data-grid-pro';
6
+ import { isDeepEqual } from '@mui/x-data-grid/internals';
7
+ import { useDemoData, getColumnsFromOptions, getInitialState } from "./useDemoData.js";
8
+ import { DEFAULT_SERVER_OPTIONS, loadServerRows } from "./serverUtils.js";
9
+ const DEFAULT_DATASET_OPTIONS = {
10
+ dataSet: 'Commodity',
11
+ rowLength: 100,
12
+ maxColumns: 6
13
+ };
14
+ export const createFakeServer = (dataSetOptions, serverOptions) => {
15
+ const dataSetOptionsWithDefault = _extends({}, DEFAULT_DATASET_OPTIONS, dataSetOptions);
16
+ const serverOptionsWithDefault = _extends({}, DEFAULT_SERVER_OPTIONS, serverOptions);
17
+ const columns = getColumnsFromOptions(dataSetOptionsWithDefault);
18
+ const initialState = getInitialState(dataSetOptionsWithDefault, columns);
19
+ const defaultColDef = getGridDefaultColumnTypes();
20
+ const columnsWithDefaultColDef = columns.map(column => _extends({}, defaultColDef[column.type || 'string'], column));
21
+ const useQuery = queryOptions => {
22
+ const {
23
+ data: {
24
+ rows
25
+ },
26
+ loading: dataGenerationIsLoading
27
+ } = useDemoData(dataSetOptionsWithDefault);
28
+ const queryOptionsRef = React.useRef(queryOptions);
29
+ const [response, setResponse] = React.useState({
30
+ pageInfo: {},
31
+ rows: []
32
+ });
33
+ const [isLoading, setIsLoading] = React.useState(dataGenerationIsLoading);
34
+ React.useEffect(() => {
35
+ if (dataGenerationIsLoading) {
36
+ // dataset is not ready
37
+ return () => {};
38
+ }
39
+ queryOptionsRef.current = queryOptions;
40
+ let active = true;
41
+ setIsLoading(true);
42
+ setResponse(prev => Object.keys(prev.pageInfo).length === 0 ? prev : _extends({}, prev, {
43
+ pageInfo: {}
44
+ }));
45
+ (async function fetchData() {
46
+ const {
47
+ returnedRows,
48
+ nextCursor,
49
+ totalRowCount,
50
+ hasNextPage
51
+ } = await loadServerRows(rows, queryOptions, serverOptionsWithDefault, columnsWithDefaultColDef);
52
+ if (!active) {
53
+ return;
54
+ }
55
+ const newRep = {
56
+ rows: returnedRows,
57
+ pageInfo: {
58
+ totalRowCount,
59
+ nextCursor,
60
+ hasNextPage,
61
+ pageSize: returnedRows.length
62
+ }
63
+ };
64
+ setResponse(prev => isDeepEqual(prev, newRep) ? prev : newRep);
65
+ setIsLoading(false);
66
+ })();
67
+ return () => {
68
+ active = false;
69
+ };
70
+ }, [dataGenerationIsLoading, queryOptions, rows]);
71
+
72
+ // We use queryOptions pointer to be sure that isLoading===true as soon as the options change
73
+ const effectShouldStart = queryOptionsRef.current !== queryOptions;
74
+ return _extends({
75
+ isLoading: isLoading || effectShouldStart
76
+ }, response);
77
+ };
78
+ return {
79
+ columns,
80
+ columnsWithDefaultColDef,
81
+ initialState,
82
+ useQuery
83
+ };
84
+ };
package/esm/index.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ export * from "./renderer/index.js";
2
+ export * from "./services/index.js";
3
+ export * from "./columns/index.js";
4
+ export * from "./hooks/index.js";
package/esm/index.js ADDED
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @mui/x-data-grid-generator v8.0.0-beta.0
3
+ *
4
+ * @license MUI X Commercial
5
+ * This source code is licensed under the commercial license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ export * from "./renderer/index.js";
9
+ export * from "./services/index.js";
10
+ export * from "./columns/index.js";
11
+ export * from "./hooks/index.js";
@@ -0,0 +1 @@
1
+ {"type":"module","sideEffects":false}
@@ -0,0 +1,16 @@
1
+ export * from "./renderAvatar.js";
2
+ export * from "./renderCountry.js";
3
+ export * from "./renderEmail.js";
4
+ export * from "./renderIncoterm.js";
5
+ export * from "./renderLink.js";
6
+ export * from "./renderPnl.js";
7
+ export * from "./renderProgress.js";
8
+ export * from "./renderRating.js";
9
+ export * from "./renderStatus.js";
10
+ export * from "./renderTotalPrice.js";
11
+ export * from "./renderEditCurrency.js";
12
+ export * from "./renderEditProgress.js";
13
+ export * from "./renderEditStatus.js";
14
+ export * from "./renderEditIncoterm.js";
15
+ export * from "./renderEditRating.js";
16
+ export * from "./renderEditCountry.js";
@@ -0,0 +1,16 @@
1
+ export * from "./renderAvatar.js";
2
+ export * from "./renderCountry.js";
3
+ export * from "./renderEmail.js";
4
+ export * from "./renderIncoterm.js";
5
+ export * from "./renderLink.js";
6
+ export * from "./renderPnl.js";
7
+ export * from "./renderProgress.js";
8
+ export * from "./renderRating.js";
9
+ export * from "./renderStatus.js";
10
+ export * from "./renderTotalPrice.js";
11
+ export * from "./renderEditCurrency.js";
12
+ export * from "./renderEditProgress.js";
13
+ export * from "./renderEditStatus.js";
14
+ export * from "./renderEditIncoterm.js";
15
+ export * from "./renderEditRating.js";
16
+ export * from "./renderEditCountry.js";
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid-premium';
3
+ export declare function renderAvatar(params: GridRenderCellParams<{
4
+ name: string;
5
+ color: string;
6
+ }, any, any>): "" | React.JSX.Element;
@@ -0,0 +1,14 @@
1
+ import * as React from 'react';
2
+ import Avatar from '@mui/material/Avatar';
3
+ import { jsx as _jsx } from "react/jsx-runtime";
4
+ export function renderAvatar(params) {
5
+ if (params.value == null) {
6
+ return '';
7
+ }
8
+ return /*#__PURE__*/_jsx(Avatar, {
9
+ style: {
10
+ backgroundColor: params.value.color
11
+ },
12
+ children: params.value.name.toUpperCase().substring(0, 1)
13
+ });
14
+ }
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid-premium';
3
+ import { CountryIsoOption } from "../services/static-data.js";
4
+ export declare function renderCountry(params: GridRenderCellParams<CountryIsoOption, any, any>): "" | React.JSX.Element | null;
@@ -0,0 +1,57 @@
1
+ import * as React from 'react';
2
+ import Box from '@mui/material/Box';
3
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
+ const useStaticFlag = typeof DISABLE_CHANCE_RANDOM !== 'undefined' && DISABLE_CHANCE_RANDOM;
5
+ const laosFlag = `
6
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 900 600">
7
+ <path fill="#ce1126" d="M0 0h900v600H0z" />
8
+ <path fill="#002868" d="M0 150h900v300H0z" />
9
+ <circle r="120" cy="300" cx="450" fill="#fff" />
10
+ </svg>
11
+ `;
12
+ const staticFlagURI = `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(laosFlag)}`;
13
+ const Country = /*#__PURE__*/React.memo(function Country(props) {
14
+ const {
15
+ value
16
+ } = props;
17
+ return /*#__PURE__*/_jsxs(Box, {
18
+ sx: {
19
+ width: '100%',
20
+ display: 'flex',
21
+ alignItems: 'center',
22
+ '& > img': {
23
+ mr: 0.5,
24
+ flexShrink: 0,
25
+ width: '20px'
26
+ }
27
+ },
28
+ children: [/*#__PURE__*/_jsx("img", {
29
+ loading: "lazy",
30
+ width: "20",
31
+ src: useStaticFlag ? staticFlagURI : `https://flagcdn.com/w20/${value.code.toLowerCase()}.png`,
32
+ srcSet: useStaticFlag ? undefined : `https://flagcdn.com/w40/${value.code.toLowerCase()}.png 2x`,
33
+ alt: ""
34
+ }), /*#__PURE__*/_jsx(Box, {
35
+ component: "span",
36
+ sx: {
37
+ overflow: 'hidden',
38
+ textOverflow: 'ellipsis'
39
+ },
40
+ children: value.label
41
+ })]
42
+ });
43
+ });
44
+ export function renderCountry(params) {
45
+ if (params.value == null) {
46
+ return '';
47
+ }
48
+
49
+ // If the aggregated value does not have the same unit as the other cell
50
+ // Then we fall back to the default rendering based on `valueGetter` instead of rendering the total price UI.
51
+ if (params.aggregation && !params.aggregation.hasCellUnit) {
52
+ return null;
53
+ }
54
+ return /*#__PURE__*/_jsx(Country, {
55
+ value: params.value
56
+ });
57
+ }
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { GridRenderEditCellParams } from '@mui/x-data-grid-premium';
3
+ import { CountryIsoOption } from "../services/static-data.js";
4
+ export declare function renderEditCountry(params: GridRenderEditCellParams<CountryIsoOption>): React.JSX.Element;
@@ -0,0 +1,80 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { useGridApiContext } from '@mui/x-data-grid-premium';
4
+ import Autocomplete, { autocompleteClasses } from '@mui/material/Autocomplete';
5
+ import InputBase from '@mui/material/InputBase';
6
+ import Box from '@mui/material/Box';
7
+ import { styled } from '@mui/material/styles';
8
+ import { COUNTRY_ISO_OPTIONS } from "../services/static-data.js";
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ import { createElement as _createElement } from "react";
11
+ const StyledAutocomplete = styled(Autocomplete)(({
12
+ theme
13
+ }) => ({
14
+ height: '100%',
15
+ [`& .${autocompleteClasses.inputRoot}`]: _extends({}, theme.typography.body2, {
16
+ padding: '1px 0',
17
+ height: '100%',
18
+ '& input': {
19
+ padding: '0 16px',
20
+ height: '100%'
21
+ }
22
+ })
23
+ }));
24
+ function EditCountry(props) {
25
+ const {
26
+ id,
27
+ value,
28
+ field
29
+ } = props;
30
+ const apiRef = useGridApiContext();
31
+ const handleChange = React.useCallback(async (event, newValue) => {
32
+ await apiRef.current.setEditCellValue({
33
+ id,
34
+ field,
35
+ value: newValue
36
+ }, event);
37
+ apiRef.current.stopCellEditMode({
38
+ id,
39
+ field
40
+ });
41
+ }, [apiRef, field, id]);
42
+ return /*#__PURE__*/_jsx(StyledAutocomplete, {
43
+ value: value,
44
+ onChange: handleChange,
45
+ options: COUNTRY_ISO_OPTIONS,
46
+ getOptionLabel: option => option.label,
47
+ autoHighlight: true,
48
+ fullWidth: true,
49
+ open: true,
50
+ disableClearable: true,
51
+ renderOption: (optionProps, option) => /*#__PURE__*/_createElement(Box, _extends({
52
+ component: "li",
53
+ sx: {
54
+ '& > img': {
55
+ mr: 1.5,
56
+ flexShrink: 0
57
+ }
58
+ }
59
+ }, optionProps, {
60
+ key: option.code
61
+ }), /*#__PURE__*/_jsx("img", {
62
+ loading: "lazy",
63
+ width: "20",
64
+ src: `https://flagcdn.com/w20/${option.code.toLowerCase()}.png`,
65
+ srcSet: `https://flagcdn.com/w40/${option.code.toLowerCase()}.png 2x`,
66
+ alt: ""
67
+ }), option.label),
68
+ renderInput: params => /*#__PURE__*/_jsx(InputBase, _extends({
69
+ autoFocus: true,
70
+ fullWidth: true,
71
+ id: params.id,
72
+ inputProps: _extends({}, params.inputProps, {
73
+ autoComplete: 'new-password' // disable autocomplete and autofill
74
+ })
75
+ }, params.InputProps))
76
+ });
77
+ }
78
+ export function renderEditCountry(params) {
79
+ return /*#__PURE__*/_jsx(EditCountry, _extends({}, params));
80
+ }
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridRenderEditCellParams } from '@mui/x-data-grid-premium';
3
+ export declare function renderEditCurrency(params: GridRenderEditCellParams<any, string>): React.JSX.Element;
@@ -0,0 +1,78 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { useGridApiContext } from '@mui/x-data-grid-premium';
4
+ import Autocomplete, { autocompleteClasses } from '@mui/material/Autocomplete';
5
+ import InputBase from '@mui/material/InputBase';
6
+ import Box from '@mui/material/Box';
7
+ import { styled } from '@mui/material/styles';
8
+ import { CURRENCY_OPTIONS } from "../services/static-data.js";
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ const StyledAutocomplete = styled(Autocomplete)(({
11
+ theme
12
+ }) => ({
13
+ height: '100%',
14
+ [`& .${autocompleteClasses.inputRoot}`]: _extends({}, theme.typography.body2, {
15
+ padding: '1px 0',
16
+ height: '100%',
17
+ '& input': {
18
+ padding: '0 16px',
19
+ height: '100%'
20
+ }
21
+ })
22
+ }));
23
+ function EditCurrency(props) {
24
+ const {
25
+ id,
26
+ value,
27
+ field
28
+ } = props;
29
+ const apiRef = useGridApiContext();
30
+ const handleChange = React.useCallback(async (event, newValue) => {
31
+ await apiRef.current.setEditCellValue({
32
+ id,
33
+ field,
34
+ value: newValue.toUpperCase()
35
+ }, event);
36
+ apiRef.current.stopCellEditMode({
37
+ id,
38
+ field
39
+ });
40
+ }, [apiRef, field, id]);
41
+ return /*#__PURE__*/_jsx(StyledAutocomplete, {
42
+ value: value,
43
+ onChange: handleChange,
44
+ options: CURRENCY_OPTIONS,
45
+ autoHighlight: true,
46
+ fullWidth: true,
47
+ open: true,
48
+ disableClearable: true,
49
+ renderOption: (optionProps, option) => /*#__PURE__*/_jsxs(Box, _extends({
50
+ component: "li",
51
+ sx: {
52
+ '& > img': {
53
+ mr: 1.5,
54
+ flexShrink: 0
55
+ }
56
+ }
57
+ }, optionProps, {
58
+ children: [/*#__PURE__*/_jsx("img", {
59
+ loading: "lazy",
60
+ width: "20",
61
+ src: `https://flagcdn.com/w20/${option.slice(0, -1).toLowerCase()}.png`,
62
+ srcSet: `https://flagcdn.com/w40/${option.slice(0, -1).toLowerCase()}.png 2x`,
63
+ alt: ""
64
+ }), option]
65
+ })),
66
+ renderInput: params => /*#__PURE__*/_jsx(InputBase, _extends({
67
+ autoFocus: true,
68
+ fullWidth: true,
69
+ id: params.id,
70
+ inputProps: _extends({}, params.inputProps, {
71
+ autoComplete: 'new-password' // disable autocomplete and autofill
72
+ })
73
+ }, params.InputProps))
74
+ });
75
+ }
76
+ export function renderEditCurrency(params) {
77
+ return /*#__PURE__*/_jsx(EditCurrency, _extends({}, params));
78
+ }
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridRenderEditCellParams } from '@mui/x-data-grid-premium';
3
+ export declare function renderEditIncoterm(params: GridRenderEditCellParams<any, string | null>): React.JSX.Element;
@@ -0,0 +1,75 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import { useGridApiContext } from '@mui/x-data-grid-premium';
4
+ import Select from '@mui/material/Select';
5
+ import MenuItem from '@mui/material/MenuItem';
6
+ import ListItemIcon from '@mui/material/ListItemIcon';
7
+ import ListItemText from '@mui/material/ListItemText';
8
+ import { INCOTERM_OPTIONS } from "../services/static-data.js";
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ function EditIncoterm(props) {
11
+ const {
12
+ id,
13
+ value,
14
+ field
15
+ } = props;
16
+ const apiRef = useGridApiContext();
17
+ const handleChange = async event => {
18
+ await apiRef.current.setEditCellValue({
19
+ id,
20
+ field,
21
+ value: event.target.value
22
+ }, event);
23
+ apiRef.current.stopCellEditMode({
24
+ id,
25
+ field
26
+ });
27
+ };
28
+ const handleClose = (event, reason) => {
29
+ if (reason === 'backdropClick') {
30
+ apiRef.current.stopCellEditMode({
31
+ id,
32
+ field
33
+ });
34
+ }
35
+ };
36
+ return /*#__PURE__*/_jsx(Select, {
37
+ value: value,
38
+ onChange: handleChange,
39
+ MenuProps: {
40
+ onClose: handleClose
41
+ },
42
+ sx: {
43
+ height: '100%',
44
+ '& .MuiSelect-select': {
45
+ display: 'flex',
46
+ alignItems: 'center',
47
+ pl: 1
48
+ }
49
+ },
50
+ autoFocus: true,
51
+ fullWidth: true,
52
+ open: true,
53
+ children: INCOTERM_OPTIONS.map(option => {
54
+ const tooltip = option.slice(option.indexOf('(') + 1, option.indexOf(')'));
55
+ const code = option.slice(0, option.indexOf('(')).trim();
56
+ return /*#__PURE__*/_jsxs(MenuItem, {
57
+ value: option,
58
+ children: [/*#__PURE__*/_jsx(ListItemIcon, {
59
+ sx: {
60
+ minWidth: 36
61
+ },
62
+ children: code
63
+ }), /*#__PURE__*/_jsx(ListItemText, {
64
+ primary: tooltip,
65
+ sx: {
66
+ overflow: 'hidden'
67
+ }
68
+ })]
69
+ }, option);
70
+ })
71
+ });
72
+ }
73
+ export function renderEditIncoterm(params) {
74
+ return /*#__PURE__*/_jsx(EditIncoterm, _extends({}, params));
75
+ }
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridRenderEditCellParams } from '@mui/x-data-grid-premium';
3
+ export declare function renderEditProgress(params: GridRenderEditCellParams<any, number>): React.JSX.Element;