yaveon.ecm.d3dwebhooks 0.9.18 → 0.10.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/js/Yaveon.ECM.d3d.Utility.js +4 -4
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Constants.d.ts +2 -1
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Constants.js +1 -0
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Constants.js.map +1 -1
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Interfaces.d.ts +10 -2
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Logic.js +9 -2
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Logic.js.map +1 -1
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Utility.d.ts +2 -2
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Utility.js +38 -16
- package/js/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Utility.js.map +1 -1
- package/package.json +1 -1
|
@@ -73,10 +73,10 @@ class d3dUtility {
|
|
|
73
73
|
d3dObjectProperty.value = newValue;
|
|
74
74
|
}
|
|
75
75
|
if ('values' in d3dObjectProperty) {
|
|
76
|
-
d3dObjectProperty.values
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
76
|
+
d3dObjectProperty.values.push({
|
|
77
|
+
row: d3dObjectProperty.values.length,
|
|
78
|
+
value: newValue
|
|
79
|
+
});
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
}
|
|
@@ -10,6 +10,7 @@ exports.Constants = Constants;
|
|
|
10
10
|
(function (SourceType) {
|
|
11
11
|
SourceType["Bucket"] = "bucket";
|
|
12
12
|
SourceType["Documents"] = "documents";
|
|
13
|
+
SourceType["RegEx"] = "regex";
|
|
13
14
|
})(SourceType = Constants.SourceType || (Constants.SourceType = {}));
|
|
14
15
|
})(Constants || (exports.Constants = Constants = {}));
|
|
15
16
|
//# sourceMappingURL=Yaveon.ECM.d3d.Webhook.Enrich.Constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.Enrich.Constants.js","sourceRoot":"","sources":["../../../source/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Constants.ts"],"names":[],"mappings":";;;AAAA,6FAAgF;AAEhF,MAAa,SAAU,SAAQ,4CAAU;CACxC;AADD,8BACC;AAED,WAAiB,SAAS;IACtB,IAAY,
|
|
1
|
+
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.Enrich.Constants.js","sourceRoot":"","sources":["../../../source/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Constants.ts"],"names":[],"mappings":";;;AAAA,6FAAgF;AAEhF,MAAa,SAAU,SAAQ,4CAAU;CACxC;AADD,8BACC;AAED,WAAiB,SAAS;IACtB,IAAY,UAIX;IAJD,WAAY,UAAU;QAClB,+BAAiB,CAAA;QACjB,qCAAuB,CAAA;QACvB,6BAAe,CAAA;IACnB,CAAC,EAJW,UAAU,GAAV,oBAAU,KAAV,oBAAU,QAIrB;AACL,CAAC,EANgB,SAAS,yBAAT,SAAS,QAMzB"}
|
|
@@ -14,12 +14,20 @@ export interface IWebhookConfigEnrichEnrichFieldProperty {
|
|
|
14
14
|
}
|
|
15
15
|
export interface IWebhookConfigEnrichSourceDefinitionProperty {
|
|
16
16
|
type: Constants.SourceType;
|
|
17
|
-
|
|
17
|
+
}
|
|
18
|
+
export interface IWebhookConfigEnrichRegExDefinitionProperty extends IWebhookConfigEnrichSourceDefinitionProperty {
|
|
19
|
+
regExpressions: IWebhookConfigEnrichRegExProperty[];
|
|
20
|
+
}
|
|
21
|
+
export interface IWebhookConfigEnrichRegExProperty {
|
|
22
|
+
objectPropertyGuid: string;
|
|
23
|
+
regExGuid: string;
|
|
24
|
+
regExPattern: string;
|
|
18
25
|
}
|
|
19
26
|
export interface IWebhookConfigEnrichBucketDefinitionProperty extends IWebhookConfigEnrichSourceDefinitionProperty {
|
|
20
27
|
bucketUrl: string;
|
|
28
|
+
selectMapping: IWebhookConfigEnrichBucketSelectMappingProperty;
|
|
21
29
|
}
|
|
22
|
-
export interface
|
|
30
|
+
export interface IWebhookConfigEnrichBucketSelectMappingProperty {
|
|
23
31
|
joinString: string;
|
|
24
32
|
objectInputs: IWebhookConfigEnrichObjectInput[];
|
|
25
33
|
sourcePropertyGuid: string;
|
|
@@ -35,10 +35,17 @@ let runWebHook = async (req) => {
|
|
|
35
35
|
let docProp = doc.properties.find(p => p.id === propertyMapping.toPropertyGuid);
|
|
36
36
|
if (docProp) {
|
|
37
37
|
if ('value' in docProp) {
|
|
38
|
-
docProp.value = searchItem
|
|
38
|
+
docProp.value = typeof searchItem.get(propertyMapping.fromPropertyGuid) === 'string'
|
|
39
|
+
? searchItem.get(propertyMapping.fromPropertyGuid)
|
|
40
|
+
: '';
|
|
39
41
|
}
|
|
40
42
|
if ('values' in docProp) {
|
|
41
|
-
docProp.values
|
|
43
|
+
docProp.values.push({
|
|
44
|
+
row: docProp.values.length + 1,
|
|
45
|
+
value: typeof searchItem.get(propertyMapping.fromPropertyGuid) === 'string'
|
|
46
|
+
? searchItem.get(propertyMapping.fromPropertyGuid)
|
|
47
|
+
: ''
|
|
48
|
+
});
|
|
42
49
|
}
|
|
43
50
|
}
|
|
44
51
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.Enrich.Logic.js","sourceRoot":"","sources":["../../../source/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Logic.ts"],"names":[],"mappings":";;;AAAA,+FAA+E;AAG/E,mGAAwE;AAGxE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,GAAG,GAAG,CAAC;AAE3C,IAAI,GAAG,GAAG,KAAK,EAAE,GAAQ,EAA6B,EAAE,GAAG,OAAO,UAAU,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC,CAAA;AAA/E,QAAA,GAAG,OAA4E;AACnF,IAAI,MAAM,GAAG,KAAK,EAAE,GAAQ,EAA6B,EAAE,GAAG,OAAO,UAAU,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC,CAAA;AAAlF,QAAA,MAAM,UAA4E;AAE7F,IAAI,UAAU,GAAG,KAAK,EAAE,GAAQ,EAA6B,EAAE;IAE3D,IAAI,eAAe,GAAqB;QACpC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE;QACnB,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,GAAG;KACnB,CAAC;IAEF,IAAI,GAAG,GAAiB,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC;IAGpD,IAAG;QACC,eAAe,CAAC,SAAS,IAAI,sCAAsC,CAAC;QACpE,MAAM,QAAQ,GAAqB,IAAI,gDAAgB,CACnD,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,EACvB,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAC7B,SAAS,GAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,SAAS,EAAC,EAAE,CAAC,CAC3D,CAAC;QACF,eAAe,CAAC,SAAS,IAAI,QAAQ,CAAC;QAEtC,IAAG;YAEC,eAAe,CAAC,SAAS,IAAI,8BAA8B,CAAC;YAC5D,MAAM,MAAM,GAAyB,MAAM,QAAQ,CAAC,gBAAgB,EAAwB,CAAC;YAC7F,eAAe,CAAC,SAAS,IAAI,QAAQ,CAAC;YAEtC,MAAM,gBAAgB,GAAG,qDAAa,CAAC,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAE3E,IAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAC;gBAC3B,KAAK,MAAM,gBAAgB,IAAI,gBAAgB,EAAC;oBAC5C,KAAI,MAAM,WAAW,IAAI,gBAAgB,CAAC,YAAY,EAAC;wBACnD,MAAM,UAAU,GAAG,CAAC,MAAM,qDAAa,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE,WAAW,CAAC,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.Enrich.Logic.js","sourceRoot":"","sources":["../../../source/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Logic.ts"],"names":[],"mappings":";;;AAAA,+FAA+E;AAG/E,mGAAwE;AAGxE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,GAAG,GAAG,CAAC;AAE3C,IAAI,GAAG,GAAG,KAAK,EAAE,GAAQ,EAA6B,EAAE,GAAG,OAAO,UAAU,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC,CAAA;AAA/E,QAAA,GAAG,OAA4E;AACnF,IAAI,MAAM,GAAG,KAAK,EAAE,GAAQ,EAA6B,EAAE,GAAG,OAAO,UAAU,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC,CAAA;AAAlF,QAAA,MAAM,UAA4E;AAE7F,IAAI,UAAU,GAAG,KAAK,EAAE,GAAQ,EAA6B,EAAE;IAE3D,IAAI,eAAe,GAAqB;QACpC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE;QACnB,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,GAAG;KACnB,CAAC;IAEF,IAAI,GAAG,GAAiB,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC;IAGpD,IAAG;QACC,eAAe,CAAC,SAAS,IAAI,sCAAsC,CAAC;QACpE,MAAM,QAAQ,GAAqB,IAAI,gDAAgB,CACnD,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,EACvB,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAC7B,SAAS,GAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,SAAS,EAAC,EAAE,CAAC,CAC3D,CAAC;QACF,eAAe,CAAC,SAAS,IAAI,QAAQ,CAAC;QAEtC,IAAG;YAEC,eAAe,CAAC,SAAS,IAAI,8BAA8B,CAAC;YAC5D,MAAM,MAAM,GAAyB,MAAM,QAAQ,CAAC,gBAAgB,EAAwB,CAAC;YAC7F,eAAe,CAAC,SAAS,IAAI,QAAQ,CAAC;YAEtC,MAAM,gBAAgB,GAAG,qDAAa,CAAC,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAE3E,IAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAC;gBAC3B,KAAK,MAAM,gBAAgB,IAAI,gBAAgB,EAAC;oBAC5C,KAAI,MAAM,WAAW,IAAI,gBAAgB,CAAC,YAAY,EAAC;wBACnD,MAAM,UAAU,GAAG,CAAC,MAAM,qDAAa,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAiB,CAAC;wBAEvH,IAAI,UAAU,KAAK,SAAS,EAAC;4BACzB,SAAS;yBACZ;wBAED,KAAK,MAAM,eAAe,IAAI,WAAW,CAAC,gBAAgB,EAAC;4BACvD,IAAI,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,eAAe,CAAC,cAAc,CAAC,CAAC;4BAEhF,IAAI,OAAO,EAAC;gCACR,IAAG,OAAO,IAAI,OAAO,EAAC;oCACjB,OAA8B,CAAC,KAAK,GAAG,OAAO,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,gBAAgB,CAAC,KAAK,QAAQ;wCACpE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,gBAAgB,CAAW;wCAC5D,CAAC,CAAC,EAAE,CAAC;iCAChD;gCACD,IAAG,QAAQ,IAAI,OAAO,EAAC;oCAClB,OAAmC,CAAC,MAAM,CAAC,IAAI,CAAC;wCAC7C,GAAG,EAAG,OAAmC,CAAC,MAAM,CAAC,MAAM,GAAC,CAAC;wCACzD,KAAK,EAAE,OAAO,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,gBAAgB,CAAC,KAAK,QAAQ;4CACpE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,gBAAgB,CAAW;4CAC5D,CAAC,CAAC,EAAE;qCACd,CAAC,CAAC;iCACN;6BAEJ;yBACJ;wBAMD,eAAe,CAAC,SAAS,IAAI,+CAA+C,GAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;wBACjG,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;qBACrE;iBACJ;aACJ;SACJ;QACD,OAAM,EAAO,EAAC;YACV,eAAe,CAAC,WAAW,GAAG,GAAG,CAAC;YAClC,eAAe,CAAC,SAAS,IAAI,SAAS,CAAC;YACvC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAC;gBACjB,eAAe,CAAC,SAAS,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;aACjD;iBACI,IAAG,EAAE,CAAC,OAAO,EAAC;gBACf,eAAe,CAAC,SAAS,IAAI,EAAE,CAAC,OAAO,CAAC;aAC3C;iBACG;gBACA,eAAe,CAAC,SAAS,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;aAC9C;SACJ;KACJ;IACD,OAAM,EAAO,EAAC;QACV,eAAe,CAAC,WAAW,GAAG,GAAG,CAAC;QAClC,eAAe,CAAC,SAAS,IAAI,SAAS,CAAC;QACvC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAC;YACjB,eAAe,CAAC,SAAS,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;SACjD;aACI,IAAG,EAAE,CAAC,OAAO,EAAC;YACf,eAAe,CAAC,SAAS,IAAI,EAAE,CAAC,OAAO,CAAC;SAC3C;aACG;YACA,eAAe,CAAC,SAAS,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;SAC9C;KACJ;IAED,OAAO,eAAe,CAAC;AAC3B,CAAC,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { d3dUtility } from '../../Yaveon.ECM.d3d.Utility';
|
|
2
|
-
import { IWhDocObject
|
|
2
|
+
import { IWhDocObject } from '../../Yaveon.ECM.d3d.Webhook.Interfaces';
|
|
3
3
|
import { IWebhookConfigEnrich, IWebhookConfigEnrichProperty, IWebhookConfigEnrichPropertyMappingProperty, IWebhookConfigEnrichSourceDefinitionProperty } from './Yaveon.ECM.d3d.Webhook.Enrich.Interfaces';
|
|
4
4
|
import { D3dWebhookClient } from '../../clients/Yaveon.ECM.d3d.Webhook.Client';
|
|
5
5
|
export declare class EnrichUtility extends d3dUtility {
|
|
6
6
|
static getBodyProperties(sourceObject: IWhDocObject | any, propertyMappings: IWebhookConfigEnrichPropertyMappingProperty[]): Object[];
|
|
7
7
|
static getSearchProperties(doc: IWhDocObject, sourceDefinition: IWebhookConfigEnrichSourceDefinitionProperty): Map<string, any> | string;
|
|
8
|
-
static getSearchResults(whClient: D3dWebhookClient, doc: IWhDocObject, sourceDefinition: IWebhookConfigEnrichSourceDefinitionProperty): Promise<
|
|
8
|
+
static getSearchResults(whClient: D3dWebhookClient, doc: IWhDocObject, sourceDefinition: IWebhookConfigEnrichSourceDefinitionProperty): Promise<Map<any, any>>;
|
|
9
9
|
static getEnrichConfiguration(doc: IWhDocObject, config: IWebhookConfigEnrich): IWebhookConfigEnrichProperty[];
|
|
10
10
|
}
|
|
@@ -22,34 +22,56 @@ class EnrichUtility extends Yaveon_ECM_d3d_Utility_1.d3dUtility {
|
|
|
22
22
|
return updateProperties;
|
|
23
23
|
}
|
|
24
24
|
static getSearchProperties(doc, sourceDefinition) {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
25
|
+
switch (sourceDefinition.type.toLowerCase()) {
|
|
26
|
+
case Yaveon_ECM_d3d_Webhook_Enrich_Constants_1.Constants.SourceType.Bucket.toLowerCase():
|
|
27
|
+
let _sourceDefinition = sourceDefinition;
|
|
28
|
+
let inputValues = [];
|
|
29
|
+
for (const objectInput of _sourceDefinition.selectMapping.objectInputs) {
|
|
30
|
+
let docProperty = doc.properties.find((p) => p.id === objectInput.objectPropertyGuid);
|
|
31
|
+
if (docProperty !== undefined) {
|
|
32
|
+
let docPropertyValue = this.getDocPropertyValues(docProperty);
|
|
33
|
+
inputValues = inputValues.concat(docPropertyValue);
|
|
34
|
+
}
|
|
33
35
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
+
return inputValues.join(_sourceDefinition.selectMapping.joinString);
|
|
37
|
+
default:
|
|
38
|
+
throw new TypeError("Unable to narrow down provided sourceDefinition to an implemented source." + JSON.stringify(sourceDefinition));
|
|
36
39
|
}
|
|
37
|
-
throw new TypeError("Unable to narrow down provided sourceDefinition to an implemented source." + JSON.stringify(sourceDefinition));
|
|
38
40
|
}
|
|
39
41
|
static async getSearchResults(whClient, doc, sourceDefinition) {
|
|
40
|
-
|
|
41
|
-
switch (sourceDefinition.type) {
|
|
42
|
+
switch (sourceDefinition.type.toLocaleLowerCase()) {
|
|
42
43
|
case Yaveon_ECM_d3d_Webhook_Enrich_Constants_1.Constants.SourceType.Bucket:
|
|
43
|
-
|
|
44
|
+
const searchProperties = this.getSearchProperties(doc, sourceDefinition);
|
|
45
|
+
const bucketSourceDef = sourceDefinition;
|
|
44
46
|
try {
|
|
45
|
-
return await whClient.getBucketEntry(
|
|
47
|
+
return new Map(Object.entries(await whClient.getBucketEntry(bucketSourceDef.bucketUrl, searchProperties)));
|
|
46
48
|
}
|
|
47
49
|
catch (ex) {
|
|
48
50
|
if (ex.response.status === 404) {
|
|
49
|
-
return
|
|
51
|
+
return new Map();
|
|
50
52
|
}
|
|
51
53
|
throw ex;
|
|
52
54
|
}
|
|
55
|
+
case Yaveon_ECM_d3d_Webhook_Enrich_Constants_1.Constants.SourceType.RegEx:
|
|
56
|
+
const resultMap = new Map();
|
|
57
|
+
const regExSourceDef = sourceDefinition;
|
|
58
|
+
regExSourceDef.regExpressions.forEach((regExpression) => {
|
|
59
|
+
const docPropertyValues = this.getDocPropertyValues(doc, regExpression.objectPropertyGuid);
|
|
60
|
+
docPropertyValues.forEach((docPropertyValue, index, myArray) => {
|
|
61
|
+
var _a;
|
|
62
|
+
const regExMatch = docPropertyValue.match(new RegExp(regExpression.regExPattern));
|
|
63
|
+
const matchValue = regExMatch !== null ? regExMatch[0] : '';
|
|
64
|
+
if (myArray.length === 1) {
|
|
65
|
+
resultMap.set(regExpression.regExGuid, matchValue);
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
const valueArray = (_a = resultMap.get(regExpression.regExGuid)) !== null && _a !== void 0 ? _a : [];
|
|
69
|
+
valueArray.push(matchValue);
|
|
70
|
+
resultMap.set(regExpression.regExGuid, valueArray);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
return resultMap;
|
|
53
75
|
case Yaveon_ECM_d3d_Webhook_Enrich_Constants_1.Constants.SourceType.Documents:
|
|
54
76
|
throw new TypeError('Source type \'' + sourceDefinition.type + '\' has not been implemented yet');
|
|
55
77
|
default:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.Enrich.Utility.js","sourceRoot":"","sources":["../../../source/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Utility.ts"],"names":[],"mappings":";;;AAAA,yEAA0D;
|
|
1
|
+
{"version":3,"file":"Yaveon.ECM.d3d.Webhook.Enrich.Utility.js","sourceRoot":"","sources":["../../../source/features/Enrich/Yaveon.ECM.d3d.Webhook.Enrich.Utility.ts"],"names":[],"mappings":"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"}
|