@livetronics/wocul-email-config 1.3.0 → 1.5.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/dist/index.d.ts +1 -1
- package/dist/index.js +4 -2
- package/dist/templates.js +24 -1
- package/dist/types.d.ts +4 -2
- package/dist/types.js +1 -1
- package/dist/validation.d.ts +29 -0
- package/dist/validation.js +59 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export * from './types';
|
|
2
2
|
export { EMAIL_TEMPLATES } from './templates';
|
|
3
3
|
export { default as EMAIL_TEMPLATES_DEFAULT } from './templates';
|
|
4
|
-
export { getEmailTemplate, validateEmailParams, getValidEventTypes, getValidSubCategories, getTemplateName, getSubject } from './validation';
|
|
4
|
+
export { getEmailTemplate, validateEmailParams, getValidEventTypes, getValidSubCategories, getTemplateName, getSubject, sanitizeSubjectValue, renderSubject } from './validation';
|
package/dist/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.getSubject = exports.getTemplateName = exports.getValidSubCategories = exports.getValidEventTypes = exports.validateEmailParams = exports.getEmailTemplate = exports.EMAIL_TEMPLATES_DEFAULT = exports.EMAIL_TEMPLATES = void 0;
|
|
20
|
+
exports.renderSubject = exports.sanitizeSubjectValue = exports.getSubject = exports.getTemplateName = exports.getValidSubCategories = exports.getValidEventTypes = exports.validateEmailParams = exports.getEmailTemplate = exports.EMAIL_TEMPLATES_DEFAULT = exports.EMAIL_TEMPLATES = void 0;
|
|
21
21
|
// Export all types
|
|
22
22
|
__exportStar(require("./types"), exports);
|
|
23
23
|
// Export templates
|
|
@@ -33,4 +33,6 @@ Object.defineProperty(exports, "getValidEventTypes", { enumerable: true, get: fu
|
|
|
33
33
|
Object.defineProperty(exports, "getValidSubCategories", { enumerable: true, get: function () { return validation_1.getValidSubCategories; } });
|
|
34
34
|
Object.defineProperty(exports, "getTemplateName", { enumerable: true, get: function () { return validation_1.getTemplateName; } });
|
|
35
35
|
Object.defineProperty(exports, "getSubject", { enumerable: true, get: function () { return validation_1.getSubject; } });
|
|
36
|
-
|
|
36
|
+
Object.defineProperty(exports, "sanitizeSubjectValue", { enumerable: true, get: function () { return validation_1.sanitizeSubjectValue; } });
|
|
37
|
+
Object.defineProperty(exports, "renderSubject", { enumerable: true, get: function () { return validation_1.renderSubject; } });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtQkFBbUI7QUFDbkIsMENBQXVCO0FBRXZCLG1CQUFtQjtBQUNuQix5Q0FBNkM7QUFBcEMsNEdBQUEsZUFBZSxPQUFBO0FBQ3hCLHlDQUFnRTtBQUF2RCxxSUFBQSxPQUFPLE9BQTJCO0FBRTNDLDhCQUE4QjtBQUM5QiwyQ0FTcUI7QUFSbkIsOEdBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsaUhBQUEsbUJBQW1CLE9BQUE7QUFDbkIsZ0hBQUEsa0JBQWtCLE9BQUE7QUFDbEIsbUhBQUEscUJBQXFCLE9BQUE7QUFDckIsNkdBQUEsZUFBZSxPQUFBO0FBQ2Ysd0dBQUEsVUFBVSxPQUFBO0FBQ1Ysa0hBQUEsb0JBQW9CLE9BQUE7QUFDcEIsMkdBQUEsYUFBYSxPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gRXhwb3J0IGFsbCB0eXBlc1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcydcblxuLy8gRXhwb3J0IHRlbXBsYXRlc1xuZXhwb3J0IHsgRU1BSUxfVEVNUExBVEVTIH0gZnJvbSAnLi90ZW1wbGF0ZXMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIEVNQUlMX1RFTVBMQVRFU19ERUZBVUxUIH0gZnJvbSAnLi90ZW1wbGF0ZXMnXG5cbi8vIEV4cG9ydCB2YWxpZGF0aW9uIGZ1bmN0aW9uc1xuZXhwb3J0IHtcbiAgZ2V0RW1haWxUZW1wbGF0ZSxcbiAgdmFsaWRhdGVFbWFpbFBhcmFtcyxcbiAgZ2V0VmFsaWRFdmVudFR5cGVzLFxuICBnZXRWYWxpZFN1YkNhdGVnb3JpZXMsXG4gIGdldFRlbXBsYXRlTmFtZSxcbiAgZ2V0U3ViamVjdCxcbiAgc2FuaXRpemVTdWJqZWN0VmFsdWUsXG4gIHJlbmRlclN1YmplY3Rcbn0gZnJvbSAnLi92YWxpZGF0aW9uJyJdfQ==
|
package/dist/templates.js
CHANGED
|
@@ -66,6 +66,29 @@ exports.EMAIL_TEMPLATES = {
|
|
|
66
66
|
status: 'completed',
|
|
67
67
|
templateFile: 'account-deleted.html'
|
|
68
68
|
}
|
|
69
|
+
},
|
|
70
|
+
'Demo-Request': {
|
|
71
|
+
'Schedule-Demo': {
|
|
72
|
+
templateName: {
|
|
73
|
+
development: 'modern-v2-Wocul-Collab-Schedule-Demo',
|
|
74
|
+
qa: 'modern-v2-Wocul-Collab-Schedule-Demo',
|
|
75
|
+
production: 'modern-v2-Wocul-Collab-Schedule-Demo'
|
|
76
|
+
},
|
|
77
|
+
subject: 'New Demo Request from {{name}}',
|
|
78
|
+
variables: [
|
|
79
|
+
'name',
|
|
80
|
+
'email',
|
|
81
|
+
'company',
|
|
82
|
+
'industry',
|
|
83
|
+
'team_size',
|
|
84
|
+
'message',
|
|
85
|
+
'submitted_date',
|
|
86
|
+
'submitted_time'
|
|
87
|
+
],
|
|
88
|
+
description: 'Notification when a prospect submits a demo request',
|
|
89
|
+
status: 'completed',
|
|
90
|
+
templateFile: 'demo-request.html'
|
|
91
|
+
}
|
|
69
92
|
}
|
|
70
93
|
},
|
|
71
94
|
Staff: {
|
|
@@ -403,4 +426,4 @@ exports.EMAIL_TEMPLATES = {
|
|
|
403
426
|
}
|
|
404
427
|
};
|
|
405
428
|
exports.default = exports.EMAIL_TEMPLATES;
|
|
406
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RlbXBsYXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFYSxRQUFBLGVBQWUsR0FBeUI7SUFDbkQsa0JBQWtCLEVBQUU7UUFDbEIsWUFBWSxFQUFFO1lBQ1osV0FBVyxFQUFFLDJDQUEyQztZQUN4RCxFQUFFLEVBQUUsMkNBQTJDO1lBQy9DLFVBQVUsRUFBRSwyQ0FBMkM7U0FDeEQ7UUFDRCxPQUFPLEVBQUUsYUFBYTtRQUN0QixTQUFTLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDO0tBQy9CO0lBRUQsTUFBTSxFQUFFO1FBQ04sR0FBRyxFQUFFO1lBQ0gsV0FBVyxFQUFFO2dCQUNYLFlBQVksRUFBRTtvQkFDWixXQUFXLEVBQUUsa0NBQWtDO29CQUMvQyxFQUFFLEVBQUUsa0NBQWtDO29CQUN0QyxVQUFVLEVBQUUsa0NBQWtDO2lCQUMvQztnQkFDRCxPQUFPLEVBQUUsMEJBQTBCO2dCQUNuQyxTQUFTLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLGVBQWUsQ0FBQztnQkFDckUsV0FBVyxFQUFFLDBDQUEwQztnQkFDdkQsTUFBTSxFQUFFLFdBQVc7Z0JBQ25CLFlBQVksRUFBRSxVQUFVO2FBQ3pCO1NBQ0Y7UUFDRCxPQUFPLEVBQUU7WUFDUCxjQUFjLEVBQUU7Z0JBQ2QsWUFBWSxFQUFFO29CQUNaLFdBQVcsRUFBRSxnQ0FBZ0M7b0JBQzdDLEVBQUUsRUFBRSxnQ0FBZ0M7b0JBQ3BDLFVBQVUsRUFBRSxnQ0FBZ0M7aUJBQzdDO2dCQUNELE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFNBQVMsRUFBRTtvQkFDVCxXQUFXO29CQUNYLGFBQWE7b0JBQ2IsaUJBQWlCO29CQUNqQixTQUFTO29CQUNULGlCQUFpQjtvQkFDakIsZUFBZTtpQkFDaEI7Z0JBQ0QsV0FBVyxFQUFFLDZCQUE2QjtnQkFDMUMsTUFBTSxFQUFFLFdBQVc7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QWUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRW1haWxUZW1wbGF0ZXNDb25maWcgfSBmcm9tICcuL3R5cGVzJ1xuXG5leHBvcnQgY29uc3QgRU1BSUxfVEVNUExBVEVTOiBFbWFpbFRlbXBsYXRlc0NvbmZpZyA9IHtcbiAgJ0RlZmF1bHQtVGVtcGxhdGUnOiB7XG4gICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1EZWZhdWx0LVRlbXBsYXRlLTIwMjIwMjI1MDYyNjIyJyxcbiAgICAgIHFhOiAnbW9kZXJuLXYyLURlZmF1bHQtVGVtcGxhdGUtMjAyMjAyMjUwNjI2MjInLFxuICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1EZWZhdWx0LVRlbXBsYXRlLTIwMjIwMjI1MDYyNjIyJ1xuICAgIH0sXG4gICAgc3ViamVjdDogJ3t7c3ViamVjdH19JyxcbiAgICB2YXJpYWJsZXM6IFsnc3ViamVjdCcsICdib2R5J11cbiAgfSxcblxuICBDb21tb246IHtcbiAgICBPVFA6IHtcbiAgICAgICdFbWFpbC1PVFAnOiB7XG4gICAgICAgIHRlbXBsYXRlTmFtZToge1xuICAgICAgICAgIGRldmVsb3BtZW50OiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1FbWFpbC1PVFAnLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1FbWFpbC1PVFAnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUVtYWlsLU9UUCdcbiAgICAgICAgfSxcbiAgICAgICAgc3ViamVjdDogJ1lvdXIgT1RQIGZvciB7e3B1cnBvc2V9fScsXG4gICAgICAgIHZhcmlhYmxlczogWydyZWNpcGllbnRfbmFtZScsICdwdXJwb3NlJywgJ290cF9jb2RlJywgJ3N1cHBvcnRfZW1haWwnXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdPbiBnZW5lcmF0aW5nIGVtYWlsIE9UUCBmb3IgdmVyaWZpY2F0aW9uJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnb3RwLmh0bWwnXG4gICAgICB9XG4gICAgfSxcbiAgICBXZWxjb21lOiB7XG4gICAgICAnVXNlci1XZWxjb21lJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItV2VsY29tZScsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVdlbGNvbWUnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVdlbGNvbWUnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdXZWxjb21lIHRvIFdvY3VsJyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3VzZXJfbmFtZScsXG4gICAgICAgICAgJ2lvc19hcHBfdXJsJyxcbiAgICAgICAgICAnYW5kcm9pZF9hcHBfdXJsJyxcbiAgICAgICAgICAnYXBwX3VybCcsXG4gICAgICAgICAgJ2hlbHBfY2VudGVyX3VybCcsXG4gICAgICAgICAgJ3N1cHBvcnRfZW1haWwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnV2VsY29tZSBlbWFpbCBmb3IgbmV3IHVzZXJzJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnd2VsY29tZS5odG1sJ1xuICAgICAgfVxuICAgIH0sXG4gICAgQWNjb3VudDoge1xuICAgICAgJ0FjY291bnQtRGVsZXRlZCc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUFjY291bnQtRGVsZXRlZCcsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUFjY291bnQtRGVsZXRlZCcsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQWNjb3VudC1EZWxldGVkJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnWW91ciBBY2NvdW50IEhhcyBCZWVuIERlbGV0ZWQnLFxuICAgICAgICB2YXJpYWJsZXM6IFtcbiAgICAgICAgICAndXNlcl9uYW1lJyxcbiAgICAgICAgICAndXNlcl9lbWFpbCcsXG4gICAgICAgICAgJ2RlbGV0ZWRfZGF0ZScsXG4gICAgICAgICAgJ2RlbGV0ZWRfdGltZScsXG4gICAgICAgICAgJ3N1cHBvcnRfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05vdGlmaWNhdGlvbiB3aGVuIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnYWNjb3VudC1kZWxldGVkLmh0bWwnXG4gICAgICB9XG4gICAgfVxuICB9LFxuXG4gIFN0YWZmOiB7XG4gICAgVGFzazoge1xuICAgICAgJ1Rhc2stQXNzaWduZWQnOiB7XG4gICAgICAgIHRlbXBsYXRlTmFtZToge1xuICAgICAgICAgIGRldmVsb3BtZW50OiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1UYXNrLUFzc2lnbm1lbnQnLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1UYXNrLUFzc2lnbm1lbnQnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVRhc2stQXNzaWdubWVudCdcbiAgICAgICAgfSxcbiAgICAgICAgc3ViamVjdDogJ1Rhc2sgQXNzaWduZWQ6IHt7dGFza190aXRsZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ2Fzc2lnbmVlJyxcbiAgICAgICAgICAnYXNzaWduZXInLFxuICAgICAgICAgICdhc3NpZ25lcl9pbml0aWFscycsXG4gICAgICAgICAgJ3Rhc2tfaWQnLFxuICAgICAgICAgICd0YXNrX3RpdGxlJyxcbiAgICAgICAgICAncHJvamVjdF9pZCcsXG4gICAgICAgICAgJ3Byb2plY3RfbmFtZScsXG4gICAgICAgICAgJ3ByaW9yaXR5JyxcbiAgICAgICAgICAncHJpb3JpdHlfY2xhc3MnLFxuICAgICAgICAgICdyZXBvcnRlcicsXG4gICAgICAgICAgJ3JlcG9ydGVyX2Rlc2lnbmF0aW9uJyxcbiAgICAgICAgICAnZGVhZGxpbmUnLFxuICAgICAgICAgICd0YXNrX3VybCcsXG4gICAgICAgICAgJ2hlbHBfY2VudGVyX3VybCcsXG4gICAgICAgICAgJ3N1cHBvcnRfZW1haWwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnT24gYXNzaWduaW5nIGEgdGFzayB0byBhIHVzZXInLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICd0YXNrYXNzaWduZWQuaHRtbCdcbiAgICAgIH0sXG4gICAgICAnVGFzay1PdmVyZHVlLUFzc2lnbmVlJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVGFza092ZXJkdWUtQXNzaWduZWUnLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1UYXNrT3ZlcmR1ZS1Bc3NpZ25lZScsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVGFza092ZXJkdWUtQXNzaWduZWUnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdUYXNrIE92ZXJkdWU6IHt7dGFza190aXRsZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ2Fzc2lnbmVlJyxcbiAgICAgICAgICAndGFza19pZCcsXG4gICAgICAgICAgJ3Rhc2tfdGl0bGUnLFxuICAgICAgICAgICdwcm9qZWN0X25hbWUnLFxuICAgICAgICAgICdkdWVfZGF0ZScsXG4gICAgICAgICAgJ3ByaW9yaXR5JyxcbiAgICAgICAgICAncHJpb3JpdHlfY2xhc3MnLFxuICAgICAgICAgICdib2FyZF9uYW1lJyxcbiAgICAgICAgICAna2FuYmFuX2NvbHVtbicsXG4gICAgICAgICAgJ3Rhc2tfdXJsJyxcbiAgICAgICAgICAnc3VwcG9ydF9lbWFpbCdcbiAgICAgICAgXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdPdmVyZHVlIHRhc2sgbm90aWZpY2F0aW9uIGZvciB0aGUgYXNzaWduZWUnLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICd0YXNrb3ZlcmR1ZS1hc3NpZ25lZS5odG1sJ1xuICAgICAgfSxcbiAgICAgICdUYXNrLU92ZXJkdWUtU3Rha2Vob2xkZXInOiB7XG4gICAgICAgIHRlbXBsYXRlTmFtZToge1xuICAgICAgICAgIGRldmVsb3BtZW50OiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1UYXNrT3ZlcmR1ZS1TdGFrZWhvbGRlcicsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVRhc2tPdmVyZHVlLVN0YWtlaG9sZGVyJyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1UYXNrT3ZlcmR1ZS1TdGFrZWhvbGRlcidcbiAgICAgICAgfSxcbiAgICAgICAgc3ViamVjdDogJ1Rhc2sgT3ZlcmR1ZToge3t0YXNrX3RpdGxlfX0nLFxuICAgICAgICB2YXJpYWJsZXM6IFtcbiAgICAgICAgICAncmVjaXBpZW50X25hbWUnLFxuICAgICAgICAgICdzdGFrZWhvbGRlcl9yb2xlJyxcbiAgICAgICAgICAndGFza19pZCcsXG4gICAgICAgICAgJ3Rhc2tfdGl0bGUnLFxuICAgICAgICAgICdwcm9qZWN0X25hbWUnLFxuICAgICAgICAgICdkdWVfZGF0ZScsXG4gICAgICAgICAgJ2Fzc2lnbmVlJyxcbiAgICAgICAgICAnYXNzaWduZWVfaW5pdGlhbHMnLFxuICAgICAgICAgICdwcmlvcml0eScsXG4gICAgICAgICAgJ3ByaW9yaXR5X2NsYXNzJyxcbiAgICAgICAgICAnYm9hcmRfbmFtZScsXG4gICAgICAgICAgJ2thbmJhbl9jb2x1bW4nLFxuICAgICAgICAgICd0YXNrX3VybCdcbiAgICAgICAgXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdPdmVyZHVlIHRhc2sgbm90aWZpY2F0aW9uIGZvciBzdGFrZWhvbGRlcnMgKHJlcG9ydGVycywgd2F0Y2hlcnMpJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAndGFza292ZXJkdWUtc3Rha2Vob2xkZXIuaHRtbCdcbiAgICAgIH0sXG4gICAgICAnQXBwcm92YWwtTmVlZGVkJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQXBwcm92YWwtTmVlZGVkJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQXBwcm92YWwtTmVlZGVkJyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1BcHByb3ZhbC1OZWVkZWQnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdBcHByb3ZhbCBOZWVkZWQ6IHt7dGFza190aXRsZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ2FwcHJvdmVyX25hbWUnLFxuICAgICAgICAgICd0YXNrX2lkJyxcbiAgICAgICAgICAndGFza190aXRsZScsXG4gICAgICAgICAgJ3Byb2plY3RfaWQnLFxuICAgICAgICAgICdwcm9qZWN0X25hbWUnLFxuICAgICAgICAgICdwcmlvcml0eScsXG4gICAgICAgICAgJ2FpX3N1bW1hcnknLFxuICAgICAgICAgICd0YXNrX3VybCcsXG4gICAgICAgICAgJ2hlbHBfY2VudGVyX3VybCcsXG4gICAgICAgICAgJ3N1cHBvcnRfZW1haWwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTm90aWZpY2F0aW9uIHdoZW4gYXBwcm92YWwgaXMgbmVlZGVkIGZvciBhIHRhc2snLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdhcHByb3ZhbG5lZWRlZC5odG1sJ1xuICAgICAgfVxuICAgIH0sXG4gICAgUHJvamVjdDoge1xuICAgICAgJ01lbWJlci1JbnZpdGF0aW9uJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItUHJvamVjdC1JbnZpdGF0aW9uJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItUHJvamVjdC1JbnZpdGF0aW9uJyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1Qcm9qZWN0LUludml0YXRpb24nXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICd7e2ludml0ZXJfbmFtZX19IGludml0ZWQgeW91IHRvIHt7cHJvamVjdF9uYW1lfX0nLFxuICAgICAgICB2YXJpYWJsZXM6IFtcbiAgICAgICAgICAncmVjaXBpZW50X25hbWUnLFxuICAgICAgICAgICdpbnZpdGVyX25hbWUnLFxuICAgICAgICAgICdpbnZpdGVyX2luaXRpYWxzJyxcbiAgICAgICAgICAnaW52aXRlcl9kZXNpZ25hdGlvbicsXG4gICAgICAgICAgJ29yZ2FuaXNhdGlvbl9uYW1lJyxcbiAgICAgICAgICAncHJvamVjdF9pZCcsXG4gICAgICAgICAgJ3Byb2plY3RfbmFtZScsXG4gICAgICAgICAgJ3Byb2plY3RfZGVzY3JpcHRpb24nLFxuICAgICAgICAgICdyb2xlJyxcbiAgICAgICAgICAnaW52aXRlX2NvZGUnLFxuICAgICAgICAgICdpbnZpdGVfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ09uIGludml0aW5nIGEgdXNlciB0byBhIHByb2plY3QnLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdwcm9qZWN0aW52aXRlLmh0bWwnXG4gICAgICB9LFxuICAgICAgJ01lbWJlci1SZW1vdmVkJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItTWVtYmVyLVJlbW92ZWQnLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1NZW1iZXItUmVtb3ZlZCcsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItTWVtYmVyLVJlbW92ZWQnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdZb3UgaGF2ZSBiZWVuIHJlbW92ZWQgZnJvbSB7e3Byb2plY3RfbmFtZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3JlY2lwaWVudF9uYW1lJyxcbiAgICAgICAgICAncmVtb3Zlcl9uYW1lJyxcbiAgICAgICAgICAncmVtb3Zlcl9pbml0aWFscycsXG4gICAgICAgICAgJ3Byb2plY3RfbmFtZScsXG4gICAgICAgICAgJ3Byb2plY3RfaWQnLFxuICAgICAgICAgICdyZW1vdmFsX2RhdGUnLFxuICAgICAgICAgICdwcm9qZWN0c191cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTm90aWZpY2F0aW9uIHdoZW4gYSB1c2VyIGlzIHJlbW92ZWQgZnJvbSBhIHByb2plY3QnLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdtZW1iZXItcmVtb3ZlZC5odG1sJ1xuICAgICAgfSxcbiAgICAgICdQcm9qZWN0LUtpY2tzdGFydCc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVByb2plY3QtS2lja3N0YXJ0JyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItUHJvamVjdC1LaWNrc3RhcnQnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVByb2plY3QtS2lja3N0YXJ0J1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnV2VsY29tZSB0byB7e3Byb2plY3RfbmFtZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ2NyZWF0b3JfbmFtZScsXG4gICAgICAgICAgJ3Byb2plY3RfbmFtZScsXG4gICAgICAgICAgJ2NyZWF0ZWRfZGF0ZScsXG4gICAgICAgICAgJ3Byb2plY3RfdXJsJyxcbiAgICAgICAgICAnaGVscF91cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnV2VsY29tZSBlbWFpbCB3aGVuIGEgbmV3IHByb2plY3QgaXMgY3JlYXRlZCcsXG4gICAgICAgIHN0YXR1czogJ2NvbXBsZXRlZCcsXG4gICAgICAgIHRlbXBsYXRlRmlsZTogJ3Byb2plY3Qta2lja3N0YXJ0Lmh0bWwnXG4gICAgICB9XG4gICAgfSxcbiAgICBNZW50aW9uOiB7XG4gICAgICAnVXNlci1NZW50aW9uJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVXNlci1NZW50aW9uJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVXNlci1NZW50aW9uJyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1Vc2VyLU1lbnRpb24nXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdZb3Ugd2VyZSBtZW50aW9uZWQgaW4ge3t0YXNrX3RpdGxlfX0nLFxuICAgICAgICB2YXJpYWJsZXM6IFtcbiAgICAgICAgICAncmVjaXBpZW50X25hbWUnLFxuICAgICAgICAgICdtZW50aW9uZXJfbmFtZScsXG4gICAgICAgICAgJ21lbnRpb25lcl9pbml0aWFscycsXG4gICAgICAgICAgJ3Byb2plY3RfbmFtZScsXG4gICAgICAgICAgJ3Rhc2tfaWQnLFxuICAgICAgICAgICd0YXNrX3RpdGxlJyxcbiAgICAgICAgICAnY29tbWVudF9wcmV2aWV3JyxcbiAgICAgICAgICAnY29tbWVudF9iZWZvcmVfbWVudGlvbicsXG4gICAgICAgICAgJ2NvbW1lbnRfYWZ0ZXJfbWVudGlvbicsXG4gICAgICAgICAgJ2NvbW1lbnRfdGltZScsXG4gICAgICAgICAgJ3JlcGx5X3VybCcsXG4gICAgICAgICAgJ3Rhc2tfdXJsJyxcbiAgICAgICAgICAnc2V0dGluZ3NfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05vdGlmaWNhdGlvbiB3aGVuIGEgdXNlciBpcyBtZW50aW9uZWQgaW4gYSBjb21tZW50JyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnbWVudGlvbi5odG1sJ1xuICAgICAgfSxcbiAgICAgICdBSS1NZW50aW9uJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQUktTWVudGlvbicsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUFJLU1lbnRpb24nLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUFJLU1lbnRpb24nXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdXT0NVTCBBSSBtZW50aW9uZWQgeW91IGluIHt7dGFza190aXRsZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3JlY2lwaWVudF9uYW1lJyxcbiAgICAgICAgICAncHJvamVjdF9uYW1lJyxcbiAgICAgICAgICAndGFza19pZCcsXG4gICAgICAgICAgJ3Rhc2tfdGl0bGUnLFxuICAgICAgICAgICdhaV93ZWxjb21lX21lc3NhZ2UnLFxuICAgICAgICAgICd0YXNrX3VybCcsXG4gICAgICAgICAgJ3NldHRpbmdzX3VybCdcbiAgICAgICAgXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdOb3RpZmljYXRpb24gd2hlbiBXT0NVTCBBSSBtZW50aW9ucyBhIHVzZXInLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdtZW50aW9uLWFpLmh0bWwnXG4gICAgICB9XG4gICAgfSxcbiAgICBGZWVkYmFjazoge1xuICAgICAgJ0ZlZWRiYWNrLVJlY2VpdmVkJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRmVlZGJhY2stUmVjZWl2ZWQnLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1GZWVkYmFjay1SZWNlaXZlZCcsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRmVlZGJhY2stUmVjZWl2ZWQnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdGZWVkYmFjayBvbiB7e3Rhc2tfdGl0bGV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdyZWNpcGllbnRfbmFtZScsXG4gICAgICAgICAgJ3NlbmRlcl9uYW1lJyxcbiAgICAgICAgICAnc2VuZGVyX2luaXRpYWxzJyxcbiAgICAgICAgICAndGFza190aXRsZScsXG4gICAgICAgICAgJ3JhdGluZ19zdGFycycsXG4gICAgICAgICAgJ2ZlZWRiYWNrX21lc3NhZ2UnLFxuICAgICAgICAgICdmZWVkYmFja190aW1lJyxcbiAgICAgICAgICAndGFza191cmwnLFxuICAgICAgICAgICdzZXR0aW5nc191cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTm90aWZpY2F0aW9uIHdoZW4gZmVlZGJhY2sgaXMgcmVjZWl2ZWQgb24gYSB0YXNrJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnZmVlZGJhY2stcmVjZWl2ZWQuaHRtbCdcbiAgICAgIH0sXG4gICAgICAnRmVlZGJhY2stUHJvbXB0Jzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRmVlZGJhY2stUHJvbXB0JyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRmVlZGJhY2stUHJvbXB0JyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1GZWVkYmFjay1Qcm9tcHQnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdTaGFyZSB5b3VyIGZlZWRiYWNrIG9uIHt7dGFza190aXRsZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3JlcG9ydGVyX25hbWUnLFxuICAgICAgICAgICd0YXNrX3RpdGxlJyxcbiAgICAgICAgICAnZGF5c19zaW5jZV9jb21wbGV0aW9uJyxcbiAgICAgICAgICAnZGF5c19wbHVyYWwnLFxuICAgICAgICAgICdjb21wbGV0aW9uX2RhdGUnLFxuICAgICAgICAgICdwYXJ0aWNpcGFudHMnLFxuICAgICAgICAgICdmZWVkYmFja191cmwnLFxuICAgICAgICAgICd0YXNrX3VybCcsXG4gICAgICAgICAgJ3NldHRpbmdzX3VybCdcbiAgICAgICAgXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdSZW1pbmRlciB0byBwcm92aWRlIGZlZWRiYWNrIG9uIGEgY29tcGxldGVkIHRhc2snLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdmZWVkYmFjay1wcm9tcHQuaHRtbCdcbiAgICAgIH0sXG4gICAgICAnQUktRmVlZGJhY2snOiB7XG4gICAgICAgIHRlbXBsYXRlTmFtZToge1xuICAgICAgICAgIGRldmVsb3BtZW50OiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1BSS1GZWVkYmFjaycsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUFJLUZlZWRiYWNrJyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1BSS1GZWVkYmFjaydcbiAgICAgICAgfSxcbiAgICAgICAgc3ViamVjdDogJ0FJIEZlZWRiYWNrIG9uIHt7dGFza190aXRsZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3JlY2lwaWVudF9uYW1lJyxcbiAgICAgICAgICAndGFza190aXRsZScsXG4gICAgICAgICAgJ2FpX2ZlZWRiYWNrX21lc3NhZ2UnLFxuICAgICAgICAgICdpbnNpZ2h0cycsXG4gICAgICAgICAgJ3Rhc2tfdXJsJyxcbiAgICAgICAgICAnc2V0dGluZ3NfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ0FJLWdlbmVyYXRlZCBmZWVkYmFjayBvbiB0YXNrIGNvbXBsZXRpb24nLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdmZWVkYmFjay1haS5odG1sJ1xuICAgICAgfVxuICAgIH0sXG4gICAgJ0FJLUluc2lnaHRzJzoge1xuICAgICAgJ0JvYXJkLUluc2lnaHRzLVJlYWR5Jzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQm9hcmQtSW5zaWdodHMnLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1Cb2FyZC1JbnNpZ2h0cycsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQm9hcmQtSW5zaWdodHMnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdOZXcgaW5zaWdodHMgZm9yIHt7Ym9hcmRfbmFtZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ293bmVyX25hbWUnLFxuICAgICAgICAgICdib2FyZF9uYW1lJyxcbiAgICAgICAgICAncHJvamVjdF9uYW1lJyxcbiAgICAgICAgICAnaW5zaWdodHNfc3VtbWFyeScsXG4gICAgICAgICAgJ2dlbmVyYXRlZF9kYXRlJyxcbiAgICAgICAgICAnZ2VuZXJhdGVkX3RpbWUnLFxuICAgICAgICAgICdpbnNpZ2h0c191cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTm90aWZpY2F0aW9uIHdoZW4gQUkgaW5zaWdodHMgYXJlIHJlYWR5IGZvciBhIGJvYXJkJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnYm9hcmQtaW5zaWdodHMtcmVhZHkuaHRtbCdcbiAgICAgIH1cbiAgICB9LFxuICAgICdEYWlseS1EaWdlc3QnOiB7XG4gICAgICAnRGFpbHktVGFzay1EaWdlc3QnOiB7XG4gICAgICAgIHRlbXBsYXRlTmFtZToge1xuICAgICAgICAgIGRldmVsb3BtZW50OiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1EYWlseS1EaWdlc3QnLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1EYWlseS1EaWdlc3QnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLURhaWx5LURpZ2VzdCdcbiAgICAgICAgfSxcbiAgICAgICAgc3ViamVjdDogJ1lvdXIgRGFpbHkgVGFzayBEaWdlc3QgLSB7e2RhdGVfZm9ybWF0dGVkfX0nLFxuICAgICAgICB2YXJpYWJsZXM6IFtcbiAgICAgICAgICAndXNlcl9uYW1lJyxcbiAgICAgICAgICAnZGF0ZV9mb3JtYXR0ZWQnLFxuICAgICAgICAgICdvdmVyZHVlX2NvdW50JyxcbiAgICAgICAgICAndG9kYXlfY291bnQnLFxuICAgICAgICAgICd1cGNvbWluZ19jb3VudCcsXG4gICAgICAgICAgJ2Fzc2lnbmVlX2NvdW50JyxcbiAgICAgICAgICAnYXNzaWduZWVfdGFza3MnLFxuICAgICAgICAgICdyZXBvcnRlcl9jb3VudCcsXG4gICAgICAgICAgJ3JlcG9ydGVyX3Rhc2tzJyxcbiAgICAgICAgICAnYXBwcm92ZXJfY291bnQnLFxuICAgICAgICAgICdhcHByb3Zlcl90YXNrcycsXG4gICAgICAgICAgJ2Rhc2hib2FyZF91cmwnLFxuICAgICAgICAgICdzZXR0aW5nc191cmwnLFxuICAgICAgICAgICd1bnN1YnNjcmliZV91cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnRGFpbHkgZGlnZXN0IG9mIHRhc2tzIHJlcXVpcmluZyBhdHRlbnRpb24nLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdkYWlseWRpZ2VzdC5odG1sJ1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBFTUFJTF9URU1QTEFURVMiXX0=
|
|
429
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RlbXBsYXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFYSxRQUFBLGVBQWUsR0FBeUI7SUFDbkQsa0JBQWtCLEVBQUU7UUFDbEIsWUFBWSxFQUFFO1lBQ1osV0FBVyxFQUFFLDJDQUEyQztZQUN4RCxFQUFFLEVBQUUsMkNBQTJDO1lBQy9DLFVBQVUsRUFBRSwyQ0FBMkM7U0FDeEQ7UUFDRCxPQUFPLEVBQUUsYUFBYTtRQUN0QixTQUFTLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDO0tBQy9CO0lBRUQsTUFBTSxFQUFFO1FBQ04sR0FBRyxFQUFFO1lBQ0gsV0FBVyxFQUFFO2dCQUNYLFlBQVksRUFBRTtvQkFDWixXQUFXLEVBQUUsa0NBQWtDO29CQUMvQyxFQUFFLEVBQUUsa0NBQWtDO29CQUN0QyxVQUFVLEVBQUUsa0NBQWtDO2lCQUMvQztnQkFDRCxPQUFPLEVBQUUsMEJBQTBCO2dCQUNuQyxTQUFTLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLGVBQWUsQ0FBQztnQkFDckUsV0FBVyxFQUFFLDBDQUEwQztnQkFDdkQsTUFBTSxFQUFFLFdBQVc7Z0JBQ25CLFlBQVksRUFBRSxVQUFVO2FBQ3pCO1NBQ0Y7UUFDRCxPQUFPLEVBQUU7WUFDUCxjQUFjLEVBQUU7Z0JBQ2QsWUFBWSxFQUFFO29CQUNaLFdBQVcsRUFBRSxnQ0FBZ0M7b0JBQzdDLEVBQUUsRUFBRSxnQ0FBZ0M7b0JBQ3BDLFVBQVUsRUFBRSxnQ0FBZ0M7aUJBQzdDO2dCQUNELE9BQU8sRUFBRSxrQkFBa0I7Z0JBQzNCLFNBQVMsRUFBRTtvQkFDVCxXQUFXO29CQUNYLGFBQWE7b0JBQ2IsaUJBQWlCO29CQUNqQixTQUFTO29CQUNULGlCQUFpQjtvQkFDakIsZUFBZTtpQkFDaEI7Z0JBQ0QsV0FBVyxFQUFFLDZCQUE2QjtnQkFDMUMsTUFBTSxFQUFFLFdBQVc7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O2lCQUNsRDtnQkFDRCxPQUFPLEVBQUUsNkNBQTZDO2dCQUN0RCxTQUFTLEVBQUU7b0JBQ1QsV0FBVztvQkFDWCxnQkFBZ0I7b0JBQ2hCLGVBQWU7b0JBQ2YsYUFBYTtvQkFDYixnQkFBZ0I7b0JBQ2hCLGdCQUFnQjtvQkFDaEIsZ0JBQWdCO29CQUNoQixnQkFBZ0I7b0JBQ2hCLGdCQUFnQjtvQkFDaEIsZ0JBQWdCO29CQUNoQixnQkFBZ0I7b0JBQ2hCLGVBQWU7b0JBQ2YsY0FBYztvQkFDZCxpQkFBaUI7aUJBQ2xCO2dCQUNELFdBQVcsRUFBRSwyQ0FBMkM7Z0JBQ3hELE1BQU0sRUFBRSxXQUFXO2dCQUNuQixZQUFZLEVBQUUsa0JBQWtCO2FBQ2pDO1NBQ0Y7S0FDRjtDQUNGLENBQUE7QUFFRCxrQkFBZSx1QkFBZSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBFbWFpbFRlbXBsYXRlc0NvbmZpZyB9IGZyb20gJy4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBFTUFJTF9URU1QTEFURVM6IEVtYWlsVGVtcGxhdGVzQ29uZmlnID0ge1xuICAnRGVmYXVsdC1UZW1wbGF0ZSc6IHtcbiAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgIGRldmVsb3BtZW50OiAnbW9kZXJuLXYyLURlZmF1bHQtVGVtcGxhdGUtMjAyMjAyMjUwNjI2MjInLFxuICAgICAgcWE6ICdtb2Rlcm4tdjItRGVmYXVsdC1UZW1wbGF0ZS0yMDIyMDIyNTA2MjYyMicsXG4gICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLURlZmF1bHQtVGVtcGxhdGUtMjAyMjAyMjUwNjI2MjInXG4gICAgfSxcbiAgICBzdWJqZWN0OiAne3tzdWJqZWN0fX0nLFxuICAgIHZhcmlhYmxlczogWydzdWJqZWN0JywgJ2JvZHknXVxuICB9LFxuXG4gIENvbW1vbjoge1xuICAgIE9UUDoge1xuICAgICAgJ0VtYWlsLU9UUCc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUVtYWlsLU9UUCcsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUVtYWlsLU9UUCcsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRW1haWwtT1RQJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnWW91ciBPVFAgZm9yIHt7cHVycG9zZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbJ3JlY2lwaWVudF9uYW1lJywgJ3B1cnBvc2UnLCAnb3RwX2NvZGUnLCAnc3VwcG9ydF9lbWFpbCddLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ09uIGdlbmVyYXRpbmcgZW1haWwgT1RQIGZvciB2ZXJpZmljYXRpb24nLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdvdHAuaHRtbCdcbiAgICAgIH1cbiAgICB9LFxuICAgIFdlbGNvbWU6IHtcbiAgICAgICdVc2VyLVdlbGNvbWUnOiB7XG4gICAgICAgIHRlbXBsYXRlTmFtZToge1xuICAgICAgICAgIGRldmVsb3BtZW50OiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1XZWxjb21lJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItV2VsY29tZScsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItV2VsY29tZSdcbiAgICAgICAgfSxcbiAgICAgICAgc3ViamVjdDogJ1dlbGNvbWUgdG8gV29jdWwnLFxuICAgICAgICB2YXJpYWJsZXM6IFtcbiAgICAgICAgICAndXNlcl9uYW1lJyxcbiAgICAgICAgICAnaW9zX2FwcF91cmwnLFxuICAgICAgICAgICdhbmRyb2lkX2FwcF91cmwnLFxuICAgICAgICAgICdhcHBfdXJsJyxcbiAgICAgICAgICAnaGVscF9jZW50ZXJfdXJsJyxcbiAgICAgICAgICAnc3VwcG9ydF9lbWFpbCdcbiAgICAgICAgXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdXZWxjb21lIGVtYWlsIGZvciBuZXcgdXNlcnMnLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICd3ZWxjb21lLmh0bWwnXG4gICAgICB9XG4gICAgfSxcbiAgICBBY2NvdW50OiB7XG4gICAgICAnQWNjb3VudC1EZWxldGVkJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQWNjb3VudC1EZWxldGVkJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQWNjb3VudC1EZWxldGVkJyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1BY2NvdW50LURlbGV0ZWQnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdZb3VyIEFjY291bnQgSGFzIEJlZW4gRGVsZXRlZCcsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICd1c2VyX25hbWUnLFxuICAgICAgICAgICd1c2VyX2VtYWlsJyxcbiAgICAgICAgICAnZGVsZXRlZF9kYXRlJyxcbiAgICAgICAgICAnZGVsZXRlZF90aW1lJyxcbiAgICAgICAgICAnc3VwcG9ydF91cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTm90aWZpY2F0aW9uIHdoZW4gdXNlciBhY2NvdW50IGlzIGRlbGV0ZWQnLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdhY2NvdW50LWRlbGV0ZWQuaHRtbCdcbiAgICAgIH1cbiAgICB9LFxuICAgICdEZW1vLVJlcXVlc3QnOiB7XG4gICAgICAnU2NoZWR1bGUtRGVtbyc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVNjaGVkdWxlLURlbW8nLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1TY2hlZHVsZS1EZW1vJyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1TY2hlZHVsZS1EZW1vJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnTmV3IERlbW8gUmVxdWVzdCBmcm9tIHt7bmFtZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ25hbWUnLFxuICAgICAgICAgICdlbWFpbCcsXG4gICAgICAgICAgJ2NvbXBhbnknLFxuICAgICAgICAgICdpbmR1c3RyeScsXG4gICAgICAgICAgJ3RlYW1fc2l6ZScsXG4gICAgICAgICAgJ21lc3NhZ2UnLFxuICAgICAgICAgICdzdWJtaXR0ZWRfZGF0ZScsXG4gICAgICAgICAgJ3N1Ym1pdHRlZF90aW1lJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05vdGlmaWNhdGlvbiB3aGVuIGEgcHJvc3BlY3Qgc3VibWl0cyBhIGRlbW8gcmVxdWVzdCcsXG4gICAgICAgIHN0YXR1czogJ2NvbXBsZXRlZCcsXG4gICAgICAgIHRlbXBsYXRlRmlsZTogJ2RlbW8tcmVxdWVzdC5odG1sJ1xuICAgICAgfVxuICAgIH1cbiAgfSxcblxuICBTdGFmZjoge1xuICAgIFRhc2s6IHtcbiAgICAgICdUYXNrLUFzc2lnbmVkJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVGFzay1Bc3NpZ25tZW50JyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVGFzay1Bc3NpZ25tZW50JyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1UYXNrLUFzc2lnbm1lbnQnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdUYXNrIEFzc2lnbmVkOiB7e3Rhc2tfdGl0bGV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdhc3NpZ25lZScsXG4gICAgICAgICAgJ2Fzc2lnbmVyJyxcbiAgICAgICAgICAnYXNzaWduZXJfaW5pdGlhbHMnLFxuICAgICAgICAgICd0YXNrX2lkJyxcbiAgICAgICAgICAndGFza190aXRsZScsXG4gICAgICAgICAgJ3Byb2plY3RfaWQnLFxuICAgICAgICAgICdwcm9qZWN0X25hbWUnLFxuICAgICAgICAgICdwcmlvcml0eScsXG4gICAgICAgICAgJ3ByaW9yaXR5X2NsYXNzJyxcbiAgICAgICAgICAncmVwb3J0ZXInLFxuICAgICAgICAgICdyZXBvcnRlcl9kZXNpZ25hdGlvbicsXG4gICAgICAgICAgJ2RlYWRsaW5lJyxcbiAgICAgICAgICAndGFza191cmwnLFxuICAgICAgICAgICdoZWxwX2NlbnRlcl91cmwnLFxuICAgICAgICAgICdzdXBwb3J0X2VtYWlsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ09uIGFzc2lnbmluZyBhIHRhc2sgdG8gYSB1c2VyJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAndGFza2Fzc2lnbmVkLmh0bWwnXG4gICAgICB9LFxuICAgICAgJ1Rhc2stT3ZlcmR1ZS1Bc3NpZ25lZSc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVRhc2tPdmVyZHVlLUFzc2lnbmVlJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVGFza092ZXJkdWUtQXNzaWduZWUnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVRhc2tPdmVyZHVlLUFzc2lnbmVlJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnVGFzayBPdmVyZHVlOiB7e3Rhc2tfdGl0bGV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdhc3NpZ25lZScsXG4gICAgICAgICAgJ3Rhc2tfaWQnLFxuICAgICAgICAgICd0YXNrX3RpdGxlJyxcbiAgICAgICAgICAncHJvamVjdF9uYW1lJyxcbiAgICAgICAgICAnZHVlX2RhdGUnLFxuICAgICAgICAgICdwcmlvcml0eScsXG4gICAgICAgICAgJ3ByaW9yaXR5X2NsYXNzJyxcbiAgICAgICAgICAnYm9hcmRfbmFtZScsXG4gICAgICAgICAgJ2thbmJhbl9jb2x1bW4nLFxuICAgICAgICAgICd0YXNrX3VybCcsXG4gICAgICAgICAgJ3N1cHBvcnRfZW1haWwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnT3ZlcmR1ZSB0YXNrIG5vdGlmaWNhdGlvbiBmb3IgdGhlIGFzc2lnbmVlJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAndGFza292ZXJkdWUtYXNzaWduZWUuaHRtbCdcbiAgICAgIH0sXG4gICAgICAnVGFzay1PdmVyZHVlLVN0YWtlaG9sZGVyJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVGFza092ZXJkdWUtU3Rha2Vob2xkZXInLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1UYXNrT3ZlcmR1ZS1TdGFrZWhvbGRlcicsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVGFza092ZXJkdWUtU3Rha2Vob2xkZXInXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdUYXNrIE92ZXJkdWU6IHt7dGFza190aXRsZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3JlY2lwaWVudF9uYW1lJyxcbiAgICAgICAgICAnc3Rha2Vob2xkZXJfcm9sZScsXG4gICAgICAgICAgJ3Rhc2tfaWQnLFxuICAgICAgICAgICd0YXNrX3RpdGxlJyxcbiAgICAgICAgICAncHJvamVjdF9uYW1lJyxcbiAgICAgICAgICAnZHVlX2RhdGUnLFxuICAgICAgICAgICdhc3NpZ25lZScsXG4gICAgICAgICAgJ2Fzc2lnbmVlX2luaXRpYWxzJyxcbiAgICAgICAgICAncHJpb3JpdHknLFxuICAgICAgICAgICdwcmlvcml0eV9jbGFzcycsXG4gICAgICAgICAgJ2JvYXJkX25hbWUnLFxuICAgICAgICAgICdrYW5iYW5fY29sdW1uJyxcbiAgICAgICAgICAndGFza191cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnT3ZlcmR1ZSB0YXNrIG5vdGlmaWNhdGlvbiBmb3Igc3Rha2Vob2xkZXJzIChyZXBvcnRlcnMsIHdhdGNoZXJzKScsXG4gICAgICAgIHN0YXR1czogJ2NvbXBsZXRlZCcsXG4gICAgICAgIHRlbXBsYXRlRmlsZTogJ3Rhc2tvdmVyZHVlLXN0YWtlaG9sZGVyLmh0bWwnXG4gICAgICB9LFxuICAgICAgJ0FwcHJvdmFsLU5lZWRlZCc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUFwcHJvdmFsLU5lZWRlZCcsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUFwcHJvdmFsLU5lZWRlZCcsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQXBwcm92YWwtTmVlZGVkJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnQXBwcm92YWwgTmVlZGVkOiB7e3Rhc2tfdGl0bGV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdhcHByb3Zlcl9uYW1lJyxcbiAgICAgICAgICAndGFza19pZCcsXG4gICAgICAgICAgJ3Rhc2tfdGl0bGUnLFxuICAgICAgICAgICdwcm9qZWN0X2lkJyxcbiAgICAgICAgICAncHJvamVjdF9uYW1lJyxcbiAgICAgICAgICAncHJpb3JpdHknLFxuICAgICAgICAgICdhaV9zdW1tYXJ5JyxcbiAgICAgICAgICAndGFza191cmwnLFxuICAgICAgICAgICdoZWxwX2NlbnRlcl91cmwnLFxuICAgICAgICAgICdzdXBwb3J0X2VtYWlsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05vdGlmaWNhdGlvbiB3aGVuIGFwcHJvdmFsIGlzIG5lZWRlZCBmb3IgYSB0YXNrJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnYXBwcm92YWxuZWVkZWQuaHRtbCdcbiAgICAgIH1cbiAgICB9LFxuICAgIFByb2plY3Q6IHtcbiAgICAgICdNZW1iZXItSW52aXRhdGlvbic6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVByb2plY3QtSW52aXRhdGlvbicsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVByb2plY3QtSW52aXRhdGlvbicsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItUHJvamVjdC1JbnZpdGF0aW9uJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAne3tpbnZpdGVyX25hbWV9fSBpbnZpdGVkIHlvdSB0byB7e3Byb2plY3RfbmFtZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3JlY2lwaWVudF9uYW1lJyxcbiAgICAgICAgICAnaW52aXRlcl9uYW1lJyxcbiAgICAgICAgICAnaW52aXRlcl9pbml0aWFscycsXG4gICAgICAgICAgJ2ludml0ZXJfZGVzaWduYXRpb24nLFxuICAgICAgICAgICdvcmdhbmlzYXRpb25fbmFtZScsXG4gICAgICAgICAgJ3Byb2plY3RfaWQnLFxuICAgICAgICAgICdwcm9qZWN0X25hbWUnLFxuICAgICAgICAgICdwcm9qZWN0X2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgICAncm9sZScsXG4gICAgICAgICAgJ2ludml0ZV9jb2RlJyxcbiAgICAgICAgICAnaW52aXRlX3VybCdcbiAgICAgICAgXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdPbiBpbnZpdGluZyBhIHVzZXIgdG8gYSBwcm9qZWN0JyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAncHJvamVjdGludml0ZS5odG1sJ1xuICAgICAgfSxcbiAgICAgICdNZW1iZXItUmVtb3ZlZCc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLU1lbWJlci1SZW1vdmVkJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItTWVtYmVyLVJlbW92ZWQnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLU1lbWJlci1SZW1vdmVkJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnWW91IGhhdmUgYmVlbiByZW1vdmVkIGZyb20ge3twcm9qZWN0X25hbWV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdyZWNpcGllbnRfbmFtZScsXG4gICAgICAgICAgJ3JlbW92ZXJfbmFtZScsXG4gICAgICAgICAgJ3JlbW92ZXJfaW5pdGlhbHMnLFxuICAgICAgICAgICdwcm9qZWN0X25hbWUnLFxuICAgICAgICAgICdwcm9qZWN0X2lkJyxcbiAgICAgICAgICAncmVtb3ZhbF9kYXRlJyxcbiAgICAgICAgICAncHJvamVjdHNfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05vdGlmaWNhdGlvbiB3aGVuIGEgdXNlciBpcyByZW1vdmVkIGZyb20gYSBwcm9qZWN0JyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnbWVtYmVyLXJlbW92ZWQuaHRtbCdcbiAgICAgIH0sXG4gICAgICAnUHJvamVjdC1LaWNrc3RhcnQnOiB7XG4gICAgICAgIHRlbXBsYXRlTmFtZToge1xuICAgICAgICAgIGRldmVsb3BtZW50OiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1Qcm9qZWN0LUtpY2tzdGFydCcsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVByb2plY3QtS2lja3N0YXJ0JyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1Qcm9qZWN0LUtpY2tzdGFydCdcbiAgICAgICAgfSxcbiAgICAgICAgc3ViamVjdDogJ1dlbGNvbWUgdG8ge3twcm9qZWN0X25hbWV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdjcmVhdG9yX25hbWUnLFxuICAgICAgICAgICdwcm9qZWN0X25hbWUnLFxuICAgICAgICAgICdjcmVhdGVkX2RhdGUnLFxuICAgICAgICAgICdwcm9qZWN0X3VybCcsXG4gICAgICAgICAgJ2hlbHBfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1dlbGNvbWUgZW1haWwgd2hlbiBhIG5ldyBwcm9qZWN0IGlzIGNyZWF0ZWQnLFxuICAgICAgICBzdGF0dXM6ICdjb21wbGV0ZWQnLFxuICAgICAgICB0ZW1wbGF0ZUZpbGU6ICdwcm9qZWN0LWtpY2tzdGFydC5odG1sJ1xuICAgICAgfVxuICAgIH0sXG4gICAgTWVudGlvbjoge1xuICAgICAgJ1VzZXItTWVudGlvbic6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVVzZXItTWVudGlvbicsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLVVzZXItTWVudGlvbicsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItVXNlci1NZW50aW9uJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnWW91IHdlcmUgbWVudGlvbmVkIGluIHt7dGFza190aXRsZX19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3JlY2lwaWVudF9uYW1lJyxcbiAgICAgICAgICAnbWVudGlvbmVyX25hbWUnLFxuICAgICAgICAgICdtZW50aW9uZXJfaW5pdGlhbHMnLFxuICAgICAgICAgICdwcm9qZWN0X25hbWUnLFxuICAgICAgICAgICd0YXNrX2lkJyxcbiAgICAgICAgICAndGFza190aXRsZScsXG4gICAgICAgICAgJ2NvbW1lbnRfcHJldmlldycsXG4gICAgICAgICAgJ2NvbW1lbnRfYmVmb3JlX21lbnRpb24nLFxuICAgICAgICAgICdjb21tZW50X2FmdGVyX21lbnRpb24nLFxuICAgICAgICAgICdjb21tZW50X3RpbWUnLFxuICAgICAgICAgICdyZXBseV91cmwnLFxuICAgICAgICAgICd0YXNrX3VybCcsXG4gICAgICAgICAgJ3NldHRpbmdzX3VybCdcbiAgICAgICAgXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdOb3RpZmljYXRpb24gd2hlbiBhIHVzZXIgaXMgbWVudGlvbmVkIGluIGEgY29tbWVudCcsXG4gICAgICAgIHN0YXR1czogJ2NvbXBsZXRlZCcsXG4gICAgICAgIHRlbXBsYXRlRmlsZTogJ21lbnRpb24uaHRtbCdcbiAgICAgIH0sXG4gICAgICAnQUktTWVudGlvbic6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUFJLU1lbnRpb24nLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1BSS1NZW50aW9uJyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1BSS1NZW50aW9uJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnV09DVUwgQUkgbWVudGlvbmVkIHlvdSBpbiB7e3Rhc2tfdGl0bGV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdyZWNpcGllbnRfbmFtZScsXG4gICAgICAgICAgJ3Byb2plY3RfbmFtZScsXG4gICAgICAgICAgJ3Rhc2tfaWQnLFxuICAgICAgICAgICd0YXNrX3RpdGxlJyxcbiAgICAgICAgICAnYWlfd2VsY29tZV9tZXNzYWdlJyxcbiAgICAgICAgICAndGFza191cmwnLFxuICAgICAgICAgICdzZXR0aW5nc191cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTm90aWZpY2F0aW9uIHdoZW4gV09DVUwgQUkgbWVudGlvbnMgYSB1c2VyJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnbWVudGlvbi1haS5odG1sJ1xuICAgICAgfVxuICAgIH0sXG4gICAgRmVlZGJhY2s6IHtcbiAgICAgICdGZWVkYmFjay1SZWNlaXZlZCc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUZlZWRiYWNrLVJlY2VpdmVkJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRmVlZGJhY2stUmVjZWl2ZWQnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUZlZWRiYWNrLVJlY2VpdmVkJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnRmVlZGJhY2sgb24ge3t0YXNrX3RpdGxlfX0nLFxuICAgICAgICB2YXJpYWJsZXM6IFtcbiAgICAgICAgICAncmVjaXBpZW50X25hbWUnLFxuICAgICAgICAgICdzZW5kZXJfbmFtZScsXG4gICAgICAgICAgJ3NlbmRlcl9pbml0aWFscycsXG4gICAgICAgICAgJ3Rhc2tfdGl0bGUnLFxuICAgICAgICAgICdyYXRpbmdfc3RhcnMnLFxuICAgICAgICAgICdmZWVkYmFja19tZXNzYWdlJyxcbiAgICAgICAgICAnZmVlZGJhY2tfdGltZScsXG4gICAgICAgICAgJ3Rhc2tfdXJsJyxcbiAgICAgICAgICAnc2V0dGluZ3NfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05vdGlmaWNhdGlvbiB3aGVuIGZlZWRiYWNrIGlzIHJlY2VpdmVkIG9uIGEgdGFzaycsXG4gICAgICAgIHN0YXR1czogJ2NvbXBsZXRlZCcsXG4gICAgICAgIHRlbXBsYXRlRmlsZTogJ2ZlZWRiYWNrLXJlY2VpdmVkLmh0bWwnXG4gICAgICB9LFxuICAgICAgJ0ZlZWRiYWNrLVByb21wdCc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUZlZWRiYWNrLVByb21wdCcsXG4gICAgICAgICAgcWE6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUZlZWRiYWNrLVByb21wdCcsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRmVlZGJhY2stUHJvbXB0J1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnU2hhcmUgeW91ciBmZWVkYmFjayBvbiB7e3Rhc2tfdGl0bGV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdyZXBvcnRlcl9uYW1lJyxcbiAgICAgICAgICAndGFza190aXRsZScsXG4gICAgICAgICAgJ2RheXNfc2luY2VfY29tcGxldGlvbicsXG4gICAgICAgICAgJ2RheXNfcGx1cmFsJyxcbiAgICAgICAgICAnY29tcGxldGlvbl9kYXRlJyxcbiAgICAgICAgICAncGFydGljaXBhbnRzJyxcbiAgICAgICAgICAnZmVlZGJhY2tfdXJsJyxcbiAgICAgICAgICAndGFza191cmwnLFxuICAgICAgICAgICdzZXR0aW5nc191cmwnXG4gICAgICAgIF0sXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnUmVtaW5kZXIgdG8gcHJvdmlkZSBmZWVkYmFjayBvbiBhIGNvbXBsZXRlZCB0YXNrJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnZmVlZGJhY2stcHJvbXB0Lmh0bWwnXG4gICAgICB9LFxuICAgICAgJ0FJLUZlZWRiYWNrJzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQUktRmVlZGJhY2snLFxuICAgICAgICAgIHFhOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1BSS1GZWVkYmFjaycsXG4gICAgICAgICAgcHJvZHVjdGlvbjogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQUktRmVlZGJhY2snXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdBSSBGZWVkYmFjayBvbiB7e3Rhc2tfdGl0bGV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdyZWNpcGllbnRfbmFtZScsXG4gICAgICAgICAgJ3Rhc2tfdGl0bGUnLFxuICAgICAgICAgICdhaV9mZWVkYmFja19tZXNzYWdlJyxcbiAgICAgICAgICAnaW5zaWdodHMnLFxuICAgICAgICAgICd0YXNrX3VybCcsXG4gICAgICAgICAgJ3NldHRpbmdzX3VybCdcbiAgICAgICAgXSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdBSS1nZW5lcmF0ZWQgZmVlZGJhY2sgb24gdGFzayBjb21wbGV0aW9uJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnZmVlZGJhY2stYWkuaHRtbCdcbiAgICAgIH1cbiAgICB9LFxuICAgICdBSS1JbnNpZ2h0cyc6IHtcbiAgICAgICdCb2FyZC1JbnNpZ2h0cy1SZWFkeSc6IHtcbiAgICAgICAgdGVtcGxhdGVOYW1lOiB7XG4gICAgICAgICAgZGV2ZWxvcG1lbnQ6ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUJvYXJkLUluc2lnaHRzJyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItQm9hcmQtSW5zaWdodHMnLFxuICAgICAgICAgIHByb2R1Y3Rpb246ICdtb2Rlcm4tdjItV29jdWwtQ29sbGFiLUJvYXJkLUluc2lnaHRzJ1xuICAgICAgICB9LFxuICAgICAgICBzdWJqZWN0OiAnTmV3IGluc2lnaHRzIGZvciB7e2JvYXJkX25hbWV9fScsXG4gICAgICAgIHZhcmlhYmxlczogW1xuICAgICAgICAgICdvd25lcl9uYW1lJyxcbiAgICAgICAgICAnYm9hcmRfbmFtZScsXG4gICAgICAgICAgJ3Byb2plY3RfbmFtZScsXG4gICAgICAgICAgJ2luc2lnaHRzX3N1bW1hcnknLFxuICAgICAgICAgICdnZW5lcmF0ZWRfZGF0ZScsXG4gICAgICAgICAgJ2dlbmVyYXRlZF90aW1lJyxcbiAgICAgICAgICAnaW5zaWdodHNfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05vdGlmaWNhdGlvbiB3aGVuIEFJIGluc2lnaHRzIGFyZSByZWFkeSBmb3IgYSBib2FyZCcsXG4gICAgICAgIHN0YXR1czogJ2NvbXBsZXRlZCcsXG4gICAgICAgIHRlbXBsYXRlRmlsZTogJ2JvYXJkLWluc2lnaHRzLXJlYWR5Lmh0bWwnXG4gICAgICB9XG4gICAgfSxcbiAgICAnRGFpbHktRGlnZXN0Jzoge1xuICAgICAgJ0RhaWx5LVRhc2stRGlnZXN0Jzoge1xuICAgICAgICB0ZW1wbGF0ZU5hbWU6IHtcbiAgICAgICAgICBkZXZlbG9wbWVudDogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRGFpbHktRGlnZXN0JyxcbiAgICAgICAgICBxYTogJ21vZGVybi12Mi1Xb2N1bC1Db2xsYWItRGFpbHktRGlnZXN0JyxcbiAgICAgICAgICBwcm9kdWN0aW9uOiAnbW9kZXJuLXYyLVdvY3VsLUNvbGxhYi1EYWlseS1EaWdlc3QnXG4gICAgICAgIH0sXG4gICAgICAgIHN1YmplY3Q6ICdZb3VyIERhaWx5IFRhc2sgRGlnZXN0IC0ge3tkYXRlX2Zvcm1hdHRlZH19JyxcbiAgICAgICAgdmFyaWFibGVzOiBbXG4gICAgICAgICAgJ3VzZXJfbmFtZScsXG4gICAgICAgICAgJ2RhdGVfZm9ybWF0dGVkJyxcbiAgICAgICAgICAnb3ZlcmR1ZV9jb3VudCcsXG4gICAgICAgICAgJ3RvZGF5X2NvdW50JyxcbiAgICAgICAgICAndXBjb21pbmdfY291bnQnLFxuICAgICAgICAgICdhc3NpZ25lZV9jb3VudCcsXG4gICAgICAgICAgJ2Fzc2lnbmVlX3Rhc2tzJyxcbiAgICAgICAgICAncmVwb3J0ZXJfY291bnQnLFxuICAgICAgICAgICdyZXBvcnRlcl90YXNrcycsXG4gICAgICAgICAgJ2FwcHJvdmVyX2NvdW50JyxcbiAgICAgICAgICAnYXBwcm92ZXJfdGFza3MnLFxuICAgICAgICAgICdkYXNoYm9hcmRfdXJsJyxcbiAgICAgICAgICAnc2V0dGluZ3NfdXJsJyxcbiAgICAgICAgICAndW5zdWJzY3JpYmVfdXJsJ1xuICAgICAgICBdLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ0RhaWx5IGRpZ2VzdCBvZiB0YXNrcyByZXF1aXJpbmcgYXR0ZW50aW9uJyxcbiAgICAgICAgc3RhdHVzOiAnY29tcGxldGVkJyxcbiAgICAgICAgdGVtcGxhdGVGaWxlOiAnZGFpbHlkaWdlc3QuaHRtbCdcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgRU1BSUxfVEVNUExBVEVTIl19
|
package/dist/types.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ export interface EmailTemplatesConfig {
|
|
|
19
19
|
OTP: Record<string, EmailTemplateConfig>;
|
|
20
20
|
Welcome: Record<string, EmailTemplateConfig>;
|
|
21
21
|
Account: Record<string, EmailTemplateConfig>;
|
|
22
|
+
'Demo-Request': Record<string, EmailTemplateConfig>;
|
|
22
23
|
};
|
|
23
24
|
Staff: {
|
|
24
25
|
Task: Record<string, EmailTemplateConfig>;
|
|
@@ -34,16 +35,17 @@ export interface EmailValidationResult {
|
|
|
34
35
|
errors: string[];
|
|
35
36
|
}
|
|
36
37
|
export type EmailCategory = 'Common' | 'Staff';
|
|
37
|
-
export type CommonSubCategory = 'OTP' | 'Welcome' | 'Account';
|
|
38
|
+
export type CommonSubCategory = 'OTP' | 'Welcome' | 'Account' | 'Demo-Request';
|
|
38
39
|
export type StaffSubCategory = 'Task' | 'Project' | 'Mention' | 'Feedback' | 'AI-Insights' | 'Daily-Digest';
|
|
39
40
|
export type EmailSubCategory = CommonSubCategory | StaffSubCategory;
|
|
40
41
|
export type OTPEventType = 'Email-OTP';
|
|
41
42
|
export type WelcomeEventType = 'User-Welcome';
|
|
42
43
|
export type AccountEventType = 'Account-Deleted';
|
|
44
|
+
export type DemoRequestEventType = 'Schedule-Demo';
|
|
43
45
|
export type TaskEventType = 'Task-Assigned' | 'Task-Overdue-Assignee' | 'Task-Overdue-Stakeholder' | 'Approval-Needed';
|
|
44
46
|
export type ProjectEventType = 'Member-Invitation' | 'Member-Removed' | 'Project-Kickstart';
|
|
45
47
|
export type MentionEventType = 'User-Mention' | 'AI-Mention';
|
|
46
48
|
export type FeedbackEventType = 'Feedback-Received' | 'Feedback-Prompt' | 'AI-Feedback';
|
|
47
49
|
export type AIInsightsEventType = 'Board-Insights-Ready';
|
|
48
50
|
export type DailyDigestEventType = 'Daily-Task-Digest';
|
|
49
|
-
export type EmailEventType = OTPEventType | WelcomeEventType | AccountEventType | TaskEventType | ProjectEventType | MentionEventType | FeedbackEventType | AIInsightsEventType | DailyDigestEventType;
|
|
51
|
+
export type EmailEventType = OTPEventType | WelcomeEventType | AccountEventType | DemoRequestEventType | TaskEventType | ProjectEventType | MentionEventType | FeedbackEventType | AIInsightsEventType | DailyDigestEventType;
|
package/dist/types.js
CHANGED
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
* Email Template Types
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFbWFpbCBUZW1wbGF0ZSBUeXBlc1xuICovXG5cbmV4cG9ydCBpbnRlcmZhY2UgRW1haWxUZW1wbGF0ZUNvbmZpZyB7XG4gIHRlbXBsYXRlTmFtZToge1xuICAgIGRldmVsb3BtZW50OiBzdHJpbmdcbiAgICBxYTogc3RyaW5nXG4gICAgcHJvZHVjdGlvbjogc3RyaW5nXG4gIH1cbiAgc3ViamVjdDogc3RyaW5nXG4gIHZhcmlhYmxlczogc3RyaW5nW11cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgc3RhdHVzPzogc3RyaW5nXG4gIHRlbXBsYXRlRmlsZT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVtYWlsVGVtcGxhdGVzQ29uZmlnIHtcbiAgJ0RlZmF1bHQtVGVtcGxhdGUnOiBFbWFpbFRlbXBsYXRlQ29uZmlnXG4gIENvbW1vbjoge1xuICAgIE9UUDogUmVjb3JkPHN0cmluZywgRW1haWxUZW1wbGF0ZUNvbmZpZz5cbiAgICBXZWxjb21lOiBSZWNvcmQ8c3RyaW5nLCBFbWFpbFRlbXBsYXRlQ29uZmlnPlxuICAgIEFjY291bnQ6IFJlY29yZDxzdHJpbmcsIEVtYWlsVGVtcGxhdGVDb25maWc+XG4gIH1cbiAgU3RhZmY6IHtcbiAgICBUYXNrOiBSZWNvcmQ8c3RyaW5nLCBFbWFpbFRlbXBsYXRlQ29uZmlnPlxuICAgIFByb2plY3Q6IFJlY29yZDxzdHJpbmcsIEVtYWlsVGVtcGxhdGVDb25maWc+
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFbWFpbCBUZW1wbGF0ZSBUeXBlc1xuICovXG5cbmV4cG9ydCBpbnRlcmZhY2UgRW1haWxUZW1wbGF0ZUNvbmZpZyB7XG4gIHRlbXBsYXRlTmFtZToge1xuICAgIGRldmVsb3BtZW50OiBzdHJpbmdcbiAgICBxYTogc3RyaW5nXG4gICAgcHJvZHVjdGlvbjogc3RyaW5nXG4gIH1cbiAgc3ViamVjdDogc3RyaW5nXG4gIHZhcmlhYmxlczogc3RyaW5nW11cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgc3RhdHVzPzogc3RyaW5nXG4gIHRlbXBsYXRlRmlsZT86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVtYWlsVGVtcGxhdGVzQ29uZmlnIHtcbiAgJ0RlZmF1bHQtVGVtcGxhdGUnOiBFbWFpbFRlbXBsYXRlQ29uZmlnXG4gIENvbW1vbjoge1xuICAgIE9UUDogUmVjb3JkPHN0cmluZywgRW1haWxUZW1wbGF0ZUNvbmZpZz5cbiAgICBXZWxjb21lOiBSZWNvcmQ8c3RyaW5nLCBFbWFpbFRlbXBsYXRlQ29uZmlnPlxuICAgIEFjY291bnQ6IFJlY29yZDxzdHJpbmcsIEVtYWlsVGVtcGxhdGVDb25maWc+XG4gICAgJ0RlbW8tUmVxdWVzdCc6IFJlY29yZDxzdHJpbmcsIEVtYWlsVGVtcGxhdGVDb25maWc+XG4gIH1cbiAgU3RhZmY6IHtcbiAgICBUYXNrOiBSZWNvcmQ8c3RyaW5nLCBFbWFpbFRlbXBsYXRlQ29uZmlnPlxuICAgIFByb2plY3Q6IFJlY29yZDxzdHJpbmcsIEVtYWlsVGVtcGxhdGVDb25maWc+XG4gICAgTWVudGlvbjogUmVjb3JkPHN0cmluZywgRW1haWxUZW1wbGF0ZUNvbmZpZz5cbiAgICBGZWVkYmFjazogUmVjb3JkPHN0cmluZywgRW1haWxUZW1wbGF0ZUNvbmZpZz5cbiAgICAnQUktSW5zaWdodHMnOiBSZWNvcmQ8c3RyaW5nLCBFbWFpbFRlbXBsYXRlQ29uZmlnPlxuICAgICdEYWlseS1EaWdlc3QnOiBSZWNvcmQ8c3RyaW5nLCBFbWFpbFRlbXBsYXRlQ29uZmlnPlxuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW1haWxWYWxpZGF0aW9uUmVzdWx0IHtcbiAgdmFsaWQ6IGJvb2xlYW5cbiAgZXJyb3JzOiBzdHJpbmdbXVxufVxuXG4vLyBUeXBlIGFsaWFzZXMgZm9yIGNvbnZlbmllbmNlXG5leHBvcnQgdHlwZSBFbWFpbENhdGVnb3J5ID0gJ0NvbW1vbicgfCAnU3RhZmYnXG5leHBvcnQgdHlwZSBDb21tb25TdWJDYXRlZ29yeSA9ICdPVFAnIHwgJ1dlbGNvbWUnIHwgJ0FjY291bnQnIHwgJ0RlbW8tUmVxdWVzdCdcbmV4cG9ydCB0eXBlIFN0YWZmU3ViQ2F0ZWdvcnkgPSAnVGFzaycgfCAnUHJvamVjdCcgfCAnTWVudGlvbicgfCAnRmVlZGJhY2snIHwgJ0FJLUluc2lnaHRzJyB8ICdEYWlseS1EaWdlc3QnXG5leHBvcnQgdHlwZSBFbWFpbFN1YkNhdGVnb3J5ID0gQ29tbW9uU3ViQ2F0ZWdvcnkgfCBTdGFmZlN1YkNhdGVnb3J5XG5cbi8vIENvbW1vbiBldmVudCB0eXBlc1xuZXhwb3J0IHR5cGUgT1RQRXZlbnRUeXBlID0gJ0VtYWlsLU9UUCdcbmV4cG9ydCB0eXBlIFdlbGNvbWVFdmVudFR5cGUgPSAnVXNlci1XZWxjb21lJ1xuZXhwb3J0IHR5cGUgQWNjb3VudEV2ZW50VHlwZSA9ICdBY2NvdW50LURlbGV0ZWQnXG5leHBvcnQgdHlwZSBEZW1vUmVxdWVzdEV2ZW50VHlwZSA9ICdTY2hlZHVsZS1EZW1vJ1xuXG4vLyBTdGFmZiBldmVudCB0eXBlc1xuZXhwb3J0IHR5cGUgVGFza0V2ZW50VHlwZSA9ICdUYXNrLUFzc2lnbmVkJyB8ICdUYXNrLU92ZXJkdWUtQXNzaWduZWUnIHwgJ1Rhc2stT3ZlcmR1ZS1TdGFrZWhvbGRlcicgfCAnQXBwcm92YWwtTmVlZGVkJ1xuZXhwb3J0IHR5cGUgUHJvamVjdEV2ZW50VHlwZSA9ICdNZW1iZXItSW52aXRhdGlvbicgfCAnTWVtYmVyLVJlbW92ZWQnIHwgJ1Byb2plY3QtS2lja3N0YXJ0J1xuZXhwb3J0IHR5cGUgTWVudGlvbkV2ZW50VHlwZSA9ICdVc2VyLU1lbnRpb24nIHwgJ0FJLU1lbnRpb24nXG5leHBvcnQgdHlwZSBGZWVkYmFja0V2ZW50VHlwZSA9ICdGZWVkYmFjay1SZWNlaXZlZCcgfCAnRmVlZGJhY2stUHJvbXB0JyB8ICdBSS1GZWVkYmFjaydcbmV4cG9ydCB0eXBlIEFJSW5zaWdodHNFdmVudFR5cGUgPSAnQm9hcmQtSW5zaWdodHMtUmVhZHknXG5leHBvcnQgdHlwZSBEYWlseURpZ2VzdEV2ZW50VHlwZSA9ICdEYWlseS1UYXNrLURpZ2VzdCdcblxuZXhwb3J0IHR5cGUgRW1haWxFdmVudFR5cGUgPVxuICB8IE9UUEV2ZW50VHlwZVxuICB8IFdlbGNvbWVFdmVudFR5cGVcbiAgfCBBY2NvdW50RXZlbnRUeXBlXG4gIHwgRGVtb1JlcXVlc3RFdmVudFR5cGVcbiAgfCBUYXNrRXZlbnRUeXBlXG4gIHwgUHJvamVjdEV2ZW50VHlwZVxuICB8IE1lbnRpb25FdmVudFR5cGVcbiAgfCBGZWVkYmFja0V2ZW50VHlwZVxuICB8IEFJSW5zaWdodHNFdmVudFR5cGVcbiAgfCBEYWlseURpZ2VzdEV2ZW50VHlwZSJdfQ==
|
package/dist/validation.d.ts
CHANGED
|
@@ -23,3 +23,32 @@ export declare function getTemplateName(category: string, subCategory: string, e
|
|
|
23
23
|
* Get the subject line for an email template
|
|
24
24
|
*/
|
|
25
25
|
export declare function getSubject(category: string, subCategory: string, eventType: string): string | null;
|
|
26
|
+
/**
|
|
27
|
+
* Sanitize a string value for safe use in an email subject line.
|
|
28
|
+
*
|
|
29
|
+
* Curly braces { } can break SES template rendering and MIME header encoding.
|
|
30
|
+
* Newlines can cause MIME header injection. Long subjects can cause improper
|
|
31
|
+
* MIME header folding.
|
|
32
|
+
*
|
|
33
|
+
* This function:
|
|
34
|
+
* - Strips newline / carriage return characters
|
|
35
|
+
* - Replaces curly braces with parentheses (preserves readability)
|
|
36
|
+
* - Collapses multiple spaces
|
|
37
|
+
* - Trims whitespace
|
|
38
|
+
* - Optionally truncates to a max length (default 200 chars)
|
|
39
|
+
*/
|
|
40
|
+
export declare function sanitizeSubjectValue(value: string, maxLength?: number): string;
|
|
41
|
+
/**
|
|
42
|
+
* Render a subject template by substituting {{variable}} placeholders with
|
|
43
|
+
* sanitized data values.
|
|
44
|
+
*
|
|
45
|
+
* Example:
|
|
46
|
+
* renderSubject('AI Feedback on {{task_title}}', { task_title: '/draft/{id}/joints' })
|
|
47
|
+
* → 'AI Feedback on /draft/(id)/joints'
|
|
48
|
+
*
|
|
49
|
+
* @param subjectTemplate - The subject template string with {{variable}} placeholders
|
|
50
|
+
* @param data - The template data values
|
|
51
|
+
* @param maxLength - Maximum length for the final rendered subject (default 200)
|
|
52
|
+
* @returns The rendered and sanitized subject string
|
|
53
|
+
*/
|
|
54
|
+
export declare function renderSubject(subjectTemplate: string, data: Record<string, string>, maxLength?: number): string;
|
package/dist/validation.js
CHANGED
|
@@ -6,6 +6,8 @@ exports.getValidEventTypes = getValidEventTypes;
|
|
|
6
6
|
exports.getValidSubCategories = getValidSubCategories;
|
|
7
7
|
exports.getTemplateName = getTemplateName;
|
|
8
8
|
exports.getSubject = getSubject;
|
|
9
|
+
exports.sanitizeSubjectValue = sanitizeSubjectValue;
|
|
10
|
+
exports.renderSubject = renderSubject;
|
|
9
11
|
const templates_1 = require("./templates");
|
|
10
12
|
/**
|
|
11
13
|
* Get email template configuration for a given category, subcategory, and event type
|
|
@@ -98,4 +100,60 @@ function getSubject(category, subCategory, eventType) {
|
|
|
98
100
|
}
|
|
99
101
|
return template.subject;
|
|
100
102
|
}
|
|
101
|
-
|
|
103
|
+
/**
|
|
104
|
+
* Sanitize a string value for safe use in an email subject line.
|
|
105
|
+
*
|
|
106
|
+
* Curly braces { } can break SES template rendering and MIME header encoding.
|
|
107
|
+
* Newlines can cause MIME header injection. Long subjects can cause improper
|
|
108
|
+
* MIME header folding.
|
|
109
|
+
*
|
|
110
|
+
* This function:
|
|
111
|
+
* - Strips newline / carriage return characters
|
|
112
|
+
* - Replaces curly braces with parentheses (preserves readability)
|
|
113
|
+
* - Collapses multiple spaces
|
|
114
|
+
* - Trims whitespace
|
|
115
|
+
* - Optionally truncates to a max length (default 200 chars)
|
|
116
|
+
*/
|
|
117
|
+
function sanitizeSubjectValue(value, maxLength = 200) {
|
|
118
|
+
let sanitized = value
|
|
119
|
+
// Remove any newline / carriage return characters (prevents MIME header injection)
|
|
120
|
+
.replace(/[\r\n\t]+/g, ' ')
|
|
121
|
+
// Replace curly braces with parentheses (prevents SES template engine interference)
|
|
122
|
+
.replace(/\{/g, '(')
|
|
123
|
+
.replace(/\}/g, ')')
|
|
124
|
+
// Collapse multiple spaces into one
|
|
125
|
+
.replace(/\s{2,}/g, ' ')
|
|
126
|
+
.trim();
|
|
127
|
+
// Truncate if needed, adding ellipsis
|
|
128
|
+
if (sanitized.length > maxLength) {
|
|
129
|
+
sanitized = sanitized.substring(0, maxLength - 1).trim() + '…';
|
|
130
|
+
}
|
|
131
|
+
return sanitized;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Render a subject template by substituting {{variable}} placeholders with
|
|
135
|
+
* sanitized data values.
|
|
136
|
+
*
|
|
137
|
+
* Example:
|
|
138
|
+
* renderSubject('AI Feedback on {{task_title}}', { task_title: '/draft/{id}/joints' })
|
|
139
|
+
* → 'AI Feedback on /draft/(id)/joints'
|
|
140
|
+
*
|
|
141
|
+
* @param subjectTemplate - The subject template string with {{variable}} placeholders
|
|
142
|
+
* @param data - The template data values
|
|
143
|
+
* @param maxLength - Maximum length for the final rendered subject (default 200)
|
|
144
|
+
* @returns The rendered and sanitized subject string
|
|
145
|
+
*/
|
|
146
|
+
function renderSubject(subjectTemplate, data, maxLength = 200) {
|
|
147
|
+
let rendered = subjectTemplate;
|
|
148
|
+
// Replace all {{variable}} placeholders with sanitized values
|
|
149
|
+
rendered = rendered.replace(/\{\{(\w+)\}\}/g, (_match, key) => {
|
|
150
|
+
const value = data[key];
|
|
151
|
+
if (value !== undefined) {
|
|
152
|
+
return sanitizeSubjectValue(value, maxLength);
|
|
153
|
+
}
|
|
154
|
+
return '';
|
|
155
|
+
});
|
|
156
|
+
// Final pass: sanitize the entire rendered subject
|
|
157
|
+
return sanitizeSubjectValue(rendered, maxLength);
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy92YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBTUEsNENBd0JDO0FBS0Qsa0RBaUNDO0FBS0QsZ0RBdUJDO0FBS0Qsc0RBZUM7QUFLRCwwQ0FXQztBQUtELGdDQVVDO0FBZ0JELG9EQW9CQztBQWVELHNDQWtCQztBQXZORCwyQ0FBNkM7QUFFN0M7O0dBRUc7QUFDSCxTQUFnQixnQkFBZ0IsQ0FDOUIsUUFBZ0IsRUFDaEIsV0FBbUIsRUFDbkIsU0FBaUI7SUFFakIsTUFBTSxTQUFTLEdBQUcsMkJBQXFELENBQUE7SUFFdkUsSUFBSSxRQUFRLEtBQUssa0JBQWtCLEVBQUUsQ0FBQztRQUNwQyxPQUFPLDJCQUFlLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtJQUM1QyxDQUFDO0lBRUQsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FFNUIsQ0FBQTtJQUNiLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNwQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFRCxNQUFNLGlCQUFpQixHQUFHLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUNyRCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFRCxPQUFPLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksQ0FBQTtBQUM3QyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixtQkFBbUIsQ0FDakMsUUFBZ0IsRUFDaEIsV0FBbUIsRUFDbkIsU0FBaUIsRUFDakIsSUFBNEI7SUFFNUIsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFBO0lBRTNCLDZCQUE2QjtJQUM3QixNQUFNLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBRW5FLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FB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dGVudCI6WyJpbXBvcnQgdHlwZSB7IEVtYWlsVGVtcGxhdGVDb25maWcsIEVtYWlsVmFsaWRhdGlvblJlc3VsdCB9IGZyb20gJy4vdHlwZXMnXG5pbXBvcnQgeyBFTUFJTF9URU1QTEFURVMgfSBmcm9tICcuL3RlbXBsYXRlcydcblxuLyoqXG4gKiBHZXQgZW1haWwgdGVtcGxhdGUgY29uZmlndXJhdGlvbiBmb3IgYSBnaXZlbiBjYXRlZ29yeSwgc3ViY2F0ZWdvcnksIGFuZCBldmVudCB0eXBlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbWFpbFRlbXBsYXRlKFxuICBjYXRlZ29yeTogc3RyaW5nLFxuICBzdWJDYXRlZ29yeTogc3RyaW5nLFxuICBldmVudFR5cGU6IHN0cmluZ1xuKTogRW1haWxUZW1wbGF0ZUNvbmZpZyB8IG51bGwge1xuICBjb25zdCB0ZW1wbGF0ZXMgPSBFTUFJTF9URU1QTEFURVMgYXMgdW5rbm93biBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuXG4gIGlmIChjYXRlZ29yeSA9PT0gJ0RlZmF1bHQtVGVtcGxhdGUnKSB7XG4gICAgcmV0dXJuIEVNQUlMX1RFTVBMQVRFU1snRGVmYXVsdC1UZW1wbGF0ZSddXG4gIH1cblxuICBjb25zdCBjYXRlZ29yeUNvbmZpZyA9IHRlbXBsYXRlc1tjYXRlZ29yeV0gYXNcbiAgICB8IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIEVtYWlsVGVtcGxhdGVDb25maWc+PlxuICAgIHwgdW5kZWZpbmVkXG4gIGlmICghY2F0ZWdvcnlDb25maWcpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgY29uc3Qgc3ViQ2F0ZWdvcnlDb25maWcgPSBjYXRlZ29yeUNvbmZpZ1tzdWJDYXRlZ29yeV1cbiAgaWYgKCFzdWJDYXRlZ29yeUNvbmZpZykge1xuICAgIHJldHVybiBudWxsXG4gIH1cblxuICByZXR1cm4gc3ViQ2F0ZWdvcnlDb25maWdbZXZlbnRUeXBlXSB8fCBudWxsXG59XG5cbi8qKlxuICogVmFsaWRhdGUgZW1haWwgcXVldWUgcGFyYW1ldGVycyBhZ2FpbnN0IHRlbXBsYXRlIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlRW1haWxQYXJhbXMoXG4gIGNhdGVnb3J5OiBzdHJpbmcsXG4gIHN1YkNhdGVnb3J5OiBzdHJpbmcsXG4gIGV2ZW50VHlwZTogc3RyaW5nLFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4pOiBFbWFpbFZhbGlkYXRpb25SZXN1bHQge1xuICBjb25zdCBlcnJvcnM6IHN0cmluZ1tdID0gW11cblxuICAvLyBHZXQgdGVtcGxhdGUgY29uZmlndXJhdGlvblxuICBjb25zdCB0ZW1wbGF0ZSA9IGdldEVtYWlsVGVtcGxhdGUoY2F0ZWdvcnksIHN1YkNhdGVnb3J5LCBldmVudFR5cGUpXG5cbiAgaWYgKCF0ZW1wbGF0ZSkge1xuICAgIGVycm9ycy5wdXNoKFxuICAgICAgYEludmFsaWQgZW1haWwgdGVtcGxhdGU6IGNhdGVnb3J5PVwiJHtjYXRlZ29yeX1cIiwgc3ViQ2F0ZWdvcnk9XCIke3N1YkNhdGVnb3J5fVwiLCBldmVudFR5cGU9XCIke2V2ZW50VHlwZX1cImBcbiAgICApXG4gICAgcmV0dXJuIHsgdmFsaWQ6IGZhbHNlLCBlcnJvcnMgfVxuICB9XG5cbiAgLy8gQ2hlY2sgZm9yIG1pc3NpbmcgcmVxdWlyZWQgdmFyaWFibGVzXG4gIGNvbnN0IG1pc3NpbmdWYXJpYWJsZXMgPSB0ZW1wbGF0ZS52YXJpYWJsZXMuZmlsdGVyKFxuICAgICh2YXJpYWJsZSkgPT4gISh2YXJpYWJsZSBpbiBkYXRhKVxuICApXG5cbiAgaWYgKG1pc3NpbmdWYXJpYWJsZXMubGVuZ3RoID4gMCkge1xuICAgIGVycm9ycy5wdXNoKFxuICAgICAgYE1pc3NpbmcgcmVxdWlyZWQgdmFyaWFibGVzIGZvciAke2V2ZW50VHlwZX06ICR7bWlzc2luZ1ZhcmlhYmxlcy5qb2luKCcsICcpfWBcbiAgICApXG4gIH1cblxuICByZXR1cm4ge1xuICAgIHZhbGlkOiBlcnJvcnMubGVuZ3RoID09PSAwLFxuICAgIGVycm9yc1xuICB9XG59XG5cbi8qKlxuICogR2V0IGFsbCB2YWxpZCBldmVudCB0eXBlcyBmb3IgYSBjYXRlZ29yeSBhbmQgc3ViY2F0ZWdvcnlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFZhbGlkRXZlbnRUeXBlcyhcbiAgY2F0ZWdvcnk6IHN0cmluZyxcbiAgc3ViQ2F0ZWdvcnk6IHN0cmluZ1xuKTogc3RyaW5nW10ge1xuICBjb25zdCB0ZW1wbGF0ZXMgPSBFTUFJTF9URU1QTEFURVMgYXMgdW5rbm93biBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuXG4gIGlmIChjYXRlZ29yeSA9PT0gJ0RlZmF1bHQtVGVtcGxhdGUnKSB7XG4gICAgcmV0dXJuIFsnRGVmYXVsdC1UZW1wbGF0ZSddXG4gIH1cblxuICBjb25zdCBjYXRlZ29yeUNvbmZpZyA9IHRlbXBsYXRlc1tjYXRlZ29yeV0gYXNcbiAgICB8IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIEVtYWlsVGVtcGxhdGVDb25maWc+PlxuICAgIHwgdW5kZWZpbmVkXG4gIGlmICghY2F0ZWdvcnlDb25maWcpIHtcbiAgICByZXR1cm4gW11cbiAgfVxuXG4gIGNvbnN0IHN1YkNhdGVnb3J5Q29uZmlnID0gY2F0ZWdvcnlDb25maWdbc3ViQ2F0ZWdvcnldXG4gIGlmICghc3ViQ2F0ZWdvcnlDb25maWcpIHtcbiAgICByZXR1cm4gW11cbiAgfVxuXG4gIHJldHVybiBPYmplY3Qua2V5cyhzdWJDYXRlZ29yeUNvbmZpZylcbn1cblxuLyoqXG4gKiBHZXQgYWxsIHZhbGlkIHN1YmNhdGVnb3JpZXMgZm9yIGEgY2F0ZWdvcnlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFZhbGlkU3ViQ2F0ZWdvcmllcyhjYXRlZ29yeTogc3RyaW5nKTogc3RyaW5nW10ge1xuICBjb25zdCB0ZW1wbGF0ZXMgPSBFTUFJTF9URU1QTEFURVMgYXMgdW5rbm93biBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuXG4gIGlmIChjYXRlZ29yeSA9PT0gJ0RlZmF1bHQtVGVtcGxhdGUnKSB7XG4gICAgcmV0dXJuIFtdXG4gIH1cblxuICBjb25zdCBjYXRlZ29yeUNvbmZpZyA9IHRlbXBsYXRlc1tjYXRlZ29yeV0gYXNcbiAgICB8IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIEVtYWlsVGVtcGxhdGVDb25maWc+PlxuICAgIHwgdW5kZWZpbmVkXG4gIGlmICghY2F0ZWdvcnlDb25maWcpIHtcbiAgICByZXR1cm4gW11cbiAgfVxuXG4gIHJldHVybiBPYmplY3Qua2V5cyhjYXRlZ29yeUNvbmZpZylcbn1cblxuLyoqXG4gKiBHZXQgdGhlIFNFUyB0ZW1wbGF0ZSBuYW1lIGZvciBhbiBlbnZpcm9ubWVudFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGVtcGxhdGVOYW1lKFxuICBjYXRlZ29yeTogc3RyaW5nLFxuICBzdWJDYXRlZ29yeTogc3RyaW5nLFxuICBldmVudFR5cGU6IHN0cmluZyxcbiAgZW52aXJvbm1lbnQ6ICdkZXZlbG9wbWVudCcgfCAncWEnIHwgJ3Byb2R1Y3Rpb24nXG4pOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3QgdGVtcGxhdGUgPSBnZXRFbWFpbFRlbXBsYXRlKGNhdGVnb3J5LCBzdWJDYXRlZ29yeSwgZXZlbnRUeXBlKVxuICBpZiAoIXRlbXBsYXRlKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuICByZXR1cm4gdGVtcGxhdGUudGVtcGxhdGVOYW1lW2Vudmlyb25tZW50XVxufVxuXG4vKipcbiAqIEdldCB0aGUgc3ViamVjdCBsaW5lIGZvciBhbiBlbWFpbCB0ZW1wbGF0ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3ViamVjdChcbiAgY2F0ZWdvcnk6IHN0cmluZyxcbiAgc3ViQ2F0ZWdvcnk6IHN0cmluZyxcbiAgZXZlbnRUeXBlOiBzdHJpbmdcbik6IHN0cmluZyB8IG51bGwge1xuICBjb25zdCB0ZW1wbGF0ZSA9IGdldEVtYWlsVGVtcGxhdGUoY2F0ZWdvcnksIHN1YkNhdGVnb3J5LCBldmVudFR5cGUpXG4gIGlmICghdGVtcGxhdGUpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG4gIHJldHVybiB0ZW1wbGF0ZS5zdWJqZWN0XG59XG5cbi8qKlxuICogU2FuaXRpemUgYSBzdHJpbmcgdmFsdWUgZm9yIHNhZmUgdXNlIGluIGFuIGVtYWlsIHN1YmplY3QgbGluZS5cbiAqXG4gKiBDdXJseSBicmFjZXMgeyB9IGNhbiBicmVhayBTRVMgdGVtcGxhdGUgcmVuZGVyaW5nIGFuZCBNSU1FIGhlYWRlciBlbmNvZGluZy5cbiAqIE5ld2xpbmVzIGNhbiBjYXVzZSBNSU1FIGhlYWRlciBpbmplY3Rpb24uIExvbmcgc3ViamVjdHMgY2FuIGNhdXNlIGltcHJvcGVyXG4gKiBNSU1FIGhlYWRlciBmb2xkaW5nLlxuICpcbiAqIFRoaXMgZnVuY3Rpb246XG4gKiAtIFN0cmlwcyBuZXdsaW5lIC8gY2FycmlhZ2UgcmV0dXJuIGNoYXJhY3RlcnNcbiAqIC0gUmVwbGFjZXMgY3VybHkgYnJhY2VzIHdpdGggcGFyZW50aGVzZXMgKHByZXNlcnZlcyByZWFkYWJpbGl0eSlcbiAqIC0gQ29sbGFwc2VzIG11bHRpcGxlIHNwYWNlc1xuICogLSBUcmltcyB3aGl0ZXNwYWNlXG4gKiAtIE9wdGlvbmFsbHkgdHJ1bmNhdGVzIHRvIGEgbWF4IGxlbmd0aCAoZGVmYXVsdCAyMDAgY2hhcnMpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzYW5pdGl6ZVN1YmplY3RWYWx1ZShcbiAgdmFsdWU6IHN0cmluZyxcbiAgbWF4TGVuZ3RoOiBudW1iZXIgPSAyMDBcbik6IHN0cmluZyB7XG4gIGxldCBzYW5pdGl6ZWQgPSB2YWx1ZVxuICAgIC8vIFJlbW92ZSBhbnkgbmV3bGluZSAvIGNhcnJpYWdlIHJldHVybiBjaGFyYWN0ZXJzIChwcmV2ZW50cyBNSU1FIGhlYWRlciBpbmplY3Rpb24pXG4gICAgLnJlcGxhY2UoL1tcXHJcXG5cXHRdKy9nLCAnICcpXG4gICAgLy8gUmVwbGFjZSBjdXJseSBicmFjZXMgd2l0aCBwYXJlbnRoZXNlcyAocHJldmVudHMgU0VTIHRlbXBsYXRlIGVuZ2luZSBpbnRlcmZlcmVuY2UpXG4gICAgLnJlcGxhY2UoL1xcey9nLCAnKCcpXG4gICAgLnJlcGxhY2UoL1xcfS9nLCAnKScpXG4gICAgLy8gQ29sbGFwc2UgbXVsdGlwbGUgc3BhY2VzIGludG8gb25lXG4gICAgLnJlcGxhY2UoL1xcc3syLH0vZywgJyAnKVxuICAgIC50cmltKClcblxuICAvLyBUcnVuY2F0ZSBpZiBuZWVkZWQsIGFkZGluZyBlbGxpcHNpc1xuICBpZiAoc2FuaXRpemVkLmxlbmd0aCA+IG1heExlbmd0aCkge1xuICAgIHNhbml0aXplZCA9IHNhbml0aXplZC5zdWJzdHJpbmcoMCwgbWF4TGVuZ3RoIC0gMSkudHJpbSgpICsgJ+KApidcbiAgfVxuXG4gIHJldHVybiBzYW5pdGl6ZWRcbn1cblxuLyoqXG4gKiBSZW5kZXIgYSBzdWJqZWN0IHRlbXBsYXRlIGJ5IHN1YnN0aXR1dGluZyB7e3ZhcmlhYmxlfX0gcGxhY2Vob2xkZXJzIHdpdGhcbiAqIHNhbml0aXplZCBkYXRhIHZhbHVlcy5cbiAqXG4gKiBFeGFtcGxlOlxuICogICByZW5kZXJTdWJqZWN0KCdBSSBGZWVkYmFjayBvbiB7e3Rhc2tfdGl0bGV9fScsIHsgdGFza190aXRsZTogJy9kcmFmdC97aWR9L2pvaW50cycgfSlcbiAqICAg4oaSICdBSSBGZWVkYmFjayBvbiAvZHJhZnQvKGlkKS9qb2ludHMnXG4gKlxuICogQHBhcmFtIHN1YmplY3RUZW1wbGF0ZSAtIFRoZSBzdWJqZWN0IHRlbXBsYXRlIHN0cmluZyB3aXRoIHt7dmFyaWFibGV9fSBwbGFjZWhvbGRlcnNcbiAqIEBwYXJhbSBkYXRhICAgICAgICAgICAgLSBUaGUgdGVtcGxhdGUgZGF0YSB2YWx1ZXNcbiAqIEBwYXJhbSBtYXhMZW5ndGggICAgICAgLSBNYXhpbXVtIGxlbmd0aCBmb3IgdGhlIGZpbmFsIHJlbmRlcmVkIHN1YmplY3QgKGRlZmF1bHQgMjAwKVxuICogQHJldHVybnMgVGhlIHJlbmRlcmVkIGFuZCBzYW5pdGl6ZWQgc3ViamVjdCBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlbmRlclN1YmplY3QoXG4gIHN1YmplY3RUZW1wbGF0ZTogc3RyaW5nLFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LFxuICBtYXhMZW5ndGg6IG51bWJlciA9IDIwMFxuKTogc3RyaW5nIHtcbiAgbGV0IHJlbmRlcmVkID0gc3ViamVjdFRlbXBsYXRlXG5cbiAgLy8gUmVwbGFjZSBhbGwge3t2YXJpYWJsZX19IHBsYWNlaG9sZGVycyB3aXRoIHNhbml0aXplZCB2YWx1ZXNcbiAgcmVuZGVyZWQgPSByZW5kZXJlZC5yZXBsYWNlKC9cXHtcXHsoXFx3KylcXH1cXH0vZywgKF9tYXRjaCwga2V5OiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCB2YWx1ZSA9IGRhdGFba2V5XVxuICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gc2FuaXRpemVTdWJqZWN0VmFsdWUodmFsdWUsIG1heExlbmd0aClcbiAgICB9XG4gICAgcmV0dXJuICcnXG4gIH0pXG5cbiAgLy8gRmluYWwgcGFzczogc2FuaXRpemUgdGhlIGVudGlyZSByZW5kZXJlZCBzdWJqZWN0XG4gIHJldHVybiBzYW5pdGl6ZVN1YmplY3RWYWx1ZShyZW5kZXJlZCwgbWF4TGVuZ3RoKVxufSJdfQ==
|