@mui/x-data-grid-generator 8.0.0-alpha.10 → 8.0.0-alpha.12

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 (221) hide show
  1. package/CHANGELOG.md +267 -2
  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 +42 -50
  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/{node → esm}/renderer/renderCountry.js +8 -16
  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 -24
  96. package/hooks/useMockServer.js +50 -42
  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/useMovieData.d.ts +21 -0
  113. package/modern/hooks/useQuery.d.ts +169 -0
  114. package/modern/index.d.ts +4 -0
  115. package/modern/index.js +1 -1
  116. package/modern/package.json +1 -0
  117. package/modern/renderer/index.d.ts +16 -0
  118. package/modern/renderer/renderAvatar.d.ts +6 -0
  119. package/modern/renderer/renderCountry.d.ts +4 -0
  120. package/modern/renderer/renderEditCountry.d.ts +4 -0
  121. package/modern/renderer/renderEditCurrency.d.ts +3 -0
  122. package/modern/renderer/renderEditIncoterm.d.ts +3 -0
  123. package/modern/renderer/renderEditProgress.d.ts +3 -0
  124. package/modern/renderer/renderEditRating.d.ts +3 -0
  125. package/modern/renderer/renderEditStatus.d.ts +3 -0
  126. package/modern/renderer/renderEmail.d.ts +3 -0
  127. package/modern/renderer/renderIncoterm.d.ts +3 -0
  128. package/modern/renderer/renderLink.d.ts +10 -0
  129. package/modern/renderer/renderPnl.d.ts +3 -0
  130. package/modern/renderer/renderProgress.d.ts +3 -0
  131. package/modern/renderer/renderRating.d.ts +3 -0
  132. package/modern/renderer/renderStatus.d.ts +3 -0
  133. package/modern/renderer/renderTotalPrice.d.ts +3 -0
  134. package/modern/services/asyncWorker.d.ts +11 -0
  135. package/modern/services/basic-data-service.d.ts +13 -0
  136. package/modern/services/gridColDefGenerator.d.ts +23 -0
  137. package/modern/services/index.d.ts +5 -0
  138. package/modern/services/prompt-resolver.d.ts +2 -0
  139. package/modern/services/random-generator.d.ts +49 -0
  140. package/modern/services/real-data-service.d.ts +8 -0
  141. package/modern/services/static-data.d.ts +18 -0
  142. package/modern/services/tree-data-generator.d.ts +21 -0
  143. package/package.json +51 -7
  144. package/renderer/index.d.ts +16 -16
  145. package/renderer/index.js +181 -16
  146. package/renderer/renderAvatar.d.ts +3 -3
  147. package/renderer/renderAvatar.js +13 -5
  148. package/renderer/renderCountry.d.ts +2 -2
  149. package/renderer/renderCountry.js +16 -8
  150. package/renderer/renderEditCountry.d.ts +2 -2
  151. package/renderer/renderEditCountry.js +29 -21
  152. package/renderer/renderEditCurrency.d.ts +1 -1
  153. package/renderer/renderEditCurrency.js +28 -20
  154. package/renderer/renderEditIncoterm.d.ts +1 -1
  155. package/renderer/renderEditIncoterm.js +25 -17
  156. package/renderer/renderEditProgress.d.ts +1 -1
  157. package/renderer/renderEditProgress.js +28 -21
  158. package/renderer/renderEditRating.d.ts +1 -1
  159. package/renderer/renderEditRating.js +19 -11
  160. package/renderer/renderEditStatus.d.ts +1 -1
  161. package/renderer/renderEditStatus.js +36 -28
  162. package/renderer/renderEmail.d.ts +1 -1
  163. package/renderer/renderEmail.js +12 -5
  164. package/renderer/renderIncoterm.d.ts +1 -1
  165. package/renderer/renderIncoterm.js +19 -11
  166. package/renderer/renderLink.d.ts +4 -4
  167. package/renderer/renderLink.js +16 -8
  168. package/renderer/renderPnl.d.ts +1 -1
  169. package/renderer/renderPnl.js +20 -12
  170. package/renderer/renderProgress.d.ts +1 -1
  171. package/renderer/renderProgress.js +23 -15
  172. package/renderer/renderRating.d.ts +1 -1
  173. package/renderer/renderRating.js +16 -8
  174. package/renderer/renderStatus.d.ts +1 -1
  175. package/renderer/renderStatus.js +24 -16
  176. package/renderer/renderTotalPrice.d.ts +1 -1
  177. package/renderer/renderTotalPrice.js +19 -11
  178. package/services/asyncWorker.d.ts +11 -7
  179. package/services/asyncWorker.js +7 -1
  180. package/services/basic-data-service.d.ts +6 -6
  181. package/services/basic-data-service.js +10 -3
  182. package/services/gridColDefGenerator.d.ts +19 -19
  183. package/services/gridColDefGenerator.js +5 -1
  184. package/services/index.d.ts +5 -5
  185. package/services/index.js +60 -5
  186. package/services/prompt-resolver.d.ts +1 -1
  187. package/services/prompt-resolver.js +11 -4
  188. package/services/random-generator.d.ts +5 -5
  189. package/services/random-generator.js +92 -46
  190. package/services/real-data-service.d.ts +5 -5
  191. package/services/real-data-service.js +10 -3
  192. package/services/static-data.d.ts +6 -6
  193. package/services/static-data.js +18 -12
  194. package/services/tree-data-generator.d.ts +18 -19
  195. package/services/tree-data-generator.js +14 -6
  196. package/tsconfig.build.tsbuildinfo +1 -0
  197. package/columns/package.json +0 -6
  198. package/hooks/package.json +0 -6
  199. package/node/columns/index.js +0 -27
  200. package/node/hooks/index.js +0 -71
  201. package/node/hooks/useBasicDemoData.js +0 -13
  202. package/node/hooks/useQuery.js +0 -92
  203. package/node/index.js +0 -56
  204. package/node/renderer/index.js +0 -181
  205. package/node/renderer/renderAvatar.js +0 -22
  206. package/node/renderer/renderEditCountry.js +0 -88
  207. package/node/renderer/renderEditCurrency.js +0 -86
  208. package/node/renderer/renderEditIncoterm.js +0 -83
  209. package/node/renderer/renderEditStatus.js +0 -106
  210. package/node/renderer/renderEmail.js +0 -18
  211. package/node/renderer/renderIncoterm.js +0 -48
  212. package/node/renderer/renderLink.js +0 -39
  213. package/node/renderer/renderPnl.js +0 -49
  214. package/node/renderer/renderRating.js +0 -46
  215. package/node/services/basic-data-service.js +0 -44
  216. package/node/services/gridColDefGenerator.js +0 -5
  217. package/node/services/index.js +0 -60
  218. package/node/services/prompt-resolver.js +0 -20
  219. package/node/services/random-generator.js +0 -170
  220. package/renderer/package.json +0 -6
  221. package/services/package.json +0 -6
