fuse-importer 0.0.7-testing → 0.0.8-testing

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 (160) hide show
  1. package/lib/esm/Importer/common/Spreadsheet/components/inputs/index.d.ts +0 -1
  2. package/lib/esm/common/columnsValidations.d.ts +1 -1
  3. package/lib/esm/hooks/index.d.ts +0 -1
  4. package/lib/esm/types.d.ts +2 -2
  5. package/lib/main.js +18 -18
  6. package/package.json +2 -3
  7. package/lib/esm/Importer/ImporterWithContext.js +0 -63
  8. package/lib/esm/Importer/Matcher/EnumFieldsMatchers/EnumFieldMatcher/index.js +0 -68
  9. package/lib/esm/Importer/Matcher/EnumFieldsMatchers/EnumFieldMatcher/tableColumns.js +0 -58
  10. package/lib/esm/Importer/Matcher/EnumFieldsMatchers/EnumFieldMatcherContext.js +0 -21
  11. package/lib/esm/Importer/Matcher/EnumFieldsMatchers/index.js +0 -23
  12. package/lib/esm/Importer/Matcher/HeaderMatcher/index.js +0 -61
  13. package/lib/esm/Importer/Matcher/HeaderMatcher/tableColumns.js +0 -55
  14. package/lib/esm/Importer/Matcher/common/icons/index.js +0 -14
  15. package/lib/esm/Importer/Matcher/common/index.js +0 -39
  16. package/lib/esm/Importer/Matcher/common/types.js +0 -9
  17. package/lib/esm/Importer/Matcher/index.js +0 -22
  18. package/lib/esm/Importer/PreviewFirstTime.js +0 -81
  19. package/lib/esm/Importer/PreviewModeBanner.js +0 -19
  20. package/lib/esm/Importer/Review/AppResponseModal.js +0 -35
  21. package/lib/esm/Importer/Review/ReviewContextProvider.js +0 -315
  22. package/lib/esm/Importer/Review/ReviewWithContext.js +0 -33
  23. package/lib/esm/Importer/Review/index.js +0 -4
  24. package/lib/esm/Importer/Stepper/ConfirmCloseModal.js +0 -24
  25. package/lib/esm/Importer/Stepper/Step.js +0 -19
  26. package/lib/esm/Importer/Stepper/StepIndex.js +0 -27
  27. package/lib/esm/Importer/Stepper/StepperSubmitModal.js +0 -24
  28. package/lib/esm/Importer/Stepper/UnmatchedHeadersModal.js +0 -31
  29. package/lib/esm/Importer/Stepper/common/getEnumFieldValueMatchingsInitialValue.js +0 -33
  30. package/lib/esm/Importer/Stepper/common/icons.js +0 -18
  31. package/lib/esm/Importer/Stepper/index.js +0 -118
  32. package/lib/esm/Importer/TrialModeBanner.js +0 -22
  33. package/lib/esm/Importer/Uploader/DragAndDropImporter/DragAndDropImporter.styles.js +0 -11
  34. package/lib/esm/Importer/Uploader/DragAndDropImporter/ImporterDropzone.js +0 -123
  35. package/lib/esm/Importer/Uploader/DragAndDropImporter/ImporterSectionHeader/ImporterSectionHeader.styles.js +0 -11
  36. package/lib/esm/Importer/Uploader/DragAndDropImporter/ImporterSectionHeader/index.js +0 -44
  37. package/lib/esm/Importer/Uploader/DragAndDropImporter/backgrounds.js +0 -14
  38. package/lib/esm/Importer/Uploader/DragAndDropImporter/index.js +0 -45
  39. package/lib/esm/Importer/Uploader/HeaderButtons.js +0 -28
  40. package/lib/esm/Importer/Uploader/HeadersPreview.js +0 -44
  41. package/lib/esm/Importer/Uploader/UploaderContextProvider.js +0 -27
  42. package/lib/esm/Importer/Uploader/index.js +0 -13
  43. package/lib/esm/Importer/common/AppLoading.js +0 -24
  44. package/lib/esm/Importer/common/Footer.js +0 -17
  45. package/lib/esm/Importer/common/FuseApi.js +0 -48
  46. package/lib/esm/Importer/common/GlobalStyle.js +0 -7
  47. package/lib/esm/Importer/common/ImporterFonts.js +0 -5
  48. package/lib/esm/Importer/common/Spreadsheet/SpreadsheetContextProvider/filterMethods.js +0 -56
  49. package/lib/esm/Importer/common/Spreadsheet/SpreadsheetContextProvider/index.js +0 -176
  50. package/lib/esm/Importer/common/Spreadsheet/SpreadsheetContextProvider/useSpreadsheetFilter.js +0 -45
  51. package/lib/esm/Importer/common/Spreadsheet/SpreadsheetContextProvider/utils.js +0 -14
  52. package/lib/esm/Importer/common/Spreadsheet/common/index.js +0 -63
  53. package/lib/esm/Importer/common/Spreadsheet/common/types.js +0 -5
  54. package/lib/esm/Importer/common/Spreadsheet/components/FieldHeader.js +0 -66
  55. package/lib/esm/Importer/common/Spreadsheet/components/GlobalStyle.js +0 -9
  56. package/lib/esm/Importer/common/Spreadsheet/components/SpreadsheetData.js +0 -110
  57. package/lib/esm/Importer/common/Spreadsheet/components/SpreadsheetRowCheckboxes.js +0 -186
  58. package/lib/esm/Importer/common/Spreadsheet/components/SpreadsheetRowNumbers.js +0 -55
  59. package/lib/esm/Importer/common/Spreadsheet/components/ValidationProgress.js +0 -19
  60. package/lib/esm/Importer/common/Spreadsheet/components/fields/SpeadsheetAutocomplete.js +0 -43
  61. package/lib/esm/Importer/common/Spreadsheet/components/fields/SpreadsheetInput.js +0 -70
  62. package/lib/esm/Importer/common/Spreadsheet/components/fields/index.js +0 -108
  63. package/lib/esm/Importer/common/Spreadsheet/components/inputs/Boolean.js +0 -18
  64. package/lib/esm/Importer/common/Spreadsheet/components/inputs/EmailInput.js +0 -14
  65. package/lib/esm/Importer/common/Spreadsheet/components/inputs/EnumInput.js +0 -30
  66. package/lib/esm/Importer/common/Spreadsheet/components/inputs/FloatInput.js +0 -16
  67. package/lib/esm/Importer/common/Spreadsheet/components/inputs/IntegerInput.js +0 -16
  68. package/lib/esm/Importer/common/Spreadsheet/components/inputs/StringInput.js +0 -14
  69. package/lib/esm/Importer/common/Spreadsheet/components/inputs/index.js +0 -20
  70. package/lib/esm/Importer/common/Spreadsheet/hooks.js +0 -245
  71. package/lib/esm/Importer/common/Spreadsheet/index.js +0 -119
  72. package/lib/esm/Importer/common/Spreadsheet/styles.js +0 -16
  73. package/lib/esm/Importer/common/Spreadsheet/transformation/index.js +0 -47
  74. package/lib/esm/Importer/common/Spreadsheet/transformation/transformators.js +0 -204
  75. package/lib/esm/Importer/common/Spreadsheet/validation/index.js +0 -202
  76. package/lib/esm/Importer/common/Spreadsheet/validation/validators.js +0 -181
  77. package/lib/esm/Importer/common/icons/index.js +0 -18
  78. package/lib/esm/Importer/common/index.js +0 -13
  79. package/lib/esm/Importer/common/theme.js +0 -19
  80. package/lib/esm/Importer/common/utils.js +0 -100
  81. package/lib/esm/Importer/contexts/ImporterContextProvider.js +0 -247
  82. package/lib/esm/Importer/data/index.js +0 -152
  83. package/lib/esm/Importer/index.js +0 -28
  84. package/lib/esm/api/index.js +0 -93
  85. package/lib/esm/api/responseHandlers.js +0 -49
  86. package/lib/esm/common/AppLoadingContextProvider/AppLoadingUI.js +0 -26
  87. package/lib/esm/common/AppLoadingContextProvider/index.js +0 -25
  88. package/lib/esm/common/ConfirmationModal.js +0 -19
  89. package/lib/esm/common/Modal.js +0 -31
  90. package/lib/esm/common/Spinner.js +0 -41
  91. package/lib/esm/common/Table/Pagination/icons.js +0 -42
  92. package/lib/esm/common/Table/Pagination/index.js +0 -32
  93. package/lib/esm/common/Table/TableActions/DeleteSelectedRows.js +0 -50
  94. package/lib/esm/common/Table/TableActions/ExportData.js +0 -23
  95. package/lib/esm/common/Table/TableActions/FilterByErrors/FilterByErrors.js +0 -47
  96. package/lib/esm/common/Table/TableActions/FilterByErrors/FilterByErrors.styles.js +0 -24
  97. package/lib/esm/common/Table/TableActions/FilterByErrors/functions.js +0 -35
  98. package/lib/esm/common/Table/TableActions/FilterByErrors/index.js +0 -1
  99. package/lib/esm/common/Table/TableActions/RowFilters.js +0 -42
  100. package/lib/esm/common/Table/TableActions/SearchRows.js +0 -72
  101. package/lib/esm/common/Table/TableActions/TableActions.js +0 -35
  102. package/lib/esm/common/Table/TableActions/TableActions.styles.js +0 -18
  103. package/lib/esm/common/Table/TableActions/TransformedRecordsCount.js +0 -71
  104. package/lib/esm/common/Table/TableActions/common.js +0 -1
  105. package/lib/esm/common/Table/TableActions/hooks.js +0 -41
  106. package/lib/esm/common/Table/TableActions/icons.js +0 -17
  107. package/lib/esm/common/Table/TableActions/index.js +0 -1
  108. package/lib/esm/common/Table/TableDataProvider.js +0 -127
  109. package/lib/esm/common/Table/TableView/CustomScrollbar.d.ts +0 -2
  110. package/lib/esm/common/Table/TableView/CustomScrollbar.js +0 -34
  111. package/lib/esm/common/Table/TableView/TableHeaders.js +0 -69
  112. package/lib/esm/common/Table/TableView/TableRows/TableRow.js +0 -57
  113. package/lib/esm/common/Table/TableView/TableRows/index.js +0 -48
  114. package/lib/esm/common/Table/TableView/common/index.js +0 -37
  115. package/lib/esm/common/Table/TableView/index.js +0 -132
  116. package/lib/esm/common/Table/TableView/types.js +0 -1
  117. package/lib/esm/common/Table/icons.js +0 -15
  118. package/lib/esm/common/Table/index.js +0 -140
  119. package/lib/esm/common/Table/useReorderRows.js +0 -83
  120. package/lib/esm/common/Toast.js +0 -69
  121. package/lib/esm/common/TooltipProvider.js +0 -57
  122. package/lib/esm/common/buttons.js +0 -97
  123. package/lib/esm/common/columnsTransformations.js +0 -94
  124. package/lib/esm/common/columnsValidations.js +0 -687
  125. package/lib/esm/common/icons/index.js +0 -30
  126. package/lib/esm/common/index.js +0 -45
  127. package/lib/esm/common/inputs/Autocomplete.js +0 -110
  128. package/lib/esm/common/inputs/Checkbox.js +0 -53
  129. package/lib/esm/common/inputs/SelectMenu.js +0 -67
  130. package/lib/esm/common/inputs/TextInput.js +0 -89
  131. package/lib/esm/common/inputs/index.js +0 -5
  132. package/lib/esm/common/inputs/tooltip.js +0 -38
  133. package/lib/esm/common/logo.js +0 -13
  134. package/lib/esm/hooks/index.js +0 -16
  135. package/lib/esm/index.js +0 -218
  136. package/lib/esm/locales/de.js +0 -126
  137. package/lib/esm/locales/en.js +0 -126
  138. package/lib/esm/locales/es.js +0 -126
  139. package/lib/esm/locales/fr.js +0 -126
  140. package/lib/esm/locales/index.js +0 -4
  141. package/lib/esm/styled/fontsURL.js +0 -27
  142. package/lib/esm/styled/index.js +0 -3
  143. package/lib/esm/styled/theme/animations.js +0 -9
  144. package/lib/esm/styled/theme/colorPalette.js +0 -109
  145. package/lib/esm/styled/theme/debugCss.js +0 -16
  146. package/lib/esm/styled/theme/dimensionsCss.js +0 -20
  147. package/lib/esm/styled/theme/fontCss.js +0 -17
  148. package/lib/esm/styled/theme/globalCss.js +0 -26
  149. package/lib/esm/styled/theme/index.js +0 -33
  150. package/lib/esm/styled/theme/layoutCss.js +0 -26
  151. package/lib/esm/styled/theme/mediaQueries.js +0 -4
  152. package/lib/esm/styled/theme/positionCss.js +0 -27
  153. package/lib/esm/styled/theme/textCss.js +0 -18
  154. package/lib/esm/styled/theme/textStyles.js +0 -27
  155. package/lib/esm/styled/themeType.js +0 -6
  156. package/lib/esm/styled/utils.js +0 -17
  157. package/lib/esm/types.js +0 -65
  158. package/lib/esm/utils/hooks/useWindowSize.js +0 -23
  159. package/lib/esm/utils/hooks.js +0 -1
  160. package/lib/esm/utils/index.js +0 -37
