@vendure/admin-ui 2.1.8 → 2.1.9
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/core/common/version.d.ts +1 -1
- package/esm2022/catalog/catalog.module.mjs +1 -1
- package/esm2022/catalog/components/create-product-variant-dialog/create-product-variant-dialog.component.mjs +2 -2
- package/esm2022/catalog/components/product-variant-detail/product-variant-detail.component.mjs +3 -3
- package/esm2022/catalog/components/variant-price-strategy-detail/variant-price-strategy-detail.component.mjs +3 -3
- package/esm2022/core/common/generated-types.mjs +1 -1
- package/esm2022/core/common/introspection-result.mjs +1 -1
- package/esm2022/core/common/version.mjs +2 -2
- package/esm2022/settings/components/channel-detail/channel-detail.component.mjs +5 -5
- package/fesm2022/vendure-admin-ui-catalog.mjs +5 -5
- package/fesm2022/vendure-admin-ui-catalog.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-core.mjs +1 -1
- package/fesm2022/vendure-admin-ui-core.mjs.map +1 -1
- package/fesm2022/vendure-admin-ui-settings.mjs +4 -4
- package/fesm2022/vendure-admin-ui-settings.mjs.map +1 -1
- package/package.json +8 -8
- package/static/i18n-messages/ar.json +796 -796
- package/static/i18n-messages/cs.json +796 -796
- package/static/i18n-messages/de.json +796 -796
- package/static/i18n-messages/en.json +796 -796
- package/static/i18n-messages/es.json +796 -796
- package/static/i18n-messages/fa.json +796 -796
- package/static/i18n-messages/fr.json +796 -796
- package/static/i18n-messages/he.json +796 -796
- package/static/i18n-messages/hr.json +796 -796
- package/static/i18n-messages/it.json +796 -796
- package/static/i18n-messages/ne.json +796 -796
- package/static/i18n-messages/pl.json +796 -796
- package/static/i18n-messages/pt_BR.json +796 -796
- package/static/i18n-messages/pt_PT.json +796 -796
- package/static/i18n-messages/ru.json +796 -796
- package/static/i18n-messages/sv.json +796 -796
- package/static/i18n-messages/uk.json +796 -796
- package/static/i18n-messages/zh_Hans.json +796 -796
- package/static/i18n-messages/zh_Hant.json +796 -796
|
@@ -314,4 +314,4 @@ const result = {
|
|
|
314
314
|
}
|
|
315
315
|
};
|
|
316
316
|
export default result;
|
|
317
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50cm9zcGVjdGlvbi1yZXN1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2NvbW1vbi9pbnRyb3NwZWN0aW9uLXJlc3VsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQkFBb0I7QUFPZCxNQUFNLE1BQU0sR0FBNEI7SUFDNUMsZUFBZSxFQUFFO1FBQ2YsNkJBQTZCLEVBQUU7WUFDN0Isd0JBQXdCO1lBQ3hCLDhCQUE4QjtZQUM5QixhQUFhO1lBQ2IsaUNBQWlDO1lBQ2pDLDhCQUE4QjtZQUM5QixnQ0FBZ0M7WUFDaEMsNEJBQTRCO1NBQzdCO1FBQ0QsK0JBQStCLEVBQUU7WUFDL0IseUJBQXlCO1lBQ3pCLE9BQU87U0FDUjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4Qix3QkFBd0I7WUFDeEIsc0JBQXNCO1lBQ3RCLE9BQU87U0FDUjtRQUNELHNCQUFzQixFQUFFO1lBQ3RCLGFBQWE7WUFDYix5QkFBeUI7U0FDMUI7UUFDRCxtQkFBbUIsRUFBRTtZQUNuQix3QkFBd0I7WUFDeEIsOEJBQThCO1lBQzlCLG9CQUFvQjtZQUNwQixPQUFPO1lBQ1AsMkJBQTJCO1lBQzNCLHVCQUF1QjtTQUN4QjtRQUNELHFCQUFxQixFQUFFO1lBQ3JCLG9CQUFvQjtZQUNwQixTQUFTO1lBQ1QsNkJBQTZCO1NBQzlCO1FBQ0QsbUJBQW1CLEVBQUU7WUFDbkIsT0FBTztZQUNQLGVBQWU7U0FDaEI7UUFDRCxxQkFBcUIsRUFBRTtZQUNyQixTQUFTO1lBQ1QsMkJBQTJCO1NBQzVCO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsVUFBVTtZQUNWLDJCQUEyQjtTQUM1QjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4QixXQUFXO1NBQ1o7UUFDRCxhQUFhLEVBQUU7WUFDYiwwQkFBMEI7WUFDMUIsMkJBQTJCO1lBQzNCLHdCQUF3QjtZQUN4QixzQkFBc0I7WUFDdEIsK0JBQStC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QUNELHNCQUFzQixFQUFFO1lBQ3RCLFVBQVU7WUFDViwyQkFBMkI7U0FDNUI7UUFDRCw0QkFBNEIsRUFBRTtZQUM1Qiw2QkFBNkI7WUFDN0IsZ0JBQWdCO1NBQ2pCO1FBQ0Qsd0JBQXdCLEVBQUU7WUFDeEIsd0JBQXdCO1lBQ3hCLHVCQUF1QjtZQUN2QixPQUFPO1lBQ1AsaUJBQWlCO1lBQ2pCLHdCQUF3QjtTQUN6QjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4QixXQUFXO1NBQ1o7S0FDRjtDQUNGLENBQUM7QUFDSSxlQUFlLE1BQU0sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG5cbiAgICAgIGV4cG9ydCBpbnRlcmZhY2UgUG9zc2libGVUeXBlc1Jlc3VsdERhdGEge1xuICAgICAgICBwb3NzaWJsZVR5cGVzOiB7XG4gICAgICAgICAgW2tleTogc3RyaW5nXTogc3RyaW5nW11cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgcmVzdWx0OiBQb3NzaWJsZVR5cGVzUmVzdWx0RGF0YSA9IHtcbiAgXCJwb3NzaWJsZVR5cGVzXCI6IHtcbiAgICBcIkFkZEZ1bGZpbGxtZW50VG9PcmRlclJlc3VsdFwiOiBbXG4gICAgICBcIkNyZWF0ZUZ1bGZpbGxtZW50RXJyb3JcIixcbiAgICAgIFwiRW1wdHlPcmRlckxpbmVTZWxlY3Rpb25FcnJvclwiLFxuICAgICAgXCJGdWxmaWxsbWVudFwiLFxuICAgICAgXCJGdWxmaWxsbWVudFN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXG4gICAgICBcIkluc3VmZmljaWVudFN0b2NrT25IYW5kRXJyb3JcIixcbiAgICAgIFwiSW52YWxpZEZ1bGZpbGxtZW50SGFuZGxlckVycm9yXCIsXG4gICAgICBcIkl0ZW1zQWxyZWFkeUZ1bGZpbGxlZEVycm9yXCJcbiAgICBdLFxuICAgIFwiQWRkTWFudWFsUGF5bWVudFRvT3JkZXJSZXN1bHRcIjogW1xuICAgICAgXCJNYW51YWxQYXltZW50U3RhdGVFcnJvclwiLFxuICAgICAgXCJPcmRlclwiXG4gICAgXSxcbiAgICBcIkFwcGx5Q291cG9uQ29kZVJlc3VsdFwiOiBbXG4gICAgICBcIkNvdXBvbkNvZGVFeHBpcmVkRXJyb3JcIixcbiAgICAgIFwiQ291cG9uQ29kZUludmFsaWRFcnJvclwiLFxuICAgICAgXCJDb3Vwb25Db2RlTGltaXRFcnJvclwiLFxuICAgICAgXCJPcmRlclwiXG4gICAgXSxcbiAgICBcIkF1dGhlbnRpY2F0aW9uUmVzdWx0XCI6IFtcbiAgICAgIFwiQ3VycmVudFVzZXJcIixcbiAgICAgIFwiSW52YWxpZENyZWRlbnRpYWxzRXJyb3JcIlxuICAgIF0sXG4gICAgXCJDYW5jZWxPcmRlclJlc3VsdFwiOiBbXG4gICAgICBcIkNhbmNlbEFjdGl2ZU9yZGVyRXJyb3JcIixcbiAgICAgIFwiRW1wdHlPcmRlckxpbmVTZWxlY3Rpb25FcnJvclwiLFxuICAgICAgXCJNdWx0aXBsZU9yZGVyRXJyb3JcIixcbiAgICAgIFwiT3JkZXJcIixcbiAgICAgIFwiT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxuICAgICAgXCJRdWFudGl0eVRvb0dyZWF0RXJyb3JcIlxuICAgIF0sXG4gICAgXCJDYW5jZWxQYXltZW50UmVzdWx0XCI6IFtcbiAgICAgIFwiQ2FuY2VsUGF5bWVudEVycm9yXCIsXG4gICAgICBcIlBheW1lbnRcIixcbiAgICAgIFwiUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yXCJcbiAgICBdLFxuICAgIFwiQ3JlYXRlQXNzZXRSZXN1bHRcIjogW1xuICAgICAgXCJBc3NldFwiLFxuICAgICAgXCJNaW1lVHlwZUVycm9yXCJcbiAgICBdLFxuICAgIFwiQ3JlYXRlQ2hhbm5lbFJlc3VsdFwiOiBbXG4gICAgICBcIkNoYW5uZWxcIixcbiAgICAgIFwiTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvclwiXG4gICAgXSxcbiAgICBcIkNyZWF0ZUN1c3RvbWVyUmVzdWx0XCI6IFtcbiAgICAgIFwiQ3VzdG9tZXJcIixcbiAgICAgIFwiRW1haWxBZGRyZXNzQ29uZmxpY3RFcnJvclwiXG4gICAgXSxcbiAgICBcIkNyZWF0ZVByb21vdGlvblJlc3VsdFwiOiBbXG4gICAgICBcIk1pc3NpbmdDb25kaXRpb25zRXJyb3JcIixcbiAgICAgIFwiUHJvbW90aW9uXCJcbiAgICBdLFxuICAgIFwiQ3VzdG9tRmllbGRcIjogW1xuICAgICAgXCJCb29sZWFuQ3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJGbG9hdEN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIkludEN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIkxvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIkxvY2FsZVRleHRDdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIlN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIlRleHRDdXN0b21GaWVsZENvbmZpZ1wiXG4gICAgXSxcbiAgICBcIkN1c3RvbUZpZWxkQ29uZmlnXCI6IFtcbiAgICAgIFwiQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIkRhdGVUaW1lQ3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiRmxvYXRDdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJJbnRDdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJMb2NhbGVUZXh0Q3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJTdHJpbmdDdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJUZXh0Q3VzdG9tRmllbGRDb25maWdcIlxuICAgIF0sXG4gICAgXCJFcnJvclJlc3VsdFwiOiBbXG4gICAgICBcIkFscmVhZHlSZWZ1bmRlZEVycm9yXCIsXG4gICAgICBcIkNhbmNlbEFjdGl2ZU9yZGVyRXJyb3JcIixcbiAgICAgIFwiQ2FuY2VsUGF5bWVudEVycm9yXCIsXG4gICAgICBcIkNoYW5uZWxEZWZhdWx0TGFuZ3VhZ2VFcnJvclwiLFxuICAgICAgXCJDb3Vwb25Db2RlRXhwaXJlZEVycm9yXCIsXG4gICAgICBcIkNvdXBvbkNvZGVJbnZhbGlkRXJyb3JcIixcbiAgICAgIFwiQ291cG9uQ29kZUxpbWl0RXJyb3JcIixcbiAgICAgIFwiQ3JlYXRlRnVsZmlsbG1lbnRFcnJvclwiLFxuICAgICAgXCJFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yXCIsXG4gICAgICBcIkVtcHR5T3JkZXJMaW5lU2VsZWN0aW9uRXJyb3JcIixcbiAgICAgIFwiRmFjZXRJblVzZUVycm9yXCIsXG4gICAgICBcIkZ1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiR3Vlc3RDaGVja291dEVycm9yXCIsXG4gICAgICBcIkluZWxpZ2libGVTaGlwcGluZ01ldGhvZEVycm9yXCIsXG4gICAgICBcIkluc3VmZmljaWVudFN0b2NrRXJyb3JcIixcbiAgICAgIFwiSW5zdWZmaWNpZW50U3RvY2tPbkhhbmRFcnJvclwiLFxuICAgICAgXCJJbnZhbGlkQ3JlZGVudGlhbHNFcnJvclwiLFxuICAgICAgXCJJbnZhbGlkRnVsZmlsbG1lbnRIYW5kbGVyRXJyb3JcIixcbiAgICAgIFwiSXRlbXNBbHJlYWR5RnVsZmlsbGVkRXJyb3JcIixcbiAgICAgIFwiTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvclwiLFxuICAgICAgXCJNYW51YWxQYXltZW50U3RhdGVFcnJvclwiLFxuICAgICAgXCJNaW1lVHlwZUVycm9yXCIsXG4gICAgICBcIk1pc3NpbmdDb25kaXRpb25zRXJyb3JcIixcbiAgICAgIFwiTXVsdGlwbGVPcmRlckVycm9yXCIsXG4gICAgICBcIk5hdGl2ZUF1dGhTdHJhdGVneUVycm9yXCIsXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxuICAgICAgXCJOb0FjdGl2ZU9yZGVyRXJyb3JcIixcbiAgICAgIFwiTm9DaGFuZ2VzU3BlY2lmaWVkRXJyb3JcIixcbiAgICAgIFwiTm90aGluZ1RvUmVmdW5kRXJyb3JcIixcbiAgICAgIFwiT3JkZXJMaW1pdEVycm9yXCIsXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uRXJyb3JcIixcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25TdGF0ZUVycm9yXCIsXG4gICAgICBcIk9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiUGF5bWVudE1ldGhvZE1pc3NpbmdFcnJvclwiLFxuICAgICAgXCJQYXltZW50T3JkZXJNaXNtYXRjaEVycm9yXCIsXG4gICAgICBcIlBheW1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxuICAgICAgXCJQcm9kdWN0T3B0aW9uSW5Vc2VFcnJvclwiLFxuICAgICAgXCJRdWFudGl0eVRvb0dyZWF0RXJyb3JcIixcbiAgICAgIFwiUmVmdW5kT3JkZXJTdGF0ZUVycm9yXCIsXG4gICAgICBcIlJlZnVuZFBheW1lbnRJZE1pc3NpbmdFcnJvclwiLFxuICAgICAgXCJSZWZ1bmRTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxuICAgICAgXCJTZXR0bGVQYXltZW50RXJyb3JcIlxuICAgIF0sXG4gICAgXCJNb2RpZnlPcmRlclJlc3VsdFwiOiBbXG4gICAgICBcIkNvdXBvbkNvZGVFeHBpcmVkRXJyb3JcIixcbiAgICAgIFwiQ291cG9uQ29kZUludmFsaWRFcnJvclwiLFxuICAgICAgXCJDb3Vwb25Db2RlTGltaXRFcnJvclwiLFxuICAgICAgXCJJbnN1ZmZpY2llbnRTdG9ja0Vycm9yXCIsXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxuICAgICAgXCJOb0NoYW5nZXNTcGVjaWZpZWRFcnJvclwiLFxuICAgICAgXCJPcmRlclwiLFxuICAgICAgXCJPcmRlckxpbWl0RXJyb3JcIixcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25TdGF0ZUVycm9yXCIsXG4gICAgICBcIlBheW1lbnRNZXRob2RNaXNzaW5nRXJyb3JcIixcbiAgICAgIFwiUmVmdW5kUGF5bWVudElkTWlzc2luZ0Vycm9yXCJcbiAgICBdLFxuICAgIFwiTmF0aXZlQXV0aGVudGljYXRpb25SZXN1bHRcIjogW1xuICAgICAgXCJDdXJyZW50VXNlclwiLFxuICAgICAgXCJJbnZhbGlkQ3JlZGVudGlhbHNFcnJvclwiLFxuICAgICAgXCJOYXRpdmVBdXRoU3RyYXRlZ3lFcnJvclwiXG4gICAgXSxcbiAgICBcIk5vZGVcIjogW1xuICAgICAgXCJBZGRyZXNzXCIsXG4gICAgICBcIkFkbWluaXN0cmF0b3JcIixcbiAgICAgIFwiQWxsb2NhdGlvblwiLFxuICAgICAgXCJBc3NldFwiLFxuICAgICAgXCJBdXRoZW50aWNhdGlvbk1ldGhvZFwiLFxuICAgICAgXCJDYW5jZWxsYXRpb25cIixcbiAgICAgIFwiQ2hhbm5lbFwiLFxuICAgICAgXCJDb2xsZWN0aW9uXCIsXG4gICAgICBcIkNvdW50cnlcIixcbiAgICAgIFwiQ3VzdG9tZXJcIixcbiAgICAgIFwiQ3VzdG9tZXJHcm91cFwiLFxuICAgICAgXCJGYWNldFwiLFxuICAgICAgXCJGYWNldFZhbHVlXCIsXG4gICAgICBcIkZ1bGZpbGxtZW50XCIsXG4gICAgICBcIkhpc3RvcnlFbnRyeVwiLFxuICAgICAgXCJKb2JcIixcbiAgICAgIFwiT3JkZXJcIixcbiAgICAgIFwiT3JkZXJMaW5lXCIsXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uXCIsXG4gICAgICBcIlBheW1lbnRcIixcbiAgICAgIFwiUGF5bWVudE1ldGhvZFwiLFxuICAgICAgXCJQcm9kdWN0XCIsXG4gICAgICBcIlByb2R1Y3RPcHRpb25cIixcbiAgICAgIFwiUHJvZHVjdE9wdGlvbkdyb3VwXCIsXG4gICAgICBcIlByb2R1Y3RWYXJpYW50XCIsXG4gICAgICBcIlByb21vdGlvblwiLFxuICAgICAgXCJQcm92aW5jZVwiLFxuICAgICAgXCJSZWZ1bmRcIixcbiAgICAgIFwiUmVsZWFzZVwiLFxuICAgICAgXCJSZXR1cm5cIixcbiAgICAgIFwiUm9sZVwiLFxuICAgICAgXCJTYWxlXCIsXG4gICAgICBcIlNlbGxlclwiLFxuICAgICAgXCJTaGlwcGluZ01ldGhvZFwiLFxuICAgICAgXCJTdG9ja0FkanVzdG1lbnRcIixcbiAgICAgIFwiU3RvY2tMZXZlbFwiLFxuICAgICAgXCJTdG9ja0xvY2F0aW9uXCIsXG4gICAgICBcIlN1cmNoYXJnZVwiLFxuICAgICAgXCJUYWdcIixcbiAgICAgIFwiVGF4Q2F0ZWdvcnlcIixcbiAgICAgIFwiVGF4UmF0ZVwiLFxuICAgICAgXCJVc2VyXCIsXG4gICAgICBcIlpvbmVcIlxuICAgIF0sXG4gICAgXCJQYWdpbmF0ZWRMaXN0XCI6IFtcbiAgICAgIFwiQWRtaW5pc3RyYXRvckxpc3RcIixcbiAgICAgIFwiQXNzZXRMaXN0XCIsXG4gICAgICBcIkNoYW5uZWxMaXN0XCIsXG4gICAgICBcIkNvbGxlY3Rpb25MaXN0XCIsXG4gICAgICBcIkNvdW50cnlMaXN0XCIsXG4gICAgICBcIkN1c3RvbWVyR3JvdXBMaXN0XCIsXG4gICAgICBcIkN1c3RvbWVyTGlzdFwiLFxuICAgICAgXCJGYWNldExpc3RcIixcbiAgICAgIFwiRmFjZXRWYWx1ZUxpc3RcIixcbiAgICAgIFwiSGlzdG9yeUVudHJ5TGlzdFwiLFxuICAgICAgXCJKb2JMaXN0XCIsXG4gICAgICBcIk9yZGVyTGlzdFwiLFxuICAgICAgXCJQYXltZW50TWV0aG9kTGlzdFwiLFxuICAgICAgXCJQcm9kdWN0TGlzdFwiLFxuICAgICAgXCJQcm9kdWN0VmFyaWFudExpc3RcIixcbiAgICAgIFwiUHJvbW90aW9uTGlzdFwiLFxuICAgICAgXCJQcm92aW5jZUxpc3RcIixcbiAgICAgIFwiUm9sZUxpc3RcIixcbiAgICAgIFwiU2VsbGVyTGlzdFwiLFxuICAgICAgXCJTaGlwcGluZ01ldGhvZExpc3RcIixcbiAgICAgIFwiU3RvY2tMb2NhdGlvbkxpc3RcIixcbiAgICAgIFwiVGFnTGlzdFwiLFxuICAgICAgXCJUYXhDYXRlZ29yeUxpc3RcIixcbiAgICAgIFwiVGF4UmF0ZUxpc3RcIixcbiAgICAgIFwiWm9uZUxpc3RcIlxuICAgIF0sXG4gICAgXCJSZWZ1bmRPcmRlclJlc3VsdFwiOiBbXG4gICAgICBcIkFscmVhZHlSZWZ1bmRlZEVycm9yXCIsXG4gICAgICBcIk11bHRpcGxlT3JkZXJFcnJvclwiLFxuICAgICAgXCJOb3RoaW5nVG9SZWZ1bmRFcnJvclwiLFxuICAgICAgXCJPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXG4gICAgICBcIlBheW1lbnRPcmRlck1pc21hdGNoRXJyb3JcIixcbiAgICAgIFwiUXVhbnRpdHlUb29HcmVhdEVycm9yXCIsXG4gICAgICBcIlJlZnVuZFwiLFxuICAgICAgXCJSZWZ1bmRPcmRlclN0YXRlRXJyb3JcIixcbiAgICAgIFwiUmVmdW5kU3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxuICAgIF0sXG4gICAgXCJSZWdpb25cIjogW1xuICAgICAgXCJDb3VudHJ5XCIsXG4gICAgICBcIlByb3ZpbmNlXCJcbiAgICBdLFxuICAgIFwiUmVtb3ZlRmFjZXRGcm9tQ2hhbm5lbFJlc3VsdFwiOiBbXG4gICAgICBcIkZhY2V0XCIsXG4gICAgICBcIkZhY2V0SW5Vc2VFcnJvclwiXG4gICAgXSxcbiAgICBcIlJlbW92ZU9wdGlvbkdyb3VwRnJvbVByb2R1Y3RSZXN1bHRcIjogW1xuICAgICAgXCJQcm9kdWN0XCIsXG4gICAgICBcIlByb2R1Y3RPcHRpb25JblVzZUVycm9yXCJcbiAgICBdLFxuICAgIFwiUmVtb3ZlT3JkZXJJdGVtc1Jlc3VsdFwiOiBbXG4gICAgICBcIk9yZGVyXCIsXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uRXJyb3JcIlxuICAgIF0sXG4gICAgXCJTZWFyY2hSZXN1bHRQcmljZVwiOiBbXG4gICAgICBcIlByaWNlUmFuZ2VcIixcbiAgICAgIFwiU2luZ2xlUHJpY2VcIlxuICAgIF0sXG4gICAgXCJTZXRDdXN0b21lckZvckRyYWZ0T3JkZXJSZXN1bHRcIjogW1xuICAgICAgXCJFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yXCIsXG4gICAgICBcIk9yZGVyXCJcbiAgICBdLFxuICAgIFwiU2V0T3JkZXJTaGlwcGluZ01ldGhvZFJlc3VsdFwiOiBbXG4gICAgICBcIkluZWxpZ2libGVTaGlwcGluZ01ldGhvZEVycm9yXCIsXG4gICAgICBcIk5vQWN0aXZlT3JkZXJFcnJvclwiLFxuICAgICAgXCJPcmRlclwiLFxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvbkVycm9yXCJcbiAgICBdLFxuICAgIFwiU2V0dGxlUGF5bWVudFJlc3VsdFwiOiBbXG4gICAgICBcIk9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiUGF5bWVudFwiLFxuICAgICAgXCJQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiU2V0dGxlUGF5bWVudEVycm9yXCJcbiAgICBdLFxuICAgIFwiU2V0dGxlUmVmdW5kUmVzdWx0XCI6IFtcbiAgICAgIFwiUmVmdW5kXCIsXG4gICAgICBcIlJlZnVuZFN0YXRlVHJhbnNpdGlvbkVycm9yXCJcbiAgICBdLFxuICAgIFwiU3RvY2tNb3ZlbWVudFwiOiBbXG4gICAgICBcIkFsbG9jYXRpb25cIixcbiAgICAgIFwiQ2FuY2VsbGF0aW9uXCIsXG4gICAgICBcIlJlbGVhc2VcIixcbiAgICAgIFwiUmV0dXJuXCIsXG4gICAgICBcIlNhbGVcIixcbiAgICAgIFwiU3RvY2tBZGp1c3RtZW50XCJcbiAgICBdLFxuICAgIFwiU3RvY2tNb3ZlbWVudEl0ZW1cIjogW1xuICAgICAgXCJBbGxvY2F0aW9uXCIsXG4gICAgICBcIkNhbmNlbGxhdGlvblwiLFxuICAgICAgXCJSZWxlYXNlXCIsXG4gICAgICBcIlJldHVyblwiLFxuICAgICAgXCJTYWxlXCIsXG4gICAgICBcIlN0b2NrQWRqdXN0bWVudFwiXG4gICAgXSxcbiAgICBcIlRyYW5zaXRpb25GdWxmaWxsbWVudFRvU3RhdGVSZXN1bHRcIjogW1xuICAgICAgXCJGdWxmaWxsbWVudFwiLFxuICAgICAgXCJGdWxmaWxsbWVudFN0YXRlVHJhbnNpdGlvbkVycm9yXCJcbiAgICBdLFxuICAgIFwiVHJhbnNpdGlvbk9yZGVyVG9TdGF0ZVJlc3VsdFwiOiBbXG4gICAgICBcIk9yZGVyXCIsXG4gICAgICBcIk9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxuICAgIF0sXG4gICAgXCJUcmFuc2l0aW9uUGF5bWVudFRvU3RhdGVSZXN1bHRcIjogW1xuICAgICAgXCJQYXltZW50XCIsXG4gICAgICBcIlBheW1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvclwiXG4gICAgXSxcbiAgICBcIlVwZGF0ZUNoYW5uZWxSZXN1bHRcIjogW1xuICAgICAgXCJDaGFubmVsXCIsXG4gICAgICBcIkxhbmd1YWdlTm90QXZhaWxhYmxlRXJyb3JcIlxuICAgIF0sXG4gICAgXCJVcGRhdGVDdXN0b21lclJlc3VsdFwiOiBbXG4gICAgICBcIkN1c3RvbWVyXCIsXG4gICAgICBcIkVtYWlsQWRkcmVzc0NvbmZsaWN0RXJyb3JcIlxuICAgIF0sXG4gICAgXCJVcGRhdGVHbG9iYWxTZXR0aW5nc1Jlc3VsdFwiOiBbXG4gICAgICBcIkNoYW5uZWxEZWZhdWx0TGFuZ3VhZ2VFcnJvclwiLFxuICAgICAgXCJHbG9iYWxTZXR0aW5nc1wiXG4gICAgXSxcbiAgICBcIlVwZGF0ZU9yZGVySXRlbXNSZXN1bHRcIjogW1xuICAgICAgXCJJbnN1ZmZpY2llbnRTdG9ja0Vycm9yXCIsXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxuICAgICAgXCJPcmRlclwiLFxuICAgICAgXCJPcmRlckxpbWl0RXJyb3JcIixcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25FcnJvclwiXG4gICAgXSxcbiAgICBcIlVwZGF0ZVByb21vdGlvblJlc3VsdFwiOiBbXG4gICAgICBcIk1pc3NpbmdDb25kaXRpb25zRXJyb3JcIixcbiAgICAgIFwiUHJvbW90aW9uXCJcbiAgICBdXG4gIH1cbn07XG4gICAgICBleHBvcnQgZGVmYXVsdCByZXN1bHQ7XG4gICAgIl19
|
|
317
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50cm9zcGVjdGlvbi1yZXN1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2NvbW1vbi9pbnRyb3NwZWN0aW9uLXJlc3VsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQkFBb0I7QUFPZCxNQUFNLE1BQU0sR0FBNEI7SUFDNUMsZUFBZSxFQUFFO1FBQ2YsNkJBQTZCLEVBQUU7WUFDN0Isd0JBQXdCO1lBQ3hCLDhCQUE4QjtZQUM5QixhQUFhO1lBQ2IsaUNBQWlDO1lBQ2pDLDhCQUE4QjtZQUM5QixnQ0FBZ0M7WUFDaEMsNEJBQTRCO1NBQzdCO1FBQ0QsK0JBQStCLEVBQUU7WUFDL0IseUJBQXlCO1lBQ3pCLE9BQU87U0FDUjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4Qix3QkFBd0I7WUFDeEIsc0JBQXNCO1lBQ3RCLE9BQU87U0FDUjtRQUNELHNCQUFzQixFQUFFO1lBQ3RCLGFBQWE7WUFDYix5QkFBeUI7U0FDMUI7UUFDRCxtQkFBbUIsRUFBRTtZQUNuQix3QkFBd0I7WUFDeEIsOEJBQThCO1lBQzlCLG9CQUFvQjtZQUNwQixPQUFPO1lBQ1AsMkJBQTJCO1lBQzNCLHVCQUF1QjtTQUN4QjtRQUNELHFCQUFxQixFQUFFO1lBQ3JCLG9CQUFvQjtZQUNwQixTQUFTO1lBQ1QsNkJBQTZCO1NBQzlCO1FBQ0QsbUJBQW1CLEVBQUU7WUFDbkIsT0FBTztZQUNQLGVBQWU7U0FDaEI7UUFDRCxxQkFBcUIsRUFBRTtZQUNyQixTQUFTO1lBQ1QsMkJBQTJCO1NBQzVCO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsVUFBVTtZQUNWLDJCQUEyQjtTQUM1QjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4QixXQUFXO1NBQ1o7UUFDRCxhQUFhLEVBQUU7WUFDYiwwQkFBMEI7WUFDMUIsMkJBQTJCO1lBQzNCLHdCQUF3QjtZQUN4QixzQkFBc0I7WUFDdEIsK0JBQStC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QUNELHNCQUFzQixFQUFFO1lBQ3RCLFVBQVU7WUFDViwyQkFBMkI7U0FDNUI7UUFDRCw0QkFBNEIsRUFBRTtZQUM1Qiw2QkFBNkI7WUFDN0IsZ0JBQWdCO1NBQ2pCO1FBQ0Qsd0JBQXdCLEVBQUU7WUFDeEIsd0JBQXdCO1lBQ3hCLHVCQUF1QjtZQUN2QixPQUFPO1lBQ1AsaUJBQWlCO1lBQ2pCLHdCQUF3QjtTQUN6QjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4QixXQUFXO1NBQ1o7S0FDRjtDQUNGLENBQUM7QUFDSSxlQUFlLE1BQU0sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXHJcblxyXG4gICAgICBleHBvcnQgaW50ZXJmYWNlIFBvc3NpYmxlVHlwZXNSZXN1bHREYXRhIHtcclxuICAgICAgICBwb3NzaWJsZVR5cGVzOiB7XHJcbiAgICAgICAgICBba2V5OiBzdHJpbmddOiBzdHJpbmdbXVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBjb25zdCByZXN1bHQ6IFBvc3NpYmxlVHlwZXNSZXN1bHREYXRhID0ge1xyXG4gIFwicG9zc2libGVUeXBlc1wiOiB7XHJcbiAgICBcIkFkZEZ1bGZpbGxtZW50VG9PcmRlclJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQ3JlYXRlRnVsZmlsbG1lbnRFcnJvclwiLFxyXG4gICAgICBcIkVtcHR5T3JkZXJMaW5lU2VsZWN0aW9uRXJyb3JcIixcclxuICAgICAgXCJGdWxmaWxsbWVudFwiLFxyXG4gICAgICBcIkZ1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcclxuICAgICAgXCJJbnN1ZmZpY2llbnRTdG9ja09uSGFuZEVycm9yXCIsXHJcbiAgICAgIFwiSW52YWxpZEZ1bGZpbGxtZW50SGFuZGxlckVycm9yXCIsXHJcbiAgICAgIFwiSXRlbXNBbHJlYWR5RnVsZmlsbGVkRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiQWRkTWFudWFsUGF5bWVudFRvT3JkZXJSZXN1bHRcIjogW1xyXG4gICAgICBcIk1hbnVhbFBheW1lbnRTdGF0ZUVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJcIlxyXG4gICAgXSxcclxuICAgIFwiQXBwbHlDb3Vwb25Db2RlUmVzdWx0XCI6IFtcclxuICAgICAgXCJDb3Vwb25Db2RlRXhwaXJlZEVycm9yXCIsXHJcbiAgICAgIFwiQ291cG9uQ29kZUludmFsaWRFcnJvclwiLFxyXG4gICAgICBcIkNvdXBvbkNvZGVMaW1pdEVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJcIlxyXG4gICAgXSxcclxuICAgIFwiQXV0aGVudGljYXRpb25SZXN1bHRcIjogW1xyXG4gICAgICBcIkN1cnJlbnRVc2VyXCIsXHJcbiAgICAgIFwiSW52YWxpZENyZWRlbnRpYWxzRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiQ2FuY2VsT3JkZXJSZXN1bHRcIjogW1xyXG4gICAgICBcIkNhbmNlbEFjdGl2ZU9yZGVyRXJyb3JcIixcclxuICAgICAgXCJFbXB0eU9yZGVyTGluZVNlbGVjdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiTXVsdGlwbGVPcmRlckVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJcIixcclxuICAgICAgXCJPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiUXVhbnRpdHlUb29HcmVhdEVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIkNhbmNlbFBheW1lbnRSZXN1bHRcIjogW1xyXG4gICAgICBcIkNhbmNlbFBheW1lbnRFcnJvclwiLFxyXG4gICAgICBcIlBheW1lbnRcIixcclxuICAgICAgXCJQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiQ3JlYXRlQXNzZXRSZXN1bHRcIjogW1xyXG4gICAgICBcIkFzc2V0XCIsXHJcbiAgICAgIFwiTWltZVR5cGVFcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJDcmVhdGVDaGFubmVsUmVzdWx0XCI6IFtcclxuICAgICAgXCJDaGFubmVsXCIsXHJcbiAgICAgIFwiTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJDcmVhdGVDdXN0b21lclJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQ3VzdG9tZXJcIixcclxuICAgICAgXCJFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIkNyZWF0ZVByb21vdGlvblJlc3VsdFwiOiBbXHJcbiAgICAgIFwiTWlzc2luZ0NvbmRpdGlvbnNFcnJvclwiLFxyXG4gICAgICBcIlByb21vdGlvblwiXHJcbiAgICBdLFxyXG4gICAgXCJDdXN0b21GaWVsZFwiOiBbXHJcbiAgICAgIFwiQm9vbGVhbkN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIkZsb2F0Q3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJJbnRDdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIkxvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiTG9jYWxlVGV4dEN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiUmVsYXRpb25DdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIlN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiVGV4dEN1c3RvbUZpZWxkQ29uZmlnXCJcclxuICAgIF0sXHJcbiAgICBcIkN1c3RvbUZpZWxkQ29uZmlnXCI6IFtcclxuICAgICAgXCJCb29sZWFuQ3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiRmxvYXRDdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIkludEN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJMb2NhbGVUZXh0Q3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiU3RyaW5nQ3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJUZXh0Q3VzdG9tRmllbGRDb25maWdcIlxyXG4gICAgXSxcclxuICAgIFwiRXJyb3JSZXN1bHRcIjogW1xyXG4gICAgICBcIkFscmVhZHlSZWZ1bmRlZEVycm9yXCIsXHJcbiAgICAgIFwiQ2FuY2VsQWN0aXZlT3JkZXJFcnJvclwiLFxyXG4gICAgICBcIkNhbmNlbFBheW1lbnRFcnJvclwiLFxyXG4gICAgICBcIkNoYW5uZWxEZWZhdWx0TGFuZ3VhZ2VFcnJvclwiLFxyXG4gICAgICBcIkNvdXBvbkNvZGVFeHBpcmVkRXJyb3JcIixcclxuICAgICAgXCJDb3Vwb25Db2RlSW52YWxpZEVycm9yXCIsXHJcbiAgICAgIFwiQ291cG9uQ29kZUxpbWl0RXJyb3JcIixcclxuICAgICAgXCJDcmVhdGVGdWxmaWxsbWVudEVycm9yXCIsXHJcbiAgICAgIFwiRW1haWxBZGRyZXNzQ29uZmxpY3RFcnJvclwiLFxyXG4gICAgICBcIkVtcHR5T3JkZXJMaW5lU2VsZWN0aW9uRXJyb3JcIixcclxuICAgICAgXCJGYWNldEluVXNlRXJyb3JcIixcclxuICAgICAgXCJGdWxmaWxsbWVudFN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiR3Vlc3RDaGVja291dEVycm9yXCIsXHJcbiAgICAgIFwiSW5lbGlnaWJsZVNoaXBwaW5nTWV0aG9kRXJyb3JcIixcclxuICAgICAgXCJJbnN1ZmZpY2llbnRTdG9ja0Vycm9yXCIsXHJcbiAgICAgIFwiSW5zdWZmaWNpZW50U3RvY2tPbkhhbmRFcnJvclwiLFxyXG4gICAgICBcIkludmFsaWRDcmVkZW50aWFsc0Vycm9yXCIsXHJcbiAgICAgIFwiSW52YWxpZEZ1bGZpbGxtZW50SGFuZGxlckVycm9yXCIsXHJcbiAgICAgIFwiSXRlbXNBbHJlYWR5RnVsZmlsbGVkRXJyb3JcIixcclxuICAgICAgXCJMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yXCIsXHJcbiAgICAgIFwiTWFudWFsUGF5bWVudFN0YXRlRXJyb3JcIixcclxuICAgICAgXCJNaW1lVHlwZUVycm9yXCIsXHJcbiAgICAgIFwiTWlzc2luZ0NvbmRpdGlvbnNFcnJvclwiLFxyXG4gICAgICBcIk11bHRpcGxlT3JkZXJFcnJvclwiLFxyXG4gICAgICBcIk5hdGl2ZUF1dGhTdHJhdGVneUVycm9yXCIsXHJcbiAgICAgIFwiTmVnYXRpdmVRdWFudGl0eUVycm9yXCIsXHJcbiAgICAgIFwiTm9BY3RpdmVPcmRlckVycm9yXCIsXHJcbiAgICAgIFwiTm9DaGFuZ2VzU3BlY2lmaWVkRXJyb3JcIixcclxuICAgICAgXCJOb3RoaW5nVG9SZWZ1bmRFcnJvclwiLFxyXG4gICAgICBcIk9yZGVyTGltaXRFcnJvclwiLFxyXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uRXJyb3JcIixcclxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvblN0YXRlRXJyb3JcIixcclxuICAgICAgXCJPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiUGF5bWVudE1ldGhvZE1pc3NpbmdFcnJvclwiLFxyXG4gICAgICBcIlBheW1lbnRPcmRlck1pc21hdGNoRXJyb3JcIixcclxuICAgICAgXCJQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcclxuICAgICAgXCJQcm9kdWN0T3B0aW9uSW5Vc2VFcnJvclwiLFxyXG4gICAgICBcIlF1YW50aXR5VG9vR3JlYXRFcnJvclwiLFxyXG4gICAgICBcIlJlZnVuZE9yZGVyU3RhdGVFcnJvclwiLFxyXG4gICAgICBcIlJlZnVuZFBheW1lbnRJZE1pc3NpbmdFcnJvclwiLFxyXG4gICAgICBcIlJlZnVuZFN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiU2V0dGxlUGF5bWVudEVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIk1vZGlmeU9yZGVyUmVzdWx0XCI6IFtcclxuICAgICAgXCJDb3Vwb25Db2RlRXhwaXJlZEVycm9yXCIsXHJcbiAgICAgIFwiQ291cG9uQ29kZUludmFsaWRFcnJvclwiLFxyXG4gICAgICBcIkNvdXBvbkNvZGVMaW1pdEVycm9yXCIsXHJcbiAgICAgIFwiSW5zdWZmaWNpZW50U3RvY2tFcnJvclwiLFxyXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxyXG4gICAgICBcIk5vQ2hhbmdlc1NwZWNpZmllZEVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJcIixcclxuICAgICAgXCJPcmRlckxpbWl0RXJyb3JcIixcclxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvblN0YXRlRXJyb3JcIixcclxuICAgICAgXCJQYXltZW50TWV0aG9kTWlzc2luZ0Vycm9yXCIsXHJcbiAgICAgIFwiUmVmdW5kUGF5bWVudElkTWlzc2luZ0Vycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIk5hdGl2ZUF1dGhlbnRpY2F0aW9uUmVzdWx0XCI6IFtcclxuICAgICAgXCJDdXJyZW50VXNlclwiLFxyXG4gICAgICBcIkludmFsaWRDcmVkZW50aWFsc0Vycm9yXCIsXHJcbiAgICAgIFwiTmF0aXZlQXV0aFN0cmF0ZWd5RXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiTm9kZVwiOiBbXHJcbiAgICAgIFwiQWRkcmVzc1wiLFxyXG4gICAgICBcIkFkbWluaXN0cmF0b3JcIixcclxuICAgICAgXCJBbGxvY2F0aW9uXCIsXHJcbiAgICAgIFwiQXNzZXRcIixcclxuICAgICAgXCJBdXRoZW50aWNhdGlvbk1ldGhvZFwiLFxyXG4gICAgICBcIkNhbmNlbGxhdGlvblwiLFxyXG4gICAgICBcIkNoYW5uZWxcIixcclxuICAgICAgXCJDb2xsZWN0aW9uXCIsXHJcbiAgICAgIFwiQ291bnRyeVwiLFxyXG4gICAgICBcIkN1c3RvbWVyXCIsXHJcbiAgICAgIFwiQ3VzdG9tZXJHcm91cFwiLFxyXG4gICAgICBcIkZhY2V0XCIsXHJcbiAgICAgIFwiRmFjZXRWYWx1ZVwiLFxyXG4gICAgICBcIkZ1bGZpbGxtZW50XCIsXHJcbiAgICAgIFwiSGlzdG9yeUVudHJ5XCIsXHJcbiAgICAgIFwiSm9iXCIsXHJcbiAgICAgIFwiT3JkZXJcIixcclxuICAgICAgXCJPcmRlckxpbmVcIixcclxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvblwiLFxyXG4gICAgICBcIlBheW1lbnRcIixcclxuICAgICAgXCJQYXltZW50TWV0aG9kXCIsXHJcbiAgICAgIFwiUHJvZHVjdFwiLFxyXG4gICAgICBcIlByb2R1Y3RPcHRpb25cIixcclxuICAgICAgXCJQcm9kdWN0T3B0aW9uR3JvdXBcIixcclxuICAgICAgXCJQcm9kdWN0VmFyaWFudFwiLFxyXG4gICAgICBcIlByb21vdGlvblwiLFxyXG4gICAgICBcIlByb3ZpbmNlXCIsXHJcbiAgICAgIFwiUmVmdW5kXCIsXHJcbiAgICAgIFwiUmVsZWFzZVwiLFxyXG4gICAgICBcIlJldHVyblwiLFxyXG4gICAgICBcIlJvbGVcIixcclxuICAgICAgXCJTYWxlXCIsXHJcbiAgICAgIFwiU2VsbGVyXCIsXHJcbiAgICAgIFwiU2hpcHBpbmdNZXRob2RcIixcclxuICAgICAgXCJTdG9ja0FkanVzdG1lbnRcIixcclxuICAgICAgXCJTdG9ja0xldmVsXCIsXHJcbiAgICAgIFwiU3RvY2tMb2NhdGlvblwiLFxyXG4gICAgICBcIlN1cmNoYXJnZVwiLFxyXG4gICAgICBcIlRhZ1wiLFxyXG4gICAgICBcIlRheENhdGVnb3J5XCIsXHJcbiAgICAgIFwiVGF4UmF0ZVwiLFxyXG4gICAgICBcIlVzZXJcIixcclxuICAgICAgXCJab25lXCJcclxuICAgIF0sXHJcbiAgICBcIlBhZ2luYXRlZExpc3RcIjogW1xyXG4gICAgICBcIkFkbWluaXN0cmF0b3JMaXN0XCIsXHJcbiAgICAgIFwiQXNzZXRMaXN0XCIsXHJcbiAgICAgIFwiQ2hhbm5lbExpc3RcIixcclxuICAgICAgXCJDb2xsZWN0aW9uTGlzdFwiLFxyXG4gICAgICBcIkNvdW50cnlMaXN0XCIsXHJcbiAgICAgIFwiQ3VzdG9tZXJHcm91cExpc3RcIixcclxuICAgICAgXCJDdXN0b21lckxpc3RcIixcclxuICAgICAgXCJGYWNldExpc3RcIixcclxuICAgICAgXCJGYWNldFZhbHVlTGlzdFwiLFxyXG4gICAgICBcIkhpc3RvcnlFbnRyeUxpc3RcIixcclxuICAgICAgXCJKb2JMaXN0XCIsXHJcbiAgICAgIFwiT3JkZXJMaXN0XCIsXHJcbiAgICAgIFwiUGF5bWVudE1ldGhvZExpc3RcIixcclxuICAgICAgXCJQcm9kdWN0TGlzdFwiLFxyXG4gICAgICBcIlByb2R1Y3RWYXJpYW50TGlzdFwiLFxyXG4gICAgICBcIlByb21vdGlvbkxpc3RcIixcclxuICAgICAgXCJQcm92aW5jZUxpc3RcIixcclxuICAgICAgXCJSb2xlTGlzdFwiLFxyXG4gICAgICBcIlNlbGxlckxpc3RcIixcclxuICAgICAgXCJTaGlwcGluZ01ldGhvZExpc3RcIixcclxuICAgICAgXCJTdG9ja0xvY2F0aW9uTGlzdFwiLFxyXG4gICAgICBcIlRhZ0xpc3RcIixcclxuICAgICAgXCJUYXhDYXRlZ29yeUxpc3RcIixcclxuICAgICAgXCJUYXhSYXRlTGlzdFwiLFxyXG4gICAgICBcIlpvbmVMaXN0XCJcclxuICAgIF0sXHJcbiAgICBcIlJlZnVuZE9yZGVyUmVzdWx0XCI6IFtcclxuICAgICAgXCJBbHJlYWR5UmVmdW5kZWRFcnJvclwiLFxyXG4gICAgICBcIk11bHRpcGxlT3JkZXJFcnJvclwiLFxyXG4gICAgICBcIk5vdGhpbmdUb1JlZnVuZEVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxyXG4gICAgICBcIlBheW1lbnRPcmRlck1pc21hdGNoRXJyb3JcIixcclxuICAgICAgXCJRdWFudGl0eVRvb0dyZWF0RXJyb3JcIixcclxuICAgICAgXCJSZWZ1bmRcIixcclxuICAgICAgXCJSZWZ1bmRPcmRlclN0YXRlRXJyb3JcIixcclxuICAgICAgXCJSZWZ1bmRTdGF0ZVRyYW5zaXRpb25FcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJSZWdpb25cIjogW1xyXG4gICAgICBcIkNvdW50cnlcIixcclxuICAgICAgXCJQcm92aW5jZVwiXHJcbiAgICBdLFxyXG4gICAgXCJSZW1vdmVGYWNldEZyb21DaGFubmVsUmVzdWx0XCI6IFtcclxuICAgICAgXCJGYWNldFwiLFxyXG4gICAgICBcIkZhY2V0SW5Vc2VFcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJSZW1vdmVPcHRpb25Hcm91cEZyb21Qcm9kdWN0UmVzdWx0XCI6IFtcclxuICAgICAgXCJQcm9kdWN0XCIsXHJcbiAgICAgIFwiUHJvZHVjdE9wdGlvbkluVXNlRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiUmVtb3ZlT3JkZXJJdGVtc1Jlc3VsdFwiOiBbXHJcbiAgICAgIFwiT3JkZXJcIixcclxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvbkVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIlNlYXJjaFJlc3VsdFByaWNlXCI6IFtcclxuICAgICAgXCJQcmljZVJhbmdlXCIsXHJcbiAgICAgIFwiU2luZ2xlUHJpY2VcIlxyXG4gICAgXSxcclxuICAgIFwiU2V0Q3VzdG9tZXJGb3JEcmFmdE9yZGVyUmVzdWx0XCI6IFtcclxuICAgICAgXCJFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJcIlxyXG4gICAgXSxcclxuICAgIFwiU2V0T3JkZXJTaGlwcGluZ01ldGhvZFJlc3VsdFwiOiBbXHJcbiAgICAgIFwiSW5lbGlnaWJsZVNoaXBwaW5nTWV0aG9kRXJyb3JcIixcclxuICAgICAgXCJOb0FjdGl2ZU9yZGVyRXJyb3JcIixcclxuICAgICAgXCJPcmRlclwiLFxyXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiU2V0dGxlUGF5bWVudFJlc3VsdFwiOiBbXHJcbiAgICAgIFwiT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxyXG4gICAgICBcIlBheW1lbnRcIixcclxuICAgICAgXCJQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcclxuICAgICAgXCJTZXR0bGVQYXltZW50RXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiU2V0dGxlUmVmdW5kUmVzdWx0XCI6IFtcclxuICAgICAgXCJSZWZ1bmRcIixcclxuICAgICAgXCJSZWZ1bmRTdGF0ZVRyYW5zaXRpb25FcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJTdG9ja01vdmVtZW50XCI6IFtcclxuICAgICAgXCJBbGxvY2F0aW9uXCIsXHJcbiAgICAgIFwiQ2FuY2VsbGF0aW9uXCIsXHJcbiAgICAgIFwiUmVsZWFzZVwiLFxyXG4gICAgICBcIlJldHVyblwiLFxyXG4gICAgICBcIlNhbGVcIixcclxuICAgICAgXCJTdG9ja0FkanVzdG1lbnRcIlxyXG4gICAgXSxcclxuICAgIFwiU3RvY2tNb3ZlbWVudEl0ZW1cIjogW1xyXG4gICAgICBcIkFsbG9jYXRpb25cIixcclxuICAgICAgXCJDYW5jZWxsYXRpb25cIixcclxuICAgICAgXCJSZWxlYXNlXCIsXHJcbiAgICAgIFwiUmV0dXJuXCIsXHJcbiAgICAgIFwiU2FsZVwiLFxyXG4gICAgICBcIlN0b2NrQWRqdXN0bWVudFwiXHJcbiAgICBdLFxyXG4gICAgXCJUcmFuc2l0aW9uRnVsZmlsbG1lbnRUb1N0YXRlUmVzdWx0XCI6IFtcclxuICAgICAgXCJGdWxmaWxsbWVudFwiLFxyXG4gICAgICBcIkZ1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiVHJhbnNpdGlvbk9yZGVyVG9TdGF0ZVJlc3VsdFwiOiBbXHJcbiAgICAgIFwiT3JkZXJcIixcclxuICAgICAgXCJPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIlRyYW5zaXRpb25QYXltZW50VG9TdGF0ZVJlc3VsdFwiOiBbXHJcbiAgICAgIFwiUGF5bWVudFwiLFxyXG4gICAgICBcIlBheW1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJVcGRhdGVDaGFubmVsUmVzdWx0XCI6IFtcclxuICAgICAgXCJDaGFubmVsXCIsXHJcbiAgICAgIFwiTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJVcGRhdGVDdXN0b21lclJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQ3VzdG9tZXJcIixcclxuICAgICAgXCJFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIlVwZGF0ZUdsb2JhbFNldHRpbmdzUmVzdWx0XCI6IFtcclxuICAgICAgXCJDaGFubmVsRGVmYXVsdExhbmd1YWdlRXJyb3JcIixcclxuICAgICAgXCJHbG9iYWxTZXR0aW5nc1wiXHJcbiAgICBdLFxyXG4gICAgXCJVcGRhdGVPcmRlckl0ZW1zUmVzdWx0XCI6IFtcclxuICAgICAgXCJJbnN1ZmZpY2llbnRTdG9ja0Vycm9yXCIsXHJcbiAgICAgIFwiTmVnYXRpdmVRdWFudGl0eUVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJcIixcclxuICAgICAgXCJPcmRlckxpbWl0RXJyb3JcIixcclxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvbkVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIlVwZGF0ZVByb21vdGlvblJlc3VsdFwiOiBbXHJcbiAgICAgIFwiTWlzc2luZ0NvbmRpdGlvbnNFcnJvclwiLFxyXG4gICAgICBcIlByb21vdGlvblwiXHJcbiAgICBdXHJcbiAgfVxyXG59O1xyXG4gICAgICBleHBvcnQgZGVmYXVsdCByZXN1bHQ7XHJcbiAgICAiXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// Auto-generated by the set-version.js script.
|
|
2
|
-
export const ADMIN_UI_VERSION = '2.1.
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
export const ADMIN_UI_VERSION = '2.1.9';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvY29tbW9uL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEF1dG8tZ2VuZXJhdGVkIGJ5IHRoZSBzZXQtdmVyc2lvbi5qcyBzY3JpcHQuXG5leHBvcnQgY29uc3QgQURNSU5fVUlfVkVSU0lPTiA9ICcyLjEuOSc7XG4iXX0=
|
|
@@ -35,9 +35,9 @@ export class ChannelDetailComponent extends TypedBaseDetailComponent {
|
|
|
35
35
|
pricesIncludeTax: [false],
|
|
36
36
|
availableLanguageCodes: [[]],
|
|
37
37
|
availableCurrencyCodes: [[]],
|
|
38
|
-
defaultCurrencyCode: [''],
|
|
38
|
+
defaultCurrencyCode: ['', Validators.required],
|
|
39
39
|
defaultShippingZoneId: ['', Validators.required],
|
|
40
|
-
defaultLanguageCode: [undefined],
|
|
40
|
+
defaultLanguageCode: [undefined, Validators.required],
|
|
41
41
|
defaultTaxZoneId: ['', Validators.required],
|
|
42
42
|
sellerId: ['', Validators.required],
|
|
43
43
|
customFields: this.formBuilder.group(getCustomFieldsDefaults(this.customFields)),
|
|
@@ -174,10 +174,10 @@ export class ChannelDetailComponent extends TypedBaseDetailComponent {
|
|
|
174
174
|
.join('');
|
|
175
175
|
}
|
|
176
176
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ChannelDetailComponent, deps: [{ token: i1.ServerConfigService }, { token: i0.ChangeDetectorRef }, { token: i1.DataService }, { token: i2.FormBuilder }, { token: i1.NotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
177
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: ChannelDetailComponent, selector: "vdr-channel-detail", usesInheritance: true, ngImport: i0, template: "<vdr-page-block>\r\n <vdr-action-bar>\r\n <vdr-ab-left></vdr-ab-left>\r\n\r\n <vdr-ab-right>\r\n <vdr-action-bar-items locationId=\"channel-detail\"></vdr-action-bar-items>\r\n <button\r\n class=\"btn btn-primary\"\r\n *ngIf=\"isNew$ | async; else updateButton\"\r\n (click)=\"create()\"\r\n [disabled]=\"!saveButtonEnabled()\"\r\n >\r\n {{ 'common.create' | translate }}\r\n </button>\r\n <ng-template #updateButton>\r\n <button\r\n class=\"btn btn-primary\"\r\n (click)=\"save()\"\r\n *vdrIfPermissions=\"['SuperAdmin', 'UpdateChannel']\"\r\n [disabled]=\"!saveButtonEnabled()\"\r\n >\r\n {{ 'common.update' | translate }}\r\n </button>\r\n </ng-template>\r\n </vdr-ab-right>\r\n </vdr-action-bar>\r\n</vdr-page-block>\r\n\r\n<form class=\"form\" [formGroup]=\"detailForm\">\r\n <vdr-page-detail-layout>\r\n <vdr-page-detail-sidebar>\r\n <vdr-card *ngIf=\"entity$ | async as entity\">\r\n <vdr-page-entity-info [entity]=\"entity\" />\r\n </vdr-card>\r\n </vdr-page-detail-sidebar>\r\n <vdr-page-block>\r\n <vdr-card>\r\n <div class=\"form-grid\">\r\n <vdr-form-field\r\n class=\"form-grid-span\"\r\n *ngIf=\"entity?.code !== DEFAULT_CHANNEL_CODE\"\r\n [label]=\"'common.code' | translate\"\r\n for=\"code\"\r\n >\r\n <input\r\n id=\"code\"\r\n type=\"text\"\r\n [readonly]=\"!(updatePermission | hasPermission)\"\r\n formControlName=\"code\"\r\n />\r\n </vdr-form-field>\r\n <vdr-form-item\r\n class=\"form-grid-span\"\r\n *ngIf=\"entity?.code === DEFAULT_CHANNEL_CODE\"\r\n [label]=\"'common.code' | translate\"\r\n >\r\n {{ entity?.code | channelCodeToLabel | translate }}\r\n </vdr-form-item>\r\n <vdr-form-field [label]=\"'settings.channel-token' | translate\" for=\"token\">\r\n <input\r\n id=\"token\"\r\n type=\"text\"\r\n [readonly]=\"!(updatePermission | hasPermission)\"\r\n formControlName=\"token\"\r\n />\r\n </vdr-form-field>\r\n\r\n <vdr-form-field [label]=\"'common.seller' | translate\" for=\"sellerId\">\r\n <select\r\n name=\"sellerId\"\r\n formControlName=\"sellerId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option selected value style=\"display: none\"></option>\r\n <option *ngFor=\"let seller of sellers$ | async\" [value]=\"seller.id\">\r\n {{ seller.name }}\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <vdr-form-field\r\n [label]=\"'common.available-languages' | translate\"\r\n for=\"availableLanguageCodes\"\r\n >\r\n <vdr-language-code-selector\r\n formControlName=\"availableLanguageCodes\"\r\n [languageCodes]=\"availableLanguageCodes$ | async\"\r\n ></vdr-language-code-selector>\r\n </vdr-form-field>\r\n <vdr-form-field\r\n [label]=\"'common.available-currencies' | translate\"\r\n for=\"availableCurrencyCodes\"\r\n >\r\n <vdr-currency-code-selector\r\n formControlName=\"availableCurrencyCodes\"\r\n ></vdr-currency-code-selector>\r\n </vdr-form-field>\r\n </div>\r\n </vdr-card>\r\n <vdr-card [title]=\"'settings.defaults' | translate\">\r\n <div class=\"form-grid\">\r\n <vdr-form-field [label]=\"'settings.default-currency' | translate\" for=\"defaultTaxZoneId\">\r\n <select\r\n name=\"defaultCurrencyCode\"\r\n formControlName=\"defaultCurrencyCode\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option\r\n *ngFor=\"let code of detailForm.value.availableCurrencyCodes\"\r\n [value]=\"code\"\r\n >\r\n {{ code | localeCurrencyName }}\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'common.default-language' | translate\" for=\"defaultLanguage\">\r\n <select\r\n name=\"defaultLanguageCode\"\r\n formControlName=\"defaultLanguageCode\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option\r\n *ngFor=\"let languageCode of detailForm.value.availableLanguageCodes\"\r\n [value]=\"languageCode\"\r\n >\r\n {{ languageCode | localeLanguageName }} ({{ languageCode | uppercase }})\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <div>\r\n <vdr-form-field\r\n [label]=\"'settings.default-tax-zone' | translate\"\r\n for=\"defaultTaxZoneId\"\r\n >\r\n <vdr-zone-selector\r\n formControlName=\"defaultTaxZoneId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n ></vdr-zone-selector>\r\n </vdr-form-field>\r\n <clr-alert\r\n *ngIf=\"detailForm.value.code && !detailForm.value.defaultTaxZoneId\"\r\n clrAlertType=\"danger\"\r\n [clrAlertClosable]=\"false\"\r\n >\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'error.no-default-tax-zone-set' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n\r\n <div>\r\n <vdr-form-field\r\n [label]=\"'settings.default-shipping-zone' | translate\"\r\n for=\"defaultShippingZoneId\"\r\n >\r\n <vdr-zone-selector\r\n name=\"defaultShippingZoneId\"\r\n formControlName=\"defaultShippingZoneId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n ></vdr-zone-selector>\r\n </vdr-form-field>\r\n <clr-alert\r\n *ngIf=\"detailForm.value.code && !detailForm.value.defaultShippingZoneId\"\r\n clrAlertType=\"warning\"\r\n [clrAlertClosable]=\"false\"\r\n >\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'error.no-default-shipping-zone-set' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n <vdr-form-field\r\n [label]=\"'settings.prices-include-tax' | translate\"\r\n for=\"pricesIncludeTax\"\r\n >\r\n <clr-toggle-wrapper>\r\n <input\r\n type=\"checkbox\"\r\n clrToggle\r\n id=\"pricesIncludeTax\"\r\n formControlName=\"pricesIncludeTax\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n />\r\n </clr-toggle-wrapper>\r\n </vdr-form-field>\r\n </div>\r\n </vdr-card>\r\n <vdr-card\r\n formGroupName=\"customFields\"\r\n *ngIf=\"customFields.length\"\r\n [title]=\"'common.custom-fields' | translate\"\r\n >\r\n <vdr-tabbed-custom-fields\r\n entityName=\"Channel\"\r\n [customFields]=\"customFields\"\r\n [customFieldsFormGroup]=\"detailForm.get('customFields')\"\r\n ></vdr-tabbed-custom-fields>\r\n </vdr-card>\r\n <vdr-custom-detail-component-host\r\n locationId=\"channel-detail\"\r\n [entity$]=\"entity$\"\r\n [detailForm]=\"detailForm\"\r\n ></vdr-custom-detail-component-host>\r\n </vdr-page-block>\r\n </vdr-page-detail-layout>\r\n</form>\r\n", styles: ["clr-alert{max-width:30rem;margin-bottom:12px}\n"], dependencies: [{ kind: "component", type: i3.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertType", "clrAlertIcon", "clrAlertClosed"], outputs: ["clrAlertClosedChange"] }, { kind: "component", type: i3.ClrAlertItem, selector: "clr-alert-item" }, { kind: "directive", type: i3.ClrAlertText, selector: ".alert-text" }, { kind: "directive", type: i3.ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: i3.ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "component", type: i1.ActionBarComponent, selector: "vdr-action-bar" }, { kind: "component", type: i1.ActionBarLeftComponent, selector: "vdr-ab-left", inputs: ["grow"] }, { kind: "component", type: i1.ActionBarRightComponent, selector: "vdr-ab-right", inputs: ["grow"] }, { kind: "component", type: i1.FormFieldComponent, selector: "vdr-form-field", inputs: ["label", "for", "tooltip", "errors", "readOnlyToggle"] }, { kind: "directive", type: i1.FormFieldControlDirective, selector: "input, textarea, select" }, { kind: "component", type: i1.FormItemComponent, selector: "vdr-form-item", inputs: ["label", "tooltip"] }, { kind: "directive", type: i1.IfPermissionsDirective, selector: "[vdrIfPermissions]", inputs: ["vdrIfPermissions", "vdrIfPermissionsElse"] }, { kind: "component", type: i1.ActionBarItemsComponent, selector: "vdr-action-bar-items", inputs: ["locationId"] }, { kind: "directive", type: i1.DisabledDirective, selector: "[vdrDisabled]", inputs: ["vdrDisabled"] }, { kind: "component", type: i1.TabbedCustomFieldsComponent, selector: "vdr-tabbed-custom-fields", inputs: ["entityName", "customFields", "customFieldsFormGroup", "readonly", "compact", "showLabel"] }, { kind: "component", type: i1.CustomDetailComponentHostComponent, selector: "vdr-custom-detail-component-host", inputs: ["locationId", "entity$", "detailForm"] }, { kind: "component", type: i1.PageBlockComponent, selector: "vdr-page-block" }, { kind: "component", type: i1.PageEntityInfoComponent, selector: "vdr-page-entity-info", inputs: ["entity"] }, { kind: "component", type: i1.PageDetailLayoutComponent, selector: "vdr-page-detail-layout" }, { kind: "component", type: i1.PageDetailSidebarComponent, selector: "vdr-page-detail-sidebar" }, { kind: "component", type: i1.CardComponent, selector: "vdr-card", inputs: ["title", "paddingX"] }, { kind: "component", type: i1.ZoneSelectorComponent, selector: "vdr-zone-selector", inputs: ["readonly", "transformControlValueAccessorValue"], outputs: ["selectedValuesChange"] }, { kind: "component", type: i1.CurrencyCodeSelectorComponent, selector: "vdr-currency-code-selector" }, { kind: "component", type: i1.LanguageCodeSelectorComponent, selector: "vdr-language-code-selector", inputs: ["languageCodes"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1.LocaleCurrencyNamePipe, name: "localeCurrencyName" }, { kind: "pipe", type: i1.HasPermissionPipe, name: "hasPermission" }, { kind: "pipe", type: i1.ChannelLabelPipe, name: "channelCodeToLabel" }, { kind: "pipe", type: i1.LocaleLanguageNamePipe, name: "localeLanguageName" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
177
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: ChannelDetailComponent, selector: "vdr-channel-detail", usesInheritance: true, ngImport: i0, template: "<vdr-page-block>\r\n <vdr-action-bar>\r\n <vdr-ab-left></vdr-ab-left>\r\n\r\n <vdr-ab-right>\r\n <vdr-action-bar-items locationId=\"channel-detail\"></vdr-action-bar-items>\r\n <button\r\n class=\"btn btn-primary\"\r\n *ngIf=\"isNew$ | async; else updateButton\"\r\n (click)=\"create()\"\r\n [disabled]=\"!saveButtonEnabled()\"\r\n >\r\n {{ 'common.create' | translate }}\r\n </button>\r\n <ng-template #updateButton>\r\n <button\r\n class=\"btn btn-primary\"\r\n (click)=\"save()\"\r\n *vdrIfPermissions=\"['SuperAdmin', 'UpdateChannel']\"\r\n [disabled]=\"!saveButtonEnabled()\"\r\n >\r\n {{ 'common.update' | translate }}\r\n </button>\r\n </ng-template>\r\n </vdr-ab-right>\r\n </vdr-action-bar>\r\n</vdr-page-block>\r\n\r\n<form class=\"form\" [formGroup]=\"detailForm\">\r\n <vdr-page-detail-layout>\r\n <vdr-page-detail-sidebar>\r\n <vdr-card *ngIf=\"entity$ | async as entity\">\r\n <vdr-page-entity-info [entity]=\"entity\" />\r\n </vdr-card>\r\n </vdr-page-detail-sidebar>\r\n <vdr-page-block>\r\n <vdr-card>\r\n <div class=\"form-grid\">\r\n <vdr-form-field\r\n class=\"form-grid-span\"\r\n *ngIf=\"entity?.code !== DEFAULT_CHANNEL_CODE\"\r\n [label]=\"'common.code' | translate\"\r\n for=\"code\"\r\n >\r\n <input\r\n id=\"code\"\r\n type=\"text\"\r\n [readonly]=\"!(updatePermission | hasPermission)\"\r\n formControlName=\"code\"\r\n />\r\n </vdr-form-field>\r\n <vdr-form-item\r\n class=\"form-grid-span\"\r\n *ngIf=\"entity?.code === DEFAULT_CHANNEL_CODE\"\r\n [label]=\"'common.code' | translate\"\r\n >\r\n {{ entity?.code | channelCodeToLabel | translate }}\r\n </vdr-form-item>\r\n <vdr-form-field [label]=\"'settings.channel-token' | translate\" for=\"token\">\r\n <input\r\n id=\"token\"\r\n type=\"text\"\r\n [readonly]=\"!(updatePermission | hasPermission)\"\r\n formControlName=\"token\"\r\n />\r\n </vdr-form-field>\r\n\r\n <vdr-form-field [label]=\"'common.seller' | translate\" for=\"sellerId\">\r\n <select\r\n name=\"sellerId\"\r\n formControlName=\"sellerId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option selected value style=\"display: none\"></option>\r\n <option *ngFor=\"let seller of sellers$ | async\" [value]=\"seller.id\">\r\n {{ seller.name }}\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <vdr-form-field\r\n [label]=\"'common.available-languages' | translate\"\r\n for=\"availableLanguageCodes\"\r\n >\r\n <vdr-language-code-selector\r\n formControlName=\"availableLanguageCodes\"\r\n [languageCodes]=\"availableLanguageCodes$ | async\"\r\n ></vdr-language-code-selector>\r\n </vdr-form-field>\r\n <vdr-form-field\r\n [label]=\"'common.available-currencies' | translate\"\r\n for=\"availableCurrencyCodes\"\r\n >\r\n <vdr-currency-code-selector\r\n formControlName=\"availableCurrencyCodes\"\r\n ></vdr-currency-code-selector>\r\n </vdr-form-field>\r\n </div>\r\n </vdr-card>\r\n <vdr-card [title]=\"'settings.defaults' | translate\">\r\n <div class=\"form-grid\">\r\n <vdr-form-field [label]=\"'common.default-language' | translate\" for=\"defaultLanguage\">\r\n <select\r\n name=\"defaultLanguageCode\"\r\n formControlName=\"defaultLanguageCode\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option\r\n *ngFor=\"let languageCode of detailForm.value.availableLanguageCodes\"\r\n [value]=\"languageCode\"\r\n >\r\n {{ languageCode | localeLanguageName }} ({{ languageCode | uppercase }})\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'settings.default-currency' | translate\" for=\"defaultCurrency\">\r\n <select\r\n name=\"defaultCurrencyCode\"\r\n formControlName=\"defaultCurrencyCode\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option\r\n *ngFor=\"let code of detailForm.value.availableCurrencyCodes\"\r\n [value]=\"code\"\r\n >\r\n {{ code | localeCurrencyName }}\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <div>\r\n <vdr-form-field\r\n [label]=\"'settings.default-tax-zone' | translate\"\r\n for=\"defaultTaxZoneId\"\r\n >\r\n <vdr-zone-selector\r\n formControlName=\"defaultTaxZoneId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n ></vdr-zone-selector>\r\n </vdr-form-field>\r\n <clr-alert\r\n *ngIf=\"detailForm.value.code && !detailForm.value.defaultTaxZoneId\"\r\n clrAlertType=\"danger\"\r\n [clrAlertClosable]=\"false\"\r\n >\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'error.no-default-tax-zone-set' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n\r\n <div>\r\n <vdr-form-field\r\n [label]=\"'settings.default-shipping-zone' | translate\"\r\n for=\"defaultShippingZoneId\"\r\n >\r\n <vdr-zone-selector\r\n name=\"defaultShippingZoneId\"\r\n formControlName=\"defaultShippingZoneId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n ></vdr-zone-selector>\r\n </vdr-form-field>\r\n <clr-alert\r\n *ngIf=\"detailForm.value.code && !detailForm.value.defaultShippingZoneId\"\r\n clrAlertType=\"danger\"\r\n [clrAlertClosable]=\"false\"\r\n >\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'error.no-default-shipping-zone-set' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n <vdr-form-field\r\n [label]=\"'settings.prices-include-tax' | translate\"\r\n for=\"pricesIncludeTax\"\r\n >\r\n <clr-toggle-wrapper>\r\n <input\r\n type=\"checkbox\"\r\n clrToggle\r\n id=\"pricesIncludeTax\"\r\n formControlName=\"pricesIncludeTax\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n />\r\n </clr-toggle-wrapper>\r\n </vdr-form-field>\r\n </div>\r\n </vdr-card>\r\n <vdr-card\r\n formGroupName=\"customFields\"\r\n *ngIf=\"customFields.length\"\r\n [title]=\"'common.custom-fields' | translate\"\r\n >\r\n <vdr-tabbed-custom-fields\r\n entityName=\"Channel\"\r\n [customFields]=\"customFields\"\r\n [customFieldsFormGroup]=\"detailForm.get('customFields')\"\r\n ></vdr-tabbed-custom-fields>\r\n </vdr-card>\r\n <vdr-custom-detail-component-host\r\n locationId=\"channel-detail\"\r\n [entity$]=\"entity$\"\r\n [detailForm]=\"detailForm\"\r\n ></vdr-custom-detail-component-host>\r\n </vdr-page-block>\r\n </vdr-page-detail-layout>\r\n</form>\r\n", styles: ["clr-alert{max-width:30rem;margin-bottom:12px}\n"], dependencies: [{ kind: "component", type: i3.ClrAlert, selector: "clr-alert", inputs: ["clrAlertSizeSmall", "clrAlertClosable", "clrAlertAppLevel", "clrCloseButtonAriaLabel", "clrAlertType", "clrAlertIcon", "clrAlertClosed"], outputs: ["clrAlertClosedChange"] }, { kind: "component", type: i3.ClrAlertItem, selector: "clr-alert-item" }, { kind: "directive", type: i3.ClrAlertText, selector: ".alert-text" }, { kind: "directive", type: i3.ClrCheckbox, selector: "[clrCheckbox],[clrToggle]" }, { kind: "component", type: i3.ClrCheckboxWrapper, selector: "clr-checkbox-wrapper,clr-toggle-wrapper" }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "component", type: i1.ActionBarComponent, selector: "vdr-action-bar" }, { kind: "component", type: i1.ActionBarLeftComponent, selector: "vdr-ab-left", inputs: ["grow"] }, { kind: "component", type: i1.ActionBarRightComponent, selector: "vdr-ab-right", inputs: ["grow"] }, { kind: "component", type: i1.FormFieldComponent, selector: "vdr-form-field", inputs: ["label", "for", "tooltip", "errors", "readOnlyToggle"] }, { kind: "directive", type: i1.FormFieldControlDirective, selector: "input, textarea, select" }, { kind: "component", type: i1.FormItemComponent, selector: "vdr-form-item", inputs: ["label", "tooltip"] }, { kind: "directive", type: i1.IfPermissionsDirective, selector: "[vdrIfPermissions]", inputs: ["vdrIfPermissions", "vdrIfPermissionsElse"] }, { kind: "component", type: i1.ActionBarItemsComponent, selector: "vdr-action-bar-items", inputs: ["locationId"] }, { kind: "directive", type: i1.DisabledDirective, selector: "[vdrDisabled]", inputs: ["vdrDisabled"] }, { kind: "component", type: i1.TabbedCustomFieldsComponent, selector: "vdr-tabbed-custom-fields", inputs: ["entityName", "customFields", "customFieldsFormGroup", "readonly", "compact", "showLabel"] }, { kind: "component", type: i1.CustomDetailComponentHostComponent, selector: "vdr-custom-detail-component-host", inputs: ["locationId", "entity$", "detailForm"] }, { kind: "component", type: i1.PageBlockComponent, selector: "vdr-page-block" }, { kind: "component", type: i1.PageEntityInfoComponent, selector: "vdr-page-entity-info", inputs: ["entity"] }, { kind: "component", type: i1.PageDetailLayoutComponent, selector: "vdr-page-detail-layout" }, { kind: "component", type: i1.PageDetailSidebarComponent, selector: "vdr-page-detail-sidebar" }, { kind: "component", type: i1.CardComponent, selector: "vdr-card", inputs: ["title", "paddingX"] }, { kind: "component", type: i1.ZoneSelectorComponent, selector: "vdr-zone-selector", inputs: ["readonly", "transformControlValueAccessorValue"], outputs: ["selectedValuesChange"] }, { kind: "component", type: i1.CurrencyCodeSelectorComponent, selector: "vdr-currency-code-selector" }, { kind: "component", type: i1.LanguageCodeSelectorComponent, selector: "vdr-language-code-selector", inputs: ["languageCodes"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "pipe", type: i1.LocaleCurrencyNamePipe, name: "localeCurrencyName" }, { kind: "pipe", type: i1.HasPermissionPipe, name: "hasPermission" }, { kind: "pipe", type: i1.ChannelLabelPipe, name: "channelCodeToLabel" }, { kind: "pipe", type: i1.LocaleLanguageNamePipe, name: "localeLanguageName" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
178
178
|
}
|
|
179
179
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ChannelDetailComponent, decorators: [{
|
|
180
180
|
type: Component,
|
|
181
|
-
args: [{ selector: 'vdr-channel-detail', changeDetection: ChangeDetectionStrategy.OnPush, template: "<vdr-page-block>\r\n <vdr-action-bar>\r\n <vdr-ab-left></vdr-ab-left>\r\n\r\n <vdr-ab-right>\r\n <vdr-action-bar-items locationId=\"channel-detail\"></vdr-action-bar-items>\r\n <button\r\n class=\"btn btn-primary\"\r\n *ngIf=\"isNew$ | async; else updateButton\"\r\n (click)=\"create()\"\r\n [disabled]=\"!saveButtonEnabled()\"\r\n >\r\n {{ 'common.create' | translate }}\r\n </button>\r\n <ng-template #updateButton>\r\n <button\r\n class=\"btn btn-primary\"\r\n (click)=\"save()\"\r\n *vdrIfPermissions=\"['SuperAdmin', 'UpdateChannel']\"\r\n [disabled]=\"!saveButtonEnabled()\"\r\n >\r\n {{ 'common.update' | translate }}\r\n </button>\r\n </ng-template>\r\n </vdr-ab-right>\r\n </vdr-action-bar>\r\n</vdr-page-block>\r\n\r\n<form class=\"form\" [formGroup]=\"detailForm\">\r\n <vdr-page-detail-layout>\r\n <vdr-page-detail-sidebar>\r\n <vdr-card *ngIf=\"entity$ | async as entity\">\r\n <vdr-page-entity-info [entity]=\"entity\" />\r\n </vdr-card>\r\n </vdr-page-detail-sidebar>\r\n <vdr-page-block>\r\n <vdr-card>\r\n <div class=\"form-grid\">\r\n <vdr-form-field\r\n class=\"form-grid-span\"\r\n *ngIf=\"entity?.code !== DEFAULT_CHANNEL_CODE\"\r\n [label]=\"'common.code' | translate\"\r\n for=\"code\"\r\n >\r\n <input\r\n id=\"code\"\r\n type=\"text\"\r\n [readonly]=\"!(updatePermission | hasPermission)\"\r\n formControlName=\"code\"\r\n />\r\n </vdr-form-field>\r\n <vdr-form-item\r\n class=\"form-grid-span\"\r\n *ngIf=\"entity?.code === DEFAULT_CHANNEL_CODE\"\r\n [label]=\"'common.code' | translate\"\r\n >\r\n {{ entity?.code | channelCodeToLabel | translate }}\r\n </vdr-form-item>\r\n <vdr-form-field [label]=\"'settings.channel-token' | translate\" for=\"token\">\r\n <input\r\n id=\"token\"\r\n type=\"text\"\r\n [readonly]=\"!(updatePermission | hasPermission)\"\r\n formControlName=\"token\"\r\n />\r\n </vdr-form-field>\r\n\r\n <vdr-form-field [label]=\"'common.seller' | translate\" for=\"sellerId\">\r\n <select\r\n name=\"sellerId\"\r\n formControlName=\"sellerId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option selected value style=\"display: none\"></option>\r\n <option *ngFor=\"let seller of sellers$ | async\" [value]=\"seller.id\">\r\n {{ seller.name }}\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <vdr-form-field\r\n [label]=\"'common.available-languages' | translate\"\r\n for=\"availableLanguageCodes\"\r\n >\r\n <vdr-language-code-selector\r\n formControlName=\"availableLanguageCodes\"\r\n [languageCodes]=\"availableLanguageCodes$ | async\"\r\n ></vdr-language-code-selector>\r\n </vdr-form-field>\r\n <vdr-form-field\r\n [label]=\"'common.available-currencies' | translate\"\r\n for=\"availableCurrencyCodes\"\r\n >\r\n <vdr-currency-code-selector\r\n formControlName=\"availableCurrencyCodes\"\r\n ></vdr-currency-code-selector>\r\n </vdr-form-field>\r\n </div>\r\n </vdr-card>\r\n <vdr-card [title]=\"'settings.defaults' | translate\">\r\n <div class=\"form-grid\">\r\n <vdr-form-field [label]=\"'settings.default-currency' | translate\" for=\"defaultTaxZoneId\">\r\n <select\r\n name=\"defaultCurrencyCode\"\r\n formControlName=\"defaultCurrencyCode\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option\r\n *ngFor=\"let code of detailForm.value.availableCurrencyCodes\"\r\n [value]=\"code\"\r\n >\r\n {{ code | localeCurrencyName }}\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'common.default-language' | translate\" for=\"defaultLanguage\">\r\n <select\r\n name=\"defaultLanguageCode\"\r\n formControlName=\"defaultLanguageCode\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option\r\n *ngFor=\"let languageCode of detailForm.value.availableLanguageCodes\"\r\n [value]=\"languageCode\"\r\n >\r\n {{ languageCode | localeLanguageName }} ({{ languageCode | uppercase }})\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <div>\r\n <vdr-form-field\r\n [label]=\"'settings.default-tax-zone' | translate\"\r\n for=\"defaultTaxZoneId\"\r\n >\r\n <vdr-zone-selector\r\n formControlName=\"defaultTaxZoneId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n ></vdr-zone-selector>\r\n </vdr-form-field>\r\n <clr-alert\r\n *ngIf=\"detailForm.value.code && !detailForm.value.defaultTaxZoneId\"\r\n clrAlertType=\"danger\"\r\n [clrAlertClosable]=\"false\"\r\n >\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'error.no-default-tax-zone-set' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n\r\n <div>\r\n <vdr-form-field\r\n [label]=\"'settings.default-shipping-zone' | translate\"\r\n for=\"defaultShippingZoneId\"\r\n >\r\n <vdr-zone-selector\r\n name=\"defaultShippingZoneId\"\r\n formControlName=\"defaultShippingZoneId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n ></vdr-zone-selector>\r\n </vdr-form-field>\r\n <clr-alert\r\n *ngIf=\"detailForm.value.code && !detailForm.value.defaultShippingZoneId\"\r\n clrAlertType=\"warning\"\r\n [clrAlertClosable]=\"false\"\r\n >\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'error.no-default-shipping-zone-set' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n <vdr-form-field\r\n [label]=\"'settings.prices-include-tax' | translate\"\r\n for=\"pricesIncludeTax\"\r\n >\r\n <clr-toggle-wrapper>\r\n <input\r\n type=\"checkbox\"\r\n clrToggle\r\n id=\"pricesIncludeTax\"\r\n formControlName=\"pricesIncludeTax\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n />\r\n </clr-toggle-wrapper>\r\n </vdr-form-field>\r\n </div>\r\n </vdr-card>\r\n <vdr-card\r\n formGroupName=\"customFields\"\r\n *ngIf=\"customFields.length\"\r\n [title]=\"'common.custom-fields' | translate\"\r\n >\r\n <vdr-tabbed-custom-fields\r\n entityName=\"Channel\"\r\n [customFields]=\"customFields\"\r\n [customFieldsFormGroup]=\"detailForm.get('customFields')\"\r\n ></vdr-tabbed-custom-fields>\r\n </vdr-card>\r\n <vdr-custom-detail-component-host\r\n locationId=\"channel-detail\"\r\n [entity$]=\"entity$\"\r\n [detailForm]=\"detailForm\"\r\n ></vdr-custom-detail-component-host>\r\n </vdr-page-block>\r\n </vdr-page-detail-layout>\r\n</form>\r\n", styles: ["clr-alert{max-width:30rem;margin-bottom:12px}\n"] }]
|
|
181
|
+
args: [{ selector: 'vdr-channel-detail', changeDetection: ChangeDetectionStrategy.OnPush, template: "<vdr-page-block>\r\n <vdr-action-bar>\r\n <vdr-ab-left></vdr-ab-left>\r\n\r\n <vdr-ab-right>\r\n <vdr-action-bar-items locationId=\"channel-detail\"></vdr-action-bar-items>\r\n <button\r\n class=\"btn btn-primary\"\r\n *ngIf=\"isNew$ | async; else updateButton\"\r\n (click)=\"create()\"\r\n [disabled]=\"!saveButtonEnabled()\"\r\n >\r\n {{ 'common.create' | translate }}\r\n </button>\r\n <ng-template #updateButton>\r\n <button\r\n class=\"btn btn-primary\"\r\n (click)=\"save()\"\r\n *vdrIfPermissions=\"['SuperAdmin', 'UpdateChannel']\"\r\n [disabled]=\"!saveButtonEnabled()\"\r\n >\r\n {{ 'common.update' | translate }}\r\n </button>\r\n </ng-template>\r\n </vdr-ab-right>\r\n </vdr-action-bar>\r\n</vdr-page-block>\r\n\r\n<form class=\"form\" [formGroup]=\"detailForm\">\r\n <vdr-page-detail-layout>\r\n <vdr-page-detail-sidebar>\r\n <vdr-card *ngIf=\"entity$ | async as entity\">\r\n <vdr-page-entity-info [entity]=\"entity\" />\r\n </vdr-card>\r\n </vdr-page-detail-sidebar>\r\n <vdr-page-block>\r\n <vdr-card>\r\n <div class=\"form-grid\">\r\n <vdr-form-field\r\n class=\"form-grid-span\"\r\n *ngIf=\"entity?.code !== DEFAULT_CHANNEL_CODE\"\r\n [label]=\"'common.code' | translate\"\r\n for=\"code\"\r\n >\r\n <input\r\n id=\"code\"\r\n type=\"text\"\r\n [readonly]=\"!(updatePermission | hasPermission)\"\r\n formControlName=\"code\"\r\n />\r\n </vdr-form-field>\r\n <vdr-form-item\r\n class=\"form-grid-span\"\r\n *ngIf=\"entity?.code === DEFAULT_CHANNEL_CODE\"\r\n [label]=\"'common.code' | translate\"\r\n >\r\n {{ entity?.code | channelCodeToLabel | translate }}\r\n </vdr-form-item>\r\n <vdr-form-field [label]=\"'settings.channel-token' | translate\" for=\"token\">\r\n <input\r\n id=\"token\"\r\n type=\"text\"\r\n [readonly]=\"!(updatePermission | hasPermission)\"\r\n formControlName=\"token\"\r\n />\r\n </vdr-form-field>\r\n\r\n <vdr-form-field [label]=\"'common.seller' | translate\" for=\"sellerId\">\r\n <select\r\n name=\"sellerId\"\r\n formControlName=\"sellerId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option selected value style=\"display: none\"></option>\r\n <option *ngFor=\"let seller of sellers$ | async\" [value]=\"seller.id\">\r\n {{ seller.name }}\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <vdr-form-field\r\n [label]=\"'common.available-languages' | translate\"\r\n for=\"availableLanguageCodes\"\r\n >\r\n <vdr-language-code-selector\r\n formControlName=\"availableLanguageCodes\"\r\n [languageCodes]=\"availableLanguageCodes$ | async\"\r\n ></vdr-language-code-selector>\r\n </vdr-form-field>\r\n <vdr-form-field\r\n [label]=\"'common.available-currencies' | translate\"\r\n for=\"availableCurrencyCodes\"\r\n >\r\n <vdr-currency-code-selector\r\n formControlName=\"availableCurrencyCodes\"\r\n ></vdr-currency-code-selector>\r\n </vdr-form-field>\r\n </div>\r\n </vdr-card>\r\n <vdr-card [title]=\"'settings.defaults' | translate\">\r\n <div class=\"form-grid\">\r\n <vdr-form-field [label]=\"'common.default-language' | translate\" for=\"defaultLanguage\">\r\n <select\r\n name=\"defaultLanguageCode\"\r\n formControlName=\"defaultLanguageCode\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option\r\n *ngFor=\"let languageCode of detailForm.value.availableLanguageCodes\"\r\n [value]=\"languageCode\"\r\n >\r\n {{ languageCode | localeLanguageName }} ({{ languageCode | uppercase }})\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'settings.default-currency' | translate\" for=\"defaultCurrency\">\r\n <select\r\n name=\"defaultCurrencyCode\"\r\n formControlName=\"defaultCurrencyCode\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n >\r\n <option\r\n *ngFor=\"let code of detailForm.value.availableCurrencyCodes\"\r\n [value]=\"code\"\r\n >\r\n {{ code | localeCurrencyName }}\r\n </option>\r\n </select>\r\n </vdr-form-field>\r\n <div>\r\n <vdr-form-field\r\n [label]=\"'settings.default-tax-zone' | translate\"\r\n for=\"defaultTaxZoneId\"\r\n >\r\n <vdr-zone-selector\r\n formControlName=\"defaultTaxZoneId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n ></vdr-zone-selector>\r\n </vdr-form-field>\r\n <clr-alert\r\n *ngIf=\"detailForm.value.code && !detailForm.value.defaultTaxZoneId\"\r\n clrAlertType=\"danger\"\r\n [clrAlertClosable]=\"false\"\r\n >\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'error.no-default-tax-zone-set' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n\r\n <div>\r\n <vdr-form-field\r\n [label]=\"'settings.default-shipping-zone' | translate\"\r\n for=\"defaultShippingZoneId\"\r\n >\r\n <vdr-zone-selector\r\n name=\"defaultShippingZoneId\"\r\n formControlName=\"defaultShippingZoneId\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n ></vdr-zone-selector>\r\n </vdr-form-field>\r\n <clr-alert\r\n *ngIf=\"detailForm.value.code && !detailForm.value.defaultShippingZoneId\"\r\n clrAlertType=\"danger\"\r\n [clrAlertClosable]=\"false\"\r\n >\r\n <clr-alert-item>\r\n <span class=\"alert-text\">\r\n {{ 'error.no-default-shipping-zone-set' | translate }}\r\n </span>\r\n </clr-alert-item>\r\n </clr-alert>\r\n </div>\r\n <vdr-form-field\r\n [label]=\"'settings.prices-include-tax' | translate\"\r\n for=\"pricesIncludeTax\"\r\n >\r\n <clr-toggle-wrapper>\r\n <input\r\n type=\"checkbox\"\r\n clrToggle\r\n id=\"pricesIncludeTax\"\r\n formControlName=\"pricesIncludeTax\"\r\n [vdrDisabled]=\"!(updatePermission | hasPermission)\"\r\n />\r\n </clr-toggle-wrapper>\r\n </vdr-form-field>\r\n </div>\r\n </vdr-card>\r\n <vdr-card\r\n formGroupName=\"customFields\"\r\n *ngIf=\"customFields.length\"\r\n [title]=\"'common.custom-fields' | translate\"\r\n >\r\n <vdr-tabbed-custom-fields\r\n entityName=\"Channel\"\r\n [customFields]=\"customFields\"\r\n [customFieldsFormGroup]=\"detailForm.get('customFields')\"\r\n ></vdr-tabbed-custom-fields>\r\n </vdr-card>\r\n <vdr-custom-detail-component-host\r\n locationId=\"channel-detail\"\r\n [entity$]=\"entity$\"\r\n [detailForm]=\"detailForm\"\r\n ></vdr-custom-detail-component-host>\r\n </vdr-page-block>\r\n </vdr-page-detail-layout>\r\n</form>\r\n", styles: ["clr-alert{max-width:30rem;margin-bottom:12px}\n"] }]
|
|
182
182
|
}], ctorParameters: function () { return [{ type: i1.ServerConfigService }, { type: i0.ChangeDetectorRef }, { type: i1.DataService }, { type: i2.FormBuilder }, { type: i1.NotificationService }]; } });
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbC1kZXRhaWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXR0aW5ncy9zcmMvY29tcG9uZW50cy9jaGFubmVsLWRldGFpbC9jaGFubmVsLWRldGFpbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NldHRpbmdzL3NyYy9jb21wb25lbnRzL2NoYW5uZWwtZGV0YWlsL2NoYW5uZWwtZGV0YWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0RSxPQUFPLEVBQ0gsZ0JBQWdCLEVBTWhCLHVCQUF1QixFQUl2QixVQUFVLEVBRVYsd0JBQXdCLEdBRTNCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBRXJELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQTs7Ozs7O01BTS9CLGdCQUFnQjtDQUNyQixDQUFDO0FBUUYsTUFBTSxPQUFPLHNCQUNULFNBQVEsd0JBQW9FO0lBd0I1RSxZQUNjLG1CQUF3QyxFQUMxQyxjQUFpQyxFQUMvQixXQUF3QixFQUMxQixXQUF3QixFQUN4QixtQkFBd0M7UUFFaEQsS0FBSyxFQUFFLENBQUM7UUFORSx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFC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QUFDLE1BQU0sRUFBRTtZQUMxQixJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDbkc7UUFDRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLEtBQUssb0JBQW9CLEVBQUU7WUFDdEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDaEQsSUFBSSxXQUFXLEVBQUU7Z0JBQ2IsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ3pCO1NBQ0o7SUFDTCxDQUFDO0lBRU8sYUFBYTtRQUNqQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQ3hELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQzthQUN6QyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEIsQ0FBQzs4R0FoTVEsc0JBQXNCO2tHQUF0QixzQkFBc0IsaUZDdkNuQyxvdVVBaU5BOzsyRkQxS2Esc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNJLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBtYXJrZXIgYXMgXyB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcic7XHJcbmltcG9ydCB7XHJcbiAgICBDSEFOTkVMX0ZSQUdNRU5ULFxyXG4gICAgQ2hhbm5lbEZyYWdtZW50LFxyXG4gICAgQ3JlYXRlQ2hhbm5lbElucHV0LFxyXG4gICAgQ3VycmVuY3lDb2RlLFxyXG4gICAgRGF0YVNlcnZpY2UsXHJcbiAgICBHZXRDaGFubmVsRGV0YWlsRG9jdW1lbnQsXHJcbiAgICBnZXRDdXN0b21GaWVsZHNEZWZhdWx0cyxcclxuICAgIEdldFNlbGxlcnNRdWVyeSxcclxuICAgIExhbmd1YWdlQ29kZSxcclxuICAgIE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBQZXJtaXNzaW9uLFxyXG4gICAgU2VydmVyQ29uZmlnU2VydmljZSxcclxuICAgIFR5cGVkQmFzZURldGFpbENvbXBvbmVudCxcclxuICAgIFVwZGF0ZUNoYW5uZWxJbnB1dCxcclxufSBmcm9tICdAdmVuZHVyZS9hZG1pbi11aS9jb3JlJztcclxuaW1wb3J0IHsgREVGQVVMVF9DSEFOTkVMX0NPREUgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NoYXJlZC1jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBncWwgfSBmcm9tICdhcG9sbG8tYW5ndWxhcic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwLCBtZXJnZU1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmV4cG9ydCBjb25zdCBHRVRfQ0hBTk5FTF9ERVRBSUwgPSBncWxgXHJcbiAgICBxdWVyeSBHZXRDaGFubmVsRGV0YWlsKCRpZDogSUQhKSB7XHJcbiAgICAgICAgY2hhbm5lbChpZDogJGlkKSB7XHJcbiAgICAgICAgICAgIC4uLkNoYW5uZWxcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAke0NIQU5ORUxfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAndmRyLWNoYW5uZWwtZGV0YWlsJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGFubmVsLWRldGFpbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9jaGFubmVsLWRldGFpbC5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGFubmVsRGV0YWlsQ29tcG9uZW50XHJcbiAgICBleHRlbmRzIFR5cGVkQmFzZURldGFpbENvbXBvbmVudDx0eXBlb2YgR2V0Q2hhbm5lbERldGFpbERvY3VtZW50LCAnY2hhbm5lbCc+XHJcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95XHJcbntcclxuICAgIERFRkFVTFRfQ0hBTk5FTF9DT0RFID0gREVGQVVMVF9DSEFOTkVMX0NPREU7XHJcbiAgICBjdXN0b21GaWVsZHMgPSB0aGlzLmdldEN1c3RvbUZpZWxkQ29uZmlnKCdDaGFubmVsJyk7XHJcbiAgICAvLyB6b25lcyQ6IE9ic2VydmFibGU8QXJyYXk8SXRlbU9mPEdldFpvbmVMaXN0UXVlcnksICd6b25lcyc+Pj47XHJcbiAgICBzZWxsZXJzJDogT2JzZXJ2YWJsZTxHZXRTZWxsZXJzUXVlcnlbJ3NlbGxlcnMnXVsnaXRlbXMnXT47XHJcbiAgICBkZXRhaWxGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgICAgY29kZTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICB0b2tlbjogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBwcmljZXNJbmNsdWRlVGF4OiBbZmFsc2VdLFxyXG4gICAgICAgIGF2YWlsYWJsZUxhbmd1YWdlQ29kZXM6IFtbXSBhcyBzdHJpbmdbXV0sXHJcbiAgICAgICAgYXZhaWxhYmxlQ3VycmVuY3lDb2RlczogW1tdIGFzIHN0cmluZ1tdXSxcclxuICAgICAgICBkZWZhdWx0Q3VycmVuY3lDb2RlOiBbJycgYXMgQ3VycmVuY3lDb2RlXSxcclxuICAgICAgICBkZWZhdWx0U2hpcHBpbmdab25lSWQ6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgZGVmYXVsdExhbmd1YWdlQ29kZTogW3VuZGVmaW5lZCBhcyBMYW5ndWFnZUNvZGUgfCB1bmRlZmluZWRdLFxyXG4gICAgICAgIGRlZmF1bHRUYXhab25lSWQ6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgc2VsbGVySWQ6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgY3VzdG9tRmllbGRzOiB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKGdldEN1c3RvbUZpZWxkc0RlZmF1bHRzKHRoaXMuY3VzdG9tRmllbGRzKSksXHJcbiAgICB9KTtcclxuXHJcbiAgICBhdmFpbGFibGVMYW5ndWFnZUNvZGVzJDogT2JzZXJ2YWJsZTxMYW5ndWFnZUNvZGVbXT47XHJcbiAgICByZWFkb25seSB1cGRhdGVQZXJtaXNzaW9uID0gW1Blcm1pc3Npb24uU3VwZXJBZG1pbiwgUGVybWlzc2lvbi5VcGRhdGVDaGFubmVsLCBQZXJtaXNzaW9uLkNyZWF0ZUNoYW5uZWxdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByb3RlY3RlZCBzZXJ2ZXJDb25maWdTZXJ2aWNlOiBTZXJ2ZXJDb25maWdTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByb3RlY3RlZCBkYXRhU2VydmljZTogRGF0YVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBub3RpZmljYXRpb25TZXJ2aWNlOiBOb3RpZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgICAgICAvLyB0aGlzLnpvbmVzJCA9IHRoaXMuZGF0YVNlcnZpY2Uuc2V0dGluZ3MuZ2V0Wm9uZXMoeyB0YWtlOiAxMDAgfSkubWFwU2luZ2xlKGRhdGEgPT4gZGF0YS56b25lcy5pdGVtcyk7XHJcbiAgICAgICAgLy8gVE9ETzogbWFrZSB0aGlzIGxhenktbG9hZGVkIGF1dG9jb21wbGV0ZVxyXG4gICAgICAgIHRoaXMuc2VsbGVycyQgPSB0aGlzLmRhdGFTZXJ2aWNlLnNldHRpbmdzLmdldFNlbGxlckxpc3QoKS5tYXBTaW5nbGUoZGF0YSA9PiBkYXRhLnNlbGxlcnMuaXRlbXMpO1xyXG4gICAgICAgIHRoaXMuYXZhaWxhYmxlTGFuZ3VhZ2VDb2RlcyQgPSB0aGlzLnNlcnZlckNvbmZpZ1NlcnZpY2UuZ2V0QXZhaWxhYmxlTGFuZ3VhZ2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5kZXN0cm95KCk7XHJcbiAgICB9XHJcblxyXG4gICAgc2F2ZUJ1dHRvbkVuYWJsZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGV0YWlsRm9ybS5kaXJ0eSAmJiB0aGlzLmRldGFpbEZvcm0udmFsaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgY3JlYXRlKCkge1xyXG4gICAgICAgIGlmICghdGhpcy5kZXRhaWxGb3JtLmRpcnR5KSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3Qge1xyXG4gICAgICAgICAgICBjb2RlLFxyXG4gICAgICAgICAgICB0b2tlbixcclxuICAgICAgICAgICAgZGVmYXVsdExhbmd1YWdlQ29kZSxcclxuICAgICAgICAgICAgcHJpY2VzSW5jbHVkZVRheCxcclxuICAgICAgICAgICAgZGVmYXVsdEN1cnJlbmN5Q29kZSxcclxuICAgICAgICAgICAgZGVmYXVsdFNoaXBwaW5nWm9uZUlkLFxyXG4gICAgICAgICAgICBkZWZhdWx0VGF4Wm9uZUlkLFxyXG4gICAgICAgICAgICBjdXN0b21GaWVsZHMsXHJcbiAgICAgICAgICAgIHNlbGxlcklkLFxyXG4gICAgICAgIH0gPSB0aGlzLmRldGFpbEZvcm0udmFsdWU7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAhY29kZSB8fFxyXG4gICAgICAgICAgICAhdG9rZW4gfHxcclxuICAgICAgICAgICAgIWRlZmF1bHRMYW5ndWFnZUNvZGUgfHxcclxuICAgICAgICAgICAgIWRlZmF1bHRDdXJyZW5jeUNvZGUgfHxcclxuICAgICAgICAgICAgIWRlZmF1bHRTaGlwcGluZ1pvbmVJZCB8fFxyXG4gICAgICAgICAgICAhZGVmYXVsdFRheFpvbmVJZFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGlucHV0OiBDcmVhdGVDaGFubmVsSW5wdXQgPSB7XHJcbiAgICAgICAgICAgIGNvZGUsXHJcbiAgICAgICAgICAgIHRva2VuLFxyXG4gICAgICAgICAgICBkZWZhdWx0TGFuZ3VhZ2VDb2RlLFxyXG4gICAgICAgICAgICBwcmljZXNJbmNsdWRlVGF4OiAhIXByaWNlc0luY2x1ZGVUYXgsXHJcbiAgICAgICAgICAgIGRlZmF1bHRDdXJyZW5jeUNvZGUsXHJcbiAgICAgICAgICAgIGRlZmF1bHRTaGlwcGluZ1pvbmVJZCxcclxuICAgICAgICAgICAgZGVmYXVsdFRheFpvbmVJZCxcclxuICAgICAgICAgICAgY3VzdG9tRmllbGRzLFxyXG4gICAgICAgICAgICBzZWxsZXJJZCxcclxuICAgICAgICB9O1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uuc2V0dGluZ3NcclxuICAgICAgICAgICAgLmNyZWF0ZUNoYW5uZWwoaW5wdXQpXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWVyZ2VNYXAoKHsgY3JlYXRlQ2hhbm5lbCB9KSA9PlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuYXV0aC5jdXJyZW50VXNlcigpLnNpbmdsZSQucGlwZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwKCh7IG1lIH0pID0+ICh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZUNoYW5uZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pKSxcclxuICAgICAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAgIG1lcmdlTWFwKCh7IG1lLCBjcmVhdGVDaGFubmVsIH0pID0+XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLmNsaWVudC51cGRhdGVVc2VyQ2hhbm5lbHMobWUhLmNoYW5uZWxzKS5waXBlKG1hcCgoKSA9PiBjcmVhdGVDaGFubmVsKSksXHJcbiAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGRhdGEuX190eXBlbmFtZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ0NoYW5uZWwnOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uuc3VjY2VzcyhfKCdjb21tb24ubm90aWZ5LWNyZWF0ZS1zdWNjZXNzJyksIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudGl0eTogJ0NoYW5uZWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXRhaWxGb3JtLm1hcmtBc1ByaXN0aW5lKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLi4vJywgZGF0YS5pZF0sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvcic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5lcnJvcihkYXRhLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2F2ZSgpIHtcclxuICAgICAgICBpZiAoIXRoaXMuZGV0YWlsRm9ybS5kaXJ0eSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IHRoaXMuZGV0YWlsRm9ybS52YWx1ZTtcclxuICAgICAgICB0aGlzLmVudGl0eSRcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlKDEpLFxyXG4gICAgICAgICAgICAgICAgbWVyZ2VNYXAoY2hhbm5lbCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5wdXQgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBjaGFubmVsLmlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiBmb3JtVmFsdWUuY29kZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW46IGZvcm1WYWx1ZS50b2tlbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgcHJpY2VzSW5jbHVkZVRheDogZm9ybVZhbHVlLnByaWNlc0luY2x1ZGVUYXgsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZUxhbmd1YWdlQ29kZXM6IGZvcm1WYWx1ZS5hdmFpbGFibGVMYW5ndWFnZUNvZGVzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGVDdXJyZW5jeUNvZGVzOiBmb3JtVmFsdWUuYXZhaWxhYmxlQ3VycmVuY3lDb2RlcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdEN1cnJlbmN5Q29kZTogZm9ybVZhbHVlLmRlZmF1bHRDdXJyZW5jeUNvZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRTaGlwcGluZ1pvbmVJZDogZm9ybVZhbHVlLmRlZmF1bHRTaGlwcGluZ1pvbmVJZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdExhbmd1YWdlQ29kZTogZm9ybVZhbHVlLmRlZmF1bHRMYW5ndWFnZUNvZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRUYXhab25lSWQ6IGZvcm1WYWx1ZS5kZWZhdWx0VGF4Wm9uZUlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXN0b21GaWVsZHM6IGZvcm1WYWx1ZS5jdXN0b21GaWVsZHMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGxlcklkOiBmb3JtVmFsdWUuc2VsbGVySWQsXHJcbiAgICAgICAgICAgICAgICAgICAgfSBhcyBVcGRhdGVDaGFubmVsSW5wdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2Uuc2V0dGluZ3MudXBkYXRlQ2hhbm5lbChpbnB1dCk7XHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh7IHVwZGF0ZUNoYW5uZWwgfSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgc3dpdGNoICh1cGRhdGVDaGFubmVsLl9fdHlwZW5hbWUpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdDaGFubmVsJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3MoXygnY29tbW9uLm5vdGlmeS11cGRhdGUtc3VjY2VzcycpLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRpdHk6ICdDaGFubmVsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGV0YWlsRm9ybS5tYXJrQXNQcmlzdGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKHVwZGF0ZUNoYW5uZWwubWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogVXBkYXRlIHRoZSBmb3JtIHZhbHVlcyB3aGVuIHRoZSBlbnRpdHkgY2hhbmdlcy5cclxuICAgICAqL1xyXG4gICAgcHJvdGVjdGVkIHNldEZvcm1WYWx1ZXMoZW50aXR5OiBDaGFubmVsRnJhZ21lbnQsIGxhbmd1YWdlQ29kZTogTGFuZ3VhZ2VDb2RlKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5kZXRhaWxGb3JtLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBjb2RlOiBlbnRpdHkuY29kZSxcclxuICAgICAgICAgICAgdG9rZW46IGVudGl0eS50b2tlbiB8fCB0aGlzLmdlbmVyYXRlVG9rZW4oKSxcclxuICAgICAgICAgICAgcHJpY2VzSW5jbHVkZVRheDogZW50aXR5LnByaWNlc0luY2x1ZGVUYXgsXHJcbiAgICAgICAgICAgIGF2YWlsYWJsZUxhbmd1YWdlQ29kZXM6IGVudGl0eS5hdmFpbGFibGVMYW5ndWFnZUNvZGVzLFxyXG4gICAgICAgICAgICBhdmFpbGFibGVDdXJyZW5jeUNvZGVzOiBlbnRpdHkuYXZhaWxhYmxlQ3VycmVuY3lDb2RlcyxcclxuICAgICAgICAgICAgZGVmYXVsdEN1cnJlbmN5Q29kZTogZW50aXR5LmRlZmF1bHRDdXJyZW5jeUNvZGUsXHJcbiAgICAgICAgICAgIGRlZmF1bHRTaGlwcGluZ1pvbmVJZDogZW50aXR5LmRlZmF1bHRTaGlwcGluZ1pvbmU/LmlkID8/ICcnLFxyXG4gICAgICAgICAgICBkZWZhdWx0TGFuZ3VhZ2VDb2RlOiBlbnRpdHkuZGVmYXVsdExhbmd1YWdlQ29kZSxcclxuICAgICAgICAgICAgZGVmYXVsdFRheFpvbmVJZDogZW50aXR5LmRlZmF1bHRUYXhab25lPy5pZCA/PyAnJyxcclxuICAgICAgICAgICAgc2VsbGVySWQ6IGVudGl0eS5zZWxsZXI/LmlkID8/ICcnLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlmICh0aGlzLmN1c3RvbUZpZWxkcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgdGhpcy5zZXRDdXN0b21GaWVsZEZvcm1WYWx1ZXModGhpcy5jdXN0b21GaWVsZHMsIHRoaXMuZGV0YWlsRm9ybS5nZXQoWydjdXN0b21GaWVsZHMnXSksIGVudGl0eSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChlbnRpdHkuY29kZSA9PT0gREVGQVVMVF9DSEFOTkVMX0NPREUpIHtcclxuICAgICAgICAgICAgY29uc3QgY29kZUNvbnRyb2wgPSB0aGlzLmRldGFpbEZvcm0uZ2V0KCdjb2RlJyk7XHJcbiAgICAgICAgICAgIGlmIChjb2RlQ29udHJvbCkge1xyXG4gICAgICAgICAgICAgICAgY29kZUNvbnRyb2wuZGlzYWJsZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2VuZXJhdGVUb2tlbigpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKGNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQ4QXJyYXkoMTApKSlcclxuICAgICAgICAgICAgLm1hcChiID0+IGIudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsICcwJykpXHJcbiAgICAgICAgICAgIC5qb2luKCcnKTtcclxuICAgIH1cclxufVxyXG4iLCI8dmRyLXBhZ2UtYmxvY2s+XHJcbiAgICA8dmRyLWFjdGlvbi1iYXI+XHJcbiAgICAgICAgPHZkci1hYi1sZWZ0PjwvdmRyLWFiLWxlZnQ+XHJcblxyXG4gICAgICAgIDx2ZHItYWItcmlnaHQ+XHJcbiAgICAgICAgICAgIDx2ZHItYWN0aW9uLWJhci1pdGVtcyBsb2NhdGlvbklkPVwiY2hhbm5lbC1kZXRhaWxcIj48L3Zkci1hY3Rpb24tYmFyLWl0ZW1zPlxyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzTmV3JCB8IGFzeW5jOyBlbHNlIHVwZGF0ZUJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY3JlYXRlKClcIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFzYXZlQnV0dG9uRW5hYmxlZCgpXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAge3sgJ2NvbW1vbi5jcmVhdGUnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI3VwZGF0ZUJ1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNhdmUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKnZkcklmUGVybWlzc2lvbnM9XCJbJ1N1cGVyQWRtaW4nLCAnVXBkYXRlQ2hhbm5lbCddXCJcclxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIXNhdmVCdXR0b25FbmFibGVkKClcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7ICdjb21tb24udXBkYXRlJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC92ZHItYWItcmlnaHQ+XHJcbiAgICA8L3Zkci1hY3Rpb24tYmFyPlxyXG48L3Zkci1wYWdlLWJsb2NrPlxyXG5cclxuPGZvcm0gY2xhc3M9XCJmb3JtXCIgW2Zvcm1Hcm91cF09XCJkZXRhaWxGb3JtXCI+XHJcbiAgICA8dmRyLXBhZ2UtZGV0YWlsLWxheW91dD5cclxuICAgICAgICA8dmRyLXBhZ2UtZGV0YWlsLXNpZGViYXI+XHJcbiAgICAgICAgICAgIDx2ZHItY2FyZCAqbmdJZj1cImVudGl0eSQgfCBhc3luYyBhcyBlbnRpdHlcIj5cclxuICAgICAgICAgICAgICAgIDx2ZHItcGFnZS1lbnRpdHktaW5mbyBbZW50aXR5XT1cImVudGl0eVwiIC8+XHJcbiAgICAgICAgICAgIDwvdmRyLWNhcmQ+XHJcbiAgICAgICAgPC92ZHItcGFnZS1kZXRhaWwtc2lkZWJhcj5cclxuICAgICAgICA8dmRyLXBhZ2UtYmxvY2s+XHJcbiAgICAgICAgICAgIDx2ZHItY2FyZD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyaWRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGRcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWdyaWQtc3BhblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZW50aXR5Py5jb2RlICE9PSBERUZBVUxUX0NIQU5ORUxfQ09ERVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInY29tbW9uLmNvZGUnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yPVwiY29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiISh1cGRhdGVQZXJtaXNzaW9uIHwgaGFzUGVybWlzc2lvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiY29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0taXRlbVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tZ3JpZC1zcGFuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJlbnRpdHk/LmNvZGUgPT09IERFRkFVTFRfQ0hBTk5FTF9DT0RFXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidjb21tb24uY29kZScgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZW50aXR5Py5jb2RlIHwgY2hhbm5lbENvZGVUb0xhYmVsIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgIDx2ZHItZm9ybS1maWVsZCBbbGFiZWxdPVwiJ3NldHRpbmdzLmNoYW5uZWwtdG9rZW4nIHwgdHJhbnNsYXRlXCIgZm9yPVwidG9rZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInRva2VuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCIhKHVwZGF0ZVBlcm1pc3Npb24gfCBoYXNQZXJtaXNzaW9uKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ0b2tlblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWZpZWxkIFtsYWJlbF09XCInY29tbW9uLnNlbGxlcicgfCB0cmFuc2xhdGVcIiBmb3I9XCJzZWxsZXJJZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c2VsZWN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwic2VsbGVySWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic2VsbGVySWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZkckRpc2FibGVkXT1cIiEodXBkYXRlUGVybWlzc2lvbiB8IGhhc1Blcm1pc3Npb24pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiBzZWxlY3RlZCB2YWx1ZSBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIj48L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHNlbGxlciBvZiBzZWxsZXJzJCB8IGFzeW5jXCIgW3ZhbHVlXT1cInNlbGxlci5pZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHNlbGxlci5uYW1lIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGRcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidjb21tb24uYXZhaWxhYmxlLWxhbmd1YWdlcycgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3I9XCJhdmFpbGFibGVMYW5ndWFnZUNvZGVzXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx2ZHItbGFuZ3VhZ2UtY29kZS1zZWxlY3RvclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiYXZhaWxhYmxlTGFuZ3VhZ2VDb2Rlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFuZ3VhZ2VDb2Rlc109XCJhdmFpbGFibGVMYW5ndWFnZUNvZGVzJCB8IGFzeW5jXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmRyLWxhbmd1YWdlLWNvZGUtc2VsZWN0b3I+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGRcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidjb21tb24uYXZhaWxhYmxlLWN1cnJlbmNpZXMnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yPVwiYXZhaWxhYmxlQ3VycmVuY3lDb2Rlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dmRyLWN1cnJlbmN5LWNvZGUtc2VsZWN0b3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImF2YWlsYWJsZUN1cnJlbmN5Q29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC92ZHItY3VycmVuY3ktY29kZS1zZWxlY3Rvcj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Zkci1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvdmRyLWNhcmQ+XHJcbiAgICAgICAgICAgIDx2ZHItY2FyZCBbdGl0bGVdPVwiJ3NldHRpbmdzLmRlZmF1bHRzJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JpZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx2ZHItZm9ybS1maWVsZCBbbGFiZWxdPVwiJ3NldHRpbmdzLmRlZmF1bHQtY3VycmVuY3knIHwgdHJhbnNsYXRlXCIgZm9yPVwiZGVmYXVsdFRheFpvbmVJZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c2VsZWN0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGVmYXVsdEN1cnJlbmN5Q29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkZWZhdWx0Q3VycmVuY3lDb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2ZHJEaXNhYmxlZF09XCIhKHVwZGF0ZVBlcm1pc3Npb24gfCBoYXNQZXJtaXNzaW9uKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgY29kZSBvZiBkZXRhaWxGb3JtLnZhbHVlLmF2YWlsYWJsZUN1cnJlbmN5Q29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJjb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb2RlIHwgbG9jYWxlQ3VycmVuY3lOYW1lIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGQgW2xhYmVsXT1cIidjb21tb24uZGVmYXVsdC1sYW5ndWFnZScgfCB0cmFuc2xhdGVcIiBmb3I9XCJkZWZhdWx0TGFuZ3VhZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImRlZmF1bHRMYW5ndWFnZUNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVmYXVsdExhbmd1YWdlQ29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmRyRGlzYWJsZWRdPVwiISh1cGRhdGVQZXJtaXNzaW9uIHwgaGFzUGVybWlzc2lvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGxhbmd1YWdlQ29kZSBvZiBkZXRhaWxGb3JtLnZhbHVlLmF2YWlsYWJsZUxhbmd1YWdlQ29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJsYW5ndWFnZUNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGxhbmd1YWdlQ29kZSB8IGxvY2FsZUxhbmd1YWdlTmFtZSB9fSAoe3sgbGFuZ3VhZ2VDb2RlIHwgdXBwZXJjYXNlIH19KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWZpZWxkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3NldHRpbmdzLmRlZmF1bHQtdGF4LXpvbmUnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cImRlZmF1bHRUYXhab25lSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dmRyLXpvbmUtc2VsZWN0b3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkZWZhdWx0VGF4Wm9uZUlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmRyRGlzYWJsZWRdPVwiISh1cGRhdGVQZXJtaXNzaW9uIHwgaGFzUGVybWlzc2lvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmRyLXpvbmUtc2VsZWN0b3I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjbHItYWxlcnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGV0YWlsRm9ybS52YWx1ZS5jb2RlICYmICFkZXRhaWxGb3JtLnZhbHVlLmRlZmF1bHRUYXhab25lSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xyQWxlcnRUeXBlPVwiZGFuZ2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbHJBbGVydENsb3NhYmxlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsci1hbGVydC1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWxlcnQtdGV4dFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZXJyb3Iubm8tZGVmYXVsdC10YXgtem9uZS1zZXQnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbHItYWxlcnQtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9jbHItYWxlcnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx2ZHItZm9ybS1maWVsZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidzZXR0aW5ncy5kZWZhdWx0LXNoaXBwaW5nLXpvbmUnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cImRlZmF1bHRTaGlwcGluZ1pvbmVJZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx2ZHItem9uZS1zZWxlY3RvclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJkZWZhdWx0U2hpcHBpbmdab25lSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRlZmF1bHRTaGlwcGluZ1pvbmVJZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZkckRpc2FibGVkXT1cIiEodXBkYXRlUGVybWlzc2lvbiB8IGhhc1Blcm1pc3Npb24pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L3Zkci16b25lLXNlbGVjdG9yPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3Zkci1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y2xyLWFsZXJ0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRldGFpbEZvcm0udmFsdWUuY29kZSAmJiAhZGV0YWlsRm9ybS52YWx1ZS5kZWZhdWx0U2hpcHBpbmdab25lSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xyQWxlcnRUeXBlPVwid2FybmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xyQWxlcnRDbG9zYWJsZV09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbHItYWxlcnQtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFsZXJ0LXRleHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2Vycm9yLm5vLWRlZmF1bHQtc2hpcHBpbmctem9uZS1zZXQnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbHItYWxlcnQtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9jbHItYWxlcnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWZpZWxkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInc2V0dGluZ3MucHJpY2VzLWluY2x1ZGUtdGF4JyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cInByaWNlc0luY2x1ZGVUYXhcIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGNsci10b2dnbGUtd3JhcHBlcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xyVG9nZ2xlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJwcmljZXNJbmNsdWRlVGF4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJwcmljZXNJbmNsdWRlVGF4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmRyRGlzYWJsZWRdPVwiISh1cGRhdGVQZXJtaXNzaW9uIHwgaGFzUGVybWlzc2lvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9jbHItdG9nZ2xlLXdyYXBwZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgICAgICA8dmRyLWNhcmRcclxuICAgICAgICAgICAgICAgIGZvcm1Hcm91cE5hbWU9XCJjdXN0b21GaWVsZHNcIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJjdXN0b21GaWVsZHMubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCInY29tbW9uLmN1c3RvbS1maWVsZHMnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHZkci10YWJiZWQtY3VzdG9tLWZpZWxkc1xyXG4gICAgICAgICAgICAgICAgICAgIGVudGl0eU5hbWU9XCJDaGFubmVsXCJcclxuICAgICAgICAgICAgICAgICAgICBbY3VzdG9tRmllbGRzXT1cImN1c3RvbUZpZWxkc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW2N1c3RvbUZpZWxkc0Zvcm1Hcm91cF09XCJkZXRhaWxGb3JtLmdldCgnY3VzdG9tRmllbGRzJylcIlxyXG4gICAgICAgICAgICAgICAgPjwvdmRyLXRhYmJlZC1jdXN0b20tZmllbGRzPlxyXG4gICAgICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgICAgICA8dmRyLWN1c3RvbS1kZXRhaWwtY29tcG9uZW50LWhvc3RcclxuICAgICAgICAgICAgICAgIGxvY2F0aW9uSWQ9XCJjaGFubmVsLWRldGFpbFwiXHJcbiAgICAgICAgICAgICAgICBbZW50aXR5JF09XCJlbnRpdHkkXCJcclxuICAgICAgICAgICAgICAgIFtkZXRhaWxGb3JtXT1cImRldGFpbEZvcm1cIlxyXG4gICAgICAgICAgICA+PC92ZHItY3VzdG9tLWRldGFpbC1jb21wb25lbnQtaG9zdD5cclxuICAgICAgICA8L3Zkci1wYWdlLWJsb2NrPlxyXG4gICAgPC92ZHItcGFnZS1kZXRhaWwtbGF5b3V0PlxyXG48L2Zvcm0+XHJcbiJdfQ==
|
|
183
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbm5lbC1kZXRhaWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXR0aW5ncy9zcmMvY29tcG9uZW50cy9jaGFubmVsLWRldGFpbC9jaGFubmVsLWRldGFpbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NldHRpbmdzL3NyYy9jb21wb25lbnRzL2NoYW5uZWwtZGV0YWlsL2NoYW5uZWwtZGV0YWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQWUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0RSxPQUFPLEVBQ0gsZ0JBQWdCLEVBTWhCLHVCQUF1QixFQUl2QixVQUFVLEVBRVYsd0JBQXdCLEdBRTNCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBRXJELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQTs7Ozs7O01BTS9CLGdCQUFnQjtDQUNyQixDQUFDO0FBUUYsTUFBTSxPQUFPLHNCQUNULFNBQVEsd0JBQW9FO0lBd0I1RSxZQUNjLG1CQUF3QyxFQUMxQyxjQUFpQyxFQUMvQixXQUF3QixFQUMxQixXQUF3QixFQUN4QixtQkFBd0M7UUFFaEQsS0FBSyxFQUFFLENBQUM7UUFORSx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFC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Q3BDLENBQUMsQ0FBQztRQUNILElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7WUFDMUIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ25HO1FBQ0QsSUFBSSxNQUFNLENBQUMsSUFBSSxLQUFLLG9CQUFvQixFQUFFO1lBQ3RDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2hELElBQUksV0FBVyxFQUFFO2dCQUNiLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUN6QjtTQUNKO0lBQ0wsQ0FBQztJQUVPLGFBQWE7UUFDakIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN4RCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDekMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7OEdBaE1RLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlGQ3ZDbkMsa3VVQWlOQTs7MkZEMUthLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDSSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgbWFya2VyIGFzIF8gfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInO1xyXG5pbXBvcnQge1xyXG4gICAgQ0hBTk5FTF9GUkFHTUVOVCxcclxuICAgIENoYW5uZWxGcmFnbWVudCxcclxuICAgIENyZWF0ZUNoYW5uZWxJbnB1dCxcclxuICAgIEN1cnJlbmN5Q29kZSxcclxuICAgIERhdGFTZXJ2aWNlLFxyXG4gICAgR2V0Q2hhbm5lbERldGFpbERvY3VtZW50LFxyXG4gICAgZ2V0Q3VzdG9tRmllbGRzRGVmYXVsdHMsXHJcbiAgICBHZXRTZWxsZXJzUXVlcnksXHJcbiAgICBMYW5ndWFnZUNvZGUsXHJcbiAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgUGVybWlzc2lvbixcclxuICAgIFNlcnZlckNvbmZpZ1NlcnZpY2UsXHJcbiAgICBUeXBlZEJhc2VEZXRhaWxDb21wb25lbnQsXHJcbiAgICBVcGRhdGVDaGFubmVsSW5wdXQsXHJcbn0gZnJvbSAnQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XHJcbmltcG9ydCB7IERFRkFVTFRfQ0hBTk5FTF9DT0RFIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9zaGFyZWQtY29uc3RhbnRzJztcclxuaW1wb3J0IHsgZ3FsIH0gZnJvbSAnYXBvbGxvLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCwgbWVyZ2VNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5leHBvcnQgY29uc3QgR0VUX0NIQU5ORUxfREVUQUlMID0gZ3FsYFxyXG4gICAgcXVlcnkgR2V0Q2hhbm5lbERldGFpbCgkaWQ6IElEISkge1xyXG4gICAgICAgIGNoYW5uZWwoaWQ6ICRpZCkge1xyXG4gICAgICAgICAgICAuLi5DaGFubmVsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtDSEFOTkVMX0ZSQUdNRU5UfVxyXG5gO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1jaGFubmVsLWRldGFpbCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2hhbm5lbC1kZXRhaWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vY2hhbm5lbC1kZXRhaWwuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hhbm5lbERldGFpbENvbXBvbmVudFxyXG4gICAgZXh0ZW5kcyBUeXBlZEJhc2VEZXRhaWxDb21wb25lbnQ8dHlwZW9mIEdldENoYW5uZWxEZXRhaWxEb2N1bWVudCwgJ2NoYW5uZWwnPlxyXG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxyXG57XHJcbiAgICBERUZBVUxUX0NIQU5ORUxfQ09ERSA9IERFRkFVTFRfQ0hBTk5FTF9DT0RFO1xyXG4gICAgY3VzdG9tRmllbGRzID0gdGhpcy5nZXRDdXN0b21GaWVsZENvbmZpZygnQ2hhbm5lbCcpO1xyXG4gICAgLy8gem9uZXMkOiBPYnNlcnZhYmxlPEFycmF5PEl0ZW1PZjxHZXRab25lTGlzdFF1ZXJ5LCAnem9uZXMnPj4+O1xyXG4gICAgc2VsbGVycyQ6IE9ic2VydmFibGU8R2V0U2VsbGVyc1F1ZXJ5WydzZWxsZXJzJ11bJ2l0ZW1zJ10+O1xyXG4gICAgZGV0YWlsRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG4gICAgICAgIGNvZGU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgdG9rZW46IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgcHJpY2VzSW5jbHVkZVRheDogW2ZhbHNlXSxcclxuICAgICAgICBhdmFpbGFibGVMYW5ndWFnZUNvZGVzOiBbW10gYXMgc3RyaW5nW11dLFxyXG4gICAgICAgIGF2YWlsYWJsZUN1cnJlbmN5Q29kZXM6IFtbXSBhcyBzdHJpbmdbXV0sXHJcbiAgICAgICAgZGVmYXVsdEN1cnJlbmN5Q29kZTogWycnIGFzIEN1cnJlbmN5Q29kZSwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgZGVmYXVsdFNoaXBwaW5nWm9uZUlkOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGRlZmF1bHRMYW5ndWFnZUNvZGU6IFt1bmRlZmluZWQgYXMgTGFuZ3VhZ2VDb2RlIHwgdW5kZWZpbmVkLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICBkZWZhdWx0VGF4Wm9uZUlkOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIHNlbGxlcklkOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgIGN1c3RvbUZpZWxkczogdGhpcy5mb3JtQnVpbGRlci5ncm91cChnZXRDdXN0b21GaWVsZHNEZWZhdWx0cyh0aGlzLmN1c3RvbUZpZWxkcykpLFxyXG4gICAgfSk7XHJcblxyXG4gICAgYXZhaWxhYmxlTGFuZ3VhZ2VDb2RlcyQ6IE9ic2VydmFibGU8TGFuZ3VhZ2VDb2RlW10+O1xyXG4gICAgcmVhZG9ubHkgdXBkYXRlUGVybWlzc2lvbiA9IFtQZXJtaXNzaW9uLlN1cGVyQWRtaW4sIFBlcm1pc3Npb24uVXBkYXRlQ2hhbm5lbCwgUGVybWlzc2lvbi5DcmVhdGVDaGFubmVsXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgc2VydmVyQ29uZmlnU2VydmljZTogU2VydmVyQ29uZmlnU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgICAgICBwcm90ZWN0ZWQgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG4gICAgICAgIHByaXZhdGUgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICAgICAgLy8gdGhpcy56b25lcyQgPSB0aGlzLmRhdGFTZXJ2aWNlLnNldHRpbmdzLmdldFpvbmVzKHsgdGFrZTogMTAwIH0pLm1hcFNpbmdsZShkYXRhID0+IGRhdGEuem9uZXMuaXRlbXMpO1xyXG4gICAgICAgIC8vIFRPRE86IG1ha2UgdGhpcyBsYXp5LWxvYWRlZCBhdXRvY29tcGxldGVcclxuICAgICAgICB0aGlzLnNlbGxlcnMkID0gdGhpcy5kYXRhU2VydmljZS5zZXR0aW5ncy5nZXRTZWxsZXJMaXN0KCkubWFwU2luZ2xlKGRhdGEgPT4gZGF0YS5zZWxsZXJzLml0ZW1zKTtcclxuICAgICAgICB0aGlzLmF2YWlsYWJsZUxhbmd1YWdlQ29kZXMkID0gdGhpcy5zZXJ2ZXJDb25maWdTZXJ2aWNlLmdldEF2YWlsYWJsZUxhbmd1YWdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuZGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHNhdmVCdXR0b25FbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmRldGFpbEZvcm0uZGlydHkgJiYgdGhpcy5kZXRhaWxGb3JtLnZhbGlkO1xyXG4gICAgfVxyXG5cclxuICAgIGNyZWF0ZSgpIHtcclxuICAgICAgICBpZiAoIXRoaXMuZGV0YWlsRm9ybS5kaXJ0eSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHtcclxuICAgICAgICAgICAgY29kZSxcclxuICAgICAgICAgICAgdG9rZW4sXHJcbiAgICAgICAgICAgIGRlZmF1bHRMYW5ndWFnZUNvZGUsXHJcbiAgICAgICAgICAgIHByaWNlc0luY2x1ZGVUYXgsXHJcbiAgICAgICAgICAgIGRlZmF1bHRDdXJyZW5jeUNvZGUsXHJcbiAgICAgICAgICAgIGRlZmF1bHRTaGlwcGluZ1pvbmVJZCxcclxuICAgICAgICAgICAgZGVmYXVsdFRheFpvbmVJZCxcclxuICAgICAgICAgICAgY3VzdG9tRmllbGRzLFxyXG4gICAgICAgICAgICBzZWxsZXJJZCxcclxuICAgICAgICB9ID0gdGhpcy5kZXRhaWxGb3JtLnZhbHVlO1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgIWNvZGUgfHxcclxuICAgICAgICAgICAgIXRva2VuIHx8XHJcbiAgICAgICAgICAgICFkZWZhdWx0TGFuZ3VhZ2VDb2RlIHx8XHJcbiAgICAgICAgICAgICFkZWZhdWx0Q3VycmVuY3lDb2RlIHx8XHJcbiAgICAgICAgICAgICFkZWZhdWx0U2hpcHBpbmdab25lSWQgfHxcclxuICAgICAgICAgICAgIWRlZmF1bHRUYXhab25lSWRcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBpbnB1dDogQ3JlYXRlQ2hhbm5lbElucHV0ID0ge1xyXG4gICAgICAgICAgICBjb2RlLFxyXG4gICAgICAgICAgICB0b2tlbixcclxuICAgICAgICAgICAgZGVmYXVsdExhbmd1YWdlQ29kZSxcclxuICAgICAgICAgICAgcHJpY2VzSW5jbHVkZVRheDogISFwcmljZXNJbmNsdWRlVGF4LFxyXG4gICAgICAgICAgICBkZWZhdWx0Q3VycmVuY3lDb2RlLFxyXG4gICAgICAgICAgICBkZWZhdWx0U2hpcHBpbmdab25lSWQsXHJcbiAgICAgICAgICAgIGRlZmF1bHRUYXhab25lSWQsXHJcbiAgICAgICAgICAgIGN1c3RvbUZpZWxkcyxcclxuICAgICAgICAgICAgc2VsbGVySWQsXHJcbiAgICAgICAgfTtcclxuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLnNldHRpbmdzXHJcbiAgICAgICAgICAgIC5jcmVhdGVDaGFubmVsKGlucHV0KVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIG1lcmdlTWFwKCh7IGNyZWF0ZUNoYW5uZWwgfSkgPT5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLmF1dGguY3VycmVudFVzZXIoKS5zaW5nbGUkLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoeyBtZSB9KSA9PiAoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGVDaGFubmVsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSksXHJcbiAgICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgICAgICBtZXJnZU1hcCgoeyBtZSwgY3JlYXRlQ2hhbm5lbCB9KSA9PlxyXG4gICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5jbGllbnQudXBkYXRlVXNlckNoYW5uZWxzKG1lIS5jaGFubmVscykucGlwZShtYXAoKCkgPT4gY3JlYXRlQ2hhbm5lbCkpLFxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICAgICAgICAgICAgc3dpdGNoIChkYXRhLl9fdHlwZW5hbWUpIHtcclxuICAgICAgICAgICAgICAgICAgICBjYXNlICdDaGFubmVsJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLnN1Y2Nlc3MoXygnY29tbW9uLm5vdGlmeS1jcmVhdGUtc3VjY2VzcycpLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRpdHk6ICdDaGFubmVsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGV0YWlsRm9ybS5tYXJrQXNQcmlzdGluZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4uLycsIGRhdGEuaWRdLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ0xhbmd1YWdlTm90QXZhaWxhYmxlRXJyb3InOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IoZGF0YS5tZXNzYWdlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHNhdmUoKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmRldGFpbEZvcm0uZGlydHkpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLmRldGFpbEZvcm0udmFsdWU7XHJcbiAgICAgICAgdGhpcy5lbnRpdHkkXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgdGFrZSgxKSxcclxuICAgICAgICAgICAgICAgIG1lcmdlTWFwKGNoYW5uZWwgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGlucHV0ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogY2hhbm5lbC5pZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogZm9ybVZhbHVlLmNvZGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuOiBmb3JtVmFsdWUudG9rZW4sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHByaWNlc0luY2x1ZGVUYXg6IGZvcm1WYWx1ZS5wcmljZXNJbmNsdWRlVGF4LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGVMYW5ndWFnZUNvZGVzOiBmb3JtVmFsdWUuYXZhaWxhYmxlTGFuZ3VhZ2VDb2RlcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlQ3VycmVuY3lDb2RlczogZm9ybVZhbHVlLmF2YWlsYWJsZUN1cnJlbmN5Q29kZXMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRDdXJyZW5jeUNvZGU6IGZvcm1WYWx1ZS5kZWZhdWx0Q3VycmVuY3lDb2RlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0U2hpcHBpbmdab25lSWQ6IGZvcm1WYWx1ZS5kZWZhdWx0U2hpcHBpbmdab25lSWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRMYW5ndWFnZUNvZGU6IGZvcm1WYWx1ZS5kZWZhdWx0TGFuZ3VhZ2VDb2RlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGF4Wm9uZUlkOiBmb3JtVmFsdWUuZGVmYXVsdFRheFpvbmVJZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3VzdG9tRmllbGRzOiBmb3JtVmFsdWUuY3VzdG9tRmllbGRzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxsZXJJZDogZm9ybVZhbHVlLnNlbGxlcklkLFxyXG4gICAgICAgICAgICAgICAgICAgIH0gYXMgVXBkYXRlQ2hhbm5lbElucHV0O1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRhdGFTZXJ2aWNlLnNldHRpbmdzLnVwZGF0ZUNoYW5uZWwoaW5wdXQpO1xyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoeyB1cGRhdGVDaGFubmVsIH0pID0+IHtcclxuICAgICAgICAgICAgICAgIHN3aXRjaCAodXBkYXRlQ2hhbm5lbC5fX3R5cGVuYW1lKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnQ2hhbm5lbCc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zdWNjZXNzKF8oJ2NvbW1vbi5ub3RpZnktdXBkYXRlLXN1Y2Nlc3MnKSwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5OiAnQ2hhbm5lbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRldGFpbEZvcm0ubWFya0FzUHJpc3RpbmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvcic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5lcnJvcih1cGRhdGVDaGFubmVsLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFVwZGF0ZSB0aGUgZm9ybSB2YWx1ZXMgd2hlbiB0aGUgZW50aXR5IGNoYW5nZXMuXHJcbiAgICAgKi9cclxuICAgIHByb3RlY3RlZCBzZXRGb3JtVmFsdWVzKGVudGl0eTogQ2hhbm5lbEZyYWdtZW50LCBsYW5ndWFnZUNvZGU6IExhbmd1YWdlQ29kZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGV0YWlsRm9ybS5wYXRjaFZhbHVlKHtcclxuICAgICAgICAgICAgY29kZTogZW50aXR5LmNvZGUsXHJcbiAgICAgICAgICAgIHRva2VuOiBlbnRpdHkudG9rZW4gfHwgdGhpcy5nZW5lcmF0ZVRva2VuKCksXHJcbiAgICAgICAgICAgIHByaWNlc0luY2x1ZGVUYXg6IGVudGl0eS5wcmljZXNJbmNsdWRlVGF4LFxyXG4gICAgICAgICAgICBhdmFpbGFibGVMYW5ndWFnZUNvZGVzOiBlbnRpdHkuYXZhaWxhYmxlTGFuZ3VhZ2VDb2RlcyxcclxuICAgICAgICAgICAgYXZhaWxhYmxlQ3VycmVuY3lDb2RlczogZW50aXR5LmF2YWlsYWJsZUN1cnJlbmN5Q29kZXMsXHJcbiAgICAgICAgICAgIGRlZmF1bHRDdXJyZW5jeUNvZGU6IGVudGl0eS5kZWZhdWx0Q3VycmVuY3lDb2RlLFxyXG4gICAgICAgICAgICBkZWZhdWx0U2hpcHBpbmdab25lSWQ6IGVudGl0eS5kZWZhdWx0U2hpcHBpbmdab25lPy5pZCA/PyAnJyxcclxuICAgICAgICAgICAgZGVmYXVsdExhbmd1YWdlQ29kZTogZW50aXR5LmRlZmF1bHRMYW5ndWFnZUNvZGUsXHJcbiAgICAgICAgICAgIGRlZmF1bHRUYXhab25lSWQ6IGVudGl0eS5kZWZhdWx0VGF4Wm9uZT8uaWQgPz8gJycsXHJcbiAgICAgICAgICAgIHNlbGxlcklkOiBlbnRpdHkuc2VsbGVyPy5pZCA/PyAnJyxcclxuICAgICAgICB9KTtcclxuICAgICAgICBpZiAodGhpcy5jdXN0b21GaWVsZHMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0Q3VzdG9tRmllbGRGb3JtVmFsdWVzKHRoaXMuY3VzdG9tRmllbGRzLCB0aGlzLmRldGFpbEZvcm0uZ2V0KFsnY3VzdG9tRmllbGRzJ10pLCBlbnRpdHkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZW50aXR5LmNvZGUgPT09IERFRkFVTFRfQ0hBTk5FTF9DT0RFKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNvZGVDb250cm9sID0gdGhpcy5kZXRhaWxGb3JtLmdldCgnY29kZScpO1xyXG4gICAgICAgICAgICBpZiAoY29kZUNvbnRyb2wpIHtcclxuICAgICAgICAgICAgICAgIGNvZGVDb250cm9sLmRpc2FibGUoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdlbmVyYXRlVG9rZW4oKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShjcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKG5ldyBVaW50OEFycmF5KDEwKSkpXHJcbiAgICAgICAgICAgIC5tYXAoYiA9PiBiLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCAnMCcpKVxyXG4gICAgICAgICAgICAuam9pbignJyk7XHJcbiAgICB9XHJcbn1cclxuIiwiPHZkci1wYWdlLWJsb2NrPlxyXG4gICAgPHZkci1hY3Rpb24tYmFyPlxyXG4gICAgICAgIDx2ZHItYWItbGVmdD48L3Zkci1hYi1sZWZ0PlxyXG5cclxuICAgICAgICA8dmRyLWFiLXJpZ2h0PlxyXG4gICAgICAgICAgICA8dmRyLWFjdGlvbi1iYXItaXRlbXMgbG9jYXRpb25JZD1cImNoYW5uZWwtZGV0YWlsXCI+PC92ZHItYWN0aW9uLWJhci1pdGVtcz5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpc05ldyQgfCBhc3luYzsgZWxzZSB1cGRhdGVCdXR0b25cIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNyZWF0ZSgpXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhc2F2ZUJ1dHRvbkVuYWJsZWQoKVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIHt7ICdjb21tb24uY3JlYXRlJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICN1cGRhdGVCdXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzYXZlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICp2ZHJJZlBlcm1pc3Npb25zPVwiWydTdXBlckFkbWluJywgJ1VwZGF0ZUNoYW5uZWwnXVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFzYXZlQnV0dG9uRW5hYmxlZCgpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICB7eyAnY29tbW9uLnVwZGF0ZScgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvdmRyLWFiLXJpZ2h0PlxyXG4gICAgPC92ZHItYWN0aW9uLWJhcj5cclxuPC92ZHItcGFnZS1ibG9jaz5cclxuXHJcbjxmb3JtIGNsYXNzPVwiZm9ybVwiIFtmb3JtR3JvdXBdPVwiZGV0YWlsRm9ybVwiPlxyXG4gICAgPHZkci1wYWdlLWRldGFpbC1sYXlvdXQ+XHJcbiAgICAgICAgPHZkci1wYWdlLWRldGFpbC1zaWRlYmFyPlxyXG4gICAgICAgICAgICA8dmRyLWNhcmQgKm5nSWY9XCJlbnRpdHkkIHwgYXN5bmMgYXMgZW50aXR5XCI+XHJcbiAgICAgICAgICAgICAgICA8dmRyLXBhZ2UtZW50aXR5LWluZm8gW2VudGl0eV09XCJlbnRpdHlcIiAvPlxyXG4gICAgICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgIDwvdmRyLXBhZ2UtZGV0YWlsLXNpZGViYXI+XHJcbiAgICAgICAgPHZkci1wYWdlLWJsb2NrPlxyXG4gICAgICAgICAgICA8dmRyLWNhcmQ+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncmlkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWZpZWxkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1ncmlkLXNwYW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImVudGl0eT8uY29kZSAhPT0gREVGQVVMVF9DSEFOTkVMX0NPREVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ2NvbW1vbi5jb2RlJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cImNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cIiEodXBkYXRlUGVybWlzc2lvbiB8IGhhc1Blcm1pc3Npb24pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWl0ZW1cclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWdyaWQtc3BhblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZW50aXR5Py5jb2RlID09PSBERUZBVUxUX0NIQU5ORUxfQ09ERVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInY29tbW9uLmNvZGUnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGVudGl0eT8uY29kZSB8IGNoYW5uZWxDb2RlVG9MYWJlbCB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0taXRlbT5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGQgW2xhYmVsXT1cIidzZXR0aW5ncy5jaGFubmVsLXRva2VuJyB8IHRyYW5zbGF0ZVwiIGZvcj1cInRva2VuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJ0b2tlblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiISh1cGRhdGVQZXJtaXNzaW9uIHwgaGFzUGVybWlzc2lvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidG9rZW5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDx2ZHItZm9ybS1maWVsZCBbbGFiZWxdPVwiJ2NvbW1vbi5zZWxsZXInIHwgdHJhbnNsYXRlXCIgZm9yPVwic2VsbGVySWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInNlbGxlcklkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInNlbGxlcklkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2ZHJEaXNhYmxlZF09XCIhKHVwZGF0ZVBlcm1pc3Npb24gfCBoYXNQZXJtaXNzaW9uKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gc2VsZWN0ZWQgdmFsdWUgc3R5bGU9XCJkaXNwbGF5OiBub25lXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBzZWxsZXIgb2Ygc2VsbGVycyQgfCBhc3luY1wiIFt2YWx1ZV09XCJzZWxsZXIuaWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBzZWxsZXIubmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWZpZWxkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInY29tbW9uLmF2YWlsYWJsZS1sYW5ndWFnZXMnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yPVwiYXZhaWxhYmxlTGFuZ3VhZ2VDb2Rlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dmRyLWxhbmd1YWdlLWNvZGUtc2VsZWN0b3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImF2YWlsYWJsZUxhbmd1YWdlQ29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhbmd1YWdlQ29kZXNdPVwiYXZhaWxhYmxlTGFuZ3VhZ2VDb2RlcyQgfCBhc3luY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L3Zkci1sYW5ndWFnZS1jb2RlLXNlbGVjdG9yPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWZpZWxkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInY29tbW9uLmF2YWlsYWJsZS1jdXJyZW5jaWVzJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cImF2YWlsYWJsZUN1cnJlbmN5Q29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHZkci1jdXJyZW5jeS1jb2RlLXNlbGVjdG9yXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJhdmFpbGFibGVDdXJyZW5jeUNvZGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmRyLWN1cnJlbmN5LWNvZGUtc2VsZWN0b3I+XHJcbiAgICAgICAgICAgICAgICAgICAgPC92ZHItZm9ybS1maWVsZD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgICAgICA8dmRyLWNhcmQgW3RpdGxlXT1cIidzZXR0aW5ncy5kZWZhdWx0cycgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyaWRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGQgW2xhYmVsXT1cIidjb21tb24uZGVmYXVsdC1sYW5ndWFnZScgfCB0cmFuc2xhdGVcIiBmb3I9XCJkZWZhdWx0TGFuZ3VhZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImRlZmF1bHRMYW5ndWFnZUNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVmYXVsdExhbmd1YWdlQ29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmRyRGlzYWJsZWRdPVwiISh1cGRhdGVQZXJtaXNzaW9uIHwgaGFzUGVybWlzc2lvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGxhbmd1YWdlQ29kZSBvZiBkZXRhaWxGb3JtLnZhbHVlLmF2YWlsYWJsZUxhbmd1YWdlQ29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJsYW5ndWFnZUNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGxhbmd1YWdlQ29kZSB8IGxvY2FsZUxhbmd1YWdlTmFtZSB9fSAoe3sgbGFuZ3VhZ2VDb2RlIHwgdXBwZXJjYXNlIH19KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWZpZWxkIFtsYWJlbF09XCInc2V0dGluZ3MuZGVmYXVsdC1jdXJyZW5jeScgfCB0cmFuc2xhdGVcIiBmb3I9XCJkZWZhdWx0Q3VycmVuY3lcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImRlZmF1bHRDdXJyZW5jeUNvZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVmYXVsdEN1cnJlbmN5Q29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmRyRGlzYWJsZWRdPVwiISh1cGRhdGVQZXJtaXNzaW9uIHwgaGFzUGVybWlzc2lvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvZGUgb2YgZGV0YWlsRm9ybS52YWx1ZS5hdmFpbGFibGVDdXJyZW5jeUNvZGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29kZSB8IGxvY2FsZUN1cnJlbmN5TmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHZkci1mb3JtLWZpZWxkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ3NldHRpbmdzLmRlZmF1bHQtdGF4LXpvbmUnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cImRlZmF1bHRUYXhab25lSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dmRyLXpvbmUtc2VsZWN0b3JcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkZWZhdWx0VGF4Wm9uZUlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmRyRGlzYWJsZWRdPVwiISh1cGRhdGVQZXJtaXNzaW9uIHwgaGFzUGVybWlzc2lvbilcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvdmRyLXpvbmUtc2VsZWN0b3I+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdmRyLWZvcm0tZmllbGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjbHItYWxlcnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZGV0YWlsRm9ybS52YWx1ZS5jb2RlICYmICFkZXRhaWxGb3JtLnZhbHVlLmRlZmF1bHRUYXhab25lSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xyQWxlcnRUeXBlPVwiZGFuZ2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbHJBbGVydENsb3NhYmxlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsci1hbGVydC1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWxlcnQtdGV4dFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZXJyb3Iubm8tZGVmYXVsdC10YXgtem9uZS1zZXQnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbHItYWxlcnQtaXRlbT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9jbHItYWxlcnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx2ZHItZm9ybS1maWVsZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidzZXR0aW5ncy5kZWZhdWx0LXNoaXBwaW5nLXpvbmUnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cImRlZmF1bHRTaGlwcGluZ1pvbmVJZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx2ZHItem9uZS1zZWxlY3RvclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJkZWZhdWx0U2hpcHBpbmdab25lSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRlZmF1bHRTaGlwcGluZ1pvbmVJZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZkckRpc2FibGVkXT1cIiEodXBkYXRlUGVybWlzc2lvbiB8IGhhc1Blcm1pc3Npb24pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L3Zkci16b25lLXNlbGVjdG9yPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3Zkci1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y2xyLWFsZXJ0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImRldGFpbEZvcm0udmFsdWUuY29kZSAmJiAhZGV0YWlsRm9ybS52YWx1ZS5kZWZhdWx0U2hpcHBpbmdab25lSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xyQWxlcnRUeXBlPVwiZGFuZ2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbHJBbGVydENsb3NhYmxlXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsci1hbGVydC1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWxlcnQtdGV4dFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnZXJyb3Iubm8tZGVmYXVsdC1zaGlwcGluZy16b25lLXNldCcgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Nsci1hbGVydC1pdGVtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Nsci1hbGVydD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8dmRyLWZvcm0tZmllbGRcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidzZXR0aW5ncy5wcmljZXMtaW5jbHVkZS10YXgnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9yPVwicHJpY2VzSW5jbHVkZVRheFwiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y2xyLXRvZ2dsZS13cmFwcGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbHJUb2dnbGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInByaWNlc0luY2x1ZGVUYXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInByaWNlc0luY2x1ZGVUYXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2ZHJEaXNhYmxlZF09XCIhKHVwZGF0ZVBlcm1pc3Npb24gfCBoYXNQZXJtaXNzaW9uKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Nsci10b2dnbGUtd3JhcHBlcj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Zkci1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvdmRyLWNhcmQ+XHJcbiAgICAgICAgICAgIDx2ZHItY2FyZFxyXG4gICAgICAgICAgICAgICAgZm9ybUdyb3VwTmFtZT1cImN1c3RvbUZpZWxkc1wiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImN1c3RvbUZpZWxkcy5sZW5ndGhcIlxyXG4gICAgICAgICAgICAgICAgW3RpdGxlXT1cIidjb21tb24uY3VzdG9tLWZpZWxkcycgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dmRyLXRhYmJlZC1jdXN0b20tZmllbGRzXHJcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5TmFtZT1cIkNoYW5uZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjdXN0b21GaWVsZHNdPVwiY3VzdG9tRmllbGRzXCJcclxuICAgICAgICAgICAgICAgICAgICBbY3VzdG9tRmllbGRzRm9ybUdyb3VwXT1cImRldGFpbEZvcm0uZ2V0KCdjdXN0b21GaWVsZHMnKVwiXHJcbiAgICAgICAgICAgICAgICA+PC92ZHItdGFiYmVkLWN1c3RvbS1maWVsZHM+XHJcbiAgICAgICAgICAgIDwvdmRyLWNhcmQ+XHJcbiAgICAgICAgICAgIDx2ZHItY3VzdG9tLWRldGFpbC1jb21wb25lbnQtaG9zdFxyXG4gICAgICAgICAgICAgICAgbG9jYXRpb25JZD1cImNoYW5uZWwtZGV0YWlsXCJcclxuICAgICAgICAgICAgICAgIFtlbnRpdHkkXT1cImVudGl0eSRcIlxyXG4gICAgICAgICAgICAgICAgW2RldGFpbEZvcm1dPVwiZGV0YWlsRm9ybVwiXHJcbiAgICAgICAgICAgID48L3Zkci1jdXN0b20tZGV0YWlsLWNvbXBvbmVudC1ob3N0PlxyXG4gICAgICAgIDwvdmRyLXBhZ2UtYmxvY2s+XHJcbiAgICA8L3Zkci1wYWdlLWRldGFpbC1sYXlvdXQ+XHJcbjwvZm9ybT5cclxuIl19
|