@builttocreate/engine-utils 2.11.0-beta.1 → 2.11.0-beta.3
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/dist/joyDocHelper.js +17 -4
- package/package.json +1 -1
package/dist/joyDocHelper.js
CHANGED
|
@@ -270,7 +270,7 @@ var getCleanedJoyDocPages = exports.getCleanedJoyDocPages = function getCleanedJ
|
|
|
270
270
|
* Step 1: Replace pages[x]._id if it is not valid (always use objectId for pages)
|
|
271
271
|
*/
|
|
272
272
|
var nextPage = _objectSpread({}, page);
|
|
273
|
-
if (nextPage._id && !(0, _validateObjectId["default"])(nextPage._id)) nextPage._id = (0, _generateObjectId["default"])();
|
|
273
|
+
if (nextPage._id && !(0, _validateObjectId["default"])(nextPage._id) && !(0, _validateReadableId["default"])(nextPage._id)) nextPage._id = (0, _generateObjectId["default"])();
|
|
274
274
|
if (nextPage.fieldPositions && nextPage.fieldPositions.length > 0) {
|
|
275
275
|
nextPage.fieldPositions = nextPage.fieldPositions.map(function (fieldPosition) {
|
|
276
276
|
/**
|
|
@@ -280,7 +280,7 @@ var getCleanedJoyDocPages = exports.getCleanedJoyDocPages = function getCleanedJ
|
|
|
280
280
|
var nextFieldPosition = _objectSpread({}, fieldPosition);
|
|
281
281
|
|
|
282
282
|
// Clean fieldPosition _id
|
|
283
|
-
nextFieldPosition._id = nextFieldPosition._id && (0, _validateObjectId["default"])(nextFieldPosition._id) ? nextFieldPosition._id : (0, _generateObjectId["default"])();
|
|
283
|
+
nextFieldPosition._id = nextFieldPosition._id && ((0, _validateObjectId["default"])(nextFieldPosition._id) || (0, _validateReadableId["default"])(nextFieldPosition._id)) ? nextFieldPosition._id : (0, _generateObjectId["default"])();
|
|
284
284
|
|
|
285
285
|
// Clean fieldPosition.field reference
|
|
286
286
|
nextFieldPosition.field = getFieldId(nextFieldPosition.field, fieldPosition.type, doc);
|
|
@@ -452,7 +452,7 @@ var duplicateDocumentPage = exports.duplicateDocumentPage = function duplicateDo
|
|
|
452
452
|
var newPageId = (0, _generateObjectId["default"])();
|
|
453
453
|
var fieldLookup = {};
|
|
454
454
|
(_nextDoc$fields = nextDoc.fields) === null || _nextDoc$fields === void 0 || _nextDoc$fields.forEach(function (field) {
|
|
455
|
-
|
|
455
|
+
fieldLookup[field._id] = field;
|
|
456
456
|
});
|
|
457
457
|
|
|
458
458
|
/**
|
|
@@ -484,6 +484,7 @@ var duplicateDocumentPage = exports.duplicateDocumentPage = function duplicateDo
|
|
|
484
484
|
var newFieldsLookupByOldId = {};
|
|
485
485
|
var duplicatedFields = [];
|
|
486
486
|
fieldIdsToDuplicate.forEach(function (fieldId) {
|
|
487
|
+
var _nextDoc$files$fileIn, _nextDoc$files$fileIn2;
|
|
487
488
|
/**
|
|
488
489
|
* Why do we check if a new field has already been created?
|
|
489
490
|
*
|
|
@@ -494,9 +495,21 @@ var duplicateDocumentPage = exports.duplicateDocumentPage = function duplicateDo
|
|
|
494
495
|
*/
|
|
495
496
|
if (newFieldsLookupByOldId[fieldId]) return;
|
|
496
497
|
var field = fieldLookup[fieldId];
|
|
498
|
+
|
|
499
|
+
// Skip if field not found in lookup
|
|
500
|
+
if (!field) return;
|
|
501
|
+
|
|
502
|
+
// Generate readable ID using current fields plus already duplicated fields
|
|
503
|
+
var allFields = [].concat((0, _toConsumableArray2["default"])(nextDoc.fields), (0, _toConsumableArray2["default"])(duplicatedFields));
|
|
497
504
|
var duplicateField = _objectSpread(_objectSpread({}, field), {}, {
|
|
498
|
-
_id: (0,
|
|
505
|
+
_id: (0, _generateReadableId.generateReadableId)({
|
|
506
|
+
fields: allFields,
|
|
507
|
+
pages: (_nextDoc$files$fileIn = nextDoc.files[fileIndex]) === null || _nextDoc$files$fileIn === void 0 ? void 0 : _nextDoc$files$fileIn.pages,
|
|
508
|
+
views: (_nextDoc$files$fileIn2 = nextDoc.files[fileIndex]) === null || _nextDoc$files$fileIn2 === void 0 ? void 0 : _nextDoc$files$fileIn2.views
|
|
509
|
+
}, field.type)
|
|
499
510
|
});
|
|
511
|
+
// Remove formulas property when duplicating
|
|
512
|
+
delete duplicateField.formulas;
|
|
500
513
|
duplicatedFields.push(duplicateField);
|
|
501
514
|
|
|
502
515
|
/**
|