@nordcraft/search 1.0.43 → 1.0.45

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 (80) hide show
  1. package/dist/problems.worker.js +4 -2
  2. package/dist/problems.worker.js.map +1 -1
  3. package/dist/rules/actions/legacyActionRule.fix.js +140 -0
  4. package/dist/rules/actions/legacyActionRule.fix.js.map +1 -0
  5. package/dist/rules/actions/legacyActionRule.js +3 -144
  6. package/dist/rules/actions/legacyActionRule.js.map +1 -1
  7. package/dist/rules/actions/legacyActionRule.test.js +4 -3
  8. package/dist/rules/actions/legacyActionRule.test.js.map +1 -1
  9. package/dist/rules/actions/noReferenceProjectActionRule.js +33 -40
  10. package/dist/rules/actions/noReferenceProjectActionRule.js.map +1 -1
  11. package/dist/rules/apis/noReferenceApiRule.js +7 -2
  12. package/dist/rules/apis/noReferenceApiRule.js.map +1 -1
  13. package/dist/rules/apis/noReferenceApiRule.test.js +65 -1
  14. package/dist/rules/apis/noReferenceApiRule.test.js.map +1 -1
  15. package/dist/rules/attributes/noReferenceAttributeRule.js +5 -1
  16. package/dist/rules/attributes/noReferenceAttributeRule.js.map +1 -1
  17. package/dist/rules/attributes/noReferenceAttributeRule.test.js +33 -1
  18. package/dist/rules/attributes/noReferenceAttributeRule.test.js.map +1 -1
  19. package/dist/rules/components/noReferenceComponentRule.js +18 -28
  20. package/dist/rules/components/noReferenceComponentRule.js.map +1 -1
  21. package/dist/rules/events/duplicateEventTriggerRule.js +2 -1
  22. package/dist/rules/events/duplicateEventTriggerRule.js.map +1 -1
  23. package/dist/rules/events/noReferenceEventRule.js +6 -2
  24. package/dist/rules/events/noReferenceEventRule.js.map +1 -1
  25. package/dist/rules/events/noReferenceEventRule.test.js +57 -1
  26. package/dist/rules/events/noReferenceEventRule.test.js.map +1 -1
  27. package/dist/rules/formulas/legacyFormulaRule.fix.js +574 -0
  28. package/dist/rules/formulas/legacyFormulaRule.fix.js.map +1 -0
  29. package/dist/rules/formulas/legacyFormulaRule.js +5 -580
  30. package/dist/rules/formulas/legacyFormulaRule.js.map +1 -1
  31. package/dist/rules/formulas/noReferenceComponentFormulaRule.js +8 -1
  32. package/dist/rules/formulas/noReferenceComponentFormulaRule.js.map +1 -1
  33. package/dist/rules/formulas/noReferenceProjectFormulaRule.js +63 -72
  34. package/dist/rules/formulas/noReferenceProjectFormulaRule.js.map +1 -1
  35. package/dist/rules/noReferenceNodeRule.js +22 -0
  36. package/dist/rules/noReferenceNodeRule.js.map +1 -0
  37. package/dist/rules/noReferenceNodeRule.test.js +131 -0
  38. package/dist/rules/noReferenceNodeRule.test.js.map +1 -0
  39. package/dist/rules/style/invalidStyleSyntaxRule.js +28 -0
  40. package/dist/rules/style/invalidStyleSyntaxRule.js.map +1 -0
  41. package/dist/rules/style/invalidStyleSyntaxRule.test.js +100 -0
  42. package/dist/rules/style/invalidStyleSyntaxRule.test.js.map +1 -0
  43. package/dist/searchProject.js +57 -16
  44. package/dist/searchProject.js.map +1 -1
  45. package/dist/util/removeUnused.fix.js +3 -0
  46. package/dist/util/removeUnused.fix.js.map +1 -0
  47. package/package.json +4 -3
  48. package/src/problems.worker.ts +4 -2
  49. package/src/rules/actions/legacyActionRule.fix.ts +157 -0
  50. package/src/rules/actions/legacyActionRule.test.ts +4 -3
  51. package/src/rules/actions/legacyActionRule.ts +3 -159
  52. package/src/rules/actions/noReferenceProjectActionRule.ts +39 -47
  53. package/src/rules/apis/noReferenceApiRule.test.ts +67 -1
  54. package/src/rules/apis/noReferenceApiRule.ts +9 -2
  55. package/src/rules/attributes/noReferenceAttributeRule.test.ts +35 -1
  56. package/src/rules/attributes/noReferenceAttributeRule.ts +7 -2
  57. package/src/rules/components/noReferenceComponentRule.ts +23 -34
  58. package/src/rules/events/duplicateEventTriggerRule.ts +2 -1
  59. package/src/rules/events/noReferenceEventRule.test.ts +59 -1
  60. package/src/rules/events/noReferenceEventRule.ts +8 -3
  61. package/src/rules/formulas/legacyFormulaRule.fix.ts +661 -0
  62. package/src/rules/formulas/legacyFormulaRule.ts +9 -670
  63. package/src/rules/formulas/noReferenceComponentFormulaRule.ts +15 -3
  64. package/src/rules/formulas/noReferenceProjectFormulaRule.ts +70 -77
  65. package/src/rules/noReferenceNodeRule.test.ts +140 -0
  66. package/src/rules/noReferenceNodeRule.ts +27 -0
  67. package/src/rules/style/invalidStyleSyntaxRule.test.ts +106 -0
  68. package/src/rules/style/invalidStyleSyntaxRule.ts +35 -0
  69. package/src/searchProject.ts +66 -22
  70. package/src/types.d.ts +33 -10
  71. package/src/util/removeUnused.fix.ts +5 -0
  72. package/dist/memos/getAllCustomPropertiesBySyntax.js +0 -43
  73. package/dist/memos/getAllCustomPropertiesBySyntax.js.map +0 -1
  74. package/dist/rules/style-variables/ambiguousStyleVariableSyntaxRule.js +0 -50
  75. package/dist/rules/style-variables/ambiguousStyleVariableSyntaxRule.js.map +0 -1
  76. package/dist/rules/style-variables/ambiguousStyleVariableSyntaxRule.test.js +0 -265
  77. package/dist/rules/style-variables/ambiguousStyleVariableSyntaxRule.test.js.map +0 -1
  78. package/src/memos/getAllCustomPropertiesBySyntax.ts +0 -68
  79. package/src/rules/style-variables/ambiguousStyleVariableSyntaxRule.test.ts +0 -278
  80. package/src/rules/style-variables/ambiguousStyleVariableSyntaxRule.ts +0 -65
