diff --git a/@types/lib/Builder.d.ts.map b/@types/lib/Builder.d.ts.map index 2057fca31..846c9fdda 100644 --- a/@types/lib/Builder.d.ts.map +++ b/@types/lib/Builder.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Builder.d.ts","sourceRoot":"","sources":["../../lib/Builder.js"],"names":[],"mappings":";uBAUa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;sBAC7C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;gCACnD,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;AAZtD;;;;;;;;;;;;;GAaG;AAEH;;GAEG;AACH;IAuEI;;;;;;;;OAQG;IACH,mCANW,MAAM,gBACN,MAAM,UACN,MAAM,EAAE,aACR,MAAM,EAAE,GACN,OAAO,CAAE,qBAAqB,CAAC,CA+B3C;IA2CD;;;;;;;;OAQG;IACH,qCANW,MAAM,gBACN,MAAM,WACN,MAAM,EAAE,aACR,MAAM,EAAE,GACN,OAAO,CAAE,qBAAqB,CAAC,CA+B3C;IAED;;;;;;;OAOG;IACH,qCALW,MAAM,QACN,MAAM,WACN,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,CAAC,CAuD5B;IA5PD;;;;;;OAMG;IACH,wBAJW,OAAO,YAEP,QAAQ,EAyBlB;IAtBG,kDAA4B;IAC5B,oBAAkD;IAClD,oBAIE;IACF,iDAAwB;IAMxB,oBAGC;IAED;;OAEG;IACH,UAFU,qBAAqB,CAEb;IAGtB;;;;;;;OAOG;IACH,+BALW,MAAM,WACN,MAAM,EAAE,qBACR,WAAW,GACT,OAAO,CAAE,qBAAqB,CAAC,CA8B3C;IA0CD;;;;;;;OAOG;IACH,6BALW,MAAM,UACN,MAAM,EAAE,qBACR,WAAW,GACT,OAAO,CAAE,qBAAqB,CAAC,CAiC3C;CAwGJ"} \ No newline at end of file +{"version":3,"file":"Builder.d.ts","sourceRoot":"","sources":["../../lib/Builder.js"],"names":[],"mappings":";uBAUa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;sBAC7C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;gCACnD,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;AAZtD;;;;;;;;;;;;;GAaG;AAEH;;GAEG;AACH;IA0EI;;;;;;;;OAQG;IACH,mCANW,MAAM,gBACN,MAAM,UACN,MAAM,EAAE,aACR,MAAM,EAAE,GACN,OAAO,CAAE,qBAAqB,CAAC,CA+B3C;IA2CD;;;;;;;;OAQG;IACH,qCANW,MAAM,gBACN,MAAM,WACN,MAAM,EAAE,aACR,MAAM,EAAE,GACN,OAAO,CAAE,qBAAqB,CAAC,CAgC3C;IAED;;;;;;;OAOG;IACH,qCALW,MAAM,QACN,MAAM,WACN,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,CAAC,CAuD5B;IAhQD;;;;;;OAMG;IACH,wBAJW,OAAO,YAEP,QAAQ,EA4BlB;IAzBG,kDAA4B;IAC5B,oBAAkD;IAClD,oBAIE;IACF,iDAAwB;IAMxB,oBAMC;IAED;;OAEG;IACH,UAFU,qBAAqB,CAEb;IAGtB;;;;;;;OAOG;IACH,+BALW,MAAM,WACN,MAAM,EAAE,qBACR,WAAW,GACT,OAAO,CAAE,qBAAqB,CAAC,CA8B3C;IA0CD;;;;;;;OAOG;IACH,6BALW,MAAM,UACN,MAAM,EAAE,qBACR,WAAW,GACT,OAAO,CAAE,qBAAqB,CAAC,CAiC3C;CAyGJ"} \ No newline at end of file diff --git a/@types/lib/Deployer.d.ts.map b/@types/lib/Deployer.d.ts.map index 5080f9895..1bf3bd999 100644 --- a/@types/lib/Deployer.d.ts.map +++ b/@types/lib/Deployer.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Deployer.d.ts","sourceRoot":"","sources":["../../lib/Deployer.js"],"names":[],"mappings":";uBAYa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;sBAC7C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;gCACnD,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;mCACzC,OAAO,qBAAqB,EAAE,oBAAoB;2BAClD,OAAO,qBAAqB,EAAE,YAAY;sBAE1C,OAAO,qBAAqB,EAAE,OAAO;AAhBlD;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;GAGG;AACH;IA0BI;;;;;;;OAOG;IACH,4BALW,MAAM,qBACN,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE;YAAQ,MAAM,GAAE,oBAAoB;KAAC,CAAC,CA2J3D;IAED;;;;;;;;;OASG;IACH,uBAPW,MAAM,MACN,MAAM,cACN,OAAO,YACP,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE,oBAAoB,CAAC,CAsB1C;IA2HD;;;;;;;OAOG;IACH,iCALW,MAAM,YACN,MAAM,EAAE,gBACR,OAAO,GACL,OAAO,CAAE,oBAAoB,CAAC,CA4B1C;IAED;;;;;;;OAOG;IACH,0CALW,MAAM,YACN,oBAAoB,mBACpB,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,CAAC,CA8G5B;IA7eD;;;;;OAKG;IACH,wBAHW,OAAO,YACP,QAAQ,EAmBlB;IAhBG,iDAAwB;IACxB,kDAA4B;IAC5B,kBAIE;IACF,oBAIE;IA0MN;;;;;;OAMG;IACH,gBAJW,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE,oBAAoB,CAAC,CAkH1C;IA1GO,mCAAmC;IACnC,UADW,oBAAoB,CACuC;CAoQjF"} \ No newline at end of file +{"version":3,"file":"Deployer.d.ts","sourceRoot":"","sources":["../../lib/Deployer.js"],"names":[],"mappings":";uBAYa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;sBAC7C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;gCACnD,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;mCACzC,OAAO,qBAAqB,EAAE,oBAAoB;2BAClD,OAAO,qBAAqB,EAAE,YAAY;sBAE1C,OAAO,qBAAqB,EAAE,OAAO;AAhBlD;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;GAGG;AACH;IA0BI;;;;;;;OAOG;IACH,4BALW,MAAM,qBACN,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE;YAAQ,MAAM,GAAE,oBAAoB;KAAC,CAAC,CA2J3D;IAED;;;;;;;;;OASG;IACH,uBAPW,MAAM,MACN,MAAM,cACN,OAAO,YACP,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE,oBAAoB,CAAC,CAsB1C;IA8HD;;;;;;;OAOG;IACH,iCALW,MAAM,YACN,MAAM,EAAE,gBACR,OAAO,GACL,OAAO,CAAE,oBAAoB,CAAC,CA4B1C;IAED;;;;;;;OAOG;IACH,0CALW,MAAM,YACN,oBAAoB,mBACpB,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,CAAC,CA8G5B;IAhfD;;;;;OAKG;IACH,wBAHW,OAAO,YACP,QAAQ,EAmBlB;IAhBG,iDAAwB;IACxB,kDAA4B;IAC5B,kBAIE;IACF,oBAIE;IA0MN;;;;;;OAMG;IACH,gBAJW,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE,oBAAoB,CAAC,CAqH1C;IA7GO,mCAAmC;IACnC,UADW,oBAAoB,CACuC;CAuQjF"} \ No newline at end of file diff --git a/@types/lib/index.d.ts b/@types/lib/index.d.ts index 6588c09c4..77f683895 100644 --- a/@types/lib/index.d.ts +++ b/@types/lib/index.d.ts @@ -273,9 +273,10 @@ declare class Mcdev { * @param {string | TypeKeyCombo} selectedTypes limit retrieval to given metadata type * @param {string[] | undefined} nameArr name of the metadata * @param {string[]} marketArr market localizations + * @param {boolean} [isPurgeDeployFolder] whether to purge the deploy folder * @returns {Promise.} - */ - static buildDefinition(businessUnit: string, selectedTypes: string | TypeKeyCombo, nameArr: string[] | undefined, marketArr: string[]): Promise; + static buildDefinition(businessUnit: string, selectedTypes: string | TypeKeyCombo, nameArr: string[] | undefined, marketArr: string[], isPurgeDeployFolder?: boolean): Promise; /** * Build a specific metadata file based on a template using a list of bu-market combos * @@ -319,6 +320,19 @@ declare class Mcdev { [x: string]: string[]; }; }>; + /** + * Publish an item + * + * @param {string} businessUnit name of BU + * @param {string[] | TypeKeyCombo} selectedTypes limit to given metadata types + * @param {string[]} [keys] customerkey of the metadata + * @returns {Promise.>>} key: business unit name, key2: type, value: list of affected item keys + */ + static validate(businessUnit: string, selectedTypes: string[] | TypeKeyCombo, keys?: string[]): Promise<{ + [x: string]: { + [x: string]: string[]; + }; + }>; /** * Start/execute an item * @@ -384,13 +398,13 @@ declare class Mcdev { /** * run a method across BUs * - * @param {'execute'|'pause'|'stop'|'publish'|'fixKeys'|'replaceCbReference'} methodName what to run + * @param {'execute'|'pause'|'stop'|'publish'|'validate'|'fixKeys'|'replaceCbReference'} methodName what to run * @param {string} businessUnit name of BU * @param {string[] | TypeKeyCombo} [selectedTypes] limit to given metadata types * @param {string[]} [keys] customerkey of the metadata * @returns {Promise.>>} key: business unit name, key2: type, value: list of affected item keys */ - static "__#8@#runMethod"(methodName: "execute" | "pause" | "stop" | "publish" | "fixKeys" | "replaceCbReference", businessUnit: string, selectedTypes?: string[] | TypeKeyCombo, keys?: string[]): Promise<{ + static "__#8@#runMethod"(methodName: "execute" | "pause" | "stop" | "publish" | "validate" | "fixKeys" | "replaceCbReference", businessUnit: string, selectedTypes?: string[] | TypeKeyCombo, keys?: string[]): Promise<{ [x: string]: { [x: string]: string[]; }; @@ -398,14 +412,14 @@ declare class Mcdev { /** * helper for Mcdev.#runMethod * - * @param {'execute'|'pause'|'stop'|'publish'|'fixKeys'|'replaceCbReference'} methodName what to run + * @param {'execute'|'pause'|'stop'|'publish'|'validate'|'fixKeys'|'replaceCbReference'} methodName what to run * @param {string} cred name of Credential * @param {string} bu name of BU * @param {string} [type] limit execution to given metadata type * @param {string[]} [keyArr] customerkey of the metadata * @returns {Promise.} list of keys that were affected */ - static "__#8@#runOnBU"(methodName: "execute" | "pause" | "stop" | "publish" | "fixKeys" | "replaceCbReference", cred: string, bu: string, type?: string, keyArr?: string[]): Promise; + static "__#8@#runOnBU"(methodName: "execute" | "pause" | "stop" | "publish" | "validate" | "fixKeys" | "replaceCbReference", cred: string, bu: string, type?: string, keyArr?: string[]): Promise; /** * helper for Mcdev.#runOnBU * diff --git a/@types/lib/index.d.ts.map b/@types/lib/index.d.ts.map index 7d60d5028..ce2d488b1 100644 --- a/@types/lib/index.d.ts.map +++ b/@types/lib/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.js"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.js"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/Asset.d.ts b/@types/lib/metadataTypes/Asset.d.ts index 8ceba5402..c05bc47cc 100644 --- a/@types/lib/metadataTypes/Asset.d.ts +++ b/@types/lib/metadataTypes/Asset.d.ts @@ -195,17 +195,6 @@ declare class Asset extends MetadataType { * @returns {string} subType: block, message, other, etc */ static "__#3@#getMainSubtype"(extendedSubType: string): string; - /** - * helper to find a new unique name during asset creation - * - * @private - * @param {string} key key of the asset - * @param {string} name name of the asset - * @param {string} type assetType-name - * @param {{ type: string; key: string; name: any; }[]} namesInFolder names of the assets in the same folder - * @returns {string} new name - */ - private static _findUniqueName; /** * determines the subtype of the current asset * diff --git a/@types/lib/metadataTypes/Asset.d.ts.map b/@types/lib/metadataTypes/Asset.d.ts.map index 135df35e1..3a5d59728 100644 --- a/@types/lib/metadataTypes/Asset.d.ts.map +++ b/@types/lib/metadataTypes/Asset.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Asset.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Asset.js"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Asset.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Asset.js"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/Automation.d.ts b/@types/lib/metadataTypes/Automation.d.ts index 01d4702a2..761f2c4fc 100644 --- a/@types/lib/metadataTypes/Automation.d.ts +++ b/@types/lib/metadataTypes/Automation.d.ts @@ -74,7 +74,7 @@ declare class Automation extends MetadataType { * @param {MetadataTypeMap} metadataMap keyField => metadata map * @returns {Promise.} Promise of automation legacy api response */ - static "__#4@#getAutomationNotificationsREST"(metadataMap: MetadataTypeMap): Promise; + static "__#4@#getAutomationLegacyREST"(metadataMap: MetadataTypeMap): Promise; /** * Retrieves Metadata of Automation * @@ -544,7 +544,8 @@ declare namespace Automation { typeDescription: string; typeRetrieveByDefault: boolean; typeName: string; - manualDeployTypes: string[]; + customDeployTypes: string[]; + manualDeployTypes: any[]; fields: { categoryId: { isCreateable: boolean; @@ -855,6 +856,12 @@ declare namespace Automation { 'steps[].activities[].r__key': { skipValidation: boolean; }; + 'steps[].activities[].timeZone': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; 'steps[].description': { isCreateable: boolean; isUpdateable: boolean; diff --git a/@types/lib/metadataTypes/Automation.d.ts.map b/@types/lib/metadataTypes/Automation.d.ts.map index bc3c43168..9f946999a 100644 --- a/@types/lib/metadataTypes/Automation.d.ts.map +++ b/@types/lib/metadataTypes/Automation.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Automation.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Automation.js"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Automation.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Automation.js"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/DataExtension.d.ts b/@types/lib/metadataTypes/DataExtension.d.ts index e7be46d84..7b213f645 100644 --- a/@types/lib/metadataTypes/DataExtension.d.ts +++ b/@types/lib/metadataTypes/DataExtension.d.ts @@ -193,7 +193,7 @@ declare class DataExtension extends MetadataType { * @param {string[]} [additionalFields] Returns specified fields even if their retrieve definition is not set to true * @returns {Promise.} - */ - static "__#5@#attachFields"(metadata: DataExtensionMap, fieldOptions?: SoapRequestParams, additionalFields?: string[]): Promise; + static attachFields(metadata: DataExtensionMap, fieldOptions?: SoapRequestParams, additionalFields?: string[]): Promise; /** * Retrieves dataExtension metadata. Afterwards starts retrieval of dataExtensionColumn metadata retrieval * diff --git a/@types/lib/metadataTypes/DataExtension.d.ts.map b/@types/lib/metadataTypes/DataExtension.d.ts.map index 159643777..5f0e2fc8e 100644 --- a/@types/lib/metadataTypes/DataExtension.d.ts.map +++ b/@types/lib/metadataTypes/DataExtension.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"DataExtension.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/DataExtension.js"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"DataExtension.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/DataExtension.js"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/DataExtensionField.d.ts b/@types/lib/metadataTypes/DataExtensionField.d.ts index 828fe9f83..decb21b59 100644 --- a/@types/lib/metadataTypes/DataExtensionField.d.ts +++ b/@types/lib/metadataTypes/DataExtensionField.d.ts @@ -45,6 +45,12 @@ declare class DataExtensionField extends MetadataType { metadata: DataExtensionFieldMap; type: string; }>; + /** + * Retrieves all records and saves it to disk + * + * @returns {Promise.} Promise of items + */ + static retrieveForCache(): Promise; /** * Retrieves all records for caching * @@ -106,7 +112,7 @@ declare class DataExtensionField extends MetadataType { declare namespace DataExtensionField { let definition: { bodyIteratorField: string; - dependencies: any[]; + dependencies: string[]; dependencyGraph: any; filter: {}; hasExtended: boolean; diff --git a/@types/lib/metadataTypes/DataExtensionField.d.ts.map b/@types/lib/metadataTypes/DataExtensionField.d.ts.map index bfe6d8852..5b41eb4b9 100644 --- a/@types/lib/metadataTypes/DataExtensionField.d.ts.map +++ b/@types/lib/metadataTypes/DataExtensionField.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"DataExtensionField.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/DataExtensionField.js"],"names":[],"mappings":";uBAMa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;oCAI5C,OAAO,wBAAwB,EAAE,qBAAqB;qCACtD,OAAO,wBAAwB,EAAE,sBAAsB;AAfpE;;;;;;;;;;;GAWG;AAEH;;;GAGG;AAEH;;;;GAIG;AACH;IACI,6BAAwB;IAExB;;;;;;OAMG;IACH,6BAJW,MAAM,qBACN,MAAM,EAAE,GACN,OAAO,CAAE;QAAC,QAAQ,EAAE,qBAAqB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAIrE;IAED;;;;;;OAMG;IACH,0CAJW,iBAAiB,qBACjB,MAAM,EAAE,GACN,OAAO,CAAE;QAAC,QAAQ,EAAE,qBAAqB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAUrE;IAED;;;;;OAKG;IACH,uCAHW,qBAAqB,GACnB,sBAAsB,EAAE,CASpC;IAED;;;;;;OAMG;IACH,uBAJW,sBAAsB,KACtB,sBAAsB,GACpB,MAAM,CAIlB;IAED;;;;;OAKG;IACH,qCAHW,sBAAsB,GACpB,sBAAsB,CAelC;IAED;;;;;;;OAOG;IACH,mDAJW,sBAAsB,EAAE,SACxB,MAAM,GACJ,OAAO,CAAE,qBAAqB,CAAC,CAsK3C;IAYD;;;;;;OAMG;IACH,oCAJW,MAAM,YACN,MAAM,GACJ,OAAO,CAAE,OAAO,CAAC,CAsD7B;IAED;;;;;OAKG;IACH,oCAHW,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAO1B;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAzWwB,mBAAmB"} \ No newline at end of file +{"version":3,"file":"DataExtensionField.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/DataExtensionField.js"],"names":[],"mappings":";uBAOa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;oCAI5C,OAAO,wBAAwB,EAAE,qBAAqB;qCACtD,OAAO,wBAAwB,EAAE,sBAAsB;AAfpE;;;;;;;;;;;GAWG;AAEH;;;GAGG;AAEH;;;;GAIG;AACH;IACI,6BAAwB;IAExB;;;;;;OAMG;IACH,6BAJW,MAAM,qBACN,MAAM,EAAE,GACN,OAAO,CAAE;QAAC,QAAQ,EAAE,qBAAqB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAIrE;IACD;;;;OAIG;IACH,2BAFa,OAAO,CAAE,kBAAkB,CAAC,CAQxC;IAED;;;;;;OAMG;IACH,0CAJW,iBAAiB,qBACjB,MAAM,EAAE,GACN,OAAO,CAAE;QAAC,QAAQ,EAAE,qBAAqB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAUrE;IAED;;;;;OAKG;IACH,uCAHW,qBAAqB,GACnB,sBAAsB,EAAE,CASpC;IAED;;;;;;OAMG;IACH,uBAJW,sBAAsB,KACtB,sBAAsB,GACpB,MAAM,CAIlB;IAED;;;;;OAKG;IACH,qCAHW,sBAAsB,GACpB,sBAAsB,CAelC;IAED;;;;;;;OAOG;IACH,mDAJW,sBAAsB,EAAE,SACxB,MAAM,GACJ,OAAO,CAAE,qBAAqB,CAAC,CAsK3C;IAYD;;;;;;OAMG;IACH,oCAJW,MAAM,YACN,MAAM,GACJ,OAAO,CAAE,OAAO,CAAC,CAsD7B;IAED;;;;;OAKG;IACH,oCAHW,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAO1B;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAtXwB,mBAAmB"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/Event.d.ts b/@types/lib/metadataTypes/Event.d.ts index ad1abea8c..493b47245 100644 --- a/@types/lib/metadataTypes/Event.d.ts +++ b/@types/lib/metadataTypes/Event.d.ts @@ -13,6 +13,7 @@ export type ReferenceObject = import("../../types/mcdev.d.js").ReferenceObject; export type SfObjectField = import("../../types/mcdev.d.js").SfObjectField; export type configurationArguments = import("../../types/mcdev.d.js").configurationArguments; export type Conditions = import("../../types/mcdev.d.js").Conditions; +export type DataExtensionItem = import("../../types/mcdev.d.js").DataExtensionItem; /** * @typedef {import('../../types/mcdev.d.js').BuObject} BuObject * @typedef {import('../../types/mcdev.d.js').CodeExtract} CodeExtract @@ -29,6 +30,7 @@ export type Conditions = import("../../types/mcdev.d.js").Conditions; * @typedef {import('../../types/mcdev.d.js').SfObjectField} SfObjectField * @typedef {import('../../types/mcdev.d.js').configurationArguments} configurationArguments * @typedef {import('../../types/mcdev.d.js').Conditions} Conditions + * @typedef {import('../../types/mcdev.d.js').DataExtensionItem} DataExtensionItem */ /** * Event MetadataType @@ -143,8 +145,9 @@ declare class Event extends MetadataType { * * @param {configurationArguments} ca trigger[0].configurationArguments * @param {boolean} isPublished if the current item is published it means we do not need to do contact vs common checks + * @returns {string} warnings or null */ - static checkSalesforceEntryEvents(ca: configurationArguments, isPublished: boolean): void; + static checkSalesforceEntryEvents(ca: configurationArguments, isPublished: boolean): string; /** * * @param {object[]} conditions - @@ -166,16 +169,25 @@ declare class Event extends MetadataType { /** * * @param {string} triggerType e.g. SalesforceObjectTriggerV2, APIEvent, ... - * @param {configurationArguments} ca trigger[0].configurationArguments + * @param {string[]} eventDataSummary eventDataConfig in simplified string-form + * @param {string} deKey key of associated dataExtension * @returns {Promise.} - */ - static preDeployTasks_SalesforceEntryEvents(triggerType: string, ca: configurationArguments): Promise; + static compareSalesforceEntryEvents_dataExtension(triggerType: string, eventDataSummary: string[], deKey: string): Promise; + /** + * + * @param {string} triggerType e.g. SalesforceObjectTriggerV2, APIEvent, ... + * @param {configurationArguments} ca trigger[0].configurationArguments + * @returns {Promise.} - + */ + static preDeployTasks_SalesforceEntryEvents(triggerType: string, ca: configurationArguments): Promise; } declare namespace Event { let definition: { bodyIteratorField: string; dependencies: string[]; dependencyGraph: { + automation: string[]; dataExtension: string[]; }; hasExtended: boolean; @@ -378,6 +390,30 @@ declare namespace Event { retrieving: boolean; template: boolean; }; + 'configurationArguments.contactKey.relationshipIdName': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.contactKey.relationshipName': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.contactKey.isPolymorphic': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.contactKey.referenceObjectName': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; 'configurationArguments.contactPersonType': { isCreateable: boolean; isUpdateable: boolean; @@ -402,6 +438,9 @@ declare namespace Event { retrieving: boolean; template: boolean; }; + 'configurationArguments.eventDataConfig.objects': { + skipValidation: boolean; + }; 'configurationArguments.eventDataSummary': { isCreateable: boolean; isUpdateable: boolean; @@ -420,12 +459,27 @@ declare namespace Event { retrieving: boolean; template: boolean; }; - 'configurationArguments.primaryObjectFilterCriteria': { + 'configurationArguments.passThroughArgument.fields': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.passThroughArgument.fields.ContactKey': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; + 'configurationArguments.passThroughArgument.fields.Email': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.primaryObjectFilterCriteria': { + skipValidation: boolean; + }; 'configurationArguments.primaryObjectFilterSummary': { isCreateable: boolean; isUpdateable: boolean; @@ -1140,6 +1194,12 @@ declare namespace Event { retrieving: boolean; template: boolean; }; + r__automation_key: { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; }; }; } diff --git a/@types/lib/metadataTypes/Event.d.ts.map b/@types/lib/metadataTypes/Event.d.ts.map index 9b0596e2b..9f14edd44 100644 --- a/@types/lib/metadataTypes/Event.d.ts.map +++ b/@types/lib/metadataTypes/Event.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Event.js"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Event.js"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/Journey.d.ts b/@types/lib/metadataTypes/Journey.d.ts index beec70112..0d8e108d3 100644 --- a/@types/lib/metadataTypes/Journey.d.ts +++ b/@types/lib/metadataTypes/Journey.d.ts @@ -104,7 +104,7 @@ declare class Journey extends MetadataType { */ static publish(keyArr: string[]): Promise; /** - * helper for {@link Journey.publish} + * helper for {@link Journey.publish} and {@link Journey.validate} * * @param {string} statusUrl URL to check the status of the publish request * @param {string} key journey-key or id for log messages @@ -124,6 +124,13 @@ declare class Journey extends MetadataType { errors: any[]; warnings: any[]; }): void; + /** + * a function to validate the journey via API + * + * @param {string[]} keyArr keys or ids of the metadata + * @returns {Promise.} Returns list of updated keys/ids that were published. Success could only be seen with a delay in the UI because the publish-endpoint is async + */ + static validate(keyArr: string[]): Promise; } declare namespace Journey { let definition: { @@ -212,12 +219,48 @@ declare namespace Journey { retrieving: boolean; template: boolean; }; + 'activities[].configurationArguments.triggeredSendKey': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'activities[].configurationArguments.triggeredSendId': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; 'activities[].configurationArguments.triggeredSend': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; + 'activities[].configurationArguments.triggeredSend.id': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'activities[].configurationArguments.triggeredSend.key': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'activities[].configurationArguments.triggeredSend.campaigns': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'activities[].configurationArguments.triggeredSend.suppressionLists': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; 'activities[].configurationArguments.triggeredSend.autoAddSubscribers': { isCreateable: boolean; isUpdateable: boolean; @@ -870,10 +913,7 @@ declare namespace Journey { template: boolean; }; 'triggers[].configurationArguments.eventDataConfig': { - isCreateable: boolean; - isUpdateable: boolean; - retrieving: boolean; - template: boolean; + skipValidation: boolean; }; 'triggers[].configurationArguments.primaryObjectFilterCriteria': { skipValidation: boolean; diff --git a/@types/lib/metadataTypes/Journey.d.ts.map b/@types/lib/metadataTypes/Journey.d.ts.map index 687845f5b..4f01e647b 100644 --- a/@types/lib/metadataTypes/Journey.d.ts.map +++ b/@types/lib/metadataTypes/Journey.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Journey.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Journey.js"],"names":[],"mappings":";uBAca,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;;;;;GAQG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CA8JxC;IAoGD;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAS1B;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAmBD;;;;OAIG;IACH,2CAFW,eAAe,iBAmBzB;IAED;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAsMtC;IAED;;;;;OAKG;IACH,6CAklBC;IAED;;;;;;OAMG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAiJtC;IAED;;;;;OAKG;IACH,0CAyOC;IAsMD;;;;OAIG;IACH,sCAFW,eAAe,iBAWzB;IAED;;;;;OAKG;IACH,uBAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAqQ9B;IAED;;;;;;;;;OASG;IACH,sCAPW,MAAM,OACN,MAAM,QACN,MAAM,WACN,OAAO,eAAe,EAAE,OAAO,UAC/B,MAAM,GACJ,OAAO,CAAE,MAAM,CAAC,CA0C5B;IAED;;;;OAIG;IACH,2CAFW;QAAC,MAAM,EAAC,MAAM,CAAC;QAAC,MAAM,QAAO;QAAC,QAAQ,QAAM;KAAC,QAgCvD;CAuIJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAxtEwB,mBAAmB"} \ No newline at end of file +{"version":3,"file":"Journey.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Journey.js"],"names":[],"mappings":";uBAca,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;;;;;GAQG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CA8JxC;IAoGD;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAS1B;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAmBD;;;;OAIG;IACH,2CAFW,eAAe,iBAmBzB;IAED;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAwMtC;IAED;;;;;OAKG;IACH,6CAulBC;IAED;;;;;;OAMG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAsJtC;IAED;;;;;OAKG;IACH,0CA2OC;IA0MD;;;;OAIG;IACH,sCAFW,eAAe,iBAmBzB;IAED;;;;;OAKG;IACH,uBAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CA0Q9B;IAED;;;;;;;;;OASG;IACH,sCAPW,MAAM,OACN,MAAM,QACN,MAAM,WACN,OAAO,eAAe,EAAE,OAAO,UAC/B,MAAM,GACJ,OAAO,CAAE,MAAM,CAAC,CAiD5B;IAED;;;;OAIG;IACH,2CAFW;QAAC,MAAM,EAAC,MAAM,CAAC;QAAC,MAAM,QAAO;QAAC,QAAQ,QAAM;KAAC,QAgCvD;IAED;;;;;OAKG;IACH,wBAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAsJ9B;CAwIJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA35EwB,mBAAmB"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/MetadataType.d.ts b/@types/lib/metadataTypes/MetadataType.d.ts index 275c2a7d1..bc1c61916 100644 --- a/@types/lib/metadataTypes/MetadataType.d.ts +++ b/@types/lib/metadataTypes/MetadataType.d.ts @@ -175,6 +175,20 @@ declare class MetadataType { * @returns {Promise.} Promise of a single metadata item */ static preDeployTasks(metadata: MetadataTypeItem, deployDir: string): Promise; + /** + * helper to find a new unique name during item creation + * + * @param {string} key key of the item + * @param {string} name name of the item + * @param {{ type: string; key: string; name: any; }[]} namesInFolder names of the items in the same folder + * @param {string} [subtype] itemType-name + * @returns {string} new name + */ + static findUniqueName(key: string, name: string, namesInFolder: { + type: string; + key: string; + name: any; + }[], subtype?: string): string; /** * Abstract create method that needs to be implemented in child metadata type * diff --git a/@types/lib/metadataTypes/MetadataType.d.ts.map b/@types/lib/metadataTypes/MetadataType.d.ts.map index ee22f51ec..4f7ee142b 100644 --- a/@types/lib/metadataTypes/MetadataType.d.ts.map +++ b/@types/lib/metadataTypes/MetadataType.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"MetadataType.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/MetadataType.js"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"MetadataType.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/MetadataType.js"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/Query.d.ts.map b/@types/lib/metadataTypes/Query.d.ts.map index cadaa5f72..3aa6fa027 100644 --- a/@types/lib/metadataTypes/Query.d.ts.map +++ b/@types/lib/metadataTypes/Query.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Query.js"],"names":[],"mappings":";uBAQa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;wBAI5C,OAAO,wBAAwB,EAAE,SAAS;uBAC1C,OAAO,wBAAwB,EAAE,QAAQ;AAftD;;;;;;;;;;;GAWG;AAEH;;;GAGG;AAEH;;;;GAIG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAsBxD;IA+BD;;;;;;OAMG;IACH,6CAiBC;IAED;;;;OAIG;IACH,2BAFa,OAAO,CAAE;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAIxD;IAED;;;;;;;OAOG;IACH,uCALW,MAAM,QACN,MAAM,qBACN,WAAW,GACT,OAAO,CAAE;QAAC,QAAQ,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CASrD;IAED;;;;;OAKG;IACH,mCAHW,SAAS,GACP,eAAe,CAwD3B;IAED;;;;;OAKG;IACH,qBAHW,SAAS,gBAMnB;IAED;;;;;OAKG;IACH,qBAHW,SAAS,gBAMnB;IAED;;;;;;OAMG;IACH,gCAJW,SAAS,aACT,MAAM,GACJ,OAAO,CAAE,SAAS,CAAC,CAgC/B;IA0BD;;;;;;;;;;OAUG;IACH,6CAPW,MAAM,aACN,MAAM,GAAC,MAAM,EAAE,YACf,SAAS,qBACT,WAAW,gBACX,MAAM,GACJ,OAAO,CAAE,MAAM,EAAE,EAAE,CAAC,CAiBhC;IAED;;;;;;;;;;;OAWG;IACH,2CAPW,MAAM,aACN,MAAM,GAAC,MAAM,EAAE,YACf,SAAS,qBACT,WAAW,gBACX,MAAM,GACJ,OAAO,CAAE,MAAM,EAAE,EAAE,CAAC,CAiBhC;IAED;;;;;;;;;;;;OAYG;IACH,+BAkDC;IAsDD;;;;;OAKG;IACH,oCAHW,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAM1B;IAED;;;;OAIG;IACH,sCAFW,eAAe,iBAOzB;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBApewB,mBAAmB"} \ No newline at end of file +{"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Query.js"],"names":[],"mappings":";uBAQa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;wBAI5C,OAAO,wBAAwB,EAAE,SAAS;uBAC1C,OAAO,wBAAwB,EAAE,QAAQ;AAftD;;;;;;;;;;;GAWG;AAEH;;;GAGG;AAEH;;;;GAIG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAsBxD;IA+BD;;;;;;OAMG;IACH,6CAiBC;IAED;;;;OAIG;IACH,2BAFa,OAAO,CAAE;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAIxD;IAED;;;;;;;OAOG;IACH,uCALW,MAAM,QACN,MAAM,qBACN,WAAW,GACT,OAAO,CAAE;QAAC,QAAQ,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CASrD;IAED;;;;;OAKG;IACH,mCAHW,SAAS,GACP,eAAe,CAwD3B;IAED;;;;;OAKG;IACH,qBAHW,SAAS,gBAMnB;IAED;;;;;OAKG;IACH,qBAHW,SAAS,gBAMnB;IAED;;;;;;OAMG;IACH,gCAJW,SAAS,aACT,MAAM,GACJ,OAAO,CAAE,SAAS,CAAC,CAiD/B;IA0BD;;;;;;;;;;OAUG;IACH,6CAPW,MAAM,aACN,MAAM,GAAC,MAAM,EAAE,YACf,SAAS,qBACT,WAAW,gBACX,MAAM,GACJ,OAAO,CAAE,MAAM,EAAE,EAAE,CAAC,CAiBhC;IAED;;;;;;;;;;;OAWG;IACH,2CAPW,MAAM,aACN,MAAM,GAAC,MAAM,EAAE,YACf,SAAS,qBACT,WAAW,gBACX,MAAM,GACJ,OAAO,CAAE,MAAM,EAAE,EAAE,CAAC,CAiBhC;IAED;;;;;;;;;;;;OAYG;IACH,+BAkDC;IAsDD;;;;;OAKG;IACH,oCAHW,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAM1B;IAED;;;;OAIG;IACH,sCAFW,eAAe,iBAOzB;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBArfwB,mBAAmB"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/SenderProfile.d.ts.map b/@types/lib/metadataTypes/SenderProfile.d.ts.map index c9fb4e660..2485f02ad 100644 --- a/@types/lib/metadataTypes/SenderProfile.d.ts.map +++ b/@types/lib/metadataTypes/SenderProfile.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"SenderProfile.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/SenderProfile.js"],"names":[],"mappings":";uBAQa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH;IACI;;;;;;;;OAQG;IACH,8BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAexC;IAED;;;;;OAKG;IACH,4BAHW,gBAAgB,gBAK1B;IAED;;;;;OAKG;IACH,4BAHW,gBAAgB,gBAK1B;IAYD;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CAsC5B;IAED;;;;;OAKG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CA6BtC;CA+EJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA1OwB,mBAAmB"} \ No newline at end of file +{"version":3,"file":"SenderProfile.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/SenderProfile.js"],"names":[],"mappings":";uBAQa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH;IACI;;;;;;;;OAQG;IACH,8BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAexC;IAED;;;;;OAKG;IACH,4BAHW,gBAAgB,gBAK1B;IAED;;;;;OAKG;IACH,4BAHW,gBAAgB,gBAK1B;IAYD;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CAsC5B;IAED;;;;;OAKG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAkCtC;CA+EJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA/OwB,mBAAmB"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/TriggeredSend.d.ts b/@types/lib/metadataTypes/TriggeredSend.d.ts index d8d864d2e..88aaacabb 100644 --- a/@types/lib/metadataTypes/TriggeredSend.d.ts +++ b/@types/lib/metadataTypes/TriggeredSend.d.ts @@ -106,6 +106,9 @@ declare namespace TriggeredSend { sendClassification: string[]; senderProfile: string[]; }; + filter: { + r__folder_Path: string[]; + }; folderType: string; hasExtended: boolean; idField: string; diff --git a/@types/lib/metadataTypes/TriggeredSend.d.ts.map b/@types/lib/metadataTypes/TriggeredSend.d.ts.map index 98e0b7671..3e96eeadd 100644 --- a/@types/lib/metadataTypes/TriggeredSend.d.ts.map +++ b/@types/lib/metadataTypes/TriggeredSend.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"TriggeredSend.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/TriggeredSend.js"],"names":[],"mappings":";uBAWa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CA2BxC;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAO1B;IAYD;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,GAAG,IAAI,CAwGnC;IAED;;;;;OAKG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAuFtC;IAED;;;;;;OAMG;IACH,wBAJW,MAAM,EAAE,aACR,OAAO,GACL,OAAO,CAAE,IAAI,CAAC,CAkB1B;IAED;;;;;OAKG;IACH,qCAHW,eAAe,GACb,OAAO,CAAE,MAAM,EAAE,CAAC,CAS9B;IAED;;;;;OAKG;IACH,0CAHW,OAAO,GACL,OAAO,CAAE,kBAAkB,CAAC,CAqDxC;IAED;;;;;;OAMG;IACH,yBAJW,MAAM,YACN,OAAO,GACL,OAAO,CAAE,OAAO,CAAC,CA8F7B;CA+EJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA/jBwB,mBAAmB"} \ No newline at end of file +{"version":3,"file":"TriggeredSend.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/TriggeredSend.js"],"names":[],"mappings":";uBAWa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CA2BxC;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAO1B;IAYD;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,GAAG,IAAI,CAwGnC;IAED;;;;;OAKG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAuFtC;IAED;;;;;;OAMG;IACH,wBAJW,MAAM,EAAE,aACR,OAAO,GACL,OAAO,CAAE,IAAI,CAAC,CAkB1B;IAED;;;;;OAKG;IACH,qCAHW,eAAe,GACb,OAAO,CAAE,MAAM,EAAE,CAAC,CAS9B;IAED;;;;;OAKG;IACH,0CAHW,OAAO,GACL,OAAO,CAAE,kBAAkB,CAAC,CAqDxC;IAED;;;;;;OAMG;IACH,yBAJW,MAAM,YACN,OAAO,GACL,OAAO,CAAE,OAAO,CAAC,CA8F7B;CA+EJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA/jBwB,mBAAmB"} \ No newline at end of file diff --git a/@types/lib/metadataTypes/definitions/Automation.definition.d.ts b/@types/lib/metadataTypes/definitions/Automation.definition.d.ts index fc1664450..22549fce2 100644 --- a/@types/lib/metadataTypes/definitions/Automation.definition.d.ts +++ b/@types/lib/metadataTypes/definitions/Automation.definition.d.ts @@ -264,7 +264,8 @@ declare namespace _default { export let typeDescription: string; export let typeRetrieveByDefault: boolean; export let typeName: string; - export let manualDeployTypes: string[]; + export let customDeployTypes: string[]; + export let manualDeployTypes: any[]; export let fields: { categoryId: { isCreateable: boolean; @@ -575,6 +576,12 @@ declare namespace _default { 'steps[].activities[].r__key': { skipValidation: boolean; }; + 'steps[].activities[].timeZone': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; 'steps[].description': { isCreateable: boolean; isUpdateable: boolean; diff --git a/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts b/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts index 038075a93..b75df5d67 100644 --- a/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts +++ b/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts @@ -1,6 +1,6 @@ declare namespace _default { let bodyIteratorField: string; - let dependencies: any[]; + let dependencies: string[]; let dependencyGraph: any; let filter: {}; let hasExtended: boolean; diff --git a/@types/lib/metadataTypes/definitions/Event.definition.d.ts b/@types/lib/metadataTypes/definitions/Event.definition.d.ts index 41124c135..c00e13274 100644 --- a/@types/lib/metadataTypes/definitions/Event.definition.d.ts +++ b/@types/lib/metadataTypes/definitions/Event.definition.d.ts @@ -2,6 +2,7 @@ declare namespace _default { let bodyIteratorField: string; let dependencies: string[]; namespace dependencyGraph { + let automation: string[]; let dataExtension: string[]; } let hasExtended: boolean; @@ -204,6 +205,30 @@ declare namespace _default { retrieving: boolean; template: boolean; }; + 'configurationArguments.contactKey.relationshipIdName': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.contactKey.relationshipName': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.contactKey.isPolymorphic': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.contactKey.referenceObjectName': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; 'configurationArguments.contactPersonType': { isCreateable: boolean; isUpdateable: boolean; @@ -228,6 +253,9 @@ declare namespace _default { retrieving: boolean; template: boolean; }; + 'configurationArguments.eventDataConfig.objects': { + skipValidation: boolean; + }; 'configurationArguments.eventDataSummary': { isCreateable: boolean; isUpdateable: boolean; @@ -246,12 +274,27 @@ declare namespace _default { retrieving: boolean; template: boolean; }; - 'configurationArguments.primaryObjectFilterCriteria': { + 'configurationArguments.passThroughArgument.fields': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.passThroughArgument.fields.ContactKey': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'configurationArguments.passThroughArgument.fields.Email': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; + 'configurationArguments.primaryObjectFilterCriteria': { + skipValidation: boolean; + }; 'configurationArguments.primaryObjectFilterSummary': { isCreateable: boolean; isUpdateable: boolean; @@ -966,6 +1009,12 @@ declare namespace _default { retrieving: boolean; template: boolean; }; + r__automation_key: { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; }; } export default _default; diff --git a/@types/lib/metadataTypes/definitions/Journey.definition.d.ts b/@types/lib/metadataTypes/definitions/Journey.definition.d.ts index 649d83938..500a67f1e 100644 --- a/@types/lib/metadataTypes/definitions/Journey.definition.d.ts +++ b/@types/lib/metadataTypes/definitions/Journey.definition.d.ts @@ -84,12 +84,48 @@ declare namespace _default { retrieving: boolean; template: boolean; }; + 'activities[].configurationArguments.triggeredSendKey': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'activities[].configurationArguments.triggeredSendId': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; 'activities[].configurationArguments.triggeredSend': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; + 'activities[].configurationArguments.triggeredSend.id': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'activities[].configurationArguments.triggeredSend.key': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'activities[].configurationArguments.triggeredSend.campaigns': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; + 'activities[].configurationArguments.triggeredSend.suppressionLists': { + isCreateable: boolean; + isUpdateable: boolean; + retrieving: boolean; + template: boolean; + }; 'activities[].configurationArguments.triggeredSend.autoAddSubscribers': { isCreateable: boolean; isUpdateable: boolean; @@ -742,10 +778,7 @@ declare namespace _default { template: boolean; }; 'triggers[].configurationArguments.eventDataConfig': { - isCreateable: boolean; - isUpdateable: boolean; - retrieving: boolean; - template: boolean; + skipValidation: boolean; }; 'triggers[].configurationArguments.primaryObjectFilterCriteria': { skipValidation: boolean; diff --git a/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts b/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts index 062bcfcd9..9c79169c1 100644 --- a/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts +++ b/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts @@ -7,6 +7,9 @@ declare namespace _default { let sendClassification: string[]; let senderProfile: string[]; } + namespace filter { + let r__folder_Path: string[]; + } let folderType: string; let hasExtended: boolean; let idField: string; diff --git a/@types/lib/util/devops.d.ts.map b/@types/lib/util/devops.d.ts.map index ab0811830..91514d9d9 100644 --- a/@types/lib/util/devops.d.ts.map +++ b/@types/lib/util/devops.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"devops.d.ts","sourceRoot":"","sources":["../../../lib/util/devops.js"],"names":[],"mappings":";yBAYa,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;sBAC7C,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;gCACrD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;;IAOtD;;;;;;;;;;OAUG;IACH,kCAPW,OAAO,UACP,MAAM,oBACN,OAAO,mBACP,MAAM,kBACN,MAAM,GACJ,OAAO,CAAE,YAAY,EAAE,CAAC,CA2TpC;IAED;;;;;;;;OAQG;IACH,2CANW,OAAO,SACP,MAAM,YACN,YAAY,EAAE,kBACd,MAAM,GACJ,OAAO,CAAE,YAAY,EAAE,CAAC,CA6KpC;IAED;;;;;;OAMG;IACH,6BAJW,MAAM,cACN,MAAM,GACJ,IAAI,CA4BhB;IAED;;;;;;;;;OASG;IACH,sCANW,OAAO,YACP,QAAQ,gBACR,MAAM,UACN,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAM9B"} \ No newline at end of file +{"version":3,"file":"devops.d.ts","sourceRoot":"","sources":["../../../lib/util/devops.js"],"names":[],"mappings":";yBAYa,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;sBAC7C,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;gCACrD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;;IAOtD;;;;;;;;;;OAUG;IACH,kCAPW,OAAO,UACP,MAAM,oBACN,OAAO,mBACP,MAAM,kBACN,MAAM,GACJ,OAAO,CAAE,YAAY,EAAE,CAAC,CA2TpC;IAED;;;;;;;;OAQG;IACH,2CANW,OAAO,SACP,MAAM,YACN,YAAY,EAAE,kBACd,MAAM,GACJ,OAAO,CAAE,YAAY,EAAE,CAAC,CAqLpC;IAED;;;;;;OAMG;IACH,6BAJW,MAAM,cACN,MAAM,GACJ,IAAI,CA4BhB;IAED;;;;;;;;;OASG;IACH,sCANW,OAAO,YACP,QAAQ,gBACR,MAAM,UACN,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAM9B"} \ No newline at end of file diff --git a/@types/lib/util/file.d.ts b/@types/lib/util/file.d.ts index 7ab089311..3099e6085 100644 --- a/@types/lib/util/file.d.ts +++ b/@types/lib/util/file.d.ts @@ -87,7 +87,7 @@ declare const FileFs: typeof fs & { * @param {boolean} [formatHTML] applies formatting to html and ampscript if true * @returns {Promise.} formatted code */ - beautify_beautyAmp_beautify: (content: string, formatHTML?: boolean) => Promise; + _beautify_beautyAmp_beautify: (content: string, formatHTML?: boolean) => Promise; /** * helper for {@link File.writePrettyToFile}, applying beautyAmp onto given stringified content * diff --git a/@types/lib/util/file.d.ts.map b/@types/lib/util/file.d.ts.map index 732257fc7..0903eeb12 100644 --- a/@types/lib/util/file.d.ts.map +++ b/@types/lib/util/file.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../lib/util/file.js"],"names":[],"mappings":";yBAUa,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;sBAC7C,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;gCACrD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;AAyiB1D;;;IAvhBI;;;;;;OAMG;yBAHQ,MAAM,MACN,MAAM,GACJ,OAAO,CAAE;QAAC,MAAM,EAAC,IAAI,GAAC,SAAS,GAAC,QAAQ,CAAC;QAAC,aAAa,EAAC,MAAM,CAAC;QAAC,IAAI,EAAC,MAAM,CAAA;KAAC,CAAC;IAkB1F;;;;;OAKG;iCAFQ,MAAM,GACJ,MAAM;IAiCnB;;;;;OAKG;qCAFQ,MAAM,GACJ,MAAM;IA2BnB;;;;;OAKG;4CAFQ,MAAM,GACJ,MAAM;IAMnB;;;;;OAKG;sCAFQ,MAAM,GAAC,MAAM,EAAE,KACb,MAAM;IAcnB;;;;;;;OAOG;iCAJQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,WACN,MAAM;IAcjB;;;;;;;;;;OAUG;mCANQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,sBACN,WAAW,KACT,OAAO,CAAE,OAAO,CAAC;IAa9B;;;;;;OAMG;2CAHQ,MAAM,eACN,OAAO,KACL,OAAO,CAAE,MAAM,CAAC;IAW7B;;;;;;OAMG;kCAHQ,MAAM,eACN,OAAO,KACL,OAAO,CAAE,MAAM,CAAC;IAgB7B;;;;;;;;;OASG;oCALQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,KACJ,OAAO,CAAE,MAAM,CAAC;IA2F7B;;;;;;;;;OASG;6BANQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,aACN,MAAM,KACJ,OAAO,CAAE,OAAO,CAAC;IAoB9B;;;;;;;OAOG;8BAJQ,MAAM,GAAG,MAAM,EAAE,YACjB,MAAM,aACN,OAAO,KACL,OAAO,CAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IA0B7C;;;;;;;;OAQG;sCALQ,MAAM,GAAG,MAAM,EAAE,YACjB,MAAM,YACN,MAAM,aACN,MAAM,KACJ,OAAO,CAAE,MAAM,CAAC;IAc7B;;;;;;;;;;OAUG;iCALQ,MAAM,SACN,MAAM,gBACN,OAAO,gBACP,MAAM,KACJ,OAAO,CAAE,MAAM,EAAE,CAAC;IA6C/B;;;;;;;;;;;OAWG;qCALQ,MAAM,UACN,MAAM,gBACN,OAAO,gBACP,MAAM,KACJ,MAAM,EAAE,GAAG,IAAI;IA4C5B;;;;;OAKG;+BAFQ,OAAO,GACL,OAAO,CAAE,IAAI,CAAC;IAU3B;;;;;OAKG;4BAFQ,MAAM,GACJ,OAAO,CAAE,OAAO,CAAC;EAgCK;eAlkBxB,UAAU"} \ No newline at end of file +{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../lib/util/file.js"],"names":[],"mappings":";yBAWa,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;sBAC7C,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;gCACrD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;AA4jB1D;;;IA1iBI;;;;;;OAMG;yBAHQ,MAAM,MACN,MAAM,GACJ,OAAO,CAAE;QAAC,MAAM,EAAC,IAAI,GAAC,SAAS,GAAC,QAAQ,CAAC;QAAC,aAAa,EAAC,MAAM,CAAC;QAAC,IAAI,EAAC,MAAM,CAAA;KAAC,CAAC;IAkB1F;;;;;OAKG;iCAFQ,MAAM,GACJ,MAAM;IAiCnB;;;;;OAKG;qCAFQ,MAAM,GACJ,MAAM;IA2BnB;;;;;OAKG;4CAFQ,MAAM,GACJ,MAAM;IAMnB;;;;;OAKG;sCAFQ,MAAM,GAAC,MAAM,EAAE,KACb,MAAM;IAcnB;;;;;;;OAOG;iCAJQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,WACN,MAAM;IAcjB;;;;;;;;;;OAUG;mCANQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,sBACN,WAAW,KACT,OAAO,CAAE,OAAO,CAAC;IAuB9B;;;;;;OAMG;4CAHQ,MAAM,eACN,OAAO,KACL,OAAO,CAAE,MAAM,CAAC;IAW7B;;;;;;OAMG;kCAHQ,MAAM,eACN,OAAO,KACL,OAAO,CAAE,MAAM,CAAC;IAyB7B;;;;;;;;;OASG;oCALQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,KACJ,OAAO,CAAE,MAAM,CAAC;IA2F7B;;;;;;;;;OASG;6BANQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,aACN,MAAM,KACJ,OAAO,CAAE,OAAO,CAAC;IAoB9B;;;;;;;OAOG;8BAJQ,MAAM,GAAG,MAAM,EAAE,YACjB,MAAM,aACN,OAAO,KACL,OAAO,CAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IA0B7C;;;;;;;;OAQG;sCALQ,MAAM,GAAG,MAAM,EAAE,YACjB,MAAM,YACN,MAAM,aACN,MAAM,KACJ,OAAO,CAAE,MAAM,CAAC;IAc7B;;;;;;;;;;OAUG;iCALQ,MAAM,SACN,MAAM,gBACN,OAAO,gBACP,MAAM,KACJ,OAAO,CAAE,MAAM,EAAE,CAAC;IA6C/B;;;;;;;;;;;OAWG;qCALQ,MAAM,UACN,MAAM,gBACN,OAAO,gBACP,MAAM,KACJ,MAAM,EAAE,GAAG,IAAI;IA4C5B;;;;;OAKG;+BAFQ,OAAO,GACL,OAAO,CAAE,IAAI,CAAC;IAU3B;;;;;OAKG;4BAFQ,MAAM,GACJ,OAAO,CAAE,OAAO,CAAC;EAgCK;eAtlBxB,UAAU"} \ No newline at end of file diff --git a/@types/lib/util/replaceContentBlockReference.d.ts b/@types/lib/util/replaceContentBlockReference.d.ts index e4d23f498..029f158ca 100644 --- a/@types/lib/util/replaceContentBlockReference.d.ts +++ b/@types/lib/util/replaceContentBlockReference.d.ts @@ -45,6 +45,10 @@ export default class ReplaceContentBlockReference { name: RegExp[]; }; }; + /** + * helper for tests + */ + static resetCacheMap(): void; /** * used to equalize the reference in the code to whatever is set in the "to" field * diff --git a/@types/lib/util/replaceContentBlockReference.d.ts.map b/@types/lib/util/replaceContentBlockReference.d.ts.map index 366d067c9..eb39c3b87 100644 --- a/@types/lib/util/replaceContentBlockReference.d.ts.map +++ b/@types/lib/util/replaceContentBlockReference.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"replaceContentBlockReference.d.ts","sourceRoot":"","sources":["../../../lib/util/replaceContentBlockReference.js"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;GAEG;AACH;IACI,4FAA4F;IAC5F,sBADW;QAAC,EAAE,EAAE,oBAAoB,CAAC;QAAC,GAAG,EAAE,kBAAkB,CAAC;QAAC,IAAI,EAAE,kBAAkB,CAAA;KAAC,CAKtF;IACF,6EAA6E;IAC7E,wBADW;YAAQ,MAAM,GAAE;YAAC,EAAE,EAAE,MAAM,EAAE,CAAC;YAAC,GAAG,EAAE,MAAM,EAAE,CAAC;YAAC,IAAI,EAAE,MAAM,EAAE,CAAA;SAAC;KAAC,CAkCvE;IAEF;;;;;;;OAOG;IACH,6BALW,MAAM,cACN,MAAM,kBACN,GAAG,CAAE,MAAM,CAAC,GACV,MAAM,CA0DlB;IAED;;;;;;;OAOG;IACH,gCANW,2BAA2B,cAC3B,MAAM,GAAC,MAAM,cACb,MAAM,WACN,OAAO,GACL,eAAe,CAyB3B;IAED;;;;;;OAMG;IACH,kCALW,eAAe,MACf,2BAA2B,WAC3B,OAAO,GACL,MAAM,CAclB;IAED;;;;;;;OAOG;IACH,+BALW,OAAO,YACP,QAAQ,uBACR,OAAO,GACL,OAAO,CAAE,IAAI,CAAC,CAW1B;IAED;;;;OAIG;IACH,sCAFW,QAAQ,QA0BlB;IAED;;;;;;;OAOG;IACH,gCALW,QAAQ,cACR,OAAO,uBACP,OAAO,GACL,OAAO,CAAE;QAAC,WAAW,EAAE,QAAQ,CAAC;QAAC,YAAY,EAAE,QAAQ,CAAA;KAAC,CAAC,CAoErE;CACJ;yBAhUY,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;0BAC7C,OAAO,wBAAwB,EAAE,WAAW;qBAC5C,OAAO,wBAAwB,EAAE,MAAM;sBACvC,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;8BACrD,OAAO,wBAAwB,EAAE,eAAe;gCAChD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;uBAC7C,OAAO,wBAAwB,EAAE,QAAQ;uBAEzC,OAAO,wBAAwB,EAAE,QAAQ;8BACzC,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;mCACnD,OAAO,wBAAwB,EAAE,oBAAoB;0CACrD,OAAO,wBAAwB,EAAE,2BAA2B"} \ No newline at end of file +{"version":3,"file":"replaceContentBlockReference.d.ts","sourceRoot":"","sources":["../../../lib/util/replaceContentBlockReference.js"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;GAEG;AACH;IACI,4FAA4F;IAC5F,sBADW;QAAC,EAAE,EAAE,oBAAoB,CAAC;QAAC,GAAG,EAAE,kBAAkB,CAAC;QAAC,IAAI,EAAE,kBAAkB,CAAA;KAAC,CAKtF;IACF,6EAA6E;IAC7E,wBADW;YAAQ,MAAM,GAAE;YAAC,EAAE,EAAE,MAAM,EAAE,CAAC;YAAC,GAAG,EAAE,MAAM,EAAE,CAAC;YAAC,IAAI,EAAE,MAAM,EAAE,CAAA;SAAC;KAAC,CAkCvE;IAEF;;OAEG;IACH,6BAMC;IAED;;;;;;;OAOG;IACH,6BALW,MAAM,cACN,MAAM,kBACN,GAAG,CAAE,MAAM,CAAC,GACV,MAAM,CA0DlB;IAED;;;;;;;OAOG;IACH,gCANW,2BAA2B,cAC3B,MAAM,GAAC,MAAM,cACb,MAAM,WACN,OAAO,GACL,eAAe,CAyB3B;IAED;;;;;;OAMG;IACH,kCALW,eAAe,MACf,2BAA2B,WAC3B,OAAO,GACL,MAAM,CAclB;IAED;;;;;;;OAOG;IACH,+BALW,OAAO,YACP,QAAQ,uBACR,OAAO,GACL,OAAO,CAAE,IAAI,CAAC,CAW1B;IAED;;;;OAIG;IACH,sCAFW,QAAQ,QA0BlB;IAED;;;;;;;OAOG;IACH,gCALW,QAAQ,cACR,OAAO,uBACP,OAAO,GACL,OAAO,CAAE;QAAC,WAAW,EAAE,QAAQ,CAAC;QAAC,YAAY,EAAE,QAAQ,CAAA;KAAC,CAAC,CAoErE;CACJ;yBA3UY,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;0BAC7C,OAAO,wBAAwB,EAAE,WAAW;qBAC5C,OAAO,wBAAwB,EAAE,MAAM;sBACvC,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;8BACrD,OAAO,wBAAwB,EAAE,eAAe;gCAChD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;uBAC7C,OAAO,wBAAwB,EAAE,QAAQ;uBAEzC,OAAO,wBAAwB,EAAE,QAAQ;8BACzC,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;mCACnD,OAAO,wBAAwB,EAAE,oBAAoB;0CACrD,OAAO,wBAAwB,EAAE,2BAA2B"} \ No newline at end of file diff --git a/@types/lib/util/validations.d.ts.map b/@types/lib/util/validations.d.ts.map index 9e1b833fa..d3ea06e52 100644 --- a/@types/lib/util/validations.d.ts.map +++ b/@types/lib/util/validations.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../../lib/util/validations.js"],"names":[],"mappings":"AAkBA;;;;;;;GAOG;AACH,+CANW,GAAG,QACH,GAAG,aACH,MAAM,uBACN,WAAW,EAAE,GACX,OAAO,CAAE,GAAG,CAAC,CA0EzB;iCA7FY,OAAO,wBAAwB,EAAE,kBAAkB;iCACnD,OAAO,wBAAwB,EAAE,kBAAkB;0BACnD,OAAO,wBAAwB,EAAE,WAAW"} \ No newline at end of file +{"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../../lib/util/validations.js"],"names":[],"mappings":"AAkBA;;;;;;;GAOG;AACH,+CANW,GAAG,QACH,GAAG,aACH,MAAM,uBACN,WAAW,EAAE,GACX,OAAO,CAAE,GAAG,CAAC,CAwFzB;iCA3GY,OAAO,wBAAwB,EAAE,kBAAkB;iCACnD,OAAO,wBAAwB,EAAE,kBAAkB;0BACnD,OAAO,wBAAwB,EAAE,WAAW"} \ No newline at end of file diff --git a/@types/types/mcdev.d.d.ts b/@types/types/mcdev.d.d.ts index 93f605578..c4d9d6f89 100644 --- a/@types/types/mcdev.d.d.ts +++ b/@types/types/mcdev.d.d.ts @@ -639,6 +639,10 @@ export type AutomationActivity = { * name (not key) of associated activity */ name?: string; + /** + * used by wait activity if a specific time of day was set + */ + timeZone?: string; /** * Id of assoicated activity type; see this.definition.activityTypeMapping */ diff --git a/@types/types/mcdev.d.d.ts.map b/@types/types/mcdev.d.d.ts.map index d88225dab..75312f36a 100644 --- a/@types/types/mcdev.d.d.ts.map +++ b/@types/types/mcdev.d.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"mcdev.d.d.ts","sourceRoot":"","sources":["../../types/mcdev.d.js"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"mcdev.d.d.ts","sourceRoot":"","sources":["../../types/mcdev.d.js"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/boilerplate/config.json b/boilerplate/config.json index 00887997a..eb691e06c 100644 --- a/boilerplate/config.json +++ b/boilerplate/config.json @@ -6,6 +6,7 @@ } }, "options": { + "formatOnSave": true, "deployment": { "commitHistory": 10, "sourceTargetMapping": { diff --git a/lib/Builder.js b/lib/Builder.js index 4637e4230..1f5fda1fb 100644 --- a/lib/Builder.js +++ b/lib/Builder.js @@ -47,9 +47,12 @@ saved const templateBuildsArr = Array.isArray(properties.directories.templateBuilds) ? properties.directories.templateBuilds : [properties.directories.templateBuilds]; - this.targetDir = templateBuildsArr.map( - (directoriesTemplateBuilds) => - directoriesTemplateBuilds + buObject.credential + '/' + buObject.businessUnit + this.targetDir = templateBuildsArr.map((directoriesTemplateBuilds) => + File.normalizePath([ + directoriesTemplateBuilds, + buObject.credential, + buObject.businessUnit, + ]) ); /** @@ -213,6 +216,7 @@ saved const buObject = await Cli.getCredentialObject(properties, businessUnit); if (buObject !== null) { const builder = new Builder(properties, buObject); + return builder._buildDefinition(selectedType, nameArr, templateVariables); } } diff --git a/lib/Deployer.js b/lib/Deployer.js index 6128e0956..33c6e02f2 100644 --- a/lib/Deployer.js +++ b/lib/Deployer.js @@ -345,7 +345,10 @@ class Deployer { Util.logger.info(`Caching dependent Metadata: ${metadataType}`); Util.logSubtypes(subTypeArr); const result = await MetadataTypeInfo[type].retrieveForCache(null, subTypeArr); - cache.setMetadata(type, result.metadata); + if (result?.metadata) { + // in case of dataExtensionField retrieveForCache() will return undefined on purpose + cache.setMetadata(type, result.metadata); + } } /** @type {MultiMetadataTypeMap} */ const multiMetadataTypeMap = {}; diff --git a/lib/cli.js b/lib/cli.js index 9001e3904..d0c7cfcd7 100644 --- a/lib/cli.js +++ b/lib/cli.js @@ -56,6 +56,13 @@ yargs(hideBin(process.argv)) group: 'Options for retrieve:', describe: 'allows reducing validation rules from error to warn to handle edge cases', + }) + .option('format', { + type: 'boolean', + alias: 'f', + group: 'Options for retrieve:', + describe: + 'allows overwriting options.formatOnSave from the config file. Disable formatting via --no-format', }), (argv) => { Mcdev.setOptions(argv); @@ -160,6 +167,10 @@ yargs(hideBin(process.argv)) group: 'Options for deploy:', describe: 'publishes the entity after deploy (only works on journeys)', }) + .option('validate', { + group: 'Options for deploy:', + describe: 'validate the entity after deploy (only works on journeys)', + }) .option('skipStatusCheck', { group: 'Options for deploy:', describe: @@ -175,6 +186,27 @@ yargs(hideBin(process.argv)) group: 'Options for deploy:', describe: 'allows reducing validation rules from error to warn to handle edge cases', + }) + .option('format', { + type: 'boolean', + alias: 'f', + group: 'Options for deploy:', + describe: + 'allows overwriting options.formatOnSave from the config file. Disable formatting via --no-format', + }) + .option('ignoreFolder', { + type: 'boolean', + alias: 'if', + group: 'Options for deploy:', + describe: + 'works with --matchName and allows skipping folder match if there is only 1 name match', + }) + .option('ignoreSfFields', { + type: 'boolean', + alias: 'isf', + group: 'Options for deploy:', + describe: + 'relevant for Salesforce triggered journeys and events; allows ignoring errors on missing Salesforce fields in case the API returns other info than the GUI. CAUTION!', }), (argv) => { @@ -809,6 +841,47 @@ yargs(hideBin(process.argv)) } } ) + .command( + ['validate [TYPE] [KEY]'], + 'validates the entity', + (yargs) => + yargs + .positional('BU', { + type: 'string', + describe: 'the business unit where to start an item', + }) + .positional('TYPE', { + type: 'string', + describe: 'metadata type', + }) + .positional('KEY', { + type: 'string', + describe: 'key(s) of the metadata component(s)', + }) + .option('metadata', { + type: 'string', + array: true, + alias: 'm', + group: 'Options for validate:', + describe: 'type or type:key or type:i:id or type:n:name to fix', + }) + .option('like', { + type: 'string', + group: 'Options for validate:', + describe: + 'filter metadata components (can include % as wildcard or _ for a single character)', + }), + + (argv) => { + Mcdev.setOptions(argv); + const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata); + if ('undefined' === typeof typeKeyCombo) { + Mcdev.validate(argv.BU, csvToArray(argv.TYPE), csvToArray(argv.KEY)); + } else { + Mcdev.validate(argv.BU, typeKeyCombo); + } + } + ) .command( ['schedule [TYPE] [KEY]', 'sched'], 'starts the predefined schedule of the item (shortcut for running execute --schedule)', diff --git a/lib/index.js b/lib/index.js index 8f34f91c1..69516e8eb 100644 --- a/lib/index.js +++ b/lib/index.js @@ -94,7 +94,10 @@ class Mcdev { 'execute', 'filter', 'fixShared', + 'format', 'fromRetrieve', + 'ignoreFolder', + 'ignoreSfFields', 'json', 'keySuffix', 'like', @@ -114,6 +117,7 @@ class Mcdev { 'skipRetrieve', 'skipStatusCheck', 'skipValidation', + 'validate', '_runningTest', '_welcomeMessageShown', ]; @@ -1130,9 +1134,27 @@ class Mcdev { Util.logger.info('mcdev:: Build Template & Build Definition'); await this.buildTemplate(businessUnitTemplate, typeKeyCombo, null, marketTemplate); + + let isPurgeDeployFolder; + if (!Util.skipInteraction && !bulk) { + const properties = await config.getProperties(); + // deploy folder is in targets for definition creation + // recommend to purge their content first + isPurgeDeployFolder = await confirm({ + message: `Do you want to empty the folder /${properties.directories.deploy}${businessUnitDefinition} (ensures no files from previous deployments remain)?`, + default: true, + }); + } + return bulk ? this.buildDefinitionBulk(marketDefinition[0], typeKeyCombo, null) - : this.buildDefinition(businessUnitDefinition, typeKeyCombo, null, marketDefinition); + : this.buildDefinition( + businessUnitDefinition, + typeKeyCombo, + null, + marketDefinition, + isPurgeDeployFolder + ); } /** @@ -1273,9 +1295,16 @@ class Mcdev { * @param {string | TypeKeyCombo} selectedTypes limit retrieval to given metadata type * @param {string[] | undefined} nameArr name of the metadata * @param {string[]} marketArr market localizations + * @param {boolean} [isPurgeDeployFolder] whether to purge the deploy folder * @returns {Promise.} - */ - static async buildDefinition(businessUnit, selectedTypes, nameArr, marketArr) { + static async buildDefinition( + businessUnit, + selectedTypes, + nameArr, + marketArr, + isPurgeDeployFolder + ) { this.#welcomeMessage(); Util.startLogger(); @@ -1301,6 +1330,18 @@ class Mcdev { return; } } + // standard deploy folder + const buObject = await Cli.getCredentialObject(properties, businessUnit); + const deployDir = File.normalizePath([ + properties.directories.deploy, + buObject.credential, + buObject.businessUnit, + ]); + if (isPurgeDeployFolder) { + // Clear output folder structure for selected sub-type + // only run this if the standard deploy folder is a target of buildDefinition (which technically could be changed) + await File.remove(deployDir); + } /** @type {MultiMetadataTypeList} */ const returnObj = {}; for (const type of Object.keys(selectedTypes)) { @@ -1415,6 +1456,17 @@ class Mcdev { static async publish(businessUnit, selectedTypes, keys) { return this.#runMethod('publish', businessUnit, selectedTypes, keys); } + /** + * Publish an item + * + * @param {string} businessUnit name of BU + * @param {string[] | TypeKeyCombo} selectedTypes limit to given metadata types + * @param {string[]} [keys] customerkey of the metadata + * @returns {Promise.>>} key: business unit name, key2: type, value: list of affected item keys + */ + static async validate(businessUnit, selectedTypes, keys) { + return this.#runMethod('validate', businessUnit, selectedTypes, keys); + } /** * Start/execute an item @@ -1552,6 +1604,8 @@ class Mcdev { */ static async fixKeys(businessUnit, selectedTypes, keys) { const properties = await config.getProperties(); + // make sure validation rules dont keep us from fixing the keys + this.setOptions({ skipValidation: true }); let reRetrieveAll = false; /** @typedef {string[]} */ @@ -1627,7 +1681,7 @@ class Mcdev { /** * run a method across BUs * - * @param {'execute'|'pause'|'stop'|'publish'|'fixKeys'|'replaceCbReference'} methodName what to run + * @param {'execute'|'pause'|'stop'|'publish'|'validate'|'fixKeys'|'replaceCbReference'} methodName what to run * @param {string} businessUnit name of BU * @param {string[] | TypeKeyCombo} [selectedTypes] limit to given metadata types * @param {string[]} [keys] customerkey of the metadata @@ -1671,6 +1725,13 @@ class Mcdev { checkMetadataSupport = true; break; } + case 'validate': { + lang_past = 'validated'; + lang_present = 'validating'; + requireKeyOrLike = true; + checkMetadataSupport = true; + break; + } case 'fixKeys': { lang_past = 'fixed keys'; lang_present = 'fixing keys'; @@ -1838,7 +1899,7 @@ class Mcdev { /** * helper for Mcdev.#runMethod * - * @param {'execute'|'pause'|'stop'|'publish'|'fixKeys'|'replaceCbReference'} methodName what to run + * @param {'execute'|'pause'|'stop'|'publish'|'validate'|'fixKeys'|'replaceCbReference'} methodName what to run * @param {string} cred name of Credential * @param {string} bu name of BU * @param {string} [type] limit execution to given metadata type diff --git a/lib/metadataTypes/Asset.js b/lib/metadataTypes/Asset.js index 7f0b26323..56addda64 100644 --- a/lib/metadataTypes/Asset.js +++ b/lib/metadataTypes/Asset.js @@ -873,11 +873,11 @@ class Asset extends MetadataType { name: assetCache[key].name, })); // if the name is already in the folder for a different key, add a number to the end - metadata[this.definition.nameField] = this._findUniqueName( + metadata[this.definition.nameField] = this.findUniqueName( metadata[this.definition.keyField], metadata[this.definition.nameField], - this.#getMainSubtype(metadata.assetType.name), - namesInFolder + namesInFolder, + this.#getMainSubtype(metadata.assetType.name) ); } return metadata; @@ -895,33 +895,6 @@ class Asset extends MetadataType { ); } - /** - * helper to find a new unique name during asset creation - * - * @private - * @param {string} key key of the asset - * @param {string} name name of the asset - * @param {string} type assetType-name - * @param {{ type: string; key: string; name: any; }[]} namesInFolder names of the assets in the same folder - * @returns {string} new name - */ - static _findUniqueName(key, name, type, namesInFolder) { - let newName = name; - let suffix; - let i = 1; - while ( - namesInFolder.find( - (item) => item.name === newName && item.type === type && item.key !== key - ) - ) { - suffix = ' (' + i + ')'; - // for customer key max is 100 chars - newName = name.slice(0, Math.max(0, 100 - suffix.length)) + suffix; - i++; - } - return newName; - } - /** * determines the subtype of the current asset * @@ -1090,6 +1063,12 @@ class Asset extends MetadataType { const targetDirArr = Array.isArray(targetDir) ? targetDir : [targetDir]; for (const targetDir of targetDirArr) { for (const extractedFile of fileList) { + if (extractedFile.fileExt === 'ssjs') { + const ssjs = Util.getSsjs(extractedFile?.content); + if (ssjs) { + extractedFile.content = ssjs; + } + } File.writeToFile( [targetDir, ...extractedFile.subFolder], extractedFile.fileName, @@ -2680,17 +2659,26 @@ class Asset extends MetadataType { potentials.push(cachedAsset); } } - if (potentials.length > 1) { - throw new Error( - `found multiple name matches in cache for ${this.definition.type} ${metadataItem[this.definition.keyField]} / ${metadataItem[this.definition.nameField]}. Check their keys for more details: ${potentials.map((p) => p[this.definition.keyField]).join(', ')}` - ); - } else if (potentials.length === 1) { - const deployFolderPath = cache.searchForField( + let deployFolderPath; + if (potentials.length >= 1) { + deployFolderPath = cache.searchForField( 'folder', metadataItem.category.id, 'ID', 'Path' ); + } + if (potentials.length > 1) { + const potentialsWithMatchingFolder = potentials.filter( + (el) => el.category.id === metadataItem.category.id + ); + throw new Error( + `found multiple name matches in cache. New folder: "${deployFolderPath}". Identified keys: ${potentials.map((p) => p[this.definition.keyField]).join(', ')}. ` + + (potentialsWithMatchingFolder.length + ? `Folder for ${potentialsWithMatchingFolder[0][this.definition.keyField]} matches the new folder. ` + : '') + ); + } else if (potentials.length === 1) { if (potentials[0].category.id === metadataItem.category.id) { cacheMatchedByName = potentials[0]; @@ -2707,7 +2695,7 @@ class Asset extends MetadataType { 'Path' ); throw new Error( - `found ${this.definition.type} ${metadataItem[this.definition.keyField]} in cache by name "${metadataItem[this.definition.nameField]}" but in different folders: "${deployFolderPath}" vs "${cacheFolderPath}": ${potentials[0][this.definition.keyField]}` + `found match in cache by name but folder is different. New folder: "${deployFolderPath}". Existing: "${cacheFolderPath}": Identified key: ${potentials[0][this.definition.keyField]}` ); } } else { diff --git a/lib/metadataTypes/Automation.js b/lib/metadataTypes/Automation.js index d9cf750b5..4382077e7 100644 --- a/lib/metadataTypes/Automation.js +++ b/lib/metadataTypes/Automation.js @@ -100,20 +100,20 @@ class Automation extends MetadataType { } if (!this._skipNotificationRetrieve && Object.keys(metadataMap).length) { - // attach notification information to each automation that has any - await this.#getAutomationNotificationsREST(metadataMap); + // attach notification and wait timezone information to each automation that has any + await this.#getAutomationLegacyREST(metadataMap); } // * retrieveDir can be empty when we use it in the context of postDeployTasks if (retrieveDir) { this.retrieveDir = retrieveDir; - metadataMap = await this.saveResults(metadataMap, retrieveDir, null, null); + const savedMetadataMap = await this.saveResults(metadataMap, retrieveDir, null, null); Util.logger.info( - `Downloaded: ${this.definition.type} (${Object.keys(metadataMap).length})` + + `Downloaded: ${this.definition.type} (${Object.keys(savedMetadataMap).length})` + Util.getKeysString(key) ); - await this.runDocumentOnRetrieve(key, metadataMap); + await this.runDocumentOnRetrieve(key, savedMetadataMap); } return { metadata: metadataMap, type: this.definition.type }; } @@ -145,8 +145,10 @@ class Automation extends MetadataType { * @param {MetadataTypeMap} metadataMap keyField => metadata map * @returns {Promise.} Promise of automation legacy api response */ - static async #getAutomationNotificationsREST(metadataMap) { - Util.logger.info(Util.getGrayMsg(` Retrieving Automation Notification information...`)); + static async #getAutomationLegacyREST(metadataMap) { + Util.logger.info( + Util.getGrayMsg(` Retrieving Automation Notification & wait information...`) + ); // get list of keys that we retrieved so far const foundKeys = Object.keys(metadataMap); @@ -159,20 +161,90 @@ class Automation extends MetadataType { `/legacy/v1/beta/bulk/automations/automation/definition/` ); this.definition.bodyIteratorField = iteratorBackup; - const automationLegacyMap = Object.keys(automationLegacyMapObj.metadata) + // notification + const notificationLegacyMap = Object.keys(automationLegacyMapObj.metadata) .filter((key) => foundKeys.includes(key)) // ! using the `id` field to retrieve notifications does not work. instead one needs to use the URL in the `notifications` field .map((key) => ({ id: automationLegacyMapObj.metadata[key].id, key, })); + // wait + const waitLegacyMap = Object.keys(automationLegacyMapObj.metadata) + .filter((key) => foundKeys.includes(key)) + .filter((key) => { + const steps = automationLegacyMapObj.metadata[key].processes; + // wait activities + if (!Array.isArray(steps)) { + return false; + } + for (const step of steps) { + if (!Array.isArray(step.workerCounts)) { + continue; + } + for (const activity of step.workerCounts) { + if (activity.objectTypeId === 467) { + return true; + } + } + } + return false; + }) + .map((key) => ({ + id: automationLegacyMapObj.metadata[key].id, + key, + })); - // get notifications for each automation const rateLimit = pLimit(5); + + // get wait activities for automations using it + await Promise.all( + waitLegacyMap.map((automationLegacy) => + // notifications + rateLimit(async () => { + // this is a file so extended is at another endpoint + try { + const waitResult = await this.client.rest.get( + `/legacy/v1/beta/bulk/automations/automation/definition/` + + automationLegacy.id + ); + if (Array.isArray(waitResult?.processes)) { + const steps = waitResult.processes; + // wait activities + for (const step of steps) { + for (const activity of step.workers) { + if ( + activity.objectTypeId === 467 && + activity.serializedObject + ) { + const waitObj = JSON.parse(activity.serializedObject); + if (waitObj.timeZone) { + // add timezone to the wait activity + metadataMap[automationLegacy.key].steps[ + step.sequence + ].activities[activity.sequence].timeZone = + waitObj.timeZone; + } + // * wait activities are not supported in the new API + } + } + } + } + } catch (ex) { + Util.logger.debug( + ` ☇ issue retrieving wait details for automation ${automationLegacy.key}: ${ex.message} ${ex.code}` + ); + } + }) + ) + ); + + // get notifications for each automation let found = 0; let skipped = 0; - const promiseMap = await Promise.all( - automationLegacyMap.map((automationLegacy) => + const notificationPromiseMap = await Promise.all( + notificationLegacyMap.map((automationLegacy) => + // notifications rateLimit(async () => { // this is a file so extended is at another endpoint try { @@ -213,7 +285,7 @@ class Automation extends MetadataType { Util.logger.debug( `Notifications not found for ${skipped} automation${skipped === 1 ? '' : 's'}` ); - return promiseMap; + return notificationPromiseMap; } /** @@ -337,8 +409,8 @@ class Automation extends MetadataType { ); const metadataMap = this.parseResponseBody({ items: [details] }); if (Object.keys(metadataMap).length) { - // attach notification information to each automation that has any - await this.#getAutomationNotificationsREST(metadataMap); + // attach notification and wait timezone information to each automation that has any + await this.#getAutomationLegacyREST(metadataMap); details = Object.values(metadataMap)[0]; } @@ -470,6 +542,22 @@ class Automation extends MetadataType { ); // empty if block continue; + } else if (this.definition.customDeployTypes.includes(activity.r__type)) { + if (activity.r__type === 'wait') { + // convert 12 to 24 hrs system + let waitTime24; + const [waitDuration, waitUnit] = activity.name.split(' '); + if (waitUnit === 'AM' || waitUnit === 'PM') { + waitTime24 = waitDuration; + if (waitUnit === 'PM') { + waitTime24 = + (Number(waitTime24.split(':')[0]) + 12).toString() + + ':00'; + } + activity.name = waitTime24; + } + } + continue; } else if (!this.definition.dependencies.includes(activity.r__type)) { Util.logger.debug( ` - skipping ${ @@ -889,6 +977,41 @@ class Automation extends MetadataType { Definitions[activity.r__type].nameField ); } + if (activity.r__type === 'wait') { + const [waitDuration, waitUnit] = activity.name.split(' '); + const waitDurationNumber = Number(waitDuration); + const allowedWaitUnits = [ + 'Minutes', + 'Hours', + 'Days', + 'Weeks', + 'Months', + 'Years', + ]; + if ( + waitDurationNumber && + waitUnit && + allowedWaitUnits.includes(waitUnit) + ) { + // @ts-expect-error - serializedObject is only used to create/update wait activities + activity.serializedObject = JSON.stringify({ + duration: waitDurationNumber, + durationUnits: waitUnit, + }); + } else if (!waitUnit) { + // convert 24 hrs based time in waitDuration back into 12 hrs based time + let waitTime12 = waitDuration; + waitTime12 = + Number(waitTime12) > 12 + ? (Number(waitTime12) - 12).toString() + ' AM' + : waitTime12 + ' PM'; + // @ts-expect-error - serializedObject is only used to create/update wait activities + activity.serializedObject = JSON.stringify({ + specifiedTime: waitDuration, + timeZone: activity.timeZone || 'GMT Standard Time', + }); + } + } activity.objectTypeId = this.definition.activityTypeMapping[activity.r__type]; delete activity.r__key; @@ -901,6 +1024,23 @@ class Automation extends MetadataType { i++; } } + + if (!Util.OPTIONS.matchName) { + // make sure the name is unique + const thisCache = cache.getCache()[this.definition.type]; + const relevantNames = Object.keys(thisCache).map((key) => ({ + type: null, + key: key, + name: thisCache[key][this.definition.nameField], + })); + // if the name is already in the folder for a different key, add a number to the end + metadata[this.definition.nameField] = this.findUniqueName( + metadata[this.definition.keyField], + metadata[this.definition.nameField], + relevantNames + ); + } + return metadata; } else { return null; @@ -932,7 +1072,10 @@ class Automation extends MetadataType { ); } // cannot deploy because it is not supported - else if (!this.definition.dependencies.includes(activity.r__type)) { + else if ( + !this.definition.customDeployTypes.includes(activity.r__type) && + !this.definition.dependencies.includes(activity.r__type) + ) { errors.push( ` • not supported ${activity.r__type} activity '${activity.r__key || activity.name}' in step ${stepNumber}.${displayOrder}` ); @@ -1506,7 +1649,11 @@ class Automation extends MetadataType { step.activities[activityIndex] ? { i: stepIndex + 1 + '.' + (activityIndex + 1), - key: step.activities[activityIndex].r__key, + key: + step.activities[activityIndex].r__key || + (step.activities[activityIndex].timeZone + ? `${step.activities[activityIndex].name}
${step.activities[activityIndex].timeZone}` + : step.activities[activityIndex].name), type: step.activities[activityIndex].r__type, } : null diff --git a/lib/metadataTypes/DataExtension.js b/lib/metadataTypes/DataExtension.js index bb017a5a4..bf4f83c1f 100644 --- a/lib/metadataTypes/DataExtension.js +++ b/lib/metadataTypes/DataExtension.js @@ -55,6 +55,14 @@ class DataExtension extends MetadataType { try { await this.validation('deploy', metadataMap[metadataKey], deployDir); metadataMap[metadataKey] = await this.preDeployTasks(metadataMap[metadataKey]); + + await this.createOrUpdate( + metadataMap, + metadataKey, + false, + metadataToUpdate, + metadataToCreate + ); } catch (ex) { // output error & remove from deploy list Util.logger.error( @@ -67,13 +75,6 @@ class DataExtension extends MetadataType { filteredByPreDeploy++; continue; } - await this.createOrUpdate( - metadataMap, - metadataKey, - false, - metadataToUpdate, - metadataToCreate - ); } if (metadataToUpdate.length) { Util.logger.info( @@ -765,27 +766,27 @@ class DataExtension extends MetadataType { }, }; } - let metadata = await this._retrieveAll(additionalFields, requestParams); + let metadataMap = await this._retrieveAll(additionalFields, requestParams); // in case of cache dont get fields - if (metadata && retrieveDir) { + if (metadataMap && retrieveDir) { // get fields from API - await this.#attachFields(metadata, fieldOptions, additionalFields); + await this.attachFields(metadataMap, fieldOptions, additionalFields); } if (!retrieveDir && this.buObject.eid !== this.buObject.mid) { const metadataParentBu = await this.retrieveSharedForCache(additionalFields); // make sure to overwrite parent bu DEs with local ones - metadata = { ...metadataParentBu, ...metadata }; + metadataMap = { ...metadataParentBu, ...metadataMap }; } if (retrieveDir) { - const savedMetadata = await super.saveResults(metadata, retrieveDir, null); + const savedMetadata = await super.saveResults(metadataMap, retrieveDir, null); Util.logger.info( `Downloaded: ${this.definition.type} (${Object.keys(savedMetadata).length})` + Util.getKeysString(key) ); await this.runDocumentOnRetrieve(key, savedMetadata); } - return { metadata: metadata, type: 'dataExtension' }; + return { metadata: metadataMap, type: 'dataExtension' }; } /** @@ -872,7 +873,7 @@ class DataExtension extends MetadataType { * @param {string[]} [additionalFields] Returns specified fields even if their retrieve definition is not set to true * @returns {Promise.} - */ - static async #attachFields(metadata, fieldOptions, additionalFields) { + static async attachFields(metadata, fieldOptions, additionalFields) { const fieldsObj = await this._retrieveFields(fieldOptions, additionalFields); const fieldKeys = Object.keys(fieldsObj); @@ -1285,6 +1286,35 @@ class DataExtension extends MetadataType { if (json.r__dataExtensionTemplate_name) { output += `**Template:** ${json.r__dataExtensionTemplate_name}\n\n`; } + // Retention + output += `**Retention Policy:** ${json.c__retentionPolicy}\n\n`; + switch (json.c__retentionPolicy) { + case 'allRecords': + case 'allRecordsAndDataextension': { + if (json.DataRetentionPeriodLength) { + // if period length was selected, show it plus the optional reset-on-import; the retain-until date IS returned by the api but does not matter for documentation + output += `- **Retention Period:** ${json.DataRetentionPeriodLength} ${json.c__dataRetentionPeriodUnitOfMeasure}\n`; + output += `- **Reset Retention Period on import:** ${json.ResetRetentionPeriodOnImport ? 'yes' : 'no'}\n`; + } else { + // if a date was selected instead, the GUI auto-deselects reset-on-import + output += `- **Retain Until:** ${json.c__retainUntil}\n`; + } + // add empty line after retention: + output += `\n`; + break; + } + case 'individialRecords': { + output += `- **Retention Period:** ${json.DataRetentionPeriodLength} ${json.c__dataRetentionPeriodUnitOfMeasure}\n`; + output += `- **Reset Retention Period on import:** ${json.ResetRetentionPeriodOnImport ? 'yes' : 'no'}\n`; + // add empty line after retention: + output += `\n`; + break; + } + case 'none': { + // nothing else to do + break; + } + } let tableSeparator = ''; for (const column of tabled[0]) { @@ -1644,9 +1674,9 @@ class DataExtension extends MetadataType { } } if (potentials.length > 1) { - throw new Error( - `found multiple name matches in cache for ${this.definition.type} ${metadataItem[this.definition.keyField]} / ${metadataItem[this.definition.nameField]}. Check their keys for more details: ${potentials.map((p) => p[this.definition.keyField]).join(', ')}` - ); + // ! SFMC disallows having 2 dataExtensions with the same name because that would cause a conflict in queries and in ampscript/ssjs which all use dataExtension NAMES instead of keys in their scripts + // ! When trying to create a duplicate it results in the error Code 310007 ("A data extension named xyz already exists.") + Util.logger.debug(` - Multiple name matches found? This should never happen.`); } else if (potentials.length === 1) { // only one item found, confirm that it's in the same folder const deployFolderPath = cache.searchForField( @@ -1666,6 +1696,25 @@ class DataExtension extends MetadataType { ` - found ${this.definition.type} ${metadataItem[this.definition.keyField]} in cache by name "${metadataItem[this.definition.nameField]}" and folder "${deployFolderPath}": ${cacheMatchedByName[this.definition.keyField]}` ) ); + } else if ( + Util.OPTIONS.ignoreFolder && + potentials[0][this.definition.folderIdField] !== + metadataItem[this.definition.folderIdField] + ) { + cacheMatchedByName = potentials[0]; + + const cacheFolderPath = cache.searchForField( + 'folder', + potentials[0][this.definition.folderIdField], + 'ID', + 'Path' + ); + + Util.logger.info( + Util.getGrayMsg( + ` - found ${this.definition.type} ${metadataItem[this.definition.keyField]} in cache by name "${metadataItem[this.definition.nameField]}" and but folder is different (--ignoreFolder). New folder: "${deployFolderPath}". Old: "${cacheFolderPath}"` + ) + ); } else { const cacheFolderPath = cache.searchForField( 'folder', @@ -1674,7 +1723,7 @@ class DataExtension extends MetadataType { 'Path' ); throw new Error( - `found ${this.definition.type} ${metadataItem[this.definition.keyField]} in cache by name "${metadataItem[this.definition.nameField]}" but in different folders: "${deployFolderPath}" vs "${cacheFolderPath}": ${potentials[0][this.definition.keyField]}` + `found ${this.definition.type} ${metadataItem[this.definition.keyField]} in cache by name but folder is different. New folder: "${deployFolderPath}". Old: "${cacheFolderPath}": Identified key: ${potentials[0][this.definition.keyField]}` ); } } else { diff --git a/lib/metadataTypes/DataExtensionField.js b/lib/metadataTypes/DataExtensionField.js index 5ac36fe0e..c1cca98c4 100644 --- a/lib/metadataTypes/DataExtensionField.js +++ b/lib/metadataTypes/DataExtensionField.js @@ -2,6 +2,7 @@ import MetadataType from './MetadataType.js'; import { Util } from '../util/util.js'; +import DataExtension from './DataExtension.js'; /** * @typedef {import('../../types/mcdev.d.js').BuObject} BuObject @@ -39,6 +40,18 @@ class DataExtensionField extends MetadataType { static async retrieve(retrieveDir, additionalFields) { return super.retrieveSOAP(retrieveDir, null, null, additionalFields); } + /** + * Retrieves all records and saves it to disk + * + * @returns {Promise.} Promise of items + */ + static async retrieveForCache() { + const cachedDEs = cache.getCache().dataExtension; + if (cachedDEs) { + await DataExtension.attachFields(cachedDEs); + } + return; + } /** * Retrieves all records for caching @@ -365,6 +378,7 @@ class DataExtensionField extends MetadataType { // Assign definition to static attributes import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js'; +import cache from '../util/cache.js'; DataExtensionField.definition = MetadataTypeDefinitions.dataExtensionField; export default DataExtensionField; diff --git a/lib/metadataTypes/Event.js b/lib/metadataTypes/Event.js index 52ea50e24..84782c2db 100644 --- a/lib/metadataTypes/Event.js +++ b/lib/metadataTypes/Event.js @@ -23,6 +23,7 @@ import pLimit from 'p-limit'; * @typedef {import('../../types/mcdev.d.js').SfObjectField} SfObjectField * @typedef {import('../../types/mcdev.d.js').configurationArguments} configurationArguments * @typedef {import('../../types/mcdev.d.js').Conditions} Conditions + * @typedef {import('../../types/mcdev.d.js').DataExtensionItem} DataExtensionItem */ /** @@ -216,14 +217,47 @@ class Event extends MetadataType { break; } case 'SalesforceObjectTriggerV2': { - metadata.iconUrl ||= '/jbint-events/events/SalesforceData/images/SF-Event-Icon.svg'; + metadata.iconUrl ||= + '/events/js/salesforce-event/events/NetworkMember/images/SF-Event-Icon.svg'; break; } + case 'AutomationAudience': { + metadata.iconUrl ||= '/images/icon-data-extension.svg'; + break; + } + } + + // automation + if (metadata.r__automation_key) { + metadata.automationId = cache.searchForField( + 'automation', + metadata.r__automation_key, + 'key', + 'id' + ); + if (metadata.arguments) { + metadata.arguments.automationId = metadata.automationId; + } + delete metadata.arguments.automationId; } - await this.preDeployTasks_SalesforceEntryEvents( + // dataExteension + // is resolved in createOrUpdate + + const warnings = await this.preDeployTasks_SalesforceEntryEvents( metadata.type, metadata.configurationArguments ); + if (warnings) { + Util.logger.warn( + ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}): ${warnings}` + ); + } + + await this.compareSalesforceEntryEvents_dataExtension( + metadata.type, + metadata.configurationArguments?.eventDataSummary, + metadata.r__dataExtension_key + ); return metadata; } @@ -448,6 +482,29 @@ class Event extends MetadataType { ); } + // automation + try { + if ( + metadata?.automationId && + metadata?.automationId !== '00000000-0000-0000-0000-000000000000' + ) { + metadata.r__automation_key = cache.searchForField( + 'automation', + metadata.automationId, + 'id', + 'key' + ); + delete metadata.automationId; + delete metadata.arguments?.automationId; + } + } catch (ex) { + Util.logger.warn( + ` - ${this.definition.type} ${metadata[this.definition.nameField]} (${ + metadata[this.definition.keyField] + }): ${ex.message}.` + ); + } + // dataExtension try { metadata.r__dataExtension_key = cache.searchForField( 'dataExtension', @@ -474,6 +531,17 @@ class Event extends MetadataType { if (metadata.mode === 'Production') { delete metadata.mode; } + if (metadata.interactionCount === 0 && metadata.publishedInteractionCount === 0) { + Util.logger.warn( + ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}): is no longer used and could therefore be deleted. Associated Journeys: ${metadata.interactionCount}. Active Journeys: ${metadata.publishedInteractionCount}.` + ); + } else if (metadata.publishedInteractionCount === 0) { + Util.logger.info( + Util.getGrayMsg( + ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}): is currently inactive. Associated Journeys: ${metadata.interactionCount}. Active Journeys: ${metadata.publishedInteractionCount}.` + ) + ); + } try { await this.postRetrieveTasks_SalesforceEntryEvents( @@ -483,9 +551,18 @@ class Event extends MetadataType { metadata.publishedInteractionCount >= 1 ); } catch (ex) { - Util.logger.warn( - ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}): ${ex.message}` + const msg = ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}) with ${metadata.publishedInteractionCount} active journeys: ${ex.message}`; + Util.logger.warn(metadata.publishedInteractionCount === 0 ? Util.getGrayMsg(msg) : msg); + } + try { + await this.compareSalesforceEntryEvents_dataExtension( + metadata.type, + metadata.configurationArguments.eventDataSummary, + metadata.r__dataExtension_key ); + } catch (ex) { + const msg = ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}) with ${metadata.publishedInteractionCount} active journeys: ${ex.message}`; + Util.logger.warn(metadata.publishedInteractionCount === 0 ? Util.getGrayMsg(msg) : msg); } return metadata; @@ -702,12 +779,14 @@ class Event extends MetadataType { * * @param {configurationArguments} ca trigger[0].configurationArguments * @param {boolean} isPublished if the current item is published it means we do not need to do contact vs common checks + * @returns {string} warnings or null */ static checkSalesforceEntryEvents(ca, isPublished) { // 1 check eventDataConfig const edcObjects = ca.eventDataConfig.objects.sort((a, b) => a.dePrefix.localeCompare(b.dePrefix) ); + const warnings = []; const errors = []; const dePrefixFields = {}; const dePrefixRelationshipMap = {}; @@ -743,10 +822,14 @@ class Event extends MetadataType { !Object.keys(this.sfObjects.objectFields[referencedObject]).length ) { // check if we found fields for the object - errors.push( + const msg = `Fields for Salesforce object ${referencedObject} could not be checked. Fields selected in entry event: ` + - object.fields.join(', ') - ); + object.fields.join(', '); + if (Util.OPTIONS.ignoreSfFields) { + warnings.push(` (--ignoreSfFields) ` + msg); + } else { + errors.push(msg); + } } else { // check if the fields selected in the eventDefinition are actually available for (const fieldName of object.fields) { @@ -766,7 +849,7 @@ class Event extends MetadataType { } // 1.2 check if all fields in eventDataConfig are listed in the eventDataSummary if (!ca.eventDataSummary.includes(object.dePrefix + fieldName)) { - // TODO instead, remove in postRetrieve and re-add in preDeploy + // we could auto-create eventDataSummary but frankly this is good for code reviews and for searching for fields errors.push( `Field ${object.dePrefix + fieldName} is listed under eventDataConfig${object.referenceObject ? ` for referenceObject ` + object.referenceObject : ''} but not in eventDataSummary` ); @@ -779,7 +862,7 @@ class Event extends MetadataType { // check if all fields in eventDataSummary are listed in the eventDataConfig for (let fieldName of ca.eventDataSummary) { - // TODO instead, remove in postRetrieve and re-add in preDeploy + // we could auto-create eventDataSummary but frankly this is good for code reviews and for searching for fields const fieldPath = fieldName.split(':'); fieldName = fieldPath.pop(); const dePrefix = fieldPath.join(':') + ':'; @@ -905,6 +988,15 @@ class Event extends MetadataType { } throw new Error(errors.join('\n · ')); // eslint-disable-line unicorn/error-message } + if (warnings?.length) { + // add a line break + if (warnings.length > 1) { + warnings.unshift(``); + } + return warnings.join('\n · '); + } else { + return null; + } } /** @@ -1005,12 +1097,57 @@ class Event extends MetadataType { // check if whats on the journey matches what SF Core offers this.checkSalesforceEntryEvents(ca, isPublished); } + /** + * + * @param {string} triggerType e.g. SalesforceObjectTriggerV2, APIEvent, ... + * @param {string[]} eventDataSummary eventDataConfig in simplified string-form + * @param {string} deKey key of associated dataExtension + * @returns {Promise.} - + */ + static async compareSalesforceEntryEvents_dataExtension( + triggerType, + eventDataSummary, + + deKey + ) { + if (triggerType !== 'SalesforceObjectTriggerV2' || !eventDataSummary) { + return; + } + + /** @type {DataExtensionItem} */ + const deItem = deKey ? cache.getByKey('dataExtension', deKey) : null; + if (!deItem) { + return; + } + + eventDataSummary = + 'string' === typeof eventDataSummary + ? // @ts-expect-error transforming this from API-string-format to from mcdev-format + eventDataSummary.split('; ').filter(Boolean).sort() + : eventDataSummary; + + const errors = []; + for (const fieldName of eventDataSummary) { + if (!deItem.Fields.find((field) => field.Name === fieldName)) { + errors.push( + `Field ${fieldName} was not found in associated dataExtension ${deKey}` + ); + } + } + if (errors?.length) { + // add a line break + if (errors.length > 1) { + errors.unshift(``); + } + throw new Error(errors.join('\n · ')); // eslint-disable-line unicorn/error-message + } + } /** * * @param {string} triggerType e.g. SalesforceObjectTriggerV2, APIEvent, ... * @param {configurationArguments} ca trigger[0].configurationArguments - * @returns {Promise.} - + * @returns {Promise.} - */ static async preDeployTasks_SalesforceEntryEvents(triggerType, ca) { if (triggerType !== 'SalesforceObjectTriggerV2' || !ca) { @@ -1037,7 +1174,8 @@ class Event extends MetadataType { await this.getSalesforceObjects(ca.objectAPIName); // check if whats on the journey matches what SF Core offers - this.checkSalesforceEntryEvents(ca, false); + + const warnings = this.checkSalesforceEntryEvents(ca, false); // normalize payload because these fields are sometimes set as strings and sometimes as objects // @ts-expect-error reverting this back from mcdev-format to API format @@ -1076,6 +1214,7 @@ class Event extends MetadataType { // @ts-expect-error journeys SOMETIMES spell it "Api" and this script aims to auto-correct that delete ca.objectApiName; } + return warnings; } } diff --git a/lib/metadataTypes/Journey.js b/lib/metadataTypes/Journey.js index 4e47cd22b..82f1591a0 100644 --- a/lib/metadataTypes/Journey.js +++ b/lib/metadataTypes/Journey.js @@ -406,10 +406,11 @@ class Journey extends MetadataType { delete config.eventDefinitionKey; delete config.eventDefinitionId; } catch (ex) { + const msg = ` - ${this.definition.type} ${metadata[this.definition.nameField]} (${ + metadata[this.definition.keyField] + }) ${metadata.status}: ${ex.message}.`; Util.logger.warn( - ` - ${this.definition.type} ${metadata[this.definition.nameField]} (${ - metadata[this.definition.keyField] - }): ${ex.message}.` + metadata.status === 'Published' ? msg : Util.getGrayMsg(msg) ); } } @@ -440,8 +441,9 @@ class Journey extends MetadataType { this.definition.type ); } catch (ex) { + const msg = ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}) ${metadata.status}: ${ex.message}`; Util.logger.warn( - ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}): ${ex.message}` + metadata.status === 'Published' ? msg : Util.getGrayMsg(msg) ); } } @@ -866,12 +868,16 @@ class Journey extends MetadataType { delete triggeredSend.key; } - triggeredSend.ccEmail = triggeredSend.ccEmail - .split(';') - .filter((el) => el !== ''); - triggeredSend.bccEmail = triggeredSend.bccEmail - .split(';') - .filter((el) => el !== ''); + if (typeof triggeredSend.ccEmail === 'string') { + triggeredSend.ccEmail = triggeredSend.ccEmail + .split(';') + .filter((el) => el !== ''); + } + if (typeof triggeredSend.bccEmail === 'string') { + triggeredSend.bccEmail = triggeredSend.bccEmail + .split(';') + .filter((el) => el !== ''); + } // List (optional) triggeredSend.r__list_PathName ||= {}; @@ -1034,10 +1040,11 @@ class Journey extends MetadataType { ); delete triggeredSend.emailId; } catch { + const msg = ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${ + metadata[this.definition.keyField] + }): Could not find email with ID ${triggeredSend.emailId} in Classic nor in Content Builder.`; Util.logger.warn( - ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${ - metadata[this.definition.keyField] - }): Could not find email with ID ${triggeredSend.emailId} in Classic nor in Content Builder.` + metadata.status === 'Published' ? msg : Util.getGrayMsg(msg) ); } } @@ -1219,10 +1226,15 @@ class Journey extends MetadataType { delete config.r__dataExtension_key; } } - await Event.preDeployTasks_SalesforceEntryEvents( + const warnings = await Event.preDeployTasks_SalesforceEntryEvents( metadata.triggers[0].type, metadata.triggers[0].configurationArguments ); + if (warnings) { + Util.logger.warn( + ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}): ${warnings}` + ); + } } // transactionalEmail / definitionType==='Transactional' && channel==='email' && triggers[].type === 'transactional-api' @@ -1376,14 +1388,16 @@ class Journey extends MetadataType { delete triggeredSend.r__triggeredSend_key; } - triggeredSend.ccEmail = - typeof triggeredSend.ccEmail === 'string' - ? triggeredSend.ccEmail - : triggeredSend.ccEmail.join(';'); - triggeredSend.bccEmail = - typeof triggeredSend.bccEmail === 'string' - ? triggeredSend.bccEmail - : triggeredSend.bccEmail.join(';'); + if (triggeredSend.ccEmail !== undefined) { + triggeredSend.ccEmail = Array.isArray(triggeredSend.ccEmail) + ? triggeredSend.ccEmail?.join(';') + : triggeredSend.ccEmail; + } + if (triggeredSend.bccEmail !== undefined) { + triggeredSend.bccEmail = Array.isArray(triggeredSend.bccEmail) + ? triggeredSend.bccEmail?.join(';') + : triggeredSend.bccEmail; + } // List (optional) if (triggeredSend.r__list_PathName) { @@ -1602,11 +1616,13 @@ class Journey extends MetadataType { // remove last entry from metadataToUpdate again metadataToUpdate.pop(); Util.logger.info( - ` - Found ${this.definition.type} ${ - metadataMap[metadataKey][this.definition.nameField] - } (${ - metadataMap[metadataKey][this.definition.keyField] - }) on BU, but it is not in Draft status. Will create new version.` + Util.getGrayMsg( + ` - Found ${this.definition.type} ${ + metadataMap[metadataKey][this.definition.nameField] + } (${ + metadataMap[metadataKey][this.definition.keyField] + }) on BU, but it is not in Draft status. Will create new version.` + ) ); metadataToCreate.push(metadataMap[metadataKey]); return 'create'; @@ -1657,38 +1673,40 @@ class Journey extends MetadataType { const triggeredSend = activity.configurationArguments?.triggeredSend; if (triggeredSend) { // the following is very similar but not equal to the variables in TriggeredSend.js - try { - let bccEmail = - typeof triggeredSend.bccEmail === 'string' - ? triggeredSend.bccEmail - : triggeredSend.bccEmail.join(';'); - bccEmail = ReplaceCbReference.replaceReference( - bccEmail, - parentName, - findAssetKeys - ); - triggeredSend.bccEmail = bccEmail.split(';').filter((el) => el !== ''); - changes = true; - } catch (ex) { - if (ex.code !== 200) { - error = ex; + if (triggeredSend.bccEmail !== undefined) { + try { + let bccEmail = Array.isArray(triggeredSend.bccEmail) + ? triggeredSend.bccEmail.join(';') + : triggeredSend.bccEmail; + bccEmail = ReplaceCbReference.replaceReference( + bccEmail, + parentName, + findAssetKeys + ); + triggeredSend.bccEmail = bccEmail.split(';').filter((el) => el !== ''); + changes = true; + } catch (ex) { + if (ex.code !== 200) { + error = ex; + } } } - try { - let ccEmail = - typeof triggeredSend.ccEmail === 'string' - ? triggeredSend.ccEmail - : triggeredSend.ccEmail.join(';'); - ccEmail = ReplaceCbReference.replaceReference( - ccEmail, - parentName, - findAssetKeys - ); - triggeredSend.ccEmail = ccEmail.split(';').filter((el) => el !== ''); - changes = true; - } catch (ex) { - if (ex.code !== 200) { - error = ex; + if (triggeredSend.ccEmail !== undefined) { + try { + let ccEmail = Array.isArray(triggeredSend.ccEmail) + ? triggeredSend.ccEmail?.join(';') + : triggeredSend.ccEmail; + ccEmail = ReplaceCbReference.replaceReference( + ccEmail, + parentName, + findAssetKeys + ); + triggeredSend.ccEmail = ccEmail.split(';').filter((el) => el !== ''); + changes = true; + } catch (ex) { + if (ex.code !== 200) { + error = ex; + } } } try { @@ -1773,6 +1791,14 @@ class Journey extends MetadataType { ); await this.publish(idArr); } + if (Util.OPTIONS.validate) { + Util.logger.info(`Validating: ${this.definition.type}`); + // pubslih + const idArr = Object.values(upsertResults).map( + (item) => 'id:' + item.id + '/' + item.version + ); + await this.validate(idArr); + } } /** @@ -1787,6 +1813,9 @@ class Journey extends MetadataType { const statusUrls = []; const executedKeyArr = []; const metadataMap = await this.retrieveForCache(); + const spinnerTransactional = yoctoSpinner({ + text: `Publishing transactional journey…`, + }); for (let key of keyArr) { let objectId; @@ -1859,6 +1888,7 @@ class Journey extends MetadataType { case 'Transactional': { resultsTransactional.push( (async () => { + spinnerTransactional.start(); try { const response = await this.client.rest.post( `/interaction/v1/interactions/transactional/create`, @@ -1867,6 +1897,7 @@ class Journey extends MetadataType { if (response.errors?.length) { throw new Error(JSON.stringify(response)); } else { + spinnerTransactional.stop(); Util.logger.info( ` - published ${this.definition.type}: ${ journey[this.definition.nameField] @@ -1874,8 +1905,10 @@ class Journey extends MetadataType { ); statusUrls.push({ key, statusUrl: response.statusUrl }); } + spinnerTransactional.start(); return key; } catch (ex) { + spinnerTransactional.stop(); if ( ex.response.status === 400 && ex.response?.data?.errors?.length === 1 && @@ -1898,6 +1931,7 @@ class Journey extends MetadataType { ); } } + spinnerTransactional.start(); } })() ); @@ -1981,11 +2015,8 @@ class Journey extends MetadataType { // Transactional Send Journeys if (resultsTransactional.length) { - const spinner = yoctoSpinner({ - text: `Publishing ${resultsTransactional.length} transactional journey${resultsTransactional.length === 1 ? '' : 's'}…`, - }).start(); const transactionalKeyArr = (await Promise.all(resultsTransactional)).filter(Boolean); - spinner.success('done.'); + spinnerTransactional.stop(); // if all publish actions failed, we don't need to re-retrieve anything here if (transactionalKeyArr.length) { @@ -2043,7 +2074,7 @@ class Journey extends MetadataType { } /** - * helper for {@link Journey.publish} + * helper for {@link Journey.publish} and {@link Journey.validate} * * @param {string} statusUrl URL to check the status of the publish request * @param {string} key journey-key or id for log messages @@ -2053,18 +2084,25 @@ class Journey extends MetadataType { * @returns {Promise.} key of the item that was published successfully */ static async _checkPublishStatus(statusUrl, key, name, spinner, tries = 1) { + const action = statusUrl.includes('/validateStatus') ? 'validating' : 'publishing'; try { const response = await this.client.rest.get(statusUrl); switch (response.status) { + case 'ValidateCompleted': case 'PublishCompleted': { - spinner.success('done.'); - Util.logger.info(` - published ${this.definition.type}: ${key} / ${name}`); + spinner.stop(); + const action = statusUrl.includes('/validateStatus') + ? 'validation successful -' + : 'published'; + + Util.logger.info(` - ${action} ${this.definition.type}: ${key} / ${name}`); this._showPublishStatusDetails(response); return key; } + case 'ValidateInProcess': case 'PublishInProcess': { Util.logger.debug( - ` - publishing ${this.definition.type} still in progress: ${key} / ${name}` + ` - ${action} ${this.definition.type} still in progress: ${key} / ${name}` ); if (tries < 50) { await (tries < 10 ? Util.sleep(2000) : Util.sleep(5000)); @@ -2080,9 +2118,9 @@ class Journey extends MetadataType { } } case 'Error': { - spinner.success('failed.'); + spinner.stop(); Util.logger.error( - ` - publishing ${this.definition.type} failed: ${key} / ${name}` + ` - ${action} ${this.definition.type} failed: ${key} / ${name}` ); this._showPublishStatusDetails(response); return; @@ -2130,6 +2168,163 @@ class Journey extends MetadataType { Util.logger.warn(' ' + msg); } } + + /** + * a function to validate the journey via API + * + * @param {string[]} keyArr keys or ids of the metadata + * @returns {Promise.} Returns list of updated keys/ids that were published. Success could only be seen with a delay in the UI because the publish-endpoint is async + */ + static async validate(keyArr) { + // works only with objectId + const executedKeyArr = []; + const metadataMap = await this.retrieveForCache(); + + for (let key of keyArr) { + let objectId; + let version; + let journey; + if (!key) { + continue; + } + if (key.startsWith('%23')) { + // if the key started with %23 assume an ID was copied from the URL but the user forgot to prefix it with id: + // correct the format + key = 'id:' + key.slice(3); + } + if (key.startsWith('id:')) { + // ! allow selecting journeys by ID because that's what users see in the URL + // remove id + objectId = key.slice(3); + if (objectId.startsWith('%23')) { + // in the journey URL the Id is prefixed with an HTML-encoded "#" which could accidentally be copied by users + // despite the slicing above, this still needs testing here because users might have prefixed the ID with id: but did not know to remove the #23 + objectId = objectId.slice(3); + // correct the format to ensure we show sth readable in the "Downloaded" log + // objectId = objectId; + // update this here to show it in the log + key = 'id:' + objectId; + } + if (objectId.includes('/')) { + version = objectId.split('/')[1]; + // in the journey URL the version is appended after the ID, separated by a forward-slash. Needs to be removed from the ID for caching as we always aim to retrieve the latest version only + objectId = objectId.split('/')[0]; + } else { + // if we didn't find a version we need to cache this from the API after all + if (key.includes('/')) { + // in the journey URL the version is appended after the ID, separated by a forward-slash. Needs to be removed from the key for caching as we always aim to retrieve the latest version only + key = key.split('/')[0]; + } + } + journey = Object.values(metadataMap.metadata).find((el) => el.id === objectId); + if (!journey) { + Util.logger.info( + ` ☇ skipping ${this.definition.type} ${key}: not found on server (1)` + ); + continue; + } + } else { + // key assumed + journey = metadataMap.metadata[key]; + } + + if (!journey) { + Util.logger.info( + ` ☇ skipping ${this.definition.type} ${key}: not found on server (2)` + ); + continue; + } + if (!version) { + version = journey.version; + } + if (journey.status === 'Published') { + // api would return error code 30000 and ask to open a support case when in fact we simply already have a transactionalEmail created based on this status + Util.logger.error( + ` ☇ skipping ${this.definition.type} ${ + journey[this.definition.nameField] + } (${journey[this.definition.keyField]}): already published` + ); + continue; + } + + switch (journey.definitionType) { + case 'Multistep': { + // SF Event, Api Event Journeys + // ! for SF-triggered journeys this cannot be asynchronous or it will cause a race-condition (see #1627 for details); the requests are accepted but then processed sequentually anyways, eliminating potential speed gains. + // It is unknown if the same would happen for API-event journeys but given that it's the same endpoint, lets not risk it and run this sequentially + let statusUrl; + try { + const response = await this.client.rest.post( + `/interaction/v1/interactions/validateAsync/${journey.id}?versionNumber=${version}`, + {} + ); // payload is empty for this request + if (response.statusUrl && response.statusId) { + Util.logger.info( + ` - ${this.definition.type} queued for validating: ${journey[this.definition.keyField]}/${version} / ${journey[this.definition.nameField]}` + ); + statusUrl = response.statusUrl; + } else { + throw new Error(response); + } + const spinner = yoctoSpinner({ + text: `Validating journey…`, + }).start(); + + await Util.sleep(1000); + executedKeyArr.push( + await this._checkPublishStatus( + statusUrl, + journey[this.definition.keyField], + journey[this.definition.nameField], + spinner + ) + ); + } catch (ex) { + switch (ex.message) { + case 'Cannot validate interaction in Published status.': { + Util.logger.info( + ` - ${this.definition.type} ${key}/${version} is already published. Can only validate Draft Journeys` + ); + + break; + } + case 'Cannot validate interaction in Stopped status.': { + Util.logger.warn( + ` - ${this.definition.type} ${key}/${version} is stopped. Can only validate Draft Journeys.` + ); + + break; + } + case 'Cannot validate interaction in Paused status.': { + Util.logger.warn( + ` - ${this.definition.type} ${key}/${version} is already published but currently paused. Can only validate Draft Journeys.` + ); + + break; + } + default: { + Util.logger.error( + `Failed to validate ${this.definition.type} ${key}: ${ex.message}` + ); + } + } + } + break; + } + default: { + throw new Error( + `${this.definition.type} type ${journey.definitionType} not supported yet by validate method` + ); + } + } + } // for loop + + Util.logger.info( + `Validated ${executedKeyArr.filter(Boolean).length} of ${keyArr.length} items without errors` + ); + return executedKeyArr.filter(Boolean); + } + /** * stops latest journey version * diff --git a/lib/metadataTypes/MetadataType.js b/lib/metadataTypes/MetadataType.js index 768de4bbf..6ca094a4e 100644 --- a/lib/metadataTypes/MetadataType.js +++ b/lib/metadataTypes/MetadataType.js @@ -446,6 +446,33 @@ class MetadataType { return metadata; } + /** + * helper to find a new unique name during item creation + * + * @param {string} key key of the item + * @param {string} name name of the item + * @param {{ type: string; key: string; name: any; }[]} namesInFolder names of the items in the same folder + * @param {string} [subtype] itemType-name + * @returns {string} new name + */ + static findUniqueName(key, name, namesInFolder, subtype) { + let newName = name; + let suffix; + let i = 1; + while ( + namesInFolder.find( + (item) => + item.name === newName && item.key !== key && (!subtype || item.type === subtype) + ) + ) { + suffix = ' (' + i + ')'; + // for customer key max is 100 chars + newName = name.slice(0, Math.max(0, 100 - suffix.length)) + suffix; + i++; + } + return newName; + } + /** * Abstract create method that needs to be implemented in child metadata type * @@ -808,7 +835,16 @@ class MetadataType { filteredByPreDeploy++; } } catch (ex) { - Util.logger.errorStack(ex, `Upserting ${this.definition.type} failed`); + if ( + metadataMap[metadataKey] && + metadataMap[metadataKey][this.definition.nameField] + ) { + Util.logger.error( + ` ☇ skipping ${this.definition.type} ${metadataKey} / ${metadataMap[metadataKey][this.definition.nameField]}: ${ex.message}` + ); + } else { + Util.logger.errorStack(ex, `Upserting ${this.definition.type} failed`); + } } } if (!runUpsertSequentially) { @@ -2302,7 +2338,7 @@ class MetadataType { return { metadata: metadata, type: this.definition.type }; } catch (ex) { Util.logger.error( - ` ☇ skipped ${this.definition.type} ${metadata[this.definition.keyField]}: ${ex.message}` + ` ☇ skipped ${this.definition.type} ${metadata[this.definition.keyField]}${metadata[this.definition.nameField] ? ' / ' + metadata[this.definition.nameField] : ''}: ${ex.message}` ); } } @@ -2845,9 +2881,7 @@ class MetadataType { } if (warnings.length) { Util.logger.warn( - ` - ${this.definition.type} ${metadataItem[this.definition.nameField]} (${ - metadataItem[this.definition.keyField] - }):${warnings.length > 1 ? '\n ·' : ''} ${warnings.join('\n · ')}` + ` - ${this.definition.type} ${metadataItem[this.definition.keyField]} / ${metadataItem[this.definition.nameField]}:${warnings.length > 1 ? '\n ·' : ''} ${warnings.join('\n · ')}` ); } return item; diff --git a/lib/metadataTypes/Query.js b/lib/metadataTypes/Query.js index fb60919c7..f01e3e1c1 100644 --- a/lib/metadataTypes/Query.js +++ b/lib/metadataTypes/Query.js @@ -261,6 +261,23 @@ class Query extends MetadataType { // set ID for Append / Overwrite/ Update action metadata.targetUpdateTypeId = this.definition.targetUpdateTypeMapping[metadata.targetUpdateTypeName]; + + if (!Util.OPTIONS.matchName) { + // make sure the name is unique + const thisCache = cache.getCache()[this.definition.type]; + const relevantNames = Object.keys(thisCache).map((key) => ({ + type: null, + key: key, + name: thisCache[key][this.definition.nameField], + })); + // if the name is already in the folder for a different key, add a number to the end + metadata[this.definition.nameField] = this.findUniqueName( + metadata[this.definition.keyField], + metadata[this.definition.nameField], + relevantNames + ); + } + return metadata; } diff --git a/lib/metadataTypes/SenderProfile.js b/lib/metadataTypes/SenderProfile.js index ac6e8aec2..6b9a49b4b 100644 --- a/lib/metadataTypes/SenderProfile.js +++ b/lib/metadataTypes/SenderProfile.js @@ -143,16 +143,21 @@ class SenderProfile extends MetadataType { }): AutoForwardToEmailAddress and AutoForwardToName will be ignored because UseDefaultRMMRules is set to true; setting UseDefaultRMMRules to false` ); metadata.UseDefaultRMMRules = false; - } else if ( - !metadata.UseDefaultRMMRules && - (metadata.AutoForwardToEmailAddress === '' || metadata.AutoForwardToName === '') - ) { - Util.logger.warn( - ` - ${this.definition.type} ${metadata[this.definition.nameField]} (${ - metadata[this.definition.keyField] - }): AutoForwardToEmailAddress and AutoForwardToName are required when UseDefaultRMMRules is set to false; setting UseDefaultRMMRules to true` + } + if (!Util.OPTIONS.matchName) { + // #4 make sure the name is unique + const thisCache = cache.getCache()[this.definition.type]; + const relevantNames = Object.keys(thisCache).map((key) => ({ + type: null, + key: key, + name: thisCache[key][this.definition.nameField], + })); + // if the name is already in the folder for a different key, add a number to the end + metadata[this.definition.nameField] = this.findUniqueName( + metadata[this.definition.keyField], + metadata[this.definition.nameField], + relevantNames ); - metadata.UseDefaultRMMRules = true; } return metadata; } diff --git a/lib/metadataTypes/definitions/Automation.definition.js b/lib/metadataTypes/definitions/Automation.definition.js index c2e1c8fec..eec9bc743 100644 --- a/lib/metadataTypes/definitions/Automation.definition.js +++ b/lib/metadataTypes/definitions/Automation.definition.js @@ -270,7 +270,8 @@ export default { 'Used via Automation Studio directly - or indirectly via Journey Builder & MC Connect.', typeRetrieveByDefault: true, typeName: 'Automation', - manualDeployTypes: ['wait'], + customDeployTypes: ['wait'], + manualDeployTypes: [], fields: { categoryId: { isCreateable: true, @@ -574,8 +575,8 @@ export default { template: false, }, 'steps[].activities[].serializedObject': { - isCreateable: false, - isUpdateable: false, + isCreateable: true, + isUpdateable: true, retrieving: false, template: false, }, @@ -585,6 +586,13 @@ export default { 'steps[].activities[].r__key': { skipValidation: true, }, + 'steps[].activities[].timeZone': { + // used for wait actitivity + isCreateable: false, + isUpdateable: false, + retrieving: true, + template: true, + }, 'steps[].description': { isCreateable: true, isUpdateable: true, diff --git a/lib/metadataTypes/definitions/DataExtensionField.definition.js b/lib/metadataTypes/definitions/DataExtensionField.definition.js index 4dc29b2d5..3cdc76678 100644 --- a/lib/metadataTypes/definitions/DataExtensionField.definition.js +++ b/lib/metadataTypes/definitions/DataExtensionField.definition.js @@ -1,6 +1,6 @@ export default { bodyIteratorField: 'Results', - dependencies: [], + dependencies: ['dataExtension'], dependencyGraph: null, filter: {}, hasExtended: false, diff --git a/lib/metadataTypes/definitions/Event.definition.js b/lib/metadataTypes/definitions/Event.definition.js index 1889fc846..e49ecc0b4 100644 --- a/lib/metadataTypes/definitions/Event.definition.js +++ b/lib/metadataTypes/definitions/Event.definition.js @@ -1,7 +1,7 @@ export default { bodyIteratorField: 'items', - dependencies: ['dataExtension', 'user'], - dependencyGraph: { dataExtension: ['r__dataExtension_key'] }, + dependencies: ['automation', 'dataExtension', 'dataExtensionField', 'user'], + dependencyGraph: { automation: ['r__automation_key'], dataExtension: ['r__dataExtension_key'] }, hasExtended: false, idField: 'id', keyIsFixed: false, @@ -208,6 +208,30 @@ export default { retrieving: true, template: true, }, + 'configurationArguments.contactKey.relationshipIdName': { + isCreateable: true, + isUpdateable: true, + retrieving: true, + template: true, + }, + 'configurationArguments.contactKey.relationshipName': { + isCreateable: true, + isUpdateable: true, + retrieving: true, + template: true, + }, + 'configurationArguments.contactKey.isPolymorphic': { + isCreateable: true, + isUpdateable: true, + retrieving: true, + template: true, + }, + 'configurationArguments.contactKey.referenceObjectName': { + isCreateable: true, + isUpdateable: true, + retrieving: true, + template: true, + }, 'configurationArguments.contactPersonType': { isCreateable: true, isUpdateable: true, @@ -232,6 +256,9 @@ export default { retrieving: true, template: true, }, + 'configurationArguments.eventDataConfig.objects': { + skipValidation: true, + }, 'configurationArguments.eventDataSummary': { isCreateable: true, isUpdateable: true, @@ -250,12 +277,27 @@ export default { retrieving: true, template: true, }, - 'configurationArguments.primaryObjectFilterCriteria': { + 'configurationArguments.passThroughArgument.fields': { + isCreateable: true, + isUpdateable: true, + retrieving: true, + template: true, + }, + 'configurationArguments.passThroughArgument.fields.ContactKey': { + isCreateable: true, + isUpdateable: true, + retrieving: true, + template: true, + }, + 'configurationArguments.passThroughArgument.fields.Email': { isCreateable: true, isUpdateable: true, retrieving: true, template: true, }, + 'configurationArguments.primaryObjectFilterCriteria': { + skipValidation: true, + }, 'configurationArguments.primaryObjectFilterSummary': { isCreateable: true, isUpdateable: true, @@ -970,5 +1012,11 @@ export default { retrieving: true, template: true, }, + r__automation_key: { + isCreateable: false, + isUpdateable: false, + retrieving: true, + template: true, + }, }, }; diff --git a/lib/metadataTypes/definitions/ImportFile.definition.js b/lib/metadataTypes/definitions/ImportFile.definition.js index cc1245944..464b5e423 100644 --- a/lib/metadataTypes/definitions/ImportFile.definition.js +++ b/lib/metadataTypes/definitions/ImportFile.definition.js @@ -90,8 +90,8 @@ export default { template: true, }, destinationId: { - isCreateable: false, - isUpdateable: false, + isCreateable: true, + isUpdateable: true, retrieving: false, template: false, }, diff --git a/lib/metadataTypes/definitions/Journey.definition.js b/lib/metadataTypes/definitions/Journey.definition.js index d7f68c905..b65c22bdd 100644 --- a/lib/metadataTypes/definitions/Journey.definition.js +++ b/lib/metadataTypes/definitions/Journey.definition.js @@ -118,12 +118,52 @@ export default { retrieving: true, template: true, }, + 'activities[].configurationArguments.triggeredSendKey': { + // if used during create then we are stuck with old data + isCreateable: false, + isUpdateable: true, + retrieving: true, + template: false, + }, + 'activities[].configurationArguments.triggeredSendId': { + // if used during create then we are stuck with old data + isCreateable: false, + isUpdateable: true, + retrieving: true, + template: false, + }, 'activities[].configurationArguments.triggeredSend': { isCreateable: true, isUpdateable: true, retrieving: true, template: true, }, + 'activities[].configurationArguments.triggeredSend.id': { + // if used during create then we are stuck with old data + isCreateable: false, + isUpdateable: true, + retrieving: true, + template: false, + }, + 'activities[].configurationArguments.triggeredSend.key': { + // if used during create then we are stuck with old data + isCreateable: false, + isUpdateable: true, + retrieving: true, + template: false, + }, + 'activities[].configurationArguments.triggeredSend.campaigns': { + isCreateable: true, + isUpdateable: true, + retrieving: true, + template: true, + }, + 'activities[].configurationArguments.triggeredSend.suppressionLists': { + isCreateable: true, + isUpdateable: true, + retrieving: true, + template: true, + }, 'activities[].configurationArguments.triggeredSend.autoAddSubscribers': { isCreateable: true, isUpdateable: true, @@ -778,10 +818,7 @@ export default { template: true, }, 'triggers[].configurationArguments.eventDataConfig': { - isCreateable: true, - isUpdateable: true, - retrieving: true, - template: true, + skipValidation: true, }, 'triggers[].configurationArguments.primaryObjectFilterCriteria': { skipValidation: true, diff --git a/lib/metadataTypes/definitions/TriggeredSend.definition.js b/lib/metadataTypes/definitions/TriggeredSend.definition.js index 57ecc82c8..5bc8ae485 100644 --- a/lib/metadataTypes/definitions/TriggeredSend.definition.js +++ b/lib/metadataTypes/definitions/TriggeredSend.definition.js @@ -17,6 +17,12 @@ export default { sendClassification: ['r__sendClassification_key'], senderProfile: ['r__senderProfile_key'], }, + filter: { + r__folder_Path: [ + 'Journey Builder Sends/', + 'HiddenCategory/HiddenJourneyBuilderTriggeredSends/', + ], + }, folderType: 'triggered_send', hasExtended: false, idField: 'ObjectID', diff --git a/lib/util/devops.js b/lib/util/devops.js index e6c93f7a7..70142788f 100644 --- a/lib/util/devops.js +++ b/lib/util/devops.js @@ -418,9 +418,19 @@ const DevOps = { } // all good let's loop a second time for actual execution for (const sourceMlName of sourceMarketListArr) { + /** @type {string} */ const targetMlName = properties.options.deployment.sourceTargetMapping[sourceMlName]; + /** @type {string} */ const sourceBU = Object.keys(properties.marketList[sourceMlName])[0]; + /** @type {string} */ const sourceMarket = Object.values(properties.marketList[sourceMlName])[0]; + if ('string' !== typeof sourceMarket) { + Util.logger.error( + 'Deployment Source market list needs to have a 1:1 BU-Market combo. Your value: ' + + sourceMarket + ); + return; + } const delta = Array.isArray(diffArr) ? diffArr @@ -465,7 +475,7 @@ const DevOps = { Util.logger.info( `⚡ mcdev bt ${bu} ${type} "${keyArr.join(',')}" ${sourceMarket}` ); - await Builder.buildTemplate(bu, type, keyArr, sourceMarket); + await Builder.buildTemplate(bu, type, keyArr, [sourceMarket]); // ensure we have the right key for bd/bdb that matches the name used for rt if (keyArr.length) { if (!typeDelta[type]) { @@ -515,9 +525,7 @@ const DevOps = { `⚡ mcdev bdb ${targetMlName} ${type} "${typeDelta[type].join(',')}"` ); // omitting "await" to speed up creation - bdPromises.push( - Builder.buildDefinitionBulk(targetMlName, type, typeDelta[type].join(',')) - ); + bdPromises.push(Builder.buildDefinitionBulk(targetMlName, type, typeDelta[type])); } await Promise.all(bdPromises); Util.logger.info(`- ✔️ Deploy definitions created`); diff --git a/lib/util/file.js b/lib/util/file.js index 23e7eeff4..6ceea7fbe 100644 --- a/lib/util/file.js +++ b/lib/util/file.js @@ -6,6 +6,7 @@ import prettier from 'prettier'; import beautyAmp from 'beauty-amp-core2'; import { Util } from './util.js'; import updateNotifier from 'update-notifier'; +import config from './config.js'; /** * @typedef {import('../../types/mcdev.d.js').AuthObject} AuthObject @@ -192,10 +193,20 @@ const File = { * @returns {Promise.} Promise */ writePrettyToFile: async function (directory, filename, filetype, content, templateVariables) { - let formatted = - filetype === 'amp' - ? await this.beautify_beautyAmp(content, false) - : await this._beautify_prettier(directory, filename, filetype, content); + let formatted; + const properties = await config.getProperties(); + if ( + (properties.options.formatOnSave && Util.OPTIONS.format === undefined) || + Util.OPTIONS.format + ) { + formatted = + filetype === 'amp' + ? await this.beautify_beautyAmp(content, false) + : await this._beautify_prettier(directory, filename, filetype, content); + } else { + // skip formatting + formatted = content; + } if (templateVariables) { formatted = Util.replaceByObject(formatted, templateVariables); } @@ -209,7 +220,7 @@ const File = { * @param {boolean} [formatHTML] applies formatting to html and ampscript if true * @returns {Promise.} formatted code */ - beautify_beautyAmp_beautify: async function (content, formatHTML = true) { + _beautify_beautyAmp_beautify: async function (content, formatHTML = true) { const response = await beautyAmp.beautify(content, formatHTML); if (typeof response == 'string') { return response.trim() + '\n'; @@ -226,15 +237,24 @@ const File = { * @returns {Promise.} original string on error; formatted string on success */ beautify_beautyAmp: async function (content, formatHTML = true) { - // logs trough console only for the moment. - const logs = { - loggerOn: false, // <= disable logging - }; - try { - beautyAmp.setup(null, null, logs); - // Note: we need to trim the result as beautyAmp adds a leading new line; but we also want to ensure there is a single new line at the end to comply with standard linting rules - return await this.beautify_beautyAmp_beautify(content, formatHTML); - } catch { + const properties = await config.getProperties(); + if ( + (properties.options.formatOnSave && Util.OPTIONS.format === undefined) || + Util.OPTIONS.format + ) { + // logs trough console only for the moment. + const logs = { + loggerOn: false, // <= disable logging + }; + try { + beautyAmp.setup(null, null, logs); + // Note: we need to trim the result as beautyAmp adds a leading new line; but we also want to ensure there is a single new line at the end to comply with standard linting rules + return await this._beautify_beautyAmp_beautify(content, formatHTML); + } catch { + return content; + } + } else { + // skip formatting return content; } }, diff --git a/lib/util/replaceContentBlockReference.js b/lib/util/replaceContentBlockReference.js index 6251ea57c..775925f43 100644 --- a/lib/util/replaceContentBlockReference.js +++ b/lib/util/replaceContentBlockReference.js @@ -84,6 +84,17 @@ export default class ReplaceContentBlockReference { }, }; + /** + * helper for tests + */ + static resetCacheMap() { + this.assetCacheMap = { + id: {}, + key: {}, + name: {}, + }; + } + /** * used to equalize the reference in the code to whatever is set in the "to" field * diff --git a/lib/util/validations.js b/lib/util/validations.js index a40386706..07f2de88d 100644 --- a/lib/util/validations.js +++ b/lib/util/validations.js @@ -28,7 +28,13 @@ export default async function validation(definition, item, targetDir, codeExtrac try { if (customRuleImport) { customRules = customRuleImport - ? await customRuleImport.validation(definition, item, targetDir, Util) + ? await customRuleImport.validation( + definition, + item, + targetDir, + Util, + codeExtractItemArr + ) : {}; } } catch (ex) { @@ -67,6 +73,14 @@ export default async function validation(definition, item, targetDir, codeExtrac // some types do not support folders return true; } + const doNotEvaluate = ['automation', 'attributeSet', 'list']; + if ( + doNotEvaluate.includes(definition.type) || + (definition.type === 'asset' && item?.assetType?.name === 'webpage') + ) { + // this subtype is not visible in the interface and hence always technically sits in the root + return true; + } return folderPath.includes('/'); }, diff --git a/package-lock.json b/package-lock.json index 7cdd51b6d..6b77b31f1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ "console.table": "0.10.0", "deep-equal": "2.2.3", "fs-extra": "11.2.0", - "inquirer": "11.0.2", + "inquirer": "12.1.0", "json-to-table": "4.2.1", "mustache": "4.2.0", "p-limit": "6.1.0", @@ -24,12 +24,12 @@ "prettier-plugin-sql": "0.18.1", "semver": "7.6.3", "sfmc-sdk": "2.1.2", - "simple-git": "3.25.0", + "simple-git": "3.27.0", "toposort": "2.0.2", "update-notifier": "7.3.1", - "winston": "3.14.2", + "winston": "3.15.0", "yargs": "17.7.2", - "yocto-spinner": "0.1.0" + "yocto-spinner": "0.1.1" }, "bin": { "mcdev": "lib/cli.js" @@ -39,29 +39,29 @@ "@types/fs-extra": "11.0.4", "@types/inquirer": "9.0.7", "@types/mocha": "10.0.8", - "@types/node": "22.5.5", + "@types/node": "22.9.0", "@types/yargs": "17.0.33", "assert": "2.1.0", - "axios-mock-adapter": "2.0.0", + "axios-mock-adapter": "2.1.0", "c8": "10.0.0", "chai": "5.1.1", "chai-files": "1.4.0", "eslint": "9.10.0", "eslint-config-prettier": "9.1.0", "eslint-config-ssjs": "2.0.0", - "eslint-plugin-jsdoc": "50.2.4", + "eslint-plugin-jsdoc": "50.5.0", "eslint-plugin-mocha": "10.5.0", "eslint-plugin-prettier": "5.2.1", - "eslint-plugin-unicorn": "55.0.0", + "eslint-plugin-unicorn": "56.0.0", "fast-xml-parser": "4.4.1", - "globals": "15.9.0", + "globals": "15.12.0", "husky": "9.1.6", "lint-staged": "15.2.10", "mocha": "10.7.3", - "mock-fs": "5.2.0", + "mock-fs": "5.3.0", "npm-run-all": "4.1.5", "prettier-eslint": "16.3.0", - "typescript": "5.6.2" + "typescript": "5.6.3" }, "engines": { "node": ">=18.18.2" @@ -168,9 +168,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz", - "integrity": "sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", + "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", "dev": true, "engines": { "node": ">=6.9.0" @@ -286,9 +286,9 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.48.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.48.0.tgz", - "integrity": "sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw==", + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.49.0.tgz", + "integrity": "sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q==", "dev": true, "dependencies": { "comment-parser": "1.4.1", @@ -502,45 +502,48 @@ } }, "node_modules/@inquirer/checkbox": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-3.0.1.tgz", - "integrity": "sha512-0hm2nrToWUdD6/UHnel/UKGdk1//ke5zGUpHIvk5ZWmaKezlGxZkOJXNSWsdxO/rEqTkbB3lNC2J6nBElV2aAQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.0.2.tgz", + "integrity": "sha512-+gznPl8ip8P8HYHYecDtUtdsh1t2jvb+sWCD72GAiZ9m45RqwrLmReDaqdC0umQfamtFXVRoMVJ2/qINKGm9Tg==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/figures": "^1.0.6", - "@inquirer/type": "^2.0.0", + "@inquirer/core": "^10.1.0", + "@inquirer/figures": "^1.0.8", + "@inquirer/type": "^3.0.1", "ansi-escapes": "^4.3.2", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/confirm": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-4.0.1.tgz", - "integrity": "sha512-46yL28o2NJ9doViqOy0VDcoTzng7rAb6yPQKU7VDLqkmbCaH4JqK4yk4XqlzNWy9PVC5pG1ZUXPBQv+VqnYs2w==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.0.2.tgz", + "integrity": "sha512-KJLUHOaKnNCYzwVbryj3TNBxyZIrr56fR5N45v6K9IPrbT6B7DcudBMfylkV1A8PUdJE15mybkEQyp2/ZUpxUA==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/type": "^2.0.0" + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/core": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-9.2.1.tgz", - "integrity": "sha512-F2VBt7W/mwqEU4bL0RnHNZmC/OxzNx9cOYxHqnXX3MP6ruYvZUZAW9imgN9+h/uBT/oP8Gh888J2OZSbjSeWcg==", - "dependencies": { - "@inquirer/figures": "^1.0.6", - "@inquirer/type": "^2.0.0", - "@types/mute-stream": "^0.0.4", - "@types/node": "^22.5.5", - "@types/wrap-ansi": "^3.0.0", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.1.0.tgz", + "integrity": "sha512-I+ETk2AL+yAVbvuKx5AJpQmoaWhpiTFOg/UJb7ZkMAK4blmtG8ATh5ct+T/8xNld0CZG/2UhtkdMwpgvld92XQ==", + "dependencies": { + "@inquirer/figures": "^1.0.8", + "@inquirer/type": "^3.0.1", "ansi-escapes": "^4.3.2", "cli-width": "^4.1.0", - "mute-stream": "^1.0.0", + "mute-stream": "^2.0.0", "signal-exit": "^4.1.0", "strip-ansi": "^6.0.1", "wrap-ansi": "^6.2.0", @@ -564,147 +567,174 @@ } }, "node_modules/@inquirer/editor": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-3.0.1.tgz", - "integrity": "sha512-VA96GPFaSOVudjKFraokEEmUQg/Lub6OXvbIEZU1SDCmBzRkHGhxoFAVaF30nyiB4m5cEbDgiI2QRacXZ2hw9Q==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.1.0.tgz", + "integrity": "sha512-K1gGWsxEqO23tVdp5MT3H799OZ4ER1za7Dlc8F4um0W7lwSv0KGR/YyrUEyimj0g7dXZd8XknM/5QA2/Uy+TbA==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/type": "^2.0.0", + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1", "external-editor": "^3.1.0" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/expand": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-3.0.1.tgz", - "integrity": "sha512-ToG8d6RIbnVpbdPdiN7BCxZGiHOTomOX94C2FaT5KOHupV40tKEDozp12res6cMIfRKrXLJyexAZhWVHgbALSQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-4.0.2.tgz", + "integrity": "sha512-WdgCX1cUtinz+syKyZdJomovULYlKUWZbVYZzhf+ZeeYf4htAQ3jLymoNs3koIAKfZZl3HUBb819ClCBfyznaw==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/type": "^2.0.0", + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/figures": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.6.tgz", - "integrity": "sha512-yfZzps3Cso2UbM7WlxKwZQh2Hs6plrbjs1QnzQDZhK2DgyCo6D8AaHps9olkNcUFlcYERMqU3uJSp1gmy3s/qQ==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.8.tgz", + "integrity": "sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg==", "engines": { "node": ">=18" } }, "node_modules/@inquirer/input": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-3.0.1.tgz", - "integrity": "sha512-BDuPBmpvi8eMCxqC5iacloWqv+5tQSJlUafYWUe31ow1BVXjW2a5qe3dh4X/Z25Wp22RwvcaLCc2siHobEOfzg==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-4.0.2.tgz", + "integrity": "sha512-yCLCraigU085EcdpIVEDgyfGv4vBiE4I+k1qRkc9C5dMjWF42ADMGy1RFU94+eZlz4YlkmFsiyHZy0W1wdhaNg==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/type": "^2.0.0" + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/number": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-2.0.1.tgz", - "integrity": "sha512-QpR8jPhRjSmlr/mD2cw3IR8HRO7lSVOnqUvQa8scv1Lsr3xoAMMworcYW3J13z3ppjBFBD2ef1Ci6AE5Qn8goQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-3.0.2.tgz", + "integrity": "sha512-MKQhYofdUNk7eqJtz52KvM1dH6R93OMrqHduXCvuefKrsiMjHiMwjc3NZw5Imm2nqY7gWd9xdhYrtcHMJQZUxA==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/type": "^2.0.0" + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/password": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-3.0.1.tgz", - "integrity": "sha512-haoeEPUisD1NeE2IanLOiFr4wcTXGWrBOyAyPZi1FfLJuXOzNmxCJPgUrGYKVh+Y8hfGJenIfz5Wb/DkE9KkMQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-4.0.2.tgz", + "integrity": "sha512-tQXGSu7IO07gsYlGy3VgXRVsbOWqFBMbqAUrJSc1PDTQQ5Qdm+QVwkP0OC0jnUZ62D19iPgXOMO+tnWG+HhjNQ==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/type": "^2.0.0", + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1", "ansi-escapes": "^4.3.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/prompts": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-6.0.1.tgz", - "integrity": "sha512-yl43JD/86CIj3Mz5mvvLJqAOfIup7ncxfJ0Btnl0/v5TouVUyeEdcpknfgc+yMevS/48oH9WAkkw93m7otLb/A==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-7.1.0.tgz", + "integrity": "sha512-5U/XiVRH2pp1X6gpNAjWOglMf38/Ys522ncEHIKT1voRUvSj/DQnR22OVxHnwu5S+rCFaUiPQ57JOtMFQayqYA==", "dependencies": { - "@inquirer/checkbox": "^3.0.1", - "@inquirer/confirm": "^4.0.1", - "@inquirer/editor": "^3.0.1", - "@inquirer/expand": "^3.0.1", - "@inquirer/input": "^3.0.1", - "@inquirer/number": "^2.0.1", - "@inquirer/password": "^3.0.1", - "@inquirer/rawlist": "^3.0.1", - "@inquirer/search": "^2.0.1", - "@inquirer/select": "^3.0.1" + "@inquirer/checkbox": "^4.0.2", + "@inquirer/confirm": "^5.0.2", + "@inquirer/editor": "^4.1.0", + "@inquirer/expand": "^4.0.2", + "@inquirer/input": "^4.0.2", + "@inquirer/number": "^3.0.2", + "@inquirer/password": "^4.0.2", + "@inquirer/rawlist": "^4.0.2", + "@inquirer/search": "^3.0.2", + "@inquirer/select": "^4.0.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/rawlist": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-3.0.1.tgz", - "integrity": "sha512-VgRtFIwZInUzTiPLSfDXK5jLrnpkuSOh1ctfaoygKAdPqjcjKYmGh6sCY1pb0aGnCGsmhUxoqLDUAU0ud+lGXQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-4.0.2.tgz", + "integrity": "sha512-3XGcskMoVF8H0Dl1S5TSZ3rMPPBWXRcM0VeNVsS4ByWeWjSeb0lPqfnBg6N7T0608I1B2bSVnbi2cwCrmOD1Yw==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/type": "^2.0.0", + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/search": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-2.0.1.tgz", - "integrity": "sha512-r5hBKZk3g5MkIzLVoSgE4evypGqtOannnB3PKTG9NRZxyFRKcfzrdxXXPcoJQsxJPzvdSU2Rn7pB7lw0GCmGAg==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-3.0.2.tgz", + "integrity": "sha512-Zv4FC7w4dJ13BOJfKRQCICQfShinGjb1bCEIHxTSnjj2telu3+3RHwHubPG9HyD4aix5s+lyAMEK/wSFD75HLA==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/figures": "^1.0.6", - "@inquirer/type": "^2.0.0", + "@inquirer/core": "^10.1.0", + "@inquirer/figures": "^1.0.8", + "@inquirer/type": "^3.0.1", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/select": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-3.0.1.tgz", - "integrity": "sha512-lUDGUxPhdWMkN/fHy1Lk7pF3nK1fh/gqeyWXmctefhxLYxlDsc7vsPBEpxrfVGDsVdyYJsiJoD4bJ1b623cV1Q==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-4.0.2.tgz", + "integrity": "sha512-uSWUzaSYAEj0hlzxa1mUB6VqrKaYx0QxGBLZzU4xWFxaSyGaXxsSE4OSOwdU24j0xl8OajgayqFXW0l2bkl2kg==", "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/figures": "^1.0.6", - "@inquirer/type": "^2.0.0", + "@inquirer/core": "^10.1.0", + "@inquirer/figures": "^1.0.8", + "@inquirer/type": "^3.0.1", "ansi-escapes": "^4.3.2", "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-2.0.0.tgz", - "integrity": "sha512-XvJRx+2KR3YXyYtPUUy+qd9i7p+GO9Ko6VIIpWlBrpWwXDv8WLFeHTxz35CfQFUiBMLXlGHhGzys7lqit9gWag==", - "dependencies": { - "mute-stream": "^1.0.0" - }, + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-3.0.1.tgz", + "integrity": "sha512-+ksJMIy92sOAiAccGpcKZUc3bYO07cADnscIxHBknEm3uNts3movSmBofc1908BNy5edKscxYeAdaX1NXkHS6A==", "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@isaacs/cliui": { @@ -1019,20 +1049,12 @@ "integrity": "sha512-HfMcUmy9hTMJh66VNcmeC9iVErIZJli2bszuXc6julh5YGuRb/W5OnkHjwLNYdFlMis0sY3If5SEAp+PktdJjw==", "dev": true }, - "node_modules/@types/mute-stream": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/@types/mute-stream/-/mute-stream-0.0.4.tgz", - "integrity": "sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/node": { - "version": "22.5.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.5.tgz", - "integrity": "sha512-Xjs4y5UPO/CLdzpgR6GirZJx36yScjh73+2NlLlkFRSoQN8B0DpfXPdZGnvVmLRLOsqDpOfTNv7D9trgGhmOIA==", + "version": "22.9.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.0.tgz", + "integrity": "sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ==", "dependencies": { - "undici-types": "~6.19.2" + "undici-types": "~6.19.8" } }, "node_modules/@types/normalize-package-data": { @@ -1055,11 +1077,6 @@ "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==" }, - "node_modules/@types/wrap-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/wrap-ansi/-/wrap-ansi-3.0.0.tgz", - "integrity": "sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==" - }, "node_modules/@types/yargs": { "version": "17.0.33", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", @@ -1410,9 +1427,9 @@ } }, "node_modules/axios-mock-adapter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/axios-mock-adapter/-/axios-mock-adapter-2.0.0.tgz", - "integrity": "sha512-D/K0J5Zm6KvaMTnsWrBQZWLzKN9GxUFZEa0mx2qeEHXDeTugCoplWehy8y36dj5vuSjhe1u/Dol8cZ8lzzmDew==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/axios-mock-adapter/-/axios-mock-adapter-2.1.0.tgz", + "integrity": "sha512-AZUe4OjECGCNNssH8SOdtneiQELsqTsat3SQQCWLPjN436/H+L9AjWfV7bF+Zg/YL9cgbhrz5671hoh+Tbn98w==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.3", @@ -1595,9 +1612,9 @@ "dev": true }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", "dev": true, "funding": [ { @@ -1614,10 +1631,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" }, "bin": { "browserslist": "cli.js" @@ -1698,9 +1715,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001624", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001624.tgz", - "integrity": "sha512-0dWnQG87UevOCPYaOR49CBcLBwoZLpws+k6W37nLjWUhumP1Isusj0p2u+3KhjNloRWK9OKMgjBBzPujQHw4nA==", + "version": "1.0.30001667", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz", + "integrity": "sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==", "dev": true, "funding": [ { @@ -2157,12 +2174,12 @@ "dev": true }, "node_modules/core-js-compat": { - "version": "3.37.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.1.tgz", - "integrity": "sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==", + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", + "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", "dev": true, "dependencies": { - "browserslist": "^4.23.0" + "browserslist": "^4.23.3" }, "funding": { "type": "opencollective", @@ -2405,9 +2422,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.783", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.783.tgz", - "integrity": "sha512-bT0jEz/Xz1fahQpbZ1D7LgmPYZ3iHVY39NcWWro1+hA2IvjiPeaXtfSqrQ+nXjApMvQRE2ASt1itSLRrebHMRQ==", + "version": "1.5.33", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.33.tgz", + "integrity": "sha512-+cYTcFB1QqD4j4LegwLfpCNxifb6dDFUAwk6RsLusCwIaZI6or2f+q8rs5tTB2YC53HhOlIbEaqHMAAC8IOIwA==", "dev": true }, "node_modules/emoji-regex": { @@ -2529,9 +2546,9 @@ } }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "engines": { "node": ">=6" } @@ -2646,12 +2663,12 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.2.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.2.4.tgz", - "integrity": "sha512-020jA+dXaXdb+TML3ZJBvpPmzwbNROjnYuTYi/g6A5QEmEjhptz4oPJDKkOGMIByNxsPpdTLzSU1HYVqebOX1w==", + "version": "50.5.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.5.0.tgz", + "integrity": "sha512-xTkshfZrUbiSHXBwZ/9d5ulZ2OcHXxSvm/NPo494H/hadLRJwOq5PMV0EUpMqsb9V+kQo+9BAgi6Z7aJtdBp2A==", "dev": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.48.0", + "@es-joy/jsdoccomment": "~0.49.0", "are-docs-informative": "^0.0.2", "comment-parser": "1.4.1", "debug": "^4.3.6", @@ -2772,18 +2789,18 @@ } }, "node_modules/eslint-plugin-unicorn": { - "version": "55.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-55.0.0.tgz", - "integrity": "sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA==", + "version": "56.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-56.0.0.tgz", + "integrity": "sha512-aXpddVz/PQMmd69uxO98PA4iidiVNvA0xOtbpUoz1WhBd4RxOQQYqN618v68drY0hmy5uU2jy1bheKEVWBjlPw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.7", "@eslint-community/eslint-utils": "^4.4.0", "ci-info": "^4.0.0", "clean-regexp": "^1.0.0", - "core-js-compat": "^3.37.0", - "esquery": "^1.5.0", - "globals": "^15.7.0", + "core-js-compat": "^3.38.1", + "esquery": "^1.6.0", + "globals": "^15.9.0", "indent-string": "^4.0.0", "is-builtin-module": "^3.2.1", "jsesc": "^3.0.2", @@ -2791,7 +2808,7 @@ "read-pkg-up": "^7.0.1", "regexp-tree": "^0.1.27", "regjsparser": "^0.10.0", - "semver": "^7.6.1", + "semver": "^7.6.3", "strip-indent": "^3.0.0" }, "engines": { @@ -3515,9 +3532,9 @@ } }, "node_modules/globals": { - "version": "15.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.9.0.tgz", - "integrity": "sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==", + "version": "15.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.12.0.tgz", + "integrity": "sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==", "dev": true, "engines": { "node": ">=18" @@ -3798,21 +3815,23 @@ } }, "node_modules/inquirer": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-11.0.2.tgz", - "integrity": "sha512-pnbn3nL+JFrTw/pLhzyE/IQ3+gA3n5JxTAZQDjB6qu4gbjOaiTnpZbxT6HY2DDCT7bzDjTTsd3snRP+B6N//Pg==", - "dependencies": { - "@inquirer/core": "^9.2.1", - "@inquirer/prompts": "^6.0.1", - "@inquirer/type": "^2.0.0", - "@types/mute-stream": "^0.0.4", + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-12.1.0.tgz", + "integrity": "sha512-3/iexk64jn3EF0tjWYfOJi/DNWtcSSwg4ER67cnopO2xlCTUQjFCTMH9NBNQAMO/+dC3sEvKJtGJsqXnCkSsFg==", + "dependencies": { + "@inquirer/core": "^10.1.0", + "@inquirer/prompts": "^7.1.0", + "@inquirer/type": "^3.0.1", "ansi-escapes": "^4.3.2", - "mute-stream": "^1.0.0", + "mute-stream": "^2.0.0", "run-async": "^3.0.0", "rxjs": "^7.8.1" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/inquirer/node_modules/run-async": { @@ -5204,9 +5223,9 @@ } }, "node_modules/mock-fs": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-5.2.0.tgz", - "integrity": "sha512-2dF2R6YMSZbpip1V1WHKGLNjr/k48uQClqMVb5H3MOvwc9qhYis3/IWbj02qIg/Y8MDXKFF4c5v0rxx2o6xTZw==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-5.3.0.tgz", + "integrity": "sha512-IMvz1X+RF7vf+ur7qUenXMR7/FSKSIqS3HqFHXcyNI7G0FbpFO8L5lfsUJhl+bhK1AiulVHWKUSxebWauPA+xQ==", "dev": true, "engines": { "node": ">=12.0.0" @@ -5231,11 +5250,11 @@ } }, "node_modules/mute-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", - "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-2.0.0.tgz", + "integrity": "sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/natural-compare": { @@ -5277,9 +5296,9 @@ "dev": true }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "dev": true }, "node_modules/node-sql-parser": { @@ -5824,9 +5843,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", "dev": true }, "node_modules/picomatch": { @@ -6759,9 +6778,9 @@ } }, "node_modules/simple-git": { - "version": "3.25.0", - "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.25.0.tgz", - "integrity": "sha512-KIY5sBnzc4yEcJXW7Tdv4viEz8KyG+nU0hay+DWZasvdFOYKeUZ6Xc25LUHHjw0tinPT7O1eY6pzX7pRT1K8rw==", + "version": "3.27.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.27.0.tgz", + "integrity": "sha512-ivHoFS9Yi9GY49ogc6/YAi3Fl9ROnF4VyubNylgCkA+RVqLaKWnDSzXOVzya8csELIaWaYNutsEuAhZrtOjozA==", "dependencies": { "@kwsites/file-exists": "^1.1.1", "@kwsites/promise-deferred": "^1.1.1", @@ -7287,9 +7306,9 @@ } }, "node_modules/typescript": { - "version": "5.6.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", - "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -7326,9 +7345,9 @@ } }, "node_modules/undici-types": { - "version": "6.19.6", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.6.tgz", - "integrity": "sha512-e/vggGopEfTKSvj4ihnOLTsqhrKRN3LeO6qSN/GxohhuRv8qH9bNQ4B8W7e/vFL+0XTnmHPB4/kegunZGA4Org==" + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==" }, "node_modules/universalify": { "version": "2.0.0", @@ -7339,9 +7358,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", - "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "dev": true, "funding": [ { @@ -7358,8 +7377,8 @@ } ], "dependencies": { - "escalade": "^3.1.2", - "picocolors": "^1.0.1" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -7602,9 +7621,9 @@ } }, "node_modules/winston": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.14.2.tgz", - "integrity": "sha512-CO8cdpBB2yqzEf8v895L+GNKYJiEq8eKlHU38af3snQBQ+sdAIUepjMSguOIJC7ICbzm0ZI+Af2If4vIJrtmOg==", + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.15.0.tgz", + "integrity": "sha512-RhruH2Cj0bV0WgNL+lOfoUBI4DVfdUNjVnJGVovWZmrcKtrFTTRzgXYK2O9cymSGjrERCtaAeHwMNnUWXlwZow==", "dependencies": { "@colors/colors": "^1.6.0", "@dabh/diagnostics": "^2.0.2", @@ -7789,9 +7808,9 @@ } }, "node_modules/yocto-spinner": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-spinner/-/yocto-spinner-0.1.0.tgz", - "integrity": "sha512-sBra0N4uhNn5UibnOz/HJxB1a0tzZ5zXbqnDe+tfRR3BGy+BmOrzrnQCZRJI7C++JiSZaPygPeNon4QCUmMQ4g==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/yocto-spinner/-/yocto-spinner-0.1.1.tgz", + "integrity": "sha512-vb6yztJdmbX9BwiR2NlKim7roGM5xFFhiTO6UstNiKBnh8NT6uFNjpXYC6DWTnLgRRyHh2nDNEM8kLHSRLw4kg==", "dependencies": { "yoctocolors": "^2.1.1" }, diff --git a/package.json b/package.json index f2fafc675..9e2d59e0f 100644 --- a/package.json +++ b/package.json @@ -75,7 +75,7 @@ "console.table": "0.10.0", "deep-equal": "2.2.3", "fs-extra": "11.2.0", - "inquirer": "11.0.2", + "inquirer": "12.1.0", "json-to-table": "4.2.1", "mustache": "4.2.0", "p-limit": "6.1.0", @@ -83,41 +83,41 @@ "prettier-plugin-sql": "0.18.1", "semver": "7.6.3", "sfmc-sdk": "2.1.2", - "simple-git": "3.25.0", + "simple-git": "3.27.0", "toposort": "2.0.2", "update-notifier": "7.3.1", - "winston": "3.14.2", + "winston": "3.15.0", "yargs": "17.7.2", - "yocto-spinner": "0.1.0" + "yocto-spinner": "0.1.1" }, "devDependencies": { "@eslint/js": "9.10.0", "@types/fs-extra": "11.0.4", "@types/inquirer": "9.0.7", "@types/mocha": "10.0.8", - "@types/node": "22.5.5", + "@types/node": "22.9.0", "@types/yargs": "17.0.33", "assert": "2.1.0", - "axios-mock-adapter": "2.0.0", + "axios-mock-adapter": "2.1.0", "c8": "10.0.0", "chai": "5.1.1", "chai-files": "1.4.0", "eslint": "9.10.0", "eslint-config-prettier": "9.1.0", "eslint-config-ssjs": "2.0.0", - "eslint-plugin-jsdoc": "50.2.4", + "eslint-plugin-jsdoc": "50.5.0", "eslint-plugin-mocha": "10.5.0", "eslint-plugin-prettier": "5.2.1", - "eslint-plugin-unicorn": "55.0.0", + "eslint-plugin-unicorn": "56.0.0", "fast-xml-parser": "4.4.1", - "globals": "15.9.0", + "globals": "15.12.0", "husky": "9.1.6", "lint-staged": "15.2.10", "mocha": "10.7.3", - "mock-fs": "5.2.0", + "mock-fs": "5.3.0", "npm-run-all": "4.1.5", "prettier-eslint": "16.3.0", - "typescript": "5.6.2" + "typescript": "5.6.3" }, "optionalDependencies": { "fsevents": "*" diff --git a/test/general.test.js b/test/general.test.js index 359cdd548..421bd5b28 100644 --- a/test/general.test.js +++ b/test/general.test.js @@ -708,7 +708,7 @@ describe('GENERAL', () => { // download first before we test buildTemplate await handler.retrieve('testInstance/testBU', ['automation', 'query']); - const expectedApiCallsRetrieve = 25; + const expectedApiCallsRetrieve = 30; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, @@ -813,7 +813,7 @@ describe('GENERAL', () => { }); it('buildTemplate + buildDefinition for multiple types with keys and --retrieve', async () => { - const expectedApiCallsRetrieve = 28; + const expectedApiCallsRetrieve = 30; // preparation const argvMetadata = [ @@ -918,7 +918,7 @@ describe('GENERAL', () => { // download first before we test buildTemplate await handler.retrieve('testInstance/testBU'); - const expectedApiCallsRetrieve = 84; + const expectedApiCallsRetrieve = 90; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, @@ -1046,8 +1046,6 @@ describe('GENERAL', () => { }); it('buildTemplate + buildDefinition for multiple types with keys and --dependencies and --retrieve', async () => { - const expectedApiCallsRetrieve = 88; - // preparation const argvMetadata = [ 'automation:testExisting_automation', @@ -1160,6 +1158,7 @@ describe('GENERAL', () => { await testUtils.getActualDeployFile('testTemplated_query', 'query', 'sql') ).to.equal(await testUtils.getExpectedFile('9999999', 'query', 'build', 'sql')); + const expectedApiCallsRetrieve = 94; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, @@ -1171,7 +1170,7 @@ describe('GENERAL', () => { // download first before we test buildTemplate await handler.retrieve('testInstance/testBU', ['automation', 'query']); - const expectedApiCallsRetrieve = 25; + const expectedApiCallsRetrieve = 30; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, @@ -1363,7 +1362,7 @@ describe('GENERAL', () => { // download first before we test buildTemplate await handler.retrieve('testInstance/testBU', ['automation', 'query']); - const expectedApiCallsRetrieve = 25; + const expectedApiCallsRetrieve = 30; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, @@ -1454,7 +1453,7 @@ describe('GENERAL', () => { // download everything before we test buildTemplate await handler.retrieve('testInstance/testBU'); - const expectedApiCallsRetrieve = 84; + const expectedApiCallsRetrieve = 90; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, @@ -1564,8 +1563,6 @@ describe('GENERAL', () => { }); it('build multiple type with keys and --dependencies and --retrieve', async () => { - const expectedApiCallsRetrieve = 88; - // preparation const argvMetadata = [ 'automation:testExisting_automation', @@ -1580,7 +1577,7 @@ describe('GENERAL', () => { ); const buName = 'testInstance/testBU'; - handler.setOptions({ dependencies: true, retrieve: true }); + handler.setOptions({ dependencies: true, retrieve: true, skipInteraction: true }); // *** build: buildTemplate and buildDefinition chained *** const definitionResult = await handler.build( @@ -1660,6 +1657,7 @@ describe('GENERAL', () => { await testUtils.getActualDeployFile('testTemplated_query', 'query', 'sql') ).to.equal(await testUtils.getExpectedFile('9999999', 'query', 'build', 'sql')); + const expectedApiCallsRetrieve = 94; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, @@ -1671,7 +1669,7 @@ describe('GENERAL', () => { // download first before we test buildTemplate await handler.retrieve('testInstance/testBU', ['automation', 'query']); - const expectedApiCallsRetrieve = 25; + const expectedApiCallsRetrieve = 30; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, @@ -1849,7 +1847,7 @@ describe('GENERAL', () => { // download first before we test buildTemplate await handler.retrieve('testInstance/testBU'); - const expectedApiCallsRetrieve = 84; + const expectedApiCallsRetrieve = 90; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, diff --git a/test/mockRoot/.mcdevrc.json b/test/mockRoot/.mcdevrc.json index d8f05b3d5..44a4eb53a 100644 --- a/test/mockRoot/.mcdevrc.json +++ b/test/mockRoot/.mcdevrc.json @@ -9,6 +9,7 @@ } }, "options": { + "formatOnSave": true, "deployment": { "commitHistory": 10, "sourceTargetMapping": { @@ -21,16 +22,27 @@ }, "validation": { "retrieve": { + "noAmpscriptHtmlTag": "warn", "noGuidKeys": "warn", "noRootFolder": "warn" }, "buildDefinition": { + "noAmpscriptHtmlTag": "warn", "noGuidKeys": "warn", "noRootFolder": "warn" }, "deploy": { + "noAmpscriptHtmlTag": "warn", "noGuidKeys": "warn", - "noRootFolder": "warn" + "noRootFolder": "warn", + "overrides": [ + { + "type": ["journey"], + "options": { + "noGuidKeys": "warn" + } + } + ] } }, "documentType": "md", diff --git a/test/resources/1111111/dataExtension/retrieve-expected.md b/test/resources/1111111/dataExtension/retrieve-expected.md index 7e9a1d2fa..5fe654993 100644 --- a/test/resources/1111111/dataExtension/retrieve-expected.md +++ b/test/resources/1111111/dataExtension/retrieve-expected.md @@ -10,6 +10,11 @@ **Testable:** Yes +**Retention Policy:** individialRecords + +- **Retention Period:** 6 Months +- **Reset Retention Period on import:** no + | Name | FieldType | MaxLength | IsPrimaryKey | IsNullable | DefaultValue | | --- | --- | --- | --- | --- | --- | | FirstName | Text | 50 | - | + | | diff --git a/test/resources/9999999/automation/retrieve-wait-expected.json b/test/resources/9999999/automation/retrieve-wait-expected.json new file mode 100644 index 000000000..01375b1b0 --- /dev/null +++ b/test/resources/9999999/automation/retrieve-wait-expected.json @@ -0,0 +1,75 @@ +{ + "name": "testExisting_automation_wait", + "description": "", + "key": "testExisting_automation_wait", + "type": "unspecified", + "status": "Ready", + "schedule": {}, + "steps": [ + { + "name": "", + "activities": [ + { + "name": "1 Years", + "r__type": "wait" + } + ] + }, + { + "name": "", + "activities": [ + { + "name": "1 Months", + "r__type": "wait" + } + ] + }, + { + "name": "", + "activities": [ + { + "name": "1 Weeks", + "r__type": "wait" + } + ] + }, + { + "name": "", + "activities": [ + { + "name": "1 Days", + "r__type": "wait" + } + ] + }, + { + "name": "", + "activities": [ + { + "name": "1 Hours", + "r__type": "wait" + } + ] + }, + { + "name": "", + "activities": [ + { + "name": "1 Minutes", + "r__type": "wait" + } + ] + }, + { + "name": "", + "activities": [ + { + "name": "15:00", + "timeZone": "GMT Standard Time", + "r__type": "wait" + } + ] + } + ], + "r__folder_Path": "my automations" +} diff --git a/test/resources/9999999/automation/retrieve-wait-expected.md b/test/resources/9999999/automation/retrieve-wait-expected.md new file mode 100644 index 000000000..816df020f --- /dev/null +++ b/test/resources/9999999/automation/retrieve-wait-expected.md @@ -0,0 +1,18 @@ +## testExisting_automation_wait + +**Description:** n/a + +**Folder:** my automations/ + +**Started by:** Not defined + +**Status:** Ready + +**Schedule:** Not defined + +**Notifications:** _none_ + + +| Step 1
_-_ | Step 2
_-_ | Step 3
_-_ | Step 4
_-_ | Step 5
_-_ | Step 6
_-_ | Step 7
_-_ | +| --- | --- | --- | --- | --- | --- | --- | +| _1.1: wait_
1 Years | _2.1: wait_
1 Months | _3.1: wait_
1 Weeks | _4.1: wait_
1 Days | _5.1: wait_
1 Hours | _6.1: wait_
1 Minutes | _7.1: wait_
15:00
GMT Standard Time | diff --git a/test/resources/9999999/automation/v1/automations/0fc2ac96-14ba-495a-8db9-3ddd4f8ac444-wait/get-response.json b/test/resources/9999999/automation/v1/automations/0fc2ac96-14ba-495a-8db9-3ddd4f8ac444-wait/get-response.json new file mode 100644 index 000000000..3d1d75e29 --- /dev/null +++ b/test/resources/9999999/automation/v1/automations/0fc2ac96-14ba-495a-8db9-3ddd4f8ac444-wait/get-response.json @@ -0,0 +1,114 @@ +{ + "id": "0fc2ac96-14ba-495a-8db9-3ddd4f8ac444-wait", + "name": "testExisting_automation_wait", + "description": "", + "key": "testExisting_automation_wait", + "typeId": 0, + "type": "unspecified", + "statusId": 2, + "status": "Ready", + "categoryId": 290937, + "schedule": { + "scheduleStatus": "none" + }, + "steps": [ + { + "id": "73acb9f6-3dd2-4a7e-a25b-7c3a03170957", + "name": "", + "step": 1, + "activities": [ + { + "id": "f8c0e577-278c-479f-b381-610569b0b52e", + "name": "1 Years", + "activityObjectId": "1bd41a92-2c57-463c-a1e6-6e1549e481a1", + "objectTypeId": 467, + "displayOrder": 1 + } + ] + }, + { + "id": "83fd8f6d-54bb-4b04-bc0d-dd62e16f452a", + "name": "", + "step": 2, + "activities": [ + { + "id": "d364faa9-06e3-4d38-9fbe-93986b1d541e", + "name": "1 Months", + "activityObjectId": "76f255e3-1603-4d8b-be59-32ac6fe61e15", + "objectTypeId": 467, + "displayOrder": 1 + } + ] + }, + { + "id": "935d4ac1-c65e-4ba6-adb4-a3c8e8dcb241", + "name": "", + "step": 3, + "activities": [ + { + "id": "5aaeb136-9b1b-4d1f-95f2-bdd8d522f018", + "name": "1 Weeks", + "activityObjectId": "85a405e4-e77b-4a2e-8d1b-9ad34244ac10", + "objectTypeId": 467, + "displayOrder": 1 + } + ] + }, + { + "id": "eb5871a6-1399-446c-a067-3a03d1a4367f", + "name": "", + "step": 4, + "activities": [ + { + "id": "002fbe34-10b0-4121-b19a-e9c073cbd700", + "name": "1 Days", + "activityObjectId": "562cf01a-6cca-4fd9-9d3c-f2649379a282", + "objectTypeId": 467, + "displayOrder": 1 + } + ] + }, + { + "id": "26c45a57-8761-4dac-91b4-c1c64d1a6741", + "name": "", + "step": 5, + "activities": [ + { + "id": "283a0acf-d5ed-4535-a2a7-383e2c8c51db", + "name": "1 Hours", + "activityObjectId": "2722bb7c-2ea2-4cf5-8891-96c5a4362a72", + "objectTypeId": 467, + "displayOrder": 1 + } + ] + }, + { + "id": "93065127-adcc-43cb-b040-ef63be2285ec", + "name": "", + "step": 6, + "activities": [ + { + "id": "167b101a-af09-4002-a14f-f537de266ce0", + "name": "1 Minutes", + "activityObjectId": "5d5f816b-b024-45a9-8ce9-726c6dd61bf4", + "objectTypeId": 467, + "displayOrder": 1 + } + ] + }, + { + "id": "0d8d1390-75be-427d-900b-0af5c906a01b", + "name": "", + "step": 7, + "activities": [ + { + "id": "6752906a-ce99-4bfe-b1d5-4db8eb4a24b0", + "name": "03:00 PM", + "activityObjectId": "1c9836b8-0242-4620-9421-21d36a0df751", + "objectTypeId": 467, + "displayOrder": 1 + } + ] + } + ] +} diff --git a/test/resources/9999999/automation/v1/automations/8f82c2a7-0bae-45a9-bdee-e631ab25c0d5/get-response.json b/test/resources/9999999/automation/v1/automations/8f82c2a7-0bae-45a9-bdee-e631ab25c0d5/get-response.json new file mode 100644 index 000000000..2aa165b19 --- /dev/null +++ b/test/resources/9999999/automation/v1/automations/8f82c2a7-0bae-45a9-bdee-e631ab25c0d5/get-response.json @@ -0,0 +1,44 @@ +{ + "id": "8f82c2a7-0bae-45a9-bdee-e631ab25c0d5", + "name": "testExisting_automation_event", + "description": "", + "key": "testExisting_automation_event", + "typeId": 1, + "type": "scheduled", + "statusId": 6, + "status": "Scheduled", + "categoryId": 290937, + "lastRunTime": "2024-11-08T03:15:20.27", + "lastRunInstanceId": "b2bc1d03-04ba-4a01-9e33-0c246f07dd36", + "schedule": { + "id": "064cf4ba-a5d0-420a-8a4f-26055a3550ba", + "typeId": 2, + "startDate": "2024-11-07T12:15:00", + "endDate": "2079-06-06T00:00:00", + "scheduledTime": "2024-11-08T11:15:00", + "rangeTypeId": 1, + "occurrences": 478403, + "pattern": "01", + "icalRecur": "FREQ=HOURLY;UNTIL=20790606T080000;INTERVAL=1", + "timezoneName": "W. Europe Standard Time", + "scheduleStatus": "active", + "timezoneId": 5 + }, + "steps": [ + { + "id": "83755b3f-5012-49b4-8112-0291c879b9d5", + "name": "", + "description": "", + "step": 1, + "activities": [ + { + "id": "39d74fe0-ced2-4e91-b23e-11218adc304c", + "name": "testExisting_event_automation", + "activityObjectId": "161b64a1-1867-4272-8c5c-4d7abe880702", + "objectTypeId": 952, + "displayOrder": 1 + } + ] + } + ] +} diff --git a/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/get-response.json b/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/get-response.json index b3cbc33ee..32a65b117 100644 --- a/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/get-response.json +++ b/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/get-response.json @@ -1,6 +1,6 @@ { "queryDefinitionId": "549f0568-607c-4940-afef-437965094dat_fixKeysSuffix", - "name": "testExisting_query_fixedKeys", + "name": "testExisting_query_fixedKeysSuffix", "key": "testExisting_query_fixKeysSuffix", "description": "bla bla", "queryText": "Select\n SubscriberKey as testField, Trim(last_name) AS name\nfrom\n _Subscribers\nwhere\n country in ('test')\n", diff --git a/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/patch-response.json b/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/patch-response.json index fae619936..909157933 100644 --- a/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/patch-response.json +++ b/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/patch-response.json @@ -1,7 +1,7 @@ { "queryDefinitionId": "549f0568-607c-4940-afef-437965094dat_fixKeys", - "name": "testExisting_query_fixedKeys", - "key": "testExisting_query_fixedKeys_DEV", + "name": "testExisting_query_fixedKeysSuffix", + "key": "testExisting_query_fixedKeysSuff_DEV", "description": "updated on deploy", "queryText": "SELECT\n SubscriberKey as testField\nFROM\n _Subscribers\nWHERE\n country IN ('test')\n", "targetName": "testExisting_dataExtension", diff --git a/test/resources/9999999/automation/v1/queries/get-response.json b/test/resources/9999999/automation/v1/queries/get-response.json index 3da91d772..ddfab04e6 100644 --- a/test/resources/9999999/automation/v1/queries/get-response.json +++ b/test/resources/9999999/automation/v1/queries/get-response.json @@ -56,7 +56,7 @@ }, { "queryDefinitionId": "549f0568-607c-4940-afef-437965094dat_fixKeysSuffix", - "name": "testExisting_query_fixedKeys", + "name": "testExisting_query_fixedKeysSuffix", "key": "testExisting_query_fixKeysSuffix", "description": "bla bla", "queryText": "Select\n SubscriberKey as testField, Trim(last_name) AS name\nfrom\n _Subscribers\nwhere\n country in ('test')\n", diff --git a/test/resources/9999999/dataExtension/retrieve-expected.md b/test/resources/9999999/dataExtension/retrieve-expected.md index 4f2221484..074c23786 100644 --- a/test/resources/9999999/dataExtension/retrieve-expected.md +++ b/test/resources/9999999/dataExtension/retrieve-expected.md @@ -10,6 +10,11 @@ **Testable:** Yes +**Retention Policy:** allRecords + +- **Retention Period:** 6 Months +- **Reset Retention Period on import:** no + | Name | FieldType | MaxLength | IsPrimaryKey | IsNullable | DefaultValue | | --- | --- | --- | --- | --- | --- | | FirstName | Text | 50 | - | + | | diff --git a/test/resources/9999999/event/get-automation-expected.json b/test/resources/9999999/event/get-automation-expected.json new file mode 100644 index 000000000..d2b512ae4 --- /dev/null +++ b/test/resources/9999999/event/get-automation-expected.json @@ -0,0 +1,42 @@ +{ + "type": "AutomationAudience", + "name": "testExisting_event_automation", + "description": "", + "createdDate": "2024-11-07T04:58:46.51", + "createdBy": "Jörn Berkefeld", + "modifiedDate": "2024-11-07T04:58:46.51", + "modifiedBy": "Jörn Berkefeld", + "eventDefinitionKey": "testExisting_event_automation", + "sourceApplicationExtensionId": "97e942ee-6914-4d3d-9e52-37ecb71f79ed", + "filterDefinitionId": "00000000-0000-0000-0000-000000000000", + "filterDefinitionTemplate": "", + "iconUrl": "/images/icon-data-extension.svg", + "arguments": { + "serializedObjectType": 9, + "useHighWatermark": true, + "resetHighWatermark": false, + "criteria": "" + }, + "configurationArguments": {}, + "metaData": { + "criteriaDescription": "", + "scheduleFlowMode": "automation" + }, + "schedule": { + "startDateTime": "2024-11-07T12:15:00", + "endDateTime": "2079-06-06T00:00:00", + "timeZone": "W. Europe Standard Time", + "occurrences": 478403, + "endType": "EndDate", + "frequency": "Hourly", + "recurrencePattern": "Interval", + "interval": 1 + }, + "interactionCount": 1, + "isVisibleInPicker": false, + "category": "Audience", + "publishedInteractionCount": 1, + "disableDEDataLogging": false, + "r__automation_key": "testExisting_automation_event", + "r__dataExtension_key": "testExisting_dataExtension" +} diff --git a/test/resources/9999999/interaction/v1/eventDefinitions/get-response.json b/test/resources/9999999/interaction/v1/eventDefinitions/get-response.json index ca041f85e..a299c3591 100644 --- a/test/resources/9999999/interaction/v1/eventDefinitions/get-response.json +++ b/test/resources/9999999/interaction/v1/eventDefinitions/get-response.json @@ -1,9 +1,61 @@ { - "count": 4, + "count": 5, "page": 1, "pageSize": 50, "links": {}, "items": [ + { + "id": "161b64a1-1867-4272-8c5c-4d7abe880702", + "type": "AutomationAudience", + "name": "testExisting_event_automation", + "description": "", + "createdDate": "2024-11-07T04:58:46.51", + "createdBy": 700301950, + "modifiedDate": "2024-11-07T04:58:46.51", + "modifiedBy": 700301950, + "mode": "Production", + "eventDefinitionKey": "testExisting_event_automation", + "dataExtensionId": "21711373-72c1-ec11-b83b-48df37d1deb7", + "dataExtensionName": "testExisting_automation_event", + "sourceApplicationExtensionId": "97e942ee-6914-4d3d-9e52-37ecb71f79ed", + "filterDefinitionId": "00000000-0000-0000-0000-000000000000", + "filterDefinitionTemplate": "", + "iconUrl": "/images/icon-data-extension.svg", + "arguments": { + "serializedObjectType": 9, + "useHighWatermark": true, + "resetHighWatermark": false, + "automationId": "8f82c2a7-0bae-45a9-bdee-e631ab25c0d5", + "eventDefinitionId": "161b64a1-1867-4272-8c5c-4d7abe880702", + "eventDefinitionKey": "testExisting_event_automation", + "dataExtensionId": "21711373-72c1-ec11-b83b-48df37d1deb7", + "criteria": "" + }, + "configurationArguments": { + "unconfigured": false + }, + "metaData": { + "criteriaDescription": "", + "scheduleFlowMode": "automation" + }, + "schedule": { + "startDateTime": "2024-11-07T12:15:00", + "endDateTime": "2079-06-06T00:00:00", + "timeZone": "W. Europe Standard Time", + "occurrences": 478403, + "endType": "EndDate", + "frequency": "Hourly", + "recurrencePattern": "Interval", + "interval": 1 + }, + "interactionCount": 1, + "isVisibleInPicker": false, + "isPlatformObject": false, + "category": "Audience", + "publishedInteractionCount": 1, + "automationId": "8f82c2a7-0bae-45a9-bdee-e631ab25c0d5", + "disableDEDataLogging": false + }, { "id": "33b4dbc5-4b58-4a54-ab57-24388f1eefe4", "type": "APIEvent", @@ -79,7 +131,7 @@ "isPlatformObject": false, "category": "Audience", "publishedInteractionCount": 0, - "automationId": "0fc8f605-bca8-4f24-8b46-b43e06bf271c", + "automationId": "00000000-0000-0000-0000-000000000000", "disableDEDataLogging": false }, { @@ -118,7 +170,7 @@ "isPlatformObject": false, "category": "Audience", "publishedInteractionCount": 0, - "automationId": "a3c606a8-19d7-4866-8804-5f43dc4502ea", + "automationId": "00000000-0000-0000-0000-000000000000", "disableDEDataLogging": false }, { diff --git a/test/resources/9999999/interaction/v1/eventDefinitions/key_testExisting_event_automation/get-response.json b/test/resources/9999999/interaction/v1/eventDefinitions/key_testExisting_event_automation/get-response.json new file mode 100644 index 000000000..f323cf24f --- /dev/null +++ b/test/resources/9999999/interaction/v1/eventDefinitions/key_testExisting_event_automation/get-response.json @@ -0,0 +1,52 @@ +{ + "id": "161b64a1-1867-4272-8c5c-4d7abe880702", + "type": "AutomationAudience", + "name": "testExisting_event_automation", + "description": "", + "createdDate": "2024-11-07T04:58:46.51", + "createdBy": 700301950, + "modifiedDate": "2024-11-07T04:58:46.51", + "modifiedBy": 700301950, + "mode": "Production", + "eventDefinitionKey": "testExisting_event_automation", + "dataExtensionId": "21711373-72c1-ec11-b83b-48df37d1deb7", + "dataExtensionName": "testExisting_dataExtension", + "sourceApplicationExtensionId": "97e942ee-6914-4d3d-9e52-37ecb71f79ed", + "filterDefinitionId": "00000000-0000-0000-0000-000000000000", + "filterDefinitionTemplate": "", + "iconUrl": "/images/icon-data-extension.svg", + "arguments": { + "serializedObjectType": 9, + "useHighWatermark": true, + "resetHighWatermark": false, + "automationId": "8f82c2a7-0bae-45a9-bdee-e631ab25c0d5", + "eventDefinitionId": "161b64a1-1867-4272-8c5c-4d7abe880702", + "eventDefinitionKey": "testExisting_event_automation", + "dataExtensionId": "21711373-72c1-ec11-b83b-48df37d1deb7", + "criteria": "" + }, + "configurationArguments": { + "unconfigured": false + }, + "metaData": { + "criteriaDescription": "", + "scheduleFlowMode": "automation" + }, + "schedule": { + "startDateTime": "2024-11-07T12:15:00", + "endDateTime": "2079-06-06T00:00:00", + "timeZone": "W. Europe Standard Time", + "occurrences": 478403, + "endType": "EndDate", + "frequency": "Hourly", + "recurrencePattern": "Interval", + "interval": 1 + }, + "interactionCount": 1, + "isVisibleInPicker": false, + "isPlatformObject": false, + "category": "Audience", + "publishedInteractionCount": 1, + "automationId": "8f82c2a7-0bae-45a9-bdee-e631ab25c0d5", + "disableDEDataLogging": false +} diff --git a/test/resources/9999999/interaction/v1/interactions/validateAsync/0175b971-71a3-4d8e-98ac-48121f3fbf4f/post-response.json b/test/resources/9999999/interaction/v1/interactions/validateAsync/0175b971-71a3-4d8e-98ac-48121f3fbf4f/post-response.json new file mode 100644 index 000000000..2eacf991e --- /dev/null +++ b/test/resources/9999999/interaction/v1/interactions/validateAsync/0175b971-71a3-4d8e-98ac-48121f3fbf4f/post-response.json @@ -0,0 +1,4 @@ +{ + "statusUrl": "/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c", + "statusId": "45f06c0a-3ed2-48b2-a6a8-b5119253f01c" +} diff --git a/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-failed.json b/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-failed.json new file mode 100644 index 000000000..c157b4968 --- /dev/null +++ b/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-failed.json @@ -0,0 +1,34 @@ +{ + "status": "Error", + "errors": [ + { + "errorDetail": "The default email or mobile address in Journey Settings is invalid. Select a different one.", + "errorCode": "121226", + "errorType": "Error", + "additionalInfo": {} + }, + { + "errorDetail": "Email Activity: CCE OpsIssue Satisfaction Email -- The email specified for the job did not pass validation. EmailID: 72604 An unverified from email address was detected. ", + "errorCode": "121008", + "errorType": "Error", + "additionalInfo": { + "activityKey": "EMAILV2-1", + "activityId": "620dbe27-665a-49a3-ad61-ceea5aab720f", + "activityType": "EMAILV2", + "definitionId": "2d5f37b8-7acf-4ac4-b76a-74690255600c" + } + } + ], + "warnings": [ + { + "errorDetail": "Last modified date for email activity is more then 6 months ago. Please review the content or use path optimizer to test it.", + "errorCode": "121546", + "errorType": "Warning", + "additionalInfo": { + "activityKey": "EMAILV2-1", + "activityId": "620dbe27-665a-49a3-ad61-ceea5aab720f", + "activityType": "EMAILV2" + } + } + ] +} diff --git a/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-success.json b/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-success.json new file mode 100644 index 000000000..ca2c94aa3 --- /dev/null +++ b/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-success.json @@ -0,0 +1,5 @@ +{ + "status": "ValidateCompleted", + "errors": [], + "warnings": [] +} diff --git a/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-successWarnings.json b/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-successWarnings.json new file mode 100644 index 000000000..4b135ee6f --- /dev/null +++ b/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-successWarnings.json @@ -0,0 +1,36 @@ +{ + "status": "ValidateCompleted", + "errors": [], + "warnings": [ + { + "errorDetail": "The journey has a long wait (1 days), please consider reducing wait to under 4 minutes.", + "errorCode": "121547", + "errorType": "Warning", + "additionalInfo": { + "activityKey": "WAITBYDURATION-5", + "activityId": "2d0b5dbf-14cc-4635-acee-64071c8e1022", + "activityType": "WAIT" + } + }, + { + "errorDetail": "The journey has a long wait (1 days), please consider reducing wait to under 4 minutes.", + "errorCode": "121547", + "errorType": "Warning", + "additionalInfo": { + "activityKey": "WAITBYDURATION-4", + "activityId": "26298616-e89b-4166-8e7e-8417031f276b", + "activityType": "WAIT" + } + }, + { + "errorDetail": "Last modified date for email activity is more then 6 months ago. Please review the content or use path optimizer to test it.", + "errorCode": "121546", + "errorType": "Warning", + "additionalInfo": { + "activityKey": "EMAILV2-1", + "activityId": "966651f8-e1b6-4261-849c-e95589001c75", + "activityType": "EMAILV2" + } + } + ] +} diff --git a/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response.json b/test/resources/9999999/interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response.json new file mode 100644 index 000000000..e69de29bb diff --git a/test/resources/9999999/journey/validate-callout-expected.json b/test/resources/9999999/journey/validate-callout-expected.json new file mode 100644 index 000000000..0967ef424 --- /dev/null +++ b/test/resources/9999999/journey/validate-callout-expected.json @@ -0,0 +1 @@ +{} diff --git a/test/resources/9999999/legacy/v1/beta/automations/notifications/bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToyNTow/get-response.json b/test/resources/9999999/legacy/v1/beta/automations/notifications/bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToyNTow/get-response.json new file mode 100644 index 000000000..f6f94e407 --- /dev/null +++ b/test/resources/9999999/legacy/v1/beta/automations/notifications/bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToyNTow/get-response.json @@ -0,0 +1,3 @@ +{ + "programId": "MGZjMmFjOTYtMTRiYS00OTVhLThkYjktM2RkZDRmOGFjNDQ0OjI1OjA" +} diff --git a/test/resources/9999999/legacy/v1/beta/automations/notifications/cDhLQ2o2NExxVVc5N3VZeHF5WEExUToyNTow/get-response.json b/test/resources/9999999/legacy/v1/beta/automations/notifications/cDhLQ2o2NExxVVc5N3VZeHF5WEExUToyNTow/get-response.json new file mode 100644 index 000000000..5d5ae6f3d --- /dev/null +++ b/test/resources/9999999/legacy/v1/beta/automations/notifications/cDhLQ2o2NExxVVc5N3VZeHF5WEExUToyNTow/get-response.json @@ -0,0 +1,3 @@ +{ + "programId": "MzIxMjAzMmYtM2Y0OC00ZTdlLWIyODktMzE5YWQyODA2NTc1OjI1OjA" +} diff --git a/test/resources/9999999/legacy/v1/beta/bulk/automations/automation/definition/bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToyNTow/get-response.json b/test/resources/9999999/legacy/v1/beta/bulk/automations/automation/definition/bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToyNTow/get-response.json new file mode 100644 index 000000000..4a931ba1e --- /dev/null +++ b/test/resources/9999999/legacy/v1/beta/bulk/automations/automation/definition/bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToyNTow/get-response.json @@ -0,0 +1,210 @@ +{ + "id": "bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToyNTow", + "key": "testExisting_automation_wait", + "createdDate": "2024-11-04T17:30:12.973Z", + "updateInProgress": false, + "name": "testExisting_automation_wait", + "description": "", + "createdBy": { + "id": "NzEwNDIwNDE4OjQ6MA", + "name": "Jörn Berkefeld", + "email": "joern.berkefeld@accenture.com" + }, + "modifiedDate": "2024-11-04T17:42:13.203Z", + "status": "Ready", + "memberId": 510004860, + "processes": [ + { + "id": "OXJtc2M5STlma3FpVzN3NkF4Y0pWdzoyNzow", + "name": "", + "description": "", + "sequence": 0, + "workers": [ + { + "id": "ZC1YQS1Jd25uMGV6Z1dFRmFiQzFMZzoyOTow", + "key": "07801bb9-0fd1-4ed0-9349-625c5a03b957", + "sequence": 0, + "name": "1 Years", + "description": "", + "activityObjectId": "1bd41a92-2c57-463c-a1e6-6e1549e481a1", + "objectTypeId": 467, + "serializedObject": "{\"duration\":1,\"durationUnits\":\"Years\"}", + "selectedObject": [ + { + "categoryId": -1 + } + ], + "guidId": "f8c0e577-278c-479f-b381-610569b0b52e" + } + ], + "guidId": "73acb9f6-3dd2-4a7e-a25b-7c3a03170957" + }, + { + "id": "YllfOWc3dFVCRXU4RGQxaTRXOUZLZzoyNzow", + "name": "", + "description": "", + "sequence": 1, + "workers": [ + { + "id": "cWZwazAtTUdPRTJmdnBPWWF4MVVIZzoyOTow", + "key": "41fed5be-317a-425a-a81d-94485042ad26", + "sequence": 0, + "name": "1 Months", + "description": "", + "activityObjectId": "76f255e3-1603-4d8b-be59-32ac6fe61e15", + "objectTypeId": 467, + "serializedObject": "{\"duration\":1,\"durationUnits\":\"Months\"}", + "selectedObject": [ + { + "categoryId": -1 + } + ], + "guidId": "d364faa9-06e3-4d38-9fbe-93986b1d541e" + } + ], + "guidId": "83fd8f6d-54bb-4b04-bc0d-dd62e16f452a" + }, + { + "id": "d1VwZGsxN0dwa3V0dEtQSTZOeXlRUToyNzow", + "name": "", + "description": "", + "sequence": 2, + "workers": [ + { + "id": "TnJHdVdodWJIMDJWOHIzWTFTTHdHQToyOTow", + "key": "984a2011-87d9-4219-b609-ee3f13be7520", + "sequence": 0, + "name": "1 Weeks", + "description": "", + "activityObjectId": "85a405e4-e77b-4a2e-8d1b-9ad34244ac10", + "objectTypeId": 467, + "serializedObject": "{\"duration\":1,\"durationUnits\":\"Weeks\"}", + "selectedObject": [ + { + "categoryId": -1 + } + ], + "guidId": "5aaeb136-9b1b-4d1f-95f2-bdd8d522f018" + } + ], + "guidId": "935d4ac1-c65e-4ba6-adb4-a3c8e8dcb241" + }, + { + "id": "cG5GWTY1a1RiRVNnWnpvRDBhUTJmdzoyNzow", + "name": "", + "description": "", + "sequence": 3, + "workers": [ + { + "id": "Tkw0dkFMQVFJVUd4bXVuQWM4dlhBQToyOTow", + "key": "29cc7a78-7a98-49bb-821d-f68f3695f386", + "sequence": 0, + "name": "1 Days", + "description": "", + "activityObjectId": "562cf01a-6cca-4fd9-9d3c-f2649379a282", + "objectTypeId": 467, + "serializedObject": "{\"duration\":1,\"durationUnits\":\"Days\"}", + "selectedObject": [ + { + "categoryId": -1 + } + ], + "guidId": "002fbe34-10b0-4121-b19a-e9c073cbd700" + } + ], + "guidId": "eb5871a6-1399-446c-a067-3a03d1a4367f" + }, + { + "id": "VjFyRUptR0hyRTJSdE1IR1RScG5RUToyNzow", + "name": "", + "description": "", + "sequence": 4, + "workers": [ + { + "id": "endvNktPM1ZOVVdpcHpnLUxJeFIydzoyOTow", + "key": "d83889a8-7d08-4234-979f-e8356ca6a9d2", + "sequence": 0, + "name": "1 Hours", + "description": "", + "activityObjectId": "2722bb7c-2ea2-4cf5-8891-96c5a4362a72", + "objectTypeId": 467, + "serializedObject": "{\"duration\":1,\"durationUnits\":\"Hours\"}", + "selectedObject": [ + { + "categoryId": -1 + } + ], + "guidId": "283a0acf-d5ed-4535-a2a7-383e2c8c51db" + } + ], + "guidId": "26c45a57-8761-4dac-91b4-c1c64d1a6741" + }, + { + "id": "SjFFR2s4eXR5ME93UU85anZpS0Y3QToyNzow", + "name": "", + "description": "", + "sequence": 5, + "workers": [ + { + "id": "R2hCN0ZnbXZBa0NoVF9VMzNpWnM0QToyOTow", + "key": "8c51a35a-65dc-4675-93e5-c30037fc6a77", + "sequence": 0, + "name": "1 Minutes", + "description": "", + "activityObjectId": "5d5f816b-b024-45a9-8ce9-726c6dd61bf4", + "objectTypeId": 467, + "serializedObject": "{\"duration\":1,\"durationUnits\":\"Minutes\"}", + "selectedObject": [ + { + "categoryId": -1 + } + ], + "guidId": "167b101a-af09-4002-a14f-f537de266ce0" + } + ], + "guidId": "93065127-adcc-43cb-b040-ef63be2285ec" + }, + { + "id": "a0JPTkRiNTFmVUtRQ3dyMXlRYWdHdzoyNzow", + "name": "", + "description": "", + "sequence": 6, + "workers": [ + { + "id": "YXBCU1o1bk9fa3V4MVUyNDYwb2tzQToyOTow", + "key": "933b7da5-ef25-4e5a-b92c-ff061d05ba7f", + "sequence": 0, + "name": "03:00 PM", + "description": "", + "activityObjectId": "1c9836b8-0242-4620-9421-21d36a0df751", + "objectTypeId": 467, + "serializedObject": "{\"specifiedTime\":\"15:00\",\"timeZone\":\"GMT Standard Time\"}", + "selectedObject": [ + { + "categoryId": -1 + } + ], + "guidId": "6752906a-ce99-4bfe-b1d5-4db8eb4a24b0" + } + ], + "guidId": "0d8d1390-75be-427d-900b-0af5c906a01b" + } + ], + "isPlatformObject": false, + "notifications": "https://mcmgrzvb1j6v-5bsmkdsl4pgbk64.rest.marketingcloudapis.com/legacy/v1/beta/hub/notifications/bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToxMjow", + "automationType": "unspecified", + "categoryId": 4700, + "folderPath": "my automations", + "lastSaveDate": "2024-11-04T17:42:13.143Z", + "lastSavedBy": { + "id": "NzEwNDIwNDE4OjQ6MA", + "name": "Jörn Berkefeld", + "email": "joern.berkefeld@accenture.com" + }, + "selectedCategoryId": [ + { + "categoryId": 4700 + } + ], + "guidId": "0fc2ac96-14ba-495a-8db9-3ddd4f8ac444-wait" +} diff --git a/test/resources/9999999/legacy/v1/beta/bulk/automations/automation/definition/get-response.json b/test/resources/9999999/legacy/v1/beta/bulk/automations/automation/definition/get-response.json index 124f8fb90..431b55b0f 100644 --- a/test/resources/9999999/legacy/v1/beta/bulk/automations/automation/definition/get-response.json +++ b/test/resources/9999999/legacy/v1/beta/bulk/automations/automation/definition/get-response.json @@ -1,8 +1,75 @@ { "startIndex": 0, "itemsPerPage": 50, - "totalResults": 1, + "totalResults": 3, "entry": [ + { + "id": "cDhLQ2o2NExxVVc5N3VZeHF5WEExUToyNTow", + "key": "testExisting_automation_event", + "createdDate": "2024-11-07T10:20:18.877Z", + "name": "testExisting_automation_event", + "description": "", + "clientId": 9999999, + "status": "Scheduled", + "createdBy": { + "id": "NzEwNDIwNDE4OjQ6MA", + "name": "Jörn Berkefeld", + "email": "joern.berkefeld@accenture.com" + }, + "modifiedDate": "2024-11-07T22:17:24.457Z", + "modifiedBy": { + "id": "LTEwMDA6NDow", + "name": "System" + }, + "processes": [ + { + "id": "Q3FPcDlGeGc1VTJHcE9mZmlmNW9oUToyNzow", + "createdDate": "2024-11-07T10:26:58.62Z", + "name": "", + "description": "", + "sequence": 0, + "status": "Complete", + "workerCounts": [ + { + "name": "QueryDefinition", + "objectTypeId": 300, + "count": 1, + "status": "Complete" + } + ], + "instanceId": "aDJvYXJPR2Z5MHVNNHdBVVA0cG5xUToyODow" + }, + { + "id": "UDF0MWd4SlF0RW1CRWdLUnlIbTUxUToyNzow", + "createdDate": "2024-11-07T10:59:15.813Z", + "name": "", + "description": "", + "sequence": 2, + "status": "Complete", + "workerCounts": [ + { + "name": "JourneyBuilderAudience", + "objectTypeId": 952, + "count": 1, + "status": "Complete" + } + ], + "instanceId": "VjBzTVVjZHJja0M3TS12ZlRPMmZ6QToyODow" + } + ], + "schedule": "https://mcxxxxx.rest.marketingcloudapis.com/legacy/v1/beta/automations/schedule/dXZSTUJ0Q2xDa0tLVHlZRldqVlF1ZzozNjow", + "scheduledTime": "2024-11-07T23:15:00Z", + "startTime": "2024-11-07T22:15:19.057Z", + "completedTime": "2024-11-07T22:17:24.453Z", + "lastRunTime": "2024-11-07T22:15:19.057Z", + "lastRunInstance": "https://mcxxxxx.rest.marketingcloudapis.com/legacy/v1/beta/bulk/automations/automation/instance/VEhxcm1sTk5DMEdhZnQ1S0ZsMURIZzoyNjow", + "instanceId": "VEhxcm1sTk5DMEdhZnQ1S0ZsMURIZzoyNjow", + "automationInstance": "https://mcxxxxx.rest.marketingcloudapis.com/legacy/v1/beta/bulk/automations/automation/instance/VEhxcm1sTk5DMEdhZnQ1S0ZsMURIZzoyNjow", + "isPlatformObject": false, + "notifications": "https://mcxxxxx.rest.marketingcloudapis.com/legacy/v1/beta/hub/notifications/cDhLQ2o2NExxVVc5N3VZeHF5WEExUToxMjow", + "automationType": "scheduled", + "lastRunStatus": "Complete" + }, { "id": "RkpOcE9qSVh2VUdnYTVJbWFfWW14dzoyNTow", "key": "testExisting_automation", @@ -25,6 +92,136 @@ "isPlatformObject": false, "notifications": "https://mcxxxxx.rest.marketingcloudapis.com/legacy/v1/beta/hub/notifications/RkpOcE9qSVh2VUdnYTVJbWFfWW14dzoxMjow", "automationType": "scheduled" + }, + { + "id": "bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToyNTow", + "key": "testExisting_automation_wait", + "createdDate": "2024-11-04T17:30:12.973Z", + "name": "testExisting_automation_wait", + "description": "", + "clientId": 9999999, + "status": "Ready", + "createdBy": { + "id": "NzEwNDIwNDE4OjQ6MA", + "name": "Jörn Berkefeld", + "email": "joern.berkefeld@accenture.com" + }, + "modifiedDate": "2024-11-04T17:42:13.203Z", + "modifiedBy": { + "id": "NzEwNDIwNDE4OjQ6MA", + "name": "Jörn Berkefeld", + "email": "joern.berkefeld@accenture.com" + }, + "processes": [ + { + "id": "OXJtc2M5STlma3FpVzN3NkF4Y0pWdzoyNzow", + "createdDate": "2024-11-04T17:42:13.167Z", + "name": "", + "description": "", + "sequence": 0, + "status": "Initialized", + "workerCounts": [ + { + "name": "ProgramWait", + "objectTypeId": 467, + "count": 1 + } + ] + }, + { + "id": "YllfOWc3dFVCRXU4RGQxaTRXOUZLZzoyNzow", + "createdDate": "2024-11-04T17:42:13.17Z", + "name": "", + "description": "", + "sequence": 1, + "status": "Initialized", + "workerCounts": [ + { + "name": "ProgramWait", + "objectTypeId": 467, + "count": 1 + } + ] + }, + { + "id": "d1VwZGsxN0dwa3V0dEtQSTZOeXlRUToyNzow", + "createdDate": "2024-11-04T17:42:13.177Z", + "name": "", + "description": "", + "sequence": 2, + "status": "Initialized", + "workerCounts": [ + { + "name": "ProgramWait", + "objectTypeId": 467, + "count": 1 + } + ] + }, + { + "id": "cG5GWTY1a1RiRVNnWnpvRDBhUTJmdzoyNzow", + "createdDate": "2024-11-04T17:42:13.18Z", + "name": "", + "description": "", + "sequence": 3, + "status": "Initialized", + "workerCounts": [ + { + "name": "ProgramWait", + "objectTypeId": 467, + "count": 1 + } + ] + }, + { + "id": "VjFyRUptR0hyRTJSdE1IR1RScG5RUToyNzow", + "createdDate": "2024-11-04T17:42:13.183Z", + "name": "", + "description": "", + "sequence": 4, + "status": "Initialized", + "workerCounts": [ + { + "name": "ProgramWait", + "objectTypeId": 467, + "count": 1 + } + ] + }, + { + "id": "SjFFR2s4eXR5ME93UU85anZpS0Y3QToyNzow", + "createdDate": "2024-11-04T17:42:13.187Z", + "name": "", + "description": "", + "sequence": 5, + "status": "Initialized", + "workerCounts": [ + { + "name": "ProgramWait", + "objectTypeId": 467, + "count": 1 + } + ] + }, + { + "id": "a0JPTkRiNTFmVUtRQ3dyMXlRYWdHdzoyNzow", + "createdDate": "2024-11-04T17:42:13.19Z", + "name": "", + "description": "", + "sequence": 6, + "status": "Initialized", + "workerCounts": [ + { + "name": "ProgramWait", + "objectTypeId": 467, + "count": 1 + } + ] + } + ], + "isPlatformObject": false, + "notifications": "https://mcxxxxx.rest.marketingcloudapis.com/legacy/v1/beta/hub/notifications/bHF6Q0Q3b1VXa21OdVQzZFQ0ckVSQToxMjow", + "automationType": "unspecified" } ] } diff --git a/test/resources/9999999/program/retrieve-response.xml b/test/resources/9999999/program/retrieve-response.xml index 6490d5491..039b6316d 100644 --- a/test/resources/9999999/program/retrieve-response.xml +++ b/test/resources/9999999/program/retrieve-response.xml @@ -45,6 +45,18 @@ testExisting_automation_fixedKey_paused testExisting_automation_fixKey_pause + + + 0fc2ac96-14ba-495a-8db9-3ddd4f8ac444-wait + testExisting_automation_wait + testExisting_automation_wait + + + + 8f82c2a7-0bae-45a9-bdee-e631ab25c0d5 + testExisting_automation_event + testExisting_automation_event + diff --git a/test/resources/9999999/query/patch_fixKeysSuffix-expected.json b/test/resources/9999999/query/patch_fixKeysSuffix-expected.json index e64f16d95..fed822d43 100644 --- a/test/resources/9999999/query/patch_fixKeysSuffix-expected.json +++ b/test/resources/9999999/query/patch_fixKeysSuffix-expected.json @@ -1,6 +1,6 @@ { - "name": "testExisting_query_fixedKeys", - "key": "testExisting_query_fixedKeys_DEV", + "name": "testExisting_query_fixedKeysSuffix", + "key": "testExisting_query_fixedKeysSuff_DEV", "description": "updated on deploy", "r__dataExtension_key": "testExisting_dataExtension", "createdDate": "2022-04-26T15:21:16.453", diff --git a/test/type.automation.test.js b/test/type.automation.test.js index 4d24d2782..c8f348a81 100644 --- a/test/type.automation.test.js +++ b/test/type.automation.test.js @@ -27,8 +27,8 @@ describe('type: automation', () => { const result = cache.getCache(); assert.equal( result.automation ? Object.keys(result.automation).length : 0, - 4, - 'only four automations expected' + 6, + 'unexpected number of automations' ); assert.deepEqual( await testUtils.getActualJson('testExisting_automation', 'automation'), @@ -45,9 +45,20 @@ describe('type: automation', () => { 'md' ) ); + assert.deepEqual( + await testUtils.getActualJson('testExisting_automation_wait', 'automation'), + await testUtils.getExpectedJson('9999999', 'automation', 'retrieve-wait'), + + 'returned metadata was not equal expected' + ); + expect( + await testUtils.getActualDoc('testExisting_automation_wait', 'automation') + ).to.equal( + await testUtils.getExpectedFile('9999999', 'automation', 'retrieve-wait', 'md') + ); assert.equal( testUtils.getAPIHistoryLength(), - 22, + 27, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -82,8 +93,8 @@ describe('type: automation', () => { const cacheResult = cache.getCache(); assert.equal( cacheResult.automation ? Object.keys(cacheResult.automation).length : 0, - 5, - 'three automations expected' + 7, + 'unexpected number of automations in cache' ); // get what was sent to the server API const createCallout = testUtils.getRestCallout('post', '/automation/v1/automations/%'); @@ -133,7 +144,7 @@ describe('type: automation', () => { assert.equal( testUtils.getAPIHistoryLength(), - 32, + 34, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -158,8 +169,8 @@ describe('type: automation', () => { const cached = cache.getCache(); assert.equal( cached.automation ? Object.keys(cached.automation).length : 0, - 5, - 'five cached automation expected' + 7, + 'unexpected number of automations in cache' ); assert.equal( @@ -201,7 +212,7 @@ describe('type: automation', () => { assert.equal( testUtils.getAPIHistoryLength(), - 40, + 42, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -226,8 +237,8 @@ describe('type: automation', () => { const cached = cache.getCache(); assert.equal( cached.automation ? Object.keys(cached.automation).length : 0, - 5, - 'five cached automation expected' + 7, + 'unexpected number of automations in cache' ); assert.equal( deployed['testInstance/testBU'].automation @@ -268,7 +279,7 @@ describe('type: automation', () => { assert.equal( testUtils.getAPIHistoryLength(), - 36, + 38, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -307,7 +318,7 @@ describe('type: automation', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 22, + 24, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -351,7 +362,7 @@ describe('type: automation', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 48, + 52, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -395,7 +406,7 @@ describe('type: automation', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 50, + 54, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -439,7 +450,7 @@ describe('type: automation', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 51, + 55, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -483,7 +494,7 @@ describe('type: automation', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 43, + 47, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -527,7 +538,7 @@ describe('type: automation', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 49, + 53, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -571,7 +582,7 @@ describe('type: automation', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 51, + 55, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -615,7 +626,7 @@ describe('type: automation', () => { ); assert.equal( testUtils.getAPIHistoryLength(), - 24, + 26, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -659,7 +670,7 @@ describe('type: automation', () => { ); assert.equal( testUtils.getAPIHistoryLength(), - 22, + 27, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -668,7 +679,7 @@ describe('type: automation', () => { it('Should create a automation template via buildTemplate with --dependencies', async () => { // download first before we test buildTemplate await handler.retrieve('testInstance/testBU'); - const expectedApiCallsRetrieve = 84; + const expectedApiCallsRetrieve = 90; assert.equal( testUtils.getAPIHistoryLength(), expectedApiCallsRetrieve, diff --git a/test/type.event.test.js b/test/type.event.test.js index a2859587e..537861e8b 100644 --- a/test/type.event.test.js +++ b/test/type.event.test.js @@ -27,17 +27,22 @@ describe('type: event', () => { const result = cache.getCache(); assert.equal( result.event ? Object.keys(result.event).length : 0, - 4, - 'only 4 event expected' + 5, + 'unexpected amount of events' ); assert.deepEqual( await testUtils.getActualJson('testExisting_event', 'event'), await testUtils.getExpectedJson('9999999', 'event', 'get'), 'returned JSON was not equal expected' ); + assert.deepEqual( + await testUtils.getActualJson('testExisting_event_automation', 'event'), + await testUtils.getExpectedJson('9999999', 'event', 'get-automation'), + 'returned JSON was not equal expected' + ); assert.equal( testUtils.getAPIHistoryLength(), - 7, + 10, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -71,8 +76,8 @@ describe('type: event', () => { const result = cache.getCache(); assert.equal( result.event ? Object.keys(result.event).length : 0, - 5, - '5 events expected' + 6, + 'unexpected number of events' ); // get callouts const createCallout = testUtils.getRestCallout( @@ -116,7 +121,7 @@ describe('type: event', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 17, + 20, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -140,8 +145,8 @@ describe('type: event', () => { const result = cache.getCache(); assert.equal( result.event ? Object.keys(result.event).length : 0, - 5, - '5 events expected' + 6, + 'unexpected number of events' ); // get callouts const createCallout = testUtils.getRestCallout( @@ -162,7 +167,7 @@ describe('type: event', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 8, + 11, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -176,8 +181,8 @@ describe('type: event', () => { const result = cache.getCache(); assert.equal( result.event ? Object.keys(result.event).length : 0, - 4, - '4 events expected' + 5, + 'unexpected number of events' ); // get callouts const updateCallout = testUtils.getRestCallout( @@ -198,7 +203,7 @@ describe('type: event', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 8, + 11, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -271,7 +276,7 @@ describe('type: event', () => { assert.equal( testUtils.getAPIHistoryLength(), - 7, + 10, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -317,7 +322,7 @@ describe('type: event', () => { assert.equal( testUtils.getAPIHistoryLength(), - 7, + 10, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; diff --git a/test/type.journey.test.js b/test/type.journey.test.js index cabad4c20..cb469749f 100644 --- a/test/type.journey.test.js +++ b/test/type.journey.test.js @@ -823,4 +823,107 @@ describe('type: journey', () => { return; }); }); + + describe('Validate ================', () => { + it('Should not validate a transactional journey by key', async () => { + handler.setOptions({ skipStatusCheck: true }); + // WHEN + await handler.validate( + 'testInstance/testBU', + ['journey'], + ['testExisting_temail_notPublished'] + ); + // THEN + assert.equal(process.exitCode, 1, 'validate should not have thrown an error'); + + assert.equal( + testUtils.getAPIHistoryLength(), + 1, + 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' + ); + return; + }); + + it('Should validate a journey by id but w/o version (auto-picks latest version)', async () => { + await testUtils.copyFile( + 'interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-success.json', + 'interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response.json' + ); + // WHEN + const validate = await handler.validate( + 'testInstance/testBU', + ['journey'], + ['id:0175b971-71a3-4d8e-98ac-48121f3fbf4f'] + ); + // THEN + assert.equal(process.exitCode, 0, 'validate should not have thrown an error'); + // retrieve result + assert.deepEqual( + validate['testInstance/testBU']?.journey, + ['testExisting_journey_Multistep'], + 'should have validateed the right journey' + ); + + // get callouts + const validateCallout = testUtils.getRestCallout( + 'post', + '/interaction/v1/interactions/validateAsync/%' + ); + // confirm created item + assert.deepEqual( + validateCallout, + await testUtils.getExpectedJson('9999999', 'journey', 'validate-callout'), + 'validate-payload JSON was not equal expected' + ); + + assert.equal( + testUtils.getAPIHistoryLength(), + 3, + 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' + ); + return; + }); + + it('Should validate a journey by id w/ version with failing status check', async () => { + await testUtils.copyFile( + 'interaction/v1/interactions/publishStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response-failed.json', + 'interaction/v1/interactions/validateStatus/45f06c0a-3ed2-48b2-a6a8-b5119253f01c/get-response.json' + ); + + handler.setOptions({ _runningTest: true }); + // WHEN + const validate = await handler.validate( + 'testInstance/testBU', + ['journey'], + ['id:0175b971-71a3-4d8e-98ac-48121f3fbf4f/1'] + ); + // THEN + assert.equal(process.exitCode, 1, 'validate should have thrown an error'); + // retrieve result + assert.equal( + validate['testInstance/testBU']?.journey.length, + 0, + 'should have not validated the journey' + ); + + // get callouts + const validateCallout = testUtils.getRestCallout( + 'post', + '/interaction/v1/interactions/validateAsync/%' + ); + // confirm created item + assert.deepEqual( + validateCallout, + await testUtils.getExpectedJson('9999999', 'journey', 'validate-callout'), + 'validate-payload JSON was not equal expected' + ); + + assert.equal( + testUtils.getAPIHistoryLength(), + 3, + 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' + ); + return; + }); + }); }); diff --git a/test/type.query.test.js b/test/type.query.test.js index 107492bf4..c2953c9c1 100644 --- a/test/type.query.test.js +++ b/test/type.query.test.js @@ -373,22 +373,26 @@ describe('type: query', () => { assert.equal( upsertCallout?.key, - 'testExisting_query_fixedKeys_DEV', + 'testExisting_query_fixedKeysSuff_DEV', 'key in create callout was not as expected' ); assert.equal( Object.keys(deployed['testInstance/testBU'].query)[0], - 'testExisting_query_fixedKeys_DEV', + 'testExisting_query_fixedKeysSuff_DEV', 'returned keys do not correspond to expected fixed keys' ); // confirm updated item assert.deepEqual( - await testUtils.getActualJson('testExisting_query_fixedKeys_DEV', 'query'), + await testUtils.getActualJson('testExisting_query_fixedKeysSuff_DEV', 'query'), await testUtils.getExpectedJson('9999999', 'query', 'patch_fixKeysSuffix'), 'returned metadata was not equal expected for update query' ); expect( - await testUtils.getActualFile('testExisting_query_fixedKeys_DEV', 'query', 'sql') + await testUtils.getActualFile( + 'testExisting_query_fixedKeysSuff_DEV', + 'query', + 'sql' + ) ).to.equal( await testUtils.getExpectedFile('9999999', 'query', 'patch_fixKeysSuffix', 'sql') ); @@ -532,7 +536,7 @@ describe('type: query', () => { const upsertCallout = testUtils.getRestCallout('patch', '/automation/v1/queries/%'); assert.equal( upsertCallout?.key, - 'testExisting_query_fixedKeys_DEV', + 'testExisting_query_fixedKeysSuff_DEV', 'key in create callout was not as expected' ); @@ -543,17 +547,21 @@ describe('type: query', () => { ); assert.equal( resultFixKeys['testInstance/testBU']['query'][0], - 'testExisting_query_fixedKeys_DEV', + 'testExisting_query_fixedKeysSuff_DEV', 'returned keys do not correspond to expected fixed keys' ); // confirm updated item assert.deepEqual( - await testUtils.getActualJson('testExisting_query_fixedKeys_DEV', 'query'), + await testUtils.getActualJson('testExisting_query_fixedKeysSuff_DEV', 'query'), await testUtils.getExpectedJson('9999999', 'query', 'patch_fixKeysSuffix'), 'returned metadata was not equal expected for update query' ); expect( - await testUtils.getActualFile('testExisting_query_fixedKeys_DEV', 'query', 'sql') + await testUtils.getActualFile( + 'testExisting_query_fixedKeysSuff_DEV', + 'query', + 'sql' + ) ).to.equal( await testUtils.getExpectedFile('9999999', 'query', 'patch_fixKeysSuffix', 'sql') ); @@ -640,7 +648,7 @@ describe('type: query', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 36, + 41, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -682,7 +690,7 @@ describe('type: query', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 38, + 43, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; diff --git a/test/type.verification.test.js b/test/type.verification.test.js index d0d235a18..c7ac925dc 100644 --- a/test/type.verification.test.js +++ b/test/type.verification.test.js @@ -47,7 +47,7 @@ describe('type: verification', () => { ); assert.equal( testUtils.getAPIHistoryLength(), - 12, + 14, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -97,7 +97,7 @@ describe('type: verification', () => { // check number of API calls assert.equal( testUtils.getAPIHistoryLength(), - 14, + 16, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; @@ -147,7 +147,7 @@ describe('type: verification', () => { ); assert.equal( testUtils.getAPIHistoryLength(), - 12, + 14, 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests' ); return; diff --git a/test/utils.js b/test/utils.js index 67c365089..2793bf703 100644 --- a/test/utils.js +++ b/test/utils.js @@ -5,6 +5,8 @@ import { axiosInstance } from '../node_modules/sfmc-sdk/lib/util.js'; import handler from '../lib/index.js'; import auth from '../lib/util/auth.js'; import { Util } from '../lib/util/util.js'; +import ReplaceContentBlockReference from '../lib/util/replaceContentBlockReference.js'; + import { fileURLToPath } from 'node:url'; const __dirname = path.dirname(fileURLToPath(import.meta.url)); @@ -286,6 +288,8 @@ export function mockReset() { delete Util.OPTIONS[key]; } } + // avoid spillover from other tests + ReplaceContentBlockReference.resetCacheMap(); // reset sfmc login auth.clearSessions(); fsmock.restore(); diff --git a/types/mcdev.d.js b/types/mcdev.d.js index c1418e28e..5f1f7ddbd 100644 --- a/types/mcdev.d.js +++ b/types/mcdev.d.js @@ -219,6 +219,7 @@ * @typedef {object} AutomationActivity * @property {string} r__key key of associated activity * @property {string} [name] name (not key) of associated activity + * @property {string} [timeZone] used by wait activity if a specific time of day was set * @property {number} [objectTypeId] Id of assoicated activity type; see this.definition.activityTypeMapping * @property {string} [activityObjectId] Object Id of assoicated metadata item * @property {number} [displayOrder] order within step; starts with 1 or higher number