mcdev 6.0.2 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.beautyamp.json +13 -0
- package/.eslintrc.json +7 -1
- package/.github/ISSUE_TEMPLATE/bug.yml +1 -0
- package/.github/PULL_REQUEST_TEMPLATE/pr_template_release.md +10 -3
- package/.github/workflows/close_issues_on_merge.yml +1 -1
- package/.github/workflows/code-test.yml +51 -3
- package/.github/workflows/coverage-base-update.yml +1 -1
- package/.github/workflows/coverage-develop-branch.yml +1 -1
- package/.github/workflows/coverage-main-branch.yml +1 -1
- package/.github/workflows/coverage.yml +2 -2
- package/.github/workflows/npm-publish.yml +3 -2
- package/.github/workflows/pr-labeler.yml +1 -1
- package/.husky/commit-msg +0 -2
- package/.husky/post-checkout +0 -3
- package/.husky/post-merge +2 -7
- package/.husky/pre-commit +5 -5
- package/.prettierrc +0 -8
- package/.vscode/extensions.json +2 -0
- package/.vscode/settings.json +15 -3
- package/@types/lib/Builder.d.ts +97 -0
- package/@types/lib/Builder.d.ts.map +1 -0
- package/@types/lib/Deployer.d.ts +99 -0
- package/@types/lib/Deployer.d.ts.map +1 -0
- package/@types/lib/MetadataTypeDefinitions.d.ts +80 -0
- package/@types/lib/MetadataTypeDefinitions.d.ts.map +1 -0
- package/@types/lib/MetadataTypeInfo.d.ts +78 -0
- package/@types/lib/MetadataTypeInfo.d.ts.map +1 -0
- package/@types/lib/Retriever.d.ts +66 -0
- package/@types/lib/Retriever.d.ts.map +1 -0
- package/@types/lib/cli.d.ts +3 -0
- package/@types/lib/cli.d.ts.map +1 -0
- package/@types/lib/index.d.ts +383 -0
- package/@types/lib/index.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Asset.d.ts +1082 -0
- package/@types/lib/metadataTypes/Asset.d.ts.map +1 -0
- package/@types/lib/metadataTypes/AttributeGroup.d.ts +290 -0
- package/@types/lib/metadataTypes/AttributeGroup.d.ts.map +1 -0
- package/@types/lib/metadataTypes/AttributeSet.d.ts +968 -0
- package/@types/lib/metadataTypes/AttributeSet.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Automation.d.ts +921 -0
- package/@types/lib/metadataTypes/Automation.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Campaign.d.ts +190 -0
- package/@types/lib/metadataTypes/Campaign.d.ts.map +1 -0
- package/@types/lib/metadataTypes/ContentArea.d.ts +250 -0
- package/@types/lib/metadataTypes/ContentArea.d.ts.map +1 -0
- package/@types/lib/metadataTypes/DataExtension.d.ts +571 -0
- package/@types/lib/metadataTypes/DataExtension.d.ts.map +1 -0
- package/@types/lib/metadataTypes/DataExtensionField.d.ts +236 -0
- package/@types/lib/metadataTypes/DataExtensionField.d.ts.map +1 -0
- package/@types/lib/metadataTypes/DataExtensionTemplate.d.ts +175 -0
- package/@types/lib/metadataTypes/DataExtensionTemplate.d.ts.map +1 -0
- package/@types/lib/metadataTypes/DataExtract.d.ts +217 -0
- package/@types/lib/metadataTypes/DataExtract.d.ts.map +1 -0
- package/@types/lib/metadataTypes/DataExtractType.d.ts +80 -0
- package/@types/lib/metadataTypes/DataExtractType.d.ts.map +1 -0
- package/@types/lib/metadataTypes/DeliveryProfile.d.ts +102 -0
- package/@types/lib/metadataTypes/DeliveryProfile.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Discovery.d.ts +189 -0
- package/@types/lib/metadataTypes/Discovery.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Email.d.ts +384 -0
- package/@types/lib/metadataTypes/Email.d.ts.map +1 -0
- package/@types/lib/metadataTypes/EmailSend.d.ts +652 -0
- package/@types/lib/metadataTypes/EmailSend.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Event.d.ts +958 -0
- package/@types/lib/metadataTypes/Event.d.ts.map +1 -0
- package/@types/lib/metadataTypes/FileLocation.d.ts +101 -0
- package/@types/lib/metadataTypes/FileLocation.d.ts.map +1 -0
- package/@types/lib/metadataTypes/FileTransfer.d.ts +228 -0
- package/@types/lib/metadataTypes/FileTransfer.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Filter.d.ts +145 -0
- package/@types/lib/metadataTypes/Filter.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Folder.d.ts +287 -0
- package/@types/lib/metadataTypes/Folder.d.ts.map +1 -0
- package/@types/lib/metadataTypes/ImportFile.d.ts +409 -0
- package/@types/lib/metadataTypes/ImportFile.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Journey.d.ts +541 -0
- package/@types/lib/metadataTypes/Journey.d.ts.map +1 -0
- package/@types/lib/metadataTypes/List.d.ts +191 -0
- package/@types/lib/metadataTypes/List.d.ts.map +1 -0
- package/@types/lib/metadataTypes/MetadataType.d.ts +680 -0
- package/@types/lib/metadataTypes/MetadataType.d.ts.map +1 -0
- package/@types/lib/metadataTypes/MobileCode.d.ts +225 -0
- package/@types/lib/metadataTypes/MobileCode.d.ts.map +1 -0
- package/@types/lib/metadataTypes/MobileKeyword.d.ts +432 -0
- package/@types/lib/metadataTypes/MobileKeyword.d.ts.map +1 -0
- package/@types/lib/metadataTypes/MobileMessage.d.ts +931 -0
- package/@types/lib/metadataTypes/MobileMessage.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Query.d.ts +299 -0
- package/@types/lib/metadataTypes/Query.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Role.d.ts +164 -0
- package/@types/lib/metadataTypes/Role.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Script.d.ts +305 -0
- package/@types/lib/metadataTypes/Script.d.ts.map +1 -0
- package/@types/lib/metadataTypes/SendClassification.d.ts +221 -0
- package/@types/lib/metadataTypes/SendClassification.d.ts.map +1 -0
- package/@types/lib/metadataTypes/SenderProfile.d.ts +257 -0
- package/@types/lib/metadataTypes/SenderProfile.d.ts.map +1 -0
- package/@types/lib/metadataTypes/TransactionalEmail.d.ts +230 -0
- package/@types/lib/metadataTypes/TransactionalEmail.d.ts.map +1 -0
- package/@types/lib/metadataTypes/TransactionalMessage.d.ts +163 -0
- package/@types/lib/metadataTypes/TransactionalMessage.d.ts.map +1 -0
- package/@types/lib/metadataTypes/TransactionalPush.d.ts +175 -0
- package/@types/lib/metadataTypes/TransactionalPush.d.ts.map +1 -0
- package/@types/lib/metadataTypes/TransactionalSMS.d.ts +205 -0
- package/@types/lib/metadataTypes/TransactionalSMS.d.ts.map +1 -0
- package/@types/lib/metadataTypes/TriggeredSend.d.ts +671 -0
- package/@types/lib/metadataTypes/TriggeredSend.d.ts.map +1 -0
- package/@types/lib/metadataTypes/User.d.ts +677 -0
- package/@types/lib/metadataTypes/User.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Verification.d.ts +188 -0
- package/@types/lib/metadataTypes/Verification.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Asset.definition.d.ts +692 -0
- package/@types/lib/metadataTypes/definitions/Asset.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/AttributeGroup.definition.d.ts +246 -0
- package/@types/lib/metadataTypes/definitions/AttributeGroup.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts +893 -0
- package/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Automation.definition.d.ts +616 -0
- package/@types/lib/metadataTypes/definitions/Automation.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Campaign.definition.d.ts +126 -0
- package/@types/lib/metadataTypes/definitions/Campaign.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/ContentArea.definition.d.ts +182 -0
- package/@types/lib/metadataTypes/definitions/ContentArea.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtension.definition.d.ts +237 -0
- package/@types/lib/metadataTypes/definitions/DataExtension.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts +121 -0
- package/@types/lib/metadataTypes/definitions/DataExtensionField.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtensionTemplate.definition.d.ts +133 -0
- package/@types/lib/metadataTypes/definitions/DataExtensionTemplate.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtract.definition.d.ts +156 -0
- package/@types/lib/metadataTypes/definitions/DataExtract.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/DataExtractType.definition.d.ts +34 -0
- package/@types/lib/metadataTypes/definitions/DataExtractType.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/DeliveryProfile.definition.d.ts +80 -0
- package/@types/lib/metadataTypes/definitions/DeliveryProfile.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Discovery.definition.d.ts +146 -0
- package/@types/lib/metadataTypes/definitions/Discovery.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Email.definition.d.ts +314 -0
- package/@types/lib/metadataTypes/definitions/Email.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts +582 -0
- package/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Event.definition.d.ts +867 -0
- package/@types/lib/metadataTypes/definitions/Event.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/FileLocation.definition.d.ts +68 -0
- package/@types/lib/metadataTypes/definitions/FileLocation.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/FileTransfer.definition.d.ts +191 -0
- package/@types/lib/metadataTypes/definitions/FileTransfer.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Filter.definition.d.ts +147 -0
- package/@types/lib/metadataTypes/definitions/Filter.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Folder.definition.d.ts +174 -0
- package/@types/lib/metadataTypes/definitions/Folder.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts +306 -0
- package/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Journey.definition.d.ts +426 -0
- package/@types/lib/metadataTypes/definitions/Journey.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/List.definition.d.ts +118 -0
- package/@types/lib/metadataTypes/definitions/List.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/MobileCode.definition.d.ts +167 -0
- package/@types/lib/metadataTypes/definitions/MobileCode.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/MobileKeyword.definition.d.ts +276 -0
- package/@types/lib/metadataTypes/definitions/MobileKeyword.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/MobileMessage.definition.d.ts +783 -0
- package/@types/lib/metadataTypes/definitions/MobileMessage.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Query.definition.d.ts +203 -0
- package/@types/lib/metadataTypes/definitions/Query.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Role.definition.d.ts +108 -0
- package/@types/lib/metadataTypes/definitions/Role.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Script.definition.d.ts +153 -0
- package/@types/lib/metadataTypes/definitions/Script.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/SendClassification.definition.d.ts +151 -0
- package/@types/lib/metadataTypes/definitions/SendClassification.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/SenderProfile.definition.d.ts +180 -0
- package/@types/lib/metadataTypes/definitions/SenderProfile.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/TransactionalEmail.definition.d.ts +167 -0
- package/@types/lib/metadataTypes/definitions/TransactionalEmail.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/TransactionalMessage.definition.d.ts +99 -0
- package/@types/lib/metadataTypes/definitions/TransactionalMessage.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/TransactionalPush.definition.d.ts +119 -0
- package/@types/lib/metadataTypes/definitions/TransactionalPush.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/TransactionalSMS.definition.d.ts +113 -0
- package/@types/lib/metadataTypes/definitions/TransactionalSMS.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts +560 -0
- package/@types/lib/metadataTypes/definitions/TriggeredSend.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/User.definition.d.ts +423 -0
- package/@types/lib/metadataTypes/definitions/User.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Verification.definition.d.ts +129 -0
- package/@types/lib/metadataTypes/definitions/Verification.definition.d.ts.map +1 -0
- package/@types/lib/retrieveChangelog.d.ts +3 -0
- package/@types/lib/retrieveChangelog.d.ts.map +1 -0
- package/@types/lib/util/auth.d.ts +41 -0
- package/@types/lib/util/auth.d.ts.map +1 -0
- package/@types/lib/util/businessUnit.d.ts +21 -0
- package/@types/lib/util/businessUnit.d.ts.map +1 -0
- package/@types/lib/util/cache.d.ts +64 -0
- package/@types/lib/util/cache.d.ts.map +1 -0
- package/@types/lib/util/cli.d.ts +125 -0
- package/@types/lib/util/cli.d.ts.map +1 -0
- package/@types/lib/util/config.d.ts +45 -0
- package/@types/lib/util/config.d.ts.map +1 -0
- package/@types/lib/util/devops.d.ts +62 -0
- package/@types/lib/util/devops.d.ts.map +1 -0
- package/@types/lib/util/file.d.ts +20 -0
- package/@types/lib/util/file.d.ts.map +1 -0
- package/@types/lib/util/init.config.d.ts +66 -0
- package/@types/lib/util/init.config.d.ts.map +1 -0
- package/@types/lib/util/init.d.ts +72 -0
- package/@types/lib/util/init.d.ts.map +1 -0
- package/@types/lib/util/init.git.d.ts +40 -0
- package/@types/lib/util/init.git.d.ts.map +1 -0
- package/@types/lib/util/init.npm.d.ts +24 -0
- package/@types/lib/util/init.npm.d.ts.map +1 -0
- package/@types/lib/util/replaceContentBlockReference.d.ts +105 -0
- package/@types/lib/util/replaceContentBlockReference.d.ts.map +1 -0
- package/@types/lib/util/util.d.ts +322 -0
- package/@types/lib/util/util.d.ts.map +1 -0
- package/@types/types/mcdev.d.d.ts +1282 -0
- package/@types/types/mcdev.d.d.ts.map +1 -0
- package/LICENSE +1 -1
- package/README.md +7 -3
- package/boilerplate/files/.beautyamp.json +13 -0
- package/boilerplate/files/.prettierrc +3 -0
- package/boilerplate/files/.vscode/extensions.json +6 -1
- package/boilerplate/files/.vscode/settings.json +16 -4
- package/boilerplate/forcedUpdates.json +9 -0
- package/jsconfig.json +7 -2
- package/lib/Builder.js +49 -45
- package/lib/Deployer.js +100 -45
- package/lib/MetadataTypeDefinitions.js +6 -0
- package/lib/MetadataTypeInfo.js +4 -0
- package/lib/Retriever.js +33 -27
- package/lib/cli.js +363 -28
- package/lib/index.js +615 -55
- package/lib/metadataTypes/Asset.js +811 -159
- package/lib/metadataTypes/AttributeGroup.js +17 -12
- package/lib/metadataTypes/AttributeSet.js +20 -15
- package/lib/metadataTypes/Automation.js +125 -93
- package/lib/metadataTypes/Campaign.js +18 -6
- package/lib/metadataTypes/ContentArea.js +21 -18
- package/lib/metadataTypes/DataExtension.js +229 -113
- package/lib/metadataTypes/DataExtensionField.js +52 -53
- package/lib/metadataTypes/DataExtensionTemplate.js +17 -5
- package/lib/metadataTypes/DataExtract.js +62 -27
- package/lib/metadataTypes/DataExtractType.js +17 -5
- package/lib/metadataTypes/DeliveryProfile.js +47 -0
- package/lib/metadataTypes/Discovery.js +15 -4
- package/lib/metadataTypes/Email.js +22 -19
- package/lib/metadataTypes/EmailSend.js +135 -35
- package/lib/metadataTypes/Event.js +95 -60
- package/lib/metadataTypes/FileLocation.js +17 -5
- package/lib/metadataTypes/FileTransfer.js +62 -26
- package/lib/metadataTypes/Filter.js +16 -4
- package/lib/metadataTypes/Folder.js +67 -39
- package/lib/metadataTypes/ImportFile.js +341 -91
- package/lib/metadataTypes/Journey.js +681 -324
- package/lib/metadataTypes/List.js +26 -14
- package/lib/metadataTypes/MetadataType.js +501 -265
- package/lib/metadataTypes/MobileCode.js +17 -5
- package/lib/metadataTypes/MobileKeyword.js +59 -43
- package/lib/metadataTypes/MobileMessage.js +67 -40
- package/lib/metadataTypes/Query.js +46 -38
- package/lib/metadataTypes/Role.js +34 -23
- package/lib/metadataTypes/Script.js +127 -39
- package/lib/metadataTypes/SendClassification.js +120 -5
- package/lib/metadataTypes/SenderProfile.js +179 -0
- package/lib/metadataTypes/TransactionalEmail.js +30 -17
- package/lib/metadataTypes/TransactionalMessage.js +25 -11
- package/lib/metadataTypes/TransactionalPush.js +24 -9
- package/lib/metadataTypes/TransactionalSMS.js +78 -46
- package/lib/metadataTypes/TriggeredSend.js +191 -43
- package/lib/metadataTypes/User.js +90 -62
- package/lib/metadataTypes/Verification.js +39 -21
- package/lib/metadataTypes/definitions/Asset.definition.js +3 -3
- package/lib/metadataTypes/definitions/AttributeGroup.definition.js +7 -1
- package/lib/metadataTypes/definitions/AttributeSet.definition.js +2 -2
- package/lib/metadataTypes/definitions/Automation.definition.js +4 -1
- package/lib/metadataTypes/definitions/Campaign.definition.js +1 -1
- package/lib/metadataTypes/definitions/ContentArea.definition.js +1 -1
- package/lib/metadataTypes/definitions/DataExtension.definition.js +17 -1
- package/lib/metadataTypes/definitions/DataExtensionTemplate.definition.js +1 -1
- package/lib/metadataTypes/definitions/DataExtractType.definition.js +2 -2
- package/lib/metadataTypes/definitions/DeliveryProfile.definition.js +59 -0
- package/lib/metadataTypes/definitions/Discovery.definition.js +1 -1
- package/lib/metadataTypes/definitions/Email.definition.js +1 -1
- package/lib/metadataTypes/definitions/EmailSend.definition.js +19 -4
- package/lib/metadataTypes/definitions/Event.definition.js +140 -128
- package/lib/metadataTypes/definitions/FileLocation.definition.js +1 -1
- package/lib/metadataTypes/definitions/Filter.definition.js +1 -1
- package/lib/metadataTypes/definitions/Folder.definition.js +25 -2
- package/lib/metadataTypes/definitions/ImportFile.definition.js +52 -7
- package/lib/metadataTypes/definitions/Journey.definition.js +12 -0
- package/lib/metadataTypes/definitions/List.definition.js +1 -1
- package/lib/metadataTypes/definitions/MobileCode.definition.js +1 -1
- package/lib/metadataTypes/definitions/MobileMessage.definition.js +11 -5
- package/lib/metadataTypes/definitions/Query.definition.js +6 -0
- package/lib/metadataTypes/definitions/Script.definition.js +14 -14
- package/lib/metadataTypes/definitions/SendClassification.definition.js +60 -20
- package/lib/metadataTypes/definitions/SenderProfile.definition.js +185 -0
- package/lib/metadataTypes/definitions/TransactionalEmail.definition.js +2 -2
- package/lib/metadataTypes/definitions/TransactionalMessage.definition.js +69 -0
- package/lib/metadataTypes/definitions/TransactionalPush.definition.js +6 -0
- package/lib/metadataTypes/definitions/TransactionalSMS.definition.js +6 -0
- package/lib/metadataTypes/definitions/TriggeredSend.definition.js +15 -4
- package/lib/metadataTypes/definitions/Verification.definition.js +1 -1
- package/lib/retrieveChangelog.js +7 -2
- package/lib/util/auth.js +56 -21
- package/lib/util/businessUnit.js +20 -2
- package/lib/util/cache.js +37 -18
- package/lib/util/cli.js +72 -29
- package/lib/util/config.js +27 -9
- package/lib/util/devops.js +45 -24
- package/lib/util/file.js +58 -33
- package/lib/util/init.config.js +55 -24
- package/lib/util/init.git.js +6 -6
- package/lib/util/init.js +36 -14
- package/lib/util/init.npm.js +2 -2
- package/lib/util/replaceContentBlockReference.js +278 -0
- package/lib/util/util.js +152 -54
- package/package.json +33 -30
- package/test/general.test.js +1327 -4
- package/test/mockRoot/.mcdevrc.json +26 -4
- package/test/mockRoot/deploy/testInstance/_ParentBU_/dataExtension/testExisting_dataExtensionShared.dataExtension-meta.json +3 -4
- package/test/mockRoot/deploy/testInstance/_ParentBU_/dataExtension/testNew_dataExtensionShared.dataExtension-meta.json +1 -4
- package/test/mockRoot/deploy/testInstance/_ParentBU_/query/testNew_query.query-meta.json +11 -0
- package/test/mockRoot/deploy/testInstance/_ParentBU_/query/testNew_query.query-meta.sql +4 -0
- package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset.asset-block-meta.html +12 -0
- package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset.asset-block-meta.json +39 -0
- package/test/mockRoot/deploy/testInstance/testBU/automation/testExisting_automation.automation-meta.json +6 -6
- package/test/mockRoot/deploy/testInstance/testBU/automation/testNew_automation.automation-meta.json +7 -7
- package/test/mockRoot/deploy/testInstance/testBU/dataExtension/testExisting_dataExtension.dataExtension-meta.json +3 -4
- package/test/mockRoot/deploy/testInstance/testBU/dataExtension/testNew_dataExtension.dataExtension-meta.json +1 -4
- package/test/mockRoot/deploy/testInstance/testBU/emailSend/testExisting_emailSend.emailSend-meta.json +36 -0
- package/test/mockRoot/deploy/testInstance/testBU/emailSend/testNew_emailSend.emailSend-meta.json +36 -0
- package/test/mockRoot/deploy/testInstance/testBU/importFile/testExisting_importFile.importFile-meta.json +10 -4
- package/test/mockRoot/deploy/testInstance/testBU/importFile/testNew_importFile.importFile-meta.json +8 -4
- package/test/mockRoot/deploy/testInstance/testBU/journey/testExisting_journey_Quicksend.journey-meta.json +232 -0
- package/test/mockRoot/deploy/testInstance/testBU/mobileMessage/NTIzOjc4OjA.mobileMessage-meta.json +2 -4
- package/test/mockRoot/deploy/testInstance/testBU/mobileMessage/new.mobileMessage-meta.json +2 -4
- package/test/mockRoot/deploy/testInstance/testBU/query/testExisting_query.query-meta.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/query/testExisting_query_fixKeys.query-meta.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/query/testNew_query.query-meta.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/sendClassification/testExisting_sendClassification.sendClassification-meta.json +8 -0
- package/test/mockRoot/deploy/testInstance/testBU/sendClassification/testNew_sendClassification.sendClassification-meta.json +8 -0
- package/test/mockRoot/deploy/testInstance/testBU/senderProfile/testExisting_senderProfile.senderProfile-meta.json +14 -0
- package/test/mockRoot/deploy/testInstance/testBU/senderProfile/testNew_senderProfile.senderProfile-meta.json +14 -0
- package/test/mockRoot/deploy/testInstance/testBU/transactionalEmail/testExisting_temail.transactionalEmail-meta.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/transactionalEmail/testNew_temail.transactionalEmail-meta.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/transactionalPush/testExisting_tpush.transactionalPush-meta.json +1 -3
- package/test/mockRoot/deploy/testInstance/testBU/transactionalPush/testNew_tpush.transactionalPush-meta.json +1 -3
- package/test/mockRoot/deploy/testInstance/testBU/transactionalSMS/testExisting_tsms.transactionalSMS-meta.json +1 -2
- package/test/mockRoot/deploy/testInstance/testBU/transactionalSMS/testNew_tsms.transactionalSMS-meta.json +1 -2
- package/test/mockRoot/deploy/testInstance/testBU/triggeredSend/testExisting_triggeredSend.triggeredSend-meta.json +4 -5
- package/test/mockRoot/deploy/testInstance/testBU/triggeredSend/testNew_triggeredSend.triggeredSend-meta.json +4 -5
- package/test/mockRoot/deploy/testInstance/testBU/verification/testExisting_39f6a488-20eb-4ba0-b0b9.verification-meta.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/verification/testNew_39f6a488-20eb-4ba0-b0b9.verification-meta.json +1 -1
- package/test/resourceFactory.js +118 -7
- package/test/resources/1111111/automation/v1/queries/get-response.json +6 -0
- package/test/resources/1111111/automation/v1/queries/post-response.json +18 -0
- package/test/resources/1111111/dataExtension/create-expected.json +4 -7
- package/test/resources/1111111/dataExtension/retrieve-expected.json +2 -4
- package/test/resources/1111111/dataExtension/update-expected.json +7 -7
- package/test/resources/1111111/dataExtension/update-response.xml +3 -1
- package/test/resources/1111111/dataFolder/retrieve-ContentType=queryactivity-response.xml +48 -0
- package/test/resources/1111111/query/patch_keySuffix-expected.json +11 -0
- package/test/resources/1111111/query/patch_keySuffix-expected.sql +4 -0
- package/test/resources/9999999/asset/block-1157-retrieve-expected.html +4 -3
- package/test/resources/9999999/asset/build-templatebasedemail-expected.json +81 -0
- package/test/resources/9999999/asset/build-templatebasedemail-html-expected.html +20 -0
- package/test/resources/9999999/asset/build-templatebasedemail-preheader-expected.amp +1 -0
- package/test/resources/9999999/asset/create-expected.json +18 -0
- package/test/resources/9999999/asset/resolveId-1234-notFound-expected.json +1 -0
- package/test/resources/9999999/asset/resolveId-1295064-noPath-expected.json +8 -0
- package/test/resources/9999999/asset/resolveId-1295064-withPath-expected.json +8 -0
- package/test/resources/9999999/asset/retrieve-templatebasedemail-expected.json +84 -0
- package/test/resources/9999999/asset/retrieve-templatebasedemail-html-expected.html +20 -0
- package/test/resources/9999999/asset/retrieve-templatebasedemail-preheader-expected.amp +1 -0
- package/test/resources/9999999/asset/template-templatebasedemail-expected.json +81 -0
- package/test/resources/9999999/asset/template-templatebasedemail-html-expected.html +20 -0
- package/test/resources/9999999/asset/template-templatebasedemail-preheader-expected.amp +1 -0
- package/test/resources/9999999/asset/testExisting_asset_message-html-rcb-id-expected.html +33 -0
- package/test/resources/9999999/asset/testExisting_asset_message-html-rcb-key-expected.html +33 -0
- package/test/resources/9999999/asset/testExisting_asset_message-html-rcb-name-expected.html +35 -0
- package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-id-expected.amp +4 -0
- package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-key-expected.amp +4 -0
- package/test/resources/9999999/asset/testExisting_asset_message-preheader-rcb-name-expected.amp +4 -0
- package/test/resources/9999999/asset/testExisting_asset_message-text-rcb-id-expected.amp +4 -0
- package/test/resources/9999999/asset/testExisting_asset_message-text-rcb-key-expected.amp +4 -0
- package/test/resources/9999999/asset/testExisting_asset_message-text-rcb-name-expected.amp +4 -0
- package/test/resources/9999999/asset/v1/content/assets/1295064/get-response.json +1 -1
- package/test/resources/9999999/asset/v1/content/assets/5286/get-response.json +48 -0
- package/test/resources/9999999/asset/v1/content/assets/5289/get-response.json +198 -0
- package/test/resources/9999999/asset/v1/content/assets/808714/get-response.json +4 -3
- package/test/resources/9999999/asset/v1/content/assets/950143/delete-response.txt +1 -0
- package/test/resources/9999999/asset/v1/content/assets/get-response-customerKey=testExisting_asset.json +105 -0
- package/test/resources/9999999/asset/v1/content/assets/post-response.json +59 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,14.json +7 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN193,194,15.json +7 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN195,196,197,198,199,200,201,202,203,210,211,212,213,3.json +46 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN205,206,230,232,1.json +32 -0
- package/test/resources/9999999/asset/v1/content/assets/query/{post-response.json → post-response-assetType.idIN207,208,209,5.json} +45 -47
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN214,4.json +35 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-assetType.idIN215,216,217,218,219,220,221,222,223,224,225,226,227,228.json +7 -0
- package/test/resources/9999999/asset/v1/content/assets/query/post-response-customerKey=mcdev-issue-1157.json +46 -0
- package/test/resources/9999999/attributeGroup/retrieve-expected.json +1 -1
- package/test/resources/9999999/attributeSet/retrieve-expected.json +3 -3
- package/test/resources/9999999/automation/build-expected.json +7 -7
- package/test/resources/9999999/automation/create-expected.json +7 -7
- package/test/resources/9999999/automation/patch_fixKeys-pause-expected.json +6 -6
- package/test/resources/9999999/automation/patch_fixKeys-schedule-expected.json +6 -6
- package/test/resources/9999999/automation/retrieve-expected.json +7 -7
- package/test/resources/9999999/automation/template-expected.json +7 -7
- package/test/resources/9999999/automation/update-expected.json +6 -6
- package/test/resources/9999999/automation/v1/dataextracts/56c5370a-f988-4f36-b0ee-0f876573f6d7/delete-response.txt +1 -0
- package/test/resources/9999999/automation/v1/filetransfers/72c328ac-f5b0-4e37-91d3-a775666f15a6/delete-response.json +1 -0
- package/test/resources/9999999/automation/v1/imports/1ebf557b-372e-eb11-b81b-48df37d1dbd7/get-response.json +78 -0
- package/test/resources/9999999/automation/v1/imports/9d16f42c-2260-ed11-b849-48df37d1de8b/delete-response.txt +0 -0
- package/test/resources/9999999/automation/v1/imports/9d16f42c-2260-ed11-b849-48df37d1de8b/get-response.json +35 -0
- package/test/resources/9999999/automation/v1/imports/9d16f42c-2260-ed11-b849-48df37d1de8b/patch-response.json +14 -10
- package/test/resources/9999999/automation/v1/imports/get-response.json +78 -1
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat/get-response.json +1 -1
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/get-response.json +17 -0
- package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat_fixKeysSuffix/patch-response.json +18 -0
- package/test/resources/9999999/automation/v1/queries/abcde-607c-4940-afef-437965094dat/get-response.json +17 -0
- package/test/resources/9999999/automation/v1/queries/get-response.json +20 -3
- package/test/resources/9999999/automation/v1/scripts/39f6a488-20eb-4ba0-b0b9-023725b574e4/delete-response.txt +1 -0
- package/test/resources/9999999/automation/v1/scripts/get-response.json +3 -3
- package/test/resources/9999999/dataExtension/build-expected.json +3 -4
- package/test/resources/9999999/dataExtension/create-expected.json +1 -4
- package/test/resources/9999999/dataExtension/retrieve-Name=testExisting_dataExtension-response.xml +4 -4
- package/test/resources/9999999/dataExtension/retrieve-expected.json +3 -4
- package/test/resources/9999999/dataExtension/retrieve-response.xml +96 -1
- package/test/resources/9999999/dataExtension/template-expected.json +3 -4
- package/test/resources/9999999/dataExtension/update-expected.json +4 -3
- package/test/resources/9999999/dataExtension/update-response.xml +5 -3
- package/test/resources/9999999/dataExtensionField/retrieve-response.xml +72 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentType=userinitiatedsends-response.xml +48 -0
- package/test/resources/9999999/deliveryProfile/get-expected.json +7 -0
- package/test/resources/9999999/emailSend/build-expected.json +43 -0
- package/test/resources/9999999/emailSend/get-expected.json +43 -0
- package/test/resources/9999999/emailSend/patch-expected.json +41 -0
- package/test/resources/9999999/emailSend/post-expected.json +41 -0
- package/test/resources/9999999/emailSend/template-expected.json +43 -0
- package/test/resources/9999999/emailSendDefinition/create-response.xml +98 -0
- package/test/resources/9999999/emailSendDefinition/delete-response.xml +36 -0
- package/test/resources/9999999/emailSendDefinition/retrieve-IsPlatformObject=falseANDDescriptionnotEqualsSFSendDefinition-response.xml +18 -8
- package/test/resources/9999999/emailSendDefinition/update-response.xml +97 -0
- package/test/resources/9999999/importDefinition/retrieve-CustomerKey=testExisting_importFile-response.xml +30 -0
- package/test/resources/9999999/importDefinition/retrieve-Name=testExisting_importFile-response.xml +30 -0
- package/test/resources/9999999/importFile/build-expected.json +11 -6
- package/test/resources/9999999/importFile/get-expected.json +13 -7
- package/test/resources/9999999/importFile/get-sms-expected.json +79 -0
- package/test/resources/9999999/importFile/patch-expected.json +12 -7
- package/test/resources/9999999/importFile/post-expected.json +8 -5
- package/test/resources/9999999/importFile/template-expected.json +10 -5
- package/test/resources/9999999/interaction/v1/eventDefinitions/get-response.json +124 -0
- package/test/resources/9999999/interaction/v1/interactions/3c3f4112-9b43-43ca-8a89-aa0375b2c1a2/delete-response.txt +1 -0
- package/test/resources/9999999/interaction/v1/interactions/3c3f4112-9b43-43ca-8a89-aa0375b2c1a2/get-response.json +253 -0
- package/test/resources/9999999/interaction/v1/interactions/get-response.json +83 -779
- package/test/resources/9999999/interaction/v1/interactions/key_testExisting_journey_Multistep/get-response.json +457 -0
- package/test/resources/9999999/interaction/v1/interactions/key_testExisting_journey_Quicksend/get-response.json +253 -0
- package/test/resources/9999999/interaction/v1/interactions/{key_0b76dccf-594c-b6dc-1acf-10c4493dcb84 → key_testExisting_temail}/get-response.json +5 -5
- package/test/resources/9999999/journey/build-expected.json +105 -449
- package/test/resources/9999999/journey/get-multistep-expected.json +413 -0
- package/test/resources/9999999/journey/get-quicksend-expected.json +232 -0
- package/test/resources/9999999/journey/get-quicksend-rcb-id-expected.json +232 -0
- package/test/resources/9999999/journey/get-quicksend-rcb-key-expected.json +232 -0
- package/test/resources/9999999/journey/get-quicksend-rcb-name-expected.json +232 -0
- package/test/resources/9999999/journey/get-transactionalEmail-expected.json +211 -0
- package/test/resources/9999999/journey/template-expected.json +105 -449
- package/test/resources/9999999/legacy/v1/beta/messaging/deliverypolicy/get-response.json +15 -0
- package/test/resources/9999999/legacy/v1/beta/mobile/imports/get-response.json +112 -0
- package/test/resources/9999999/legacy/v1/beta/mobile/message/NTQ3Ojc4OjA/get-response.json +1 -1
- package/test/resources/9999999/legacy/v1/beta/object/NWQwdnhEU3dFZWVBekJRQzdISWl0QTo0NTow/get-response.json +12 -0
- package/test/resources/9999999/list/retrieve-response.xml +13 -0
- package/test/resources/9999999/messaging/v1/email/definitions/testExisting_temail/get-response.json +1 -1
- package/test/resources/9999999/messaging/v1/email/definitions/testExisting_temail/patch-response.json +1 -1
- package/test/resources/9999999/mobileMessage/build-expected.json +2 -5
- package/test/resources/9999999/mobileMessage/get-expected.json +2 -5
- package/test/resources/9999999/mobileMessage/post-create-expected.json +2 -4
- package/test/resources/9999999/mobileMessage/post-update-expected.json +2 -5
- package/test/resources/9999999/mobileMessage/template-expected.json +2 -5
- package/test/resources/9999999/query/build-expected.json +1 -1
- package/test/resources/9999999/query/build-expected.sql +2 -1
- package/test/resources/9999999/query/get-expected.json +1 -1
- package/test/resources/9999999/query/get-expected.sql +2 -1
- package/test/resources/9999999/query/get2-expected.json +1 -1
- package/test/resources/9999999/query/patch-expected.json +1 -1
- package/test/resources/9999999/query/patch_fixKeys-expected.json +1 -1
- package/test/resources/9999999/query/patch_fixKeysSuffix-expected.json +11 -0
- package/test/resources/9999999/query/patch_fixKeysSuffix-expected.sql +6 -0
- package/test/resources/9999999/query/post-expected.json +1 -1
- package/test/resources/9999999/query/template-expected.json +1 -1
- package/test/resources/9999999/query/template-expected.sql +2 -1
- package/test/resources/9999999/queryDefinition/retrieve-CustomerKey=testExisting_query2ANDStatus=Active-response.xml +30 -0
- package/test/resources/9999999/queryDefinition/retrieve-CustomerKey=testExisting_query_fixKeysSuffixANDStatus=Active-response.xml +30 -0
- package/test/resources/9999999/script/get_ampincluded-expected.html +5 -0
- package/test/resources/9999999/script/get_ampincluded-rcb-id-expected.html +5 -0
- package/test/resources/9999999/script/get_ampincluded-rcb-key-expected.html +5 -0
- package/test/resources/9999999/script/get_ampincluded-rcb-name-expected.html +5 -0
- package/test/resources/9999999/script/get_ampscript-expected.html +6 -1
- package/test/resources/9999999/script/get_ampscript-rcb-id-expected.html +8 -0
- package/test/resources/9999999/script/get_ampscript-rcb-key-expected.html +8 -0
- package/test/resources/9999999/script/get_ampscript-rcb-name-expected.html +10 -0
- package/test/resources/9999999/script/get_mixed-expected.html +5 -2
- package/test/resources/9999999/script/get_mixed-rcb-id-expected.html +12 -0
- package/test/resources/9999999/script/get_mixed-rcb-key-expected.html +12 -0
- package/test/resources/9999999/script/get_mixed-rcb-name-expected.html +14 -0
- package/test/resources/9999999/sendClassification/build-expected.json +8 -0
- package/test/resources/9999999/sendClassification/create-response.xml +51 -0
- package/test/resources/9999999/sendClassification/delete-response.xml +36 -0
- package/test/resources/9999999/sendClassification/get-expected.json +10 -0
- package/test/resources/9999999/sendClassification/patch-expected.json +8 -0
- package/test/resources/9999999/sendClassification/post-expected.json +8 -0
- package/test/resources/9999999/sendClassification/retrieve-response.xml +86 -0
- package/test/resources/9999999/sendClassification/template-expected.json +8 -0
- package/test/resources/9999999/sendClassification/update-response.xml +49 -0
- package/test/resources/9999999/senderProfile/build-expected.json +14 -0
- package/test/resources/9999999/senderProfile/create-response.xml +49 -0
- package/test/resources/9999999/senderProfile/delete-response.xml +36 -0
- package/test/resources/9999999/senderProfile/get-expected.json +16 -0
- package/test/resources/9999999/senderProfile/get-rcb-id-expected.json +16 -0
- package/test/resources/9999999/senderProfile/get-rcb-key-expected.json +16 -0
- package/test/resources/9999999/senderProfile/get-rcb-name-expected.json +16 -0
- package/test/resources/9999999/senderProfile/patch-expected.json +14 -0
- package/test/resources/9999999/senderProfile/post-expected.json +14 -0
- package/test/resources/9999999/senderProfile/retrieve-CustomerKey=Default-response.xml +44 -0
- package/test/resources/9999999/senderProfile/retrieve-CustomerKey=wrong-key-response.xml +26 -0
- package/test/resources/9999999/senderProfile/retrieve-response.xml +80 -0
- package/test/resources/9999999/senderProfile/template-expected.json +14 -0
- package/test/resources/9999999/senderProfile/update-response.xml +47 -0
- package/test/resources/9999999/transactionalEmail/build-expected.json +3 -3
- package/test/resources/9999999/transactionalEmail/get-expected.json +3 -3
- package/test/resources/9999999/transactionalEmail/patch-expected.json +3 -3
- package/test/resources/9999999/transactionalEmail/post-expected.json +2 -2
- package/test/resources/9999999/transactionalEmail/template-expected.json +3 -3
- package/test/resources/9999999/transactionalPush/build-expected.json +1 -1
- package/test/resources/9999999/transactionalPush/get-expected.json +1 -1
- package/test/resources/9999999/transactionalPush/patch-expected.json +1 -3
- package/test/resources/9999999/transactionalPush/post-expected.json +1 -3
- package/test/resources/9999999/transactionalPush/template-expected.json +1 -1
- package/test/resources/9999999/transactionalSMS/build-expected.amp +1 -1
- package/test/resources/9999999/transactionalSMS/build-expected.json +1 -2
- package/test/resources/9999999/transactionalSMS/get-expected.amp +1 -1
- package/test/resources/9999999/transactionalSMS/get-expected.json +1 -2
- package/test/resources/9999999/transactionalSMS/patch-expected.amp +1 -1
- package/test/resources/9999999/transactionalSMS/patch-expected.json +1 -2
- package/test/resources/9999999/transactionalSMS/post-expected.amp +1 -1
- package/test/resources/9999999/transactionalSMS/post-expected.json +1 -2
- package/test/resources/9999999/transactionalSMS/template-expected.amp +1 -1
- package/test/resources/9999999/transactionalSMS/template-expected.json +1 -2
- package/test/resources/9999999/triggeredSend/build-expected.json +5 -6
- package/test/resources/9999999/triggeredSend/get-expected.json +5 -6
- package/test/resources/9999999/triggeredSend/get-rcb-id-expected.json +29 -0
- package/test/resources/9999999/triggeredSend/get-rcb-key-expected.json +29 -0
- package/test/resources/9999999/triggeredSend/get-rcb-name-expected.json +29 -0
- package/test/resources/9999999/triggeredSend/patch-expected.json +5 -6
- package/test/resources/9999999/triggeredSend/post-expected.json +5 -6
- package/test/resources/9999999/triggeredSend/template-expected.json +5 -6
- package/test/resources/9999999/triggeredSendDefinition/create-response.xml +6 -1
- package/test/resources/9999999/triggeredSendDefinition/retrieve-TriggeredSendStatusINNew,Active,Inactive,Moved,Canceled-response.xml +53 -1
- package/test/resources/9999999/triggeredSendDefinition/update-response.xml +6 -1
- package/test/resources/9999999/verification/build-expected.json +1 -1
- package/test/resources/9999999/verification/get-expected.json +1 -1
- package/test/resources/9999999/verification/patch-expected.json +1 -1
- package/test/resources/9999999/verification/post-expected.json +1 -1
- package/test/resources/9999999/verification/template-expected.json +1 -1
- package/test/type.asset.test.js +733 -17
- package/test/type.attributeGroup.test.js +6 -2
- package/test/type.attributeSet.test.js +6 -2
- package/test/type.automation.test.js +174 -162
- package/test/type.dataExtension.test.js +41 -45
- package/test/type.dataExtract.test.js +22 -29
- package/test/type.deliveryProfile.test.js +45 -0
- package/test/type.emailSend.test.js +144 -0
- package/test/type.event.test.js +62 -0
- package/test/type.fileTransfer.test.js +21 -29
- package/test/type.importFile.test.js +61 -35
- package/test/type.journey.test.js +251 -45
- package/test/type.mobileKeyword.test.js +46 -54
- package/test/type.mobileMessage.test.js +28 -27
- package/test/type.query.test.js +303 -124
- package/test/type.script.test.js +288 -69
- package/test/type.sendClassification.test.js +156 -0
- package/test/type.senderProfile.test.js +254 -0
- package/test/type.transactionalEmail.test.js +15 -11
- package/test/type.transactionalPush.test.js +15 -11
- package/test/type.transactionalSMS.test.js +30 -23
- package/test/type.triggeredSend.test.js +130 -17
- package/test/type.user.test.js +22 -14
- package/test/type.verification.test.js +13 -10
- package/test/utils.js +76 -21
- package/tsconfig.json +21 -0
- package/types/mcdev.d.js +190 -66
- package/docs/dist/documentation.md +0 -8878
- package/test/mockRoot/deploy/testInstance/testBU/journey/testExisting_interaction.interaction-meta.json +0 -576
- package/test/mockRoot/deploy/testInstance/testBU/journey/testNew_interaction.interaction-meta.json +0 -266
- package/test/resources/9999999/interaction/v1/EventDefinitions/get-response.json +0 -43
- package/test/resources/9999999/interaction/v1/interactions/233d4413-922c-4568-85a5-e5cc77efc3be/delete-response.json +0 -1
- package/test/resources/9999999/interaction/v1/interactions/key_testExisting_interaction/get-response.json +0 -592
- package/test/resources/9999999/interaction/v1/interactions/key_testExisting_interaction/put-response.json +0 -592
- package/test/resources/9999999/interaction/v1/interactions/post-response.json +0 -280
- package/test/resources/9999999/journey/get-expected.json +0 -576
- package/test/resources/9999999/script/get_ampincluded-expected.ssjs +0 -5
|
@@ -1,9 +1,28 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
import TYPE from '../../types/mcdev.d.js';
|
|
4
3
|
import MetadataType from './MetadataType.js';
|
|
5
4
|
import { Util } from '../util/util.js';
|
|
6
5
|
import File from '../util/file.js';
|
|
6
|
+
import ReplaceCbReference from '../util/replaceContentBlockReference.js';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* @typedef {import('../../types/mcdev.d.js').BuObject} BuObject
|
|
10
|
+
* @typedef {import('../../types/mcdev.d.js').CodeExtract} CodeExtract
|
|
11
|
+
* @typedef {import('../../types/mcdev.d.js').CodeExtractItem} CodeExtractItem
|
|
12
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItem} MetadataTypeItem
|
|
13
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItemDiff} MetadataTypeItemDiff
|
|
14
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItemObj} MetadataTypeItemObj
|
|
15
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeMap} MetadataTypeMap
|
|
16
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeMapObj} MetadataTypeMapObj
|
|
17
|
+
* @typedef {import('../../types/mcdev.d.js').SoapRequestParams} SoapRequestParams
|
|
18
|
+
* @typedef {import('../../types/mcdev.d.js').TemplateMap} TemplateMap
|
|
19
|
+
* @typedef {import('../../types/mcdev.d.js').ContentBlockConversionTypes} ContentBlockConversionTypes
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @typedef {import('../../types/mcdev.d.js').ScriptItem} ScriptItem
|
|
24
|
+
* @typedef {import('../../types/mcdev.d.js').ScriptMap} ScriptMap
|
|
25
|
+
*/
|
|
7
26
|
|
|
8
27
|
/**
|
|
9
28
|
* Script MetadataType
|
|
@@ -15,11 +34,11 @@ class Script extends MetadataType {
|
|
|
15
34
|
* Retrieves Metadata of Script
|
|
16
35
|
* Endpoint /automation/v1/scripts/ return all Scripts with all details.
|
|
17
36
|
*
|
|
18
|
-
* @param {string} retrieveDir Directory where retrieved metadata directory will be saved
|
|
19
|
-
* @param {void} [_] unused parameter
|
|
20
|
-
* @param {void} [__] unused parameter
|
|
37
|
+
* @param {string} [retrieveDir] Directory where retrieved metadata directory will be saved
|
|
38
|
+
* @param {void | string[]} [_] unused parameter
|
|
39
|
+
* @param {void | string[]} [__] unused parameter
|
|
21
40
|
* @param {string} [key] customer key of single item to retrieve
|
|
22
|
-
* @returns {Promise.<{metadata:
|
|
41
|
+
* @returns {Promise.<{metadata: ScriptMap, type: string}>} Promise
|
|
23
42
|
*/
|
|
24
43
|
static async retrieve(retrieveDir, _, __, key) {
|
|
25
44
|
await File.initPrettier('ssjs');
|
|
@@ -28,7 +47,7 @@ class Script extends MetadataType {
|
|
|
28
47
|
/**
|
|
29
48
|
* Retrieves script metadata for caching
|
|
30
49
|
*
|
|
31
|
-
* @returns {Promise.<{metadata:
|
|
50
|
+
* @returns {Promise.<{metadata: ScriptMap, type: string}>} Promise
|
|
32
51
|
*/
|
|
33
52
|
static async retrieveForCache() {
|
|
34
53
|
return super.retrieveREST(null, '/automation/v1/scripts/');
|
|
@@ -39,8 +58,8 @@ class Script extends MetadataType {
|
|
|
39
58
|
*
|
|
40
59
|
* @param {string} templateDir Directory where retrieved metadata directory will be saved
|
|
41
60
|
* @param {string} name name of the metadata file
|
|
42
|
-
* @param {
|
|
43
|
-
* @returns {Promise.<{metadata:
|
|
61
|
+
* @param {TemplateMap} templateVariables variables to be replaced in the metadata
|
|
62
|
+
* @returns {Promise.<{metadata: ScriptItem, type: string}>} Promise
|
|
44
63
|
*/
|
|
45
64
|
static async retrieveAsTemplate(templateDir, name, templateVariables) {
|
|
46
65
|
await File.initPrettier('ssjs');
|
|
@@ -51,20 +70,10 @@ class Script extends MetadataType {
|
|
|
51
70
|
);
|
|
52
71
|
}
|
|
53
72
|
|
|
54
|
-
/**
|
|
55
|
-
* manages post retrieve steps
|
|
56
|
-
*
|
|
57
|
-
* @param {TYPE.ScriptItem} metadata a single script
|
|
58
|
-
* @returns {TYPE.CodeExtractItem} Array with one metadata object and one ssjs string
|
|
59
|
-
*/
|
|
60
|
-
static postRetrieveTasks(metadata) {
|
|
61
|
-
return this.parseMetadata(metadata);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
73
|
/**
|
|
65
74
|
* Updates a single Script
|
|
66
75
|
*
|
|
67
|
-
* @param {
|
|
76
|
+
* @param {MetadataTypeItem} script a single Script
|
|
68
77
|
* @returns {Promise} Promise
|
|
69
78
|
*/
|
|
70
79
|
static update(script) {
|
|
@@ -74,7 +83,7 @@ class Script extends MetadataType {
|
|
|
74
83
|
/**
|
|
75
84
|
* Creates a single Script
|
|
76
85
|
*
|
|
77
|
-
* @param {
|
|
86
|
+
* @param {MetadataTypeItem} script a single Script
|
|
78
87
|
* @returns {Promise} Promise
|
|
79
88
|
*/
|
|
80
89
|
static create(script) {
|
|
@@ -84,7 +93,7 @@ class Script extends MetadataType {
|
|
|
84
93
|
/**
|
|
85
94
|
* helper for {@link Script.preDeployTasks} that loads extracted code content back into JSON
|
|
86
95
|
*
|
|
87
|
-
* @param {
|
|
96
|
+
* @param {ScriptItem} metadata a single asset definition
|
|
88
97
|
* @param {string} deployDir directory of deploy files
|
|
89
98
|
* @param {string} [templateName] name of the template used to built defintion (prior applying templating)
|
|
90
99
|
* @returns {Promise.<string>} content for metadata.script
|
|
@@ -104,7 +113,7 @@ class Script extends MetadataType {
|
|
|
104
113
|
templateName + '.' + this.definition.type + '-meta',
|
|
105
114
|
'ssjs'
|
|
106
115
|
);
|
|
107
|
-
code = `<script runat="server">\n${code}</script>`;
|
|
116
|
+
code = `<script runat="server">\n${code.trim()}\n</script>`;
|
|
108
117
|
} else if (await File.pathExists(codePath + '.html')) {
|
|
109
118
|
code = await File.readFilteredFilename(
|
|
110
119
|
[deployDir, this.definition.type],
|
|
@@ -119,9 +128,9 @@ class Script extends MetadataType {
|
|
|
119
128
|
/**
|
|
120
129
|
* prepares a Script for deployment
|
|
121
130
|
*
|
|
122
|
-
* @param {
|
|
131
|
+
* @param {ScriptItem} metadata a single script activity definition
|
|
123
132
|
* @param {string} dir directory of deploy files
|
|
124
|
-
* @returns {
|
|
133
|
+
* @returns {Promise.<ScriptItem>} Promise
|
|
125
134
|
*/
|
|
126
135
|
static async preDeployTasks(metadata, dir) {
|
|
127
136
|
// folder
|
|
@@ -138,8 +147,8 @@ class Script extends MetadataType {
|
|
|
138
147
|
*
|
|
139
148
|
* @param {string} templateDir Directory where metadata templates are stored
|
|
140
149
|
* @param {string|string[]} targetDir (List of) Directory where built definitions will be saved
|
|
141
|
-
* @param {
|
|
142
|
-
* @param {
|
|
150
|
+
* @param {ScriptItem} metadata main JSON file that was read from file system
|
|
151
|
+
* @param {TemplateMap} templateVariables variables to be replaced in the metadata
|
|
143
152
|
* @param {string} templateName name of the template to be built
|
|
144
153
|
* @returns {Promise.<string[][]>} list of extracted files with path-parts provided as an array
|
|
145
154
|
*/
|
|
@@ -166,8 +175,8 @@ class Script extends MetadataType {
|
|
|
166
175
|
* @example scripts are saved as 1 json and 1 ssjs file. both files need to be run through templating
|
|
167
176
|
* @param {string} templateDir Directory where metadata templates are stored
|
|
168
177
|
* @param {string|string[]} targetDir (List of) Directory where built definitions will be saved
|
|
169
|
-
* @param {
|
|
170
|
-
* @param {
|
|
178
|
+
* @param {ScriptItem} metadata main JSON file that was read from file system
|
|
179
|
+
* @param {TemplateMap} templateVariables variables to be replaced in the metadata
|
|
171
180
|
* @param {string} templateName name of the template to be built
|
|
172
181
|
* @returns {Promise.<string[][]>} list of extracted files with path-parts provided as an array
|
|
173
182
|
*/
|
|
@@ -194,8 +203,8 @@ class Script extends MetadataType {
|
|
|
194
203
|
*
|
|
195
204
|
* @param {string} templateDir Directory where metadata templates are stored
|
|
196
205
|
* @param {string|string[]} targetDir (List of) Directory where built definitions will be saved
|
|
197
|
-
* @param {
|
|
198
|
-
* @param {
|
|
206
|
+
* @param {ScriptItem} metadata main JSON file that was read from file system
|
|
207
|
+
* @param {TemplateMap} templateVariables variables to be replaced in the metadata
|
|
199
208
|
* @param {string} templateName name of the template to be built
|
|
200
209
|
* @param {'definition'|'template'} mode defines what we use this helper for
|
|
201
210
|
* @returns {Promise.<string[][]>} list of extracted files with path-parts provided as an array
|
|
@@ -211,7 +220,7 @@ class Script extends MetadataType {
|
|
|
211
220
|
// get SSJS from filesystem
|
|
212
221
|
let code = await this._mergeCode(metadata, templateDir, templateName);
|
|
213
222
|
// try to remove script tags and decide on file extension (html/ssjs)
|
|
214
|
-
const file =
|
|
223
|
+
const file = this.prepExtractedCode(code, metadata.name);
|
|
215
224
|
const fileExt = file.fileExt;
|
|
216
225
|
code = fileExt === 'ssjs' ? file.code.replace(/^\n/, '') : file.code;
|
|
217
226
|
// apply templating
|
|
@@ -255,19 +264,28 @@ class Script extends MetadataType {
|
|
|
255
264
|
}
|
|
256
265
|
|
|
257
266
|
/**
|
|
258
|
-
*
|
|
267
|
+
* manages post retrieve steps
|
|
259
268
|
*
|
|
260
|
-
* @param {
|
|
261
|
-
* @returns {
|
|
269
|
+
* @param {ScriptItem} metadata a single item
|
|
270
|
+
* @returns {CodeExtractItem} a single item with code parts extracted
|
|
262
271
|
*/
|
|
263
|
-
static
|
|
272
|
+
static postRetrieveTasks(metadata) {
|
|
264
273
|
// folder
|
|
265
274
|
super.setFolderPath(metadata);
|
|
266
275
|
|
|
276
|
+
return this.getCodeExtractItem(metadata);
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* manages post retrieve steps
|
|
280
|
+
*
|
|
281
|
+
* @param {ScriptItem} metadata a single item
|
|
282
|
+
* @returns {CodeExtractItem} a single item with code parts extracted
|
|
283
|
+
*/
|
|
284
|
+
static getCodeExtractItem(metadata) {
|
|
267
285
|
// extract SSJS
|
|
268
286
|
const codeArr = [];
|
|
269
287
|
// keep between tags
|
|
270
|
-
const { fileExt, code } =
|
|
288
|
+
const { fileExt, code } = this.prepExtractedCode(metadata.script, metadata.name);
|
|
271
289
|
delete metadata.script;
|
|
272
290
|
codeArr.push({
|
|
273
291
|
subFolder: null,
|
|
@@ -278,8 +296,9 @@ class Script extends MetadataType {
|
|
|
278
296
|
|
|
279
297
|
return { json: metadata, codeArr: codeArr, subFolder: null };
|
|
280
298
|
}
|
|
299
|
+
|
|
281
300
|
/**
|
|
282
|
-
* helper for {@link Script.
|
|
301
|
+
* helper for {@link Script.postRetrieveTasks} and {@link Script._buildForNested}
|
|
283
302
|
*
|
|
284
303
|
* @param {string} metadataScript the code of the file
|
|
285
304
|
* @param {string} metadataName the name of the metadata
|
|
@@ -307,9 +326,9 @@ class Script extends MetadataType {
|
|
|
307
326
|
* additionally, the documentation for dataExtension and automation should be returned
|
|
308
327
|
*
|
|
309
328
|
* @param {string[]} keyArr customerkey of the metadata
|
|
310
|
-
* @returns {string[]} list of all files that need to be committed in a flat array ['path/file1.ext', 'path/file2.ext']
|
|
329
|
+
* @returns {Promise.<string[]>} list of all files that need to be committed in a flat array ['path/file1.ext', 'path/file2.ext']
|
|
311
330
|
*/
|
|
312
|
-
static getFilesToCommit(keyArr) {
|
|
331
|
+
static async getFilesToCommit(keyArr) {
|
|
313
332
|
const path = File.normalizePath([
|
|
314
333
|
this.properties.directories.retrieve,
|
|
315
334
|
this.buObject.credential,
|
|
@@ -324,6 +343,75 @@ class Script extends MetadataType {
|
|
|
324
343
|
]);
|
|
325
344
|
return fileList;
|
|
326
345
|
}
|
|
346
|
+
/**
|
|
347
|
+
* helper to allow us to select single metadata entries via REST
|
|
348
|
+
*
|
|
349
|
+
* @private
|
|
350
|
+
* @param {string} key customer key
|
|
351
|
+
* @returns {Promise.<string>} objectId or enpty string
|
|
352
|
+
*/
|
|
353
|
+
static async _getObjectIdForSingleRetrieve(key) {
|
|
354
|
+
const name = key.startsWith('name:') ? key.slice(5) : null;
|
|
355
|
+
const filter = name
|
|
356
|
+
? '?$filter=name%20eq%20' + encodeURIComponent(name)
|
|
357
|
+
: '?$filter=key%20eq%20' + encodeURIComponent(key);
|
|
358
|
+
const results = await this.client.rest.get('/automation/v1/scripts/' + filter);
|
|
359
|
+
const items = results?.items || [];
|
|
360
|
+
const found = items.find((item) =>
|
|
361
|
+
name ? item[this.definition.nameField] === name : item[this.definition.keyField] === key
|
|
362
|
+
);
|
|
363
|
+
return found?.ssjsActivityId || null;
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
/**
|
|
367
|
+
* Delete a metadata item from the specified business unit
|
|
368
|
+
*
|
|
369
|
+
* @param {string} customerKey Identifier of data extension
|
|
370
|
+
* @returns {Promise.<boolean>} deletion success flag
|
|
371
|
+
*/
|
|
372
|
+
static async deleteByKey(customerKey) {
|
|
373
|
+
// delete only works with the query's object id
|
|
374
|
+
const objectId = customerKey ? await this._getObjectIdForSingleRetrieve(customerKey) : null;
|
|
375
|
+
if (!objectId) {
|
|
376
|
+
Util.logger.error(` - ${this.definition.type} not found`);
|
|
377
|
+
return false;
|
|
378
|
+
}
|
|
379
|
+
return super.deleteByKeyREST('/automation/v1/scripts/' + objectId, customerKey);
|
|
380
|
+
}
|
|
381
|
+
/**
|
|
382
|
+
* clean up after deleting a metadata item
|
|
383
|
+
*
|
|
384
|
+
* @param {string} customerKey Identifier of metadata item
|
|
385
|
+
* @returns {Promise.<void>} -
|
|
386
|
+
*/
|
|
387
|
+
static async postDeleteTasks(customerKey) {
|
|
388
|
+
// delete local copy: retrieve/cred/bu/.../...-meta.json
|
|
389
|
+
// delete local copy: retrieve/cred/bu/.../...-meta.ssjs
|
|
390
|
+
// delete local copy: retrieve/cred/bu/.../...-meta.html
|
|
391
|
+
await super.postDeleteTasks(customerKey, [
|
|
392
|
+
`${this.definition.type}-meta.ssjs`,
|
|
393
|
+
`${this.definition.type}-meta.html`,
|
|
394
|
+
]);
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
/**
|
|
398
|
+
*
|
|
399
|
+
* @param {MetadataTypeItem} item single metadata item
|
|
400
|
+
* @param {string} retrieveDir directory where metadata is saved
|
|
401
|
+
* @returns {Promise.<CodeExtractItem>} key of the item that was updated
|
|
402
|
+
*/
|
|
403
|
+
static async replaceCbReference(item, retrieveDir) {
|
|
404
|
+
const parentName = `${this.definition.type} ${item[this.definition.keyField]}`;
|
|
405
|
+
|
|
406
|
+
const code = await this._mergeCode(item, retrieveDir);
|
|
407
|
+
|
|
408
|
+
item.script = ReplaceCbReference.replaceReference(code, parentName);
|
|
409
|
+
|
|
410
|
+
// *** finish ***
|
|
411
|
+
// replaceReference will throw an error if nothing was updated which will end execution here
|
|
412
|
+
// no error means we have a new item to deploy and need to update the item in our retrieve folder
|
|
413
|
+
return this.getCodeExtractItem(item);
|
|
414
|
+
}
|
|
327
415
|
}
|
|
328
416
|
|
|
329
417
|
// Assign definition & cache to static attributes
|
|
@@ -1,7 +1,21 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
import TYPE from '../../types/mcdev.d.js';
|
|
4
3
|
import MetadataType from './MetadataType.js';
|
|
4
|
+
import { Util } from '../util/util.js';
|
|
5
|
+
import cache from '../util/cache.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @typedef {import('../../types/mcdev.d.js').BuObject} BuObject
|
|
9
|
+
* @typedef {import('../../types/mcdev.d.js').CodeExtract} CodeExtract
|
|
10
|
+
* @typedef {import('../../types/mcdev.d.js').CodeExtractItem} CodeExtractItem
|
|
11
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItem} MetadataTypeItem
|
|
12
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItemDiff} MetadataTypeItemDiff
|
|
13
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItemObj} MetadataTypeItemObj
|
|
14
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeMap} MetadataTypeMap
|
|
15
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeMapObj} MetadataTypeMapObj
|
|
16
|
+
* @typedef {import('../../types/mcdev.d.js').SoapRequestParams} SoapRequestParams
|
|
17
|
+
* @typedef {import('../../types/mcdev.d.js').TemplateMap} TemplateMap
|
|
18
|
+
*/
|
|
5
19
|
|
|
6
20
|
/**
|
|
7
21
|
* SendClassification MetadataType
|
|
@@ -13,13 +27,13 @@ class SendClassification extends MetadataType {
|
|
|
13
27
|
* Retrieves SOAP based metadata of metadata type into local filesystem. executes callback with retrieved metadata
|
|
14
28
|
*
|
|
15
29
|
* @param {string} retrieveDir Directory where retrieved metadata directory will be saved
|
|
16
|
-
* @param {void} [_] unused parameter
|
|
17
|
-
* @param {void} [__] unused parameter
|
|
30
|
+
* @param {void | string[]} [_] unused parameter
|
|
31
|
+
* @param {void | string[]} [__] unused parameter
|
|
18
32
|
* @param {string} [key] customer key of single item to retrieve
|
|
19
|
-
* @returns {Promise.<
|
|
33
|
+
* @returns {Promise.<MetadataTypeMapObj>} Promise of metadata
|
|
20
34
|
*/
|
|
21
35
|
static retrieve(retrieveDir, _, __, key) {
|
|
22
|
-
/** @type {
|
|
36
|
+
/** @type {SoapRequestParams} */
|
|
23
37
|
let requestParams = null;
|
|
24
38
|
if (key) {
|
|
25
39
|
requestParams = {
|
|
@@ -32,6 +46,107 @@ class SendClassification extends MetadataType {
|
|
|
32
46
|
}
|
|
33
47
|
return super.retrieveSOAP(retrieveDir, requestParams, key);
|
|
34
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Updates a single item
|
|
51
|
+
*
|
|
52
|
+
* @param {MetadataTypeItem} metadataItem a single item
|
|
53
|
+
* @returns {Promise} Promise
|
|
54
|
+
*/
|
|
55
|
+
static update(metadataItem) {
|
|
56
|
+
return super.updateSOAP(metadataItem);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Creates a single item
|
|
61
|
+
*
|
|
62
|
+
* @param {MetadataTypeItem} metadataItem a single item
|
|
63
|
+
* @returns {Promise} Promise
|
|
64
|
+
*/
|
|
65
|
+
static create(metadataItem) {
|
|
66
|
+
return super.createSOAP(metadataItem);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Delete a metadata item from the specified business unit
|
|
71
|
+
*
|
|
72
|
+
* @param {string} customerKey Identifier of data extension
|
|
73
|
+
* @returns {Promise.<boolean>} deletion success status
|
|
74
|
+
*/
|
|
75
|
+
static deleteByKey(customerKey) {
|
|
76
|
+
return super.deleteByKeySOAP(customerKey);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* prepares a import definition for deployment
|
|
80
|
+
*
|
|
81
|
+
* @param {MetadataTypeItem} metadata a single importDef
|
|
82
|
+
* @returns {Promise.<MetadataTypeItem>} Promise
|
|
83
|
+
*/
|
|
84
|
+
static async preDeployTasks(metadata) {
|
|
85
|
+
metadata.SendClassificationType =
|
|
86
|
+
this.definition.sendClassificationTypeMapping[metadata.c__classification];
|
|
87
|
+
delete metadata.c__classification;
|
|
88
|
+
|
|
89
|
+
metadata.SenderProfile = {
|
|
90
|
+
CustomerKey: cache.searchForField(
|
|
91
|
+
'senderProfile',
|
|
92
|
+
metadata.r__senderProfile_key,
|
|
93
|
+
'CustomerKey',
|
|
94
|
+
'CustomerKey'
|
|
95
|
+
),
|
|
96
|
+
};
|
|
97
|
+
delete metadata.r__senderProfile_key;
|
|
98
|
+
|
|
99
|
+
metadata.DeliveryProfile = {
|
|
100
|
+
CustomerKey: cache.searchForField(
|
|
101
|
+
'deliveryProfile',
|
|
102
|
+
metadata.r__deliveryProfile_key,
|
|
103
|
+
'key',
|
|
104
|
+
'key'
|
|
105
|
+
),
|
|
106
|
+
};
|
|
107
|
+
delete metadata.r__deliveryProfile_key;
|
|
108
|
+
|
|
109
|
+
return metadata;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* manages post retrieve steps
|
|
114
|
+
*
|
|
115
|
+
* @param {MetadataTypeItem} metadata a single item
|
|
116
|
+
* @returns {MetadataTypeItem} parsed metadata
|
|
117
|
+
*/
|
|
118
|
+
static postRetrieveTasks(metadata) {
|
|
119
|
+
metadata.c__classification = Util.inverseGet(
|
|
120
|
+
this.definition.sendClassificationTypeMapping,
|
|
121
|
+
metadata.SendClassificationType
|
|
122
|
+
);
|
|
123
|
+
delete metadata.SendClassificationType;
|
|
124
|
+
|
|
125
|
+
try {
|
|
126
|
+
metadata.r__senderProfile_key = cache.searchForField(
|
|
127
|
+
'senderProfile',
|
|
128
|
+
metadata.SenderProfile.CustomerKey,
|
|
129
|
+
'CustomerKey',
|
|
130
|
+
'CustomerKey'
|
|
131
|
+
);
|
|
132
|
+
delete metadata.SenderProfile;
|
|
133
|
+
} catch (ex) {
|
|
134
|
+
Util.logger.warn(` - ${this.definition.type} ${metadata.CustomerKey}: ${ex.message}`);
|
|
135
|
+
}
|
|
136
|
+
try {
|
|
137
|
+
metadata.r__deliveryProfile_key = cache.searchForField(
|
|
138
|
+
'deliveryProfile',
|
|
139
|
+
metadata.DeliveryProfile.CustomerKey,
|
|
140
|
+
'key',
|
|
141
|
+
'key'
|
|
142
|
+
);
|
|
143
|
+
delete metadata.DeliveryProfile;
|
|
144
|
+
} catch (ex) {
|
|
145
|
+
Util.logger.warn(` - ${this.definition.type} ${metadata.CustomerKey}: ${ex.message}`);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
return metadata;
|
|
149
|
+
}
|
|
35
150
|
}
|
|
36
151
|
|
|
37
152
|
// Assign definition to static attributes
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
import MetadataType from './MetadataType.js';
|
|
4
|
+
import { Util } from '../util/util.js';
|
|
5
|
+
import ReplaceCbReference from '../util/replaceContentBlockReference.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @typedef {import('../../types/mcdev.d.js').BuObject} BuObject
|
|
9
|
+
* @typedef {import('../../types/mcdev.d.js').CodeExtract} CodeExtract
|
|
10
|
+
* @typedef {import('../../types/mcdev.d.js').CodeExtractItem} CodeExtractItem
|
|
11
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItem} MetadataTypeItem
|
|
12
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItemDiff} MetadataTypeItemDiff
|
|
13
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeItemObj} MetadataTypeItemObj
|
|
14
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeMap} MetadataTypeMap
|
|
15
|
+
* @typedef {import('../../types/mcdev.d.js').MetadataTypeMapObj} MetadataTypeMapObj
|
|
16
|
+
* @typedef {import('../../types/mcdev.d.js').SoapRequestParams} SoapRequestParams
|
|
17
|
+
* @typedef {import('../../types/mcdev.d.js').TemplateMap} TemplateMap
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* SenderProfile MetadataType
|
|
22
|
+
*
|
|
23
|
+
* @augments MetadataType
|
|
24
|
+
*/
|
|
25
|
+
class SenderProfile extends MetadataType {
|
|
26
|
+
/**
|
|
27
|
+
* Retrieves SOAP based metadata of metadata type into local filesystem. executes callback with retrieved metadata
|
|
28
|
+
*
|
|
29
|
+
* @param {string} [retrieveDir] Directory where retrieved metadata directory will be saved
|
|
30
|
+
* @param {void | string[]} [_] unused parameter
|
|
31
|
+
* @param {void | string[]} [__] unused parameter
|
|
32
|
+
* @param {string} [key] customer key of single item to retrieve
|
|
33
|
+
* @returns {Promise.<MetadataTypeMapObj>} Promise of metadata
|
|
34
|
+
*/
|
|
35
|
+
static async retrieve(retrieveDir, _, __, key) {
|
|
36
|
+
/** @type {SoapRequestParams} */
|
|
37
|
+
let requestParams;
|
|
38
|
+
if (key) {
|
|
39
|
+
requestParams = {
|
|
40
|
+
filter: {
|
|
41
|
+
leftOperand: 'CustomerKey',
|
|
42
|
+
operator: 'equals',
|
|
43
|
+
rightOperand: key,
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
return super.retrieveSOAP(retrieveDir, requestParams, key);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Updates a single item
|
|
51
|
+
*
|
|
52
|
+
* @param {MetadataTypeItem} metadataItem a single item
|
|
53
|
+
* @returns {Promise} Promise
|
|
54
|
+
*/
|
|
55
|
+
static update(metadataItem) {
|
|
56
|
+
return super.updateSOAP(metadataItem);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Creates a single item
|
|
61
|
+
*
|
|
62
|
+
* @param {MetadataTypeItem} metadataItem a single item
|
|
63
|
+
* @returns {Promise} Promise
|
|
64
|
+
*/
|
|
65
|
+
static create(metadataItem) {
|
|
66
|
+
return super.createSOAP(metadataItem);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Delete a metadata item from the specified business unit
|
|
71
|
+
*
|
|
72
|
+
* @param {string} customerKey Identifier of data extension
|
|
73
|
+
* @returns {Promise.<boolean>} deletion success status
|
|
74
|
+
*/
|
|
75
|
+
static deleteByKey(customerKey) {
|
|
76
|
+
return super.deleteByKeySOAP(customerKey);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* prepares a single item for deployment
|
|
81
|
+
*
|
|
82
|
+
* @param {MetadataTypeItem} metadata a single query activity
|
|
83
|
+
* @returns {Promise.<MetadataTypeItem>} Promise
|
|
84
|
+
*/
|
|
85
|
+
static async preDeployTasks(metadata) {
|
|
86
|
+
if (
|
|
87
|
+
metadata.UseDefaultRMMRules &&
|
|
88
|
+
(metadata.AutoForwardToEmailAddress !== '' || metadata.AutoForwardToName !== '')
|
|
89
|
+
) {
|
|
90
|
+
Util.logger.warn(
|
|
91
|
+
` - ${this.definition.type} ${metadata[this.definition.nameField]} (${
|
|
92
|
+
metadata[this.definition.keyField]
|
|
93
|
+
}): AutoForwardToEmailAddress and AutoForwardToName will be ignored because UseDefaultRMMRules is set to true; setting UseDefaultRMMRules to false`
|
|
94
|
+
);
|
|
95
|
+
metadata.UseDefaultRMMRules = false;
|
|
96
|
+
} else if (
|
|
97
|
+
!metadata.UseDefaultRMMRules &&
|
|
98
|
+
(metadata.AutoForwardToEmailAddress === '' || metadata.AutoForwardToName === '')
|
|
99
|
+
) {
|
|
100
|
+
Util.logger.warn(
|
|
101
|
+
` - ${this.definition.type} ${metadata[this.definition.nameField]} (${
|
|
102
|
+
metadata[this.definition.keyField]
|
|
103
|
+
}): AutoForwardToEmailAddress and AutoForwardToName are required when UseDefaultRMMRules is set to false; setting UseDefaultRMMRules to true`
|
|
104
|
+
);
|
|
105
|
+
metadata.UseDefaultRMMRules = true;
|
|
106
|
+
}
|
|
107
|
+
return metadata;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
*
|
|
111
|
+
* @param {MetadataTypeItem} item single metadata item
|
|
112
|
+
* @returns {Promise.<MetadataTypeItem>} key of the item that was updated
|
|
113
|
+
*/
|
|
114
|
+
static async replaceCbReference(item) {
|
|
115
|
+
const parentName = `${this.definition.type} ${item[this.definition.keyField]}`;
|
|
116
|
+
let changes = false;
|
|
117
|
+
let error;
|
|
118
|
+
|
|
119
|
+
// *** type specific logic ***
|
|
120
|
+
try {
|
|
121
|
+
item.FromName = ReplaceCbReference.replaceReference(item.FromName, parentName);
|
|
122
|
+
changes = true;
|
|
123
|
+
} catch (ex) {
|
|
124
|
+
if (ex.code !== 200) {
|
|
125
|
+
error = ex;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
try {
|
|
129
|
+
item.FromAddress = ReplaceCbReference.replaceReference(item.FromAddress, parentName);
|
|
130
|
+
changes = true;
|
|
131
|
+
} catch (ex) {
|
|
132
|
+
if (ex.code !== 200) {
|
|
133
|
+
error = ex;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
try {
|
|
137
|
+
item.AutoForwardToEmailAddress = ReplaceCbReference.replaceReference(
|
|
138
|
+
item.AutoForwardToEmailAddress,
|
|
139
|
+
parentName
|
|
140
|
+
);
|
|
141
|
+
changes = true;
|
|
142
|
+
} catch (ex) {
|
|
143
|
+
if (ex.code !== 200) {
|
|
144
|
+
error = ex;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
try {
|
|
148
|
+
item.AutoForwardToName = ReplaceCbReference.replaceReference(
|
|
149
|
+
item.AutoForwardToName,
|
|
150
|
+
parentName
|
|
151
|
+
);
|
|
152
|
+
changes = true;
|
|
153
|
+
} catch (ex) {
|
|
154
|
+
if (ex.code !== 200) {
|
|
155
|
+
error = ex;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
if (error) {
|
|
159
|
+
throw error;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
if (!changes) {
|
|
163
|
+
const ex = new Error('No changes made to the code.');
|
|
164
|
+
ex.code = 200;
|
|
165
|
+
throw ex;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
// *** finish ***
|
|
169
|
+
// replaceReference will throw an error if nothing was updated which will end execution here
|
|
170
|
+
// no error means we have a new item to deploy and need to update the item in our retrieve folder
|
|
171
|
+
return item;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
// Assign definition & cache to static attributes
|
|
176
|
+
import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
|
|
177
|
+
SenderProfile.definition = MetadataTypeDefinitions.senderProfile;
|
|
178
|
+
|
|
179
|
+
export default SenderProfile;
|