@contentstack/cli-cm-branches 1.0.18 → 1.0.19
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.
package/README.md
CHANGED
|
@@ -37,7 +37,7 @@ $ npm install -g @contentstack/cli-cm-branches
|
|
|
37
37
|
$ csdx COMMAND
|
|
38
38
|
running command...
|
|
39
39
|
$ csdx (--version)
|
|
40
|
-
@contentstack/cli-cm-branches/1.0.
|
|
40
|
+
@contentstack/cli-cm-branches/1.0.19 linux-x64 node-v18.19.0
|
|
41
41
|
$ csdx --help [COMMAND]
|
|
42
42
|
USAGE
|
|
43
43
|
$ csdx COMMAND
|
|
@@ -478,15 +478,17 @@ function entryCreateScript(contentType) {
|
|
|
478
478
|
try {
|
|
479
479
|
compareFilteredProperties.length !== 0 &&
|
|
480
480
|
compareFilteredProperties.forEach(async (entryDetails) => {
|
|
481
|
-
entryDetails
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
if
|
|
487
|
-
|
|
481
|
+
if(entryDetails !== undefined){
|
|
482
|
+
entryDetails = updateAssetDetailsInEntries(entryDetails);
|
|
483
|
+
let createdEntry = await stackSDKInstance.contentType('${contentType}').entry().create({ entry: entryDetails }).catch(error => {
|
|
484
|
+
throw error;
|
|
485
|
+
});
|
|
486
|
+
if(createdEntry){
|
|
487
|
+
if (flag.references) {
|
|
488
|
+
await updateReferences(entryDetails, createdEntry, references);
|
|
489
|
+
}
|
|
490
|
+
await updateEntry(createdEntry, entryDetails);
|
|
488
491
|
}
|
|
489
|
-
await updateEntry(createdEntry, entryDetails);
|
|
490
492
|
}
|
|
491
493
|
});
|
|
492
494
|
} catch (error) {
|
|
@@ -497,56 +497,70 @@ function entryCreateUpdateScript(contentType) {
|
|
|
497
497
|
}
|
|
498
498
|
|
|
499
499
|
try {
|
|
500
|
-
if (contentType
|
|
501
|
-
compareBranchEntries
|
|
500
|
+
if (contentType?.options?.singleton) {
|
|
501
|
+
compareBranchEntries?.items?.map(async (el) => {
|
|
502
502
|
let entryDetails = deleteUnwantedKeysFromObject(el, keysToRemove);
|
|
503
|
-
entryDetails
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
503
|
+
if(entryDetails !== undefined){
|
|
504
|
+
entryDetails = updateAssetDetailsInEntries(entryDetails);
|
|
505
|
+
|
|
506
|
+
if (baseBranchEntries && baseBranchEntries.items.length) {
|
|
507
|
+
let baseEntryUid = baseBranchEntries.items[0].uid;
|
|
508
|
+
let entry = await stackSDKInstance.contentType('${contentType}').entry(baseEntryUid);
|
|
509
|
+
|
|
510
|
+
if (flag.references) {
|
|
511
|
+
await updateReferences(entryDetails, baseBranchEntries.items[0], references);
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
await updateEntry(entry, entryDetails);
|
|
515
|
+
} else {
|
|
516
|
+
let createdEntry = await stackSDKInstance.contentType('${contentType}').entry().create({ entry: entryDetails });
|
|
508
517
|
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
} else {
|
|
515
|
-
let createdEntry = await stackSDKInstance.contentType('${contentType}').entry().create({ entry: entryDetails });
|
|
516
|
-
|
|
517
|
-
if (flag.references) {
|
|
518
|
-
await updateReferences(entryDetails, createdEntry, references);
|
|
518
|
+
if (flag.references) {
|
|
519
|
+
await updateReferences(entryDetails, createdEntry, references);
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
await updateEntry(createdEntry, entryDetails);
|
|
519
523
|
}
|
|
520
|
-
|
|
521
|
-
await updateEntry(createdEntry, entryDetails);
|
|
522
524
|
}
|
|
523
525
|
});
|
|
524
526
|
} else {
|
|
525
527
|
let compareMap = new Map(converter(compareBranchEntries.items));
|
|
526
528
|
let baseMap = new Map(converter(baseBranchEntries.items));
|
|
527
|
-
|
|
529
|
+
|
|
530
|
+
//NOTE: Filter distinct entries from the base and compare branches according to their titles.
|
|
531
|
+
//TODO: Need to discuss this approach and replace it with uid condition
|
|
528
532
|
let arr = uniquelyConcatenateArrays(Array.from(compareMap.keys()), Array.from(baseMap.keys()));
|
|
529
|
-
|
|
533
|
+
|
|
530
534
|
arr.map(async (el) => {
|
|
531
535
|
let entryDetails = deleteUnwantedKeysFromObject(compareMap.get(el), keysToRemove);
|
|
532
|
-
|
|
533
|
-
if
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
536
|
+
//NOTE: In the compare branch, entry must exist. Condition of deleted entry not handled
|
|
537
|
+
if(entryDetails !== undefined){
|
|
538
|
+
entryDetails = updateAssetDetailsInEntries(entryDetails);
|
|
539
|
+
if (compareMap.get(el) && !baseMap.get(el)) {
|
|
540
|
+
let createdEntry = await stackSDKInstance
|
|
541
|
+
.contentType('${contentType}')
|
|
542
|
+
.entry()
|
|
543
|
+
.create({ entry: entryDetails })
|
|
544
|
+
.catch(err => {
|
|
545
|
+
(err?.errorMessage || err?.message) ? err?.errorMessage || err?.message : 'Something went wrong!'
|
|
546
|
+
})
|
|
547
|
+
|
|
548
|
+
if(createdEntry){
|
|
549
|
+
if (flag.references) {
|
|
550
|
+
await updateReferences(entryDetails, createdEntry, references);
|
|
551
|
+
}
|
|
552
|
+
await updateEntry(createdEntry, entryDetails);
|
|
553
|
+
}
|
|
554
|
+
} else if (compareMap.get(el) && baseMap.get(el)) {
|
|
555
|
+
let baseEntry = baseMap.get(el);
|
|
556
|
+
let entry = await stackSDKInstance.contentType('${contentType}').entry(baseEntry.uid);
|
|
557
|
+
|
|
558
|
+
if (flag.references) {
|
|
559
|
+
await updateReferences(entryDetails, baseEntry, references);
|
|
560
|
+
}
|
|
539
561
|
|
|
540
|
-
|
|
541
|
-
} else if (compareMap.get(el) && baseMap.get(el)) {
|
|
542
|
-
let baseEntry = baseMap.get(el);
|
|
543
|
-
let entry = await stackSDKInstance.contentType('${contentType}').entry(baseEntry.uid);
|
|
544
|
-
|
|
545
|
-
if (flag.references) {
|
|
546
|
-
await updateReferences(entryDetails, baseEntry, references);
|
|
562
|
+
await updateEntry(entry, entryDetails);
|
|
547
563
|
}
|
|
548
|
-
|
|
549
|
-
await updateEntry(entry, entryDetails);
|
|
550
564
|
}
|
|
551
565
|
});
|
|
552
566
|
}
|
|
@@ -494,56 +494,70 @@ function entryUpdateScript(contentType) {
|
|
|
494
494
|
}
|
|
495
495
|
|
|
496
496
|
try {
|
|
497
|
-
if (contentType
|
|
498
|
-
compareBranchEntries
|
|
497
|
+
if (contentType?.options?.singleton) {
|
|
498
|
+
compareBranchEntries?.items?.map(async (el) => {
|
|
499
499
|
let entryDetails = deleteUnwantedKeysFromObject(el, keysToRemove);
|
|
500
|
-
entryDetails
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
500
|
+
if(entryDetails !== undefined){
|
|
501
|
+
entryDetails = updateAssetDetailsInEntries(entryDetails);
|
|
502
|
+
if (baseBranchEntries && baseBranchEntries.items.length) {
|
|
503
|
+
let baseEntryUid = baseBranchEntries.items[0].uid;
|
|
504
|
+
let entry = await stackSDKInstance.contentType('${contentType}').entry(baseEntryUid);
|
|
505
|
+
|
|
506
|
+
if (flag.references) {
|
|
507
|
+
await updateReferences(entryDetails, baseBranchEntries.items[0], references);
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
await updateEntry(entry, entryDetails);
|
|
511
|
+
} else {
|
|
512
|
+
let createdEntry = await stackSDKInstance.contentType('${contentType}').entry().create({ entry: entryDetails });
|
|
505
513
|
|
|
506
|
-
|
|
507
|
-
|
|
514
|
+
if (flag.references) {
|
|
515
|
+
await updateReferences(entryDetails, createdEntry, references);
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
await updateEntry(createdEntry, entryDetails);
|
|
508
519
|
}
|
|
509
|
-
|
|
510
|
-
await updateEntry(entry, entryDetails);
|
|
511
|
-
} else {
|
|
512
|
-
let createdEntry = await stackSDKInstance.contentType('${contentType}').entry().create({ entry: entryDetails });
|
|
513
|
-
|
|
514
|
-
if (flag.references) {
|
|
515
|
-
await updateReferences(entryDetails, createdEntry, references);
|
|
516
|
-
}
|
|
517
|
-
|
|
518
|
-
await updateEntry(createdEntry, entryDetails);
|
|
519
520
|
}
|
|
520
521
|
});
|
|
521
522
|
} else {
|
|
522
523
|
let compareMap = new Map(converter(compareBranchEntries.items));
|
|
523
524
|
let baseMap = new Map(converter(baseBranchEntries.items));
|
|
524
|
-
|
|
525
|
+
|
|
526
|
+
//NOTE: Filter distinct entries from the base and compare branches according to their titles.
|
|
527
|
+
//TODO: Need to discuss this approach and replace it with uid approach
|
|
525
528
|
let arr = uniquelyConcatenateArrays(Array.from(compareMap.keys()), Array.from(baseMap.keys()));
|
|
526
529
|
|
|
527
530
|
arr.map(async (el) => {
|
|
528
531
|
let entryDetails = deleteUnwantedKeysFromObject(compareMap.get(el), keysToRemove);
|
|
529
|
-
|
|
530
|
-
if
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
let entry = await stackSDKInstance.contentType('${contentType}').entry(baseEntry.uid);
|
|
532
|
+
//NOTE: In the compare branch, entry must exist. Condition of deleted entry not handled
|
|
533
|
+
if(entryDetails !== undefined){
|
|
534
|
+
entryDetails = updateAssetDetailsInEntries(entryDetails);
|
|
535
|
+
if (compareMap.get(el) && !baseMap.get(el)) {
|
|
536
|
+
let createdEntry = await stackSDKInstance
|
|
537
|
+
.contentType('${contentType}')
|
|
538
|
+
.entry()
|
|
539
|
+
.create({ entry: entryDetails })
|
|
540
|
+
.catch(err => {
|
|
541
|
+
(err?.errorMessage || err?.message) ? err?.errorMessage || err?.message : 'Something went wrong!'
|
|
542
|
+
})
|
|
541
543
|
|
|
542
|
-
|
|
543
|
-
|
|
544
|
+
if(createdEntry){
|
|
545
|
+
if (flag.references) {
|
|
546
|
+
await updateReferences(entryDetails, createdEntry, references);
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
await updateEntry(createdEntry, entryDetails);
|
|
550
|
+
}
|
|
551
|
+
} else if (compareMap.get(el) && baseMap.get(el)) {
|
|
552
|
+
let baseEntry = baseMap.get(el);
|
|
553
|
+
let entry = await stackSDKInstance.contentType('${contentType}').entry(baseEntry.uid);
|
|
554
|
+
|
|
555
|
+
if (flag.references) {
|
|
556
|
+
await updateReferences(entryDetails, baseEntry, references);
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
await updateEntry(entry, entryDetails);
|
|
544
560
|
}
|
|
545
|
-
|
|
546
|
-
await updateEntry(entry, entryDetails);
|
|
547
561
|
}
|
|
548
562
|
});
|
|
549
563
|
}
|
package/oclif.manifest.json
CHANGED
package/package.json
CHANGED