@@ -0,0 +1,574 @@
1
+ import { omitKeys, set } from '@nordcraft/core/dist/utils/collections';
2
+ import { ARRAY_ARGUMENT_MAPPINGS, PREDICATE_ARGUMENT_MAPPINGS, renameArguments, } from '../../util/helpers';
3
+ export const replaceLegacyFormula = (data) => {
4
+ switch (data.value.name) {
5
+ // Known legacy formulas first
6
+ case 'AND': {
7
+ const { name, ...legacyAndFormula } = data.value;
8
+ const andFormula = {
9
+ ...legacyAndFormula,
10
+ type: 'and',
11
+ arguments: legacyAndFormula.arguments.map((a) => {
12
+ const { name, ...argument } = a;
13
+ return argument;
14
+ }),
15
+ };
16
+ return set(data.files, data.path, andFormula);
17
+ }
18
+ case 'CONCAT': {
19
+ const newConcatFormula = {
20
+ ...data.value,
21
+ name: '@toddle/concatenate',
22
+ display_name: 'Concatenate',
23
+ };
24
+ return set(data.files, data.path, newConcatFormula);
25
+ }
26
+ case 'DEFAULT': {
27
+ const newDefaultFormula = {
28
+ ...data.value,
29
+ name: '@toddle/defaultTo',
30
+ // The old DEFAULT formula did not support variableArguments
31
+ variableArguments: true,
32
+ display_name: 'Default to',
33
+ };
34
+ return set(data.files, data.path, newDefaultFormula);
35
+ }
36
+ case 'DELETE': {
37
+ const newDeleteFormula = {
38
+ ...data.value,
39
+ name: '@toddle/deleteKey',
40
+ display_name: 'Delete',
41
+ };
42
+ return set(data.files, data.path, newDeleteFormula);
43
+ }
44
+ case 'DROP_LAST': {
45
+ const newDropLastFormula = {
46
+ ...data.value,
47
+ name: '@toddle/dropLast',
48
+ display_name: 'Drop Last',
49
+ arguments: renameArguments(ARRAY_ARGUMENT_MAPPINGS, data.value.arguments),
50
+ };
51
+ return set(data.files, data.path, newDropLastFormula);
52
+ }
53
+ case 'EQ': {
54
+ const newEqualsFormula = {
55
+ ...data.value,
56
+ name: '@toddle/equals',
57
+ display_name: 'Equals',
58
+ };
59
+ return set(data.files, data.path, newEqualsFormula);
60
+ }
61
+ case 'FIND INDEX': {
62
+ const newFindIndexFormula = {
63
+ ...data.value,
64
+ name: '@toddle/findIndex',
65
+ display_name: 'Find index',
66
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
67
+ };
68
+ return set(data.files, data.path, newFindIndexFormula);
69
+ }
70
+ case 'FLAT': {
71
+ const newFlattenFormula = {
72
+ ...data.value,
73
+ name: '@toddle/flatten',
74
+ display_name: 'Flatten',
75
+ arguments: renameArguments(ARRAY_ARGUMENT_MAPPINGS, data.value.arguments),
76
+ };
77
+ return set(data.files, data.path, newFlattenFormula);
78
+ }
79
+ case 'GT': {
80
+ const newGreaterThanFormula = {
81
+ ...data.value,
82
+ name: '@toddle/greaterThan',
83
+ display_name: 'Greater than',
84
+ };
85
+ return set(data.files, data.path, newGreaterThanFormula);
86
+ }
87
+ case 'GTE': {
88
+ const newGreaterOrEqualFormula = {
89
+ ...data.value,
90
+ name: '@toddle/greaterOrEqueal',
91
+ display_name: 'Greater or equal',
92
+ };
93
+ return set(data.files, data.path, newGreaterOrEqualFormula);
94
+ }
95
+ case 'GROUP_BY': {
96
+ const newGroupbyFormula = {
97
+ ...data.value,
98
+ name: '@toddle/groupBy',
99
+ display_name: 'Group by',
100
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
101
+ };
102
+ return set(data.files, data.path, newGroupbyFormula);
103
+ }
104
+ case 'IF': {
105
+ const legacyIfFormula = omitKeys(data.value, ['arguments', 'name']);
106
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
107
+ const ifArguments = data.value.arguments ?? [];
108
+ const switchFormula = {
109
+ ...legacyIfFormula,
110
+ type: 'switch',
111
+ cases: [
112
+ {
113
+ condition: ifArguments[0]?.formula,
114
+ formula: ifArguments[1]?.formula,
115
+ },
116
+ ],
117
+ default: ifArguments[2]?.formula,
118
+ };
119
+ return set(data.files, data.path, switchFormula);
120
+ }
121
+ case 'INDEX OF': {
122
+ const newIndexofFormula = {
123
+ ...data.value,
124
+ name: '@toddle/indexOf',
125
+ display_name: 'Index of',
126
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
127
+ };
128
+ return set(data.files, data.path, newIndexofFormula);
129
+ }
130
+ case 'JSON_PARSE': {
131
+ const newJsonParseFormula = {
132
+ ...data.value,
133
+ name: '@toddle/parseJSON',
134
+ display_name: 'Parse JSON',
135
+ arguments: renameArguments({ Input: 'JSON string' }, data.value.arguments),
136
+ };
137
+ return set(data.files, data.path, newJsonParseFormula);
138
+ }
139
+ case 'KEY_BY': {
140
+ const newKeyByFormula = {
141
+ ...data.value,
142
+ name: '@toddle/keyBy',
143
+ display_name: 'Key by',
144
+ arguments: renameArguments({
145
+ ...ARRAY_ARGUMENT_MAPPINGS,
146
+ 'Key formula': 'Formula',
147
+ }, data.value.arguments),
148
+ };
149
+ return set(data.files, data.path, newKeyByFormula);
150
+ }
151
+ case 'LIST': {
152
+ const newArrayFormula = {
153
+ type: 'array',
154
+ arguments: data.value.arguments,
155
+ };
156
+ return set(data.files, data.path, newArrayFormula);
157
+ }
158
+ case 'LOWER': {
159
+ const newLowercaseFormula = {
160
+ ...data.value,
161
+ name: '@toddle/lowercase',
162
+ display_name: 'Lower case',
163
+ };
164
+ return set(data.files, data.path, newLowercaseFormula);
165
+ }
166
+ case 'LT': {
167
+ const newLessThanFormula = {
168
+ ...data.value,
169
+ name: '@toddle/lessThan',
170
+ display_name: 'Less than',
171
+ };
172
+ return set(data.files, data.path, newLessThanFormula);
173
+ }
174
+ case 'LTE': {
175
+ const newLessOrEqualFormula = {
176
+ ...data.value,
177
+ name: '@toddle/lessOrEqual',
178
+ display_name: 'Less or equal',
179
+ };
180
+ return set(data.files, data.path, newLessOrEqualFormula);
181
+ }
182
+ case 'MOD': {
183
+ const newModuloFormula = {
184
+ ...data.value,
185
+ arguments: renameArguments({ Dividor: 'Divider' }, data.value.arguments),
186
+ name: '@toddle/modulo',
187
+ display_name: 'Modulo',
188
+ };
189
+ return set(data.files, data.path, newModuloFormula);
190
+ }
191
+ case 'NEQ': {
192
+ const newNotEqualFormula = {
193
+ ...data.value,
194
+ name: '@toddle/notEqual',
195
+ display_name: 'Not equal',
196
+ };
197
+ return set(data.files, data.path, newNotEqualFormula);
198
+ }
199
+ case 'OR': {
200
+ const { name, ...legacyOrFormula } = data.value;
201
+ // Replace the AND formula with an 'and' formula
202
+ const andFormula = {
203
+ ...legacyOrFormula,
204
+ type: 'or',
205
+ arguments: legacyOrFormula.arguments.map((a) => {
206
+ const { name, ...argument } = a;
207
+ return argument;
208
+ }),
209
+ };
210
+ return set(data.files, data.path, andFormula);
211
+ }
212
+ case 'RANDOM': {
213
+ const newRandomNumberFormula = {
214
+ ...data.value,
215
+ name: '@toddle/randomNumber',
216
+ display_name: 'Random number',
217
+ };
218
+ return set(data.files, data.path, newRandomNumberFormula);
219
+ }
220
+ case 'SIZE': {
221
+ const newSizeFormula = {
222
+ ...data.value,
223
+ name: '@toddle/size',
224
+ display_name: 'Size',
225
+ };
226
+ return set(data.files, data.path, newSizeFormula);
227
+ }
228
+ case 'SQRT': {
229
+ const newSqrtFormula = {
230
+ ...data.value,
231
+ name: '@toddle/squareRoot',
232
+ display_name: 'Square Root',
233
+ };
234
+ return set(data.files, data.path, newSqrtFormula);
235
+ }
236
+ case 'STARTS_WITH': {
237
+ const newStartsWithFormula = {
238
+ ...data.value,
239
+ name: '@toddle/startsWith',
240
+ display_name: 'Starts with',
241
+ arguments: renameArguments({ Input: 'String' }, data.value.arguments),
242
+ };
243
+ return set(data.files, data.path, newStartsWithFormula);
244
+ }
245
+ case 'TAKE_LAST': {
246
+ const newTakeLastFormula = {
247
+ ...data.value,
248
+ name: '@toddle/takeLast',
249
+ display_name: 'Take last',
250
+ arguments: renameArguments(ARRAY_ARGUMENT_MAPPINGS, data.value.arguments),
251
+ };
252
+ return set(data.files, data.path, newTakeLastFormula);
253
+ }
254
+ case 'TYPE':
255
+ // We can't autofix this one as the types have changed
256
+ break;
257
+ case 'UPPER': {
258
+ const newUpperFormula = {
259
+ ...data.value,
260
+ name: '@toddle/uppercase',
261
+ display_name: 'Uppercase',
262
+ arguments: renameArguments(ARRAY_ARGUMENT_MAPPINGS, data.value.arguments),
263
+ };
264
+ return set(data.files, data.path, newUpperFormula);
265
+ }
266
+ case 'URI_ENCODE': {
267
+ const newUriEncodeFormula = {
268
+ ...data.value,
269
+ name: '@toddle/encodeURIComponent',
270
+ display_name: 'Encode URI Component',
271
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
272
+ arguments: data.value.arguments?.map((arg) => ({
273
+ ...arg,
274
+ // Let's fix this typo as well
275
+ name: arg.name === 'URI' ? 'URIComponent' : arg.name,
276
+ })),
277
+ };
278
+ return set(data.files, data.path, newUriEncodeFormula);
279
+ }
280
+ // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! //
281
+ // ℹ️ Below is handling of the builtin formulas that can be updated ℹ️ //
282
+ // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! //
283
+ case 'ABSOLUTE': {
284
+ const newAbsoluteFormula = {
285
+ ...data.value,
286
+ name: '@toddle/absolute',
287
+ display_name: 'Absolute',
288
+ };
289
+ return set(data.files, data.path, newAbsoluteFormula);
290
+ }
291
+ case 'ADD': {
292
+ const newAddFormula = {
293
+ ...data.value,
294
+ name: '@toddle/add',
295
+ display_name: 'Add',
296
+ };
297
+ return set(data.files, data.path, newAddFormula);
298
+ }
299
+ case 'APPEND': {
300
+ const newAppendFormula = {
301
+ ...data.value,
302
+ name: '@toddle/append',
303
+ display_name: 'Append',
304
+ };
305
+ return set(data.files, data.path, newAppendFormula);
306
+ }
307
+ case 'CLAMP': {
308
+ const newClampFormula = {
309
+ ...data.value,
310
+ name: '@toddle/clamp',
311
+ display_name: 'Clamp',
312
+ };
313
+ return set(data.files, data.path, newClampFormula);
314
+ }
315
+ case 'DIVIDE': {
316
+ const newDivideFormula = {
317
+ ...data.value,
318
+ name: '@toddle/divide',
319
+ display_name: 'Divide',
320
+ };
321
+ return set(data.files, data.path, newDivideFormula);
322
+ }
323
+ case 'DROP': {
324
+ const newDropFormula = {
325
+ ...data.value,
326
+ name: '@toddle/drop',
327
+ display_name: 'Drop',
328
+ };
329
+ return set(data.files, data.path, newDropFormula);
330
+ }
331
+ case 'ENTRIES': {
332
+ const newEntriesFormula = {
333
+ ...data.value,
334
+ name: '@toddle/entries',
335
+ display_name: 'Entries',
336
+ };
337
+ return set(data.files, data.path, newEntriesFormula);
338
+ }
339
+ case 'EVERY': {
340
+ const newEveryFormula = {
341
+ ...data.value,
342
+ name: '@toddle/every',
343
+ display_name: 'Every',
344
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
345
+ };
346
+ return set(data.files, data.path, newEveryFormula);
347
+ }
348
+ case 'FILTER': {
349
+ const newFilterFormula = {
350
+ ...data.value,
351
+ name: '@toddle/filter',
352
+ display_name: 'Filter',
353
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
354
+ };
355
+ return set(data.files, data.path, newFilterFormula);
356
+ }
357
+ case 'FIND': {
358
+ const newFindFormula = {
359
+ ...data.value,
360
+ name: '@toddle/find',
361
+ display_name: 'Find',
362
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
363
+ };
364
+ return set(data.files, data.path, newFindFormula);
365
+ }
366
+ case 'FROMENTRIES': {
367
+ const newFromentriesFormula = {
368
+ ...data.value,
369
+ name: '@toddle/fromEntries',
370
+ display_name: 'From entries',
371
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
372
+ };
373
+ return set(data.files, data.path, newFromentriesFormula);
374
+ }
375
+ case 'GET': {
376
+ const newGetFormula = {
377
+ ...data.value,
378
+ name: '@toddle/get',
379
+ display_name: 'Get',
380
+ };
381
+ return set(data.files, data.path, newGetFormula);
382
+ }
383
+ case 'INCLUDES': {
384
+ const newIncludesFormula = {
385
+ ...data.value,
386
+ name: '@toddle/includes',
387
+ display_name: 'Includes',
388
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
389
+ };
390
+ return set(data.files, data.path, newIncludesFormula);
391
+ }
392
+ case 'JOIN': {
393
+ const newJoinFormula = {
394
+ ...data.value,
395
+ name: '@toddle/join',
396
+ display_name: 'Join',
397
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
398
+ };
399
+ return set(data.files, data.path, newJoinFormula);
400
+ }
401
+ case 'MAP': {
402
+ const newMapFormula = {
403
+ ...data.value,
404
+ name: '@toddle/map',
405
+ display_name: 'Map',
406
+ arguments: renameArguments({
407
+ ...ARRAY_ARGUMENT_MAPPINGS,
408
+ 'Mapping fx': 'Formula',
409
+ }, data.value.arguments),
410
+ };
411
+ return set(data.files, data.path, newMapFormula);
412
+ }
413
+ case 'MAX': {
414
+ const newMaxFormula = {
415
+ ...data.value,
416
+ name: '@toddle/max',
417
+ display_name: 'Max',
418
+ arguments: renameArguments(ARRAY_ARGUMENT_MAPPINGS, data.value.arguments),
419
+ };
420
+ return set(data.files, data.path, newMaxFormula);
421
+ }
422
+ case 'MIN': {
423
+ const newMinFormula = {
424
+ ...data.value,
425
+ name: '@toddle/min',
426
+ display_name: 'Min',
427
+ arguments: renameArguments(ARRAY_ARGUMENT_MAPPINGS, data.value.arguments),
428
+ };
429
+ return set(data.files, data.path, newMinFormula);
430
+ }
431
+ case 'MINUS': {
432
+ const newMinusFormula = {
433
+ ...data.value,
434
+ name: '@toddle/minus',
435
+ display_name: 'Minus',
436
+ };
437
+ return set(data.files, data.path, newMinusFormula);
438
+ }
439
+ case 'MULTIPLY': {
440
+ const newMultiplyFormula = {
441
+ ...data.value,
442
+ name: '@toddle/multiply',
443
+ display_name: 'Multiply',
444
+ };
445
+ return set(data.files, data.path, newMultiplyFormula);
446
+ }
447
+ case 'NOT': {
448
+ const newNotFormula = {
449
+ ...data.value,
450
+ name: '@toddle/not',
451
+ display_name: 'Not',
452
+ };
453
+ return set(data.files, data.path, newNotFormula);
454
+ }
455
+ case 'NUMBER': {
456
+ const newNumberFormula = {
457
+ ...data.value,
458
+ name: '@toddle/number',
459
+ display_name: 'Number',
460
+ };
461
+ return set(data.files, data.path, newNumberFormula);
462
+ }
463
+ case 'RANGE': {
464
+ const newRangeFormula = {
465
+ ...data.value,
466
+ name: '@toddle/range',
467
+ display_name: 'Range',
468
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
469
+ arguments: data.value.arguments?.map((arg, i) => ({
470
+ ...arg,
471
+ // The Max argument didn't always have a name
472
+ name: i === 1 && typeof arg.name !== 'string' ? 'Max' : arg.name,
473
+ })),
474
+ };
475
+ return set(data.files, data.path, newRangeFormula);
476
+ }
477
+ case 'REDUCE': {
478
+ const newReduceFormula = {
479
+ ...data.value,
480
+ name: '@toddle/reduce',
481
+ display_name: 'Reduce',
482
+ arguments: renameArguments({ 'Reducer fx': 'Formula' }, data.value.arguments),
483
+ };
484
+ return set(data.files, data.path, newReduceFormula);
485
+ }
486
+ case 'REPLACEALL': {
487
+ const newReplaceallFormula = {
488
+ ...data.value,
489
+ name: '@toddle/replaceAll',
490
+ display_name: 'Replace all',
491
+ arguments: renameArguments(
492
+ // Yes, there was a typo in the old argument name
493
+ { 'String to repalce': 'Search' }, data.value.arguments),
494
+ };
495
+ return set(data.files, data.path, newReplaceallFormula);
496
+ }
497
+ case 'REVERSE': {
498
+ const newReverseFormula = {
499
+ ...data.value,
500
+ name: '@toddle/reverse',
501
+ display_name: 'Reverse',
502
+ arguments: renameArguments(ARRAY_ARGUMENT_MAPPINGS, data.value.arguments),
503
+ };
504
+ return set(data.files, data.path, newReverseFormula);
505
+ }
506
+ case 'ROUND': {
507
+ const newRoundFormula = {
508
+ ...data.value,
509
+ name: '@toddle/round',
510
+ display_name: 'Round',
511
+ };
512
+ return set(data.files, data.path, newRoundFormula);
513
+ }
514
+ case 'SET': {
515
+ const newSetFormula = {
516
+ ...data.value,
517
+ name: '@toddle/set',
518
+ display_name: 'Set',
519
+ };
520
+ return set(data.files, data.path, newSetFormula);
521
+ }
522
+ case 'SOME': {
523
+ const newSomeFormula = {
524
+ ...data.value,
525
+ name: '@toddle/some',
526
+ display_name: 'Some',
527
+ arguments: renameArguments(PREDICATE_ARGUMENT_MAPPINGS, data.value.arguments),
528
+ };
529
+ return set(data.files, data.path, newSomeFormula);
530
+ }
531
+ case 'SPLIT': {
532
+ const newSplitFormula = {
533
+ ...data.value,
534
+ name: '@toddle/split',
535
+ display_name: 'Split',
536
+ };
537
+ return set(data.files, data.path, newSplitFormula);
538
+ }
539
+ case 'STRING': {
540
+ const newStringFormula = {
541
+ ...data.value,
542
+ name: '@toddle/string',
543
+ display_name: 'String',
544
+ };
545
+ return set(data.files, data.path, newStringFormula);
546
+ }
547
+ case 'SUM': {
548
+ const newSumFormula = {
549
+ ...data.value,
550
+ name: '@toddle/sum',
551
+ display_name: 'Sum',
552
+ };
553
+ return set(data.files, data.path, newSumFormula);
554
+ }
555
+ case 'TAKE': {
556
+ const newTakeFormula = {
557
+ ...data.value,
558
+ name: '@toddle/take',
559
+ display_name: 'Take',
560
+ arguments: renameArguments(ARRAY_ARGUMENT_MAPPINGS, data.value.arguments),
561
+ };
562
+ return set(data.files, data.path, newTakeFormula);
563
+ }
564
+ case 'TRIM': {
565
+ const newTrimFormula = {
566
+ ...data.value,
567
+ name: '@toddle/trim',
568
+ display_name: 'Trim',
569
+ };
570
+ return set(data.files, data.path, newTrimFormula);
571
+ }
572
+ }
573
+ };
574
+ //# sourceMappingURL=legacyFormulaRule.fix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacyFormulaRule.fix.js","sourceRoot":"","sources":["../../../src/rules/formulas/legacyFormulaRule.fix.ts"],"names":[],"mappings":"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"}