@@ -0,0 +1,41 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import * as React from 'react';
3
+ import clsx from 'clsx';
4
+ import { styled } from '@mui/material/styles';
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ const Value = styled('div')(({
7
+ theme
8
+ }) => ({
9
+ width: '100%',
10
+ fontVariantNumeric: 'tabular-nums',
11
+ '&.positive': _extends({
12
+ color: theme.palette.success.light
13
+ }, theme.applyStyles('light', {
14
+ color: theme.palette.success.dark
15
+ })),
16
+ '&.negative': _extends({
17
+ color: theme.palette.error.light
18
+ }, theme.applyStyles('light', {
19
+ color: theme.palette.error.dark
20
+ }))
21
+ }));
22
+ function pnlFormatter(value) {
23
+ return value < 0 ? `(${Math.abs(value).toLocaleString()})` : value.toLocaleString();
24
+ }
25
+ const Pnl = /*#__PURE__*/React.memo(function Pnl(props) {
26
+ const {
27
+ value
28
+ } = props;
29
+ return /*#__PURE__*/_jsx(Value, {
30
+ className: clsx(value > 0 && "positive", value < 0 && "negative"),
31
+ children: pnlFormatter(value)
32
+ });
33
+ });
34
+ export function renderPnl(params) {
35
+ if (params.value == null) {
36
+ return '';
37
+ }
38
+ return /*#__PURE__*/_jsx(Pnl, {
39
+ value: params.value
40
+ });
41
+ }
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid-premium';
3
+ export declare function renderProgress(params: GridRenderCellParams<any, number, any>): "" | React.JSX.Element | null;
@@ -1,21 +1,13 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.renderProgress = renderProgress;
9
- var React = _interopRequireWildcard(require("react"));
10
- var _clsx = _interopRequireDefault(require("clsx"));
11
- var _styles = require("@mui/material/styles");
12
- var _jsxRuntime = require("react/jsx-runtime");
13
- const Center = (0, _styles.styled)('div')({
1
+ import * as React from 'react';
2
+ import clsx from 'clsx';
3
+ import { styled } from '@mui/material/styles';
4
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
+ const Center = styled('div')({
14
6
  height: '100%',
15
7
  display: 'flex',
16
8
  alignItems: 'center'
17
9
  });
18
- const Element = (0, _styles.styled)('div')(({
10
+ const Element = styled('div')(({
19
11
  theme
20
12
  }) => ({
21
13
  border: `1px solid ${(theme.vars || theme).palette.divider}`,
@@ -25,14 +17,14 @@ const Element = (0, _styles.styled)('div')(({
25
17
  height: 26,
26
18
  borderRadius: 2
27
19
  }));
28
- const Value = (0, _styles.styled)('div')({
20
+ const Value = styled('div')({
29
21
  position: 'absolute',
30
22
  lineHeight: '24px',
31
23
  width: '100%',
32
24
  display: 'flex',
33
25
  justifyContent: 'center'
34
26
  });
35
- const Bar = (0, _styles.styled)('div')({
27
+ const Bar = styled('div')({
36
28
  height: '100%',
37
29
  '&.low': {
38
30
  backgroundColor: '#f44336'
@@ -49,18 +41,18 @@ const ProgressBar = /*#__PURE__*/React.memo(function ProgressBar(props) {
49
41
  value
50
42
  } = props;
51
43
  const valueInPercent = value * 100;
52
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Element, {
53
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Value, {
44
+ return /*#__PURE__*/_jsxs(Element, {
45
+ children: [/*#__PURE__*/_jsx(Value, {
54
46
  children: `${valueInPercent.toLocaleString()} %`
55
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(Bar, {
56
- className: (0, _clsx.default)(valueInPercent < 30 && "low", valueInPercent >= 30 && valueInPercent <= 70 && "medium", valueInPercent > 70 && "high"),
47
+ }), /*#__PURE__*/_jsx(Bar, {
48
+ className: clsx(valueInPercent < 30 && "low", valueInPercent >= 30 && valueInPercent <= 70 && "medium", valueInPercent > 70 && "high"),
57
49
  style: {
58
50
  maxWidth: `${valueInPercent}%`
59
51
  }
60
52
  })]
61
53
  });
62
54
  });
63
- function renderProgress(params) {
55
+ export function renderProgress(params) {
64
56
  if (params.value == null) {
65
57
  return '';
66
58
  }
@@ -70,8 +62,8 @@ function renderProgress(params) {
70
62
  if (params.aggregation && !params.aggregation.hasCellUnit) {
71
63
  return null;
72
64
  }
73
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Center, {
74
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ProgressBar, {
65
+ return /*#__PURE__*/_jsx(Center, {
66
+ children: /*#__PURE__*/_jsx(ProgressBar, {
75
67
  value: params.value
76
68
  })
77
69
  });
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid-premium';
3
+ export declare function renderRating(params: GridRenderCellParams<any, number, any>): "" | React.JSX.Element | null;
@@ -0,0 +1,38 @@
1
+ import * as React from 'react';
2
+ import Box from '@mui/material/Box';
3
+ import Rating from '@mui/material/Rating';
4
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
+ const RatingValue = /*#__PURE__*/React.memo(function RatingValue(props) {
6
+ const {
7
+ value
8
+ } = props;
9
+ return /*#__PURE__*/_jsxs(Box, {
10
+ sx: {
11
+ display: 'flex',
12
+ alignItems: 'center',
13
+ lineHeight: '24px',
14
+ color: 'text.secondary'
15
+ },
16
+ children: [/*#__PURE__*/_jsx(Rating, {
17
+ value: value,
18
+ sx: {
19
+ mr: 1
20
+ },
21
+ readOnly: true
22
+ }), " ", Math.round(Number(value) * 10) / 10]
23
+ });
24
+ });
25
+ export function renderRating(params) {
26
+ if (params.value == null) {
27
+ return '';
28
+ }
29
+
30
+ // If the aggregated value does not have the same unit as the other cell
31
+ // Then we fall back to the default rendering based on `valueGetter` instead of rendering the total price UI.
32
+ if (params.aggregation && !params.aggregation.hasCellUnit) {
33
+ return null;
34
+ }
35
+ return /*#__PURE__*/_jsx(RatingValue, {
36
+ value: params.value
37
+ });
38
+ }
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid-premium';
3
+ export declare function renderStatus(params: GridRenderCellParams<any, string>): "" | React.JSX.Element;
@@ -1,20 +1,12 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.renderStatus = renderStatus;
9
- var React = _interopRequireWildcard(require("react"));
10
- var _ReportProblem = _interopRequireDefault(require("@mui/icons-material/ReportProblem"));
11
- var _Info = _interopRequireDefault(require("@mui/icons-material/Info"));
12
- var _Autorenew = _interopRequireDefault(require("@mui/icons-material/Autorenew"));
13
- var _Done = _interopRequireDefault(require("@mui/icons-material/Done"));
14
- var _Chip = _interopRequireDefault(require("@mui/material/Chip"));
15
- var _styles = require("@mui/material/styles");
16
- var _jsxRuntime = require("react/jsx-runtime");
17
- const StyledChip = (0, _styles.styled)(_Chip.default)(({
1
+ import * as React from 'react';
2
+ import ReportProblemIcon from '@mui/icons-material/ReportProblem';
3
+ import InfoIcon from '@mui/icons-material/Info';
4
+ import AutorenewIcon from '@mui/icons-material/Autorenew';
5
+ import DoneIcon from '@mui/icons-material/Done';
6
+ import Chip from '@mui/material/Chip';
7
+ import { styled } from '@mui/material/styles';
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ const StyledChip = styled(Chip)(({
18
10
  theme
19
11
  }) => ({
20
12
  justifyContent: 'left',
@@ -44,19 +36,19 @@ const Status = /*#__PURE__*/React.memo(props => {
44
36
  } = props;
45
37
  let icon = null;
46
38
  if (status === 'Rejected') {
47
- icon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_ReportProblem.default, {
39
+ icon = /*#__PURE__*/_jsx(ReportProblemIcon, {
48
40
  className: "icon"
49
41
  });
50
42
  } else if (status === 'Open') {
51
- icon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Info.default, {
43
+ icon = /*#__PURE__*/_jsx(InfoIcon, {
52
44
  className: "icon"
53
45
  });
54
46
  } else if (status === 'PartiallyFilled') {
55
- icon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Autorenew.default, {
47
+ icon = /*#__PURE__*/_jsx(AutorenewIcon, {
56
48
  className: "icon"
57
49
  });
58
50
  } else if (status === 'Filled') {
59
- icon = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Done.default, {
51
+ icon = /*#__PURE__*/_jsx(DoneIcon, {
60
52
  className: "icon"
61
53
  });
62
54
  }
@@ -64,7 +56,7 @@ const Status = /*#__PURE__*/React.memo(props => {
64
56
  if (status === 'PartiallyFilled') {
65
57
  label = 'Partially Filled';
66
58
  }
67
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledChip, {
59
+ return /*#__PURE__*/_jsx(StyledChip, {
68
60
  className: status,
69
61
  icon: icon,
70
62
  size: "small",
@@ -72,11 +64,11 @@ const Status = /*#__PURE__*/React.memo(props => {
72
64
  variant: "outlined"
73
65
  });
74
66
  });
75
- function renderStatus(params) {
67
+ export function renderStatus(params) {
76
68
  if (params.value == null) {
77
69
  return '';
78
70
  }
79
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Status, {
71
+ return /*#__PURE__*/_jsx(Status, {
80
72
  status: params.value
81
73
  });
82
74
  }
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ import { GridRenderCellParams } from '@mui/x-data-grid-premium';
3
+ export declare function renderTotalPrice(params: GridRenderCellParams<any, number>): "" | React.JSX.Element | null;
@@ -1,16 +1,8 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.renderTotalPrice = renderTotalPrice;
9
- var React = _interopRequireWildcard(require("react"));
10
- var _clsx = _interopRequireDefault(require("clsx"));
11
- var _styles = require("@mui/material/styles");
12
- var _jsxRuntime = require("react/jsx-runtime");
13
- const Value = (0, _styles.styled)('div')(({
1
+ import * as React from 'react';
2
+ import clsx from 'clsx';
3
+ import { alpha, styled } from '@mui/material/styles';
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ const Value = styled('div')(({
14
6
  theme
15
7
  }) => ({
16
8
  width: '100%',
@@ -22,10 +14,10 @@ const Value = (0, _styles.styled)('div')(({
22
14
  alignItems: 'center',
23
15
  justifyContent: 'flex-end',
24
16
  '&.good': {
25
- backgroundColor: theme.vars ? `rgba(${theme.vars.palette.success.mainChannel} / 0.3)` : (0, _styles.alpha)(theme.palette.success.main, 0.3)
17
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette.success.mainChannel} / 0.3)` : alpha(theme.palette.success.main, 0.3)
26
18
  },
27
19
  '&.bad': {
28
- backgroundColor: theme.vars ? `rgba(${theme.vars.palette.error.mainChannel} / 0.3)` : (0, _styles.alpha)(theme.palette.error.main, 0.3)
20
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette.error.mainChannel} / 0.3)` : alpha(theme.palette.error.main, 0.3)
29
21
  }
30
22
  }));
31
23
  const currencyFormatter = new Intl.NumberFormat('en-US', {
@@ -36,12 +28,12 @@ const TotalPrice = /*#__PURE__*/React.memo(function TotalPrice(props) {
36
28
  const {
37
29
  value
38
30
  } = props;
39
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Value, {
40
- className: (0, _clsx.default)(value > 1000000 && "good", value < 1000000 && "bad"),
31
+ return /*#__PURE__*/_jsx(Value, {
32
+ className: clsx(value > 1000000 && "good", value < 1000000 && "bad"),
41
33
  children: currencyFormatter.format(value)
42
34
  });
43
35
  });
44
- function renderTotalPrice(params) {
36
+ export function renderTotalPrice(params) {
45
37
  if (params.value == null) {
46
38
  return '';
47
39
  }
@@ -51,7 +43,7 @@ function renderTotalPrice(params) {
51
43
  if (params.aggregation && !params.aggregation.hasCellUnit) {
52
44
  return null;
53
45
  }
54
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(TotalPrice, {
46
+ return /*#__PURE__*/_jsx(TotalPrice, {
55
47
  value: params.value
56
48
  });
57
49
  }
@@ -0,0 +1,11 @@
1
+ export default function asyncWorker({
2
+ work,
3
+ tasks,
4
+ done
5
+ }: {
6
+ work: () => void;
7
+ tasks: {
8
+ current: number;
9
+ };
10
+ done: () => void;
11
+ }): void;
@@ -1,10 +1,4 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = asyncWorker;
7
- function asyncWorker({
1
+ export default function asyncWorker({
8
2
  work,
9
3
  tasks,
10
4
  done
@@ -0,0 +1,13 @@
1
+ import { GridColDef, GridRowId } from '@mui/x-data-grid';
2
+ export declare const currencyPairs: string[];
3
+ interface GridBasicRowModel {
4
+ id: GridRowId;
5
+ currencyPair: string;
6
+ [price: string]: number | string;
7
+ }
8
+ export interface GridBasicData {
9
+ columns: GridColDef[];
10
+ rows: GridBasicRowModel[];
11
+ }
12
+ export declare const getBasicGridData: (rowLength: number, colLength: number) => GridBasicData;
13
+ export {};
@@ -0,0 +1,37 @@
1
+ export const currencyPairs = ['USDGBP', 'USDEUR', 'GBPEUR', 'JPYUSD', 'MXNUSD', 'BTCUSD', 'USDCAD', 'EURJPY', 'EURUSD', 'EURCHF', 'USDCHF', 'EURGBP', 'GBPUSD', 'AUDCAD', 'NZDUSD', 'GBPCHF', 'AUDUSD', 'GBPJPY', 'USDJPY', 'CHFJPY', 'EURCAD', 'AUDJPY', 'EURAUD', 'AUDNZD', 'CADEUR', 'CHFMXN', 'ETHUSD', 'BCHUSD', 'ETHBTC', 'XRPUSD', 'XRPBTC', 'USDLTC', 'USDXRP', 'USDDSH', 'USDBCH', 'JPYEUR', 'JPYUSD', 'JPYGBP', 'JPYCAD', 'JPYCHF', 'JPYAUD', 'JPYNZD', 'JPYSGD', 'JPYNOK', 'JPYRUB', 'JPYSEK', 'JPYTRY', 'JPYZAR', 'JPYHKD', 'JPYCNH', 'JPYDKK', 'JPYMXN', 'JPYPLN', 'JPYXAG', 'JPYXAU', 'JPYBTC', 'JPYETH', 'JPYLTC', 'JPYXRP', 'JPYDSH', 'JPYBCH', 'GBPEUR', 'GBPRUB', 'GBPTRY'];
2
+ export const getBasicGridData = (rowLength, colLength) => {
3
+ const data = [];
4
+ const pricesColLength = colLength - 2;
5
+ for (let i = 0; i < rowLength; i += 1) {
6
+ const idx = i >= currencyPairs.length ? i % currencyPairs.length : i;
7
+ const model = {
8
+ id: i,
9
+ currencyPair: currencyPairs[idx]
10
+ };
11
+ for (let j = 1; j <= pricesColLength; j += 1) {
12
+ model[`price${j}M`] = Number(`${i.toString()}${j}`); // randomPrice(0.7, 2);
13
+ }
14
+ data.push(model);
15
+ }
16
+ const columns = [{
17
+ field: 'id',
18
+ headerName: 'id',
19
+ type: 'number'
20
+ }, {
21
+ field: 'currencyPair',
22
+ headerName: 'Currency Pair'
23
+ }];
24
+ for (let j = 1; j <= pricesColLength; j += 1) {
25
+ // const y = Math.floor(j / 12);
26
+ columns.push({
27
+ field: `price${j}M`,
28
+ headerName: `${j}M`,
29
+ type: 'number'
30
+ }); // (y > 0 ? `${y}Y` : '') + `${j - y * 12}M`
31
+ }
32
+ columns.length = colLength; // we cut the array in case < 2;
33
+ return {
34
+ columns,
35
+ rows: data
36
+ };
37
+ };
@@ -0,0 +1,23 @@
1
+ import { GridColDef } from '@mui/x-data-grid-pro';
2
+ export interface GridDataGeneratorContext {
3
+ /**
4
+ * Values already attributed to this column.
5
+ * Only defined if the column has the uniqueness mode activated.
6
+ * The keys represent the random value and the value represents the amount of rows that already have this value.
7
+ * This allows to data generators to add a suffix to the returned value to force the uniqueness.
8
+ */
9
+ values?: Record<string, number>;
10
+ }
11
+ export type GridColDefGenerator = GridColDef & {
12
+ generateData?: (row: any, context: GridDataGeneratorContext) => any;
13
+ /**
14
+ * If `true`, each row will have a distinct value
15
+ * If several rows are generated with the same value, then a suffix will be added to the 2nd, 3rd, ...
16
+ * @default false
17
+ */
18
+ dataGeneratorUniquenessEnabled?: boolean;
19
+ /**
20
+ * If `true`, the column will be marked as hidden in the `columnVisibilityModel`.
21
+ */
22
+ hide?: boolean;
23
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export * from "./gridColDefGenerator.js";
2
+ export * from "./random-generator.js";
3
+ export * from "./real-data-service.js";
4
+ export * from "./basic-data-service.js";
5
+ export * from "./prompt-resolver.js";
@@ -0,0 +1,5 @@
1
+ export * from "./gridColDefGenerator.js";
2
+ export * from "./random-generator.js";
3
+ export * from "./real-data-service.js";
4
+ export * from "./basic-data-service.js";
5
+ export * from "./prompt-resolver.js";
@@ -0,0 +1,2 @@
1
+ import { unstable_PromptResponse as PromptResponse } from '@mui/x-data-grid-premium';
2
+ export declare const mockPromptResolver: (_: string, query: string) => Promise<PromptResponse>;
@@ -0,0 +1,13 @@
1
+ import { mockPrompts } from "../constants/prompts.js";
2
+ export const mockPromptResolver = (_, query) => {
3
+ const resolved = mockPrompts.get(query.toLowerCase().trim());
4
+ return new Promise((resolve, reject) => {
5
+ setTimeout(() => {
6
+ if (resolved) {
7
+ resolve(resolved);
8
+ } else {
9
+ reject(new Error('Unknown query'));
10
+ }
11
+ }, 1000);
12
+ });
13
+ };
@@ -0,0 +1,49 @@
1
+ import { GridDataGeneratorContext } from "./gridColDefGenerator.js";
2
+ type ColumnDataGenerator<Value> = (data: any, context: GridDataGeneratorContext) => Value;
3
+ export declare const random: (min: number, max: number) => number;
4
+ export declare const randomInt: (min: number, max: number) => number;
5
+ export declare const randomPrice: (min?: number, max?: number) => number;
6
+ export declare const randomRate: () => number;
7
+ export declare const randomDate: (start: Date, end: Date) => Date;
8
+ export declare const randomArrayItem: <T>(arr: T[]) => T;
9
+ export declare const randomBoolean: () => boolean;
10
+ export declare const randomColor: () => "#2196f3" | "#4caf50" | "#03a9f4" | "#ff9800" | "#e91e63" | "#9c27b0" | "#f44336";
11
+ export declare const randomId: () => string;
12
+ export declare const randomDesk: () => string;
13
+ export declare const randomCommodity: () => string;
14
+ export declare const randomTraderName: () => string;
15
+ export declare const randomUserName: () => string;
16
+ export declare const randomEmail: () => string;
17
+ export declare const randomUrl: () => string;
18
+ export declare const randomPhoneNumber: () => string;
19
+ export declare const randomUnitPrice: () => number;
20
+ export declare const randomUnitPriceCurrency: () => string;
21
+ export declare const randomQuantity: () => number;
22
+ export declare const randomFeeRate: () => number;
23
+ export declare const randomIncoterm: () => string;
24
+ export declare const randomStatusOptions: () => string;
25
+ export declare const randomPnL: () => number;
26
+ export declare const randomMaturityDate: () => Date;
27
+ export declare const randomTradeDate: () => Date;
28
+ export declare const randomBrokerId: () => string;
29
+ export declare const randomCompanyName: () => string;
30
+ export declare const randomCountry: () => import("./static-data").CountryIsoOption;
31
+ export declare const randomCurrency: () => string;
32
+ export declare const randomAddress: () => string;
33
+ export declare const randomCity: () => string;
34
+ export declare const randomTaxCode: () => string;
35
+ export declare const randomContractType: () => string;
36
+ export declare const randomRateType: () => string;
37
+ export declare const randomCreatedDate: () => Date;
38
+ export declare const randomUpdatedDate: () => Date;
39
+ export declare const randomJobTitle: () => string;
40
+ export declare const randomRating: () => number;
41
+ export declare const randomName: ColumnDataGenerator<string>;
42
+ export declare const generateFilledQuantity: (data: {
43
+ quantity: number;
44
+ }) => number;
45
+ export declare const generateIsFilled: (data: {
46
+ quantity: number;
47
+ filledQuantity: number;
48
+ }) => boolean;
49
+ export {};
@@ -0,0 +1,124 @@
1
+ import { Chance } from 'chance';
2
+ import { COLORS, COMMODITY_OPTIONS, CONTRACT_TYPE_OPTIONS, COUNTRY_ISO_OPTIONS, CURRENCY_OPTIONS, INCOTERM_OPTIONS, RATE_TYPE_OPTIONS, STATUS_OPTIONS, TAXCODE_OPTIONS } from "./static-data.js";
3
+ let chance;
4
+ let chanceGuid;
5
+ if (typeof DISABLE_CHANCE_RANDOM !== 'undefined' && DISABLE_CHANCE_RANDOM) {
6
+ chance = new Chance(() => 0.5);
7
+ chanceGuid = new Chance(42);
8
+ } else {
9
+ chance = new Chance();
10
+ chanceGuid = chance;
11
+ }
12
+ /**
13
+ * Wrap a data generator that returns a string and add a prefix if the value generated has already been given
14
+ */
15
+ const uniquenessHandler = generator => (data, context) => {
16
+ const rawValue = generator(data, context);
17
+ if (!context.values) {
18
+ return rawValue;
19
+ }
20
+ const valueCount = (context.values[rawValue] ?? 0) + 1;
21
+ context.values[rawValue] = valueCount + 1;
22
+ if (valueCount > 1) {
23
+ return `${rawValue} ${valueCount}`;
24
+ }
25
+ return rawValue;
26
+ };
27
+ function dateFuture(years, refDate) {
28
+ let date = new Date();
29
+ if (typeof refDate !== 'undefined') {
30
+ date = new Date(Date.parse(refDate));
31
+ }
32
+ const range = {
33
+ min: 1000,
34
+ max: (years || 1) * 365 * 24 * 3600 * 1000
35
+ };
36
+
37
+ // some time from now to N years later, in milliseconds
38
+ const past = date.getTime() + chance.integer(range);
39
+ date.setTime(past);
40
+ return date;
41
+ }
42
+ function dateRecent(days, refDate) {
43
+ let date = new Date();
44
+ if (typeof refDate !== 'undefined') {
45
+ date = new Date(Date.parse(refDate));
46
+ }
47
+ const range = {
48
+ min: 1000,
49
+ max: (days || 1) * 24 * 3600 * 1000
50
+ };
51
+
52
+ // some time from now to N days ago, in milliseconds
53
+ const past = date.getTime() - chance.integer(range);
54
+ date.setTime(past);
55
+ return date;
56
+ }
57
+ function datePast(years, refDate) {
58
+ let date = new Date();
59
+ if (typeof refDate !== 'undefined') {
60
+ date = new Date(Date.parse(refDate));
61
+ }
62
+ const range = {
63
+ min: 1000,
64
+ max: (years || 1) * 365 * 24 * 3600 * 1000
65
+ };
66
+
67
+ // some time from now to N years ago, in milliseconds
68
+ const past = date.getTime() - chance.integer(range);
69
+ date.setTime(past);
70
+ return date;
71
+ }
72
+ export const random = (min, max) => chance.floating({
73
+ min,
74
+ max
75
+ });
76
+ export const randomInt = (min, max) => chance.integer({
77
+ min,
78
+ max
79
+ });
80
+ export const randomPrice = (min = 0, max = 100000) => Number(random(min, max).toFixed(2));
81
+ export const randomRate = () => random(0, 1);
82
+ export const randomDate = (start, end) => new Date(start.getTime() + chance.floating({
83
+ min: 0,
84
+ max: 1
85
+ }) * (end.getTime() - start.getTime()));
86
+ export const randomArrayItem = arr => arr[randomInt(0, arr.length - 1)];
87
+ export const randomBoolean = () => randomArrayItem([true, false]);
88
+ export const randomColor = () => randomArrayItem(COLORS);
89
+ export const randomId = () => chanceGuid.guid();
90
+ export const randomDesk = () => `D-${chance.integer({
91
+ min: 0,
92
+ max: 10000
93
+ })}`;
94
+ export const randomCommodity = () => randomArrayItem(COMMODITY_OPTIONS);
95
+ export const randomTraderName = () => chance.name();
96
+ export const randomUserName = () => chance.twitter();
97
+ export const randomEmail = () => chance.email();
98
+ export const randomUrl = () => chance.url();
99
+ export const randomPhoneNumber = () => chance.phone();
100
+ export const randomUnitPrice = () => randomPrice(1, 100);
101
+ export const randomUnitPriceCurrency = () => randomArrayItem(CURRENCY_OPTIONS);
102
+ export const randomQuantity = () => randomInt(1000, 100000);
103
+ export const randomFeeRate = () => Number(random(0.1, 0.4).toFixed(3));
104
+ export const randomIncoterm = () => randomArrayItem(INCOTERM_OPTIONS);
105
+ export const randomStatusOptions = () => randomArrayItem(STATUS_OPTIONS);
106
+ export const randomPnL = () => random(-100000000, 100000000);
107
+ export const randomMaturityDate = () => dateFuture();
108
+ export const randomTradeDate = () => dateRecent();
109
+ export const randomBrokerId = () => chance.guid();
110
+ export const randomCompanyName = () => chance.company();
111
+ export const randomCountry = () => randomArrayItem(COUNTRY_ISO_OPTIONS);
112
+ export const randomCurrency = () => randomArrayItem(CURRENCY_OPTIONS);
113
+ export const randomAddress = () => chance.address();
114
+ export const randomCity = () => chance.city();
115
+ export const randomTaxCode = () => randomArrayItem(TAXCODE_OPTIONS);
116
+ export const randomContractType = () => randomArrayItem(CONTRACT_TYPE_OPTIONS);
117
+ export const randomRateType = () => randomArrayItem(RATE_TYPE_OPTIONS);
118
+ export const randomCreatedDate = () => datePast();
119
+ export const randomUpdatedDate = () => dateRecent();
120
+ export const randomJobTitle = () => chance.profession();
121
+ export const randomRating = () => randomInt(1, 5);
122
+ export const randomName = uniquenessHandler(() => chance.name());
123
+ export const generateFilledQuantity = data => Number((data.quantity * randomRate()).toFixed()) / data.quantity;
124
+ export const generateIsFilled = data => data.quantity === data.filledQuantity;
@@ -0,0 +1,8 @@
1
+ import { GridRowModel, GridInitialState } from '@mui/x-data-grid-premium';
2
+ import { GridColDefGenerator } from "./gridColDefGenerator.js";
3
+ export interface GridDemoData {
4
+ rows: GridRowModel[];
5
+ columns: GridColDefGenerator[];
6
+ initialState?: GridInitialState;
7
+ }
8
+ export declare function getRealGridData(rowLength: number, columns: GridColDefGenerator[]): Promise<GridDemoData>;