mcdev 8.3.0 → 8.3.1
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/npm-publish.yml +0 -2
- package/@types/lib/metadataTypes/DataFilter.d.ts +18 -9
- package/@types/lib/metadataTypes/DataFilter.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MetadataType.d.ts +6 -0
- package/@types/lib/metadataTypes/MetadataType.d.ts.map +1 -1
- package/lib/metadataTypes/DataFilter.js +53 -12
- package/lib/metadataTypes/MetadataType.js +14 -0
- package/package.json +1 -1
- package/test/mockRoot/.mcdevrc.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/asset/block/{testExisting_asset_htmlblock-matchName-fail.asset-block-meta.json → testExisting_asset_html-matchNamFail.asset-block-meta.json} +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/asset/block/{testExisting_asset_htmlblock-matchName.asset-block-meta.json → testExisting_asset_html-matchName.asset-block-meta.json} +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/asset/block/{testExisting_asset_htmlblock-matchName-create.asset-block-meta.json → testExisting_asset_html-matchNameAdd.asset-block-meta.json} +3 -3
- package/test/resources/9999999/asset/v1/content/assets/1295064/patch-response.json +1 -1
- package/test/type.asset.test.js +7 -7
- /package/test/mockRoot/deploy/testInstance/testBU/asset/block/{testExisting_asset_htmlblock-matchName-create.asset-block-meta.html → testExisting_asset_html-matchNamFail.asset-block-meta.html} +0 -0
- /package/test/mockRoot/deploy/testInstance/testBU/asset/block/{testExisting_asset_htmlblock-matchName-fail.asset-block-meta.html → testExisting_asset_html-matchName.asset-block-meta.html} +0 -0
- /package/test/mockRoot/deploy/testInstance/testBU/asset/block/{testExisting_asset_htmlblock-matchName.asset-block-meta.html → testExisting_asset_html-matchNameAdd.asset-block-meta.html} +0 -0
|
@@ -10,6 +10,8 @@ export type MetadataTypeMapObj = import("../../types/mcdev.d.js").MetadataTypeMa
|
|
|
10
10
|
export type SoapRequestParams = import("../../types/mcdev.d.js").SoapRequestParams;
|
|
11
11
|
export type TemplateMap = import("../../types/mcdev.d.js").TemplateMap;
|
|
12
12
|
export type DataFilterItem = import("../../types/mcdev.d.js").DataFilterItem;
|
|
13
|
+
export type DataExtensionFieldMap = import("../../types/mcdev.d.js").DataExtensionFieldMap;
|
|
14
|
+
export type DataExtensionFieldItem = import("../../types/mcdev.d.js").DataExtensionFieldItem;
|
|
13
15
|
export type DataFilterMap = import("../../types/mcdev.d.js").DataFilterMap;
|
|
14
16
|
export type MultiMetadataTypeMap = import("../../types/mcdev.d.js").MultiMetadataTypeMap;
|
|
15
17
|
export type FilterConditionSet = import("../../types/mcdev.d.js").FilterConditionSet;
|
|
@@ -26,6 +28,8 @@ export type FilterCondition = import("../../types/mcdev.d.js").FilterCondition;
|
|
|
26
28
|
* @typedef {import('../../types/mcdev.d.js').SoapRequestParams} SoapRequestParams
|
|
27
29
|
* @typedef {import('../../types/mcdev.d.js').TemplateMap} TemplateMap
|
|
28
30
|
* @typedef {import('../../types/mcdev.d.js').DataFilterItem} DataFilterItem
|
|
31
|
+
* @typedef {import('../../types/mcdev.d.js').DataExtensionFieldMap} DataExtensionFieldMap
|
|
32
|
+
* @typedef {import('../../types/mcdev.d.js').DataExtensionFieldItem} DataExtensionFieldItem
|
|
29
33
|
* @typedef {import('../../types/mcdev.d.js').DataFilterMap} DataFilterMap
|
|
30
34
|
* @typedef {import('../../types/mcdev.d.js').MultiMetadataTypeMap} MultiMetadataTypeMap
|
|
31
35
|
* @typedef {import('../../types/mcdev.d.js').FilterConditionSet} FilterConditionSet
|
|
@@ -73,6 +77,12 @@ declare class DataFilter extends MetadataType {
|
|
|
73
77
|
* @param {'retrieve'|'deploy'} [mode] -
|
|
74
78
|
*/
|
|
75
79
|
static _cacheDeFields(metadataTypeMap: DataFilterMap, mode?: "retrieve" | "deploy"): Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* helper for {@link DataFilter._cacheDeFields}
|
|
82
|
+
*
|
|
83
|
+
* @param {DataExtensionFieldMap} deFieldCache -
|
|
84
|
+
*/
|
|
85
|
+
static saveDataExtensionFieldCacheToMap(deFieldCache: DataExtensionFieldMap): void;
|
|
76
86
|
/**
|
|
77
87
|
* helper for {@link DataFilter.retrieve}
|
|
78
88
|
*
|
|
@@ -106,27 +116,29 @@ declare class DataFilter extends MetadataType {
|
|
|
106
116
|
*
|
|
107
117
|
* @param {DataFilterItem} metadata -
|
|
108
118
|
* @param {'postRetrieve'|'preDeploy'} mode -
|
|
109
|
-
* @param {
|
|
119
|
+
* @param {DataExtensionFieldItem[]} [fieldCache] -
|
|
110
120
|
* @param {FilterConditionSet} [filter] -
|
|
111
121
|
* @returns {void}
|
|
112
122
|
*/
|
|
113
|
-
static _resolveFields(metadata: DataFilterItem, mode: "postRetrieve" | "preDeploy", fieldCache?:
|
|
123
|
+
static _resolveFields(metadata: DataFilterItem, mode: "postRetrieve" | "preDeploy", fieldCache?: DataExtensionFieldItem[], filter?: FilterConditionSet): void;
|
|
114
124
|
/**
|
|
115
125
|
* helper for {@link _resolveFields}
|
|
116
126
|
*
|
|
127
|
+
* @param {DataFilterItem} metadata -
|
|
117
128
|
* @param {FilterCondition} condition -
|
|
118
|
-
* @param {
|
|
129
|
+
* @param {DataExtensionFieldItem[]} fieldCache -
|
|
119
130
|
* @returns {void}
|
|
120
131
|
*/
|
|
121
|
-
static _postRetrieve_resolveFieldIdsCondition(condition: FilterCondition, fieldCache:
|
|
132
|
+
static _postRetrieve_resolveFieldIdsCondition(metadata: DataFilterItem, condition: FilterCondition, fieldCache: DataExtensionFieldItem[]): void;
|
|
122
133
|
/**
|
|
123
134
|
* helper for {@link _resolveFields}
|
|
124
135
|
*
|
|
136
|
+
* @param {DataFilterItem} metadata -
|
|
125
137
|
* @param {FilterCondition} condition -
|
|
126
|
-
* @param {
|
|
138
|
+
* @param {DataExtensionFieldItem[]} fieldCache -
|
|
127
139
|
* @returns {void}
|
|
128
140
|
*/
|
|
129
|
-
static _preDeploy_resolveFieldNamesCondition(condition: FilterCondition, fieldCache:
|
|
141
|
+
static _preDeploy_resolveFieldNamesCondition(metadata: DataFilterItem, condition: FilterCondition, fieldCache: DataExtensionFieldItem[]): void;
|
|
130
142
|
/**
|
|
131
143
|
* helper for {@link postRetrieveTasks}
|
|
132
144
|
*
|
|
@@ -166,9 +178,6 @@ declare class DataFilter extends MetadataType {
|
|
|
166
178
|
private static _getObjectIdForSingleRetrieve;
|
|
167
179
|
}
|
|
168
180
|
declare namespace DataFilter {
|
|
169
|
-
let dataExtensionFieldCache: {
|
|
170
|
-
[x: string]: import("../../types/mcdev.d.js").DataExtensionFieldItem;
|
|
171
|
-
};
|
|
172
181
|
let definition: {
|
|
173
182
|
bodyIteratorField: string;
|
|
174
183
|
dependencies: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataFilter.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/DataFilter.js"],"names":[],"mappings":";uBAWa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;6BAC5C,OAAO,wBAAwB,EAAE,cAAc;
|
|
1
|
+
{"version":3,"file":"DataFilter.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/DataFilter.js"],"names":[],"mappings":";uBAWa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;6BAC5C,OAAO,wBAAwB,EAAE,cAAc;oCAC/C,OAAO,wBAAwB,EAAE,qBAAqB;qCACtD,OAAO,wBAAwB,EAAE,sBAAsB;4BACvD,OAAO,wBAAwB,EAAE,aAAa;mCAC9C,OAAO,wBAAwB,EAAE,oBAAoB;iCACrD,OAAO,wBAAwB,EAAE,kBAAkB;8BACnD,OAAO,wBAAwB,EAAE,eAAe;AAjB7D;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;GAIG;AACH;IACI,iBAAkB;IAClB,uBAAkB;IAClB,uBAAsB;IACtB;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,MAAM,EAAE,OACR,MAAM,EAAE,QACR,MAAM,GACJ,OAAO,CAAE;QAAC,QAAQ,EAAE,aAAa,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAyD7D;IACD;;;;;OAKG;IACH,sCAHW,OAAO,GACL,OAAO,CAAE,MAAM,EAAE,CAAC,CA+B9B;IACD;;;;OAIG;IACH,+BAFa,OAAO,CAAE,MAAM,EAAE,CAAC,CA2B9B;IAED;;;;;OAKG;IACH,uCAHW,aAAa,SACb,UAAU,GAAC,QAAQ,iBAiE7B;IACD;;;;OAIG;IACH,sDAFW,qBAAqB,QAkB/B;IACD;;;;OAIG;IACH,gDAFW,aAAa,iBAkBvB;IACD;;;;OAIG;IACH,uCAFW,aAAa,iBA6BvB;IAED;;;;OAIG;IACH,2BAFa,OAAO,CAAE;QAAC,QAAQ,EAAE,aAAa,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAI7D;IAED;;;;;OAKG;IACH,mCAHW,cAAc,GACZ,OAAO,CAAE,cAAc,CAAC,CA4FpC;IAED;;;;;;;;OAQG;IACH,gCANW,cAAc,QACd,cAAc,GAAC,WAAW,eAC1B,sBAAsB,EAAE,WACxB,kBAAkB,GAChB,IAAI,CAiChB;IACD;;;;;;;OAOG;IACH,wDALW,cAAc,aACd,eAAe,cACf,sBAAsB,EAAE,GACtB,IAAI,CAgBhB;IACD;;;;;;;OAOG;IACH,uDALW,cAAc,aACd,eAAe,cACf,sBAAsB,EAAE,GACtB,IAAI,CAoBhB;IACD;;;;;;OAMG;IACH,mDAJW,cAAc,WACd,MAAM,GACJ,IAAI,CAiChB;IAED;;;;;OAKG;IACH,gCAHW,cAAc,GACZ,OAAO,CAAE,cAAc,CAAC,CAuDpC;IAeD;;;;;OAKG;IACH,wBAHW,cAAc,GACZ,OAAO,CAAE,cAAc,CAAC,CAIpC;IACD;;;;;OAKG;IACH,wBAHW,cAAc,GACZ,OAAO,CAAE,cAAc,CAAC,CAOpC;IAED;;;;;;OAMG;IACH,6CAUC;CAiBJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA9qBwB,mBAAmB"}
|
|
@@ -299,6 +299,12 @@ declare class MetadataType {
|
|
|
299
299
|
* @returns {boolean} true on first identified deviation or false if none are found
|
|
300
300
|
*/
|
|
301
301
|
static hasChangedGeneric(cachedVersion: MetadataTypeItem, metadataItem: MetadataTypeItem, fieldName?: string, silent?: boolean): boolean;
|
|
302
|
+
/**
|
|
303
|
+
* helper for {@link MetadataType.upsert} to enforce max key length
|
|
304
|
+
*
|
|
305
|
+
* @param {string} metadataKey key of metadata
|
|
306
|
+
*/
|
|
307
|
+
static enforceMaxKeyLength(metadataKey: string): void;
|
|
302
308
|
/**
|
|
303
309
|
* MetadataType upsert, after retrieving from target and comparing to check if create or update operation is needed.
|
|
304
310
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetadataType.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/MetadataType.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MetadataType.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/MetadataType.js"],"names":[],"mappings":";uBAmBa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;sBAChD,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;gCACtD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;kBAC7C,OAAO,UAAU,EAAE,OAAO;uBAC1B,OAAO,wBAAwB,EAAE,QAAQ;wBACzC,OAAO,wBAAwB,EAAE,SAAS;wBAC1C,OAAO,wBAAwB,EAAE,SAAS;0CAC1C,OAAO,wBAAwB,EAAE,2BAA2B;AAazE;;;;GAIG;AACH;IACI;;;;;;;OAOG;IACH,0BALW,MAAM,gBACN,OAAO,oBACP,MAAM,EAAE,GACN,OAAO,CAAE,eAAe,CAAC,CAoDrC;IAED;;;;;;OAMG;IACH,kDAJW,MAAM,EAAE,cACR,OAAO,GACL,MAAM,EAAE,CAkBpB;IAED;;;;;;;OAOG;IACH,2BALW,eAAe,aACf,MAAM,eACN,MAAM,GACJ,OAAO,CAAE,eAAe,CAAC,CAiBrC;IAED;;;;;;;OAOG;IACH,sCALW,eAAe,oBACf,eAAe,kBACf;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAC,GAChC,OAAO,CAAE,IAAI,CAAC,CAEqD;IAEhF;;;;;OAKG;IACH,8BAHW,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAEW;IAEtC;;;;;;;OAOG;IACH,sCALW,gBAAgB,eAChB,MAAM,8BACN,gBAAgB,GACd,OAAO,CAAE,MAAM,CAAC,CAI5B;IAED;;;;;;;OAOG;IACH,sCALW,gBAAgB,eAChB,MAAM,8BACN,gBAAgB,GACd,OAAO,CAAE,MAAM,CAAC,CAI5B;IAED;;;;;;OAMG;IACH,gDAJW,gBAAgB,eAChB,MAAM,GACJ,OAAO,CAAE,IAAI,CAAC,CAsB1B;IAED;;;;;;;OAOG;IACH,mCALW,gBAAgB,aAChB,MAAM,iBACN,OAAO,GACL,gBAAgB,CAI5B;IAED;;;;OAIG;IACH,+BAFW,gBAAgB,QAoB1B;IAED;;;;OAIG;IACH,6BAFW,gBAAgB,QAa1B;IAED;;;;;;;;OAQG;IACH,6BANW,MAAM,qBACN,MAAM,EAAE,eACR,MAAM,EAAE,QACR,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAKxC;IAED;;;;;;OAMG;IACH,4CAJW,MAAM,EAAE,eACR,MAAM,EAAE,GACN,OAAO,CAAE,kBAAkB,CAAC,CAIxC;IAED;;;;;;;OAOG;IACH,2CALW,MAAM,EAAE,eACR,MAAM,EAAE,QACR,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAIxC;IAED;;;;;;;;;OASG;IACH,uCANW,MAAM,QACN,MAAM,qBACN,WAAW,YACX,MAAM,GACJ,OAAO,CAAE,mBAAmB,CAAC,CAMzC;IAED;;;;;;;;OAQG;IACH,yCANW,MAAM,OACN,MAAM,qBACN,WAAW,QACX,MAAM,GACJ,OAAO,CAAE;QAAC,QAAQ,EAAE,gBAAgB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAIhE;IAED;;;;;;;;OAQG;IACH,kCANW,MAAM,eACN,MAAM,OACN,MAAM,qBACN,WAAW,GACT,OAAO,CAAE,mBAAmB,CAAC,CA2FzC;IAED;;;;;;OAMG;IACH,gCAJW,gBAAgB,aAChB,MAAM,GACJ,OAAO,CAAE,gBAAgB,CAAC,CAItC;IAED;;;;;;;;OAQG;IACH,2BANW,MAAM,QACN,MAAM,iBACN;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAC;KAAE,EAAE,YAC3C,MAAM,GACJ,MAAM,CAkBlB;IAED;;;;;;OAMG;IACH,wBAJW,gBAAgB,aAChB,MAAM,GACJ,OAAO,CAAE,MAAM,CAAC,GAAG,IAAI,CAKnC;IAED;;;;;;OAMG;IACH,wBAJW,gBAAgB,mBAChB,gBAAgB,GACd,OAAO,CAAE,MAAM,CAAC,GAAG,IAAI,CAKnC;IAED;;;;;;;OAOG;IACH,wBALW,MAAM,EAAE,aACR,OAAO,kBACP,eAAe,GACb,OAAO,CAAE,MAAM,EAAE,CAAC,CAK9B;IAED;;;;;;OAMG;IACH,kCALW,MAAM,EAAE,eACR,MAAM,kBACN,GAAG,CAAE,MAAM,CAAC,GACV,OAAO,CAAE,GAAG,CAAE,MAAM,CAAC,CAAC,CAclC;IAED;;;;;;;OAOG;IACH,2CALW,eAAe,eACf,MAAM,kBACN,GAAG,CAAE,MAAM,CAAC,GACV,OAAO,CAAE,MAAM,EAAE,CAAC,CAgE9B;IAED;;;;;;;OAOG;IACH,gCALW,gBAAgB,gBAChB,MAAM,kBACN,GAAG,CAAE,MAAM,CAAC,GACV,OAAO,CAAE,gBAAgB,GAAG,eAAe,CAAC,CAKxD;IAED;;;;;;OAMG;IACH,uBAJW,MAAM,EAAE,UACR,kBAAkB,GAChB,OAAO,CAAE,MAAM,EAAE,CAAC,CAK9B;IAED;;;;;;OAMG;IACH,wBAJW,MAAM,EAAE,UACR,kBAAkB,GAChB,OAAO,CAAE,MAAM,EAAE,CAAC,CAK9B;IAED;;;;;;OAMG;IACH,qBAJW,MAAM,EAAE,UACR,kBAAkB,GAChB,OAAO,CAAE,MAAM,EAAE,CAAC,CAK9B;IAED;;;;;OAKG;IACH,oBAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAK9B;IAED;;;;;;;OAOG;IACH,iCALW,gBAAgB,YAChB,gBAAgB,cAChB,MAAM,GACJ,OAAO,CAKnB;IAED;;;;;;;;OAQG;IACH,wCANW,gBAAgB,gBAChB,gBAAgB,cAChB,MAAM,WACN,OAAO,GACL,OAAO,CAgDnB;IAED;;;;OAIG;IACH,wCAFW,MAAM,QAQhB;IAED;;;;;;;OAOG;IACH,2BALW,eAAe,aACf,MAAM,0BACN,OAAO,GACL,OAAO,CAAE,eAAe,CAAC,CA6LrC;IAED;;;;;;;;;OASG;IACH,mCAPW,eAAe,eACf,MAAM,YACN,OAAO,oBACP,oBAAoB,EAAE,oBACtB,gBAAgB,EAAE,GAChB,OAAO,CAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC,CAmNlD;IAED;;;;;OAKG;IACH,2CAHW,gBAAgB,GACd,gBAAgB,CAK5B;IAED;;;;;;;OAOG;IACH,iCALW,gBAAgB,OAChB,MAAM,kBACN,OAAO,GACL,OAAO,CAAE,MAAM,CAAC,GAAG,IAAI,CA6BnC;IAED;;;;;;OAMG;IACH,iCAJW,gBAAgB,kBAChB,OAAO,GACL,OAAO,CAAE,MAAM,CAAC,GAAG,IAAI,CAsBnC;IAED;;;;;;;;OAQG;IACH,iCANW,gBAAgB,OAChB,MAAM,eACN,OAAO,GAAC,MAAM,GAAC,KAAK,kBACpB,OAAO,GACL,OAAO,CAAE,MAAM,CAAC,GAAG,IAAI,CA4BnC;IAED;;;;;;OAMG;IACH,0CAJW,gBAAgB,YAChB,OAAO,GACL,OAAO,CAAE,IAAI,CAAC,CA2B1B;IAED;;;;;;OAMG;IACH,iCAJW,gBAAgB,kBAChB,OAAO,GACL,OAAO,CAAE,MAAM,CAAC,GAAG,IAAI,CAyBnC;IAED;;;;;;;OAOG;IACH,6BANW,SAAS,OACT,UAAU,GAAC,UAAU,GAAC,YAAY,GAAC,WAAW,GAAC,SAAS,kBACxD,gBAAgB,kBAChB,OAAO,kBACP,MAAM,QAYhB;IAED;;;;;OAKG;IACH,2BAHW,SAAS,GACP,MAAM,CAWlB;IAED;;;;;;;;OAQG;IACH,kCANW,MAAM,kBACN,iBAAiB,mBACjB,MAAM,qBACN,MAAM,EAAE,GACN,OAAO,CAAE,kBAAkB,CAAC,CAgCxC;IAED;;;;;;;;OAQG;IACH,iCANW,MAAM,OACN,MAAM,sBACN,WAAW,mBACX,MAAM,GACJ,OAAO,CAAE;QAAC,QAAQ,EAAE,CAAC,eAAe,GAAG,gBAAgB,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAoEpF;IAED;;;;;;OAMG;IACH,wCALW,MAAM,EAAE,uBACR,MAAM,oBACN,OAAO,GACL,OAAO,CAAE;QAAC,QAAQ,EAAE,CAAC,eAAe,GAAG,gBAAgB,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAqCpF;IAED;;;;;;;OAOG;IACH,4BALW,SAAS,OACT,MAAM,OACN,MAAM,GACJ,OAAO,CAAE,GAAG,CAAC,CAOzB;IAED;;;;;;OAMG;IACH,wBAJW,MAAM,OACN,MAAM,GACJ,OAAO,CAAE;QAAC,GAAG,EAAC,MAAM,CAAC;QAAC,QAAQ,EAAC,MAAM,CAAA;KAAC,CAAC,CAcnD;IAED;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,OAAO,CAAE;QAAC,GAAG,EAAC,MAAM,CAAC;QAAC,QAAQ,EAAC,MAAM,CAAA;KAAC,CAAC,CAwBnD;IAED;;;;;;OAMG;IACH,6CAJW,MAAM,GAAC,MAAM,eACb,eAAe,GACb,OAAO,CAAE,IAAI,CAAC,CAqB1B;IAED;;;;OAIG;IACH,sCAFW,gBAAgB,QAEa;IAExC;;;;;;OAMG;IACH,+BAJW,MAAM,mBACN,MAAM,GACJ,eAAe,CA2C3B;IAED;;;;;;;;;;;OAWG;IACH,8CANW,gBAAgB,aAChB,MAAM,sBACN,cAAc,GAAC,cAAc,GAAC,YAAY,GAAC,UAAU,UACrD,MAAM,GACJ,IAAI,CAwEhB;IAED;;;;;OAKG;IACH,gDAHW,gBAAgB,GACd,IAAI,CAMhB;IAED;;;;;OAKG;IACH,gDAHW,gBAAgB,GACd,IAAI,CAMhB;IAED;;;;;OAKG;IACH,yCAHW,gBAAgB,GACd,IAAI,CAMhB;IAED;;;;;OAKG;IACH,yCAHW,gBAAgB,GACd,IAAI,CAMhB;IAED;;;;;;;;OAQG;IACH,iCALW,gBAAgB,YAChB,OAAO,GACL,OAAO,CAkCnB;IAED;;;;;;;;OAQG;IACH,uCALW,MAAM,YACN,OAAO,GACL,OAAO,CA2DnB;IAED;;;;;;;OAOG;IACH,6BAqBC;IAED;;;;;;;OAOG;IACH,4BAsBC;IAED;;;;;;;;OAQG;IACH,4BANW,eAAe,eACf,MAAM,iBACN,MAAM,sBACN,WAAW,GACT,OAAO,CAAE,eAAe,CAAC,CA0FrC;IAED;;;;;;;;OAQG;IACH,2BAPW,eAAe,eACf,MAAM,WACN,MAAM,EAAE,qBACR,MAAM,sBACN,WAAW,GACT,OAAO,CAAE,gBAAgB,CAAC,CA2FtC;IAED;;;;;;;OAOG;IACH,iCAJW,MAAM,qBACN,WAAW,GACT,MAAM,CAKlB;IAED;;;;;;;OAOG;IACH,gCAJW,MAAM,qBACN,WAAW,GACT,MAAM,CAKlB;IAED;;;;;;;;;;OAUG;IACH,6CAPW,MAAM,aACN,MAAM,GAAG,MAAM,EAAE,YACjB,gBAAgB,aAChB,WAAW,gBACX,MAAM,GACJ,OAAO,CAAE,MAAM,EAAE,EAAE,CAAC,CAWhC;IAED;;;;;;;;;;OAUG;IACH,2CAPW,MAAM,aACN,MAAM,GAAC,MAAM,EAAE,YACf,gBAAgB,qBAChB,WAAW,gBACX,MAAM,GACJ,OAAO,CAAE,MAAM,EAAE,EAAE,CAAC,CAWhC;IAED;;;;;;OAMG;IACH,gCAJW,MAAM,gBACN,MAAM,GACJ,OAAO,CAAE,MAAM,CAAC,CAI5B;IAED;;;;;;;;;OASG;IACH,wCAPW,MAAM,cACN,MAAM,EAAE,gBACR,MAAM,YACN,MAAM,MACN,KAAK,GACH,OAAO,CAAE,MAAM,CAAC,CAK5B;IAED;;;;;;;;;;OAUG;IACH,oCANW,MAAM,aACN,MAAM,GAAG,MAAM,EAAE,gBACjB,MAAM,aACN,WAAW,GACT,OAAO,CAAE,kBAAkB,CAAC,CAoHxC;IAED;;;;;OAKG;IACH,yBAHW,MAAM,GACJ,MAAM,EAAE,CAkCpB;IAED;;;;;;OAMG;IACH,2BAJW,eAAe,aACf,OAAO,GACL,IAAI,CAMhB;IAED;;;;;OAKG;IACH,qBAHW,MAAM,GACJ,OAAO,CAAE;QAAC,GAAG,EAAC,MAAM,CAAC;QAAC,IAAI,EAAC,MAAM,CAAA;KAAC,CAAC,CAK/C;IAED;;;;;OAKG;IACH,gCAHW,MAAM,GACJ,OAAO,CAAE,OAAO,CAAC,CAK7B;IAED;;;;;;OAMG;IACH,oCAJW,MAAM,yBACN,MAAM,EAAE,GACN,OAAO,CAAE,IAAI,CAAC,CAe1B;IAED;;;;;;;;OAQG;IACH,4BANW,MAAM,qBACN,MAAM,iBACN,MAAM,kBACN,OAAO,GACL,OAAO,CAAE,OAAO,CAAC,CAoC7B;IAED;;;;;;;;OAQG;IACH,4BANW,MAAM,OACN,MAAM,iBACN,MAAM,kBACN,OAAO,GACL,OAAO,CAAE,OAAO,CAAC,CAyB7B;IAED;;;;OAIG;IACH,2BAFW,MAAM,iBAOhB;IAED;;;;;;;OAOG;IACH,sCALW,MAAM,gBACN,OAAO,eACP,MAAM,GACJ,OAAO,CAAE,MAAM,CAAC,CAgB5B;IAED;;;;;;OAMG;IACH,gCAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAe9B;IAED;;;;;;;OAOG;IACH,iCANW,MAAM,EAAE,qBACR,YAAY,iBACZ,YAAY,gBACZ,OAAO,GACL,OAAO,CAAE,YAAY,CAAC,CAuHlC;IAED;;;;;OAKG;IACH,4CAHW,MAAM,yBACN,YAAY,QAE8C;IAErE;;;;;;;OAOG;IACH,2BALW,gBAAgB,aAChB,MAAM,iBACN,MAAM,GACJ,CAAC,MAAM,CAAC,EAAE,CAUtB;IAED;;;;;;;OAOG;IACH,iCALW,GAAG,kBACH,MAAM,EAAE,iBACR,MAAM,GACJ,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAkBjC;IAED;;;;OAIG;IACH,qCAHW,eAAe,GACb,MAAM,EAAE,CA2DpB;IAED;;;;;;;OAOG;IACH,4BALW,MAAM,gBACN,gBAAgB,gBAChB,MAAM,GACJ,MAAM,CAelB;IAED;;OAEG;IACH;;;;;OAKG;IAEH;;;;;;;OAOG;IACH,0BALW,UAAU,GAAC,iBAAiB,GAAC,QAAQ,gBACrC,gBAAgB,GAAG,eAAe,aAClC,MAAM,GACJ,OAAO,CAAE,gBAAgB,GAAG,eAAe,CAAC,CAsHxD;CACJ;;;;;;;;;;;;gBAaS,GAAG;oBAIH,OAAO;iBAIP,MAAM;kBAIN,QAAQ"}
|
|
@@ -20,6 +20,8 @@ import File from '../util/file.js';
|
|
|
20
20
|
* @typedef {import('../../types/mcdev.d.js').SoapRequestParams} SoapRequestParams
|
|
21
21
|
* @typedef {import('../../types/mcdev.d.js').TemplateMap} TemplateMap
|
|
22
22
|
* @typedef {import('../../types/mcdev.d.js').DataFilterItem} DataFilterItem
|
|
23
|
+
* @typedef {import('../../types/mcdev.d.js').DataExtensionFieldMap} DataExtensionFieldMap
|
|
24
|
+
* @typedef {import('../../types/mcdev.d.js').DataExtensionFieldItem} DataExtensionFieldItem
|
|
23
25
|
* @typedef {import('../../types/mcdev.d.js').DataFilterMap} DataFilterMap
|
|
24
26
|
* @typedef {import('../../types/mcdev.d.js').MultiMetadataTypeMap} MultiMetadataTypeMap
|
|
25
27
|
* @typedef {import('../../types/mcdev.d.js').FilterConditionSet} FilterConditionSet
|
|
@@ -201,12 +203,18 @@ class DataFilter extends MetadataType {
|
|
|
201
203
|
: Object.values(metadataTypeMap)
|
|
202
204
|
.filter((item) => item.r__source_dataExtension_key)
|
|
203
205
|
.map((item) => item.r__source_dataExtension_key)
|
|
206
|
+
.filter(
|
|
207
|
+
(deKey) =>
|
|
208
|
+
!this.cache.dataExtensionField ||
|
|
209
|
+
!this.cache.dataExtensionField[deKey]
|
|
210
|
+
)
|
|
204
211
|
.filter(Boolean);
|
|
205
212
|
if (deKeys.length) {
|
|
213
|
+
const deKeysUnique = [...new Set(deKeys)];
|
|
206
214
|
Util.logger.info(' - Caching dependent Metadata: dataExtensionField');
|
|
207
215
|
// only proceed with the download if we have dataExtension keys
|
|
208
216
|
const fieldOptions = {};
|
|
209
|
-
for (const deKey of
|
|
217
|
+
for (const deKey of deKeysUnique) {
|
|
210
218
|
fieldOptions.filter = fieldOptions.filter
|
|
211
219
|
? {
|
|
212
220
|
leftOperand: {
|
|
@@ -226,9 +234,32 @@ class DataFilter extends MetadataType {
|
|
|
226
234
|
DataExtensionField.buObject = this.buObject;
|
|
227
235
|
DataExtensionField.client = this.client;
|
|
228
236
|
DataExtensionField.properties = this.properties;
|
|
229
|
-
this.
|
|
230
|
-
await DataExtensionField.retrieveForCacheDE(fieldOptions, ['Name', 'ObjectID'])
|
|
231
|
-
|
|
237
|
+
this.saveDataExtensionFieldCacheToMap(
|
|
238
|
+
(await DataExtensionField.retrieveForCacheDE(fieldOptions, ['Name', 'ObjectID']))
|
|
239
|
+
.metadata
|
|
240
|
+
);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* helper for {@link DataFilter._cacheDeFields}
|
|
245
|
+
*
|
|
246
|
+
* @param {DataExtensionFieldMap} deFieldCache -
|
|
247
|
+
*/
|
|
248
|
+
static saveDataExtensionFieldCacheToMap(deFieldCache) {
|
|
249
|
+
this.cache.dataExtensionField ||= {};
|
|
250
|
+
|
|
251
|
+
if (!deFieldCache) {
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
254
|
+
for (const field of Object.values(deFieldCache)) {
|
|
255
|
+
if (!field?.DataExtension?.CustomerKey) {
|
|
256
|
+
continue;
|
|
257
|
+
}
|
|
258
|
+
if (!this.cache.dataExtensionField[field.DataExtension.CustomerKey]) {
|
|
259
|
+
/** @type {Object.<string, DataExtensionFieldItem[]>} */
|
|
260
|
+
this.cache.dataExtensionField[field.DataExtension.CustomerKey] = [];
|
|
261
|
+
}
|
|
262
|
+
this.cache.dataExtensionField[field.DataExtension.CustomerKey].push(field);
|
|
232
263
|
}
|
|
233
264
|
}
|
|
234
265
|
/**
|
|
@@ -399,7 +430,7 @@ class DataFilter extends MetadataType {
|
|
|
399
430
|
*
|
|
400
431
|
* @param {DataFilterItem} metadata -
|
|
401
432
|
* @param {'postRetrieve'|'preDeploy'} mode -
|
|
402
|
-
* @param {
|
|
433
|
+
* @param {DataExtensionFieldItem[]} [fieldCache] -
|
|
403
434
|
* @param {FilterConditionSet} [filter] -
|
|
404
435
|
* @returns {void}
|
|
405
436
|
*/
|
|
@@ -408,7 +439,7 @@ class DataFilter extends MetadataType {
|
|
|
408
439
|
return this._resolveFields(
|
|
409
440
|
metadata,
|
|
410
441
|
mode,
|
|
411
|
-
|
|
442
|
+
this.cache.dataExtensionField[metadata.r__source_dataExtension_key],
|
|
412
443
|
metadata.c__filterDefinition?.ConditionSet
|
|
413
444
|
);
|
|
414
445
|
}
|
|
@@ -418,11 +449,11 @@ class DataFilter extends MetadataType {
|
|
|
418
449
|
: [filter.Condition];
|
|
419
450
|
if (mode === 'postRetrieve') {
|
|
420
451
|
for (const condition of conditionsArr) {
|
|
421
|
-
this._postRetrieve_resolveFieldIdsCondition(condition, fieldCache);
|
|
452
|
+
this._postRetrieve_resolveFieldIdsCondition(metadata, condition, fieldCache);
|
|
422
453
|
}
|
|
423
454
|
} else if (mode === 'preDeploy') {
|
|
424
455
|
for (const condition of conditionsArr) {
|
|
425
|
-
this._preDeploy_resolveFieldNamesCondition(condition, fieldCache);
|
|
456
|
+
this._preDeploy_resolveFieldNamesCondition(metadata, condition, fieldCache);
|
|
426
457
|
}
|
|
427
458
|
}
|
|
428
459
|
}
|
|
@@ -438,16 +469,21 @@ class DataFilter extends MetadataType {
|
|
|
438
469
|
/**
|
|
439
470
|
* helper for {@link _resolveFields}
|
|
440
471
|
*
|
|
472
|
+
* @param {DataFilterItem} metadata -
|
|
441
473
|
* @param {FilterCondition} condition -
|
|
442
|
-
* @param {
|
|
474
|
+
* @param {DataExtensionFieldItem[]} fieldCache -
|
|
443
475
|
* @returns {void}
|
|
444
476
|
*/
|
|
445
|
-
static _postRetrieve_resolveFieldIdsCondition(condition, fieldCache) {
|
|
477
|
+
static _postRetrieve_resolveFieldIdsCondition(metadata, condition, fieldCache) {
|
|
446
478
|
condition.r__dataExtensionField_name = fieldCache.find(
|
|
447
479
|
(field) => field.ObjectID === condition['@_ID']
|
|
448
480
|
)?.Name;
|
|
449
481
|
if (condition.r__dataExtensionField_name) {
|
|
450
482
|
delete condition['@_ID'];
|
|
483
|
+
} else {
|
|
484
|
+
Util.logger.warn(
|
|
485
|
+
` - ${this.definition.type} ${metadata[this.definition.keyField]}: could not resolve dataExtensionField with ID ${condition['@_ID']} in condition`
|
|
486
|
+
);
|
|
451
487
|
}
|
|
452
488
|
if (['IsEmpty', 'IsNotEmpty'].includes(condition['@_Operator'])) {
|
|
453
489
|
delete condition.Value;
|
|
@@ -456,16 +492,21 @@ class DataFilter extends MetadataType {
|
|
|
456
492
|
/**
|
|
457
493
|
* helper for {@link _resolveFields}
|
|
458
494
|
*
|
|
495
|
+
* @param {DataFilterItem} metadata -
|
|
459
496
|
* @param {FilterCondition} condition -
|
|
460
|
-
* @param {
|
|
497
|
+
* @param {DataExtensionFieldItem[]} fieldCache -
|
|
461
498
|
* @returns {void}
|
|
462
499
|
*/
|
|
463
|
-
static _preDeploy_resolveFieldNamesCondition(condition, fieldCache) {
|
|
500
|
+
static _preDeploy_resolveFieldNamesCondition(metadata, condition, fieldCache) {
|
|
464
501
|
condition['@_ID'] = fieldCache.find(
|
|
465
502
|
(field) => field.Name === condition.r__dataExtensionField_name
|
|
466
503
|
)?.ObjectID;
|
|
467
504
|
if (condition['@_ID']) {
|
|
468
505
|
delete condition.r__dataExtensionField_name;
|
|
506
|
+
} else {
|
|
507
|
+
throw new Error(
|
|
508
|
+
` - ${this.definition.type} ${metadata[this.definition.keyField]}: could not resolve dataExtensionField with Name ${condition.r__dataExtensionField_name} in condition`
|
|
509
|
+
);
|
|
469
510
|
}
|
|
470
511
|
if (['IsEmpty', 'IsNotEmpty'].includes(condition['@_Operator'])) {
|
|
471
512
|
condition.Value ||= '';
|
|
@@ -753,6 +753,19 @@ class MetadataType {
|
|
|
753
753
|
return false;
|
|
754
754
|
}
|
|
755
755
|
|
|
756
|
+
/**
|
|
757
|
+
* helper for {@link MetadataType.upsert} to enforce max key length
|
|
758
|
+
*
|
|
759
|
+
* @param {string} metadataKey key of metadata
|
|
760
|
+
*/
|
|
761
|
+
static enforceMaxKeyLength(metadataKey) {
|
|
762
|
+
if (this.definition.maxKeyLength && metadataKey.length > this.definition.maxKeyLength) {
|
|
763
|
+
throw new Error(
|
|
764
|
+
`key exceeds maximum length of ${this.definition.maxKeyLength} characters for this type`
|
|
765
|
+
);
|
|
766
|
+
}
|
|
767
|
+
}
|
|
768
|
+
|
|
756
769
|
/**
|
|
757
770
|
* MetadataType upsert, after retrieving from target and comparing to check if create or update operation is needed.
|
|
758
771
|
*
|
|
@@ -774,6 +787,7 @@ class MetadataType {
|
|
|
774
787
|
// preDeployTasks parsing
|
|
775
788
|
let deployableMetadata;
|
|
776
789
|
try {
|
|
790
|
+
this.enforceMaxKeyLength(metadataKey);
|
|
777
791
|
metadataMap[metadataKey] = await this.validation(
|
|
778
792
|
'deploy',
|
|
779
793
|
metadataMap[metadataKey],
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
|
-
"customerKey": "
|
|
2
|
+
"customerKey": "testExisting_asset_html-matchNameAdd",
|
|
3
3
|
"assetType": {
|
|
4
4
|
"name": "htmlblock",
|
|
5
5
|
"displayName": "HTML Block"
|
|
6
6
|
},
|
|
7
7
|
"fileProperties": {
|
|
8
|
-
"fileName": "
|
|
8
|
+
"fileName": "testExisting_asset_html-matchNameAdd"
|
|
9
9
|
},
|
|
10
|
-
"name": "
|
|
10
|
+
"name": "testExisting_asset_html-matchNameAdd",
|
|
11
11
|
"owner": {
|
|
12
12
|
"email": "joern.berkefeld@accenture.com",
|
|
13
13
|
"name": "Jörn Berkefeld (ASGR)"
|
package/test/type.asset.test.js
CHANGED
|
@@ -443,7 +443,7 @@ describe('type: asset', () => {
|
|
|
443
443
|
const deployResult = await handler.deploy(
|
|
444
444
|
'testInstance/testBU',
|
|
445
445
|
['asset'],
|
|
446
|
-
['
|
|
446
|
+
['testExisting_asset_html-matchName']
|
|
447
447
|
);
|
|
448
448
|
// THEN
|
|
449
449
|
assert.equal(process.exitCode, 0, 'deploy should not have thrown an error');
|
|
@@ -464,8 +464,8 @@ describe('type: asset', () => {
|
|
|
464
464
|
);
|
|
465
465
|
assert.equal(
|
|
466
466
|
upsertCallout?.customerKey,
|
|
467
|
-
'
|
|
468
|
-
'customerKey should be
|
|
467
|
+
'testExisting_asset_html-matchName',
|
|
468
|
+
'customerKey should be testExisting_asset_html-matchName'
|
|
469
469
|
);
|
|
470
470
|
assert.equal(
|
|
471
471
|
upsertCallout?.id,
|
|
@@ -487,7 +487,7 @@ describe('type: asset', () => {
|
|
|
487
487
|
const deployResult = await handler.deploy(
|
|
488
488
|
'testInstance/testBU',
|
|
489
489
|
['asset'],
|
|
490
|
-
['
|
|
490
|
+
['testExisting_asset_html-matchNamFail']
|
|
491
491
|
);
|
|
492
492
|
// THEN
|
|
493
493
|
assert.equal(process.exitCode, 1, 'deploy should have thrown an error');
|
|
@@ -518,7 +518,7 @@ describe('type: asset', () => {
|
|
|
518
518
|
const deployResult = await handler.deploy(
|
|
519
519
|
'testInstance/testBU',
|
|
520
520
|
['asset'],
|
|
521
|
-
['
|
|
521
|
+
['testExisting_asset_html-matchNameAdd']
|
|
522
522
|
);
|
|
523
523
|
// THEN
|
|
524
524
|
assert.equal(process.exitCode, 0, 'deploy should not have thrown an error');
|
|
@@ -535,8 +535,8 @@ describe('type: asset', () => {
|
|
|
535
535
|
const upsertCallout = testUtils.getRestCallout('post', '/asset/v1/content/assets/');
|
|
536
536
|
assert.equal(
|
|
537
537
|
upsertCallout?.customerKey,
|
|
538
|
-
'
|
|
539
|
-
'asset.customerKey should be
|
|
538
|
+
'testExisting_asset_html-matchNameAdd',
|
|
539
|
+
'asset.customerKey should be testExisting_asset_html-matchNameAdd'
|
|
540
540
|
);
|
|
541
541
|
assert.equal(
|
|
542
542
|
upsertCallout?.id,
|
|
File without changes
|
|
File without changes
|