@mui/x-data-grid-generator 6.0.0-alpha.8 → 6.0.0-alpha.9

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 (116) hide show
  1. package/CHANGELOG.md +129 -15
  2. package/columns/commodities.columns.js +0 -1
  3. package/columns/employees.columns.js +0 -1
  4. package/hooks/useDemoData.js +9 -31
  5. package/hooks/useMovieData.js +0 -1
  6. package/hooks/useQuery.js +6 -34
  7. package/index.js +1 -1
  8. package/legacy/columns/commodities.columns.js +0 -1
  9. package/legacy/columns/employees.columns.js +0 -2
  10. package/legacy/hooks/useBasicDemoData.js +6 -7
  11. package/legacy/hooks/useDemoData.js +28 -70
  12. package/legacy/hooks/useMovieData.js +0 -2
  13. package/legacy/hooks/useQuery.js +27 -64
  14. package/legacy/index.js +1 -1
  15. package/legacy/renderer/renderAvatar.js +0 -1
  16. package/legacy/renderer/renderCountry.js +3 -4
  17. package/legacy/renderer/renderEditCountry.js +2 -8
  18. package/legacy/renderer/renderEditCurrency.js +2 -8
  19. package/legacy/renderer/renderEditIncoterm.js +2 -10
  20. package/legacy/renderer/renderEditProgress.js +7 -17
  21. package/legacy/renderer/renderEditRating.js +2 -10
  22. package/legacy/renderer/renderEditStatus.js +2 -15
  23. package/legacy/renderer/renderEmail.js +0 -1
  24. package/legacy/renderer/renderIncoterm.js +0 -2
  25. package/legacy/renderer/renderLink.js +0 -2
  26. package/legacy/renderer/renderPnl.js +0 -3
  27. package/legacy/renderer/renderProgress.js +4 -5
  28. package/legacy/renderer/renderRating.js +3 -4
  29. package/legacy/renderer/renderStatus.js +8 -13
  30. package/legacy/renderer/renderTotalPrice.js +5 -6
  31. package/legacy/services/asyncWorker.js +4 -7
  32. package/legacy/services/basic-data-service.js +0 -5
  33. package/legacy/services/random-generator.js +6 -20
  34. package/legacy/services/real-data-service.js +0 -9
  35. package/legacy/services/tree-data-generator.js +6 -22
  36. package/modern/columns/commodities.columns.js +0 -1
  37. package/modern/columns/employees.columns.js +0 -1
  38. package/modern/hooks/useDemoData.js +9 -27
  39. package/modern/hooks/useMovieData.js +0 -1
  40. package/modern/hooks/useQuery.js +6 -32
  41. package/modern/index.js +1 -1
  42. package/modern/renderer/renderAvatar.js +0 -1
  43. package/modern/renderer/renderCountry.js +3 -4
  44. package/modern/renderer/renderEditCountry.js +0 -3
  45. package/modern/renderer/renderEditCurrency.js +0 -3
  46. package/modern/renderer/renderEditIncoterm.js +0 -5
  47. package/modern/renderer/renderEditProgress.js +0 -7
  48. package/modern/renderer/renderEditRating.js +0 -5
  49. package/modern/renderer/renderEditStatus.js +0 -10
  50. package/modern/renderer/renderIncoterm.js +0 -2
  51. package/modern/renderer/renderLink.js +0 -2
  52. package/modern/renderer/renderPnl.js +0 -3
  53. package/modern/renderer/renderProgress.js +4 -5
  54. package/modern/renderer/renderRating.js +3 -4
  55. package/modern/renderer/renderStatus.js +8 -13
  56. package/modern/renderer/renderTotalPrice.js +5 -6
  57. package/modern/services/asyncWorker.js +2 -4
  58. package/modern/services/basic-data-service.js +0 -5
  59. package/modern/services/random-generator.js +6 -19
  60. package/modern/services/real-data-service.js +0 -9
  61. package/modern/services/tree-data-generator.js +0 -14
  62. package/node/columns/commodities.columns.js +1 -8
  63. package/node/columns/employees.columns.js +1 -8
  64. package/node/columns/index.js +0 -4
  65. package/node/hooks/index.js +0 -8
  66. package/node/hooks/useBasicDemoData.js +0 -6
  67. package/node/hooks/useDemoData.js +17 -62
  68. package/node/hooks/useMovieData.js +0 -3
  69. package/node/hooks/useQuery.js +8 -48
  70. package/node/index.js +1 -9
  71. package/node/renderer/index.js +0 -32
  72. package/node/renderer/renderAvatar.js +0 -8
  73. package/node/renderer/renderCountry.js +3 -12
  74. package/node/renderer/renderEditCountry.js +0 -16
  75. package/node/renderer/renderEditCurrency.js +0 -16
  76. package/node/renderer/renderEditIncoterm.js +0 -17
  77. package/node/renderer/renderEditProgress.js +0 -20
  78. package/node/renderer/renderEditRating.js +0 -14
  79. package/node/renderer/renderEditStatus.js +0 -26
  80. package/node/renderer/renderEmail.js +1 -9
  81. package/node/renderer/renderIncoterm.js +0 -12
  82. package/node/renderer/renderLink.js +0 -9
  83. package/node/renderer/renderPnl.js +0 -12
  84. package/node/renderer/renderProgress.js +4 -14
  85. package/node/renderer/renderRating.js +3 -13
  86. package/node/renderer/renderStatus.js +8 -26
  87. package/node/renderer/renderTotalPrice.js +5 -15
  88. package/node/services/asyncWorker.js +2 -5
  89. package/node/services/basic-data-service.js +0 -7
  90. package/node/services/index.js +0 -8
  91. package/node/services/random-generator.js +7 -105
  92. package/node/services/real-data-service.js +0 -12
  93. package/node/services/static-data.js +0 -2
  94. package/node/services/tree-data-generator.js +1 -22
  95. package/package.json +4 -4
  96. package/renderer/renderAvatar.js +0 -1
  97. package/renderer/renderCountry.js +3 -4
  98. package/renderer/renderEditCountry.js +0 -3
  99. package/renderer/renderEditCurrency.js +0 -3
  100. package/renderer/renderEditIncoterm.js +0 -5
  101. package/renderer/renderEditProgress.js +0 -7
  102. package/renderer/renderEditRating.js +0 -5
  103. package/renderer/renderEditStatus.js +0 -10
  104. package/renderer/renderEmail.js +0 -1
  105. package/renderer/renderIncoterm.js +0 -2
  106. package/renderer/renderLink.js +0 -2
  107. package/renderer/renderPnl.js +0 -3
  108. package/renderer/renderProgress.js +4 -5
  109. package/renderer/renderRating.js +3 -4
  110. package/renderer/renderStatus.js +8 -13
  111. package/renderer/renderTotalPrice.js +5 -6
  112. package/services/asyncWorker.js +2 -4
  113. package/services/basic-data-service.js +0 -5
  114. package/services/random-generator.js +6 -20
  115. package/services/real-data-service.js +0 -9
  116. package/services/tree-data-generator.js +0 -15
