mcdev 8.2.1 → 8.3.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/.github/ISSUE_TEMPLATE/bug.yml +1 -0
- package/.github/workflows/code-test.yml +1 -1
- 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 +1 -1
- package/.github/workflows/npm-publish.yml +9 -5
- package/@types/lib/MetadataTypeDefinitions.d.ts +4 -0
- package/@types/lib/MetadataTypeDefinitions.d.ts.map +1 -1
- package/@types/lib/MetadataTypeInfo.d.ts +4 -0
- package/@types/lib/MetadataTypeInfo.d.ts.map +1 -1
- package/@types/lib/Retriever.d.ts.map +1 -1
- package/@types/lib/index.d.ts +20 -9
- package/@types/lib/index.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Asset.d.ts +3 -3
- package/@types/lib/metadataTypes/Asset.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Automation.d.ts +7 -7
- package/@types/lib/metadataTypes/Automation.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtension.d.ts +9 -9
- package/@types/lib/metadataTypes/DataExtension.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtensionField.d.ts +7 -0
- package/@types/lib/metadataTypes/DataExtensionField.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataFilter.d.ts +326 -0
- package/@types/lib/metadataTypes/DataFilter.d.ts.map +1 -0
- package/@types/lib/metadataTypes/DataFilterHidden.d.ts +164 -0
- package/@types/lib/metadataTypes/DataFilterHidden.d.ts.map +1 -0
- package/@types/lib/metadataTypes/Filter.d.ts +181 -6
- package/@types/lib/metadataTypes/Filter.d.ts.map +1 -1
- package/@types/lib/metadataTypes/FilterDefinition.d.ts +318 -0
- package/@types/lib/metadataTypes/FilterDefinition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/FilterDefinitionHidden.d.ts +156 -0
- package/@types/lib/metadataTypes/FilterDefinitionHidden.d.ts.map +1 -0
- package/@types/lib/metadataTypes/ImportFile.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Journey.d.ts +18 -0
- package/@types/lib/metadataTypes/Journey.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MobileKeyword.d.ts +2 -2
- package/@types/lib/metadataTypes/MobileKeyword.d.ts.map +1 -1
- package/@types/lib/metadataTypes/User.d.ts +1 -1
- package/@types/lib/metadataTypes/User.d.ts.map +1 -1
- package/@types/lib/metadataTypes/definitions/DataFilter.definition.d.ts +230 -0
- package/@types/lib/metadataTypes/definitions/DataFilter.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/DataFilterHidden.definition.d.ts +230 -0
- package/@types/lib/metadataTypes/definitions/DataFilterHidden.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Filter.definition.d.ts +203 -31
- package/@types/lib/metadataTypes/definitions/FilterDefinition.definition.d.ts +218 -0
- package/@types/lib/metadataTypes/definitions/FilterDefinition.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/FilterDefinitionHidden.definition.d.ts +218 -0
- package/@types/lib/metadataTypes/definitions/FilterDefinitionHidden.definition.d.ts.map +1 -0
- package/@types/lib/metadataTypes/definitions/Journey.definition.d.ts +18 -0
- package/@types/lib/util/devops.d.ts +1 -0
- package/@types/lib/util/devops.d.ts.map +1 -1
- package/@types/lib/util/replaceContentBlockReference.d.ts +3 -3
- package/@types/lib/util/replaceContentBlockReference.d.ts.map +1 -1
- package/@types/lib/util/util.d.ts.map +1 -1
- package/@types/lib/util/validations.d.ts.map +1 -1
- package/@types/types/mcdev.d.d.ts +296 -0
- package/@types/types/mcdev.d.d.ts.map +1 -1
- package/lib/MetadataTypeDefinitions.js +4 -0
- package/lib/MetadataTypeInfo.js +4 -0
- package/lib/Retriever.js +3 -0
- package/lib/index.js +87 -3
- package/lib/metadataTypes/DataExtensionField.js +21 -0
- package/lib/metadataTypes/DataFilter.js +653 -0
- package/lib/metadataTypes/DataFilterHidden.js +18 -0
- package/lib/metadataTypes/Filter.js +315 -1
- package/lib/metadataTypes/ImportFile.js +11 -1
- package/lib/metadataTypes/Journey.js +111 -7
- package/lib/metadataTypes/definitions/Automation.definition.js +1 -0
- package/lib/metadataTypes/definitions/DataFilter.definition.js +168 -0
- package/lib/metadataTypes/definitions/DataFilterHidden.definition.js +169 -0
- package/lib/metadataTypes/definitions/Filter.definition.js +136 -22
- package/lib/metadataTypes/definitions/Journey.definition.js +20 -1
- package/lib/util/devops.js +14 -4
- package/lib/util/util.js +7 -2
- package/lib/util/validations.js +7 -1
- package/package.json +10 -10
- package/test/general.test.js +17 -19
- package/test/mockRoot/.mcdevrc.json +4 -1
- package/test/mockRoot/deploy/testInstance/testBU/dataFilter/testExisting_dataFilter.dataFilter-meta.json +19 -0
- package/test/mockRoot/deploy/testInstance/testBU/dataFilter/testNew_dataFilter.dataFilter-meta.json +19 -0
- package/test/mockRoot/deploy/testInstance/testBU/filter/testExisting_filter.filter-meta.json +10 -0
- package/test/mockRoot/deploy/testInstance/testBU/filter/testNew_filter.filter-meta.json +11 -0
- package/test/mockRoot/deploy/testInstance/testBU/journey/testExisting_journey_updatecontact.journey-meta.json +108 -0
- package/test/resources/9999999/automation/v1/filters/a0f1a1bc-4ea1-44b3-8fe1-ce40ef35c1c0/patch-response.json +18 -0
- package/test/resources/9999999/automation/v1/filters/f018f237-f7ef-40b0-afc8-39ea2e5dcca4/delete-response.txt +0 -0
- package/test/resources/9999999/automation/v1/filters/f018f237-f7ef-40b0-afc8-39ea2e5dcca4/get-response.json +15 -0
- package/test/resources/9999999/automation/v1/filters/f018f237-f7ef-40b0-afc8-39ea2e5dcca4/patch-response.json +15 -0
- package/test/resources/9999999/automation/v1/filters/get-response.json +22 -0
- package/test/resources/9999999/dataFilter/build-expected.json +19 -0
- package/test/resources/9999999/dataFilter/get-expected.json +23 -0
- package/test/resources/9999999/dataFilter/patch-expected.json +20 -0
- package/test/resources/9999999/dataFilter/post-expected.json +20 -0
- package/test/resources/9999999/dataFilter/template-expected.json +19 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset,asset-sha,automatio,cloudpage,dataexten,filteract,filterdef,hidden,journey,list,mysubs,publicati,queryacti,salesforc,shared_da,shared_da,shared_sa,ssjsactiv,synchroni,useriniti-response.xml +765 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINfilteractivity,hidden-response.xml +139 -0
- package/test/resources/9999999/dataFolder/retrieve-ContentTypeINfilterdefinition,hidden-response.xml +116 -0
- package/test/resources/9999999/email/v1/filters/filterdefinition/10ef27dd-4be8-4bf6-970a-8acf8e281e55/delete-response.txt +1 -0
- package/test/resources/9999999/email/v1/filters/filterdefinition/10ef27dd-4be8-4bf6-970a-8acf8e281e55/get-response.json +19 -0
- package/test/resources/9999999/email/v1/filters/filterdefinition/10ef27dd-4be8-4bf6-970a-8acf8e281e55/patch-response.json +15 -0
- package/test/resources/9999999/email/v1/filters/filterdefinition/category/5318/get-response.json +27 -0
- package/test/resources/9999999/email/v1/filters/filterdefinition/category/8502/get-response.json +7 -0
- package/test/resources/9999999/email/v1/filters/filterdefinition/category/8503/get-response.json +7 -0
- package/test/resources/9999999/email/v1/filters/filterdefinition/post-response.json +15 -0
- package/test/resources/9999999/filter/build-expected.json +10 -0
- package/test/resources/9999999/filter/get-expected.json +11 -0
- package/test/resources/9999999/filter/patch-expected.json +11 -0
- package/test/resources/9999999/filter/post-expected.json +11 -0
- package/test/resources/9999999/filter/template-expected.json +10 -0
- package/test/resources/9999999/filterActivity/create-response.xml +46 -0
- package/test/resources/9999999/filterActivity/retrieve-CustomerKey=testExisting_filter-response.xml +30 -0
- package/test/resources/9999999/filterDefinition/retrieve-CustomerKey=testExisting_dataFilter-response.xml +30 -0
- package/test/resources/9999999/interaction/v1/interactions/get-response.json +45 -3
- package/test/resources/9999999/interaction/v1/interactions/key_testExisting_journey_updatecontact/get-response.json +119 -0
- package/test/resources/9999999/interaction/v1/interactions/key_testExisting_journey_updatecontact/put-response.json +106 -0
- package/test/resources/9999999/journey/get-updatecontact-expected.json +108 -0
- package/test/resources/9999999/journey/put-updatecontact-expected.json +108 -0
- package/test/type.automation.test.js +14 -14
- package/test/type.dataFilter.test.js +174 -0
- package/test/type.filter.test.js +170 -0
- package/test/type.journey.test.js +59 -7
- package/test/type.query.test.js +2 -2
- package/test/utils.js +8 -0
- package/types/mcdev.d.js +101 -0
package/lib/util/validations.js
CHANGED
|
@@ -108,7 +108,13 @@ export default async function validation(definition, item, targetDir, codeExtrac
|
|
|
108
108
|
// some types do not support folders
|
|
109
109
|
return true;
|
|
110
110
|
}
|
|
111
|
-
const doNotEvaluate = [
|
|
111
|
+
const doNotEvaluate = [
|
|
112
|
+
'automation',
|
|
113
|
+
'attributeSet',
|
|
114
|
+
'dataFilter',
|
|
115
|
+
'list',
|
|
116
|
+
'filter',
|
|
117
|
+
];
|
|
112
118
|
if (
|
|
113
119
|
doNotEvaluate.includes(definition.type) ||
|
|
114
120
|
(definition.type === 'asset' && item?.assetType?.name === 'webpage') ||
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mcdev",
|
|
3
|
-
"version": "8.
|
|
3
|
+
"version": "8.3.0",
|
|
4
4
|
"description": "Accenture Salesforce Marketing Cloud DevTools",
|
|
5
5
|
"author": "Accenture: joern.berkefeld, douglas.midgley, robert.zimmermann, maciej.barnas",
|
|
6
6
|
"license": "MIT",
|
|
@@ -73,19 +73,19 @@
|
|
|
73
73
|
"conf": "13.1.0",
|
|
74
74
|
"console.table": "0.10.0",
|
|
75
75
|
"deep-equal": "2.2.3",
|
|
76
|
-
"fs-extra": "11.3.
|
|
76
|
+
"fs-extra": "11.3.3",
|
|
77
77
|
"inquirer": "12.6.0",
|
|
78
78
|
"json-to-table": "4.2.1",
|
|
79
79
|
"mustache": "4.2.0",
|
|
80
80
|
"p-limit": "6.2.0",
|
|
81
81
|
"prettier": "3.5.3",
|
|
82
|
-
"prettier-plugin-sql": "0.19.
|
|
82
|
+
"prettier-plugin-sql": "0.19.2",
|
|
83
83
|
"semver": "7.7.3",
|
|
84
84
|
"sfmc-sdk": "2.1.2",
|
|
85
|
-
"simple-git": "3.
|
|
85
|
+
"simple-git": "3.30.0",
|
|
86
86
|
"toposort": "2.0.2",
|
|
87
87
|
"update-notifier": "7.3.1",
|
|
88
|
-
"winston": "3.
|
|
88
|
+
"winston": "3.19.0",
|
|
89
89
|
"yargs": "17.7.2",
|
|
90
90
|
"yocto-spinner": "1.0.0"
|
|
91
91
|
},
|
|
@@ -99,23 +99,23 @@
|
|
|
99
99
|
"assert": "2.1.0",
|
|
100
100
|
"axios-mock-adapter": "2.0.0",
|
|
101
101
|
"c8": "10.1.3",
|
|
102
|
-
"chai": "
|
|
102
|
+
"chai": "6.2.2",
|
|
103
103
|
"chai-files": "1.4.0",
|
|
104
104
|
"eslint": "9.28.0",
|
|
105
105
|
"eslint-config-ssjs": "2.0.0",
|
|
106
106
|
"eslint-plugin-jsdoc": "50.7.1",
|
|
107
107
|
"eslint-plugin-mocha": "11.2.0",
|
|
108
|
-
"eslint-plugin-prettier": "5.
|
|
108
|
+
"eslint-plugin-prettier": "5.5.5",
|
|
109
109
|
"eslint-plugin-unicorn": "59.0.1",
|
|
110
|
-
"fast-xml-parser": "5.3.
|
|
111
|
-
"globals": "
|
|
110
|
+
"fast-xml-parser": "5.3.4",
|
|
111
|
+
"globals": "17.3.0",
|
|
112
112
|
"husky": "9.1.7",
|
|
113
113
|
"lint-staged": "16.2.6",
|
|
114
114
|
"mocha": "11.7.4",
|
|
115
115
|
"mock-fs": "5.3.0",
|
|
116
116
|
"npm-run-all": "4.1.5",
|
|
117
117
|
"prettier-eslint": "16.4.2",
|
|
118
|
-
"typescript": "5.
|
|
118
|
+
"typescript": "5.9.3"
|
|
119
119
|
},
|
|
120
120
|
"optionalDependencies": {
|
|
121
121
|
"fsevents": "*"
|
package/test/general.test.js
CHANGED
|
@@ -58,10 +58,9 @@ describe('GENERAL', () => {
|
|
|
58
58
|
await testUtils.getExpectedJson('9999999', 'senderProfile', 'get-rcb-name'),
|
|
59
59
|
'returned JSON was not equal expected'
|
|
60
60
|
);
|
|
61
|
-
|
|
62
61
|
assert.equal(
|
|
63
62
|
testUtils.getAPIHistoryLength(),
|
|
64
|
-
|
|
63
|
+
46,
|
|
65
64
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
66
65
|
);
|
|
67
66
|
return;
|
|
@@ -107,10 +106,9 @@ describe('GENERAL', () => {
|
|
|
107
106
|
await testUtils.getExpectedJson('9999999', 'senderProfile', 'get-rcb-id'),
|
|
108
107
|
'returned JSON was not equal expected'
|
|
109
108
|
);
|
|
110
|
-
|
|
111
109
|
assert.equal(
|
|
112
110
|
testUtils.getAPIHistoryLength(),
|
|
113
|
-
|
|
111
|
+
46,
|
|
114
112
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
115
113
|
);
|
|
116
114
|
return;
|
|
@@ -159,7 +157,7 @@ describe('GENERAL', () => {
|
|
|
159
157
|
|
|
160
158
|
assert.equal(
|
|
161
159
|
testUtils.getAPIHistoryLength(),
|
|
162
|
-
|
|
160
|
+
46,
|
|
163
161
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
164
162
|
);
|
|
165
163
|
return;
|
|
@@ -226,7 +224,7 @@ describe('GENERAL', () => {
|
|
|
226
224
|
|
|
227
225
|
assert.equal(
|
|
228
226
|
testUtils.getAPIHistoryLength(),
|
|
229
|
-
|
|
227
|
+
82,
|
|
230
228
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
231
229
|
);
|
|
232
230
|
return;
|
|
@@ -286,7 +284,7 @@ describe('GENERAL', () => {
|
|
|
286
284
|
|
|
287
285
|
assert.equal(
|
|
288
286
|
testUtils.getAPIHistoryLength(),
|
|
289
|
-
|
|
287
|
+
82,
|
|
290
288
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
291
289
|
);
|
|
292
290
|
return;
|
|
@@ -346,7 +344,7 @@ describe('GENERAL', () => {
|
|
|
346
344
|
|
|
347
345
|
assert.equal(
|
|
348
346
|
testUtils.getAPIHistoryLength(),
|
|
349
|
-
|
|
347
|
+
82,
|
|
350
348
|
'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
|
|
351
349
|
);
|
|
352
350
|
return;
|
|
@@ -777,7 +775,7 @@ describe('GENERAL', () => {
|
|
|
777
775
|
// download first before we test buildTemplate
|
|
778
776
|
await handler.retrieve('testInstance/testBU', ['automation', 'query']);
|
|
779
777
|
|
|
780
|
-
const expectedApiCallsRetrieve =
|
|
778
|
+
const expectedApiCallsRetrieve = 36;
|
|
781
779
|
assert.equal(
|
|
782
780
|
testUtils.getAPIHistoryLength(),
|
|
783
781
|
expectedApiCallsRetrieve,
|
|
@@ -882,7 +880,7 @@ describe('GENERAL', () => {
|
|
|
882
880
|
});
|
|
883
881
|
|
|
884
882
|
it('buildTemplate + buildDefinition for multiple types with keys and --retrieve', async () => {
|
|
885
|
-
const expectedApiCallsRetrieve =
|
|
883
|
+
const expectedApiCallsRetrieve = 33;
|
|
886
884
|
|
|
887
885
|
// preparation
|
|
888
886
|
const argvMetadata = [
|
|
@@ -987,7 +985,7 @@ describe('GENERAL', () => {
|
|
|
987
985
|
// download first before we test buildTemplate
|
|
988
986
|
await handler.retrieve('testInstance/testBU');
|
|
989
987
|
|
|
990
|
-
const expectedApiCallsRetrieve =
|
|
988
|
+
const expectedApiCallsRetrieve = 108;
|
|
991
989
|
assert.equal(
|
|
992
990
|
testUtils.getAPIHistoryLength(),
|
|
993
991
|
expectedApiCallsRetrieve,
|
|
@@ -1229,7 +1227,7 @@ describe('GENERAL', () => {
|
|
|
1229
1227
|
await testUtils.getActualDeployFile('testTemplated_query', 'query', 'sql')
|
|
1230
1228
|
).to.equal(await testUtils.getExpectedFile('9999999', 'query', 'build', 'sql'));
|
|
1231
1229
|
|
|
1232
|
-
const expectedApiCallsRetrieve =
|
|
1230
|
+
const expectedApiCallsRetrieve = 112;
|
|
1233
1231
|
assert.equal(
|
|
1234
1232
|
testUtils.getAPIHistoryLength(),
|
|
1235
1233
|
expectedApiCallsRetrieve,
|
|
@@ -1241,7 +1239,7 @@ describe('GENERAL', () => {
|
|
|
1241
1239
|
// download first before we test buildTemplate
|
|
1242
1240
|
await handler.retrieve('testInstance/testBU', ['automation', 'query']);
|
|
1243
1241
|
|
|
1244
|
-
const expectedApiCallsRetrieve =
|
|
1242
|
+
const expectedApiCallsRetrieve = 36;
|
|
1245
1243
|
assert.equal(
|
|
1246
1244
|
testUtils.getAPIHistoryLength(),
|
|
1247
1245
|
expectedApiCallsRetrieve,
|
|
@@ -1433,7 +1431,7 @@ describe('GENERAL', () => {
|
|
|
1433
1431
|
// download first before we test buildTemplate
|
|
1434
1432
|
await handler.retrieve('testInstance/testBU', ['automation', 'query']);
|
|
1435
1433
|
|
|
1436
|
-
const expectedApiCallsRetrieve =
|
|
1434
|
+
const expectedApiCallsRetrieve = 36;
|
|
1437
1435
|
assert.equal(
|
|
1438
1436
|
testUtils.getAPIHistoryLength(),
|
|
1439
1437
|
expectedApiCallsRetrieve,
|
|
@@ -1504,7 +1502,7 @@ describe('GENERAL', () => {
|
|
|
1504
1502
|
// download first before we test buildTemplate
|
|
1505
1503
|
await handler.retrieve('testInstance/testBU', ['automation', 'query']);
|
|
1506
1504
|
|
|
1507
|
-
const expectedApiCallsRetrieve =
|
|
1505
|
+
const expectedApiCallsRetrieve = 36;
|
|
1508
1506
|
assert.equal(
|
|
1509
1507
|
testUtils.getAPIHistoryLength(),
|
|
1510
1508
|
expectedApiCallsRetrieve,
|
|
@@ -1603,7 +1601,7 @@ describe('GENERAL', () => {
|
|
|
1603
1601
|
// download everything before we test buildTemplate
|
|
1604
1602
|
await handler.retrieve('testInstance/testBU');
|
|
1605
1603
|
|
|
1606
|
-
const expectedApiCallsRetrieve =
|
|
1604
|
+
const expectedApiCallsRetrieve = 108;
|
|
1607
1605
|
assert.equal(
|
|
1608
1606
|
testUtils.getAPIHistoryLength(),
|
|
1609
1607
|
expectedApiCallsRetrieve,
|
|
@@ -1814,7 +1812,7 @@ describe('GENERAL', () => {
|
|
|
1814
1812
|
await testUtils.getActualDeployFile('testTemplated_query', 'query', 'sql')
|
|
1815
1813
|
).to.equal(await testUtils.getExpectedFile('9999999', 'query', 'build', 'sql'));
|
|
1816
1814
|
|
|
1817
|
-
const expectedApiCallsRetrieve =
|
|
1815
|
+
const expectedApiCallsRetrieve = 112;
|
|
1818
1816
|
assert.equal(
|
|
1819
1817
|
testUtils.getAPIHistoryLength(),
|
|
1820
1818
|
expectedApiCallsRetrieve,
|
|
@@ -1826,7 +1824,7 @@ describe('GENERAL', () => {
|
|
|
1826
1824
|
// download first before we test buildTemplate
|
|
1827
1825
|
await handler.retrieve('testInstance/testBU', ['automation', 'query']);
|
|
1828
1826
|
|
|
1829
|
-
const expectedApiCallsRetrieve =
|
|
1827
|
+
const expectedApiCallsRetrieve = 36;
|
|
1830
1828
|
assert.equal(
|
|
1831
1829
|
testUtils.getAPIHistoryLength(),
|
|
1832
1830
|
expectedApiCallsRetrieve,
|
|
@@ -2005,7 +2003,7 @@ describe('GENERAL', () => {
|
|
|
2005
2003
|
// download first before we test buildTemplate
|
|
2006
2004
|
await handler.retrieve('testInstance/testBU');
|
|
2007
2005
|
|
|
2008
|
-
const expectedApiCallsRetrieve =
|
|
2006
|
+
const expectedApiCallsRetrieve = 108;
|
|
2009
2007
|
assert.equal(
|
|
2010
2008
|
testUtils.getAPIHistoryLength(),
|
|
2011
2009
|
expectedApiCallsRetrieve,
|
|
@@ -131,11 +131,13 @@
|
|
|
131
131
|
"automation",
|
|
132
132
|
"dataExtension",
|
|
133
133
|
"dataExtract",
|
|
134
|
+
"dataFilter",
|
|
134
135
|
"domainVerification",
|
|
135
136
|
"emailSend",
|
|
136
137
|
"event",
|
|
137
138
|
"fileLocation",
|
|
138
139
|
"fileTransfer",
|
|
140
|
+
"filter",
|
|
139
141
|
"importFile",
|
|
140
142
|
"journey",
|
|
141
143
|
"list",
|
|
@@ -157,6 +159,7 @@
|
|
|
157
159
|
"automation",
|
|
158
160
|
"dataExtension",
|
|
159
161
|
"dataExtract",
|
|
162
|
+
"dataFilter",
|
|
160
163
|
"emailSend",
|
|
161
164
|
"event",
|
|
162
165
|
"fileTransfer",
|
|
@@ -175,5 +178,5 @@
|
|
|
175
178
|
"verification"
|
|
176
179
|
]
|
|
177
180
|
},
|
|
178
|
-
"version": "8.
|
|
181
|
+
"version": "8.3.0"
|
|
179
182
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description": "updated on deploy",
|
|
3
|
+
"key": "testExisting_dataFilter",
|
|
4
|
+
"name": "testExisting_dataFilter",
|
|
5
|
+
"isSendable": true,
|
|
6
|
+
"c__filterDefinition": {
|
|
7
|
+
"ConditionSet": {
|
|
8
|
+
"@_ConditionSetName": "Outer Grouping",
|
|
9
|
+
"@_Operator": "AND",
|
|
10
|
+
"Condition": {
|
|
11
|
+
"@_Operator": "Begins",
|
|
12
|
+
"Value": "testExisting_",
|
|
13
|
+
"r__dataExtensionField_name": "LastName"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"r__folder_Path": "Data Filters",
|
|
18
|
+
"r__source_dataExtension_key": "testExisting_dataExtension"
|
|
19
|
+
}
|
package/test/mockRoot/deploy/testInstance/testBU/dataFilter/testNew_dataFilter.dataFilter-meta.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description": "created via deploy",
|
|
3
|
+
"key": "testNew_dataFilter",
|
|
4
|
+
"name": "testNew_dataFilter",
|
|
5
|
+
"isSendable": true,
|
|
6
|
+
"c__filterDefinition": {
|
|
7
|
+
"ConditionSet": {
|
|
8
|
+
"@_ConditionSetName": "Outer Grouping",
|
|
9
|
+
"@_Operator": "AND",
|
|
10
|
+
"Condition": {
|
|
11
|
+
"@_Operator": "Begins",
|
|
12
|
+
"Value": "testNew_",
|
|
13
|
+
"r__dataExtensionField_name": "LastName"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"r__folder_Path": "Data Filters",
|
|
18
|
+
"r__source_dataExtension_key": "testExisting_dataExtension"
|
|
19
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"customerKey": "testExisting_filter",
|
|
3
|
+
"name": "testExisting_filter",
|
|
4
|
+
"description": "updated on deploy",
|
|
5
|
+
"statusId": 1,
|
|
6
|
+
"r__dataFilter_key": "testExisting_dataFilter",
|
|
7
|
+
"r__destination_dataExtension_key": "testExisting_dataExtension_exclusion",
|
|
8
|
+
"r__source_dataExtension_key": "testExisting_dataExtension",
|
|
9
|
+
"r__folder_Path": "Filter"
|
|
10
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"customerKey": "testNew_filter",
|
|
3
|
+
"name": "testNew_filter",
|
|
4
|
+
"description": "created via deploy",
|
|
5
|
+
"modifiedDate": "2026-01-28T10:14:46.717",
|
|
6
|
+
"statusId": 1,
|
|
7
|
+
"r__dataFilter_key": "testExisting_dataFilter",
|
|
8
|
+
"r__destination_dataExtension_key": "testExisting_dataExtension_exclusion",
|
|
9
|
+
"r__source_dataExtension_key": "testExisting_dataExtension",
|
|
10
|
+
"r__folder_Path": "Filter/filterSubfolder"
|
|
11
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
{
|
|
2
|
+
"key": "testExisting_journey_updatecontact",
|
|
3
|
+
"name": "testExisting_journey_updatecontact",
|
|
4
|
+
"lastPublishedDate": "0001-01-01T00:00:00",
|
|
5
|
+
"description": "",
|
|
6
|
+
"version": 1,
|
|
7
|
+
"workflowApiVersion": 1,
|
|
8
|
+
"createdDate": "2024-05-04T05:54:48.027",
|
|
9
|
+
"modifiedDate": "2024-05-04T17:25:57.9",
|
|
10
|
+
"activities": [
|
|
11
|
+
{
|
|
12
|
+
"key": "UPDATECONTACTDATAV2-1",
|
|
13
|
+
"name": "Update Contact - TEST",
|
|
14
|
+
"description": "",
|
|
15
|
+
"type": "UPDATECONTACTDATA",
|
|
16
|
+
"outcomes": [
|
|
17
|
+
{
|
|
18
|
+
"key": "9f21d42b-4679-4561-911a-4bccf84672ba",
|
|
19
|
+
"arguments": {},
|
|
20
|
+
"metaData": {
|
|
21
|
+
"invalid": false
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
],
|
|
25
|
+
"arguments": {
|
|
26
|
+
"activityData": {
|
|
27
|
+
"updateContactFields": [
|
|
28
|
+
{
|
|
29
|
+
"r__dataExtension_key": "testExisting_dataExtension",
|
|
30
|
+
"r__dataExtensionField_name": "LastName",
|
|
31
|
+
"value": "TEST"
|
|
32
|
+
}
|
|
33
|
+
]
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
"configurationArguments": {},
|
|
37
|
+
"metaData": {
|
|
38
|
+
"isConfigured": true
|
|
39
|
+
},
|
|
40
|
+
"schema": {
|
|
41
|
+
"arguments": {
|
|
42
|
+
"activityData": {
|
|
43
|
+
"dataType": "Text",
|
|
44
|
+
"isNullable": false,
|
|
45
|
+
"direction": "In",
|
|
46
|
+
"readOnly": false,
|
|
47
|
+
"access": "Hidden"
|
|
48
|
+
},
|
|
49
|
+
"contactKey": {
|
|
50
|
+
"dataType": "Text",
|
|
51
|
+
"isNullable": false,
|
|
52
|
+
"direction": "In",
|
|
53
|
+
"readOnly": false,
|
|
54
|
+
"access": "Hidden"
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
"triggers": [
|
|
61
|
+
{
|
|
62
|
+
"key": "TRIGGER",
|
|
63
|
+
"name": "TRIGGER",
|
|
64
|
+
"description": "",
|
|
65
|
+
"type": "EmailAudience",
|
|
66
|
+
"outcomes": [],
|
|
67
|
+
"arguments": {},
|
|
68
|
+
"configurationArguments": {},
|
|
69
|
+
"metaData": {
|
|
70
|
+
"r__event_key": "DEAudience-2e3c73b6-48cc-2ec0-5522-48636e1a236e",
|
|
71
|
+
"chainType": "None",
|
|
72
|
+
"configurationRequired": false,
|
|
73
|
+
"iconUrl": "/images/icon-data-extension.svg",
|
|
74
|
+
"title": "Data Extension",
|
|
75
|
+
"entrySourceGroupConfigUrl": "jb:///data/entry/audience/entrysourcegroupconfig.json",
|
|
76
|
+
"sourceInteractionId": "00000000-0000-0000-0000-000000000000"
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
],
|
|
80
|
+
"goals": [],
|
|
81
|
+
"exits": [],
|
|
82
|
+
"notifiers": [],
|
|
83
|
+
"entryMode": "NotSet",
|
|
84
|
+
"definitionType": "Multistep",
|
|
85
|
+
"channel": "",
|
|
86
|
+
"defaults": {
|
|
87
|
+
"email": [
|
|
88
|
+
"{{Event.DEAudience-2e3c73b6-48cc-2ec0-5522-48636e1a236e.\"Email\"}}"
|
|
89
|
+
],
|
|
90
|
+
"properties": {
|
|
91
|
+
"analyticsTracking": {
|
|
92
|
+
"enabled": true,
|
|
93
|
+
"analyticsType": "google",
|
|
94
|
+
"urlDomainsToTrack": []
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"metaData": {
|
|
99
|
+
"dataSource": "ContactsModel",
|
|
100
|
+
"highThroughputSending": {
|
|
101
|
+
"email": false
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
"executionMode": "Production",
|
|
105
|
+
"status": "Draft",
|
|
106
|
+
"scheduledStatus": "Draft",
|
|
107
|
+
"r__folder_Path": "my journeys"
|
|
108
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"categoryId": 37139,
|
|
3
|
+
"customerKey": "testNew_filter",
|
|
4
|
+
"description": "created via deploy",
|
|
5
|
+
"destinationObjectId": "21711373-72c1-ec11-b83b-exclusion",
|
|
6
|
+
"destinationTypeId": 2,
|
|
7
|
+
"filterActivityId": "a0f1a1bc-4ea1-44b3-8fe1-ce40ef35c1c0",
|
|
8
|
+
"filterDefinitionId": "10ef27dd-4be8-4bf6-970a-8acf8e281e55",
|
|
9
|
+
"name": "testNew_filter",
|
|
10
|
+
"sourceObjectId": "21711373-72c1-ec11-b83b-48df37d1deb7",
|
|
11
|
+
"sourceTypeId": 2,
|
|
12
|
+
"statusId": 1,
|
|
13
|
+
"resultDEName": "testExisting_dataExtension_exclusion",
|
|
14
|
+
"resultDEKey": "testExisting_dataExtension_exclusion",
|
|
15
|
+
"resultDEDescription": "",
|
|
16
|
+
"createdDate": "2026-02-02T07:34:49.203",
|
|
17
|
+
"modifiedDate": "2026-02-02T07:34:49.277"
|
|
18
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"categoryId": 37139,
|
|
3
|
+
"customerKey": "testExisting_filter",
|
|
4
|
+
"description": "blabla",
|
|
5
|
+
"destinationObjectId": "21711373-72c1-ec11-b83b-exclusion",
|
|
6
|
+
"destinationTypeId": 2,
|
|
7
|
+
"filterActivityId": "f018f237-f7ef-40b0-afc8-39ea2e5dcca4",
|
|
8
|
+
"filterDefinitionId": "10ef27dd-4be8-4bf6-970a-8acf8e281e55",
|
|
9
|
+
"name": "testExisting_filter",
|
|
10
|
+
"sourceObjectId": "21711373-72c1-ec11-b83b-48df37d1deb7",
|
|
11
|
+
"sourceTypeId": 2,
|
|
12
|
+
"statusId": 1,
|
|
13
|
+
"createdDate": "2025-12-01T17:53:39.163",
|
|
14
|
+
"modifiedDate": "2026-01-28T10:14:46.717"
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"categoryId": 5319,
|
|
3
|
+
"customerKey": "testExisting_filter",
|
|
4
|
+
"description": "updated on deploy",
|
|
5
|
+
"destinationObjectId": "21711373-72c1-ec11-b83b-exclusion",
|
|
6
|
+
"destinationTypeId": 2,
|
|
7
|
+
"filterActivityId": "f018f237-f7ef-40b0-afc8-39ea2e5dcca4",
|
|
8
|
+
"filterDefinitionId": "10ef27dd-4be8-4bf6-970a-8acf8e281e55",
|
|
9
|
+
"name": "testExisting_filter",
|
|
10
|
+
"sourceObjectId": "21711373-72c1-ec11-b83b-48df37d1deb7",
|
|
11
|
+
"sourceTypeId": 2,
|
|
12
|
+
"statusId": 1,
|
|
13
|
+
"createdDate": "2025-12-01T17:53:39.163",
|
|
14
|
+
"modifiedDate": "2026-01-28T10:14:46.717"
|
|
15
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"count": 54,
|
|
3
|
+
"page": 1,
|
|
4
|
+
"pageSize": 500,
|
|
5
|
+
"items": [
|
|
6
|
+
{
|
|
7
|
+
"categoryId": 37139,
|
|
8
|
+
"customerKey": "testExisting_filter",
|
|
9
|
+
"description": "blabla",
|
|
10
|
+
"destinationObjectId": "21711373-72c1-ec11-b83b-exclusion",
|
|
11
|
+
"destinationTypeId": 2,
|
|
12
|
+
"filterActivityId": "f018f237-f7ef-40b0-afc8-39ea2e5dcca4",
|
|
13
|
+
"filterDefinitionId": "10ef27dd-4be8-4bf6-970a-8acf8e281e55",
|
|
14
|
+
"name": "testExisting_filter",
|
|
15
|
+
"sourceObjectId": "21711373-72c1-ec11-b83b-48df37d1deb7",
|
|
16
|
+
"sourceTypeId": 2,
|
|
17
|
+
"statusId": 1,
|
|
18
|
+
"createdDate": "2025-12-01T17:53:39.163",
|
|
19
|
+
"modifiedDate": "2026-01-28T10:14:46.717"
|
|
20
|
+
}
|
|
21
|
+
]
|
|
22
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"c__filterDefinition": {
|
|
3
|
+
"ConditionSet": {
|
|
4
|
+
"@_ConditionSetName": "Outer Grouping",
|
|
5
|
+
"@_Operator": "AND",
|
|
6
|
+
"Condition": {
|
|
7
|
+
"@_Operator": "Ends",
|
|
8
|
+
"Value": "_testTarget",
|
|
9
|
+
"r__dataExtensionField_name": "LastName"
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"description": "test",
|
|
14
|
+
"isSendable": true,
|
|
15
|
+
"key": "testTemplated_dataFilter",
|
|
16
|
+
"name": "testTemplated_dataFilter",
|
|
17
|
+
"r__folder_Path": "Data Filters",
|
|
18
|
+
"r__source_dataExtension_key": "testTemplated_dataExtension"
|
|
19
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"createdByName": "Jörn Berkefeld",
|
|
3
|
+
"createdDate": "2025-12-01T16:54:09.813",
|
|
4
|
+
"lastUpdated": "2025-12-01T17:17:31.827",
|
|
5
|
+
"lastUpdatedByName": "Jörn Berkefeld",
|
|
6
|
+
"description": "test",
|
|
7
|
+
"key": "testExisting_dataFilter",
|
|
8
|
+
"name": "testExisting_dataFilter",
|
|
9
|
+
"isSendable": true,
|
|
10
|
+
"c__filterDefinition": {
|
|
11
|
+
"ConditionSet": {
|
|
12
|
+
"@_ConditionSetName": "Outer Grouping",
|
|
13
|
+
"@_Operator": "AND",
|
|
14
|
+
"Condition": {
|
|
15
|
+
"@_Operator": "Ends",
|
|
16
|
+
"Value": "_test",
|
|
17
|
+
"r__dataExtensionField_name": "LastName"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"r__folder_Path": "Data Filters",
|
|
22
|
+
"r__source_dataExtension_key": "testExisting_dataExtension"
|
|
23
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"c__filterDefinition": {
|
|
3
|
+
"ConditionSet": {
|
|
4
|
+
"@_ConditionSetName": "Outer Grouping",
|
|
5
|
+
"@_Operator": "AND",
|
|
6
|
+
"Condition": {
|
|
7
|
+
"@_Operator": "Begins",
|
|
8
|
+
"Value": "testExisting_",
|
|
9
|
+
"r__dataExtensionField_name": "LastName"
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"createdDate": "2026-01-27T06:24:40.527",
|
|
14
|
+
"isSendable": true,
|
|
15
|
+
"key": "testExisting_dataFilter",
|
|
16
|
+
"lastUpdated": "2026-01-30T10:46:59.777",
|
|
17
|
+
"name": "testExisting_dataFilter",
|
|
18
|
+
"r__folder_Path": "Data Filters",
|
|
19
|
+
"r__source_dataExtension_key": "testExisting_dataExtension"
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"createdDate": "2026-01-30T11:04:06.883",
|
|
3
|
+
"lastUpdated": "2026-01-30T11:04:06.883",
|
|
4
|
+
"isSendable": false,
|
|
5
|
+
"key": "testNew_dataFilter",
|
|
6
|
+
"name": "testNew_dataFilter",
|
|
7
|
+
"c__filterDefinition": {
|
|
8
|
+
"ConditionSet": {
|
|
9
|
+
"@_ConditionSetName": "Outer Grouping",
|
|
10
|
+
"@_Operator": "AND",
|
|
11
|
+
"Condition": {
|
|
12
|
+
"@_Operator": "Ends",
|
|
13
|
+
"Value": "_test",
|
|
14
|
+
"r__dataExtensionField_name": "LastName"
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"r__folder_Path": "Data Filters",
|
|
19
|
+
"r__source_dataExtension_key": "testExisting_dataExtension"
|
|
20
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"c__filterDefinition": {
|
|
3
|
+
"ConditionSet": {
|
|
4
|
+
"@_ConditionSetName": "Outer Grouping",
|
|
5
|
+
"@_Operator": "AND",
|
|
6
|
+
"Condition": {
|
|
7
|
+
"@_Operator": "Ends",
|
|
8
|
+
"Value": "{{{suffix}}}",
|
|
9
|
+
"r__dataExtensionField_name": "LastName"
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"description": "test",
|
|
14
|
+
"isSendable": true,
|
|
15
|
+
"key": "{{{prefix}}}dataFilter",
|
|
16
|
+
"name": "{{{prefix}}}dataFilter",
|
|
17
|
+
"r__folder_Path": "Data Filters",
|
|
18
|
+
"r__source_dataExtension_key": "{{{prefix}}}dataExtension"
|
|
19
|
+
}
|