@@ -1,687 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
38
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
39
- if (ar || !(i in from)) {
40
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
41
- ar[i] = from[i];
42
- }
43
- }
44
- return to.concat(ar || Array.prototype.slice.call(from));
45
- };
46
- import * as yup from "yup";
47
- import { FieldTypes, mutableValidationTypes, mutableTransformationTypes, } from "../types";
48
- var commonValidations = [
49
- {
50
- value: "regex",
51
- label: "Must Match Regex",
52
- options: [
53
- {
54
- type: "text",
55
- key: "pattern",
56
- tooltip: "Regex Pattern",
57
- },
58
- ],
59
- },
60
- ];
61
- var uniqueValidation = [
62
- { value: "unique_case_sensitive", label: "Must be Unique (case sensitive)" },
63
- {
64
- value: "unique_case_insensitive",
65
- label: "Must be Unique (case insensitive)",
66
- },
67
- ];
68
- var containsValidations = [
69
- {
70
- value: "cannot_contain",
71
- label: "Cannot Contain",
72
- options: [
73
- {
74
- type: "text",
75
- key: "pattern",
76
- tooltip: "It must be a word that you want to exclude",
77
- },
78
- ],
79
- },
80
- {
81
- value: "contain",
82
- label: "Must Contain",
83
- options: [
84
- {
85
- type: "text",
86
- key: "pattern",
87
- tooltip: "It must be a word to be included mandatorily",
88
- },
89
- ],
90
- },
91
- ];
92
- var stringValidations = __spreadArray(__spreadArray(__spreadArray(__spreadArray([], containsValidations, true), [
93
- {
94
- value: "max_length",
95
- label: "Length (shorter than)",
96
- options: [
97
- {
98
- type: "number",
99
- key: "max_length",
100
- tooltip: "Number of characters",
101
- },
102
- ],
103
- },
104
- {
105
- value: "min_length",
106
- label: "Length (longer than)",
107
- options: [
108
- {
109
- type: "number",
110
- key: "min_length",
111
- tooltip: "Number of characters",
112
- },
113
- ],
114
- },
115
- {
116
- value: "length_exactly",
117
- label: "Length (exactly)",
118
- options: [
119
- {
120
- type: "number",
121
- key: "length",
122
- tooltip: "Number of characters",
123
- },
124
- ],
125
- }
126
- ], false), uniqueValidation, true), commonValidations, true);
127
- var numericValidations = __spreadArray(__spreadArray([
128
- {
129
- value: "less_than",
130
- label: "Must Be Less Than",
131
- options: [
132
- {
133
- type: "number",
134
- key: "max",
135
- tooltip: "The max allowed value",
136
- },
137
- ],
138
- },
139
- {
140
- value: "greater_than",
141
- label: "Must Be Greater Than",
142
- options: [
143
- {
144
- type: "number",
145
- key: "min",
146
- tooltip: "The minimum allowed value",
147
- },
148
- ],
149
- },
150
- { value: "even", label: "Must be Even" },
151
- { value: "odd", label: "Must be Odd" }
152
- ], uniqueValidation, true), commonValidations, true);
153
- var emailValidations = __spreadArray([
154
- { value: "email", label: "Must be an email", isDefaultValidation: true }
155
- ], stringValidations, true);
156
- var urlValidations = __spreadArray([
157
- { value: "url", label: "Must be a URL", isDefaultValidation: true }
158
- ], stringValidations, true);
159
- var booleanValidations = [
160
- {
161
- value: "boolean",
162
- label: "Must be True or False",
163
- isDefaultValidation: true,
164
- },
165
- ];
166
- var structuredDataValidations = __spreadArray([], uniqueValidation, true);
167
- var dateValidations = __spreadArray(__spreadArray([], uniqueValidation, true), [
168
- {
169
- value: "before_date",
170
- label: "Must Be Before Date",
171
- options: [
172
- {
173
- type: "date",
174
- key: "max",
175
- tooltip: "The maximum allowed date",
176
- },
177
- ],
178
- },
179
- {
180
- value: "after_date",
181
- label: "Must Be After Date",
182
- options: [
183
- {
184
- type: "date",
185
- key: "min",
186
- tooltip: "The minimum allowed date",
187
- },
188
- ],
189
- },
190
- ], false);
191
- export var validationsByColumnType = {
192
- string: stringValidations,
193
- integer: __spreadArray([
194
- {
195
- value: "integer",
196
- label: "Must be an integer",
197
- isDefaultValidation: true,
198
- }
199
- ], numericValidations, true),
200
- float: __spreadArray([
201
- {
202
- value: "float",
203
- label: "Must be a float",
204
- isDefaultValidation: true,
205
- }
206
- ], numericValidations, true),
207
- email: emailValidations,
208
- enum: structuredDataValidations,
209
- url: urlValidations,
210
- boolean: booleanValidations,
211
- date: dateValidations,
212
- datetime: dateValidations,
213
- time: uniqueValidation,
214
- };
215
- export var validationsByType = Object.values(validationsByColumnType)
216
- .reduce(function (acc, arr) { return acc.concat(arr); }, [])
217
- .reduce(function (result, p) {
218
- result[p.value] = p;
219
- return result;
220
- }, {});
221
- export var availableColumnTypes = Object.keys(validationsByColumnType);
222
- export var datePatterns = [
223
- {
224
- value: "MM/dd/yyyy",
225
- label: "MM/dd/yyyy (e.g. 08/31/2023)",
226
- },
227
- {
228
- value: "yyyy-MM-dd",
229
- label: "yyyy-MM-dd (e.g. 2023-08-31",
230
- },
231
- {
232
- value: "dd/MM/yyyy",
233
- label: "dd/MM/yyyy (e.g. 31/08/2023",
234
- },
235
- {
236
- value: "MM-dd-yyyy",
237
- label: "MM-dd-yyyy (e.g. 08-31-2023)",
238
- },
239
- {
240
- value: "yyyy/MM/dd",
241
- label: "yyyy/MM/dd (e.g. 2023/08/31)",
242
- },
243
- {
244
- value: "dd-MMMM-yyyy",
245
- label: "dd-MMMM-yyyy (e.g. 31-August-2023)",
246
- },
247
- {
248
- value: "MMMM dd, yyyy",
249
- label: "MMMM dd, yyyy (e.g. August 31, 2023)",
250
- },
251
- {
252
- value: "dd/MM/yy",
253
- label: "dd/MM/yy (e.g. 31/08/23)",
254
- },
255
- {
256
- value: "MMMM dd, yy",
257
- label: "MMMM dd, yy (e.g. August 31, 23)",
258
- },
259
- {
260
- value: "yy/MM/dd",
261
- label: "yy/MM/dd (e.g. 23/08/31)",
262
- },
263
- {
264
- value: "EEEE MMMM yyyy",
265
- label: "Day MMMM Year (e.g. Tuesday August 2023)",
266
- },
267
- {
268
- value: "EEEE dd MMMM yyyy",
269
- label: "Day Day-of-Month Month Year (e.g. Tuesday 08 August 2023)",
270
- },
271
- {
272
- value: "MM-dd-yy",
273
- label: "MM-dd-yy (e.g. 01-15-90)",
274
- },
275
- {
276
- value: "M-dd-yy",
277
- label: "M-dd-yy (e.g. 1-15-90)",
278
- },
279
- {
280
- value: "dd-MM-yy",
281
- label: "dd-MM-yy (e.g. 15-01-90)",
282
- },
283
- {
284
- value: "dd-MM-yyyy",
285
- label: "dd-MM-yyyy (e.g. 15-01-1990)",
286
- },
287
- {
288
- value: "dd-M-yy",
289
- label: "dd-M-yy (e.g. 15-1-90)",
290
- },
291
- {
292
- value: "MM/dd/yy",
293
- label: "MM/dd/yy (e.g. 01/15/90)",
294
- },
295
- {
296
- value: "M/dd/yy",
297
- label: "M/dd/yy (e.g. 1/15/90)",
298
- },
299
- {
300
- value: "MM.dd.yy",
301
- label: "MM.dd.yy (e.g. 01.15.90)",
302
- },
303
- {
304
- value: "M.dd.yy",
305
- label: "M.dd.yy (e.g. 1.15.90)",
306
- },
307
- {
308
- value: "MMM-dd-yy",
309
- label: "MMM-dd-yy (e.g. Jan-15-90)",
310
- },
311
- {
312
- value: "MMMM-dd-yy",
313
- label: "MMMM-dd-yy (e.g. January-15-90)",
314
- },
315
- {
316
- value: "dd-MMM-yy",
317
- label: "dd-MMM-yy (e.g. 15-Jan-90)",
318
- },
319
- {
320
- value: "yyyy-M-dd",
321
- label: "yyyy-M-dd (e.g. 1990-1-15)",
322
- },
323
- {
324
- value: "M-dd-yyyy",
325
- label: "M-dd-yyyy (e.g. 1-15-1990)",
326
- },
327
- {
328
- value: "M/dd/yyyy",
329
- label: "M/dd/yyyy (e.g. 1/15/1990)",
330
- },
331
- {
332
- value: "dd/M/yyyy",
333
- label: "dd/M/yyyy (e.g. 15/1/1990)",
334
- },
335
- {
336
- value: "yyyy/M/dd",
337
- label: "yyyy/M/dd (e.g. 1990/1/15)",
338
- },
339
- {
340
- value: "dd.MM.yyyy",
341
- label: "dd.MM.yyyy (e.g. 15.01.1990)",
342
- },
343
- {
344
- value: "dd.M.yyyy",
345
- label: "dd.M.yyyy (e.g. 15.1.1990)",
346
- },
347
- {
348
- value: "yyyy.MM.dd",
349
- label: "yyyy.MM.dd (e.g. 1990.01.15)",
350
- },
351
- {
352
- value: "yyyy.M.dd",
353
- label: "yyyy.M.dd (e.g. 1990.1.15)",
354
- },
355
- {
356
- value: "MMM. dd, yyyy",
357
- label: "MMM. dd, yyyy (e.g. Jan. 15, 1990)",
358
- },
359
- {
360
- value: "dd MMM. yyyy",
361
- label: "dd MMM. yyyy(e.g. 15 Jan. 1990)",
362
- },
363
- {
364
- value: "dd. MMM. yyyy",
365
- label: "dd. MMM. yyyy (e.g. 15. Jan. 1990)",
366
- },
367
- {
368
- value: "EEE, MMM dd, yyyy",
369
- label: "EEE, MMM dd, yyyy (e.g. Mon, Jan 15, 1990)",
370
- },
371
- ];
372
- export var dateTimePatterns = [
373
- {
374
- value: "MM/dd/yyyy HH:mm",
375
- label: "MM/dd/yyyy HH:mm (e.g. 08/31/2023 12:30)",
376
- },
377
- {
378
- value: "MM/dd/yyyy HH:mm:ss",
379
- label: "MM/dd/yyyy HH:mm:ss (e.g. 08/31/2023 12:30:45)",
380
- },
381
- {
382
- value: "MM/dd/yyyy HH:mm:ss.SSS",
383
- label: "MM/dd/yyyy HH:mm:ss.SSS (e.g. 08/31/2023 12:30:45.500)",
384
- },
385
- {
386
- value: "MM/dd/yyyy h:mm a",
387
- label: "MM/dd/yyyy h:mm a (e.g. 08/31/2023 1:30 PM)",
388
- },
389
- {
390
- value: "MM/dd/yyyy h:mm:ss a",
391
- label: "MM/dd/yyyy h:mm:ss a (e.g. 08/31/2023 1:30:45 PM)",
392
- },
393
- {
394
- value: "MMM dd HH:mm:ss yyyy",
395
- label: "MMM dd HH:mm:ss yyyy (e.g. Jan 15 00:34:59 1990)",
396
- },
397
- {
398
- value: "dd MMM HH:mm:ss yyyy",
399
- label: "dd MMM HH:mm:ss yyyy (e.g. 15 Jan 00:34:59 1990)",
400
- },
401
- {
402
- value: "MM/dd/yyyy h:mm:ss.SSS a",
403
- label: "MM/dd/yyyy h:mm:ss.SSS a (e.g. 08/31/2023 1:30:45.500 PM)",
404
- },
405
- {
406
- value: "MMMM dd, yyyy HH:mm",
407
- label: "MMMM dd, yyyy HH:mm (e.g. August 31, 2023 12:30)",
408
- },
409
- {
410
- value: "MMMM dd, yyyy HH:mm:ss",
411
- label: "MMMM dd, yyyy HH:mm:ss (e.g. August 31, 2023 12:30:45)",
412
- },
413
- {
414
- value: "MMMM dd, yyyy h:mm a",
415
- label: "MMMM dd, yyyy h:mm a (e.g. August 31, 2023 1:30 PM)",
416
- },
417
- {
418
- value: "MMMM dd, yyyy h:mm:ss a",
419
- label: "MMMM dd, yyyy h:mm:ss a (e.g. August 31, 2023 1:30:45 PM)",
420
- },
421
- {
422
- value: "MMMM dd, yyyy h:mm:ss.SSS a",
423
- label: "MMMM dd, yyyy h:mm:ss.SSS a (e.g. August 31, 2023 1:30:45.500 PM)",
424
- },
425
- {
426
- value: "MM-dd-yy HH:mm",
427
- label: "MM-dd-yy HH:mm (e.g. 01-15-90 10:10)",
428
- },
429
- {
430
- value: "dd-MM-yyyy HH:mm",
431
- label: "dd-MM-yyyy HH:mm (e.g. 15-01-1990 10:10)",
432
- },
433
- {
434
- value: "dd/MM/yyyy HH:mm",
435
- label: "dd/MM/yyyy HH:mm (e.g. 15/01/1990 10:10)",
436
- },
437
- {
438
- value: "dd-MM-yyyy h:mm a",
439
- label: "dd-MM-yyyy h:mm a (e.g. 15-01-1990 10:10 AM)",
440
- },
441
- {
442
- value: "dd/MM/yyyy h:mm a",
443
- label: "dd/MM/yyyy h:mm a (e.g. 15/01/1990 10:10 AM)",
444
- },
445
- {
446
- value: "MM/dd/yy HH:mm",
447
- label: "MM/dd/yy HH:mm (e.g. 01/15/90 10:10)",
448
- },
449
- {
450
- value: "MM/dd/yy HH:mm:ss",
451
- label: "MM/dd/yy HH:mm:ss (e.g. 01/15/90 10:10:14)",
452
- },
453
- {
454
- value: "MM/dd/yy h:mm:ss a",
455
- label: "MM/dd/yy h:mm:ss a (e.g. 01/15/90 5:10:14 AM)",
456
- },
457
- {
458
- value: "yyyy/MM/dd HH:mm",
459
- label: "yyyy/MM/dd HH:mm (e.g. 1990/01/15 10:10)",
460
- },
461
- {
462
- value: "MM-dd-yyyy HH:mm",
463
- label: "MM-dd-yyyy HH:mm (e.g. 01-15-1990 10:10)",
464
- },
465
- {
466
- value: "yyyy-MM-dd HH:mm",
467
- label: "yyyy-MM-dd HH:mm (e.g. 1990-01-15 10:10)",
468
- },
469
- {
470
- value: "yyyy-MM-dd'T'HH:mm:ss.SSSZ",
471
- label: "ISO 8601 (e.g. 1990-01-15T00:34:55.020+09:30)",
472
- },
473
- {
474
- value: "yyyy-MM-dd'T'HH:mm:ss.SSS",
475
- label: "ISO 8601 without timezone offset (e.g. 1990-01-15T00:34:55.020)",
476
- },
477
- {
478
- value: "yyyy-MM-dd'T'HH:mmZ",
479
- label: "yyyy-MM-dd'T'HH:mm+offset (e.g. 1990-01-15T10:10+09:30)",
480
- },
481
- {
482
- value: "yyyy-MM-dd'T'HH:mm",
483
- label: "yyyy-MM-dd'T'HH:mm (e.g. 1990-01-15T10:10)",
484
- },
485
- ];
486
- export var timePatterns = [
487
- {
488
- value: "HH:mm",
489
- label: "HH:mm (e.g. 12:30)",
490
- },
491
- {
492
- value: "HH:mm:ss",
493
- label: "HH:mm:ss (e.g. 12:30:45)",
494
- },
495
- {
496
- value: "hh:mm a",
497
- label: "hh:mm a (e.g. 01:30 PM)",
498
- },
499
- {
500
- value: "hh:mm:ss a",
501
- label: "hh:mm:ss a (e.g. 01:30:45 PM)",
502
- },
503
- ];
504
- export var allowedPatterns = {
505
- date: datePatterns,
506
- datetime: dateTimePatterns,
507
- time: timePatterns,
508
- };
509
- export var patternsColumnTypes = Object.keys(allowedPatterns);
510
- var iso8601Regex = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/;
511
- var validationsSchema = yup
512
- .mixed()
513
- .test("validations", "Invalid validations", function (value) {
514
- var isAnArray = Array.isArray(value);
515
- if (isAnArray) {
516
- for (var _i = 0, value_1 = value; _i < value_1.length; _i++) {
517
- var validation = value_1[_i];
518
- var validation_type = validation.validation_type, options = validation.options;
519
- var optionsPropertyIsNotRequiredFor = [
520
- "unique_case_insensitive",
521
- "unique_case_sensitive",
522
- "integer",
523
- "boolean",
524
- "odd",
525
- "even",
526
- "email",
527
- "url",
528
- "float",
529
- ];
530
- if (mutableValidationTypes.includes(validation_type)) {
531
- if (optionsPropertyIsNotRequiredFor.includes(validation_type)) {
532
- continue;
533
- }
534
- if (!options) {
535
- return this.createError({
536
- path: "validations",
537
- message: "Options is required for this validation type",
538
- });
539
- }
540
- var min = options.min, max = options.max;
541
- var minOptionDoesNotMatchISO = min && !min.match(iso8601Regex);
542
- var maxOptionDoesNotMatchISO = max && !max.match(iso8601Regex);
543
- if (minOptionDoesNotMatchISO || maxOptionDoesNotMatchISO) {
544
- return this.createError({
545
- path: "validations",
546
- message: "Invalid ISO 8601 format for min or max",
547
- });
548
- }
549
- }
550
- else {
551
- return this.createError({
552
- path: "validations",
553
- message: "".concat(validation_type, " is not a valid validation type. Please check the values you inserted."),
554
- });
555
- }
556
- }
557
- return true;
558
- }
559
- var arrayIsNotDefined = !["undefined", "null"].includes(typeof value);
560
- if (arrayIsNotDefined && !isAnArray) {
561
- return this.createError({
562
- path: "validations",
563
- message: "Validations must be an array",
564
- });
565
- }
566
- return true;
567
- });
568
- var transformationsOptionsPropIsRequiredFor = [
569
- "prefix",
570
- "number_of_decimals",
571
- ];
572
- var transformationsSchema = yup
573
- .array()
574
- .of(yup.object().shape({
575
- transformation_type: yup
576
- .string()
577
- .oneOf(mutableTransformationTypes)
578
- .required(),
579
- options: yup.mixed().when("transformation_type", {
580
- is: function (type) {
581
- return transformationsOptionsPropIsRequiredFor.includes(type);
582
- },
583
- then: yup
584
- .object()
585
- .required("Options is required for this transformation type"),
586
- }),
587
- }))
588
- .test("transformations", "Invalid transformations", function (value, context) {
589
- var isAnArray = Array.isArray(value);
590
- if (isAnArray) {
591
- for (var _i = 0, value_2 = value; _i < value_2.length; _i++) {
592
- var transformation = value_2[_i];
593
- var transformation_type = transformation.transformation_type;
594
- // if user is selecting autoformat (for date, datetime and time) but has not
595
- // defined pattern, it should throw an error
596
- if (transformation_type === "autoformat") {
597
- var parentRecord = context.parent;
598
- if (!(parentRecord === null || parentRecord === void 0 ? void 0 : parentRecord.pattern)) {
599
- var columnType = parentRecord.column_type;
600
- var availablePatternsForColumnType = null;
601
- var getAvailablePatterns = function (patterns) {
602
- var patternValues = patterns.map(function (pattern) { return pattern.value; });
603
- return patternValues.join(", ");
604
- };
605
- switch (columnType) {
606
- case "date":
607
- availablePatternsForColumnType = getAvailablePatterns(datePatterns);
608
- break;
609
- case "datetime":
610
- availablePatternsForColumnType = getAvailablePatterns(dateTimePatterns);
611
- break;
612
- case "time":
613
- availablePatternsForColumnType = getAvailablePatterns(timePatterns);
614
- break;
615
- }
616
- return this.createError({
617
- path: "transformations",
618
- message: "The selected transformation type requires you to specify a pattern to your column. Available patterns for your column_type: ".concat(availablePatternsForColumnType),
619
- });
620
- }
621
- }
622
- if (!mutableTransformationTypes.includes(transformation_type)) {
623
- return this.createError({
624
- path: "transformations",
625
- message: "".concat(transformation_type, " is not a valid transformation type. Please check the values you inserted."),
626
- });
627
- }
628
- }
629
- return true;
630
- }
631
- var arrayIsNotDefined = !["undefined", "null"].includes(typeof value);
632
- if (arrayIsNotDefined && !isAnArray) {
633
- return this.createError({
634
- path: "validations",
635
- message: "Validations must be an array",
636
- });
637
- }
638
- return true;
639
- });
640
- var columnSchema = yup.object().shape({
641
- column_type: yup.string().oneOf(availableColumnTypes).required(),
642
- internal_key: yup.string().required(),
643
- label: yup.string().required(),
644
- required: yup.boolean().required(),
645
- validations: validationsSchema,
646
- transformations: transformationsSchema,
647
- });
648
- var dateColumnSchema = columnSchema.shape({
649
- pattern: yup.string().oneOf(datePatterns.map(function (p) { return p.value; })),
650
- });
651
- var dateTimeColumnSchema = columnSchema.shape({
652
- pattern: yup.string().oneOf(dateTimePatterns.map(function (p) { return p.value; })),
653
- });
654
- var timeColumnSchema = columnSchema.shape({
655
- pattern: yup.string().oneOf(timePatterns.map(function (p) { return p.value; })),
656
- });
657
- var enumColumnSchema = columnSchema.shape({
658
- values: yup.array().of(yup.string()).min(1).required(),
659
- });
660
- export var validateColumn = function (columnData) { return __awaiter(void 0, void 0, void 0, function () {
661
- var schema, error_1;
662
- return __generator(this, function (_a) {
663
- switch (_a.label) {
664
- case 0:
665
- schema = columnData.column_type === FieldTypes.date
666
- ? dateColumnSchema
667
- : columnData.column_type === FieldTypes.datetime
668
- ? dateTimeColumnSchema
669
- : columnData.column_type === FieldTypes.time
670
- ? timeColumnSchema
671
- : columnData.column_type === FieldTypes.enum
672
- ? enumColumnSchema
673
- : columnSchema;
674
- _a.label = 1;
675
- case 1:
676
- _a.trys.push([1, 3, , 4]);
677
- return [4 /*yield*/, schema.validate(columnData, { abortEarly: true })];
678
- case 2:
679
- _a.sent();
680
- return [3 /*break*/, 4];
681
- case 3:
682
- error_1 = _a.sent();
683
- throw new Error("Error on custom column creation: ".concat(error_1.message));
684
- case 4: return [2 /*return*/];
685
- }
686
- });
687
- }); };