truemark-cdk-lib 1.4.1 → 1.4.3-alpha.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.
|
@@ -175,27 +175,27 @@ export interface TeamTagsProps extends TagProps {
|
|
|
175
175
|
*/
|
|
176
176
|
readonly contactPhone?: string;
|
|
177
177
|
/**
|
|
178
|
-
* Name of the business unit responsible for the
|
|
178
|
+
* Name of the business unit responsible for the team associated with the tagged resources.
|
|
179
179
|
*/
|
|
180
180
|
readonly businessUnitName?: string;
|
|
181
181
|
/**
|
|
182
|
-
* Identifier for the business unit responsible for the
|
|
182
|
+
* Identifier for the business unit responsible for the team associated with the tagged resources.
|
|
183
183
|
*/
|
|
184
184
|
readonly businessUnitId?: string;
|
|
185
185
|
/**
|
|
186
|
-
* Name of the business division responsible for the
|
|
186
|
+
* Name of the business division responsible for the team associated with the tagged resources.
|
|
187
187
|
*/
|
|
188
188
|
readonly divisionName?: string;
|
|
189
189
|
/**
|
|
190
|
-
* Identifier for the business division responsible for the
|
|
190
|
+
* Identifier for the business division responsible for the team associated with the tagged resources.
|
|
191
191
|
*/
|
|
192
192
|
readonly divisionId?: string;
|
|
193
193
|
/**
|
|
194
|
-
* Name of the department responsible for the
|
|
194
|
+
* Name of the department responsible for the team associated with the tagged resources.
|
|
195
195
|
*/
|
|
196
196
|
readonly departmentName?: string;
|
|
197
197
|
/**
|
|
198
|
-
* Identifier for the department responsible for the
|
|
198
|
+
* Identifier for the department responsible for the team associated with the tagged resources.
|
|
199
199
|
*/
|
|
200
200
|
readonly departmentId?: string;
|
|
201
201
|
}
|
|
@@ -285,4 +285,4 @@ class StandardTags {
|
|
|
285
285
|
}
|
|
286
286
|
}
|
|
287
287
|
exports.StandardTags = StandardTags;
|
|
288
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtdGFncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInN0YW5kYXJkLXRhZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQXlEO0FBK0d6RDs7R0FFRztBQUNILElBQVksa0JBeUJYO0FBekJELFdBQVksa0JBQWtCO0lBQzVCOzs7T0FHRztJQUNILDREQUFzQyxDQUFBO0lBRXRDOzs7O09BSUc7SUFDSCwrQ0FBeUIsQ0FBQTtJQUV6Qjs7OztPQUlHO0lBQ0gsK0NBQXlCLENBQUE7SUFFekI7O09BRUc7SUFDSCx1Q0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBekJXLGtCQUFrQixHQUFsQiwwQkFBa0IsS0FBbEIsMEJBQWtCLFFBeUI3QjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxlQXNCWDtBQXRCRCxXQUFZLGVBQWU7SUFFekI7O09BRUc7SUFDSCw4QkFBVyxDQUFBO0lBRVg7O09BRUc7SUFDSCw4QkFBVyxDQUFBO0lBRVg7OztPQUdHO0lBQ0gsOEJBQVcsQ0FBQTtJQUVYOztPQUVHO0lBQ0gsZ0NBQWEsQ0FBQTtBQUNmLENBQUMsRUF0QlcsZUFBZSxHQUFmLHVCQUFlLEtBQWYsdUJBQWUsUUFzQjFCO0FBMEhEOztHQUVHO0FBQ0gsTUFBYSxZQUFZO0lBaUJ2Qjs7Ozs7T0FLRztJQUNILFlBQVksS0FBZ0IsRUFBRSxLQUF5Qjs7UUFDckQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxTQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxlQUFlLG1DQUFJLEtBQUssQ0FBQztRQUNsRCxNQUFNLGlCQUFpQixHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQUUsS0FBSyxDQUFDLENB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WUFDdkIsY0FBYztZQUNkLGNBQWM7WUFDZCxZQUFZO1lBQ1osUUFBUTtTQUNULENBQUE7SUFDSCxDQUFDO0NBQ0Y7QUF2UEQsb0NBdVBDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1N0YWNrLCBTdGFnZSwgVGFnUHJvcHMsIFRhZ3N9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGF1dG9tYXRpb24gY29tcG9uZW50IHRhZ3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b21hdGlvbkNvbXBvbmVudFRhZ3NQcm9wcyBleHRlbmRzIFRhZ1Byb3BzIHtcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIFVSTCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgdXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmVuZG9yIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICByZWFkb25seSB2ZW5kb3I/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYXV0b21hdGlvbiB0YWdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9tYXRpb25UYWdzUHJvcHMgZXh0ZW5kcyBUYWdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgc3RhY2suIElmIG9uZSBpZiBub3QgcHJvdmlkZWQsIHRoZSBuYW1lIG9mIHRoZSBzdGFjayBpcyB1c2VkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFN0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBVUkwgdG8gd2hlcmUgdGhlIGF1dG9tYXRpb24gaXMgc3RvcmVkIG9yIHB1Ymxpc2hlZC4gVGhpcyBmaWVsZCBpcyByZXF1aXJlZFxuICAgKiB3aGVuIGFwcGx5aW5nIGF1dG9tYXRpb24gdGFncy5cbiAgICovXG4gIHJlYWRvbmx5IHVybD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjb3N0IGNlbnRlciB0YWdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvc3RDZW50ZXJUYWdzUHJvcHMgZXh0ZW5kcyBUYWdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHByb2plY3QgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5nIHRoZSBjb3N0cy5cbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgcHJvamVjdCByZXNwb25zaWJsZSBmb3IgY3JlYXRpbmcgdGhlIGNvc3RzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBlbnZpcm9ubWVudCBpbmN1cnJpbmcgdGhlIGNvc3RzLiBFeGFtcGxlIFwic3RhZ2VcIiBvciBcInByb2RcIlxuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGNvbnRhY3QgcmVzcG9uc2libGUgZm9yIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICogSWYgbm90IHNldCwgdGhlIHRhZyBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhY3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbWFpbCBvZiB0aGUgY29udGFjdCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICogSWYgbm90IHNldCwgdGhlIHRhZyBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhY3RFbWFpbD86IHN0cmluZztcblxuICAvKipcbiAgICogUGhvbmUgbnVtYmVyIG9mIHRoZSBjb250YWN0IHJlc3BvbnNpYmxlIGZvciBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqIElmIG5vdCBzZXQsIHRoZSB0YWcgaXMgbm90IGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0UGhvbmU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGJ1c2luZXNzIHVuaXQgcmVzcG9uc2libGUgZm9yIHRoZSBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqL1xuICByZWFkb25seSBidXNpbmVzc1VuaXROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgYnVzaW5lc3MgdW5pdCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGJ1c2luZXNzVW5pdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBidXNpbmVzcyBkaXZpc2lvbiByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRpdmlzaW9uTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIGJ1c2luZXNzIGRpdmlzaW9uIHJlc3BvbnNpYmxlIGZvciB0aGUgY29zdHMgYXNzb2NpYXRlZCB3aXRoIHRoZSB0YWdnZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGl2aXNpb25JZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZGVwYXJ0bWVudCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRlcGFydG1lbnROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgZGVwYXJ0bWVudCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRlcGFydG1lbnRJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBIb2xkcyB2YWx1ZXMgdGhhdCBtYXkgYmUgYXBwbGllZCB0byB0aGUgZGF0YS1jbGFzc2lmaWNhdGlvbiBzZWN1cml0eSB0YWcuXG4gKi9cbmV4cG9ydCBlbnVtIERhdGFDbGFzc2lmaWNhdGlvbiB7XG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gZGF0YSBtYXkgbm90IGxlYXZlIHRoZSBnZW9ncmFwaGljIHJlZ2lvbiBpbiB3aGljaCBpdCBpcyBzdG9yZWQuXG4gICAqIFRoaXMgaXMgdXN1YWxseSByZWxhdGVkIHRvIGdvdmVybm1lbnQgcmVzdHJpY3Rpb25zIGFwcGxpZWQgdG8gdGhlIGRhdGEuXG4gICAqL1xuICBFeHBvcnRSZXN0cmljdGVkID0gXCJleHBvcnQtcmVzdHJpY3RlZFwiLFxuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gdW5hdXRob3JpemVkIGRpc2Nsb3N1cmUsIGFsdGVyYXRpb24gb3IgZGVzdHJ1Y3Rpb24gb2YgZGF0YSB3b3VsZFxuICAgKiByZXN1bHQgaW4gYSBzaWduaWZpY2FudCByaXNrIHRvIHRoZSBvcmdhbml6YXRpb24uIFRoaXMgaW5jbHVkZXMgUElJLCBQSElcbiAgICogYW5kIFBDSSBkYXRhLlxuICAgKi9cbiAgUmVzdHJpY3RlZCA9IFwicmVzdHJpY3RlZFwiLFxuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gdW5hdXRob3JpemVkIGRpc2Nsb3N1cmUsIGFsdGVyYXRpb24gb3IgZGVzdHJ1Y3Rpb24gb2YgdGhlIGRhdGEgd291bGRcbiAgICogcmVzdWx0IGluIG1vZGVyYXRlIHJpc2suIFRoaXMgaW5jbHVkZXMgYWxsIGRhdGEgdGhhdCBpcyBub3QgaW4gb25lIG9mIHRoZSBvdGhlclxuICAgKiBjbGFzc2lmaWNhdGlvbnMuXG4gICAqL1xuICBDb250cm9sbGVkID0gXCJjb250cm9sbGVkXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiBoYW5kbGVkIG9yIHN0b3JlZCBkYXRhIHJlYWRpbHkgYXZhaWxhYmxlIHRvIHRoZSBwdWJsaWMuXG4gICAqL1xuICBQdWJsaWMgPSBcInB1YmxpY1wiXG59XG5cbi8qKlxuICogSG9sZHMgdmFsdWVzIHRoYXQgbWF5IGJlIGFwcGxpZWQgdG8gdGhlIGRhdGEtc2Vuc2l0aXZpdHkgc2VjdXJpdHkgdGFnLlxuICovXG5leHBvcnQgZW51bSBEYXRhU2Vuc2l0aXZpdHkge1xuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gcmVzb3VyY2VzIGFyZSBpbiBQQ0kgc2NvcGUuXG4gICAqL1xuICBQQ0kgPSBcInBjaVwiLFxuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gcmVzb3VyY2VzIGhhbmRsZSBvciBzdG9yZSBwZXJzb25hbGx5IGlkZW50aWZpYWJsZSBpbmZvcm1hdGlvbi5cbiAgICovXG4gIFBJSSA9IFwicGlpXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiByZXNvdXJjZXMgaGFuZGxlIG9yIHN0b3JlIHBlcnNvbmFsIGhlYWx0aCBpbmZvcm1hdGlvbiBhbmQgYXJlXG4gICAqIHN1YmplY3QgdG8gSElQUEEgcnVsZXMuXG4gICAqL1xuICBQSEkgPSBcInBoaVwiLFxuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gdGhlcmUgaXMgbm8gZGF0YSBzZW5zaXRpdml0eS5cbiAgICovXG4gIE5PTkUgPSBcIm5vbmVcIlxufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHNlY3VyaXR5IHRhZ3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlUYWdzUHJvcHMgZXh0ZW5kcyBUYWdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIERhdGEgY2xhc3NpZmljYXRpb24gdmFsdWUuIFNlZSB0aGUgVHJ1ZU1hcmsgQVdTIHRhZ2dpbmcgc3RyYXRlZ3kgZG9jdW1lbnRhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGRhdGFDbGFzc2lmaWNhdGlvbj86IERhdGFDbGFzc2lmaWNhdGlvbjtcblxuICAvKipcbiAgICogRGF0YSBzZW5zaXRpdml0eS4gU2VlIHRoZSBUcnVlTWFyayBBV1MgdGFnZ2luZyBzdHJhdGVneSBkb2N1bWVudGF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVNlbnNpdGl2aXR5PzogRGF0YVNlbnNpdGl2aXR5O1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHRlYW0gdGFncy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZWFtVGFnc1Byb3BzIGV4dGVuZHMgVGFnUHJvcHMge1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSB0ZWFtLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBpZiBkaWZmZXJlbnQgdGhhbiB0aGUgdGVhbSBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHRlYW0gbGVhZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhY3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbWFpbCBvZiB0aGUgdGVhbSBsZWFkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFjdEVtYWlsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQaG9uZSBudW1iZXIgZm9yIHRoZSB0ZWFtIGxlYWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0UGhvbmU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGJ1c2luZXNzIHVuaXQgcmVzcG9uc2libGUgZm9yIHRoZSBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqL1xuICByZWFkb25seSBidXNpbmVzc1VuaXROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgYnVzaW5lc3MgdW5pdCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGJ1c2luZXNzVW5pdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBidXNpbmVzcyBkaXZpc2lvbiByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRpdmlzaW9uTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIGJ1c2luZXNzIGRpdmlzaW9uIHJlc3BvbnNpYmxlIGZvciB0aGUgY29zdHMgYXNzb2NpYXRlZCB3aXRoIHRoZSB0YWdnZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGl2aXNpb25JZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZGVwYXJ0bWVudCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRlcGFydG1lbnROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgZGVwYXJ0bWVudCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRlcGFydG1lbnRJZD86IHN0cmluZztcbn1cblxuLy8gVE9ETyBOZWVkIHRvIHN1cHBvcnQgYnVzaW5lc3MgdW5pdCwgZGl2aXNpb24gYW5kIGRlcGFydG1lbnRcbi8vIFRPRE8gTmVlZCB0byBtYWtlIHRhZ3MgY29uc2lzdGVudCBiZXR3ZWVuIGVsZW1lbnRzXG4vLyBUT0RPIE5lZWQgdG8gYWRkIHRpdGxlIGZvciBwZW9wbGVcbi8vIFRPRE8gSSBoYXRlIGhvdyB3ZSBoYXZlIHRvIG92ZXJyaWRlIHRoZSBlbnZpcm9ubWVudCB0YWdcbi8qKlxuICogQ29udGFpbnMgc3RhbmRhcmQgdGFnZ2luZyBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkVGFnc1Byb3BzIHtcblxuICAvKipcbiAgICogQXV0b21hdGlvbiBjb21wb25lbnQgdGFncy5cbiAgICovXG4gIHJlYWRvbmx5IGF1dG9tYXRpb25Db21wb25lbnRUYWdzPzogQXV0b21hdGlvbkNvbXBvbmVudFRhZ3NQcm9wcztcblxuICAvKipcbiAgICogQXV0b21hdGlvbiB0YWdzIHRvIGFwcGx5IHRvIGNyZWF0ZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b21hdGlvblRhZ3M/OiBBdXRvbWF0aW9uVGFnc1Byb3BzO1xuXG4gIC8qKlxuICAgKiBDb3N0IGNlbnRlciB0YWdzIHRvIGFwcGx5IHRvIGNyZWF0ZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgY29zdENlbnRlclRhZ3M/OiBDb3N0Q2VudGVyVGFnc1Byb3BzO1xuXG4gIC8qKlxuICAgKiBTZWN1cml0eSB0YWdzIHRvIGFwcGx5IHRvIGNyZWF0ZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHlUYWdzPzogU2VjdXJpdHlUYWdzUHJvcHM7XG5cbiAgLyoqXG4gICAqIFRlYW0gdGFncyB0byBhcHBseSB0byBjcmVhdGVkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IHRlYW1UYWdzPzogVGVhbVRhZ3NQcm9wcztcblxuICAvKipcbiAgICogU2V0dGluZyB0aGlzIHRvIHRydWUgd2lsbCBzdXBwcmVzcyB0aGUgY3JlYXRpb24gb2YgdGFncyB0aGlzIHJlc291cmNlIGNyZWF0ZXMuXG4gICAqIERlZmF1bHQgdmFsdWUgaXMgZmFsc2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHN1cHByZXNzVGFnZ2luZz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUHJvdmlkZXMgY29udmVuaWVuY2UgbWV0aG9kcyB0byB0YWcgcmVzb3VyY2VzIGZvbGxvd2luZyBUcnVlTWFyaydzIHRhZ2dpbmcgc3RyYXRlZ3kuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFuZGFyZFRhZ3Mge1xuXG4gIC8qKlxuICAgKiBUaGUgc2NvcGUgYmVpbmcgdGFnZ2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgc2NvcGU6IENvbnN0cnVjdDtcblxuICAvKipcbiAgICogVGhlIHRhZ3MuXG4gICAqL1xuICByZWFkb25seSB0YWdzOiBUYWdzO1xuXG4gIC8qKlxuICAgKiBJZiB0YWdzIHdlcmUgc3VwcHJlc3NlZC5cbiAgICovXG4gIHJlYWRvbmx5IHN1cHByZXNzZWQ6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgU3RhbmRhcmRUYWdzIGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgdGhlIHNjb3BlIHRvIHRhZ1xuICAgKiBAcGFyYW0gcHJvcHMgdGhlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIHByb3BzPzogU3RhbmRhcmRUYWdzUHJvcHMpIHtcbiAgICB0aGlzLnNjb3BlID0gc2NvcGU7XG4gICAgdGhpcy50YWdzID0gVGFncy5vZihzY29wZSk7XG4gICAgdGhpcy5zdXBwcmVzc2VkID0gcHJvcHM/LnN1cHByZXNzVGFnZ2luZyA/PyBmYWxzZTtcbiAgICBjb25zdCBzdGFuZGFyZFRhZ3NQcm9wcyA9IFN0YW5kYXJkVGFncy5tZXJnZShzY29wZS5ub2RlLnRyeUdldENvbnRleHQoXCJzdGFuZGFyZFRhZ3NcIiksIHByb3BzKTtcbiAgICB0aGlzLmFkZEF1dG9tYXRpb25Db21wb25lbnRUYWdzKHN0YW5kYXJkVGFnc1Byb3BzLmF1dG9tYXRpb25Db21wb25lbnRUYWdzKTtcbiAgICB0aGlzLmFkZEF1dG9tYXRpb25UYWdzKHN0YW5kYXJkVGFnc1Byb3BzLmF1dG9tYXRpb25UYWdzKTtcbiAgICB0aGlzLmFkZENvc3RDZW50ZXJUYWdzKHN0YW5kYXJkVGFnc1Byb3BzLmNvc3RDZW50ZXJUYWdzKTtcbiAgICB0aGlzLmFkZFNlY3VyaXR5VGFncyhzdGFuZGFyZFRhZ3NQcm9wcy5zZWN1cml0eVRhZ3MpO1xuICAgIHRoaXMuYWRkVGVhbVRhZ3Moc3RhbmRhcmRUYWdzUHJvcHMudGVhbVRhZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYXV0b21hdGlvbiBjb21wb25lbnQgdGFncy4gVGhlc2UgYXJlIG1lYW50IHRvIGJlIHVzZWQgaW4gaW5kaXZpZHVhbCBjb25zdHJ1Y3RzIHRvIGlkZW50aWZ5XG4gICAqIHdoYXQgcmVzb3VyY2VzIHdlcmUgc3Rvb2QgdXAgYnkgc3BlY2lmaWMgY29uc3RydWN0cy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIG9wdGlvbmFsIHByb3BlcnRpZXMgZm9yIHRoZSB0YWdzXG4gICAqL1xuICBhZGRBdXRvbWF0aW9uQ29tcG9uZW50VGFncyhwcm9wcz86IEF1dG9tYXRpb25Db21wb25lbnRUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmIChwcm9wcyAmJiAhdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBpZiAocHJvcHMuaWQgPT09IFwie3tUTUNES319XCIpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LWlkXCIsIHRoaXMuc2NvcGUuY29uc3RydWN0b3IubmFtZSwgcHJvcHMpO1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjpjb21wb25lbnQtdXJsXCIsIFwiaHR0cHM6Ly9naXRodWIuY29tL3RydWVtYXJrL2Nka1wiLCBwcm9wcyk7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC12ZW5kb3JcIiwgXCJUcnVlTWFya1wiLCBwcm9wcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAocHJvcHMuaWQpIHtcbiAgICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjpjb21wb25lbnQtaWRcIiwgcHJvcHMuaWQsIHByb3BzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMudXJsKSB7XG4gICAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LXVybFwiLCBwcm9wcy51cmwsIHByb3BzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMudmVuZG9yKSB7XG4gICAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LXZlbmRvclwiLCBwcm9wcy52ZW5kb3IsIHByb3BzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGF1dG9tYXRpb24gdGFncy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIHByb3BlcnRpZXMgZm9yIHRoZSB0YWdzXG4gICAqL1xuICBhZGRBdXRvbWF0aW9uVGFncyhwcm9wcz86IEF1dG9tYXRpb25UYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmICghdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBsZXQgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHByb3BzPy5pZFxuICAgICAgaWYgKCFTdGFnZS5pc1N0YWdlKHRoaXMuc2NvcGUpICYmICFpZCkge1xuICAgICAgICBpZCA9IFN0YWNrLm9mKHRoaXMuc2NvcGUpLnN0YWNrTmFtZVxuICAgICAgfVxuICAgICAgaWYgKGlkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmlkXCIsIGlkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHM/LnVybCkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjp1cmxcIiwgcHJvcHMudXJsLCBwcm9wcyk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgY29zdCBjZW50ZXIgdGFncy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIHByb3BlcnRpZXMgZm9yIHRoZSB0YWdzXG4gICAqL1xuICBhZGRDb3N0Q2VudGVyVGFncyhwcm9wcz86IENvc3RDZW50ZXJUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmIChwcm9wcyAmJiAhdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBpZiAocHJvcHMucHJvamVjdE5hbWUpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOnByb2plY3QtbmFtZVwiLCBwcm9wcy5wcm9qZWN0TmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLnByb2plY3RJZCkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6cHJvamVjdC1pZFwiLCBwcm9wcy5wcm9qZWN0SWQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5lbnZpcm9ubWVudCkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6ZW52aXJvbm1lbnRcIiwgcHJvcHMuZW52aXJvbm1lbnQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5jb250YWN0TmFtZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6Y29udGFjdC1uYW1lXCIsIHByb3BzLmNvbnRhY3ROYW1lLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdEVtYWlsKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpjb250YWN0LWVtYWlsXCIsIHByb3BzLmNvbnRhY3RFbWFpbCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmNvbnRhY3RQaG9uZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6Y29udGFjdC1waG9uZVwiLCBwcm9wcy5jb250YWN0UGhvbmUsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5idXNpbmVzc1VuaXROYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpidXNpbmVzcy11bml0LW5hbWVcIiwgcHJvcHMuYnVzaW5lc3NVbml0TmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmJ1c2luZXNzVW5pdElkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpidXNpbmVzcy11bml0LWlkXCIsIHByb3BzLmJ1c2luZXNzVW5pdElkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuZGl2aXNpb25OYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpkaXZpc2lvbi1uYW1lXCIsIHByb3BzLmRpdmlzaW9uTmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRpdmlzaW9uSWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmRpdmlzaW9uLWlkXCIsIHByb3BzLmRpdmlzaW9uSWQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5kZXBhcnRtZW50TmFtZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6ZGVwYXJ0bWVudC1uYW1lXCIsIHByb3BzLmRlcGFydG1lbnROYW1lLCBwcm9wcylcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5kZXBhcnRtZW50SWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmRlcGFydG1lbnQtaWRcIiwgcHJvcHMuZGVwYXJ0bWVudElkLCBwcm9wcylcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBzZWN1cml0eSB0YWdzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgcHJvcGVydGllcyBmb3Igc2VjdXJpdHkgdGFnc1xuICAgKi9cbiAgYWRkU2VjdXJpdHlUYWdzKHByb3BzPzogU2VjdXJpdHlUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmIChwcm9wcyAmJiAhdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBpZiAocHJvcHMuZGF0YUNsYXNzaWZpY2F0aW9uKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJzZWN1cml0eTpkYXRhLWNsYXNzaWZpY2F0aW9uXCIsIHByb3BzLmRhdGFDbGFzc2lmaWNhdGlvbiwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRhdGFTZW5zaXRpdml0eSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwic2VjdXJpdHk6ZGF0YS1zZW5zaXRpdml0eVwiLCBwcm9wcy5kYXRhU2Vuc2l0aXZpdHksIHByb3BzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyB0ZWFtIHRhZ3MuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBwcm9wZXJ0aWVzIGZvciB0ZWFtIHRhZ3NcbiAgICovXG4gIGFkZFRlYW1UYWdzKHByb3BzPzogVGVhbVRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFncyB7XG4gICAgaWYgKHByb3BzICYmICF0aGlzLnN1cHByZXNzZWQpIHtcbiAgICAgIGlmIChwcm9wcy5uYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOm5hbWVcIiwgcHJvcHMubmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmlkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmlkXCIsIHByb3BzLmlkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdE5hbWUpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06Y29udGFjdC1uYW1lXCIsIHByb3BzLmNvbnRhY3ROYW1lLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdEVtYWlsKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmNvbnRhY3QtZW1haWxcIiwgcHJvcHMuY29udGFjdEVtYWlsLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdFBob25lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmNvbnRhY3QtaG9uZVwiLCBwcm9wcy5jb250YWN0UGhvbmUsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5idXNpbmVzc1VuaXROYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmJ1c2luZXNzLXVuaXQtbmFtZVwiLCBwcm9wcy5idXNpbmVzc1VuaXROYW1lLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuYnVzaW5lc3NVbml0SWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06YnVzaW5lc3MtdW5pdC1pZFwiLCBwcm9wcy5idXNpbmVzc1VuaXRJZCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRpdmlzaW9uTmFtZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwidGVhbTpkaXZpc2lvbi1uYW1lXCIsIHByb3BzLmRpdmlzaW9uTmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRpdmlzaW9uSWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06ZGl2aXNpb24taWRcIiwgcHJvcHMuZGl2aXNpb25JZCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRlcGFydG1lbnROYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmRlcGFydG1lbnQtbmFtZVwiLCBwcm9wcy5kZXBhcnRtZW50TmFtZSwgcHJvcHMpXG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuZGVwYXJ0bWVudElkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmRlcGFydG1lbnQtaWRcIiwgcHJvcHMuZGVwYXJ0bWVudElkLCBwcm9wcylcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIG1lcmdlZCBTdGFuZGFyZFRhZ3NQcm9wcy5cbiAgICpcbiAgICogQHBhcmFtIGZyb20gcHJvcGVydGllcyB0byBzb3VyY2UgZnJvbVxuICAgKiBAcGFyYW0gdG8gcHJvcGVydGllcyB0byBzb3VyY2UgdG9cbiAgICovXG4gIHN0YXRpYyBtZXJnZShmcm9tPzogU3RhbmRhcmRUYWdzUHJvcHMsIHRvPzogU3RhbmRhcmRUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3NQcm9wcyB7XG4gICAgbGV0IGF1dG9tYXRpb25Db21wb25lbnRUYWdzOiBBdXRvbWF0aW9uQ29tcG9uZW50VGFnc1Byb3BzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChmcm9tPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncyB8fCB0bz8uYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MpIHtcbiAgICAgIGF1dG9tYXRpb25Db21wb25lbnRUYWdzID0ge1xuICAgICAgICBpZDogdG8/LmF1dG9tYXRpb25Db21wb25lbnRUYWdzPy5pZCA/PyBmcm9tPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncz8uaWQgPz8gXCJcIixcbiAgICAgICAgLi4uZnJvbT8uYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MsXG4gICAgICAgIC4uLnRvPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFnc1xuICAgICAgfVxuICAgIH1cbiAgICBsZXQgYXV0b21hdGlvblRhZ3M6IEF1dG9tYXRpb25UYWdzUHJvcHMgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKGZyb20/LmF1dG9tYXRpb25UYWdzIHx8IHRvPy5hdXRvbWF0aW9uVGFncykge1xuICAgICAgYXV0b21hdGlvblRhZ3MgPSB7XG4gICAgICAgIGlkOiB0bz8uYXV0b21hdGlvblRhZ3M/LmlkID8/IGZyb20/LmF1dG9tYXRpb25UYWdzPy5pZCA/PyBcIlwiLFxuICAgICAgICAuLi5mcm9tPy5hdXRvbWF0aW9uVGFncyxcbiAgICAgICAgLi4udG8/LmF1dG9tYXRpb25UYWdzXG4gICAgICB9XG4gICAgfVxuICAgIGxldCBjb3N0Q2VudGVyVGFnczogQ29zdENlbnRlclRhZ3NQcm9wcyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAoZnJvbT8uY29zdENlbnRlclRhZ3MgfHwgdG8/LmNvc3RDZW50ZXJUYWdzKSB7XG4gICAgICBjb3N0Q2VudGVyVGFncyA9IHtcbiAgICAgICAgYnVzaW5lc3NVbml0TmFtZTogdG8/LmNvc3RDZW50ZXJUYWdzPy5idXNpbmVzc1VuaXROYW1lID8/IGZyb20/LmNvc3RDZW50ZXJUYWdzPy5idXNpbmVzc1VuaXROYW1lID8/IFwiXCIsXG4gICAgICAgIHByb2plY3ROYW1lOiB0bz8uY29zdENlbnRlclRhZ3M/LnByb2plY3ROYW1lID8/IGZyb20/LmNvc3RDZW50ZXJUYWdzPy5wcm9qZWN0TmFtZSA/PyBcIlwiLFxuICAgICAgICAuLi5mcm9tPy5jb3N0Q2VudGVyVGFncyxcbiAgICAgICAgLi4udG8/LmNvc3RDZW50ZXJUYWdzXG4gICAgICB9XG4gICAgfVxuICAgIGxldCBzZWN1cml0eVRhZ3M6IFNlY3VyaXR5VGFnc1Byb3BzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChmcm9tPy5zZWN1cml0eVRhZ3MgfHwgdG8/LnNlY3VyaXR5VGFncykge1xuICAgICAgc2VjdXJpdHlUYWdzID0ge1xuICAgICAgICBkYXRhQ2xhc3NpZmljYXRpb246IHRvPy5zZWN1cml0eVRhZ3M/LmRhdGFDbGFzc2lmaWNhdGlvbiA/PyBmcm9tPy5zZWN1cml0eVRhZ3M/LmRhdGFDbGFzc2lmaWNhdGlvbiA/PyBEYXRhQ2xhc3NpZmljYXRpb24uQ29udHJvbGxlZCxcbiAgICAgICAgLi4uZnJvbT8uc2VjdXJpdHlUYWdzLFxuICAgICAgICAuLi50bz8uc2VjdXJpdHlUYWdzXG4gICAgICB9XG4gICAgfVxuICAgIGxldCB0ZWFtVGFnczogVGVhbVRhZ3NQcm9wcyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAoZnJvbT8udGVhbVRhZ3MgfHwgdG8/LnRlYW1UYWdzKSB7XG4gICAgICB0ZWFtVGFncyA9IHtcbiAgICAgICAgbmFtZTogdG8/LnRlYW1UYWdzPy5uYW1lID8/IGZyb20/LnRlYW1UYWdzPy5uYW1lID8/IFwiXCIsXG4gICAgICAgIC4uLmZyb20/LnRlYW1UYWdzLFxuICAgICAgICAuLi50bz8udGVhbVRhZ3NcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIGF1dG9tYXRpb25Db21wb25lbnRUYWdzLFxuICAgICAgYXV0b21hdGlvblRhZ3MsXG4gICAgICBjb3N0Q2VudGVyVGFncyxcbiAgICAgIHNlY3VyaXR5VGFncyxcbiAgICAgIHRlYW1UYWdzXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtdGFncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInN0YW5kYXJkLXRhZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQXlEO0FBK0d6RDs7R0FFRztBQUNILElBQVksa0JBeUJYO0FBekJELFdBQVksa0JBQWtCO0lBQzVCOzs7T0FHRztJQUNILDREQUFzQyxDQUFBO0lBRXRDOzs7O09BSUc7SUFDSCwrQ0FBeUIsQ0FBQTtJQUV6Qjs7OztPQUlHO0lBQ0gsK0NBQXlCLENBQUE7SUFFekI7O09BRUc7SUFDSCx1Q0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBekJXLGtCQUFrQixHQUFsQiwwQkFBa0IsS0FBbEIsMEJBQWtCLFFBeUI3QjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxlQXNCWDtBQXRCRCxXQUFZLGVBQWU7SUFFekI7O09BRUc7SUFDSCw4QkFBVyxDQUFBO0lBRVg7O09BRUc7SUFDSCw4QkFBVyxDQUFBO0lBRVg7OztPQUdHO0lBQ0gsOEJBQVcsQ0FBQTtJQUVYOztPQUVHO0lBQ0gsZ0NBQWEsQ0FBQTtBQUNmLENBQUMsRUF0QlcsZUFBZSxHQUFmLHVCQUFlLEtBQWYsdUJBQWUsUUFzQjFCO0FBMEhEOztHQUVHO0FBQ0gsTUFBYSxZQUFZO0lBaUJ2Qjs7Ozs7T0FLRztJQUNILFlBQVksS0FBZ0IsRUFBRSxLQUF5Qjs7UUFDckQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxTQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxlQUFlLG1DQUFJLEtBQUssQ0FBQztRQUNsRCxNQUFNLGlCQUFpQixHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQUUsS0FBSyxDQUFDLENB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WUFDdkIsY0FBYztZQUNkLGNBQWM7WUFDZCxZQUFZO1lBQ1osUUFBUTtTQUNULENBQUE7SUFDSCxDQUFDO0NBQ0Y7QUF2UEQsb0NBdVBDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1N0YWNrLCBTdGFnZSwgVGFnUHJvcHMsIFRhZ3N9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGF1dG9tYXRpb24gY29tcG9uZW50IHRhZ3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b21hdGlvbkNvbXBvbmVudFRhZ3NQcm9wcyBleHRlbmRzIFRhZ1Byb3BzIHtcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIFVSTCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgdXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmVuZG9yIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICByZWFkb25seSB2ZW5kb3I/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYXV0b21hdGlvbiB0YWdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9tYXRpb25UYWdzUHJvcHMgZXh0ZW5kcyBUYWdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgc3RhY2suIElmIG9uZSBpZiBub3QgcHJvdmlkZWQsIHRoZSBuYW1lIG9mIHRoZSBzdGFjayBpcyB1c2VkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFN0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBVUkwgdG8gd2hlcmUgdGhlIGF1dG9tYXRpb24gaXMgc3RvcmVkIG9yIHB1Ymxpc2hlZC4gVGhpcyBmaWVsZCBpcyByZXF1aXJlZFxuICAgKiB3aGVuIGFwcGx5aW5nIGF1dG9tYXRpb24gdGFncy5cbiAgICovXG4gIHJlYWRvbmx5IHVybD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjb3N0IGNlbnRlciB0YWdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvc3RDZW50ZXJUYWdzUHJvcHMgZXh0ZW5kcyBUYWdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHByb2plY3QgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5nIHRoZSBjb3N0cy5cbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgcHJvamVjdCByZXNwb25zaWJsZSBmb3IgY3JlYXRpbmcgdGhlIGNvc3RzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBlbnZpcm9ubWVudCBpbmN1cnJpbmcgdGhlIGNvc3RzLiBFeGFtcGxlIFwic3RhZ2VcIiBvciBcInByb2RcIlxuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGNvbnRhY3QgcmVzcG9uc2libGUgZm9yIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICogSWYgbm90IHNldCwgdGhlIHRhZyBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhY3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbWFpbCBvZiB0aGUgY29udGFjdCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICogSWYgbm90IHNldCwgdGhlIHRhZyBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhY3RFbWFpbD86IHN0cmluZztcblxuICAvKipcbiAgICogUGhvbmUgbnVtYmVyIG9mIHRoZSBjb250YWN0IHJlc3BvbnNpYmxlIGZvciBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqIElmIG5vdCBzZXQsIHRoZSB0YWcgaXMgbm90IGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0UGhvbmU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGJ1c2luZXNzIHVuaXQgcmVzcG9uc2libGUgZm9yIHRoZSBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqL1xuICByZWFkb25seSBidXNpbmVzc1VuaXROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgYnVzaW5lc3MgdW5pdCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGJ1c2luZXNzVW5pdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBidXNpbmVzcyBkaXZpc2lvbiByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRpdmlzaW9uTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIGJ1c2luZXNzIGRpdmlzaW9uIHJlc3BvbnNpYmxlIGZvciB0aGUgY29zdHMgYXNzb2NpYXRlZCB3aXRoIHRoZSB0YWdnZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGl2aXNpb25JZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZGVwYXJ0bWVudCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRlcGFydG1lbnROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgZGVwYXJ0bWVudCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRlcGFydG1lbnRJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBIb2xkcyB2YWx1ZXMgdGhhdCBtYXkgYmUgYXBwbGllZCB0byB0aGUgZGF0YS1jbGFzc2lmaWNhdGlvbiBzZWN1cml0eSB0YWcuXG4gKi9cbmV4cG9ydCBlbnVtIERhdGFDbGFzc2lmaWNhdGlvbiB7XG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gZGF0YSBtYXkgbm90IGxlYXZlIHRoZSBnZW9ncmFwaGljIHJlZ2lvbiBpbiB3aGljaCBpdCBpcyBzdG9yZWQuXG4gICAqIFRoaXMgaXMgdXN1YWxseSByZWxhdGVkIHRvIGdvdmVybm1lbnQgcmVzdHJpY3Rpb25zIGFwcGxpZWQgdG8gdGhlIGRhdGEuXG4gICAqL1xuICBFeHBvcnRSZXN0cmljdGVkID0gXCJleHBvcnQtcmVzdHJpY3RlZFwiLFxuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gdW5hdXRob3JpemVkIGRpc2Nsb3N1cmUsIGFsdGVyYXRpb24gb3IgZGVzdHJ1Y3Rpb24gb2YgZGF0YSB3b3VsZFxuICAgKiByZXN1bHQgaW4gYSBzaWduaWZpY2FudCByaXNrIHRvIHRoZSBvcmdhbml6YXRpb24uIFRoaXMgaW5jbHVkZXMgUElJLCBQSElcbiAgICogYW5kIFBDSSBkYXRhLlxuICAgKi9cbiAgUmVzdHJpY3RlZCA9IFwicmVzdHJpY3RlZFwiLFxuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gdW5hdXRob3JpemVkIGRpc2Nsb3N1cmUsIGFsdGVyYXRpb24gb3IgZGVzdHJ1Y3Rpb24gb2YgdGhlIGRhdGEgd291bGRcbiAgICogcmVzdWx0IGluIG1vZGVyYXRlIHJpc2suIFRoaXMgaW5jbHVkZXMgYWxsIGRhdGEgdGhhdCBpcyBub3QgaW4gb25lIG9mIHRoZSBvdGhlclxuICAgKiBjbGFzc2lmaWNhdGlvbnMuXG4gICAqL1xuICBDb250cm9sbGVkID0gXCJjb250cm9sbGVkXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiBoYW5kbGVkIG9yIHN0b3JlZCBkYXRhIHJlYWRpbHkgYXZhaWxhYmxlIHRvIHRoZSBwdWJsaWMuXG4gICAqL1xuICBQdWJsaWMgPSBcInB1YmxpY1wiXG59XG5cbi8qKlxuICogSG9sZHMgdmFsdWVzIHRoYXQgbWF5IGJlIGFwcGxpZWQgdG8gdGhlIGRhdGEtc2Vuc2l0aXZpdHkgc2VjdXJpdHkgdGFnLlxuICovXG5leHBvcnQgZW51bSBEYXRhU2Vuc2l0aXZpdHkge1xuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gcmVzb3VyY2VzIGFyZSBpbiBQQ0kgc2NvcGUuXG4gICAqL1xuICBQQ0kgPSBcInBjaVwiLFxuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gcmVzb3VyY2VzIGhhbmRsZSBvciBzdG9yZSBwZXJzb25hbGx5IGlkZW50aWZpYWJsZSBpbmZvcm1hdGlvbi5cbiAgICovXG4gIFBJSSA9IFwicGlpXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiByZXNvdXJjZXMgaGFuZGxlIG9yIHN0b3JlIHBlcnNvbmFsIGhlYWx0aCBpbmZvcm1hdGlvbiBhbmQgYXJlXG4gICAqIHN1YmplY3QgdG8gSElQUEEgcnVsZXMuXG4gICAqL1xuICBQSEkgPSBcInBoaVwiLFxuXG4gIC8qKlxuICAgKiBVc2VkIHdoZW4gdGhlcmUgaXMgbm8gZGF0YSBzZW5zaXRpdml0eS5cbiAgICovXG4gIE5PTkUgPSBcIm5vbmVcIlxufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHNlY3VyaXR5IHRhZ3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlUYWdzUHJvcHMgZXh0ZW5kcyBUYWdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIERhdGEgY2xhc3NpZmljYXRpb24gdmFsdWUuIFNlZSB0aGUgVHJ1ZU1hcmsgQVdTIHRhZ2dpbmcgc3RyYXRlZ3kgZG9jdW1lbnRhdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGRhdGFDbGFzc2lmaWNhdGlvbj86IERhdGFDbGFzc2lmaWNhdGlvbjtcblxuICAvKipcbiAgICogRGF0YSBzZW5zaXRpdml0eS4gU2VlIHRoZSBUcnVlTWFyayBBV1MgdGFnZ2luZyBzdHJhdGVneSBkb2N1bWVudGF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVNlbnNpdGl2aXR5PzogRGF0YVNlbnNpdGl2aXR5O1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHRlYW0gdGFncy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZWFtVGFnc1Byb3BzIGV4dGVuZHMgVGFnUHJvcHMge1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSB0ZWFtLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBpZiBkaWZmZXJlbnQgdGhhbiB0aGUgdGVhbSBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHRlYW0gbGVhZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhY3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbWFpbCBvZiB0aGUgdGVhbSBsZWFkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFjdEVtYWlsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQaG9uZSBudW1iZXIgZm9yIHRoZSB0ZWFtIGxlYWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0UGhvbmU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGJ1c2luZXNzIHVuaXQgcmVzcG9uc2libGUgZm9yIHRoZSB0ZWFtIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGJ1c2luZXNzVW5pdE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXIgZm9yIHRoZSBidXNpbmVzcyB1bml0IHJlc3BvbnNpYmxlIGZvciB0aGUgdGVhbSBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqL1xuICByZWFkb25seSBidXNpbmVzc1VuaXRJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgYnVzaW5lc3MgZGl2aXNpb24gcmVzcG9uc2libGUgZm9yIHRoZSB0ZWFtIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRpdmlzaW9uTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIGJ1c2luZXNzIGRpdmlzaW9uIHJlc3BvbnNpYmxlIGZvciB0aGUgdGVhbSBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqL1xuICByZWFkb25seSBkaXZpc2lvbklkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBkZXBhcnRtZW50IHJlc3BvbnNpYmxlIGZvciB0aGUgdGVhbSBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqL1xuICByZWFkb25seSBkZXBhcnRtZW50TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIGRlcGFydG1lbnQgcmVzcG9uc2libGUgZm9yIHRoZSB0ZWFtIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGRlcGFydG1lbnRJZD86IHN0cmluZztcbn1cblxuLy8gVE9ETyBOZWVkIHRvIHN1cHBvcnQgYnVzaW5lc3MgdW5pdCwgZGl2aXNpb24gYW5kIGRlcGFydG1lbnRcbi8vIFRPRE8gTmVlZCB0byBtYWtlIHRhZ3MgY29uc2lzdGVudCBiZXR3ZWVuIGVsZW1lbnRzXG4vLyBUT0RPIE5lZWQgdG8gYWRkIHRpdGxlIGZvciBwZW9wbGVcbi8vIFRPRE8gSSBoYXRlIGhvdyB3ZSBoYXZlIHRvIG92ZXJyaWRlIHRoZSBlbnZpcm9ubWVudCB0YWdcbi8qKlxuICogQ29udGFpbnMgc3RhbmRhcmQgdGFnZ2luZyBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkVGFnc1Byb3BzIHtcblxuICAvKipcbiAgICogQXV0b21hdGlvbiBjb21wb25lbnQgdGFncy5cbiAgICovXG4gIHJlYWRvbmx5IGF1dG9tYXRpb25Db21wb25lbnRUYWdzPzogQXV0b21hdGlvbkNvbXBvbmVudFRhZ3NQcm9wcztcblxuICAvKipcbiAgICogQXV0b21hdGlvbiB0YWdzIHRvIGFwcGx5IHRvIGNyZWF0ZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b21hdGlvblRhZ3M/OiBBdXRvbWF0aW9uVGFnc1Byb3BzO1xuXG4gIC8qKlxuICAgKiBDb3N0IGNlbnRlciB0YWdzIHRvIGFwcGx5IHRvIGNyZWF0ZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgY29zdENlbnRlclRhZ3M/OiBDb3N0Q2VudGVyVGFnc1Byb3BzO1xuXG4gIC8qKlxuICAgKiBTZWN1cml0eSB0YWdzIHRvIGFwcGx5IHRvIGNyZWF0ZWQgcmVzb3VyY2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHlUYWdzPzogU2VjdXJpdHlUYWdzUHJvcHM7XG5cbiAgLyoqXG4gICAqIFRlYW0gdGFncyB0byBhcHBseSB0byBjcmVhdGVkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IHRlYW1UYWdzPzogVGVhbVRhZ3NQcm9wcztcblxuICAvKipcbiAgICogU2V0dGluZyB0aGlzIHRvIHRydWUgd2lsbCBzdXBwcmVzcyB0aGUgY3JlYXRpb24gb2YgdGFncyB0aGlzIHJlc291cmNlIGNyZWF0ZXMuXG4gICAqIERlZmF1bHQgdmFsdWUgaXMgZmFsc2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHN1cHByZXNzVGFnZ2luZz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUHJvdmlkZXMgY29udmVuaWVuY2UgbWV0aG9kcyB0byB0YWcgcmVzb3VyY2VzIGZvbGxvd2luZyBUcnVlTWFyaydzIHRhZ2dpbmcgc3RyYXRlZ3kuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFuZGFyZFRhZ3Mge1xuXG4gIC8qKlxuICAgKiBUaGUgc2NvcGUgYmVpbmcgdGFnZ2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgc2NvcGU6IENvbnN0cnVjdDtcblxuICAvKipcbiAgICogVGhlIHRhZ3MuXG4gICAqL1xuICByZWFkb25seSB0YWdzOiBUYWdzO1xuXG4gIC8qKlxuICAgKiBJZiB0YWdzIHdlcmUgc3VwcHJlc3NlZC5cbiAgICovXG4gIHJlYWRvbmx5IHN1cHByZXNzZWQ6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgU3RhbmRhcmRUYWdzIGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgdGhlIHNjb3BlIHRvIHRhZ1xuICAgKiBAcGFyYW0gcHJvcHMgdGhlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIHByb3BzPzogU3RhbmRhcmRUYWdzUHJvcHMpIHtcbiAgICB0aGlzLnNjb3BlID0gc2NvcGU7XG4gICAgdGhpcy50YWdzID0gVGFncy5vZihzY29wZSk7XG4gICAgdGhpcy5zdXBwcmVzc2VkID0gcHJvcHM/LnN1cHByZXNzVGFnZ2luZyA/PyBmYWxzZTtcbiAgICBjb25zdCBzdGFuZGFyZFRhZ3NQcm9wcyA9IFN0YW5kYXJkVGFncy5tZXJnZShzY29wZS5ub2RlLnRyeUdldENvbnRleHQoXCJzdGFuZGFyZFRhZ3NcIiksIHByb3BzKTtcbiAgICB0aGlzLmFkZEF1dG9tYXRpb25Db21wb25lbnRUYWdzKHN0YW5kYXJkVGFnc1Byb3BzLmF1dG9tYXRpb25Db21wb25lbnRUYWdzKTtcbiAgICB0aGlzLmFkZEF1dG9tYXRpb25UYWdzKHN0YW5kYXJkVGFnc1Byb3BzLmF1dG9tYXRpb25UYWdzKTtcbiAgICB0aGlzLmFkZENvc3RDZW50ZXJUYWdzKHN0YW5kYXJkVGFnc1Byb3BzLmNvc3RDZW50ZXJUYWdzKTtcbiAgICB0aGlzLmFkZFNlY3VyaXR5VGFncyhzdGFuZGFyZFRhZ3NQcm9wcy5zZWN1cml0eVRhZ3MpO1xuICAgIHRoaXMuYWRkVGVhbVRhZ3Moc3RhbmRhcmRUYWdzUHJvcHMudGVhbVRhZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYXV0b21hdGlvbiBjb21wb25lbnQgdGFncy4gVGhlc2UgYXJlIG1lYW50IHRvIGJlIHVzZWQgaW4gaW5kaXZpZHVhbCBjb25zdHJ1Y3RzIHRvIGlkZW50aWZ5XG4gICAqIHdoYXQgcmVzb3VyY2VzIHdlcmUgc3Rvb2QgdXAgYnkgc3BlY2lmaWMgY29uc3RydWN0cy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIG9wdGlvbmFsIHByb3BlcnRpZXMgZm9yIHRoZSB0YWdzXG4gICAqL1xuICBhZGRBdXRvbWF0aW9uQ29tcG9uZW50VGFncyhwcm9wcz86IEF1dG9tYXRpb25Db21wb25lbnRUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmIChwcm9wcyAmJiAhdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBpZiAocHJvcHMuaWQgPT09IFwie3tUTUNES319XCIpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LWlkXCIsIHRoaXMuc2NvcGUuY29uc3RydWN0b3IubmFtZSwgcHJvcHMpO1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjpjb21wb25lbnQtdXJsXCIsIFwiaHR0cHM6Ly9naXRodWIuY29tL3RydWVtYXJrL2Nka1wiLCBwcm9wcyk7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC12ZW5kb3JcIiwgXCJUcnVlTWFya1wiLCBwcm9wcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAocHJvcHMuaWQpIHtcbiAgICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjpjb21wb25lbnQtaWRcIiwgcHJvcHMuaWQsIHByb3BzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMudXJsKSB7XG4gICAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LXVybFwiLCBwcm9wcy51cmwsIHByb3BzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMudmVuZG9yKSB7XG4gICAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LXZlbmRvclwiLCBwcm9wcy52ZW5kb3IsIHByb3BzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGF1dG9tYXRpb24gdGFncy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIHByb3BlcnRpZXMgZm9yIHRoZSB0YWdzXG4gICAqL1xuICBhZGRBdXRvbWF0aW9uVGFncyhwcm9wcz86IEF1dG9tYXRpb25UYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmICghdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBsZXQgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHByb3BzPy5pZFxuICAgICAgaWYgKCFTdGFnZS5pc1N0YWdlKHRoaXMuc2NvcGUpICYmICFpZCkge1xuICAgICAgICBpZCA9IFN0YWNrLm9mKHRoaXMuc2NvcGUpLnN0YWNrTmFtZVxuICAgICAgfVxuICAgICAgaWYgKGlkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmlkXCIsIGlkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHM/LnVybCkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjp1cmxcIiwgcHJvcHMudXJsLCBwcm9wcyk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgY29zdCBjZW50ZXIgdGFncy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIHByb3BlcnRpZXMgZm9yIHRoZSB0YWdzXG4gICAqL1xuICBhZGRDb3N0Q2VudGVyVGFncyhwcm9wcz86IENvc3RDZW50ZXJUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmIChwcm9wcyAmJiAhdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBpZiAocHJvcHMucHJvamVjdE5hbWUpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOnByb2plY3QtbmFtZVwiLCBwcm9wcy5wcm9qZWN0TmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLnByb2plY3RJZCkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6cHJvamVjdC1pZFwiLCBwcm9wcy5wcm9qZWN0SWQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5lbnZpcm9ubWVudCkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6ZW52aXJvbm1lbnRcIiwgcHJvcHMuZW52aXJvbm1lbnQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5jb250YWN0TmFtZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6Y29udGFjdC1uYW1lXCIsIHByb3BzLmNvbnRhY3ROYW1lLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdEVtYWlsKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpjb250YWN0LWVtYWlsXCIsIHByb3BzLmNvbnRhY3RFbWFpbCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmNvbnRhY3RQaG9uZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6Y29udGFjdC1waG9uZVwiLCBwcm9wcy5jb250YWN0UGhvbmUsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5idXNpbmVzc1VuaXROYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpidXNpbmVzcy11bml0LW5hbWVcIiwgcHJvcHMuYnVzaW5lc3NVbml0TmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmJ1c2luZXNzVW5pdElkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpidXNpbmVzcy11bml0LWlkXCIsIHByb3BzLmJ1c2luZXNzVW5pdElkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuZGl2aXNpb25OYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpkaXZpc2lvbi1uYW1lXCIsIHByb3BzLmRpdmlzaW9uTmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRpdmlzaW9uSWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmRpdmlzaW9uLWlkXCIsIHByb3BzLmRpdmlzaW9uSWQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5kZXBhcnRtZW50TmFtZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6ZGVwYXJ0bWVudC1uYW1lXCIsIHByb3BzLmRlcGFydG1lbnROYW1lLCBwcm9wcylcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5kZXBhcnRtZW50SWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmRlcGFydG1lbnQtaWRcIiwgcHJvcHMuZGVwYXJ0bWVudElkLCBwcm9wcylcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBzZWN1cml0eSB0YWdzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgcHJvcGVydGllcyBmb3Igc2VjdXJpdHkgdGFnc1xuICAgKi9cbiAgYWRkU2VjdXJpdHlUYWdzKHByb3BzPzogU2VjdXJpdHlUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmIChwcm9wcyAmJiAhdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBpZiAocHJvcHMuZGF0YUNsYXNzaWZpY2F0aW9uKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJzZWN1cml0eTpkYXRhLWNsYXNzaWZpY2F0aW9uXCIsIHByb3BzLmRhdGFDbGFzc2lmaWNhdGlvbiwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRhdGFTZW5zaXRpdml0eSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwic2VjdXJpdHk6ZGF0YS1zZW5zaXRpdml0eVwiLCBwcm9wcy5kYXRhU2Vuc2l0aXZpdHksIHByb3BzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyB0ZWFtIHRhZ3MuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBwcm9wZXJ0aWVzIGZvciB0ZWFtIHRhZ3NcbiAgICovXG4gIGFkZFRlYW1UYWdzKHByb3BzPzogVGVhbVRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFncyB7XG4gICAgaWYgKHByb3BzICYmICF0aGlzLnN1cHByZXNzZWQpIHtcbiAgICAgIGlmIChwcm9wcy5uYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOm5hbWVcIiwgcHJvcHMubmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmlkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmlkXCIsIHByb3BzLmlkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdE5hbWUpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06Y29udGFjdC1uYW1lXCIsIHByb3BzLmNvbnRhY3ROYW1lLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdEVtYWlsKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmNvbnRhY3QtZW1haWxcIiwgcHJvcHMuY29udGFjdEVtYWlsLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdFBob25lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmNvbnRhY3QtaG9uZVwiLCBwcm9wcy5jb250YWN0UGhvbmUsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5idXNpbmVzc1VuaXROYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmJ1c2luZXNzLXVuaXQtbmFtZVwiLCBwcm9wcy5idXNpbmVzc1VuaXROYW1lLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuYnVzaW5lc3NVbml0SWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06YnVzaW5lc3MtdW5pdC1pZFwiLCBwcm9wcy5idXNpbmVzc1VuaXRJZCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRpdmlzaW9uTmFtZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwidGVhbTpkaXZpc2lvbi1uYW1lXCIsIHByb3BzLmRpdmlzaW9uTmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRpdmlzaW9uSWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06ZGl2aXNpb24taWRcIiwgcHJvcHMuZGl2aXNpb25JZCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRlcGFydG1lbnROYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmRlcGFydG1lbnQtbmFtZVwiLCBwcm9wcy5kZXBhcnRtZW50TmFtZSwgcHJvcHMpXG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuZGVwYXJ0bWVudElkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmRlcGFydG1lbnQtaWRcIiwgcHJvcHMuZGVwYXJ0bWVudElkLCBwcm9wcylcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIG1lcmdlZCBTdGFuZGFyZFRhZ3NQcm9wcy5cbiAgICpcbiAgICogQHBhcmFtIGZyb20gcHJvcGVydGllcyB0byBzb3VyY2UgZnJvbVxuICAgKiBAcGFyYW0gdG8gcHJvcGVydGllcyB0byBzb3VyY2UgdG9cbiAgICovXG4gIHN0YXRpYyBtZXJnZShmcm9tPzogU3RhbmRhcmRUYWdzUHJvcHMsIHRvPzogU3RhbmRhcmRUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3NQcm9wcyB7XG4gICAgbGV0IGF1dG9tYXRpb25Db21wb25lbnRUYWdzOiBBdXRvbWF0aW9uQ29tcG9uZW50VGFnc1Byb3BzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChmcm9tPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncyB8fCB0bz8uYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MpIHtcbiAgICAgIGF1dG9tYXRpb25Db21wb25lbnRUYWdzID0ge1xuICAgICAgICBpZDogdG8/LmF1dG9tYXRpb25Db21wb25lbnRUYWdzPy5pZCA/PyBmcm9tPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncz8uaWQgPz8gXCJcIixcbiAgICAgICAgLi4uZnJvbT8uYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MsXG4gICAgICAgIC4uLnRvPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFnc1xuICAgICAgfVxuICAgIH1cbiAgICBsZXQgYXV0b21hdGlvblRhZ3M6IEF1dG9tYXRpb25UYWdzUHJvcHMgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKGZyb20/LmF1dG9tYXRpb25UYWdzIHx8IHRvPy5hdXRvbWF0aW9uVGFncykge1xuICAgICAgYXV0b21hdGlvblRhZ3MgPSB7XG4gICAgICAgIGlkOiB0bz8uYXV0b21hdGlvblRhZ3M/LmlkID8/IGZyb20/LmF1dG9tYXRpb25UYWdzPy5pZCA/PyBcIlwiLFxuICAgICAgICAuLi5mcm9tPy5hdXRvbWF0aW9uVGFncyxcbiAgICAgICAgLi4udG8/LmF1dG9tYXRpb25UYWdzXG4gICAgICB9XG4gICAgfVxuICAgIGxldCBjb3N0Q2VudGVyVGFnczogQ29zdENlbnRlclRhZ3NQcm9wcyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAoZnJvbT8uY29zdENlbnRlclRhZ3MgfHwgdG8/LmNvc3RDZW50ZXJUYWdzKSB7XG4gICAgICBjb3N0Q2VudGVyVGFncyA9IHtcbiAgICAgICAgYnVzaW5lc3NVbml0TmFtZTogdG8/LmNvc3RDZW50ZXJUYWdzPy5idXNpbmVzc1VuaXROYW1lID8/IGZyb20/LmNvc3RDZW50ZXJUYWdzPy5idXNpbmVzc1VuaXROYW1lID8/IFwiXCIsXG4gICAgICAgIHByb2plY3ROYW1lOiB0bz8uY29zdENlbnRlclRhZ3M/LnByb2plY3ROYW1lID8/IGZyb20/LmNvc3RDZW50ZXJUYWdzPy5wcm9qZWN0TmFtZSA/PyBcIlwiLFxuICAgICAgICAuLi5mcm9tPy5jb3N0Q2VudGVyVGFncyxcbiAgICAgICAgLi4udG8/LmNvc3RDZW50ZXJUYWdzXG4gICAgICB9XG4gICAgfVxuICAgIGxldCBzZWN1cml0eVRhZ3M6IFNlY3VyaXR5VGFnc1Byb3BzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChmcm9tPy5zZWN1cml0eVRhZ3MgfHwgdG8/LnNlY3VyaXR5VGFncykge1xuICAgICAgc2VjdXJpdHlUYWdzID0ge1xuICAgICAgICBkYXRhQ2xhc3NpZmljYXRpb246IHRvPy5zZWN1cml0eVRhZ3M/LmRhdGFDbGFzc2lmaWNhdGlvbiA/PyBmcm9tPy5zZWN1cml0eVRhZ3M/LmRhdGFDbGFzc2lmaWNhdGlvbiA/PyBEYXRhQ2xhc3NpZmljYXRpb24uQ29udHJvbGxlZCxcbiAgICAgICAgLi4uZnJvbT8uc2VjdXJpdHlUYWdzLFxuICAgICAgICAuLi50bz8uc2VjdXJpdHlUYWdzXG4gICAgICB9XG4gICAgfVxuICAgIGxldCB0ZWFtVGFnczogVGVhbVRhZ3NQcm9wcyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAoZnJvbT8udGVhbVRhZ3MgfHwgdG8/LnRlYW1UYWdzKSB7XG4gICAgICB0ZWFtVGFncyA9IHtcbiAgICAgICAgbmFtZTogdG8/LnRlYW1UYWdzPy5uYW1lID8/IGZyb20/LnRlYW1UYWdzPy5uYW1lID8/IFwiXCIsXG4gICAgICAgIC4uLmZyb20/LnRlYW1UYWdzLFxuICAgICAgICAuLi50bz8udGVhbVRhZ3NcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIGF1dG9tYXRpb25Db21wb25lbnRUYWdzLFxuICAgICAgYXV0b21hdGlvblRhZ3MsXG4gICAgICBjb3N0Q2VudGVyVGFncyxcbiAgICAgIHNlY3VyaXR5VGFncyxcbiAgICAgIHRlYW1UYWdzXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -26,6 +26,14 @@ export interface DomainRedirectProps extends ExtendedConstructProps {
|
|
|
26
26
|
* The target to redirect to. Ex. https://www.example.com
|
|
27
27
|
*/
|
|
28
28
|
readonly target: string;
|
|
29
|
+
/**
|
|
30
|
+
* Comment to leave on the CloudFront distribution.
|
|
31
|
+
*/
|
|
32
|
+
readonly comment?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Appends the request URI to the target. Default is false.
|
|
35
|
+
*/
|
|
36
|
+
readonly appendUri?: boolean;
|
|
29
37
|
}
|
|
30
38
|
/**
|
|
31
39
|
* Creates a CloudFront distribution that redirects an entire domain to a target.
|
|
@@ -37,13 +37,14 @@ function handler(event) {
|
|
|
37
37
|
statusCode: ${redirectType},
|
|
38
38
|
statusDescription: "${redirectType === RedirectType.Permanent ? "Permanently Moved" : "Temporarily Moved"}",
|
|
39
39
|
headers: {
|
|
40
|
-
"location": { "value":
|
|
40
|
+
"location": { "value": ${props.appendUri ? '"' + props.target + '" + event.request.uri' : '"' + props.target + '"'} }
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
}`)
|
|
44
44
|
});
|
|
45
45
|
const origin = new aws_cloudfront_origins_1.HttpOrigin("example.com");
|
|
46
46
|
const builder = aws_cloudfront_2.DistributionBuilder.fromOrigin(origin)
|
|
47
|
+
.comment(props.comment)
|
|
47
48
|
.domainNames(props.domainNames.map(d => d.toString()))
|
|
48
49
|
.certificate(certificate);
|
|
49
50
|
builder.defaultBehavior()
|
|
@@ -68,4 +69,4 @@ function handler(event) {
|
|
|
68
69
|
}
|
|
69
70
|
}
|
|
70
71
|
exports.DomainRedirect = DomainRedirect;
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tYWluLXJlZGlyZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZG9tYWluLXJlZGlyZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLCtFQUFxRjtBQUNyRiwrRUFBOEQ7QUFDOUQsK0RBTW9DO0FBQ3BDLHlFQUFpRTtBQUNqRSx5REFBOEQ7QUFDOUQsMkNBQXNGO0FBQ3RGLG1EQUE2QztBQUM3Qyw2Q0FBK0M7QUFDL0MseURBQXlEO0FBRXpELElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUN0QiwyREFBZSxDQUFBO0lBQ2YsMkRBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSFcsWUFBWSxHQUFaLG9CQUFZLEtBQVosb0JBQVksUUFHdkI7QUFrQ0Q7O0dBRUc7QUFDSCxNQUFhLGNBQWUsU0FBUSwyQkFBaUI7SUFNbkQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUEwQjtRQUNsRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFDLFlBQVksRUFBRSxzQkFBWSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLDBCQUFlLENBQUMsRUFBQyxDQUFDLENBQUM7UUFFMUYsSUFBSSxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1NBQ3pEO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxvQ0FBVyxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDdkQsVUFBVSxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO1lBQzNDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUMxRSxVQUFVLEVBQUUsOENBQXFCLENBQUMsZ0JBQWdCLENBQUMsd0JBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNsRyxDQUFDLENBQUM7UUFFSCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxTQUFTLENBQUM7UUFFMUQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLHlCQUFRLENBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFO1lBQzlELElBQUksRUFBRSw2QkFBWSxDQUFDLFVBQVUsQ0FBQzs7O2tCQUdsQixZQUFZOzBCQUNKLFlBQVksS0FBSyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsbUJBQW1COztpQ0FFNUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsTUFBTSxHQUFHLEdBQUc7OztFQUd4SCxDQUFDO1NBQ0UsQ0FBQyxDQUFDO1FBRUgsTUFBTSxNQUFNLEdBQUcsSUFBSSxtQ0FBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdDLE1BQU0sT0FBTyxHQUFHLG9DQUFtQixDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7YUFDbkQsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7YUFDdEIsV0FBVyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7YUFDckQsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxlQUFlLEVBQUU7YUFDdEIsY0FBYyxDQUFDLCtCQUFjLENBQUMsY0FBYyxDQUFDO2FBQzdDLGFBQWEsQ0FBQyw4QkFBYSxDQUFDLGNBQWMsQ0FBQzthQUMzQyxRQUFRLENBQUMsSUFBSSxDQUFDO2FBQ2QsV0FBVyxDQUFDLDRCQUFXLENBQUMsaUJBQWlCLENBQUM7YUFDMUMsb0JBQW9CLENBQUMscUNBQW9CLENBQUMsaUJBQWlCLENBQUM7YUFDNUQsbUJBQW1CLENBQUMsb0NBQW1CLENBQUMsVUFBVSxDQUFDO2FBQ25ELG9CQUFvQixDQUFDO1lBQ3BCO2dCQUNFLFNBQVMsRUFBRSxrQ0FBaUIsQ0FBQyxjQUFjO2dCQUMzQyxRQUFRLEVBQUUsZ0JBQWdCO2FBQzNCO1NBQ0YsQ0FBQyxDQUFDO1FBRUwsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxzQ0FBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNsRCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUNqRCxVQUFVLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSwwQkFBWSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFbEUsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztDQUNGO0FBOURELHdDQThEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiXG5pbXBvcnQge0NlcnRpZmljYXRlLCBDZXJ0aWZpY2F0ZVZhbGlkYXRpb259IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2VydGlmaWNhdGVtYW5hZ2VyXCJcbmltcG9ydCB7SHR0cE9yaWdpbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZGZyb250LW9yaWdpbnNcIjtcbmltcG9ydCB7XG4gIEFsbG93ZWRNZXRob2RzLFxuICBDYWNoZWRNZXRob2RzLFxuICBDYWNoZVBvbGljeSwgRGlzdHJpYnV0aW9uLCBGdW5jdGlvbiwgRnVuY3Rpb25Db2RlLCBGdW5jdGlvbkV2ZW50VHlwZSxcbiAgT3JpZ2luUmVxdWVzdFBvbGljeSxcbiAgVmlld2VyUHJvdG9jb2xQb2xpY3lcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZGZyb250XCI7XG5pbXBvcnQge0Nsb3VkRnJvbnRUYXJnZXR9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtcm91dGU1My10YXJnZXRzXCI7XG5pbXBvcnQge0FSZWNvcmQsIFJlY29yZFRhcmdldH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1yb3V0ZTUzXCI7XG5pbXBvcnQge0V4dGVuZGVkQ29uc3RydWN0LCBFeHRlbmRlZENvbnN0cnVjdFByb3BzLCBTdGFuZGFyZFRhZ3N9IGZyb20gXCIuLi8uLi9hd3MtY2RrXCI7XG5pbXBvcnQge0RvbWFpbk5hbWV9IGZyb20gXCIuLi8uLi9hd3Mtcm91dGU1M1wiO1xuaW1wb3J0IHtMaWJTdGFuZGFyZFRhZ3N9IGZyb20gXCIuLi8uLi90cnVlbWFya1wiO1xuaW1wb3J0IHtEaXN0cmlidXRpb25CdWlsZGVyfSBmcm9tIFwiLi4vLi4vYXdzLWNsb3VkZnJvbnRcIjtcblxuZXhwb3J0IGVudW0gUmVkaXJlY3RUeXBlIHtcbiAgUGVybWFuZW50ID0gMzAxLFxuICBUZW1wb3JhcnkgPSAzMDJcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBEb21haW5SZWRpcmVjdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEb21haW5SZWRpcmVjdFByb3BzIGV4dGVuZHMgRXh0ZW5kZWRDb25zdHJ1Y3RQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiByZWRpcmVjdCB0byBwZXJmb3JtLiBEZWZhdWx0cyB0byBQZXJtYW5lbnQuXG4gICAqXG4gICAqIEBkZWZhdWx0IFBlcm1hbmVudFxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IFJlZGlyZWN0VHlwZTtcblxuICAvKipcbiAgICogVGhlIGRvbWFpbiBuYW1lcyB0byByZWRpcmVjdC5cbiAgICovXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWVzOiBEb21haW5OYW1lW107XG5cbiAgLyoqXG4gICAqIFRoZSB0YXJnZXQgdG8gcmVkaXJlY3QgdG8uIEV4LiBodHRwczovL3d3dy5leGFtcGxlLmNvbVxuICAgKi9cbiAgcmVhZG9ubHkgdGFyZ2V0OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvbW1lbnQgdG8gbGVhdmUgb24gdGhlIENsb3VkRnJvbnQgZGlzdHJpYnV0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgY29tbWVudD86IHN0cmluZztcblxuICAvKipcbiAgICogQXBwZW5kcyB0aGUgcmVxdWVzdCBVUkkgdG8gdGhlIHRhcmdldC4gRGVmYXVsdCBpcyBmYWxzZS5cbiAgICovXG4gIHJlYWRvbmx5IGFwcGVuZFVyaT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIENsb3VkRnJvbnQgZGlzdHJpYnV0aW9uIHRoYXQgcmVkaXJlY3RzIGFuIGVudGlyZSBkb21haW4gdG8gYSB0YXJnZXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBEb21haW5SZWRpcmVjdCBleHRlbmRzIEV4dGVuZGVkQ29uc3RydWN0IHtcblxuICByZWFkb25seSBjZXJ0aWZpY2F0ZTogQ2VydGlmaWNhdGU7XG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICByZWFkb25seSByZWNvcmRzOiBBUmVjb3JkW107XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERvbWFpblJlZGlyZWN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtzdGFuZGFyZFRhZ3M6IFN0YW5kYXJkVGFncy5tZXJnZShwcm9wcy5zdGFuZGFyZFRhZ3MsIExpYlN0YW5kYXJkVGFncyl9KTtcblxuICAgIGlmIChwcm9wcy5kb21haW5OYW1lcy5sZW5ndGggPCAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJBdCBsZWFzdCBvbmUgZG9tYWluIG5hbWUgaXMgcmVxdWlyZWRcIik7XG4gICAgfVxuXG4gICAgY29uc3QgY2VydGlmaWNhdGUgPSBuZXcgQ2VydGlmaWNhdGUodGhpcywgXCJDZXJ0aWZpY2F0ZVwiLCB7XG4gICAgICBkb21haW5OYW1lOiBwcm9wcy5kb21haW5OYW1lc1swXS50b1N0cmluZygpLFxuICAgICAgc3ViamVjdEFsdGVybmF0aXZlTmFtZXM6IHByb3BzLmRvbWFpbk5hbWVzLnNsaWNlKDEpLm1hcChkID0+IGQudG9TdHJpbmcoKSksXG4gICAgICB2YWxpZGF0aW9uOiBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24uZnJvbURuc011bHRpWm9uZShEb21haW5OYW1lLnRvWm9uZU1hcCh0aGlzLCBwcm9wcy5kb21haW5OYW1lcykpXG4gICAgfSk7XG5cbiAgICBjb25zdCByZWRpcmVjdFR5cGUgPSBwcm9wcy50eXBlIHx8IFJlZGlyZWN0VHlwZS5QZXJtYW5lbnQ7XG5cbiAgICBjb25zdCByZWRpcmVjdEZ1bmN0aW9uID0gbmV3IEZ1bmN0aW9uKHRoaXMsIFwiUmVkaXJlY3RGdW5jdGlvblwiLCB7XG4gICAgICBjb2RlOiBGdW5jdGlvbkNvZGUuZnJvbUlubGluZShgXG5mdW5jdGlvbiBoYW5kbGVyKGV2ZW50KSB7XG4gIHJldHVybiB7XG4gICAgc3RhdHVzQ29kZTogJHtyZWRpcmVjdFR5cGV9LFxuICAgIHN0YXR1c0Rlc2NyaXB0aW9uOiBcIiR7cmVkaXJlY3RUeXBlID09PSBSZWRpcmVjdFR5cGUuUGVybWFuZW50ID8gXCJQZXJtYW5lbnRseSBNb3ZlZFwiIDogXCJUZW1wb3JhcmlseSBNb3ZlZFwifVwiLFxuICAgIGhlYWRlcnM6IHtcbiAgICAgICAgXCJsb2NhdGlvblwiOiB7IFwidmFsdWVcIjogJHtwcm9wcy5hcHBlbmRVcmkgPyAnXCInICsgcHJvcHMudGFyZ2V0ICsgJ1wiICsgZXZlbnQucmVxdWVzdC51cmknIDogJ1wiJyArIHByb3BzLnRhcmdldCArICdcIid9IH1cbiAgICB9XG4gIH1cbn1gKVxuICAgIH0pO1xuXG4gICAgY29uc3Qgb3JpZ2luID0gbmV3IEh0dHBPcmlnaW4oXCJleGFtcGxlLmNvbVwiKTtcbiAgICBjb25zdCBidWlsZGVyID0gRGlzdHJpYnV0aW9uQnVpbGRlci5mcm9tT3JpZ2luKG9yaWdpbilcbiAgICAgIC5jb21tZW50KHByb3BzLmNvbW1lbnQpXG4gICAgICAuZG9tYWluTmFtZXMocHJvcHMuZG9tYWluTmFtZXMubWFwKGQgPT4gZC50b1N0cmluZygpKSlcbiAgICAgIC5jZXJ0aWZpY2F0ZShjZXJ0aWZpY2F0ZSk7XG4gICAgYnVpbGRlci5kZWZhdWx0QmVoYXZpb3IoKVxuICAgICAgLmFsbG93ZWRNZXRob2RzKEFsbG93ZWRNZXRob2RzLkFMTE9XX0dFVF9IRUFEKVxuICAgICAgLmNhY2hlZE1ldGhvZHMoQ2FjaGVkTWV0aG9kcy5DQUNIRV9HRVRfSEVBRClcbiAgICAgIC5jb21wcmVzcyh0cnVlKVxuICAgICAgLmNhY2hlUG9saWN5KENhY2hlUG9saWN5LkNBQ0hJTkdfT1BUSU1JWkVEKVxuICAgICAgLnZpZXdlclByb3RvY29sUG9saWN5KFZpZXdlclByb3RvY29sUG9saWN5LlJFRElSRUNUX1RPX0hUVFBTKVxuICAgICAgLm9yaWdpblJlcXVlc3RQb2xpY3koT3JpZ2luUmVxdWVzdFBvbGljeS5BTExfVklFV0VSKVxuICAgICAgLmZ1bmN0aW9uQXNzb2NpYXRpb25zKFtcbiAgICAgICAge1xuICAgICAgICAgIGV2ZW50VHlwZTogRnVuY3Rpb25FdmVudFR5cGUuVklFV0VSX1JFUVVFU1QsXG4gICAgICAgICAgZnVuY3Rpb246IHJlZGlyZWN0RnVuY3Rpb25cbiAgICAgICAgfVxuICAgICAgXSk7XG5cbiAgICBjb25zdCBkaXN0cmlidXRpb24gPSBidWlsZGVyLnRvRGlzdHJpYnV0aW9uKHRoaXMsIFwiRGlzdHJpYnV0aW9uXCIpO1xuICAgIGNvbnN0IHRhcmdldCA9IG5ldyBDbG91ZEZyb250VGFyZ2V0KGRpc3RyaWJ1dGlvbik7XG4gICAgY29uc3QgcmVjb3JkcyA9IHByb3BzLmRvbWFpbk5hbWVzLm1hcChkb21haW5OYW1lID0+XG4gICAgICBkb21haW5OYW1lLmNyZWF0ZUFSZWNvcmQodGhpcywgUmVjb3JkVGFyZ2V0LmZyb21BbGlhcyh0YXJnZXQpKSk7XG5cbiAgICB0aGlzLmNlcnRpZmljYXRlID0gY2VydGlmaWNhdGU7XG4gICAgdGhpcy5kaXN0cmlidXRpb24gPSBkaXN0cmlidXRpb247XG4gICAgdGhpcy5yZWNvcmRzID0gcmVjb3JkcztcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "truemark-cdk-lib",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.3-alpha.0+d764c2a",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"scripts": {
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"publishConfig": {
|
|
71
71
|
"access": "public"
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "d764c2a432d019fd8e40b6404cef84a50e86b396"
|
|
74
74
|
}
|