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
package/test/utils.js
CHANGED
|
@@ -36,10 +36,13 @@ export function getActualJson(customerKey, type, buName = 'testBU') {
|
|
|
36
36
|
* @param {string} customerKey of metadata
|
|
37
37
|
* @param {string} type of metadata
|
|
38
38
|
* @param {string} [buName] used when we need to test on ParentBU
|
|
39
|
-
* @returns {string} file path
|
|
39
|
+
* @returns {Promise.<string>} file path
|
|
40
40
|
*/
|
|
41
41
|
export function getActualDoc(customerKey, type, buName = 'testBU') {
|
|
42
|
-
return
|
|
42
|
+
return File.readFile(
|
|
43
|
+
`./retrieve/testInstance/${buName}/${type}/${customerKey}.${type}-doc.md`,
|
|
44
|
+
'utf8'
|
|
45
|
+
);
|
|
43
46
|
}
|
|
44
47
|
/**
|
|
45
48
|
* gets file from Retrieve folder
|
|
@@ -47,10 +50,17 @@ export function getActualDoc(customerKey, type, buName = 'testBU') {
|
|
|
47
50
|
* @param {string} customerKey of metadata
|
|
48
51
|
* @param {string} type of metadata
|
|
49
52
|
* @param {string} ext file extension
|
|
50
|
-
* @
|
|
53
|
+
* @param {string} [buName] used when we need to test on ParentBU
|
|
54
|
+
* @returns {Promise.<string | null>} file in string form, null if not found
|
|
51
55
|
*/
|
|
52
|
-
export function getActualFile(customerKey, type, ext) {
|
|
53
|
-
|
|
56
|
+
export async function getActualFile(customerKey, type, ext, buName = 'testBU') {
|
|
57
|
+
const path = `./retrieve/testInstance/${buName}/${type}/${customerKey}.${type}-meta.${ext}`;
|
|
58
|
+
try {
|
|
59
|
+
return await File.readFile(path, 'utf8');
|
|
60
|
+
} catch {
|
|
61
|
+
console.log(`File not found: ${path}`); // eslint-disable-line no-console
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
54
64
|
}
|
|
55
65
|
/**
|
|
56
66
|
* gets file from Deploy folder
|
|
@@ -58,7 +68,7 @@ export function getActualFile(customerKey, type, ext) {
|
|
|
58
68
|
* @param {string} customerKey of metadata
|
|
59
69
|
* @param {string} type of metadata
|
|
60
70
|
* @param {string} [buName] used when we need to test on ParentBU
|
|
61
|
-
* @returns {Promise.<string>} file in
|
|
71
|
+
* @returns {Promise.<string>} file in JSON form
|
|
62
72
|
*/
|
|
63
73
|
export function getActualDeployJson(customerKey, type, buName = 'testBU') {
|
|
64
74
|
return File.readJSON(
|
|
@@ -71,17 +81,21 @@ export function getActualDeployJson(customerKey, type, buName = 'testBU') {
|
|
|
71
81
|
* @param {string} customerKey of metadata
|
|
72
82
|
* @param {string} type of metadata
|
|
73
83
|
* @param {string} ext file extension
|
|
74
|
-
* @
|
|
84
|
+
* @param {string} [buName] used when we need to test on ParentBU
|
|
85
|
+
* @returns {Promise.<string>} file in string form
|
|
75
86
|
*/
|
|
76
|
-
export function getActualDeployFile(customerKey, type, ext) {
|
|
77
|
-
return
|
|
87
|
+
export function getActualDeployFile(customerKey, type, ext, buName = 'testBU') {
|
|
88
|
+
return File.readFile(
|
|
89
|
+
`./deploy/testInstance/${buName}/${type}/${customerKey}.${type}-meta.${ext}`,
|
|
90
|
+
'utf8'
|
|
91
|
+
);
|
|
78
92
|
}
|
|
79
93
|
/**
|
|
80
94
|
* gets file from Template folder
|
|
81
95
|
*
|
|
82
96
|
* @param {string} customerKey of metadata
|
|
83
97
|
* @param {string} type of metadata
|
|
84
|
-
* @returns {Promise.<string>} file in
|
|
98
|
+
* @returns {Promise.<string>} file in JSON form
|
|
85
99
|
*/
|
|
86
100
|
export function getActualTemplateJson(customerKey, type) {
|
|
87
101
|
return File.readJSON(`./template/${type}/${customerKey}.${type}-meta.json`);
|
|
@@ -92,33 +106,33 @@ export function getActualTemplateJson(customerKey, type) {
|
|
|
92
106
|
* @param {string} customerKey of metadata
|
|
93
107
|
* @param {string} type of metadata
|
|
94
108
|
* @param {string} ext file extension
|
|
95
|
-
* @returns {string} file
|
|
109
|
+
* @returns {Promise.<string>} file in string form
|
|
96
110
|
*/
|
|
97
111
|
export function getActualTemplateFile(customerKey, type, ext) {
|
|
98
|
-
return `./template/${type}/${customerKey}.${type}-meta.${ext}
|
|
112
|
+
return File.readFile(`./template/${type}/${customerKey}.${type}-meta.${ext}`, 'utf8');
|
|
99
113
|
}
|
|
100
114
|
/**
|
|
101
115
|
* gets file from resources folder which should be used for comparison
|
|
102
116
|
*
|
|
103
|
-
* @param {
|
|
117
|
+
* @param {string} mid of Business Unit
|
|
104
118
|
* @param {string} type of metadata
|
|
105
119
|
* @param {string} action of SOAP request
|
|
106
|
-
* @returns {Promise.<string>} file in
|
|
120
|
+
* @returns {Promise.<string>} file in JSON form
|
|
107
121
|
*/
|
|
108
122
|
export function getExpectedJson(mid, type, action) {
|
|
109
|
-
return File.readJSON(
|
|
123
|
+
return File.readJSON(`./test/resources/${mid}/${type}/${action}-expected.json`);
|
|
110
124
|
}
|
|
111
125
|
/**
|
|
112
126
|
* gets file from resources folder which should be used for comparison
|
|
113
127
|
*
|
|
114
|
-
* @param {
|
|
128
|
+
* @param {string} mid of Business Unit
|
|
115
129
|
* @param {string} type of metadata
|
|
116
130
|
* @param {string} action of SOAP request
|
|
117
131
|
* @param {string} ext file extension
|
|
118
|
-
* @returns {string} file
|
|
132
|
+
* @returns {Promise.<string>} file in string form
|
|
119
133
|
*/
|
|
120
134
|
export function getExpectedFile(mid, type, action, ext) {
|
|
121
|
-
return
|
|
135
|
+
return File.readFile(`./test/resources/${mid}/${type}/${action}-expected.${ext}`, 'utf8');
|
|
122
136
|
}
|
|
123
137
|
/**
|
|
124
138
|
* setup mocks for API and FS
|
|
@@ -127,10 +141,34 @@ export function getExpectedFile(mid, type, action, ext) {
|
|
|
127
141
|
* @returns {void}
|
|
128
142
|
*/
|
|
129
143
|
export function mockSetup(isDeploy) {
|
|
144
|
+
// no need to execute this again if we ran it a 2nd time for deploy - already done in standard setup
|
|
130
145
|
if (!isDeploy) {
|
|
131
|
-
//
|
|
132
|
-
handler.setOptions({
|
|
146
|
+
// reset all options to default
|
|
147
|
+
handler.setOptions({
|
|
148
|
+
// test config
|
|
149
|
+
debug: true,
|
|
150
|
+
noLogFile: true,
|
|
151
|
+
// reset
|
|
152
|
+
api: undefined,
|
|
153
|
+
keySuffix: undefined,
|
|
154
|
+
changeKeyField: undefined,
|
|
155
|
+
changeKeyValue: undefined,
|
|
156
|
+
commitHistory: undefined,
|
|
157
|
+
errorLog: undefined,
|
|
158
|
+
execute: undefined,
|
|
159
|
+
filter: undefined,
|
|
160
|
+
fixShared: undefined,
|
|
161
|
+
fromRetrieve: undefined,
|
|
162
|
+
json: undefined,
|
|
163
|
+
like: undefined,
|
|
164
|
+
noMidSuffix: undefined,
|
|
165
|
+
refresh: undefined,
|
|
166
|
+
_runningTest: undefined,
|
|
167
|
+
schedule: undefined,
|
|
168
|
+
skipInteraction: undefined,
|
|
169
|
+
});
|
|
133
170
|
}
|
|
171
|
+
// @ts-expect-error somehow, MockAdapter does not expect type AxiosInstance
|
|
134
172
|
apimock = new MockAdapter(axiosInstance, { onNoMatch: 'throwException' });
|
|
135
173
|
// set access_token to mid to allow for autorouting of mock to correct resources
|
|
136
174
|
apimock.onPost(authResources.success.url).reply((config) => {
|
|
@@ -142,6 +180,9 @@ export function mockSetup(isDeploy) {
|
|
|
142
180
|
.onAny(new RegExp(`^${escapeRegExp(restUrl)}`))
|
|
143
181
|
.reply((config) => handleRESTRequest(config));
|
|
144
182
|
const fsMockConf = {
|
|
183
|
+
'.beautyamp.json': fsmock.load(
|
|
184
|
+
path.resolve(__dirname, '../boilerplate/files/.beautyamp.json')
|
|
185
|
+
),
|
|
145
186
|
'.prettierrc': fsmock.load(path.resolve(__dirname, '../boilerplate/files/.prettierrc')),
|
|
146
187
|
'.eslintrc': fsmock.load(path.resolve(__dirname, '../boilerplate/files/.eslintrc')),
|
|
147
188
|
'.eslintignore': fsmock.load(path.resolve(__dirname, '../boilerplate/files/.eslintignore')),
|
|
@@ -168,6 +209,7 @@ export function mockSetup(isDeploy) {
|
|
|
168
209
|
'node_modules/sql-formatter': fsmock.load(
|
|
169
210
|
path.resolve(__dirname, '../node_modules/sql-formatter')
|
|
170
211
|
),
|
|
212
|
+
'node_modules/jsox': fsmock.load(path.resolve(__dirname, '../node_modules/jsox')),
|
|
171
213
|
'node_modules/nearley': fsmock.load(path.resolve(__dirname, '../node_modules/nearley')),
|
|
172
214
|
};
|
|
173
215
|
if (isDeploy) {
|
|
@@ -218,6 +260,19 @@ export function getAPIHistoryLength(includeToken) {
|
|
|
218
260
|
export function getAPIHistory() {
|
|
219
261
|
return apimock.history;
|
|
220
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
*
|
|
265
|
+
* @param {'patch'|'delete'|'post'|'get'|'put'} method http method
|
|
266
|
+
* @param {string} url url without domain, end on % if you want to search with startsWith()
|
|
267
|
+
* @returns {object} json payload of the request
|
|
268
|
+
*/
|
|
269
|
+
export function getRestCallout(method, url) {
|
|
270
|
+
const subset = apimock.history[method];
|
|
271
|
+
const myCallout = subset.find((item) =>
|
|
272
|
+
url.endsWith('%') ? item.url.startsWith(url.slice(0, -1)) : item.url === url
|
|
273
|
+
);
|
|
274
|
+
return JSON.parse(myCallout.data);
|
|
275
|
+
}
|
|
221
276
|
/**
|
|
222
277
|
* helper to return most important fields for each api call
|
|
223
278
|
*
|
|
@@ -251,5 +306,5 @@ export function logAPIHistoryDebug() {
|
|
|
251
306
|
* @returns {string} escaped string
|
|
252
307
|
*/
|
|
253
308
|
function escapeRegExp(str) {
|
|
254
|
-
return str.replaceAll(/[.*+?^${}()|[\]\\]/g,
|
|
309
|
+
return str.replaceAll(/[.*+?^${}()|[\]\\]/g, String.raw`\$&`); // $& means the whole matched string
|
|
255
310
|
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
// Change this to match your project
|
|
3
|
+
"include": ["lib/**/*"],
|
|
4
|
+
"compilerOptions": {
|
|
5
|
+
// Tells TypeScript to read JS files, as
|
|
6
|
+
// normally they are ignored as source files
|
|
7
|
+
"allowJs": true,
|
|
8
|
+
// Generate d.ts files
|
|
9
|
+
"declaration": true,
|
|
10
|
+
// This compiler run should
|
|
11
|
+
// only output d.ts files
|
|
12
|
+
"emitDeclarationOnly": true,
|
|
13
|
+
// Types should go into this directory.
|
|
14
|
+
// Removing this would place the .d.ts files
|
|
15
|
+
// next to the .js files
|
|
16
|
+
"outDir": "@types",
|
|
17
|
+
// go to js file when using IDE functions like
|
|
18
|
+
// "Go to Definition" in VSCode
|
|
19
|
+
"declarationMap": true
|
|
20
|
+
}
|
|
21
|
+
}
|
package/types/mcdev.d.js
CHANGED
|
@@ -1,28 +1,26 @@
|
|
|
1
|
-
import SDK from 'sfmc-sdk';
|
|
2
1
|
/**
|
|
3
|
-
* @ignore
|
|
4
2
|
* @typedef {object} BuObject
|
|
5
|
-
* @property {string} clientId installed package client id
|
|
6
|
-
* @property {string} clientSecret installed package client secret
|
|
7
|
-
* @property {string} tenant subdomain part of Authentication Base Uri
|
|
8
|
-
* @property {
|
|
9
|
-
* @property {
|
|
3
|
+
* @property {string} [clientId] installed package client id
|
|
4
|
+
* @property {string} [clientSecret] installed package client secret
|
|
5
|
+
* @property {string} [tenant] subdomain part of Authentication Base Uri
|
|
6
|
+
* @property {number} [eid] Enterprise ID = MID of the parent BU
|
|
7
|
+
* @property {number} [mid] MID of the BU to work with
|
|
10
8
|
* @property {string} [businessUnit] name of the BU to interact with
|
|
11
9
|
* @property {string} [credential] name of the credential to interact with
|
|
12
10
|
*/
|
|
13
11
|
/**
|
|
14
12
|
* @typedef {Object.<string, string>} TemplateMap
|
|
15
|
-
* @typedef {'
|
|
16
|
-
* @typedef {Object.<
|
|
13
|
+
* @typedef {'asset'|'asset-archive'|'asset-asset'|'asset-audio'|'asset-block'|'asset-code'|'asset-document'|'asset-image'|'asset-message'|'asset-other'|'asset-rawimage'|'asset-template'|'asset-textfile'|'asset-video'|'attributeGroup'|'attributeSet'|'automation'|'campaign'|'contentArea'|'dataExtension'|'dataExtensionField'|'dataExtensionTemplate'|'dataExtract'|'dataExtractType'|'discovery'|'deliveryProfile'|'email'|'emailSend'|'event'|'fileLocation'|'fileTransfer'|'filter'|'folder'|'importFile'|'journey'|'list'|'mobileCode'|'mobileKeyword'|'mobileMessage'|'query'|'role'|'script'|'sendClassification'|'senderProfile'|'transactionalEmail'|'transactionalPush'|'transactionalSMS'|'triggeredSend'|'user'|'verification'} SupportedMetadataTypes
|
|
14
|
+
* @typedef {Object.<string, string[] | null>} TypeKeyCombo object-key=SupportedMetadataTypes, value=array of external keys
|
|
17
15
|
*/
|
|
18
16
|
|
|
19
17
|
/**
|
|
20
|
-
* @typedef {Object.<
|
|
18
|
+
* @typedef {Object.<any, any>} MetadataTypeItem generic metadata item
|
|
21
19
|
* @typedef {Object.<string, MetadataTypeItem>} MetadataTypeMap key=customer key
|
|
22
20
|
* @typedef {Object.<string, MetadataTypeMap>} MultiMetadataTypeMap key=Supported MetadataType
|
|
23
21
|
* @typedef {Object.<string, MetadataTypeItem[]>} MultiMetadataTypeList key=Supported MetadataType
|
|
24
|
-
* @typedef {{metadata: MetadataTypeMap, type:
|
|
25
|
-
* @typedef {{metadata: MetadataTypeItem, type:
|
|
22
|
+
* @typedef {{metadata: MetadataTypeMap, type: string}} MetadataTypeMapObj
|
|
23
|
+
* @typedef {{metadata: MetadataTypeItem, type: string}} MetadataTypeItemObj
|
|
26
24
|
* @typedef {Object.<number, MultiMetadataTypeMap>} Cache key=MID
|
|
27
25
|
* @typedef {{before: MetadataTypeItem, after: MetadataTypeItem}} MetadataTypeItemDiff used during update
|
|
28
26
|
*/
|
|
@@ -46,22 +44,20 @@ import SDK from 'sfmc-sdk';
|
|
|
46
44
|
* @property {string} name name
|
|
47
45
|
* @property {string} key key
|
|
48
46
|
* @property {string} description -
|
|
47
|
+
* @property {string} [targetId] Object ID of DE (removed before save)
|
|
49
48
|
* @property {string} targetKey key of target data extension
|
|
49
|
+
* @property {string} r__dataExtension_key key of target data extension
|
|
50
50
|
* @property {string} createdDate e.g. "2020-09-14T01:42:03.017"
|
|
51
51
|
* @property {string} modifiedDate e.g. "2020-09-14T01:42:03.017"
|
|
52
52
|
* @property {'Overwrite'|'Update'|'Append'} targetUpdateTypeName defines how the query writes into the target data extension
|
|
53
|
-
* @property {0|1|2
|
|
54
|
-
* @property {string} [targetId] Object ID of DE (removed before save)
|
|
53
|
+
* @property {number} [targetUpdateTypeId] 0|1|2, mapped to targetUpdateTypeName via this.definition.targetUpdateTypeMapping
|
|
55
54
|
* @property {string} [targetDescription] Description DE (removed before save)
|
|
56
55
|
* @property {boolean} isFrozen looks like this is always set to false
|
|
57
56
|
* @property {string} [queryText] contains SQL query with line breaks converted to '\n'. The content is extracted during retrieval and written into a separate *.sql file
|
|
58
57
|
* @property {string} [categoryId] holds folder ID, replaced with r__folder_Path during retrieve
|
|
59
58
|
* @property {string} r__folder_Path folder path in which this DE is saved
|
|
59
|
+
* @property {string} [queryDefinitionId] Object ID of query
|
|
60
60
|
* @typedef {Object.<string, QueryItem>} QueryMap
|
|
61
|
-
* @typedef {object} CodeExtractItem
|
|
62
|
-
* @property {QueryItem} json metadata of one item w/o code
|
|
63
|
-
* @property {CodeExtract[]} codeArr list of code snippets in this item
|
|
64
|
-
* @property {string[]} subFolder mostly set to null, otherwise list of subfolders
|
|
65
61
|
*/
|
|
66
62
|
/**
|
|
67
63
|
* @typedef {object} ScriptItem
|
|
@@ -90,10 +86,14 @@ import SDK from 'sfmc-sdk';
|
|
|
90
86
|
* @property {string} [Name_new] custom attribute that is only used when trying to rename a field from Name to Name_new
|
|
91
87
|
* @property {string} DefaultValue empty string for not set
|
|
92
88
|
* @property {true|false} IsRequired -
|
|
89
|
+
* @property {true|false} [IsNullable] opposite of IsRequired
|
|
93
90
|
* @property {true|false} IsPrimaryKey -
|
|
94
|
-
* @property {
|
|
91
|
+
* @property {number} Ordinal 1, 2, 3, ...
|
|
95
92
|
* @property {'Text'|'Number'|'Date'|'Boolean'|'Decimal'|'EmailAddress'|'Phone'|'Locale'} FieldType can only be set on create
|
|
93
|
+
* @property {number|string} MaxLength field length
|
|
96
94
|
* @property {string} Scale the number of places after the decimal that the field can hold; example: "0","1", ...
|
|
95
|
+
*/
|
|
96
|
+
/**
|
|
97
97
|
* @typedef {Object.<string, DataExtensionFieldItem>} DataExtensionFieldMap
|
|
98
98
|
*/
|
|
99
99
|
/**
|
|
@@ -113,13 +113,25 @@ import SDK from 'sfmc-sdk';
|
|
|
113
113
|
* @property {'dataextension'|'salesforcedataextension'|'synchronizeddataextension'|'shared_dataextension'|'shared_salesforcedataextension'} r__folder_ContentType retrieved from associated folder
|
|
114
114
|
* @property {string} r__folder_Path folder path in which this DE is saved
|
|
115
115
|
* @property {string} [CategoryID] holds folder ID, replaced with r__folder_Path during retrieve
|
|
116
|
-
* @property {string} [
|
|
116
|
+
* @property {string} [r__dataExtensionTemplate_name] name of optionally associated DE template
|
|
117
117
|
* @property {object} [Template] -
|
|
118
118
|
* @property {string} [Template.CustomerKey] key of optionally associated DE teplate
|
|
119
|
+
* @property {string} RetainUntil empty string or US date + 12:00:00 AM
|
|
120
|
+
* @property {string} c__retainUntil YYYY-MM-DD
|
|
121
|
+
* @property {'none'|'allRecordsAndDataextension'|'allRecords'|'individialRecords'} [c__retentionPolicy] readable name of retention policy
|
|
122
|
+
* @property {number} [DataRetentionPeriodLength] number of days/weeks/months/years before retention kicks in
|
|
123
|
+
* @property {number} [DataRetentionPeriodUnitOfMeasure] 3:Days, 4:Weeks, 5:Months, 6:Years
|
|
124
|
+
* @property {string} [c__dataRetentionPeriodUnitOfMeasure] 3:Days, 4:Weeks, 5:Months, 6:Years
|
|
125
|
+
* @property {boolean} [RowBasedRetention] true for retention policy individialRecords
|
|
126
|
+
* @property {boolean} ResetRetentionPeriodOnImport ?
|
|
127
|
+
* @property {boolean} [DeleteAtEndOfRetentionPeriod] true for retention policy allRecords
|
|
128
|
+
*/
|
|
129
|
+
/**
|
|
119
130
|
* @typedef {Object.<string, DataExtensionItem>} DataExtensionMap
|
|
120
131
|
*/
|
|
121
132
|
/**
|
|
122
133
|
* @typedef {object} UserDocument
|
|
134
|
+
* @property {'User'|'Installed Package'|'Inactivated User'} TYPE -
|
|
123
135
|
* @property {string} [ID] equal to UserID; optional in update/create calls
|
|
124
136
|
* @property {string} UserID equal to ID; required in update/create calls
|
|
125
137
|
* @property {number} [AccountUserID] user.AccountUserID
|
|
@@ -131,7 +143,7 @@ import SDK from 'sfmc-sdk';
|
|
|
131
143
|
* @property {boolean} ActiveFlag user.ActiveFlag === true ? '✓' : '-'
|
|
132
144
|
* @property {boolean} IsAPIUser user.IsAPIUser === true ? '✓' : '-'
|
|
133
145
|
* @property {boolean} MustChangePassword user.MustChangePassword === true ? '✓' : '-'
|
|
134
|
-
* @property {number} DefaultBusinessUnit
|
|
146
|
+
* @property {number} DefaultBusinessUnit default MID; BUName after we resolved it
|
|
135
147
|
* @property {number[]} c__AssociatedBusinessUnits associatedBus
|
|
136
148
|
* @property {object} [Roles] (API only)
|
|
137
149
|
* @property {object[]} [Roles.Role] roles (API only)
|
|
@@ -142,27 +154,39 @@ import SDK from 'sfmc-sdk';
|
|
|
142
154
|
* @property {string} ModifiedDate user.ModifiedDate
|
|
143
155
|
* @property {object} Client -
|
|
144
156
|
* @property {number} [Client.ID] EID e.g:7281698
|
|
145
|
-
* @property {number} Client.ModifiedBy AccountUserID of user who last modified this user
|
|
157
|
+
* @property {number} [Client.ModifiedBy] AccountUserID of user who last modified this user
|
|
146
158
|
* @property {'User'|'Installed Package'} c__type -
|
|
147
|
-
* @property {boolean} [IsLocked] (API only)
|
|
159
|
+
* @property {boolean|string} [IsLocked] (API only)
|
|
148
160
|
* @property {boolean} [Unlock] used to unlock a user that has IsLocked === true
|
|
149
161
|
* @property {boolean} c__IsLocked_readOnly copy of IsLocked
|
|
150
162
|
* @property {string} c__TimeZoneName name of timezone
|
|
151
163
|
* @property {object} [TimeZone] (API only)
|
|
152
164
|
* @property {string} [TimeZone.Name] (API only)
|
|
153
165
|
* @property {string} [TimeZone.ID] (API only)
|
|
166
|
+
* @property {string} [Password] only used to set the password. cannot be retrieved
|
|
154
167
|
* @property {'en-US'|'fr-CA'|'fr-FR'|'de-DE'|'it-IT'|'ja-JP'|'pt-BR'|'es-419'|'es-ES'} c__LocaleCode fr-CA, en-US, ...
|
|
155
168
|
* @property {object} [Locale] (API only)
|
|
156
169
|
* @property {'en-US'|'fr-CA'|'fr-FR'|'de-DE'|'it-IT'|'ja-JP'|'pt-BR'|'es-419'|'es-ES'} [Locale.LocaleCode] (API only)
|
|
170
|
+
* @property {object} [SsoIdentity] -
|
|
171
|
+
* @property {Array|object} [SsoIdentities] -
|
|
172
|
+
*/
|
|
173
|
+
/**
|
|
157
174
|
* @typedef {{before:UserDocument,after:UserDocument}} UserDocumentDiff
|
|
158
175
|
* @typedef {Object.<string, UserDocument>} UserDocumentMap key=customer key
|
|
159
176
|
*/
|
|
177
|
+
/**
|
|
178
|
+
* @typedef {UserDocument & object} UserDocumentDocument
|
|
179
|
+
* @property {boolean | string} ActiveFlag user.ActiveFlag === true ? '✓' : '-'
|
|
180
|
+
* @property {boolean | string} IsAPIUser user.IsAPIUser === true ? '✓' : '-'
|
|
181
|
+
* @property {boolean | string} MustChangePassword user.MustChangePassword === true ? '✓' : '-'
|
|
182
|
+
* @property {number | string} DefaultBusinessUnit default MID; BUName after we resolved it
|
|
183
|
+
*/
|
|
160
184
|
/**
|
|
161
185
|
* @typedef {object} AccountUserConfiguration
|
|
162
186
|
* @property {object} Client wrapper
|
|
163
187
|
* @property {number} Client.ID EID e.g:7281698
|
|
164
188
|
* @property {string} [PartnerKey] empty string
|
|
165
|
-
* @property {number} ID User ID e.g:717133502
|
|
189
|
+
* @property {number | string} ID User ID e.g:717133502
|
|
166
190
|
* @property {string} [ObjectID] empty string
|
|
167
191
|
* @property {number} [Delete] 0,1
|
|
168
192
|
* @property {BusinessUnitAssignmentConfiguration} BusinessUnitAssignmentConfiguration -
|
|
@@ -174,8 +198,9 @@ import SDK from 'sfmc-sdk';
|
|
|
174
198
|
|
|
175
199
|
/**
|
|
176
200
|
* @typedef {object} AutomationActivity
|
|
177
|
-
* @property {string}
|
|
178
|
-
* @property {string} [
|
|
201
|
+
* @property {string} r__key key of associated activity
|
|
202
|
+
* @property {string} [name] name (not key) of associated activity
|
|
203
|
+
* @property {number} [objectTypeId] Id of assoicated activity type; see this.definition.activityTypeMapping
|
|
179
204
|
* @property {string} [activityObjectId] Object Id of assoicated metadata item
|
|
180
205
|
* @property {number} [displayOrder] order within step; starts with 1 or higher number
|
|
181
206
|
* @property {string} r__type see this.definition.activityTypeMapping
|
|
@@ -190,17 +215,23 @@ import SDK from 'sfmc-sdk';
|
|
|
190
215
|
*/
|
|
191
216
|
/**
|
|
192
217
|
* @typedef {object} AutomationSchedule REST format
|
|
193
|
-
* @property {number} typeId
|
|
218
|
+
* @property {number} typeId equals schedule.scheduleTypeId; upsert endpoint requires scheduleTypeId. retrieve endpoint returns typeId
|
|
219
|
+
* @property {number} [scheduleTypeId] equals schedule.typeId; upsert endpoint requires scheduleTypeId. retrieve endpoint returns typeId
|
|
194
220
|
* @property {string} startDate example: '2021-05-07T09:00:00'
|
|
195
221
|
* @property {string} endDate example: '2021-05-07T09:00:00'
|
|
196
222
|
* @property {string} icalRecur example: 'FREQ=DAILY;UNTIL=20790606T160000;INTERVAL=1'
|
|
197
223
|
* @property {string} timezoneName example: 'W. Europe Standard Time'; see this.definition.timeZoneMapping
|
|
198
224
|
* @property {number} [timezoneId] see this.definition.timeZoneMapping
|
|
225
|
+
* @property {number} [rangeTypeId] ?
|
|
226
|
+
* @property {any} [pattern] ?
|
|
227
|
+
* @property {any} [scheduledTime] ?
|
|
228
|
+
* @property {string} [scheduledStatus] ?
|
|
199
229
|
*/
|
|
200
230
|
/**
|
|
201
231
|
* @typedef {object} AutomationScheduleSoap SOAP format
|
|
232
|
+
* @property {string} [RecurrenceType] 'Minutely'|'Hourly'|'Daily'|'Weekly'|'Monthly'|'Yearly'
|
|
202
233
|
* @property {object} Recurrence -
|
|
203
|
-
* @property {object} Recurrence.$ {'xsi:type': keyStem + 'lyRecurrence'}
|
|
234
|
+
* @property {object} [Recurrence.$] {'xsi:type': keyStem + 'lyRecurrence'}
|
|
204
235
|
* @property {'ByYear'} [Recurrence.YearlyRecurrencePatternType] * currently not supported by tool *
|
|
205
236
|
* @property {'ByMonth'} [Recurrence.MonthlyRecurrencePatternType] * currently not supported by tool *
|
|
206
237
|
* @property {'ByWeek'} [Recurrence.WeeklyRecurrencePatternType] * currently not supported by tool *
|
|
@@ -213,24 +244,32 @@ import SDK from 'sfmc-sdk';
|
|
|
213
244
|
* @property {number} [Recurrence.DayInterval] 1..n
|
|
214
245
|
* @property {number} [Recurrence.HourInterval] 1..n
|
|
215
246
|
* @property {number} [Recurrence.MinuteInterval] 1..n
|
|
216
|
-
* @property {number} _interval internal variable for CLI output only
|
|
247
|
+
* @property {number} [_interval] internal variable for CLI output only
|
|
217
248
|
* @property {object} TimeZone -
|
|
218
249
|
* @property {number} TimeZone.ID AutomationSchedule.timezoneId
|
|
219
|
-
* @property {
|
|
250
|
+
* @property {true} [TimeZone.IDSpecified] always true
|
|
251
|
+
* @property {string} [_timezoneString] internal variable for CLI output only
|
|
220
252
|
* @property {string} StartDateTime AutomationSchedule.startDate
|
|
221
|
-
* @property {string}
|
|
222
|
-
* @property {string}
|
|
253
|
+
* @property {string} [_StartDateTime] AutomationSchedule.startDate; internal variable for CLI output only
|
|
254
|
+
* @property {string} [EndDateTime] AutomationSchedule.endDate
|
|
223
255
|
* @property {'EndOn'|'EndAfter'} RecurrenceRangeType set to 'EndOn' if AutomationSchedule.icalRecur contains 'UNTIL'; otherwise to 'EndAfter'
|
|
224
|
-
* @property {number} Occurrences only exists if RecurrenceRangeType=='EndAfter'
|
|
256
|
+
* @property {number} [Occurrences] only exists if RecurrenceRangeType=='EndAfter'
|
|
225
257
|
*/
|
|
226
258
|
/**
|
|
227
259
|
* @typedef {object} AutomationItem
|
|
228
|
-
* @property {string}
|
|
229
|
-
* @property {string}
|
|
230
|
-
* @property {string}
|
|
231
|
-
* @property {string}
|
|
232
|
-
* @property {
|
|
233
|
-
* @property {
|
|
260
|
+
* @property {string} id Object Id
|
|
261
|
+
* @property {string} [legacyId] legacy Object Id - used for handling notifications
|
|
262
|
+
* @property {string} [ObjectID] Object Id as returned by SOAP API
|
|
263
|
+
* @property {string} [programId] legacy id
|
|
264
|
+
* @property {string} key key (Rest API)
|
|
265
|
+
* @property {string} [CustomerKey] key (SOAP API)
|
|
266
|
+
* @property {string} [name] name (Rest API)
|
|
267
|
+
* @property {string} [Name] name (SOAP API)
|
|
268
|
+
* @property {any} [notifications] notifications
|
|
269
|
+
* @property {string} [description] -
|
|
270
|
+
* @property {'scheduled'|'triggered'} [type] Starting Source = Schedule / File Drop
|
|
271
|
+
* @property {'Scheduled'|'Running'|'Ready'|'Building'|'PausedSchedule'|'InactiveTrigger'} [status] automation status
|
|
272
|
+
* @property {number} [statusId] automation status
|
|
234
273
|
* @property {AutomationSchedule} [schedule] only existing if type=scheduled
|
|
235
274
|
* @property {object} [fileTrigger] only existing if type=triggered
|
|
236
275
|
* @property {string} fileTrigger.fileNamingPattern file name with placeholders
|
|
@@ -242,13 +281,13 @@ import SDK from 'sfmc-sdk';
|
|
|
242
281
|
* @property {object} [startSource] -
|
|
243
282
|
* @property {AutomationSchedule} [startSource.schedule] rewritten to AutomationItem.schedule
|
|
244
283
|
* @property {object} [startSource.fileDrop] rewritten to AutomationItem.fileTrigger
|
|
245
|
-
* @property {string} startSource.fileDrop.
|
|
246
|
-
* @property {
|
|
284
|
+
* @property {string} startSource.fileDrop.fileNamePattern file name with placeholders
|
|
285
|
+
* @property {number} startSource.fileDrop.fileNamePatternTypeId -
|
|
247
286
|
* @property {string} startSource.fileDrop.folderLocation -
|
|
248
287
|
* @property {boolean} startSource.fileDrop.queueFiles -
|
|
249
288
|
* @property {number} startSource.typeId -
|
|
250
|
-
* @property {AutomationStep[]} steps -
|
|
251
|
-
* @property {string} r__folder_Path folder path
|
|
289
|
+
* @property {AutomationStep[]} [steps] -
|
|
290
|
+
* @property {string} [r__folder_Path] folder path
|
|
252
291
|
* @property {string} [categoryId] holds folder ID, replaced with r__folder_Path during retrieve
|
|
253
292
|
*/
|
|
254
293
|
/**
|
|
@@ -262,14 +301,15 @@ import SDK from 'sfmc-sdk';
|
|
|
262
301
|
* @property {string} notificationEmailAddress email address to send notification to; empty string if shouldEmailOnFailure=false
|
|
263
302
|
* @property {string} notificationEmailMessage email message to send; empty string if shouldEmailOnFailure=false
|
|
264
303
|
* @property {number} createdBy user id of creator
|
|
265
|
-
* @property {string}
|
|
304
|
+
* @property {string} [targetObjectId] ObjectID of target data extension
|
|
305
|
+
* @property {string} r__dataExtension_key key of target data extension
|
|
266
306
|
*/
|
|
267
307
|
|
|
268
308
|
/**
|
|
269
309
|
* @typedef {Object.<string, AutomationItem>} AutomationMap
|
|
270
310
|
* @typedef {{metadata:AutomationMap,type:string}} AutomationMapObj
|
|
271
|
-
* @typedef {{metadata:AutomationItem,type:string}} AutomationItemObj
|
|
272
|
-
* @typedef {object}
|
|
311
|
+
* @typedef {{metadata:object | AutomationItem,type:string}} AutomationItemObj
|
|
312
|
+
* @typedef {object} McdevDeltaPkgItem
|
|
273
313
|
* @property {string} file relative path to file
|
|
274
314
|
* @property {number} changes changed lines
|
|
275
315
|
* @property {number} insertions added lines
|
|
@@ -277,23 +317,39 @@ import SDK from 'sfmc-sdk';
|
|
|
277
317
|
* @property {boolean} binary is a binary file
|
|
278
318
|
* @property {boolean} moved git thinks this file was moved
|
|
279
319
|
* @property {string} [fromPath] git thinks this relative path is where the file was before
|
|
280
|
-
* @property {
|
|
320
|
+
* @property {string} type metadata type
|
|
281
321
|
* @property {string} externalKey key
|
|
282
322
|
* @property {string} name name
|
|
283
323
|
* @property {'move'|'add/update'|'delete'} gitAction what git recognized as an action
|
|
284
324
|
* @property {string} _credential mcdev credential name
|
|
285
325
|
* @property {string} _businessUnit mcdev business unit name inside of _credential
|
|
286
|
-
* @typedef {
|
|
326
|
+
* @typedef {import('simple-git').DiffResultTextFile & McdevDeltaPkgItem} DeltaPkgItem
|
|
327
|
+
*/
|
|
328
|
+
/**
|
|
329
|
+
* @typedef {import('sfmc-sdk/auth').default} SDKauth
|
|
330
|
+
* @typedef {import('sfmc-sdk/rest').default} SDKrest
|
|
331
|
+
* @typedef {import('sfmc-sdk/soap').default} SDKsoap
|
|
332
|
+
* @typedef {import('sfmc-sdk/util').RestError} RestError
|
|
333
|
+
* @typedef {import('sfmc-sdk/util').SOAPError} SOAPError
|
|
334
|
+
* @typedef {SOAPError & RestError} SDKError
|
|
335
|
+
* @typedef {object} SDK
|
|
336
|
+
* @property {SDKauth} auth SDKauth
|
|
337
|
+
* @property {SDKrest} rest SDKrest
|
|
338
|
+
* @property {SDKsoap} soap SDKsoap
|
|
287
339
|
*/
|
|
288
340
|
|
|
289
341
|
/**
|
|
290
|
-
* @typedef {object}
|
|
291
|
-
* @property {string} client_id client id of installed package
|
|
292
|
-
* @property {string} client_secret client secret of installed package
|
|
293
|
-
* @property {string} auth_url tenant specific auth url of installed package
|
|
294
|
-
* @property {number} account_id MID of the Parent Business Unit
|
|
295
|
-
* @property {string} credentialName how you would like the credential to be named
|
|
296
|
-
* @property {string} gitRemoteUrl URL of Git remote server
|
|
342
|
+
* @typedef {object} SkipInteraction signals what to insert automatically for things usually asked via wizard
|
|
343
|
+
* @property {string} [client_id] client id of installed package
|
|
344
|
+
* @property {string} [client_secret] client secret of installed package
|
|
345
|
+
* @property {string} [auth_url] tenant specific auth url of installed package
|
|
346
|
+
* @property {number} [account_id] MID of the Parent Business Unit
|
|
347
|
+
* @property {string} [credentialName] how you would like the credential to be named
|
|
348
|
+
* @property {string} [gitRemoteUrl] URL of Git remote server
|
|
349
|
+
* @property {boolean} [fixKeysReretrieve] will trigger re-downloading latest versions of dependent types after fixing keys
|
|
350
|
+
* @property {string} [gitPush] used by mcdev init to directly push to a remote
|
|
351
|
+
* @property {string} [developmentBu] used by mcdev init to directly push to a remote
|
|
352
|
+
* @property {string} [downloadBUs] used by mcdev init to directly push to a remote
|
|
297
353
|
*/
|
|
298
354
|
|
|
299
355
|
/**
|
|
@@ -308,14 +364,62 @@ import SDK from 'sfmc-sdk';
|
|
|
308
364
|
* @typedef {object} SoapRequestParams
|
|
309
365
|
* @property {string} [continueRequest] request id
|
|
310
366
|
* @property {object} [options] additional options (CallsInConversation, Client, ConversationID, Priority, RequestType, SaveOptions, ScheduledTime, SendResponseTo, SequenceCode)
|
|
311
|
-
* @property {*} clientIDs ?
|
|
312
|
-
* @property {
|
|
367
|
+
* @property {*} [clientIDs] ?
|
|
368
|
+
* @property {SoapSDKFilter} [filter] simple or complex
|
|
313
369
|
complex
|
|
314
370
|
* @property {boolean} [QueryAllAccounts] all BUs or just one
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
* @
|
|
318
|
-
* @property {string
|
|
371
|
+
*/
|
|
372
|
+
/**
|
|
373
|
+
* @typedef {object} SoapFilterSimple
|
|
374
|
+
* @property {string} property field
|
|
375
|
+
* @property {'equals'|'notEquals'|'isNull'|'isNotNull'|'greaterThan'|'lessThan'|'greaterThanOrEqual'|'lessThanOrEqual'|'between'|'IN'|'in'|'like'} simpleOperator various options
|
|
376
|
+
* @property {string | number | boolean | string[] | number[]} [value] field value
|
|
377
|
+
*/
|
|
378
|
+
/**
|
|
379
|
+
* @typedef {object} SoapFilterComplex
|
|
380
|
+
* @property {SoapSDKFilter} leftOperand string for simple or a new filter-object for complex
|
|
381
|
+
* @property {'AND'|'OR'} logicalOperator various options
|
|
382
|
+
* @property {SoapSDKFilter} rightOperand string for simple or a new filter-object for complex; omit for isNull and isNotNull
|
|
383
|
+
*/
|
|
384
|
+
/**
|
|
385
|
+
* @typedef {object} SoapSDKFilterSimple
|
|
386
|
+
* @property {SoapFilterSimple["property"]} leftOperand string for simple or a new filter-object for complex
|
|
387
|
+
* @property {SoapFilterSimple["simpleOperator"]} operator various options
|
|
388
|
+
* @property {SoapFilterSimple["value"]} [rightOperand] string for simple or a new filter-object for complex; omit for isNull and isNotNull
|
|
389
|
+
*/
|
|
390
|
+
/**
|
|
391
|
+
* @typedef {object} SoapSDKFilterComplex
|
|
392
|
+
* @property {SoapFilterComplex["leftOperand"]} leftOperand string for simple or a new filter-object for complex
|
|
393
|
+
* @property {SoapFilterComplex["logicalOperator"]} operator various options
|
|
394
|
+
* @property {SoapFilterComplex["rightOperand"]} rightOperand string for simple or a new filter-object for complex; omit for isNull and isNotNull
|
|
395
|
+
*/
|
|
396
|
+
/**
|
|
397
|
+
* @typedef {SoapSDKFilterSimple | SoapSDKFilterComplex} SoapSDKFilter
|
|
398
|
+
*/
|
|
399
|
+
|
|
400
|
+
/**
|
|
401
|
+
* @typedef {object} AssetRequestParams
|
|
402
|
+
* @property {string} [continueRequest] request id
|
|
403
|
+
* @property {object} [options] additional options (CallsInConversation, Client, ConversationID, Priority, RequestType, SaveOptions, ScheduledTime, SendResponseTo, SequenceCode)
|
|
404
|
+
* @property {*} [clientIDs] ?
|
|
405
|
+
complex
|
|
406
|
+
* @property {object} [page] pagination
|
|
407
|
+
* @property {string[]} [fields] list of fields we want returned
|
|
408
|
+
* @property {{property:string, direction: 'ASC'|'DESC'}[]} [sort] pagination
|
|
409
|
+
* @property {AssetFilter | AssetFilterSimple} [query] simple or complex filter
|
|
410
|
+
*/
|
|
411
|
+
|
|
412
|
+
/**
|
|
413
|
+
* @typedef {object} AssetFilter
|
|
414
|
+
* @property {AssetFilter | AssetFilterSimple} leftOperand string for simple or a new filter-object for complex
|
|
415
|
+
* @property {'AND'|'OR'} logicalOperator various options
|
|
416
|
+
* @property {SoapSDKFilter | AssetFilterSimple} [rightOperand] string for simple or a new filter-object for complex; omit for isNull and isNotNull
|
|
417
|
+
*/
|
|
418
|
+
/**
|
|
419
|
+
* @typedef {object} AssetFilterSimple
|
|
420
|
+
* @property {string} property field
|
|
421
|
+
* @property {'equal'|'notEquals'|'isNull'|'isNotNull'|'greaterThan'|'lessThan'|'greaterThanOrEqual'|'lessThanOrEqual'|'between'|'IN'|'in'|'like'} simpleOperator various options
|
|
422
|
+
* @property {string | number | boolean | Array} value field value
|
|
319
423
|
*/
|
|
320
424
|
|
|
321
425
|
/**
|
|
@@ -338,13 +442,33 @@ complex
|
|
|
338
442
|
*/
|
|
339
443
|
|
|
340
444
|
/**
|
|
341
|
-
* @typedef {
|
|
342
|
-
* @
|
|
343
|
-
* @property {
|
|
344
|
-
* @property {Function} verbose (msg) additional messages that are not important
|
|
345
|
-
* @property {Function} debug (msg) print debug message
|
|
445
|
+
* @typedef {'error'|'verbose'|'info'|'debug'} LoggerLevel
|
|
446
|
+
* @typedef {object} McdevLogger
|
|
447
|
+
* @property {LoggerLevel} [level] (msg) print info message
|
|
346
448
|
* @property {Function} error (msg) print error message
|
|
347
449
|
* @property {Function} errorStack (ex, msg) print error with trace message
|
|
450
|
+
* @typedef {import('winston').Logger & McdevLogger} Logger
|
|
451
|
+
*/
|
|
452
|
+
/**
|
|
453
|
+
* @typedef {{id: number, key: string, name: string}} AssetItemSimple
|
|
454
|
+
* @typedef {Object.<string, AssetItemSimple>} AssetItemSimpleMap
|
|
455
|
+
* @typedef {Object.<number, AssetItemSimple>} AssetItemIdSimpleMap
|
|
456
|
+
* @typedef {'id'|'key'|'name'} ContentBlockConversionTypes
|
|
457
|
+
*/
|
|
458
|
+
/**
|
|
459
|
+
* @typedef {object} ExplainType
|
|
460
|
+
* @property {string} name readable name of type
|
|
461
|
+
* @property {string} apiName api parameter name for type
|
|
462
|
+
* @property {string} description more info on what this type is about
|
|
463
|
+
* @property {boolean | string[]} retrieveByDefault is it retrieved by default OR list of subtypes that are retrieved by default
|
|
464
|
+
* @property {object} supports supported features
|
|
465
|
+
* @property {boolean} supports.retrieve can you download this type
|
|
466
|
+
* @property {boolean} supports.create can you create new records of this type
|
|
467
|
+
* @property {boolean} supports.update can you update records of this type
|
|
468
|
+
* @property {boolean} supports.delete can you delete records of this type
|
|
469
|
+
* @property {boolean} supports.changeKey can you change the key of existing records of this type
|
|
470
|
+
* @property {boolean} supports.buildTemplate can you apply templating on downloaded records of this type
|
|
471
|
+
* @property {boolean} supports.retrieveAsTemplate can you retrieve & template in one step
|
|
348
472
|
*/
|
|
349
473
|
|
|
350
474
|
export default {};
|