@@ -2,21 +2,18 @@ export const currencyPairs = ['USDGBP', 'USDEUR', 'GBPEUR', 'JPYUSD', 'MXNUSD',
2
2
  export const getBasicGridData = (rowLength, colLength) => {
3
3
  const data = [];
4
4
  const pricesColLength = colLength - 2;
5
-
6
5
  for (let i = 0; i < rowLength; i += 1) {
7
6
  const idx = i >= currencyPairs.length ? i % currencyPairs.length : i;
8
7
  const model = {
9
8
  id: i,
10
9
  currencyPair: currencyPairs[idx]
11
10
  };
12
-
13
11
  for (let j = 1; j <= pricesColLength; j += 1) {
14
12
  model[`price${j}M`] = Number(`${i.toString()}${j}`); // randomPrice(0.7, 2);
15
13
  }
16
14
 
17
15
  data.push(model);
18
16
  }
19
-
20
17
  const columns = [{
21
18
  field: 'id',
22
19
  headerName: 'id',
@@ -25,7 +22,6 @@ export const getBasicGridData = (rowLength, colLength) => {
25
22
  field: 'currencyPair',
26
23
  headerName: 'Currency Pair'
27
24
  }];
28
-
29
25
  for (let j = 1; j <= pricesColLength; j += 1) {
30
26
  // const y = Math.floor(j / 12);
31
27
  columns.push({
@@ -36,7 +32,6 @@ export const getBasicGridData = (rowLength, colLength) => {
36
32
  }
37
33
 
38
34
  columns.length = colLength; // we cut the array in case < 2;
39
-
40
35
  return {
41
36
  columns,
42
37
  rows: data
@@ -2,86 +2,72 @@ import globalChance from 'chance';
2
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';
3
3
  const chanceId = globalChance();
4
4
  let chance;
5
-
6
5
  if (typeof DISABLE_CHANCE_RANDOM !== 'undefined' && DISABLE_CHANCE_RANDOM) {
7
6
  chance = globalChance(() => 0.5);
8
7
  } else {
9
8
  chance = chanceId;
10
9
  }
11
-
12
10
  /**
13
11
  * Wrap a data generator that returns a string and add a prefix if the value generated has already been given
14
12
  */
15
13
  const uniquenessHandler = generator => (data, context) => {
16
14
  var _context$values$rawVa;
17
-
18
15
  const rawValue = generator(data, context);
19
-
20
16
  if (!context.values) {
21
17
  return rawValue;
22
18
  }
23
-
24
19
  const valueCount = ((_context$values$rawVa = context.values[rawValue]) != null ? _context$values$rawVa : 0) + 1;
25
20
  context.values[rawValue] = valueCount + 1;
26
-
27
21
  if (valueCount > 1) {
28
22
  return `${rawValue} ${valueCount}`;
29
23
  }
30
-
31
24
  return rawValue;
32
25
  };
33
-
34
26
  function dateFuture(years, refDate) {
35
27
  let date = new Date();
36
-
37
28
  if (typeof refDate !== 'undefined') {
38
29
  date = new Date(Date.parse(refDate));
39
30
  }
40
-
41
31
  const range = {
42
32
  min: 1000,
43
33
  max: (years || 1) * 365 * 24 * 3600 * 1000
44
- }; // some time from now to N years later, in milliseconds
34
+ };
45
35
 
36
+ // some time from now to N years later, in milliseconds
46
37
  const past = date.getTime() + chance.integer(range);
47
38
  date.setTime(past);
48
39
  return date;
49
40
  }
50
-
51
41
  function dateRecent(days, refDate) {
52
42
  let date = new Date();
53
-
54
43
  if (typeof refDate !== 'undefined') {
55
44
  date = new Date(Date.parse(refDate));
56
45
  }
57
-
58
46
  const range = {
59
47
  min: 1000,
60
48
  max: (days || 1) * 24 * 3600 * 1000
61
- }; // some time from now to N days ago, in milliseconds
49
+ };
62
50
 
51
+ // some time from now to N days ago, in milliseconds
63
52
  const past = date.getTime() - chance.integer(range);
64
53
  date.setTime(past);
65
54
  return date;
66
55
  }
67
-
68
56
  function datePast(years, refDate) {
69
57
  let date = new Date();
70
-
71
58
  if (typeof refDate !== 'undefined') {
72
59
  date = new Date(Date.parse(refDate));
73
60
  }
74
-
75
61
  const range = {
76
62
  min: 1000,
77
63
  max: (years || 1) * 365 * 24 * 3600 * 1000
78
- }; // some time from now to N years ago, in milliseconds
64
+ };
79
65
 
66
+ // some time from now to N years ago, in milliseconds
80
67
  const past = date.getTime() - chance.integer(range);
81
68
  date.setTime(past);
82
69
  return date;
83
70
  }
84
-
85
71
  export const random = (min, max) => chance.floating({
86
72
  min,
87
73
  max
@@ -6,35 +6,26 @@ export function getRealGridData(rowLength, columns) {
6
6
  };
7
7
  const rows = [];
8
8
  const indexedValues = {};
9
-
10
9
  function work() {
11
10
  const row = {};
12
-
13
11
  for (let j = 0; j < columns.length; j += 1) {
14
12
  const column = columns[j];
15
-
16
13
  if (column.generateData) {
17
14
  const context = {};
18
-
19
15
  if (column.dataGeneratorUniquenessEnabled) {
20
16
  let fieldValues = indexedValues[column.field];
21
-
22
17
  if (!fieldValues) {
23
18
  fieldValues = {};
24
19
  indexedValues[column.field] = fieldValues;
25
20
  }
26
-
27
21
  context.values = fieldValues;
28
22
  }
29
-
30
23
  row[column.field] = column.generateData(row, context);
31
24
  }
32
25
  }
33
-
34
26
  rows.push(row);
35
27
  tasks.current -= 1;
36
28
  }
37
-
38
29
  const columnVisibilityModel = {};
39
30
  columns.forEach(col => {
40
31
  if (col.hide) {
@@ -2,51 +2,41 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import { randomArrayItem } from './random-generator';
3
3
  export const addTreeDataOptionsToDemoData = (data, options = {}) => {
4
4
  var _groupingCol$headerNa;
5
-
6
5
  const {
7
6
  averageChildren = 2,
8
7
  maxDepth = 1,
9
8
  groupingField
10
9
  } = options;
11
10
  const hasTreeData = maxDepth > 1 && groupingField != null;
12
-
13
11
  if (!hasTreeData) {
14
12
  return data;
15
13
  }
16
-
17
14
  if (data.rows.length > 1000) {
18
15
  throw new Error('MUI: useDemoData tree data mode only works up to 1000 rows.');
19
16
  }
20
-
21
17
  const rowsByTreeDepth = {};
22
18
  const rowsCount = data.rows.length;
23
19
  const groupingCol = data.columns.find(col => col.field === options.groupingField);
24
-
25
20
  if (!groupingCol) {
26
21
  throw new Error('MUI: The tree data grouping field does not exist');
27
22
  }
28
-
29
23
  data.initialState.columns.columnVisibilityModel[groupingField] = false;
30
-
31
24
  for (let i = 0; i < rowsCount; i += 1) {
32
25
  const row = data.rows[i];
33
26
  const currentChunk = Math.floor(i * (averageChildren ** maxDepth - 1) / rowsCount) + 1;
34
27
  const currentDepth = Math.floor(Math.log(currentChunk) / Math.log(averageChildren));
35
-
36
28
  if (!rowsByTreeDepth[currentDepth]) {
37
29
  rowsByTreeDepth[currentDepth] = {
38
30
  rows: {},
39
31
  rowIndexes: []
40
32
  };
41
33
  }
42
-
43
34
  rowsByTreeDepth[currentDepth].rows[i] = {
44
35
  value: row,
45
36
  parentIndex: null
46
37
  };
47
38
  rowsByTreeDepth[currentDepth].rowIndexes.push(i);
48
39
  }
49
-
50
40
  Object.entries(rowsByTreeDepth).forEach(([depthStr, {
51
41
  rows
52
42
  }]) => {
@@ -54,24 +44,19 @@ export const addTreeDataOptionsToDemoData = (data, options = {}) => {
54
44
  Object.values(rows).forEach(row => {
55
45
  const path = [];
56
46
  let previousRow = null;
57
-
58
47
  for (let k = depth; k >= 0; k -= 1) {
59
48
  let rowTemp;
60
-
61
49
  if (k === depth) {
62
50
  if (depth > 0) {
63
51
  row.parentIndex = Number(randomArrayItem(rowsByTreeDepth[depth - 1].rowIndexes));
64
52
  }
65
-
66
53
  rowTemp = row;
67
54
  } else {
68
55
  rowTemp = rowsByTreeDepth[k].rows[previousRow.parentIndex];
69
56
  }
70
-
71
57
  path.unshift(rowTemp.value[groupingField]);
72
58
  previousRow = rowTemp;
73
59
  }
74
-
75
60
  row.value.path = path;
76
61
  });
77
62
  });