@contrail/flexplm 1.3.0 → 1.3.1-alpha.3e8dbdd

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 (149) hide show
  1. package/lib/cli/commands/compile.d.ts +1 -0
  2. package/lib/cli/commands/compile.js +71 -0
  3. package/lib/cli/commands/compile.spec.d.ts +1 -0
  4. package/lib/cli/commands/compile.spec.js +80 -0
  5. package/lib/cli/commands/create.d.ts +1 -0
  6. package/lib/cli/commands/create.js +75 -0
  7. package/lib/cli/commands/create.spec.d.ts +1 -0
  8. package/lib/cli/commands/create.spec.js +78 -0
  9. package/lib/cli/commands/upload.d.ts +10 -0
  10. package/lib/cli/commands/upload.js +226 -0
  11. package/lib/cli/commands/upload.spec.d.ts +1 -0
  12. package/lib/cli/commands/upload.spec.js +88 -0
  13. package/lib/cli/index.d.ts +2 -0
  14. package/lib/cli/index.js +64 -0
  15. package/lib/cli/index.spec.d.ts +1 -0
  16. package/lib/cli/index.spec.js +79 -0
  17. package/lib/cli/template/mapping-template.ts.template +62 -0
  18. package/lib/entity-processor/base-entity-processor.d.ts +89 -42
  19. package/lib/entity-processor/base-entity-processor.js +438 -385
  20. package/lib/entity-processor/base-entity-processor.spec.d.ts +1 -1
  21. package/lib/entity-processor/base-entity-processor.spec.js +398 -397
  22. package/lib/flexplm-request.d.ts +3 -3
  23. package/lib/flexplm-request.js +34 -34
  24. package/lib/flexplm-utils.d.ts +5 -5
  25. package/lib/flexplm-utils.js +33 -33
  26. package/lib/flexplm-utils.spec.d.ts +1 -1
  27. package/lib/flexplm-utils.spec.js +26 -26
  28. package/lib/index.d.ts +23 -22
  29. package/lib/index.js +39 -38
  30. package/lib/interfaces/interfaces.d.ts +105 -105
  31. package/lib/interfaces/interfaces.js +2 -2
  32. package/lib/interfaces/item-family-changes.d.ts +20 -20
  33. package/lib/interfaces/item-family-changes.js +56 -56
  34. package/lib/interfaces/mapping-file.d.ts +460 -0
  35. package/lib/interfaces/mapping-file.js +2 -0
  36. package/lib/interfaces/publish-change-data.d.ts +19 -19
  37. package/lib/interfaces/publish-change-data.js +32 -32
  38. package/lib/publish/base-process-publish-assortment-callback.d.ts +9 -9
  39. package/lib/publish/base-process-publish-assortment-callback.js +38 -38
  40. package/lib/publish/base-process-publish-assortment.d.ts +118 -93
  41. package/lib/publish/base-process-publish-assortment.js +998 -944
  42. package/lib/publish/base-process-publish-assortment.spec.d.ts +1 -1
  43. package/lib/publish/base-process-publish-assortment.spec.js +1688 -1670
  44. package/lib/publish/mockData.d.ts +1389 -1389
  45. package/lib/publish/mockData.js +4524 -4519
  46. package/lib/transform/identifier-conversion-spec-mockData.js +472 -444
  47. package/lib/transform/identifier-conversion.d.ts +51 -15
  48. package/lib/transform/identifier-conversion.js +248 -212
  49. package/lib/transform/identifier-conversion.spec.d.ts +1 -1
  50. package/lib/transform/identifier-conversion.spec.js +343 -339
  51. package/lib/util/config-defaults.d.ts +8 -8
  52. package/lib/util/config-defaults.js +88 -85
  53. package/lib/util/config-defaults.spec.d.ts +1 -1
  54. package/lib/util/config-defaults.spec.js +302 -293
  55. package/lib/util/data-converter-spec-mockData.js +219 -205
  56. package/lib/util/data-converter.d.ts +136 -39
  57. package/lib/util/data-converter.js +718 -592
  58. package/lib/util/data-converter.spec.d.ts +1 -1
  59. package/lib/util/data-converter.spec.js +906 -904
  60. package/lib/util/error-response-object.d.ts +9 -4
  61. package/lib/util/error-response-object.js +54 -47
  62. package/lib/util/error-response-object.spec.d.ts +1 -1
  63. package/lib/util/error-response-object.spec.js +99 -99
  64. package/lib/util/event-short-message-status.d.ts +19 -19
  65. package/lib/util/event-short-message-status.js +24 -23
  66. package/lib/util/federation.d.ts +15 -15
  67. package/lib/util/federation.js +157 -149
  68. package/lib/util/flexplm-connect.d.ts +29 -22
  69. package/lib/util/flexplm-connect.js +190 -176
  70. package/lib/util/flexplm-connect.spec.d.ts +1 -1
  71. package/lib/util/flexplm-connect.spec.js +88 -88
  72. package/lib/util/logger-config.d.ts +1 -1
  73. package/lib/util/logger-config.js +27 -26
  74. package/lib/util/map-util-spec-mockData.js +219 -205
  75. package/lib/util/map-utils.d.ts +33 -6
  76. package/lib/util/map-utils.js +42 -15
  77. package/lib/util/map-utils.spec.d.ts +1 -1
  78. package/lib/util/map-utils.spec.js +89 -89
  79. package/lib/util/mockData.d.ts +80 -80
  80. package/lib/util/mockData.js +103 -103
  81. package/lib/util/thumbnail-util.d.ts +55 -34
  82. package/lib/util/thumbnail-util.js +242 -215
  83. package/lib/util/thumbnail-util.spec.d.ts +1 -1
  84. package/lib/util/thumbnail-util.spec.js +440 -434
  85. package/lib/util/type-conversion-utils-spec-mockData.js +259 -259
  86. package/lib/util/type-conversion-utils.d.ts +163 -23
  87. package/lib/util/type-conversion-utils.js +408 -265
  88. package/lib/util/type-conversion-utils.spec.d.ts +1 -1
  89. package/lib/util/type-conversion-utils.spec.js +868 -868
  90. package/lib/util/type-defaults.d.ts +74 -16
  91. package/lib/util/type-defaults.js +279 -221
  92. package/lib/util/type-defaults.spec.d.ts +1 -1
  93. package/lib/util/type-defaults.spec.js +516 -516
  94. package/lib/util/type-utils.d.ts +34 -13
  95. package/lib/util/type-utils.js +137 -114
  96. package/lib/util/type-utils.spec.d.ts +1 -1
  97. package/lib/util/type-utils.spec.js +192 -190
  98. package/package.json +21 -6
  99. package/scripts/copy-template.js +10 -0
  100. package/.claude/settings.local.json +0 -8
  101. package/.github/pull_request_template.md +0 -31
  102. package/.github/workflows/flexplm-lib.yml +0 -27
  103. package/.github/workflows/publish-to-npm.yml +0 -124
  104. package/CHANGELOG.md +0 -32
  105. package/publish.bat +0 -5
  106. package/publish.sh +0 -5
  107. package/src/entity-processor/base-entity-processor.spec.ts +0 -460
  108. package/src/entity-processor/base-entity-processor.ts +0 -515
  109. package/src/flexplm-request.ts +0 -28
  110. package/src/flexplm-utils.spec.ts +0 -27
  111. package/src/flexplm-utils.ts +0 -29
  112. package/src/index.ts +0 -22
  113. package/src/interfaces/interfaces.ts +0 -122
  114. package/src/interfaces/item-family-changes.ts +0 -67
  115. package/src/interfaces/publish-change-data.ts +0 -43
  116. package/src/publish/base-process-publish-assortment-callback.ts +0 -50
  117. package/src/publish/base-process-publish-assortment.spec.ts +0 -1992
  118. package/src/publish/base-process-publish-assortment.ts +0 -1134
  119. package/src/publish/mockData.ts +0 -4561
  120. package/src/transform/identifier-conversion-spec-mockData.ts +0 -496
  121. package/src/transform/identifier-conversion.spec.ts +0 -354
  122. package/src/transform/identifier-conversion.ts +0 -282
  123. package/src/util/config-defaults.spec.ts +0 -350
  124. package/src/util/config-defaults.ts +0 -93
  125. package/src/util/data-converter-spec-mockData.ts +0 -231
  126. package/src/util/data-converter.spec.ts +0 -1041
  127. package/src/util/data-converter.ts +0 -762
  128. package/src/util/error-response-object.spec.ts +0 -116
  129. package/src/util/error-response-object.ts +0 -50
  130. package/src/util/event-short-message-status.ts +0 -22
  131. package/src/util/federation.ts +0 -172
  132. package/src/util/flexplm-connect.spec.ts +0 -132
  133. package/src/util/flexplm-connect.ts +0 -208
  134. package/src/util/logger-config.ts +0 -20
  135. package/src/util/map-util-spec-mockData.ts +0 -231
  136. package/src/util/map-utils.spec.ts +0 -103
  137. package/src/util/map-utils.ts +0 -41
  138. package/src/util/mockData.ts +0 -101
  139. package/src/util/thumbnail-util.spec.ts +0 -508
  140. package/src/util/thumbnail-util.ts +0 -272
  141. package/src/util/type-conversion-utils-spec-mockData.ts +0 -271
  142. package/src/util/type-conversion-utils.spec.ts +0 -968
  143. package/src/util/type-conversion-utils.ts +0 -460
  144. package/src/util/type-defaults.spec.ts +0 -669
  145. package/src/util/type-defaults.ts +0 -281
  146. package/src/util/type-utils.spec.ts +0 -227
  147. package/src/util/type-utils.ts +0 -144
  148. package/tsconfig.json +0 -29
  149. package/tslint.json +0 -57
@@ -1,444 +1,472 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.mapping = {
4
- typeConversion: {
5
- vibe2flex: {
6
- 'custom-entity': {
7
- getMapKey: (entity) => {
8
- const typePath = entity['typePath'];
9
- let mapKey = '';
10
- switch (typePath) {
11
- case 'custom-entity:pack':
12
- mapKey = 'packaging';
13
- break;
14
- case 'custom-entity:prefix':
15
- mapKey = 'prefix';
16
- break;
17
- case 'custom-entity:catName':
18
- mapKey = 'catName';
19
- break;
20
- case 'custom-entity:partnerOrg':
21
- mapKey = 'partnerOrg';
22
- break;
23
- case 'custom-entity:catFamily':
24
- mapKey = 'catFamily';
25
- break;
26
- case 'custom-entity:formName':
27
- mapKey = 'formName';
28
- break;
29
- }
30
- return mapKey;
31
- }
32
- }
33
- }
34
- },
35
- LCSSeason: {
36
- vibe2flex: {
37
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
38
- rekey: {
39
- seasonName: 'flexPLMSeasonName',
40
- year: 'seasonYear'
41
- },
42
- getSoftType: () => 'Season',
43
- getClass: () => 'LCSSeason'
44
- },
45
- flex2vibe: {
46
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
47
- rekey: {
48
- flexPLMSeasonName: 'seasonName',
49
- seasonYear: 'year'
50
- }
51
- }
52
- },
53
- LCSProduct: {
54
- vibeOwningKeys: ['itemNumber', 'lifecycleStage'],
55
- vibe2flex: {
56
- getClass: () => 'LCSProduct',
57
- getSoftType: (entity) => {
58
- const prodType = entity['prodType'];
59
- let val = '';
60
- switch (prodType) {
61
- case 'acc':
62
- val = 'Product\\Accesories';
63
- break;
64
- case 'app':
65
- val = 'Product\\Apparel';
66
- break;
67
- case 'eqp':
68
- val = 'Product\\Equipment';
69
- break;
70
- case 'foot':
71
- val = 'Product\\Footwear';
72
- break;
73
- }
74
- return val;
75
- },
76
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }, { processor: 'VALUE_TRANSFORM', functionTransformersKey: 'valueTransform' }],
77
- rekey: {
78
- productName: 'name',
79
- vibeIQIdentifier: 'itemNumber'
80
- },
81
- valueTransform: {
82
- transformEx: (row) => {
83
- return row['otherProp'] + 'xxx';
84
- }
85
- }
86
- },
87
- flex2vibe: {
88
- getClass: () => 'item',
89
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
90
- rekey: {
91
- itemNumber: 'vibeIQIdentifier',
92
- name: 'productName',
93
- }
94
- }
95
- },
96
- LCSSKU: {
97
- vibeOwningKeys: ['itemNumber', 'lifecycleStage'],
98
- vibe2flex: {
99
- getClass: () => 'LCSSKU',
100
- getSoftType: (entity) => {
101
- const prodType = entity['prodType'];
102
- let val = '';
103
- switch (prodType) {
104
- case 'acc':
105
- val = 'Product\\Accesories';
106
- break;
107
- case 'app':
108
- val = 'Product\\Apparel';
109
- break;
110
- case 'eqp':
111
- val = 'Product\\Equipment';
112
- break;
113
- case 'foot':
114
- val = 'Product\\Footwear';
115
- break;
116
- }
117
- return val;
118
- },
119
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
120
- rekey: {
121
- skuName: 'optionName',
122
- vibeIQIdentifier: 'itemNumber'
123
- }
124
- },
125
- flex2vibe: {
126
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
127
- rekey: {
128
- itemNumber: 'vibeIQIdentifier',
129
- optionName: 'skuName',
130
- }
131
- }
132
- },
133
- packaging: {
134
- vibe2flex: {
135
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
136
- rekey: {
137
- retailPackType: 'packType',
138
- retailIntroDate: 'introDate'
139
- },
140
- getSoftType: () => 'Revisable Entity\\packaging',
141
- getClass: () => 'LCSRevisableEntity'
142
- },
143
- flex2vibe: {
144
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
145
- rekey: {
146
- packType: 'retailPackType',
147
- introDate: 'retailIntroDate'
148
- },
149
- getClass: () => 'custom-entity',
150
- getSoftType: () => 'custom-entity:pack',
151
- }
152
- },
153
- prefix: {
154
- vibe2flex: {
155
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
156
- rekey: {
157
- retailOwner: 'owner',
158
- retailIntroDate: 'introDate'
159
- },
160
- getSoftType: () => 'Revisable Entity\\prefix',
161
- getClass: () => 'LCSRevisableEntity'
162
- },
163
- flex2vibe: {
164
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
165
- rekey: {
166
- owner: 'retailOwner',
167
- introDate: 'retailIntroDate'
168
- },
169
- getClass: () => 'custom-entity',
170
- getSoftType: () => 'custom-entity:prefix',
171
- }
172
- },
173
- catName: {
174
- getIdentifierProperties: () => ['catName', 'catNumber'],
175
- getInformationalProperties: () => ['longName'],
176
- vibe2flex: {
177
- transformOrder: [],
178
- getSoftType: () => 'Last\\catName',
179
- getClass: () => 'LCSLast'
180
- },
181
- flex2vibe: {
182
- transformOrder: [],
183
- getClass: () => 'custom-entity',
184
- getSoftType: () => 'custom-entity:catName',
185
- }
186
- },
187
- partnerOrg: {
188
- vibe2flex: {
189
- transformOrder: [],
190
- getSoftType: () => 'Business Object\\partnerOrg',
191
- getClass: () => 'LCSLifecycleManaged'
192
- },
193
- flex2vibe: {
194
- transformOrder: [],
195
- getClass: () => 'custom-entity',
196
- getSoftType: () => 'custom-entity:partnerOrg',
197
- }
198
- },
199
- catFamily: {
200
- vibe2flex: {
201
- transformOrder: [],
202
- getSoftType: () => 'Revisable Entity\\catFamily',
203
- getClass: () => 'LCSRevisableEntity'
204
- },
205
- flex2vibe: {
206
- transformOrder: [],
207
- getClass: () => 'custom-entity',
208
- getSoftType: () => 'custom-entity:catFamily',
209
- }
210
- },
211
- formName: {
212
- vibe2flex: {
213
- transformOrder: [],
214
- getSoftType: () => 'Material\\form',
215
- getClass: () => 'LCSMaterial'
216
- },
217
- flex2vibe: {
218
- transformOrder: [],
219
- getClass: () => 'custom-entity',
220
- getSoftType: () => 'custom-entity:formName',
221
- }
222
- },
223
- };
224
- exports.mapping2 = {
225
- typeConversion: {
226
- vibe2flex: {
227
- 'custom-entity': {
228
- getMapKey: (entity) => {
229
- const typePath = entity['typePath'];
230
- let mapKey = '';
231
- switch (typePath) {
232
- case 'custom-entity:pack':
233
- mapKey = 'packaging';
234
- break;
235
- case 'custom-entity:prefix':
236
- mapKey = 'prefix';
237
- break;
238
- case 'custom-entity:catName':
239
- mapKey = 'catName';
240
- break;
241
- case 'custom-entity:partnerOrg':
242
- mapKey = 'partnerOrg';
243
- break;
244
- case 'custom-entity:catFamily':
245
- mapKey = 'catFamily';
246
- break;
247
- case 'custom-entity:formName':
248
- mapKey = 'formName';
249
- break;
250
- }
251
- return mapKey;
252
- }
253
- }
254
- }
255
- },
256
- LCSSeason: {
257
- getIdentifierProperties: () => ['brand', 'year', 'seasonType'],
258
- vibe2flex: {
259
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
260
- rekey: {
261
- seasonName: 'flexPLMSeasonName'
262
- },
263
- getSoftType: () => 'Season',
264
- getClass: () => 'LCSSeason'
265
- },
266
- flex2vibe: {
267
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
268
- rekey: {
269
- flexPLMSeasonName: 'seasonName'
270
- }
271
- }
272
- },
273
- LCSProduct: {
274
- vibeOwningKeys: ['itemNumber', 'lifecycleStage'],
275
- vibe2flex: {
276
- getClass: () => 'LCSProduct',
277
- getSoftType: (entity) => {
278
- const prodType = entity['prodType'];
279
- let val = '';
280
- switch (prodType) {
281
- case 'acc':
282
- val = 'Product\\Accesories';
283
- break;
284
- case 'app':
285
- val = 'Product\\Apparel';
286
- break;
287
- case 'eqp':
288
- val = 'Product\\Equipment';
289
- break;
290
- case 'foot':
291
- val = 'Product\\Footwear';
292
- break;
293
- }
294
- return val;
295
- },
296
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }, { processor: 'VALUE_TRANSFORM', functionTransformersKey: 'valueTransform' }],
297
- rekey: {
298
- productName: 'name',
299
- vibeIQIdentifier: 'itemNumber'
300
- },
301
- valueTransform: {
302
- transformEx: (row) => {
303
- return row['otherProp'] + 'xxx';
304
- }
305
- }
306
- },
307
- flex2vibe: {
308
- getClass: () => 'item',
309
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
310
- rekey: {
311
- itemNumber: 'vibeIQIdentifier',
312
- name: 'productName',
313
- }
314
- }
315
- },
316
- LCSSKU: {
317
- vibeOwningKeys: ['itemNumber', 'lifecycleStage'],
318
- getIdentifierProperties: () => ['uniqueIdentifierA', 'uniqueIdentifierB'],
319
- vibe2flex: {
320
- getClass: () => 'LCSSKU',
321
- getSoftType: (entity) => {
322
- const prodType = entity['prodType'];
323
- let val = '';
324
- switch (prodType) {
325
- case 'acc':
326
- val = 'Product\\Accesories';
327
- break;
328
- case 'app':
329
- val = 'Product\\Apparel';
330
- break;
331
- case 'eqp':
332
- val = 'Product\\Equipment';
333
- break;
334
- case 'foot':
335
- val = 'Product\\Footwear';
336
- break;
337
- }
338
- return val;
339
- },
340
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
341
- rekey: {
342
- skuName: 'optionName',
343
- vibeIQIdentifier: 'itemNumber'
344
- }
345
- },
346
- flex2vibe: {
347
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
348
- rekey: {
349
- itemNumber: 'vibeIQIdentifier',
350
- optionName: 'skuName',
351
- }
352
- }
353
- },
354
- packaging: {
355
- vibe2flex: {
356
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
357
- rekey: {
358
- retailPackType: 'packType',
359
- retailIntroDate: 'introDate'
360
- },
361
- getSoftType: () => 'Revisable Entity\\packaging',
362
- getClass: () => 'LCSRevisableEntity'
363
- },
364
- flex2vibe: {
365
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
366
- rekey: {
367
- packType: 'retailPackType',
368
- introDate: 'retailIntroDate'
369
- },
370
- getClass: () => 'custom-entity',
371
- getSoftType: () => 'custom-entity:pack',
372
- }
373
- },
374
- prefix: {
375
- vibe2flex: {
376
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
377
- rekey: {
378
- retailOwner: 'owner',
379
- retailIntroDate: 'introDate'
380
- },
381
- getSoftType: () => 'Revisable Entity\\prefix',
382
- getClass: () => 'LCSRevisableEntity'
383
- },
384
- flex2vibe: {
385
- transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
386
- rekey: {
387
- owner: 'retailOwner',
388
- introDate: 'retailIntroDate'
389
- },
390
- getClass: () => 'custom-entity',
391
- getSoftType: () => 'custom-entity:prefix',
392
- }
393
- },
394
- catName: {
395
- getIdentifierProperties: () => ['catName', 'catNumber'],
396
- getInformationalProperties: () => ['longName'],
397
- vibe2flex: {
398
- transformOrder: [],
399
- getSoftType: () => 'Last\\catName',
400
- getClass: () => 'LCSLast'
401
- },
402
- flex2vibe: {
403
- transformOrder: [],
404
- getClass: () => 'custom-entity',
405
- getSoftType: () => 'custom-entity:catName',
406
- }
407
- },
408
- partnerOrg: {
409
- vibe2flex: {
410
- transformOrder: [],
411
- getSoftType: () => 'Business Object\\partnerOrg',
412
- getClass: () => 'LCSLifecycleManaged'
413
- },
414
- flex2vibe: {
415
- transformOrder: [],
416
- getClass: () => 'custom-entity',
417
- getSoftType: () => 'custom-entity:partnerOrg',
418
- }
419
- },
420
- catFamily: {
421
- vibe2flex: {
422
- transformOrder: [],
423
- getSoftType: () => 'Revisable Entity\\catFamily',
424
- getClass: () => 'LCSRevisableEntity'
425
- },
426
- flex2vibe: {
427
- transformOrder: [],
428
- getClass: () => 'custom-entity',
429
- getSoftType: () => 'custom-entity:catFamily',
430
- }
431
- },
432
- formName: {
433
- vibe2flex: {
434
- transformOrder: [],
435
- getSoftType: () => 'Material\\form',
436
- getClass: () => 'LCSMaterial'
437
- },
438
- flex2vibe: {
439
- transformOrder: [],
440
- getClass: () => 'custom-entity',
441
- getSoftType: () => 'custom-entity:formName',
442
- }
443
- },
444
- };
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', { value: true });
3
+ exports.mapping = {
4
+ typeConversion: {
5
+ vibe2flex: {
6
+ 'custom-entity': {
7
+ getMapKey: (entity) => {
8
+ const typePath = entity['typePath'];
9
+ let mapKey = '';
10
+ switch (typePath) {
11
+ case 'custom-entity:pack':
12
+ mapKey = 'packaging';
13
+ break;
14
+ case 'custom-entity:prefix':
15
+ mapKey = 'prefix';
16
+ break;
17
+ case 'custom-entity:catName':
18
+ mapKey = 'catName';
19
+ break;
20
+ case 'custom-entity:partnerOrg':
21
+ mapKey = 'partnerOrg';
22
+ break;
23
+ case 'custom-entity:catFamily':
24
+ mapKey = 'catFamily';
25
+ break;
26
+ case 'custom-entity:formName':
27
+ mapKey = 'formName';
28
+ break;
29
+ }
30
+ return mapKey;
31
+ }
32
+ }
33
+ }
34
+ // flex2vibe: {
35
+ // LCSRevisableEntity: {
36
+ // getMapKey: (object) =>{ return object;}
37
+ // },
38
+ // LCSLast: {
39
+ // getMapKey: (object) => {return object;}
40
+ // },
41
+ // LCSMaterial: {
42
+ // getMapKey: (object) =>{ return object;}
43
+ // },
44
+ // LCSBusinessObject: {
45
+ // getMapKey: (object) => {return object;}
46
+ // }
47
+ // },
48
+ },
49
+ LCSSeason: {
50
+ vibe2flex: {
51
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
52
+ rekey: {
53
+ seasonName: 'flexPLMSeasonName',
54
+ year: 'seasonYear'
55
+ },
56
+ getSoftType: () => 'Season',
57
+ getClass: () => 'LCSSeason'
58
+ },
59
+ flex2vibe: {
60
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
61
+ rekey: {
62
+ flexPLMSeasonName: 'seasonName',
63
+ seasonYear: 'year'
64
+ }
65
+ }
66
+ },
67
+ LCSProduct: {
68
+ vibeOwningKeys: ['itemNumber', 'lifecycleStage'],
69
+ vibe2flex: {
70
+ getClass: () => 'LCSProduct',
71
+ getSoftType: (entity /*, dependencies*/) => {
72
+ const prodType = entity['prodType'];
73
+ let val = '';
74
+ switch (prodType) {
75
+ case 'acc':
76
+ val = 'Product\\Accesories';
77
+ break;
78
+ case 'app':
79
+ val = 'Product\\Apparel';
80
+ break;
81
+ case 'eqp':
82
+ val = 'Product\\Equipment';
83
+ break;
84
+ case 'foot':
85
+ val = 'Product\\Footwear';
86
+ break;
87
+ }
88
+ return val;
89
+ },
90
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }, { processor: 'VALUE_TRANSFORM', functionTransformersKey: 'valueTransform' }],
91
+ rekey: {
92
+ productName: 'name',
93
+ vibeIQIdentifier: 'itemNumber'
94
+ },
95
+ valueTransform: {
96
+ transformEx: (row /*, dependencies*/) => {
97
+ return row['otherProp'] + 'xxx';
98
+ }
99
+ }
100
+ },
101
+ flex2vibe: {
102
+ getClass: () => 'item',
103
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
104
+ rekey: {
105
+ itemNumber: 'vibeIQIdentifier',
106
+ name: 'productName',
107
+ }
108
+ }
109
+ },
110
+ LCSSKU: {
111
+ vibeOwningKeys: ['itemNumber', 'lifecycleStage'],
112
+ vibe2flex: {
113
+ getClass: () => 'LCSSKU',
114
+ getSoftType: (entity /*, dependencies*/) => {
115
+ const prodType = entity['prodType'];
116
+ let val = '';
117
+ switch (prodType) {
118
+ case 'acc':
119
+ val = 'Product\\Accesories';
120
+ break;
121
+ case 'app':
122
+ val = 'Product\\Apparel';
123
+ break;
124
+ case 'eqp':
125
+ val = 'Product\\Equipment';
126
+ break;
127
+ case 'foot':
128
+ val = 'Product\\Footwear';
129
+ break;
130
+ }
131
+ return val;
132
+ },
133
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
134
+ rekey: {
135
+ skuName: 'optionName',
136
+ vibeIQIdentifier: 'itemNumber'
137
+ }
138
+ },
139
+ flex2vibe: {
140
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
141
+ rekey: {
142
+ itemNumber: 'vibeIQIdentifier',
143
+ optionName: 'skuName',
144
+ }
145
+ }
146
+ },
147
+ packaging: {
148
+ vibe2flex: {
149
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
150
+ rekey: {
151
+ retailPackType: 'packType',
152
+ retailIntroDate: 'introDate'
153
+ },
154
+ getSoftType: () => 'Revisable Entity\\packaging',
155
+ getClass: () => 'LCSRevisableEntity'
156
+ },
157
+ flex2vibe: {
158
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
159
+ rekey: {
160
+ packType: 'retailPackType',
161
+ introDate: 'retailIntroDate'
162
+ },
163
+ getClass: () => 'custom-entity',
164
+ getSoftType: () => 'custom-entity:pack',
165
+ }
166
+ },
167
+ prefix: {
168
+ vibe2flex: {
169
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
170
+ rekey: {
171
+ retailOwner: 'owner',
172
+ retailIntroDate: 'introDate'
173
+ },
174
+ getSoftType: () => 'Revisable Entity\\prefix',
175
+ getClass: () => 'LCSRevisableEntity'
176
+ },
177
+ flex2vibe: {
178
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
179
+ rekey: {
180
+ owner: 'retailOwner',
181
+ introDate: 'retailIntroDate'
182
+ },
183
+ getClass: () => 'custom-entity',
184
+ getSoftType: () => 'custom-entity:prefix',
185
+ }
186
+ },
187
+ catName: {
188
+ getIdentifierProperties: () => ['catName', 'catNumber'],
189
+ getInformationalProperties: () => ['longName'],
190
+ vibe2flex: {
191
+ transformOrder: [],
192
+ getSoftType: () => 'Last\\catName',
193
+ getClass: () => 'LCSLast'
194
+ },
195
+ flex2vibe: {
196
+ transformOrder: [],
197
+ getClass: () => 'custom-entity',
198
+ getSoftType: () => 'custom-entity:catName',
199
+ }
200
+ },
201
+ partnerOrg: {
202
+ vibe2flex: {
203
+ transformOrder: [],
204
+ getSoftType: () => 'Business Object\\partnerOrg',
205
+ getClass: () => 'LCSLifecycleManaged'
206
+ },
207
+ flex2vibe: {
208
+ transformOrder: [],
209
+ getClass: () => 'custom-entity',
210
+ getSoftType: () => 'custom-entity:partnerOrg',
211
+ }
212
+ },
213
+ catFamily: {
214
+ vibe2flex: {
215
+ transformOrder: [],
216
+ getSoftType: () => 'Revisable Entity\\catFamily',
217
+ getClass: () => 'LCSRevisableEntity'
218
+ },
219
+ flex2vibe: {
220
+ transformOrder: [],
221
+ getClass: () => 'custom-entity',
222
+ getSoftType: () => 'custom-entity:catFamily',
223
+ }
224
+ },
225
+ formName: {
226
+ vibe2flex: {
227
+ transformOrder: [],
228
+ getSoftType: () => 'Material\\form',
229
+ getClass: () => 'LCSMaterial'
230
+ },
231
+ flex2vibe: {
232
+ transformOrder: [],
233
+ getClass: () => 'custom-entity',
234
+ getSoftType: () => 'custom-entity:formName',
235
+ }
236
+ },
237
+ };
238
+ exports.mapping2 = {
239
+ typeConversion: {
240
+ vibe2flex: {
241
+ 'custom-entity': {
242
+ getMapKey: (entity) => {
243
+ const typePath = entity['typePath'];
244
+ let mapKey = '';
245
+ switch (typePath) {
246
+ case 'custom-entity:pack':
247
+ mapKey = 'packaging';
248
+ break;
249
+ case 'custom-entity:prefix':
250
+ mapKey = 'prefix';
251
+ break;
252
+ case 'custom-entity:catName':
253
+ mapKey = 'catName';
254
+ break;
255
+ case 'custom-entity:partnerOrg':
256
+ mapKey = 'partnerOrg';
257
+ break;
258
+ case 'custom-entity:catFamily':
259
+ mapKey = 'catFamily';
260
+ break;
261
+ case 'custom-entity:formName':
262
+ mapKey = 'formName';
263
+ break;
264
+ }
265
+ return mapKey;
266
+ }
267
+ }
268
+ }
269
+ // flex2vibe: {
270
+ // LCSRevisableEntity: {
271
+ // getMapKey: (object) =>{ return object;}
272
+ // },
273
+ // LCSLast: {
274
+ // getMapKey: (object) => {return object;}
275
+ // },
276
+ // LCSMaterial: {
277
+ // getMapKey: (object) =>{ return object;}
278
+ // },
279
+ // LCSBusinessObject: {
280
+ // getMapKey: (object) => {return object;}
281
+ // }
282
+ // },
283
+ },
284
+ LCSSeason: {
285
+ getIdentifierProperties: () => ['brand', 'year', 'seasonType'],
286
+ vibe2flex: {
287
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
288
+ rekey: {
289
+ seasonName: 'flexPLMSeasonName'
290
+ },
291
+ getSoftType: () => 'Season',
292
+ getClass: () => 'LCSSeason'
293
+ },
294
+ flex2vibe: {
295
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
296
+ rekey: {
297
+ flexPLMSeasonName: 'seasonName'
298
+ }
299
+ }
300
+ },
301
+ LCSProduct: {
302
+ vibeOwningKeys: ['itemNumber', 'lifecycleStage'],
303
+ vibe2flex: {
304
+ getClass: () => 'LCSProduct',
305
+ getSoftType: (entity /*, dependencies*/) => {
306
+ const prodType = entity['prodType'];
307
+ let val = '';
308
+ switch (prodType) {
309
+ case 'acc':
310
+ val = 'Product\\Accesories';
311
+ break;
312
+ case 'app':
313
+ val = 'Product\\Apparel';
314
+ break;
315
+ case 'eqp':
316
+ val = 'Product\\Equipment';
317
+ break;
318
+ case 'foot':
319
+ val = 'Product\\Footwear';
320
+ break;
321
+ }
322
+ return val;
323
+ },
324
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }, { processor: 'VALUE_TRANSFORM', functionTransformersKey: 'valueTransform' }],
325
+ rekey: {
326
+ productName: 'name',
327
+ vibeIQIdentifier: 'itemNumber'
328
+ },
329
+ valueTransform: {
330
+ transformEx: (row /*, dependencies*/) => {
331
+ return row['otherProp'] + 'xxx';
332
+ }
333
+ }
334
+ },
335
+ flex2vibe: {
336
+ getClass: () => 'item',
337
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
338
+ rekey: {
339
+ itemNumber: 'vibeIQIdentifier',
340
+ name: 'productName',
341
+ }
342
+ }
343
+ },
344
+ LCSSKU: {
345
+ vibeOwningKeys: ['itemNumber', 'lifecycleStage'],
346
+ getIdentifierProperties: () => ['uniqueIdentifierA', 'uniqueIdentifierB'],
347
+ vibe2flex: {
348
+ getClass: () => 'LCSSKU',
349
+ getSoftType: (entity /*, dependencies*/) => {
350
+ const prodType = entity['prodType'];
351
+ let val = '';
352
+ switch (prodType) {
353
+ case 'acc':
354
+ val = 'Product\\Accesories';
355
+ break;
356
+ case 'app':
357
+ val = 'Product\\Apparel';
358
+ break;
359
+ case 'eqp':
360
+ val = 'Product\\Equipment';
361
+ break;
362
+ case 'foot':
363
+ val = 'Product\\Footwear';
364
+ break;
365
+ }
366
+ return val;
367
+ },
368
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
369
+ rekey: {
370
+ skuName: 'optionName',
371
+ vibeIQIdentifier: 'itemNumber'
372
+ }
373
+ },
374
+ flex2vibe: {
375
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
376
+ rekey: {
377
+ itemNumber: 'vibeIQIdentifier',
378
+ optionName: 'skuName',
379
+ }
380
+ }
381
+ },
382
+ packaging: {
383
+ vibe2flex: {
384
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
385
+ rekey: {
386
+ retailPackType: 'packType',
387
+ retailIntroDate: 'introDate'
388
+ },
389
+ getSoftType: () => 'Revisable Entity\\packaging',
390
+ getClass: () => 'LCSRevisableEntity'
391
+ },
392
+ flex2vibe: {
393
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
394
+ rekey: {
395
+ packType: 'retailPackType',
396
+ introDate: 'retailIntroDate'
397
+ },
398
+ getClass: () => 'custom-entity',
399
+ getSoftType: () => 'custom-entity:pack',
400
+ }
401
+ },
402
+ prefix: {
403
+ vibe2flex: {
404
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
405
+ rekey: {
406
+ retailOwner: 'owner',
407
+ retailIntroDate: 'introDate'
408
+ },
409
+ getSoftType: () => 'Revisable Entity\\prefix',
410
+ getClass: () => 'LCSRevisableEntity'
411
+ },
412
+ flex2vibe: {
413
+ transformOrder: [{ processor: 'REKEY', rekeyDelete: true, rekeyTransformersKey: 'rekey' }],
414
+ rekey: {
415
+ owner: 'retailOwner',
416
+ introDate: 'retailIntroDate'
417
+ },
418
+ getClass: () => 'custom-entity',
419
+ getSoftType: () => 'custom-entity:prefix',
420
+ }
421
+ },
422
+ catName: {
423
+ getIdentifierProperties: () => ['catName', 'catNumber'],
424
+ getInformationalProperties: () => ['longName'],
425
+ vibe2flex: {
426
+ transformOrder: [],
427
+ getSoftType: () => 'Last\\catName',
428
+ getClass: () => 'LCSLast'
429
+ },
430
+ flex2vibe: {
431
+ transformOrder: [],
432
+ getClass: () => 'custom-entity',
433
+ getSoftType: () => 'custom-entity:catName',
434
+ }
435
+ },
436
+ partnerOrg: {
437
+ vibe2flex: {
438
+ transformOrder: [],
439
+ getSoftType: () => 'Business Object\\partnerOrg',
440
+ getClass: () => 'LCSLifecycleManaged'
441
+ },
442
+ flex2vibe: {
443
+ transformOrder: [],
444
+ getClass: () => 'custom-entity',
445
+ getSoftType: () => 'custom-entity:partnerOrg',
446
+ }
447
+ },
448
+ catFamily: {
449
+ vibe2flex: {
450
+ transformOrder: [],
451
+ getSoftType: () => 'Revisable Entity\\catFamily',
452
+ getClass: () => 'LCSRevisableEntity'
453
+ },
454
+ flex2vibe: {
455
+ transformOrder: [],
456
+ getClass: () => 'custom-entity',
457
+ getSoftType: () => 'custom-entity:catFamily',
458
+ }
459
+ },
460
+ formName: {
461
+ vibe2flex: {
462
+ transformOrder: [],
463
+ getSoftType: () => 'Material\\form',
464
+ getClass: () => 'LCSMaterial'
465
+ },
466
+ flex2vibe: {
467
+ transformOrder: [],
468
+ getClass: () => 'custom-entity',
469
+ getSoftType: () => 'custom-entity:formName',
470
+ }
471
+ },
472
+ };