@vendure/admin-ui 2.2.3 → 2.2.4

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.
@@ -322,4 +322,4 @@ const result = {
322
322
  }
323
323
  };
324
324
  export default result;
325
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50cm9zcGVjdGlvbi1yZXN1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2NvbW1vbi9pbnRyb3NwZWN0aW9uLXJlc3VsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQkFBb0I7QUFPZCxNQUFNLE1BQU0sR0FBNEI7SUFDNUMsZUFBZSxFQUFFO1FBQ2YsNkJBQTZCLEVBQUU7WUFDN0Isd0JBQXdCO1lBQ3hCLDhCQUE4QjtZQUM5QixhQUFhO1lBQ2IsaUNBQWlDO1lBQ2pDLDhCQUE4QjtZQUM5QixnQ0FBZ0M7WUFDaEMsNEJBQTRCO1NBQzdCO1FBQ0QsK0JBQStCLEVBQUU7WUFDL0IseUJBQXlCO1lBQ3pCLE9BQU87U0FDUjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4Qix3QkFBd0I7WUFDeEIsc0JBQXNCO1lBQ3RCLE9BQU87U0FDUjtRQUNELHNCQUFzQixFQUFFO1lBQ3RCLGFBQWE7WUFDYix5QkFBeUI7U0FDMUI7UUFDRCxtQkFBbUIsRUFBRTtZQUNuQix3QkFBd0I7WUFDeEIsOEJBQThCO1lBQzlCLG9CQUFvQjtZQUNwQixPQUFPO1lBQ1AsMkJBQTJCO1lBQzNCLHVCQUF1QjtTQUN4QjtRQUNELHFCQUFxQixFQUFFO1lBQ3JCLG9CQUFvQjtZQUNwQixTQUFTO1lBQ1QsNkJBQTZCO1NBQzlCO1FBQ0QsbUJBQW1CLEVBQUU7WUFDbkIsT0FBTztZQUNQLGVBQWU7U0FDaEI7UUFDRCxxQkFBcUIsRUFBRTtZQUNyQixTQUFTO1lBQ1QsMkJBQTJCO1NBQzVCO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsVUFBVTtZQUNWLDJCQUEyQjtTQUM1QjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4QixXQUFXO1NBQ1o7UUFDRCxhQUFhLEVBQUU7WUFDYiwwQkFBMEI7WUFDMUIsMkJBQTJCO1lBQzNCLHdCQUF3QjtZQUN4QixzQkFBc0I7WUFDdEIsK0JBQStC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QjtTQUM1QjtRQUNELGdDQUFnQyxFQUFFO1lBQ2hDLFNBQVM7WUFDVCw2QkFBNkI7U0FDOUI7UUFDRCxxQkFBcUIsRUFBRTtZQUNyQixTQUFTO1lBQ1QsMkJBQTJCO1NBQzVCO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsVUFBVTtZQUNWLDJCQUEyQjtTQUM1QjtRQUNELDRCQUE0QixFQUFFO1lBQzVCLDZCQUE2QjtZQUM3QixnQkFBZ0I7U0FDakI7UUFDRCx3QkFBd0IsRUFBRTtZQUN4Qix3QkFBd0I7WUFDeEIsdUJBQXVCO1lBQ3ZCLE9BQU87WUFDUCxpQkFBaUI7WUFDakIsd0JBQXdCO1NBQ3pCO1FBQ0QsdUJBQXVCLEVBQUU7WUFDdkIsd0JBQXdCO1lBQ3hCLFdBQVc7U0FDWjtLQUNGO0NBQ0YsQ0FBQztBQUNJLGVBQWUsTUFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgKi9cclxuXHJcbiAgICAgIGV4cG9ydCBpbnRlcmZhY2UgUG9zc2libGVUeXBlc1Jlc3VsdERhdGEge1xyXG4gICAgICAgIHBvc3NpYmxlVHlwZXM6IHtcclxuICAgICAgICAgIFtrZXk6IHN0cmluZ106IHN0cmluZ1tdXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IHJlc3VsdDogUG9zc2libGVUeXBlc1Jlc3VsdERhdGEgPSB7XHJcbiAgXCJwb3NzaWJsZVR5cGVzXCI6IHtcclxuICAgIFwiQWRkRnVsZmlsbG1lbnRUb09yZGVyUmVzdWx0XCI6IFtcclxuICAgICAgXCJDcmVhdGVGdWxmaWxsbWVudEVycm9yXCIsXHJcbiAgICAgIFwiRW1wdHlPcmRlckxpbmVTZWxlY3Rpb25FcnJvclwiLFxyXG4gICAgICBcIkZ1bGZpbGxtZW50XCIsXHJcbiAgICAgIFwiRnVsZmlsbG1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxyXG4gICAgICBcIkluc3VmZmljaWVudFN0b2NrT25IYW5kRXJyb3JcIixcclxuICAgICAgXCJJbnZhbGlkRnVsZmlsbG1lbnRIYW5kbGVyRXJyb3JcIixcclxuICAgICAgXCJJdGVtc0FscmVhZHlGdWxmaWxsZWRFcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJBZGRNYW51YWxQYXltZW50VG9PcmRlclJlc3VsdFwiOiBbXHJcbiAgICAgIFwiTWFudWFsUGF5bWVudFN0YXRlRXJyb3JcIixcclxuICAgICAgXCJPcmRlclwiXHJcbiAgICBdLFxyXG4gICAgXCJBcHBseUNvdXBvbkNvZGVSZXN1bHRcIjogW1xyXG4gICAgICBcIkNvdXBvbkNvZGVFeHBpcmVkRXJyb3JcIixcclxuICAgICAgXCJDb3Vwb25Db2RlSW52YWxpZEVycm9yXCIsXHJcbiAgICAgIFwiQ291cG9uQ29kZUxpbWl0RXJyb3JcIixcclxuICAgICAgXCJPcmRlclwiXHJcbiAgICBdLFxyXG4gICAgXCJBdXRoZW50aWNhdGlvblJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQ3VycmVudFVzZXJcIixcclxuICAgICAgXCJJbnZhbGlkQ3JlZGVudGlhbHNFcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJDYW5jZWxPcmRlclJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQ2FuY2VsQWN0aXZlT3JkZXJFcnJvclwiLFxyXG4gICAgICBcIkVtcHR5T3JkZXJMaW5lU2VsZWN0aW9uRXJyb3JcIixcclxuICAgICAgXCJNdWx0aXBsZU9yZGVyRXJyb3JcIixcclxuICAgICAgXCJPcmRlclwiLFxyXG4gICAgICBcIk9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcclxuICAgICAgXCJRdWFudGl0eVRvb0dyZWF0RXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiQ2FuY2VsUGF5bWVudFJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQ2FuY2VsUGF5bWVudEVycm9yXCIsXHJcbiAgICAgIFwiUGF5bWVudFwiLFxyXG4gICAgICBcIlBheW1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJDcmVhdGVBc3NldFJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQXNzZXRcIixcclxuICAgICAgXCJNaW1lVHlwZUVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIkNyZWF0ZUNoYW5uZWxSZXN1bHRcIjogW1xyXG4gICAgICBcIkNoYW5uZWxcIixcclxuICAgICAgXCJMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIkNyZWF0ZUN1c3RvbWVyUmVzdWx0XCI6IFtcclxuICAgICAgXCJDdXN0b21lclwiLFxyXG4gICAgICBcIkVtYWlsQWRkcmVzc0NvbmZsaWN0RXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiQ3JlYXRlUHJvbW90aW9uUmVzdWx0XCI6IFtcclxuICAgICAgXCJNaXNzaW5nQ29uZGl0aW9uc0Vycm9yXCIsXHJcbiAgICAgIFwiUHJvbW90aW9uXCJcclxuICAgIF0sXHJcbiAgICBcIkN1c3RvbUZpZWxkXCI6IFtcclxuICAgICAgXCJCb29sZWFuQ3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiRmxvYXRDdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIkludEN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJMb2NhbGVUZXh0Q3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiU3RyaW5nQ3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJUZXh0Q3VzdG9tRmllbGRDb25maWdcIlxyXG4gICAgXSxcclxuICAgIFwiQ3VzdG9tRmllbGRDb25maWdcIjogW1xyXG4gICAgICBcIkJvb2xlYW5DdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIkRhdGVUaW1lQ3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJGbG9hdEN1c3RvbUZpZWxkQ29uZmlnXCIsXHJcbiAgICAgIFwiSW50Q3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJMb2NhbGVTdHJpbmdDdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIkxvY2FsZVRleHRDdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIlJlbGF0aW9uQ3VzdG9tRmllbGRDb25maWdcIixcclxuICAgICAgXCJTdHJpbmdDdXN0b21GaWVsZENvbmZpZ1wiLFxyXG4gICAgICBcIlRleHRDdXN0b21GaWVsZENvbmZpZ1wiXHJcbiAgICBdLFxyXG4gICAgXCJEdXBsaWNhdGVFbnRpdHlSZXN1bHRcIjogW1xyXG4gICAgICBcIkR1cGxpY2F0ZUVudGl0eUVycm9yXCIsXHJcbiAgICAgIFwiRHVwbGljYXRlRW50aXR5U3VjY2Vzc1wiXHJcbiAgICBdLFxyXG4gICAgXCJFcnJvclJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQWxyZWFkeVJlZnVuZGVkRXJyb3JcIixcclxuICAgICAgXCJDYW5jZWxBY3RpdmVPcmRlckVycm9yXCIsXHJcbiAgICAgIFwiQ2FuY2VsUGF5bWVudEVycm9yXCIsXHJcbiAgICAgIFwiQ2hhbm5lbERlZmF1bHRMYW5ndWFnZUVycm9yXCIsXHJcbiAgICAgIFwiQ291cG9uQ29kZUV4cGlyZWRFcnJvclwiLFxyXG4gICAgICBcIkNvdXBvbkNvZGVJbnZhbGlkRXJyb3JcIixcclxuICAgICAgXCJDb3Vwb25Db2RlTGltaXRFcnJvclwiLFxyXG4gICAgICBcIkNyZWF0ZUZ1bGZpbGxtZW50RXJyb3JcIixcclxuICAgICAgXCJEdXBsaWNhdGVFbnRpdHlFcnJvclwiLFxyXG4gICAgICBcIkVtYWlsQWRkcmVzc0NvbmZsaWN0RXJyb3JcIixcclxuICAgICAgXCJFbXB0eU9yZGVyTGluZVNlbGVjdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiRmFjZXRJblVzZUVycm9yXCIsXHJcbiAgICAgIFwiRnVsZmlsbG1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxyXG4gICAgICBcIkd1ZXN0Q2hlY2tvdXRFcnJvclwiLFxyXG4gICAgICBcIkluZWxpZ2libGVTaGlwcGluZ01ldGhvZEVycm9yXCIsXHJcbiAgICAgIFwiSW5zdWZmaWNpZW50U3RvY2tFcnJvclwiLFxyXG4gICAgICBcIkluc3VmZmljaWVudFN0b2NrT25IYW5kRXJyb3JcIixcclxuICAgICAgXCJJbnZhbGlkQ3JlZGVudGlhbHNFcnJvclwiLFxyXG4gICAgICBcIkludmFsaWRGdWxmaWxsbWVudEhhbmRsZXJFcnJvclwiLFxyXG4gICAgICBcIkl0ZW1zQWxyZWFkeUZ1bGZpbGxlZEVycm9yXCIsXHJcbiAgICAgIFwiTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvclwiLFxyXG4gICAgICBcIk1hbnVhbFBheW1lbnRTdGF0ZUVycm9yXCIsXHJcbiAgICAgIFwiTWltZVR5cGVFcnJvclwiLFxyXG4gICAgICBcIk1pc3NpbmdDb25kaXRpb25zRXJyb3JcIixcclxuICAgICAgXCJNdWx0aXBsZU9yZGVyRXJyb3JcIixcclxuICAgICAgXCJOYXRpdmVBdXRoU3RyYXRlZ3lFcnJvclwiLFxyXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxyXG4gICAgICBcIk5vQWN0aXZlT3JkZXJFcnJvclwiLFxyXG4gICAgICBcIk5vQ2hhbmdlc1NwZWNpZmllZEVycm9yXCIsXHJcbiAgICAgIFwiTm90aGluZ1RvUmVmdW5kRXJyb3JcIixcclxuICAgICAgXCJPcmRlckxpbWl0RXJyb3JcIixcclxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25TdGF0ZUVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxyXG4gICAgICBcIlBheW1lbnRNZXRob2RNaXNzaW5nRXJyb3JcIixcclxuICAgICAgXCJQYXltZW50T3JkZXJNaXNtYXRjaEVycm9yXCIsXHJcbiAgICAgIFwiUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiUHJvZHVjdE9wdGlvbkluVXNlRXJyb3JcIixcclxuICAgICAgXCJRdWFudGl0eVRvb0dyZWF0RXJyb3JcIixcclxuICAgICAgXCJSZWZ1bmRBbW91bnRFcnJvclwiLFxyXG4gICAgICBcIlJlZnVuZE9yZGVyU3RhdGVFcnJvclwiLFxyXG4gICAgICBcIlJlZnVuZFBheW1lbnRJZE1pc3NpbmdFcnJvclwiLFxyXG4gICAgICBcIlJlZnVuZFN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiU2V0dGxlUGF5bWVudEVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIk1vZGlmeU9yZGVyUmVzdWx0XCI6IFtcclxuICAgICAgXCJDb3Vwb25Db2RlRXhwaXJlZEVycm9yXCIsXHJcbiAgICAgIFwiQ291cG9uQ29kZUludmFsaWRFcnJvclwiLFxyXG4gICAgICBcIkNvdXBvbkNvZGVMaW1pdEVycm9yXCIsXHJcbiAgICAgIFwiSW5lbGlnaWJsZVNoaXBwaW5nTWV0aG9kRXJyb3JcIixcclxuICAgICAgXCJJbnN1ZmZpY2llbnRTdG9ja0Vycm9yXCIsXHJcbiAgICAgIFwiTmVnYXRpdmVRdWFudGl0eUVycm9yXCIsXHJcbiAgICAgIFwiTm9DaGFuZ2VzU3BlY2lmaWVkRXJyb3JcIixcclxuICAgICAgXCJPcmRlclwiLFxyXG4gICAgICBcIk9yZGVyTGltaXRFcnJvclwiLFxyXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uU3RhdGVFcnJvclwiLFxyXG4gICAgICBcIlBheW1lbnRNZXRob2RNaXNzaW5nRXJyb3JcIixcclxuICAgICAgXCJSZWZ1bmRQYXltZW50SWRNaXNzaW5nRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiTmF0aXZlQXV0aGVudGljYXRpb25SZXN1bHRcIjogW1xyXG4gICAgICBcIkN1cnJlbnRVc2VyXCIsXHJcbiAgICAgIFwiSW52YWxpZENyZWRlbnRpYWxzRXJyb3JcIixcclxuICAgICAgXCJOYXRpdmVBdXRoU3RyYXRlZ3lFcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJOb2RlXCI6IFtcclxuICAgICAgXCJBZGRyZXNzXCIsXHJcbiAgICAgIFwiQWRtaW5pc3RyYXRvclwiLFxyXG4gICAgICBcIkFsbG9jYXRpb25cIixcclxuICAgICAgXCJBc3NldFwiLFxyXG4gICAgICBcIkF1dGhlbnRpY2F0aW9uTWV0aG9kXCIsXHJcbiAgICAgIFwiQ2FuY2VsbGF0aW9uXCIsXHJcbiAgICAgIFwiQ2hhbm5lbFwiLFxyXG4gICAgICBcIkNvbGxlY3Rpb25cIixcclxuICAgICAgXCJDb3VudHJ5XCIsXHJcbiAgICAgIFwiQ3VzdG9tZXJcIixcclxuICAgICAgXCJDdXN0b21lckdyb3VwXCIsXHJcbiAgICAgIFwiRmFjZXRcIixcclxuICAgICAgXCJGYWNldFZhbHVlXCIsXHJcbiAgICAgIFwiRnVsZmlsbG1lbnRcIixcclxuICAgICAgXCJIaXN0b3J5RW50cnlcIixcclxuICAgICAgXCJKb2JcIixcclxuICAgICAgXCJPcmRlclwiLFxyXG4gICAgICBcIk9yZGVyTGluZVwiLFxyXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uXCIsXHJcbiAgICAgIFwiUGF5bWVudFwiLFxyXG4gICAgICBcIlBheW1lbnRNZXRob2RcIixcclxuICAgICAgXCJQcm9kdWN0XCIsXHJcbiAgICAgIFwiUHJvZHVjdE9wdGlvblwiLFxyXG4gICAgICBcIlByb2R1Y3RPcHRpb25Hcm91cFwiLFxyXG4gICAgICBcIlByb2R1Y3RWYXJpYW50XCIsXHJcbiAgICAgIFwiUHJvbW90aW9uXCIsXHJcbiAgICAgIFwiUHJvdmluY2VcIixcclxuICAgICAgXCJSZWZ1bmRcIixcclxuICAgICAgXCJSZWxlYXNlXCIsXHJcbiAgICAgIFwiUmV0dXJuXCIsXHJcbiAgICAgIFwiUm9sZVwiLFxyXG4gICAgICBcIlNhbGVcIixcclxuICAgICAgXCJTZWxsZXJcIixcclxuICAgICAgXCJTaGlwcGluZ01ldGhvZFwiLFxyXG4gICAgICBcIlN0b2NrQWRqdXN0bWVudFwiLFxyXG4gICAgICBcIlN0b2NrTGV2ZWxcIixcclxuICAgICAgXCJTdG9ja0xvY2F0aW9uXCIsXHJcbiAgICAgIFwiU3VyY2hhcmdlXCIsXHJcbiAgICAgIFwiVGFnXCIsXHJcbiAgICAgIFwiVGF4Q2F0ZWdvcnlcIixcclxuICAgICAgXCJUYXhSYXRlXCIsXHJcbiAgICAgIFwiVXNlclwiLFxyXG4gICAgICBcIlpvbmVcIlxyXG4gICAgXSxcclxuICAgIFwiUGFnaW5hdGVkTGlzdFwiOiBbXHJcbiAgICAgIFwiQWRtaW5pc3RyYXRvckxpc3RcIixcclxuICAgICAgXCJBc3NldExpc3RcIixcclxuICAgICAgXCJDaGFubmVsTGlzdFwiLFxyXG4gICAgICBcIkNvbGxlY3Rpb25MaXN0XCIsXHJcbiAgICAgIFwiQ291bnRyeUxpc3RcIixcclxuICAgICAgXCJDdXN0b21lckdyb3VwTGlzdFwiLFxyXG4gICAgICBcIkN1c3RvbWVyTGlzdFwiLFxyXG4gICAgICBcIkZhY2V0TGlzdFwiLFxyXG4gICAgICBcIkZhY2V0VmFsdWVMaXN0XCIsXHJcbiAgICAgIFwiSGlzdG9yeUVudHJ5TGlzdFwiLFxyXG4gICAgICBcIkpvYkxpc3RcIixcclxuICAgICAgXCJPcmRlckxpc3RcIixcclxuICAgICAgXCJQYXltZW50TWV0aG9kTGlzdFwiLFxyXG4gICAgICBcIlByb2R1Y3RMaXN0XCIsXHJcbiAgICAgIFwiUHJvZHVjdFZhcmlhbnRMaXN0XCIsXHJcbiAgICAgIFwiUHJvbW90aW9uTGlzdFwiLFxyXG4gICAgICBcIlByb3ZpbmNlTGlzdFwiLFxyXG4gICAgICBcIlJvbGVMaXN0XCIsXHJcbiAgICAgIFwiU2VsbGVyTGlzdFwiLFxyXG4gICAgICBcIlNoaXBwaW5nTWV0aG9kTGlzdFwiLFxyXG4gICAgICBcIlN0b2NrTG9jYXRpb25MaXN0XCIsXHJcbiAgICAgIFwiVGFnTGlzdFwiLFxyXG4gICAgICBcIlRheENhdGVnb3J5TGlzdFwiLFxyXG4gICAgICBcIlRheFJhdGVMaXN0XCIsXHJcbiAgICAgIFwiWm9uZUxpc3RcIlxyXG4gICAgXSxcclxuICAgIFwiUmVmdW5kT3JkZXJSZXN1bHRcIjogW1xyXG4gICAgICBcIkFscmVhZHlSZWZ1bmRlZEVycm9yXCIsXHJcbiAgICAgIFwiTXVsdGlwbGVPcmRlckVycm9yXCIsXHJcbiAgICAgIFwiTm90aGluZ1RvUmVmdW5kRXJyb3JcIixcclxuICAgICAgXCJPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiUGF5bWVudE9yZGVyTWlzbWF0Y2hFcnJvclwiLFxyXG4gICAgICBcIlF1YW50aXR5VG9vR3JlYXRFcnJvclwiLFxyXG4gICAgICBcIlJlZnVuZFwiLFxyXG4gICAgICBcIlJlZnVuZEFtb3VudEVycm9yXCIsXHJcbiAgICAgIFwiUmVmdW5kT3JkZXJTdGF0ZUVycm9yXCIsXHJcbiAgICAgIFwiUmVmdW5kU3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiUmVnaW9uXCI6IFtcclxuICAgICAgXCJDb3VudHJ5XCIsXHJcbiAgICAgIFwiUHJvdmluY2VcIlxyXG4gICAgXSxcclxuICAgIFwiUmVtb3ZlRmFjZXRGcm9tQ2hhbm5lbFJlc3VsdFwiOiBbXHJcbiAgICAgIFwiRmFjZXRcIixcclxuICAgICAgXCJGYWNldEluVXNlRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiUmVtb3ZlT3B0aW9uR3JvdXBGcm9tUHJvZHVjdFJlc3VsdFwiOiBbXHJcbiAgICAgIFwiUHJvZHVjdFwiLFxyXG4gICAgICBcIlByb2R1Y3RPcHRpb25JblVzZUVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIlJlbW92ZU9yZGVySXRlbXNSZXN1bHRcIjogW1xyXG4gICAgICBcIk9yZGVyXCIsXHJcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25FcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJTZWFyY2hSZXN1bHRQcmljZVwiOiBbXHJcbiAgICAgIFwiUHJpY2VSYW5nZVwiLFxyXG4gICAgICBcIlNpbmdsZVByaWNlXCJcclxuICAgIF0sXHJcbiAgICBcIlNldEN1c3RvbWVyRm9yRHJhZnRPcmRlclJlc3VsdFwiOiBbXHJcbiAgICAgIFwiRW1haWxBZGRyZXNzQ29uZmxpY3RFcnJvclwiLFxyXG4gICAgICBcIk9yZGVyXCJcclxuICAgIF0sXHJcbiAgICBcIlNldE9yZGVyU2hpcHBpbmdNZXRob2RSZXN1bHRcIjogW1xyXG4gICAgICBcIkluZWxpZ2libGVTaGlwcGluZ01ldGhvZEVycm9yXCIsXHJcbiAgICAgIFwiTm9BY3RpdmVPcmRlckVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJcIixcclxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvbkVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIlNldHRsZVBheW1lbnRSZXN1bHRcIjogW1xyXG4gICAgICBcIk9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcclxuICAgICAgXCJQYXltZW50XCIsXHJcbiAgICAgIFwiUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXHJcbiAgICAgIFwiU2V0dGxlUGF5bWVudEVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIlNldHRsZVJlZnVuZFJlc3VsdFwiOiBbXHJcbiAgICAgIFwiUmVmdW5kXCIsXHJcbiAgICAgIFwiUmVmdW5kU3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiU3RvY2tNb3ZlbWVudFwiOiBbXHJcbiAgICAgIFwiQWxsb2NhdGlvblwiLFxyXG4gICAgICBcIkNhbmNlbGxhdGlvblwiLFxyXG4gICAgICBcIlJlbGVhc2VcIixcclxuICAgICAgXCJSZXR1cm5cIixcclxuICAgICAgXCJTYWxlXCIsXHJcbiAgICAgIFwiU3RvY2tBZGp1c3RtZW50XCJcclxuICAgIF0sXHJcbiAgICBcIlN0b2NrTW92ZW1lbnRJdGVtXCI6IFtcclxuICAgICAgXCJBbGxvY2F0aW9uXCIsXHJcbiAgICAgIFwiQ2FuY2VsbGF0aW9uXCIsXHJcbiAgICAgIFwiUmVsZWFzZVwiLFxyXG4gICAgICBcIlJldHVyblwiLFxyXG4gICAgICBcIlNhbGVcIixcclxuICAgICAgXCJTdG9ja0FkanVzdG1lbnRcIlxyXG4gICAgXSxcclxuICAgIFwiVHJhbnNpdGlvbkZ1bGZpbGxtZW50VG9TdGF0ZVJlc3VsdFwiOiBbXHJcbiAgICAgIFwiRnVsZmlsbG1lbnRcIixcclxuICAgICAgXCJGdWxmaWxsbWVudFN0YXRlVHJhbnNpdGlvbkVycm9yXCJcclxuICAgIF0sXHJcbiAgICBcIlRyYW5zaXRpb25PcmRlclRvU3RhdGVSZXN1bHRcIjogW1xyXG4gICAgICBcIk9yZGVyXCIsXHJcbiAgICAgIFwiT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJUcmFuc2l0aW9uUGF5bWVudFRvU3RhdGVSZXN1bHRcIjogW1xyXG4gICAgICBcIlBheW1lbnRcIixcclxuICAgICAgXCJQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiVXBkYXRlQ2hhbm5lbFJlc3VsdFwiOiBbXHJcbiAgICAgIFwiQ2hhbm5lbFwiLFxyXG4gICAgICBcIkxhbmd1YWdlTm90QXZhaWxhYmxlRXJyb3JcIlxyXG4gICAgXSxcclxuICAgIFwiVXBkYXRlQ3VzdG9tZXJSZXN1bHRcIjogW1xyXG4gICAgICBcIkN1c3RvbWVyXCIsXHJcbiAgICAgIFwiRW1haWxBZGRyZXNzQ29uZmxpY3RFcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJVcGRhdGVHbG9iYWxTZXR0aW5nc1Jlc3VsdFwiOiBbXHJcbiAgICAgIFwiQ2hhbm5lbERlZmF1bHRMYW5ndWFnZUVycm9yXCIsXHJcbiAgICAgIFwiR2xvYmFsU2V0dGluZ3NcIlxyXG4gICAgXSxcclxuICAgIFwiVXBkYXRlT3JkZXJJdGVtc1Jlc3VsdFwiOiBbXHJcbiAgICAgIFwiSW5zdWZmaWNpZW50U3RvY2tFcnJvclwiLFxyXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxyXG4gICAgICBcIk9yZGVyXCIsXHJcbiAgICAgIFwiT3JkZXJMaW1pdEVycm9yXCIsXHJcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25FcnJvclwiXHJcbiAgICBdLFxyXG4gICAgXCJVcGRhdGVQcm9tb3Rpb25SZXN1bHRcIjogW1xyXG4gICAgICBcIk1pc3NpbmdDb25kaXRpb25zRXJyb3JcIixcclxuICAgICAgXCJQcm9tb3Rpb25cIlxyXG4gICAgXVxyXG4gIH1cclxufTtcclxuICAgICAgZXhwb3J0IGRlZmF1bHQgcmVzdWx0O1xyXG4gICAgIl19
325
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50cm9zcGVjdGlvbi1yZXN1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2NvbW1vbi9pbnRyb3NwZWN0aW9uLXJlc3VsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQkFBb0I7QUFPZCxNQUFNLE1BQU0sR0FBNEI7SUFDNUMsZUFBZSxFQUFFO1FBQ2YsNkJBQTZCLEVBQUU7WUFDN0Isd0JBQXdCO1lBQ3hCLDhCQUE4QjtZQUM5QixhQUFhO1lBQ2IsaUNBQWlDO1lBQ2pDLDhCQUE4QjtZQUM5QixnQ0FBZ0M7WUFDaEMsNEJBQTRCO1NBQzdCO1FBQ0QsK0JBQStCLEVBQUU7WUFDL0IseUJBQXlCO1lBQ3pCLE9BQU87U0FDUjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4Qix3QkFBd0I7WUFDeEIsc0JBQXNCO1lBQ3RCLE9BQU87U0FDUjtRQUNELHNCQUFzQixFQUFFO1lBQ3RCLGFBQWE7WUFDYix5QkFBeUI7U0FDMUI7UUFDRCxtQkFBbUIsRUFBRTtZQUNuQix3QkFBd0I7WUFDeEIsOEJBQThCO1lBQzlCLG9CQUFvQjtZQUNwQixPQUFPO1lBQ1AsMkJBQTJCO1lBQzNCLHVCQUF1QjtTQUN4QjtRQUNELHFCQUFxQixFQUFFO1lBQ3JCLG9CQUFvQjtZQUNwQixTQUFTO1lBQ1QsNkJBQTZCO1NBQzlCO1FBQ0QsbUJBQW1CLEVBQUU7WUFDbkIsT0FBTztZQUNQLGVBQWU7U0FDaEI7UUFDRCxxQkFBcUIsRUFBRTtZQUNyQixTQUFTO1lBQ1QsMkJBQTJCO1NBQzVCO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsVUFBVTtZQUNWLDJCQUEyQjtTQUM1QjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLHdCQUF3QjtZQUN4QixXQUFXO1NBQ1o7UUFDRCxhQUFhLEVBQUU7WUFDYiwwQkFBMEI7WUFDMUIsMkJBQTJCO1lBQzNCLHdCQUF3QjtZQUN4QixzQkFBc0I7WUFDdEIsK0JBQStC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QjtTQUM1QjtRQUNELGdDQUFnQyxFQUFFO1lBQ2hDLFNBQVM7WUFDVCw2QkFBNkI7U0FDOUI7UUFDRCxxQkFBcUIsRUFBRTtZQUNyQixTQUFTO1lBQ1QsMkJBQTJCO1NBQzVCO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsVUFBVTtZQUNWLDJCQUEyQjtTQUM1QjtRQUNELDRCQUE0QixFQUFFO1lBQzVCLDZCQUE2QjtZQUM3QixnQkFBZ0I7U0FDakI7UUFDRCx3QkFBd0IsRUFBRTtZQUN4Qix3QkFBd0I7WUFDeEIsdUJBQXVCO1lBQ3ZCLE9BQU87WUFDUCxpQkFBaUI7WUFDakIsd0JBQXdCO1NBQ3pCO1FBQ0QsdUJBQXVCLEVBQUU7WUFDdkIsd0JBQXdCO1lBQ3hCLFdBQVc7U0FDWjtLQUNGO0NBQ0YsQ0FBQztBQUNJLGVBQWUsTUFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgKi9cblxuICAgICAgZXhwb3J0IGludGVyZmFjZSBQb3NzaWJsZVR5cGVzUmVzdWx0RGF0YSB7XG4gICAgICAgIHBvc3NpYmxlVHlwZXM6IHtcbiAgICAgICAgICBba2V5OiBzdHJpbmddOiBzdHJpbmdbXVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCByZXN1bHQ6IFBvc3NpYmxlVHlwZXNSZXN1bHREYXRhID0ge1xuICBcInBvc3NpYmxlVHlwZXNcIjoge1xuICAgIFwiQWRkRnVsZmlsbG1lbnRUb09yZGVyUmVzdWx0XCI6IFtcbiAgICAgIFwiQ3JlYXRlRnVsZmlsbG1lbnRFcnJvclwiLFxuICAgICAgXCJFbXB0eU9yZGVyTGluZVNlbGVjdGlvbkVycm9yXCIsXG4gICAgICBcIkZ1bGZpbGxtZW50XCIsXG4gICAgICBcIkZ1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiSW5zdWZmaWNpZW50U3RvY2tPbkhhbmRFcnJvclwiLFxuICAgICAgXCJJbnZhbGlkRnVsZmlsbG1lbnRIYW5kbGVyRXJyb3JcIixcbiAgICAgIFwiSXRlbXNBbHJlYWR5RnVsZmlsbGVkRXJyb3JcIlxuICAgIF0sXG4gICAgXCJBZGRNYW51YWxQYXltZW50VG9PcmRlclJlc3VsdFwiOiBbXG4gICAgICBcIk1hbnVhbFBheW1lbnRTdGF0ZUVycm9yXCIsXG4gICAgICBcIk9yZGVyXCJcbiAgICBdLFxuICAgIFwiQXBwbHlDb3Vwb25Db2RlUmVzdWx0XCI6IFtcbiAgICAgIFwiQ291cG9uQ29kZUV4cGlyZWRFcnJvclwiLFxuICAgICAgXCJDb3Vwb25Db2RlSW52YWxpZEVycm9yXCIsXG4gICAgICBcIkNvdXBvbkNvZGVMaW1pdEVycm9yXCIsXG4gICAgICBcIk9yZGVyXCJcbiAgICBdLFxuICAgIFwiQXV0aGVudGljYXRpb25SZXN1bHRcIjogW1xuICAgICAgXCJDdXJyZW50VXNlclwiLFxuICAgICAgXCJJbnZhbGlkQ3JlZGVudGlhbHNFcnJvclwiXG4gICAgXSxcbiAgICBcIkNhbmNlbE9yZGVyUmVzdWx0XCI6IFtcbiAgICAgIFwiQ2FuY2VsQWN0aXZlT3JkZXJFcnJvclwiLFxuICAgICAgXCJFbXB0eU9yZGVyTGluZVNlbGVjdGlvbkVycm9yXCIsXG4gICAgICBcIk11bHRpcGxlT3JkZXJFcnJvclwiLFxuICAgICAgXCJPcmRlclwiLFxuICAgICAgXCJPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXG4gICAgICBcIlF1YW50aXR5VG9vR3JlYXRFcnJvclwiXG4gICAgXSxcbiAgICBcIkNhbmNlbFBheW1lbnRSZXN1bHRcIjogW1xuICAgICAgXCJDYW5jZWxQYXltZW50RXJyb3JcIixcbiAgICAgIFwiUGF5bWVudFwiLFxuICAgICAgXCJQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxuICAgIF0sXG4gICAgXCJDcmVhdGVBc3NldFJlc3VsdFwiOiBbXG4gICAgICBcIkFzc2V0XCIsXG4gICAgICBcIk1pbWVUeXBlRXJyb3JcIlxuICAgIF0sXG4gICAgXCJDcmVhdGVDaGFubmVsUmVzdWx0XCI6IFtcbiAgICAgIFwiQ2hhbm5lbFwiLFxuICAgICAgXCJMYW5ndWFnZU5vdEF2YWlsYWJsZUVycm9yXCJcbiAgICBdLFxuICAgIFwiQ3JlYXRlQ3VzdG9tZXJSZXN1bHRcIjogW1xuICAgICAgXCJDdXN0b21lclwiLFxuICAgICAgXCJFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yXCJcbiAgICBdLFxuICAgIFwiQ3JlYXRlUHJvbW90aW9uUmVzdWx0XCI6IFtcbiAgICAgIFwiTWlzc2luZ0NvbmRpdGlvbnNFcnJvclwiLFxuICAgICAgXCJQcm9tb3Rpb25cIlxuICAgIF0sXG4gICAgXCJDdXN0b21GaWVsZFwiOiBbXG4gICAgICBcIkJvb2xlYW5DdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJEYXRlVGltZUN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIkZsb2F0Q3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiSW50Q3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiTG9jYWxlU3RyaW5nQ3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiTG9jYWxlVGV4dEN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIlJlbGF0aW9uQ3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiU3RyaW5nQ3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiVGV4dEN1c3RvbUZpZWxkQ29uZmlnXCJcbiAgICBdLFxuICAgIFwiQ3VzdG9tRmllbGRDb25maWdcIjogW1xuICAgICAgXCJCb29sZWFuQ3VzdG9tRmllbGRDb25maWdcIixcbiAgICAgIFwiRGF0ZVRpbWVDdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJGbG9hdEN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIkludEN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIkxvY2FsZVN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIkxvY2FsZVRleHRDdXN0b21GaWVsZENvbmZpZ1wiLFxuICAgICAgXCJSZWxhdGlvbkN1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIlN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnXCIsXG4gICAgICBcIlRleHRDdXN0b21GaWVsZENvbmZpZ1wiXG4gICAgXSxcbiAgICBcIkR1cGxpY2F0ZUVudGl0eVJlc3VsdFwiOiBbXG4gICAgICBcIkR1cGxpY2F0ZUVudGl0eUVycm9yXCIsXG4gICAgICBcIkR1cGxpY2F0ZUVudGl0eVN1Y2Nlc3NcIlxuICAgIF0sXG4gICAgXCJFcnJvclJlc3VsdFwiOiBbXG4gICAgICBcIkFscmVhZHlSZWZ1bmRlZEVycm9yXCIsXG4gICAgICBcIkNhbmNlbEFjdGl2ZU9yZGVyRXJyb3JcIixcbiAgICAgIFwiQ2FuY2VsUGF5bWVudEVycm9yXCIsXG4gICAgICBcIkNoYW5uZWxEZWZhdWx0TGFuZ3VhZ2VFcnJvclwiLFxuICAgICAgXCJDb3Vwb25Db2RlRXhwaXJlZEVycm9yXCIsXG4gICAgICBcIkNvdXBvbkNvZGVJbnZhbGlkRXJyb3JcIixcbiAgICAgIFwiQ291cG9uQ29kZUxpbWl0RXJyb3JcIixcbiAgICAgIFwiQ3JlYXRlRnVsZmlsbG1lbnRFcnJvclwiLFxuICAgICAgXCJEdXBsaWNhdGVFbnRpdHlFcnJvclwiLFxuICAgICAgXCJFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yXCIsXG4gICAgICBcIkVtcHR5T3JkZXJMaW5lU2VsZWN0aW9uRXJyb3JcIixcbiAgICAgIFwiRmFjZXRJblVzZUVycm9yXCIsXG4gICAgICBcIkZ1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiR3Vlc3RDaGVja291dEVycm9yXCIsXG4gICAgICBcIkluZWxpZ2libGVTaGlwcGluZ01ldGhvZEVycm9yXCIsXG4gICAgICBcIkluc3VmZmljaWVudFN0b2NrRXJyb3JcIixcbiAgICAgIFwiSW5zdWZmaWNpZW50U3RvY2tPbkhhbmRFcnJvclwiLFxuICAgICAgXCJJbnZhbGlkQ3JlZGVudGlhbHNFcnJvclwiLFxuICAgICAgXCJJbnZhbGlkRnVsZmlsbG1lbnRIYW5kbGVyRXJyb3JcIixcbiAgICAgIFwiSXRlbXNBbHJlYWR5RnVsZmlsbGVkRXJyb3JcIixcbiAgICAgIFwiTGFuZ3VhZ2VOb3RBdmFpbGFibGVFcnJvclwiLFxuICAgICAgXCJNYW51YWxQYXltZW50U3RhdGVFcnJvclwiLFxuICAgICAgXCJNaW1lVHlwZUVycm9yXCIsXG4gICAgICBcIk1pc3NpbmdDb25kaXRpb25zRXJyb3JcIixcbiAgICAgIFwiTXVsdGlwbGVPcmRlckVycm9yXCIsXG4gICAgICBcIk5hdGl2ZUF1dGhTdHJhdGVneUVycm9yXCIsXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxuICAgICAgXCJOb0FjdGl2ZU9yZGVyRXJyb3JcIixcbiAgICAgIFwiTm9DaGFuZ2VzU3BlY2lmaWVkRXJyb3JcIixcbiAgICAgIFwiTm90aGluZ1RvUmVmdW5kRXJyb3JcIixcbiAgICAgIFwiT3JkZXJMaW1pdEVycm9yXCIsXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uRXJyb3JcIixcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25TdGF0ZUVycm9yXCIsXG4gICAgICBcIk9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiUGF5bWVudE1ldGhvZE1pc3NpbmdFcnJvclwiLFxuICAgICAgXCJQYXltZW50T3JkZXJNaXNtYXRjaEVycm9yXCIsXG4gICAgICBcIlBheW1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxuICAgICAgXCJQcm9kdWN0T3B0aW9uSW5Vc2VFcnJvclwiLFxuICAgICAgXCJRdWFudGl0eVRvb0dyZWF0RXJyb3JcIixcbiAgICAgIFwiUmVmdW5kQW1vdW50RXJyb3JcIixcbiAgICAgIFwiUmVmdW5kT3JkZXJTdGF0ZUVycm9yXCIsXG4gICAgICBcIlJlZnVuZFBheW1lbnRJZE1pc3NpbmdFcnJvclwiLFxuICAgICAgXCJSZWZ1bmRTdGF0ZVRyYW5zaXRpb25FcnJvclwiLFxuICAgICAgXCJTZXR0bGVQYXltZW50RXJyb3JcIlxuICAgIF0sXG4gICAgXCJNb2RpZnlPcmRlclJlc3VsdFwiOiBbXG4gICAgICBcIkNvdXBvbkNvZGVFeHBpcmVkRXJyb3JcIixcbiAgICAgIFwiQ291cG9uQ29kZUludmFsaWRFcnJvclwiLFxuICAgICAgXCJDb3Vwb25Db2RlTGltaXRFcnJvclwiLFxuICAgICAgXCJJbmVsaWdpYmxlU2hpcHBpbmdNZXRob2RFcnJvclwiLFxuICAgICAgXCJJbnN1ZmZpY2llbnRTdG9ja0Vycm9yXCIsXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxuICAgICAgXCJOb0NoYW5nZXNTcGVjaWZpZWRFcnJvclwiLFxuICAgICAgXCJPcmRlclwiLFxuICAgICAgXCJPcmRlckxpbWl0RXJyb3JcIixcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25TdGF0ZUVycm9yXCIsXG4gICAgICBcIlBheW1lbnRNZXRob2RNaXNzaW5nRXJyb3JcIixcbiAgICAgIFwiUmVmdW5kUGF5bWVudElkTWlzc2luZ0Vycm9yXCJcbiAgICBdLFxuICAgIFwiTmF0aXZlQXV0aGVudGljYXRpb25SZXN1bHRcIjogW1xuICAgICAgXCJDdXJyZW50VXNlclwiLFxuICAgICAgXCJJbnZhbGlkQ3JlZGVudGlhbHNFcnJvclwiLFxuICAgICAgXCJOYXRpdmVBdXRoU3RyYXRlZ3lFcnJvclwiXG4gICAgXSxcbiAgICBcIk5vZGVcIjogW1xuICAgICAgXCJBZGRyZXNzXCIsXG4gICAgICBcIkFkbWluaXN0cmF0b3JcIixcbiAgICAgIFwiQWxsb2NhdGlvblwiLFxuICAgICAgXCJBc3NldFwiLFxuICAgICAgXCJBdXRoZW50aWNhdGlvbk1ldGhvZFwiLFxuICAgICAgXCJDYW5jZWxsYXRpb25cIixcbiAgICAgIFwiQ2hhbm5lbFwiLFxuICAgICAgXCJDb2xsZWN0aW9uXCIsXG4gICAgICBcIkNvdW50cnlcIixcbiAgICAgIFwiQ3VzdG9tZXJcIixcbiAgICAgIFwiQ3VzdG9tZXJHcm91cFwiLFxuICAgICAgXCJGYWNldFwiLFxuICAgICAgXCJGYWNldFZhbHVlXCIsXG4gICAgICBcIkZ1bGZpbGxtZW50XCIsXG4gICAgICBcIkhpc3RvcnlFbnRyeVwiLFxuICAgICAgXCJKb2JcIixcbiAgICAgIFwiT3JkZXJcIixcbiAgICAgIFwiT3JkZXJMaW5lXCIsXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uXCIsXG4gICAgICBcIlBheW1lbnRcIixcbiAgICAgIFwiUGF5bWVudE1ldGhvZFwiLFxuICAgICAgXCJQcm9kdWN0XCIsXG4gICAgICBcIlByb2R1Y3RPcHRpb25cIixcbiAgICAgIFwiUHJvZHVjdE9wdGlvbkdyb3VwXCIsXG4gICAgICBcIlByb2R1Y3RWYXJpYW50XCIsXG4gICAgICBcIlByb21vdGlvblwiLFxuICAgICAgXCJQcm92aW5jZVwiLFxuICAgICAgXCJSZWZ1bmRcIixcbiAgICAgIFwiUmVsZWFzZVwiLFxuICAgICAgXCJSZXR1cm5cIixcbiAgICAgIFwiUm9sZVwiLFxuICAgICAgXCJTYWxlXCIsXG4gICAgICBcIlNlbGxlclwiLFxuICAgICAgXCJTaGlwcGluZ01ldGhvZFwiLFxuICAgICAgXCJTdG9ja0FkanVzdG1lbnRcIixcbiAgICAgIFwiU3RvY2tMZXZlbFwiLFxuICAgICAgXCJTdG9ja0xvY2F0aW9uXCIsXG4gICAgICBcIlN1cmNoYXJnZVwiLFxuICAgICAgXCJUYWdcIixcbiAgICAgIFwiVGF4Q2F0ZWdvcnlcIixcbiAgICAgIFwiVGF4UmF0ZVwiLFxuICAgICAgXCJVc2VyXCIsXG4gICAgICBcIlpvbmVcIlxuICAgIF0sXG4gICAgXCJQYWdpbmF0ZWRMaXN0XCI6IFtcbiAgICAgIFwiQWRtaW5pc3RyYXRvckxpc3RcIixcbiAgICAgIFwiQXNzZXRMaXN0XCIsXG4gICAgICBcIkNoYW5uZWxMaXN0XCIsXG4gICAgICBcIkNvbGxlY3Rpb25MaXN0XCIsXG4gICAgICBcIkNvdW50cnlMaXN0XCIsXG4gICAgICBcIkN1c3RvbWVyR3JvdXBMaXN0XCIsXG4gICAgICBcIkN1c3RvbWVyTGlzdFwiLFxuICAgICAgXCJGYWNldExpc3RcIixcbiAgICAgIFwiRmFjZXRWYWx1ZUxpc3RcIixcbiAgICAgIFwiSGlzdG9yeUVudHJ5TGlzdFwiLFxuICAgICAgXCJKb2JMaXN0XCIsXG4gICAgICBcIk9yZGVyTGlzdFwiLFxuICAgICAgXCJQYXltZW50TWV0aG9kTGlzdFwiLFxuICAgICAgXCJQcm9kdWN0TGlzdFwiLFxuICAgICAgXCJQcm9kdWN0VmFyaWFudExpc3RcIixcbiAgICAgIFwiUHJvbW90aW9uTGlzdFwiLFxuICAgICAgXCJQcm92aW5jZUxpc3RcIixcbiAgICAgIFwiUm9sZUxpc3RcIixcbiAgICAgIFwiU2VsbGVyTGlzdFwiLFxuICAgICAgXCJTaGlwcGluZ01ldGhvZExpc3RcIixcbiAgICAgIFwiU3RvY2tMb2NhdGlvbkxpc3RcIixcbiAgICAgIFwiVGFnTGlzdFwiLFxuICAgICAgXCJUYXhDYXRlZ29yeUxpc3RcIixcbiAgICAgIFwiVGF4UmF0ZUxpc3RcIixcbiAgICAgIFwiWm9uZUxpc3RcIlxuICAgIF0sXG4gICAgXCJSZWZ1bmRPcmRlclJlc3VsdFwiOiBbXG4gICAgICBcIkFscmVhZHlSZWZ1bmRlZEVycm9yXCIsXG4gICAgICBcIk11bHRpcGxlT3JkZXJFcnJvclwiLFxuICAgICAgXCJOb3RoaW5nVG9SZWZ1bmRFcnJvclwiLFxuICAgICAgXCJPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yXCIsXG4gICAgICBcIlBheW1lbnRPcmRlck1pc21hdGNoRXJyb3JcIixcbiAgICAgIFwiUXVhbnRpdHlUb29HcmVhdEVycm9yXCIsXG4gICAgICBcIlJlZnVuZFwiLFxuICAgICAgXCJSZWZ1bmRBbW91bnRFcnJvclwiLFxuICAgICAgXCJSZWZ1bmRPcmRlclN0YXRlRXJyb3JcIixcbiAgICAgIFwiUmVmdW5kU3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxuICAgIF0sXG4gICAgXCJSZWdpb25cIjogW1xuICAgICAgXCJDb3VudHJ5XCIsXG4gICAgICBcIlByb3ZpbmNlXCJcbiAgICBdLFxuICAgIFwiUmVtb3ZlRmFjZXRGcm9tQ2hhbm5lbFJlc3VsdFwiOiBbXG4gICAgICBcIkZhY2V0XCIsXG4gICAgICBcIkZhY2V0SW5Vc2VFcnJvclwiXG4gICAgXSxcbiAgICBcIlJlbW92ZU9wdGlvbkdyb3VwRnJvbVByb2R1Y3RSZXN1bHRcIjogW1xuICAgICAgXCJQcm9kdWN0XCIsXG4gICAgICBcIlByb2R1Y3RPcHRpb25JblVzZUVycm9yXCJcbiAgICBdLFxuICAgIFwiUmVtb3ZlT3JkZXJJdGVtc1Jlc3VsdFwiOiBbXG4gICAgICBcIk9yZGVyXCIsXG4gICAgICBcIk9yZGVyTW9kaWZpY2F0aW9uRXJyb3JcIlxuICAgIF0sXG4gICAgXCJTZWFyY2hSZXN1bHRQcmljZVwiOiBbXG4gICAgICBcIlByaWNlUmFuZ2VcIixcbiAgICAgIFwiU2luZ2xlUHJpY2VcIlxuICAgIF0sXG4gICAgXCJTZXRDdXN0b21lckZvckRyYWZ0T3JkZXJSZXN1bHRcIjogW1xuICAgICAgXCJFbWFpbEFkZHJlc3NDb25mbGljdEVycm9yXCIsXG4gICAgICBcIk9yZGVyXCJcbiAgICBdLFxuICAgIFwiU2V0T3JkZXJTaGlwcGluZ01ldGhvZFJlc3VsdFwiOiBbXG4gICAgICBcIkluZWxpZ2libGVTaGlwcGluZ01ldGhvZEVycm9yXCIsXG4gICAgICBcIk5vQWN0aXZlT3JkZXJFcnJvclwiLFxuICAgICAgXCJPcmRlclwiLFxuICAgICAgXCJPcmRlck1vZGlmaWNhdGlvbkVycm9yXCJcbiAgICBdLFxuICAgIFwiU2V0dGxlUGF5bWVudFJlc3VsdFwiOiBbXG4gICAgICBcIk9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiUGF5bWVudFwiLFxuICAgICAgXCJQYXltZW50U3RhdGVUcmFuc2l0aW9uRXJyb3JcIixcbiAgICAgIFwiU2V0dGxlUGF5bWVudEVycm9yXCJcbiAgICBdLFxuICAgIFwiU2V0dGxlUmVmdW5kUmVzdWx0XCI6IFtcbiAgICAgIFwiUmVmdW5kXCIsXG4gICAgICBcIlJlZnVuZFN0YXRlVHJhbnNpdGlvbkVycm9yXCJcbiAgICBdLFxuICAgIFwiU3RvY2tNb3ZlbWVudFwiOiBbXG4gICAgICBcIkFsbG9jYXRpb25cIixcbiAgICAgIFwiQ2FuY2VsbGF0aW9uXCIsXG4gICAgICBcIlJlbGVhc2VcIixcbiAgICAgIFwiUmV0dXJuXCIsXG4gICAgICBcIlNhbGVcIixcbiAgICAgIFwiU3RvY2tBZGp1c3RtZW50XCJcbiAgICBdLFxuICAgIFwiU3RvY2tNb3ZlbWVudEl0ZW1cIjogW1xuICAgICAgXCJBbGxvY2F0aW9uXCIsXG4gICAgICBcIkNhbmNlbGxhdGlvblwiLFxuICAgICAgXCJSZWxlYXNlXCIsXG4gICAgICBcIlJldHVyblwiLFxuICAgICAgXCJTYWxlXCIsXG4gICAgICBcIlN0b2NrQWRqdXN0bWVudFwiXG4gICAgXSxcbiAgICBcIlRyYW5zaXRpb25GdWxmaWxsbWVudFRvU3RhdGVSZXN1bHRcIjogW1xuICAgICAgXCJGdWxmaWxsbWVudFwiLFxuICAgICAgXCJGdWxmaWxsbWVudFN0YXRlVHJhbnNpdGlvbkVycm9yXCJcbiAgICBdLFxuICAgIFwiVHJhbnNpdGlvbk9yZGVyVG9TdGF0ZVJlc3VsdFwiOiBbXG4gICAgICBcIk9yZGVyXCIsXG4gICAgICBcIk9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3JcIlxuICAgIF0sXG4gICAgXCJUcmFuc2l0aW9uUGF5bWVudFRvU3RhdGVSZXN1bHRcIjogW1xuICAgICAgXCJQYXltZW50XCIsXG4gICAgICBcIlBheW1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvclwiXG4gICAgXSxcbiAgICBcIlVwZGF0ZUNoYW5uZWxSZXN1bHRcIjogW1xuICAgICAgXCJDaGFubmVsXCIsXG4gICAgICBcIkxhbmd1YWdlTm90QXZhaWxhYmxlRXJyb3JcIlxuICAgIF0sXG4gICAgXCJVcGRhdGVDdXN0b21lclJlc3VsdFwiOiBbXG4gICAgICBcIkN1c3RvbWVyXCIsXG4gICAgICBcIkVtYWlsQWRkcmVzc0NvbmZsaWN0RXJyb3JcIlxuICAgIF0sXG4gICAgXCJVcGRhdGVHbG9iYWxTZXR0aW5nc1Jlc3VsdFwiOiBbXG4gICAgICBcIkNoYW5uZWxEZWZhdWx0TGFuZ3VhZ2VFcnJvclwiLFxuICAgICAgXCJHbG9iYWxTZXR0aW5nc1wiXG4gICAgXSxcbiAgICBcIlVwZGF0ZU9yZGVySXRlbXNSZXN1bHRcIjogW1xuICAgICAgXCJJbnN1ZmZpY2llbnRTdG9ja0Vycm9yXCIsXG4gICAgICBcIk5lZ2F0aXZlUXVhbnRpdHlFcnJvclwiLFxuICAgICAgXCJPcmRlclwiLFxuICAgICAgXCJPcmRlckxpbWl0RXJyb3JcIixcbiAgICAgIFwiT3JkZXJNb2RpZmljYXRpb25FcnJvclwiXG4gICAgXSxcbiAgICBcIlVwZGF0ZVByb21vdGlvblJlc3VsdFwiOiBbXG4gICAgICBcIk1pc3NpbmdDb25kaXRpb25zRXJyb3JcIixcbiAgICAgIFwiUHJvbW90aW9uXCJcbiAgICBdXG4gIH1cbn07XG4gICAgICBleHBvcnQgZGVmYXVsdCByZXN1bHQ7XG4gICAgIl19
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by the set-version.js script.
2
- export const ADMIN_UI_VERSION = '2.2.3';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvY29tbW9uL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEF1dG8tZ2VuZXJhdGVkIGJ5IHRoZSBzZXQtdmVyc2lvbi5qcyBzY3JpcHQuXG5leHBvcnQgY29uc3QgQURNSU5fVUlfVkVSU0lPTiA9ICcyLjIuMyc7XG4iXX0=
2
+ export const ADMIN_UI_VERSION = '2.2.4';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvY29tbW9uL3ZlcnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEF1dG8tZ2VuZXJhdGVkIGJ5IHRoZSBzZXQtdmVyc2lvbi5qcyBzY3JpcHQuXG5leHBvcnQgY29uc3QgQURNSU5fVUlfVkVSU0lPTiA9ICcyLjIuNCc7XG4iXX0=
@@ -180,4 +180,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
180
180
  type: Component,
181
181
  args: [{ selector: 'vdr-draft-order-detail', changeDetection: ChangeDetectionStrategy.OnPush, template: "<vdr-page-block>\r\n <vdr-action-bar *ngIf=\"entity$ | async as order\">\r\n <vdr-ab-left>\r\n <div class=\"flex clr-align-items-center\">\r\n <vdr-order-state-label [state]=\"order.state\"></vdr-order-state-label>\r\n </div>\r\n </vdr-ab-left>\r\n\r\n <vdr-ab-right>\r\n <vdr-action-bar-items locationId=\"draft-order-detail\" />\r\n <button\r\n class=\"btn btn-primary\"\r\n (click)=\"completeOrder()\"\r\n [disabled]=\"!order.customer || !order.lines.length || !order.shippingLines.length\"\r\n >\r\n <clr-icon shape=\"check\"></clr-icon>\r\n {{ 'order.complete-draft-order' | translate }}\r\n </button>\r\n <vdr-action-bar-dropdown-menu [alwaysShow]=\"true\" locationId=\"draft-order-detail\">\r\n <button type=\"button\" vdrDropdownItem (click)=\"deleteOrder()\">\r\n <clr-icon shape=\"trash\" class=\"is-danger\"></clr-icon>\r\n {{ 'order.delete-draft-order' | translate }}\r\n </button>\r\n </vdr-action-bar-dropdown-menu>\r\n </vdr-ab-right>\r\n </vdr-action-bar>\r\n</vdr-page-block>\r\n\r\n<vdr-page-detail-layout *ngIf=\"entity$ | async as order\">\r\n <vdr-page-detail-sidebar>\r\n <vdr-card [title]=\"'order.customer' | translate\">\r\n <ng-template vdrCardControls>\r\n <clr-icon *ngIf=\"!order.customer\" shape=\"unknown-status\" class=\"is-warning\"></clr-icon>\r\n <clr-icon *ngIf=\"order.customer\" shape=\"check\" class=\"is-success\"></clr-icon>\r\n </ng-template>\r\n <vdr-customer-label\r\n class=\"block mb-2\"\r\n *ngIf=\"order.customer\"\r\n [customer]=\"order.customer\"\r\n ></vdr-customer-label>\r\n <button class=\"button-small\" (click)=\"setCustomer()\">\r\n {{ 'order.set-customer-for-order' | translate }}\r\n </button>\r\n </vdr-card>\r\n <vdr-card [title]=\"'order.billing-address' | translate\">\r\n <ng-template vdrCardControls>\r\n <clr-icon\r\n *ngIf=\"!order.billingAddress.streetLine1\"\r\n shape=\"unknown-status\"\r\n class=\"is-warning\"\r\n ></clr-icon>\r\n <clr-icon\r\n *ngIf=\"order.billingAddress.streetLine1\"\r\n shape=\"check\"\r\n class=\"is-success\"\r\n ></clr-icon>\r\n </ng-template>\r\n <vdr-formatted-address\r\n class=\"block mb-2\"\r\n *ngIf=\"order.billingAddress\"\r\n [address]=\"order.billingAddress\"\r\n ></vdr-formatted-address>\r\n <button class=\"button-small\" (click)=\"setBillingAddress()\">\r\n {{ 'order.set-billing-address' | translate }}\r\n </button>\r\n </vdr-card>\r\n <vdr-card [title]=\"'order.shipping' | translate\">\r\n <ng-template vdrCardControls>\r\n <clr-icon\r\n *ngIf=\"!order.shippingAddress.streetLine1 || !order.shippingLines.length\"\r\n shape=\"unknown-status\"\r\n class=\"is-warning\"\r\n ></clr-icon>\r\n <clr-icon\r\n *ngIf=\"order.shippingAddress.streetLine1 && order.shippingLines.length\"\r\n shape=\"check\"\r\n class=\"is-success\"\r\n ></clr-icon>\r\n </ng-template>\r\n <vdr-formatted-address\r\n class=\"block mb-2\"\r\n *ngIf=\"order.shippingAddress\"\r\n [address]=\"order.shippingAddress\"\r\n ></vdr-formatted-address>\r\n <button class=\"button-small mr-2\" (click)=\"setShippingAddress()\">\r\n {{ 'order.set-shipping-address' | translate }}\r\n </button>\r\n\r\n <div *ngFor=\"let shippingLine of order.shippingLines\">\r\n {{ shippingLine.shippingMethod.name }}\r\n </div>\r\n <button class=\"button-small\" (click)=\"setShippingMethod()\">\r\n {{ 'order.set-shipping-method' | translate }}\r\n </button>\r\n </vdr-card>\r\n <vdr-card>\r\n <button\r\n *ngIf=\"order.couponCodes.length === 0 && !displayCouponCodeInput\"\r\n class=\"button-small\"\r\n (click)=\"displayCouponCodeInput = !displayCouponCodeInput\"\r\n >\r\n {{ 'order.set-coupon-codes' | translate }}\r\n </button>\r\n <div *ngIf=\"order.couponCodes.length || displayCouponCodeInput\">\r\n <label>{{ 'order.set-coupon-codes' | translate }}</label>\r\n <vdr-coupon-code-selector\r\n [couponCodes]=\"order.couponCodes\"\r\n (addCouponCode)=\"applyCouponCode($event)\"\r\n (removeCouponCode)=\"removeCouponCode($event)\"\r\n ></vdr-coupon-code-selector>\r\n </div>\r\n </vdr-card>\r\n <vdr-card>\r\n <vdr-page-entity-info *ngIf=\"entity$ | async as entity\" [entity]=\"entity\" />\r\n </vdr-card>\r\n </vdr-page-detail-sidebar>\r\n <vdr-page-block>\r\n <vdr-card>\r\n <vdr-draft-order-variant-selector\r\n [orderLineCustomFields]=\"orderLineCustomFields\"\r\n [currencyCode]=\"order.currencyCode\"\r\n (addItem)=\"addItemToOrder($event)\"\r\n ></vdr-draft-order-variant-selector>\r\n <vdr-order-table\r\n [order]=\"order\"\r\n [orderLineCustomFields]=\"orderLineCustomFields\"\r\n [isDraft]=\"true\"\r\n (adjust)=\"adjustOrderLine($event)\"\r\n (remove)=\"removeOrderLine($event)\"\r\n ></vdr-order-table>\r\n </vdr-card>\r\n <vdr-card [title]=\"'order.tax-summary' | translate\">\r\n <ng-container *ngIf=\"order.taxSummary.length\">\r\n <table class=\"table\">\r\n <thead>\r\n <tr>\r\n <th>{{ 'common.description' | translate }}</th>\r\n <th>{{ 'order.tax-rate' | translate }}</th>\r\n <th>{{ 'order.tax-base' | translate }}</th>\r\n <th>{{ 'order.tax-total' | translate }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of order.taxSummary\">\r\n <td>{{ row.description }}</td>\r\n <td>{{ row.taxRate / 100 | percent }}</td>\r\n <td>{{ row.taxBase | localeCurrency : order.currencyCode }}</td>\r\n <td>{{ row.taxTotal | localeCurrency : order.currencyCode }}</td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </ng-container>\r\n </vdr-card>\r\n <vdr-custom-detail-component-host\r\n locationId=\"draft-order-detail\"\r\n [entity$]=\"entity$\"\r\n [detailForm]=\"detailForm\"\r\n ></vdr-custom-detail-component-host>\r\n\r\n <vdr-order-custom-fields-card\r\n [customFieldsConfig]=\"customFields\"\r\n [customFieldValues]=\"order.customFields\"\r\n (updateClick)=\"updateCustomFields($event)\"\r\n ></vdr-order-custom-fields-card>\r\n </vdr-page-block>\r\n</vdr-page-detail-layout>\r\n" }]
182
182
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.DataService }, { type: i1.NotificationService }, { type: i1.ModalService }, { type: i2.OrderTransitionService }] });
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZnQtb3JkZXItZGV0YWlsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvb3JkZXIvc3JjL2NvbXBvbmVudHMvZHJhZnQtb3JkZXItZGV0YWlsL2RyYWZ0LW9yZGVyLWRldGFpbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29yZGVyL3NyYy9jb21wb25lbnRzL2RyYWZ0LW9yZGVyLWRldGFpbC9kcmFmdC1vcmRlci1kZXRhaWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdEUsT0FBTyxFQUVILGNBQWMsRUFPZCx3QkFBd0IsR0FDM0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsYUFBYSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzNHLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDBFQUEwRSxDQUFDOzs7Ozs7Ozs7OztBQVEvSCxNQUFNLE9BQU8seUJBQ1QsU0FBUSx3QkFBa0U7SUFhMUUsWUFDWSxjQUFpQyxFQUMvQixXQUF3QixFQUMxQixtQkFBd0MsRUFDeEMsWUFBMEIsRUFDMUIsc0JBQThDO1FBRXRELEtBQUssRUFBRSxDQUFDO1FBTkEsbUJBQWMsR0FBZCxjQUFj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O1FBQ2xELE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFUyxhQUFhLENBQUMsTUFBMkI7UUFDL0MsUUFBUTtJQUNaLENBQUM7OEdBdk1RLHlCQUF5QjtrR0FBekIseUJBQXlCLHFGQzVCdEMsK3VQQXNLQTs7MkZEMUlhLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDSSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBtYXJrZXIgYXMgXyB9IGZyb20gJ0BiaWVzYmplcmcvbmd4LXRyYW5zbGF0ZS1leHRyYWN0LW1hcmtlcic7XG5pbXBvcnQge1xuICAgIERhdGFTZXJ2aWNlLFxuICAgIERlbGV0aW9uUmVzdWx0LFxuICAgIERyYWZ0T3JkZXJFbGlnaWJsZVNoaXBwaW5nTWV0aG9kc1F1ZXJ5LFxuICAgIE1vZGFsU2VydmljZSxcbiAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIE9yZGVyLFxuICAgIE9yZGVyRGV0YWlsRnJhZ21lbnQsXG4gICAgT3JkZXJEZXRhaWxRdWVyeURvY3VtZW50LFxuICAgIFR5cGVkQmFzZURldGFpbENvbXBvbmVudCxcbn0gZnJvbSAnQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE9yZGVyVHJhbnNpdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcm92aWRlcnMvb3JkZXItdHJhbnNpdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFNlbGVjdEFkZHJlc3NEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9zZWxlY3QtYWRkcmVzcy1kaWFsb2cvc2VsZWN0LWFkZHJlc3MtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RDdXN0b21lckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL3NlbGVjdC1jdXN0b21lci1kaWFsb2cvc2VsZWN0LWN1c3RvbWVyLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0U2hpcHBpbmdNZXRob2REaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9zZWxlY3Qtc2hpcHBpbmctbWV0aG9kLWRpYWxvZy9zZWxlY3Qtc2hpcHBpbmctbWV0aG9kLWRpYWxvZy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3Zkci1kcmFmdC1vcmRlci1kZXRhaWwnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kcmFmdC1vcmRlci1kZXRhaWwuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RyYWZ0LW9yZGVyLWRldGFpbC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEcmFmdE9yZGVyRGV0YWlsQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBUeXBlZEJhc2VEZXRhaWxDb21wb25lbnQ8dHlwZW9mIE9yZGVyRGV0YWlsUXVlcnlEb2N1bWVudCwgJ29yZGVyJz5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95XG57XG4gICAgY3VzdG9tRmllbGRzID0gdGhpcy5nZXRDdXN0b21GaWVsZENvbmZpZygnT3JkZXInKTtcbiAgICBvcmRlckxpbmVDdXN0b21GaWVsZHMgPSB0aGlzLmdldEN1c3RvbUZpZWxkQ29uZmlnKCdPcmRlckxpbmUnKTtcbiAgICBkZXRhaWxGb3JtID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe30pO1xuICAgIGVsaWdpYmxlU2hpcHBpbmdNZXRob2RzJDogT2JzZXJ2YWJsZTxcbiAgICAgICAgRHJhZnRPcmRlckVsaWdpYmxlU2hpcHBpbmdNZXRob2RzUXVlcnlbJ2VsaWdpYmxlU2hpcHBpbmdNZXRob2RzRm9yRHJhZnRPcmRlciddXG4gICAgPjtcbiAgICBuZXh0U3RhdGVzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXT47XG4gICAgZmV0Y2hIaXN0b3J5ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBkaXNwbGF5Q291cG9uQ29kZUlucHV0ID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByb3RlY3RlZCBkYXRhU2VydmljZTogRGF0YVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE1vZGFsU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBvcmRlclRyYW5zaXRpb25TZXJ2aWNlOiBPcmRlclRyYW5zaXRpb25TZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmluaXQoKTtcbiAgICAgICAgdGhpcy5vcmRlckxpbmVDdXN0b21GaWVsZHMgPSB0aGlzLmdldEN1c3RvbUZpZWxkQ29uZmlnKCdPcmRlckxpbmUnKTtcbiAgICAgICAgdGhpcy5lbGlnaWJsZVNoaXBwaW5nTWV0aG9kcyQgPSB0aGlzLmVudGl0eSQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChvcmRlciA9PlxuICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXJcbiAgICAgICAgICAgICAgICAgICAgLmdldERyYWZ0T3JkZXJFbGlnaWJsZVNoaXBwaW5nTWV0aG9kcyhvcmRlci5pZClcbiAgICAgICAgICAgICAgICAgICAgLm1hcFNpbmdsZShcbiAgICAgICAgICAgICAgICAgICAgICAgICh7IGVsaWdpYmxlU2hpcHBpbmdNZXRob2RzRm9yRHJhZnRPcmRlciB9KSA9PiBlbGlnaWJsZVNoaXBwaW5nTWV0aG9kc0ZvckRyYWZ0T3JkZXIsXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBhZGRJdGVtVG9PcmRlcihldmVudDogeyBwcm9kdWN0VmFyaWFudElkOiBzdHJpbmc7IHF1YW50aXR5OiBudW1iZXI7IGN1c3RvbUZpZWxkczogYW55IH0pIHtcbiAgICAgICAgdGhpcy5kYXRhU2VydmljZS5vcmRlci5hZGRJdGVtVG9EcmFmdE9yZGVyKHRoaXMuaWQsIGV2ZW50KS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgIGlmIChyZXN1bHQuYWRkSXRlbVRvRHJhZnRPcmRlci5fX3R5cGVuYW1lICE9PSAnT3JkZXInKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKChyZXN1bHQuYWRkSXRlbVRvRHJhZnRPcmRlciBhcyBhbnkpLm1lc3NhZ2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBhZGp1c3RPcmRlckxpbmUoZXZlbnQ6IHsgbGluZUlkOiBzdHJpbmc7IHF1YW50aXR5OiBudW1iZXIgfSkge1xuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyXG4gICAgICAgICAgICAuYWRqdXN0RHJhZnRPcmRlckxpbmUodGhpcy5pZCwgeyBvcmRlckxpbmVJZDogZXZlbnQubGluZUlkLCBxdWFudGl0eTogZXZlbnQucXVhbnRpdHkgfSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0LmFkanVzdERyYWZ0T3JkZXJMaW5lLl9fdHlwZW5hbWUgIT09ICdPcmRlcicpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKChyZXN1bHQuYWRqdXN0RHJhZnRPcmRlckxpbmUgYXMgYW55KS5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZW1vdmVPcmRlckxpbmUoZXZlbnQ6IHsgbGluZUlkOiBzdHJpbmcgfSkge1xuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyLnJlbW92ZURyYWZ0T3JkZXJMaW5lKHRoaXMuaWQsIGV2ZW50LmxpbmVJZCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICBpZiAocmVzdWx0LnJlbW92ZURyYWZ0T3JkZXJMaW5lLl9fdHlwZW5hbWUgIT09ICdPcmRlcicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IoKHJlc3VsdC5yZW1vdmVEcmFmdE9yZGVyTGluZSBhcyBhbnkpLm1lc3NhZ2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRPcmRlckFkZHJlc3NMaW5lcyhvcmRlckFkZHJlc3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogc3RyaW5nW10ge1xuICAgICAgICBpZiAoIW9yZGVyQWRkcmVzcykge1xuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBPYmplY3QudmFsdWVzKG9yZGVyQWRkcmVzcylcbiAgICAgICAgICAgIC5maWx0ZXIodmFsID0+IHZhbCAhPT0gJ09yZGVyQWRkcmVzcycpXG4gICAgICAgICAgICAuZmlsdGVyKGxpbmUgPT4gISFsaW5lKTtcbiAgICB9XG5cbiAgICBzZXRDdXN0b21lcigpIHtcbiAgICAgICAgdGhpcy5tb2RhbFNlcnZpY2UuZnJvbUNvbXBvbmVudChTZWxlY3RDdXN0b21lckRpYWxvZ0NvbXBvbmVudCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5oYXNJZChyZXN1bHQpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5vcmRlclxuICAgICAgICAgICAgICAgICAgICAuc2V0Q3VzdG9tZXJGb3JEcmFmdE9yZGVyKHRoaXMuaWQsIHsgY3VzdG9tZXJJZDogcmVzdWx0LmlkIH0pXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBub3RlLCAuLi5pbnB1dCB9ID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXIuc2V0Q3VzdG9tZXJGb3JEcmFmdE9yZGVyKHRoaXMuaWQsIHsgaW5wdXQgfSkuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldFNoaXBwaW5nQWRkcmVzcygpIHtcbiAgICAgICAgdGhpcy5lbnRpdHkkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChvcmRlciA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5mcm9tQ29tcG9uZW50KFNlbGVjdEFkZHJlc3NEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2Fsczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1c3RvbWVySWQ6IG9yZGVyLmN1c3RvbWVyPy5pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50QWRkcmVzczogb3JkZXIuc2hpcHBpbmdBZGRyZXNzID8/IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyLnNldERyYWZ0T3JkZXJTaGlwcGluZ0FkZHJlc3ModGhpcy5pZCwgcmVzdWx0KS5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXRCaWxsaW5nQWRkcmVzcygpIHtcbiAgICAgICAgdGhpcy5lbnRpdHkkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgICAgIHN3aXRjaE1hcChvcmRlciA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5mcm9tQ29tcG9uZW50KFNlbGVjdEFkZHJlc3NEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2Fsczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1c3RvbWVySWQ6IG9yZGVyLmN1c3RvbWVyPy5pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50QWRkcmVzczogb3JkZXIuYmlsbGluZ0FkZHJlc3MgPz8gdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXIuc2V0RHJhZnRPcmRlckJpbGxpbmdBZGRyZXNzKHRoaXMuaWQsIHJlc3VsdCkuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgYXBwbHlDb3Vwb25Db2RlKGNvdXBvbkNvZGU6IHN0cmluZykge1xuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyLmFwcGx5Q291cG9uQ29kZVRvRHJhZnRPcmRlcih0aGlzLmlkLCBjb3Vwb25Db2RlKS5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICByZW1vdmVDb3Vwb25Db2RlKGNvdXBvbkNvZGU6IHN0cmluZykge1xuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyLnJlbW92ZUNvdXBvbkNvZGVGcm9tRHJhZnRPcmRlcih0aGlzLmlkLCBjb3Vwb25Db2RlKS5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBzZXRTaGlwcGluZ01ldGhvZCgpIHtcbiAgICAgICAgY29tYmluZUxhdGVzdCh0aGlzLmVudGl0eSQsIHRoaXMuZWxpZ2libGVTaGlwcGluZ01ldGhvZHMkKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKFtvcmRlciwgbWV0aG9kc10pID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW9kYWxTZXJ2aWNlLmZyb21Db21wb25lbnQoU2VsZWN0U2hpcHBpbmdNZXRob2REaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2Fsczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsaWdpYmxlU2hpcHBpbmdNZXRob2RzOiBtZXRob2RzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbmN5Q29kZTogb3JkZXIuY3VycmVuY3lDb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRTZWxlY3Rpb25JZDogb3JkZXIuc2hpcHBpbmdMaW5lcz8uWzBdPy5zaGlwcGluZ01ldGhvZC5pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyLnNldERyYWZ0T3JkZXJTaGlwcGluZ01ldGhvZCh0aGlzLmlkLCByZXN1bHQpLnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHVwZGF0ZUN1c3RvbUZpZWxkcyhjdXN0b21GaWVsZHNWYWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXJcbiAgICAgICAgICAgIC51cGRhdGVPcmRlckN1c3RvbUZpZWxkcyh7XG4gICAgICAgICAgICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICAgICAgICAgICAgY3VzdG9tRmllbGRzOiBjdXN0b21GaWVsZHNWYWx1ZSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgZGVsZXRlT3JkZXIoKSB7XG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXIuZGVsZXRlRHJhZnRPcmRlcih0aGlzLmlkKS5zdWJzY3JpYmUoKHsgZGVsZXRlRHJhZnRPcmRlciB9KSA9PiB7XG4gICAgICAgICAgICBpZiAoZGVsZXRlRHJhZnRPcmRlci5yZXN1bHQgPT09IERlbGV0aW9uUmVzdWx0LkRFTEVURUQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uuc3VjY2VzcyhfKCdjb21tb24ubm90aWZ5LWRlbGV0ZS1zdWNjZXNzJyksIHtcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5OiAnT3JkZXInLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL29yZGVycyddKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsZXRlRHJhZnRPcmRlci5tZXNzYWdlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKGRlbGV0ZURyYWZ0T3JkZXIubWVzc2FnZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbXBsZXRlT3JkZXIoKSB7XG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXJcbiAgICAgICAgICAgIC50cmFuc2l0aW9uVG9TdGF0ZSh0aGlzLmlkLCAnQXJyYW5naW5nUGF5bWVudCcpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh7IHRyYW5zaXRpb25PcmRlclRvU3RhdGUgfSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0cmFuc2l0aW9uT3JkZXJUb1N0YXRlPy5fX3R5cGVuYW1lID09PSAnT3JkZXInKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL29yZGVycycsIHRoaXMuaWRdKTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRyYW5zaXRpb25PcmRlclRvU3RhdGU/Ll9fdHlwZW5hbWUgPT09ICdPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IodHJhbnNpdGlvbk9yZGVyVG9TdGF0ZS50cmFuc2l0aW9uRXJyb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaGFzSWQ8VCBleHRlbmRzIHsgaWQ6IHN0cmluZyB9PihpbnB1dDogVCB8IGFueSk6IGlucHV0IGlzIHsgaWQ6IHN0cmluZyB9IHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBpbnB1dCA9PT0gJ29iamVjdCcgJiYgISFpbnB1dC5pZDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0Rm9ybVZhbHVlcyhlbnRpdHk6IE9yZGVyRGV0YWlsRnJhZ21lbnQpOiB2b2lkIHtcbiAgICAgICAgLy8gZW1wdHlcbiAgICB9XG59XG4iLCI8dmRyLXBhZ2UtYmxvY2s+XHJcbiAgICA8dmRyLWFjdGlvbi1iYXIgKm5nSWY9XCJlbnRpdHkkIHwgYXN5bmMgYXMgb3JkZXJcIj5cclxuICAgICAgICA8dmRyLWFiLWxlZnQ+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGNsci1hbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDx2ZHItb3JkZXItc3RhdGUtbGFiZWwgW3N0YXRlXT1cIm9yZGVyLnN0YXRlXCI+PC92ZHItb3JkZXItc3RhdGUtbGFiZWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvdmRyLWFiLWxlZnQ+XHJcblxyXG4gICAgICAgIDx2ZHItYWItcmlnaHQ+XHJcbiAgICAgICAgICAgIDx2ZHItYWN0aW9uLWJhci1pdGVtcyBsb2NhdGlvbklkPVwiZHJhZnQtb3JkZXItZGV0YWlsXCIgLz5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbXBsZXRlT3JkZXIoKVwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIW9yZGVyLmN1c3RvbWVyIHx8ICFvcmRlci5saW5lcy5sZW5ndGggfHwgIW9yZGVyLnNoaXBwaW5nTGluZXMubGVuZ3RoXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPGNsci1pY29uIHNoYXBlPVwiY2hlY2tcIj48L2Nsci1pY29uPlxyXG4gICAgICAgICAgICAgICAge3sgJ29yZGVyLmNvbXBsZXRlLWRyYWZ0LW9yZGVyJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPHZkci1hY3Rpb24tYmFyLWRyb3Bkb3duLW1lbnUgW2Fsd2F5c1Nob3ddPVwidHJ1ZVwiIGxvY2F0aW9uSWQ9XCJkcmFmdC1vcmRlci1kZXRhaWxcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIHZkckRyb3Bkb3duSXRlbSAoY2xpY2spPVwiZGVsZXRlT3JkZXIoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjbHItaWNvbiBzaGFwZT1cInRyYXNoXCIgY2xhc3M9XCJpcy1kYW5nZXJcIj48L2Nsci1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7ICdvcmRlci5kZWxldGUtZHJhZnQtb3JkZXInIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC92ZHItYWN0aW9uLWJhci1kcm9wZG93bi1tZW51PlxyXG4gICAgICAgIDwvdmRyLWFiLXJpZ2h0PlxyXG4gICAgPC92ZHItYWN0aW9uLWJhcj5cclxuPC92ZHItcGFnZS1ibG9jaz5cclxuXHJcbjx2ZHItcGFnZS1kZXRhaWwtbGF5b3V0ICpuZ0lmPVwiZW50aXR5JCB8IGFzeW5jIGFzIG9yZGVyXCI+XHJcbiAgICA8dmRyLXBhZ2UtZGV0YWlsLXNpZGViYXI+XHJcbiAgICAgICAgPHZkci1jYXJkIFt0aXRsZV09XCInb3JkZXIuY3VzdG9tZXInIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSB2ZHJDYXJkQ29udHJvbHM+XHJcbiAgICAgICAgICAgICAgICA8Y2xyLWljb24gKm5nSWY9XCIhb3JkZXIuY3VzdG9tZXJcIiBzaGFwZT1cInVua25vd24tc3RhdHVzXCIgY2xhc3M9XCJpcy13YXJuaW5nXCI+PC9jbHItaWNvbj5cclxuICAgICAgICAgICAgICAgIDxjbHItaWNvbiAqbmdJZj1cIm9yZGVyLmN1c3RvbWVyXCIgc2hhcGU9XCJjaGVja1wiIGNsYXNzPVwiaXMtc3VjY2Vzc1wiPjwvY2xyLWljb24+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDx2ZHItY3VzdG9tZXItbGFiZWxcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYmxvY2sgbWItMlwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm9yZGVyLmN1c3RvbWVyXCJcclxuICAgICAgICAgICAgICAgIFtjdXN0b21lcl09XCJvcmRlci5jdXN0b21lclwiXHJcbiAgICAgICAgICAgID48L3Zkci1jdXN0b21lci1sYWJlbD5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbi1zbWFsbFwiIChjbGljayk9XCJzZXRDdXN0b21lcigpXCI+XHJcbiAgICAgICAgICAgICAgICB7eyAnb3JkZXIuc2V0LWN1c3RvbWVyLWZvci1vcmRlcicgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC92ZHItY2FyZD5cclxuICAgICAgICA8dmRyLWNhcmQgW3RpdGxlXT1cIidvcmRlci5iaWxsaW5nLWFkZHJlc3MnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSB2ZHJDYXJkQ29udHJvbHM+XHJcbiAgICAgICAgICAgICAgICA8Y2xyLWljb25cclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFvcmRlci5iaWxsaW5nQWRkcmVzcy5zdHJlZXRMaW5lMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgc2hhcGU9XCJ1bmtub3duLXN0YXR1c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpcy13YXJuaW5nXCJcclxuICAgICAgICAgICAgICAgID48L2Nsci1pY29uPlxyXG4gICAgICAgICAgICAgICAgPGNsci1pY29uXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJvcmRlci5iaWxsaW5nQWRkcmVzcy5zdHJlZXRMaW5lMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgc2hhcGU9XCJjaGVja1wiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpcy1zdWNjZXNzXCJcclxuICAgICAgICAgICAgICAgID48L2Nsci1pY29uPlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8dmRyLWZvcm1hdHRlZC1hZGRyZXNzXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJsb2NrIG1iLTJcIlxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJvcmRlci5iaWxsaW5nQWRkcmVzc1wiXHJcbiAgICAgICAgICAgICAgICBbYWRkcmVzc109XCJvcmRlci5iaWxsaW5nQWRkcmVzc1wiXHJcbiAgICAgICAgICAgID48L3Zkci1mb3JtYXR0ZWQtYWRkcmVzcz5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbi1zbWFsbFwiIChjbGljayk9XCJzZXRCaWxsaW5nQWRkcmVzcygpXCI+XHJcbiAgICAgICAgICAgICAgICB7eyAnb3JkZXIuc2V0LWJpbGxpbmctYWRkcmVzcycgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC92ZHItY2FyZD5cclxuICAgICAgICA8dmRyLWNhcmQgW3RpdGxlXT1cIidvcmRlci5zaGlwcGluZycgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHZkckNhcmRDb250cm9scz5cclxuICAgICAgICAgICAgICAgIDxjbHItaWNvblxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIW9yZGVyLnNoaXBwaW5nQWRkcmVzcy5zdHJlZXRMaW5lMSB8fCAhb3JkZXIuc2hpcHBpbmdMaW5lcy5sZW5ndGhcIlxyXG4gICAgICAgICAgICAgICAgICAgIHNoYXBlPVwidW5rbm93bi1zdGF0dXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaXMtd2FybmluZ1wiXHJcbiAgICAgICAgICAgICAgICA+PC9jbHItaWNvbj5cclxuICAgICAgICAgICAgICAgIDxjbHItaWNvblxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwib3JkZXIuc2hpcHBpbmdBZGRyZXNzLnN0cmVldExpbmUxICYmIG9yZGVyLnNoaXBwaW5nTGluZXMubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgICAgICBzaGFwZT1cImNoZWNrXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImlzLXN1Y2Nlc3NcIlxyXG4gICAgICAgICAgICAgICAgPjwvY2xyLWljb24+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDx2ZHItZm9ybWF0dGVkLWFkZHJlc3NcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYmxvY2sgbWItMlwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm9yZGVyLnNoaXBwaW5nQWRkcmVzc1wiXHJcbiAgICAgICAgICAgICAgICBbYWRkcmVzc109XCJvcmRlci5zaGlwcGluZ0FkZHJlc3NcIlxyXG4gICAgICAgICAgICA+PC92ZHItZm9ybWF0dGVkLWFkZHJlc3M+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24tc21hbGwgbXItMlwiIChjbGljayk9XCJzZXRTaGlwcGluZ0FkZHJlc3MoKVwiPlxyXG4gICAgICAgICAgICAgICAge3sgJ29yZGVyLnNldC1zaGlwcGluZy1hZGRyZXNzJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHNoaXBwaW5nTGluZSBvZiBvcmRlci5zaGlwcGluZ0xpbmVzXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBzaGlwcGluZ0xpbmUuc2hpcHBpbmdNZXRob2QubmFtZSB9fVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbi1zbWFsbFwiIChjbGljayk9XCJzZXRTaGlwcGluZ01ldGhvZCgpXCI+XHJcbiAgICAgICAgICAgICAgICB7eyAnb3JkZXIuc2V0LXNoaXBwaW5nLW1ldGhvZCcgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC92ZHItY2FyZD5cclxuICAgICAgICA8dmRyLWNhcmQ+XHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICpuZ0lmPVwib3JkZXIuY291cG9uQ29kZXMubGVuZ3RoID09PSAwICYmICFkaXNwbGF5Q291cG9uQ29kZUlucHV0XCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYnV0dG9uLXNtYWxsXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJkaXNwbGF5Q291cG9uQ29kZUlucHV0ID0gIWRpc3BsYXlDb3Vwb25Db2RlSW5wdXRcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICB7eyAnb3JkZXIuc2V0LWNvdXBvbi1jb2RlcycgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvcmRlci5jb3Vwb25Db2Rlcy5sZW5ndGggfHwgZGlzcGxheUNvdXBvbkNvZGVJbnB1dFwiPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsPnt7ICdvcmRlci5zZXQtY291cG9uLWNvZGVzJyB8IHRyYW5zbGF0ZSB9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8dmRyLWNvdXBvbi1jb2RlLXNlbGVjdG9yXHJcbiAgICAgICAgICAgICAgICAgICAgW2NvdXBvbkNvZGVzXT1cIm9yZGVyLmNvdXBvbkNvZGVzXCJcclxuICAgICAgICAgICAgICAgICAgICAoYWRkQ291cG9uQ29kZSk9XCJhcHBseUNvdXBvbkNvZGUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKHJlbW92ZUNvdXBvbkNvZGUpPVwicmVtb3ZlQ291cG9uQ29kZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgID48L3Zkci1jb3Vwb24tY29kZS1zZWxlY3Rvcj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC92ZHItY2FyZD5cclxuICAgICAgICA8dmRyLWNhcmQ+XHJcbiAgICAgICAgICAgIDx2ZHItcGFnZS1lbnRpdHktaW5mbyAqbmdJZj1cImVudGl0eSQgfCBhc3luYyBhcyBlbnRpdHlcIiBbZW50aXR5XT1cImVudGl0eVwiIC8+XHJcbiAgICAgICAgPC92ZHItY2FyZD5cclxuICAgIDwvdmRyLXBhZ2UtZGV0YWlsLXNpZGViYXI+XHJcbiAgICA8dmRyLXBhZ2UtYmxvY2s+XHJcbiAgICAgICAgPHZkci1jYXJkPlxyXG4gICAgICAgICAgICA8dmRyLWRyYWZ0LW9yZGVyLXZhcmlhbnQtc2VsZWN0b3JcclxuICAgICAgICAgICAgICAgIFtvcmRlckxpbmVDdXN0b21GaWVsZHNdPVwib3JkZXJMaW5lQ3VzdG9tRmllbGRzXCJcclxuICAgICAgICAgICAgICAgIFtjdXJyZW5jeUNvZGVdPVwib3JkZXIuY3VycmVuY3lDb2RlXCJcclxuICAgICAgICAgICAgICAgIChhZGRJdGVtKT1cImFkZEl0ZW1Ub09yZGVyKCRldmVudClcIlxyXG4gICAgICAgICAgICA+PC92ZHItZHJhZnQtb3JkZXItdmFyaWFudC1zZWxlY3Rvcj5cclxuICAgICAgICAgICAgPHZkci1vcmRlci10YWJsZVxyXG4gICAgICAgICAgICAgICAgW29yZGVyXT1cIm9yZGVyXCJcclxuICAgICAgICAgICAgICAgIFtvcmRlckxpbmVDdXN0b21GaWVsZHNdPVwib3JkZXJMaW5lQ3VzdG9tRmllbGRzXCJcclxuICAgICAgICAgICAgICAgIFtpc0RyYWZ0XT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgKGFkanVzdCk9XCJhZGp1c3RPcmRlckxpbmUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAocmVtb3ZlKT1cInJlbW92ZU9yZGVyTGluZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgPjwvdmRyLW9yZGVyLXRhYmxlPlxyXG4gICAgICAgIDwvdmRyLWNhcmQ+XHJcbiAgICAgICAgPHZkci1jYXJkIFt0aXRsZV09XCInb3JkZXIudGF4LXN1bW1hcnknIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcmRlci50YXhTdW1tYXJ5Lmxlbmd0aFwiPlxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAnY29tbW9uLmRlc2NyaXB0aW9uJyB8IHRyYW5zbGF0ZSB9fTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJ29yZGVyLnRheC1yYXRlJyB8IHRyYW5zbGF0ZSB9fTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJ29yZGVyLnRheC1iYXNlJyB8IHRyYW5zbGF0ZSB9fTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJ29yZGVyLnRheC10b3RhbCcgfCB0cmFuc2xhdGUgfX08L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IHJvdyBvZiBvcmRlci50YXhTdW1tYXJ5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3sgcm93LmRlc2NyaXB0aW9uIH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyByb3cudGF4UmF0ZSAvIDEwMCB8IHBlcmNlbnQgfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IHJvdy50YXhCYXNlIHwgbG9jYWxlQ3VycmVuY3kgOiBvcmRlci5jdXJyZW5jeUNvZGUgfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IHJvdy50YXhUb3RhbCB8IGxvY2FsZUN1cnJlbmN5IDogb3JkZXIuY3VycmVuY3lDb2RlIH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC92ZHItY2FyZD5cclxuICAgICAgICA8dmRyLWN1c3RvbS1kZXRhaWwtY29tcG9uZW50LWhvc3RcclxuICAgICAgICAgICAgbG9jYXRpb25JZD1cImRyYWZ0LW9yZGVyLWRldGFpbFwiXHJcbiAgICAgICAgICAgIFtlbnRpdHkkXT1cImVudGl0eSRcIlxyXG4gICAgICAgICAgICBbZGV0YWlsRm9ybV09XCJkZXRhaWxGb3JtXCJcclxuICAgICAgICA+PC92ZHItY3VzdG9tLWRldGFpbC1jb21wb25lbnQtaG9zdD5cclxuXHJcbiAgICAgICAgPHZkci1vcmRlci1jdXN0b20tZmllbGRzLWNhcmRcclxuICAgICAgICAgICAgW2N1c3RvbUZpZWxkc0NvbmZpZ109XCJjdXN0b21GaWVsZHNcIlxyXG4gICAgICAgICAgICBbY3VzdG9tRmllbGRWYWx1ZXNdPVwib3JkZXIuY3VzdG9tRmllbGRzXCJcclxuICAgICAgICAgICAgKHVwZGF0ZUNsaWNrKT1cInVwZGF0ZUN1c3RvbUZpZWxkcygkZXZlbnQpXCJcclxuICAgICAgICA+PC92ZHItb3JkZXItY3VzdG9tLWZpZWxkcy1jYXJkPlxyXG4gICAgPC92ZHItcGFnZS1ibG9jaz5cclxuPC92ZHItcGFnZS1kZXRhaWwtbGF5b3V0PlxyXG4iXX0=
183
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZnQtb3JkZXItZGV0YWlsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvb3JkZXIvc3JjL2NvbXBvbmVudHMvZHJhZnQtb3JkZXItZGV0YWlsL2RyYWZ0LW9yZGVyLWRldGFpbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29yZGVyL3NyYy9jb21wb25lbnRzL2RyYWZ0LW9yZGVyLWRldGFpbC9kcmFmdC1vcmRlci1kZXRhaWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdEUsT0FBTyxFQUVILGNBQWMsRUFPZCx3QkFBd0IsR0FDM0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsYUFBYSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzNHLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDBFQUEwRSxDQUFDOzs7Ozs7Ozs7OztBQVEvSCxNQUFNLE9BQU8seUJBQ1QsU0FBUSx3QkFBa0U7SUFhMUUsWUFDWSxjQUFpQyxFQUMvQixXQUF3QixFQUMxQixtQkFBd0MsRUFDeEMsWUFBMEIsRUFDMUIsc0JBQThDO1FBRXRELEtBQUssRUFBRSxDQUFDO1FBTkEsbUJBQWMsR0FBZCxjQUFj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O1FBQ2xELE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFUyxhQUFhLENBQUMsTUFBMkI7UUFDL0MsUUFBUTtJQUNaLENBQUM7OEdBdk1RLHlCQUF5QjtrR0FBekIseUJBQXlCLHFGQzVCdEMsK3VQQXNLQTs7MkZEMUlhLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDSSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgbWFya2VyIGFzIF8gfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInO1xyXG5pbXBvcnQge1xyXG4gICAgRGF0YVNlcnZpY2UsXHJcbiAgICBEZWxldGlvblJlc3VsdCxcclxuICAgIERyYWZ0T3JkZXJFbGlnaWJsZVNoaXBwaW5nTWV0aG9kc1F1ZXJ5LFxyXG4gICAgTW9kYWxTZXJ2aWNlLFxyXG4gICAgTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgIE9yZGVyLFxyXG4gICAgT3JkZXJEZXRhaWxGcmFnbWVudCxcclxuICAgIE9yZGVyRGV0YWlsUXVlcnlEb2N1bWVudCxcclxuICAgIFR5cGVkQmFzZURldGFpbENvbXBvbmVudCxcclxufSBmcm9tICdAdmVuZHVyZS9hZG1pbi11aS9jb3JlJztcclxuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBPcmRlclRyYW5zaXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL29yZGVyLXRyYW5zaXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFNlbGVjdEFkZHJlc3NEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9zZWxlY3QtYWRkcmVzcy1kaWFsb2cvc2VsZWN0LWFkZHJlc3MtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlbGVjdEN1c3RvbWVyRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vc2VsZWN0LWN1c3RvbWVyLWRpYWxvZy9zZWxlY3QtY3VzdG9tZXItZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlbGVjdFNoaXBwaW5nTWV0aG9kRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vc2VsZWN0LXNoaXBwaW5nLW1ldGhvZC1kaWFsb2cvc2VsZWN0LXNoaXBwaW5nLW1ldGhvZC1kaWFsb2cuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd2ZHItZHJhZnQtb3JkZXItZGV0YWlsJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9kcmFmdC1vcmRlci1kZXRhaWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vZHJhZnQtb3JkZXItZGV0YWlsLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIERyYWZ0T3JkZXJEZXRhaWxDb21wb25lbnRcclxuICAgIGV4dGVuZHMgVHlwZWRCYXNlRGV0YWlsQ29tcG9uZW50PHR5cGVvZiBPcmRlckRldGFpbFF1ZXJ5RG9jdW1lbnQsICdvcmRlcic+XHJcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95XHJcbntcclxuICAgIGN1c3RvbUZpZWxkcyA9IHRoaXMuZ2V0Q3VzdG9tRmllbGRDb25maWcoJ09yZGVyJyk7XHJcbiAgICBvcmRlckxpbmVDdXN0b21GaWVsZHMgPSB0aGlzLmdldEN1c3RvbUZpZWxkQ29uZmlnKCdPcmRlckxpbmUnKTtcclxuICAgIGRldGFpbEZvcm0gPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7fSk7XHJcbiAgICBlbGlnaWJsZVNoaXBwaW5nTWV0aG9kcyQ6IE9ic2VydmFibGU8XHJcbiAgICAgICAgRHJhZnRPcmRlckVsaWdpYmxlU2hpcHBpbmdNZXRob2RzUXVlcnlbJ2VsaWdpYmxlU2hpcHBpbmdNZXRob2RzRm9yRHJhZnRPcmRlciddXHJcbiAgICA+O1xyXG4gICAgbmV4dFN0YXRlcyQ6IE9ic2VydmFibGU8c3RyaW5nW10+O1xyXG4gICAgZmV0Y2hIaXN0b3J5ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICAgIGRpc3BsYXlDb3Vwb25Db2RlSW5wdXQgPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgICAgICBwcm90ZWN0ZWQgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgbm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIG1vZGFsU2VydmljZTogTW9kYWxTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgb3JkZXJUcmFuc2l0aW9uU2VydmljZTogT3JkZXJUcmFuc2l0aW9uU2VydmljZSxcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5pbml0KCk7XHJcbiAgICAgICAgdGhpcy5vcmRlckxpbmVDdXN0b21GaWVsZHMgPSB0aGlzLmdldEN1c3RvbUZpZWxkQ29uZmlnKCdPcmRlckxpbmUnKTtcclxuICAgICAgICB0aGlzLmVsaWdpYmxlU2hpcHBpbmdNZXRob2RzJCA9IHRoaXMuZW50aXR5JC5waXBlKFxyXG4gICAgICAgICAgICBzd2l0Y2hNYXAob3JkZXIgPT5cclxuICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXJcclxuICAgICAgICAgICAgICAgICAgICAuZ2V0RHJhZnRPcmRlckVsaWdpYmxlU2hpcHBpbmdNZXRob2RzKG9yZGVyLmlkKVxyXG4gICAgICAgICAgICAgICAgICAgIC5tYXBTaW5nbGUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICh7IGVsaWdpYmxlU2hpcHBpbmdNZXRob2RzRm9yRHJhZnRPcmRlciB9KSA9PiBlbGlnaWJsZVNoaXBwaW5nTWV0aG9kc0ZvckRyYWZ0T3JkZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuZGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZEl0ZW1Ub09yZGVyKGV2ZW50OiB7IHByb2R1Y3RWYXJpYW50SWQ6IHN0cmluZzsgcXVhbnRpdHk6IG51bWJlcjsgY3VzdG9tRmllbGRzOiBhbnkgfSkge1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXIuYWRkSXRlbVRvRHJhZnRPcmRlcih0aGlzLmlkLCBldmVudCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQuYWRkSXRlbVRvRHJhZnRPcmRlci5fX3R5cGVuYW1lICE9PSAnT3JkZXInKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IoKHJlc3VsdC5hZGRJdGVtVG9EcmFmdE9yZGVyIGFzIGFueSkubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBhZGp1c3RPcmRlckxpbmUoZXZlbnQ6IHsgbGluZUlkOiBzdHJpbmc7IHF1YW50aXR5OiBudW1iZXIgfSkge1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXJcclxuICAgICAgICAgICAgLmFkanVzdERyYWZ0T3JkZXJMaW5lKHRoaXMuaWQsIHsgb3JkZXJMaW5lSWQ6IGV2ZW50LmxpbmVJZCwgcXVhbnRpdHk6IGV2ZW50LnF1YW50aXR5IH0pXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQuYWRqdXN0RHJhZnRPcmRlckxpbmUuX190eXBlbmFtZSAhPT0gJ09yZGVyJykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5lcnJvcigocmVzdWx0LmFkanVzdERyYWZ0T3JkZXJMaW5lIGFzIGFueSkubWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZU9yZGVyTGluZShldmVudDogeyBsaW5lSWQ6IHN0cmluZyB9KSB7XHJcbiAgICAgICAgdGhpcy5kYXRhU2VydmljZS5vcmRlci5yZW1vdmVEcmFmdE9yZGVyTGluZSh0aGlzLmlkLCBldmVudC5saW5lSWQpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzdWx0LnJlbW92ZURyYWZ0T3JkZXJMaW5lLl9fdHlwZW5hbWUgIT09ICdPcmRlcicpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5lcnJvcigocmVzdWx0LnJlbW92ZURyYWZ0T3JkZXJMaW5lIGFzIGFueSkubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRPcmRlckFkZHJlc3NMaW5lcyhvcmRlckFkZHJlc3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogc3RyaW5nW10ge1xyXG4gICAgICAgIGlmICghb3JkZXJBZGRyZXNzKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBbXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXMob3JkZXJBZGRyZXNzKVxyXG4gICAgICAgICAgICAuZmlsdGVyKHZhbCA9PiB2YWwgIT09ICdPcmRlckFkZHJlc3MnKVxyXG4gICAgICAgICAgICAuZmlsdGVyKGxpbmUgPT4gISFsaW5lKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRDdXN0b21lcigpIHtcclxuICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5mcm9tQ29tcG9uZW50KFNlbGVjdEN1c3RvbWVyRGlhbG9nQ29tcG9uZW50KS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuaGFzSWQocmVzdWx0KSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5vcmRlclxyXG4gICAgICAgICAgICAgICAgICAgIC5zZXRDdXN0b21lckZvckRyYWZ0T3JkZXIodGhpcy5pZCwgeyBjdXN0b21lcklkOiByZXN1bHQuaWQgfSlcclxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB7IG5vdGUsIC4uLmlucHV0IH0gPSByZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyLnNldEN1c3RvbWVyRm9yRHJhZnRPcmRlcih0aGlzLmlkLCB7IGlucHV0IH0pLnN1YnNjcmliZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0U2hpcHBpbmdBZGRyZXNzKCkge1xyXG4gICAgICAgIHRoaXMuZW50aXR5JFxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIHRha2UoMSksXHJcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAob3JkZXIgPT5cclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5mcm9tQ29tcG9uZW50KFNlbGVjdEFkZHJlc3NEaWFsb2dDb21wb25lbnQsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXN0b21lcklkOiBvcmRlci5jdXN0b21lcj8uaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50QWRkcmVzczogb3JkZXIuc2hpcHBpbmdBZGRyZXNzID8/IHVuZGVmaW5lZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXIuc2V0RHJhZnRPcmRlclNoaXBwaW5nQWRkcmVzcyh0aGlzLmlkLCByZXN1bHQpLnN1YnNjcmliZSgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRCaWxsaW5nQWRkcmVzcygpIHtcclxuICAgICAgICB0aGlzLmVudGl0eSRcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlKDEpLFxyXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKG9yZGVyID0+XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2RhbFNlcnZpY2UuZnJvbUNvbXBvbmVudChTZWxlY3RBZGRyZXNzRGlhbG9nQ29tcG9uZW50LCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2Fsczoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VzdG9tZXJJZDogb3JkZXIuY3VzdG9tZXI/LmlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEFkZHJlc3M6IG9yZGVyLmJpbGxpbmdBZGRyZXNzID8/IHVuZGVmaW5lZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXIuc2V0RHJhZnRPcmRlckJpbGxpbmdBZGRyZXNzKHRoaXMuaWQsIHJlc3VsdCkuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGFwcGx5Q291cG9uQ29kZShjb3Vwb25Db2RlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyLmFwcGx5Q291cG9uQ29kZVRvRHJhZnRPcmRlcih0aGlzLmlkLCBjb3Vwb25Db2RlKS5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVDb3Vwb25Db2RlKGNvdXBvbkNvZGU6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXIucmVtb3ZlQ291cG9uQ29kZUZyb21EcmFmdE9yZGVyKHRoaXMuaWQsIGNvdXBvbkNvZGUpLnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHNldFNoaXBwaW5nTWV0aG9kKCkge1xyXG4gICAgICAgIGNvbWJpbmVMYXRlc3QodGhpcy5lbnRpdHkkLCB0aGlzLmVsaWdpYmxlU2hpcHBpbmdNZXRob2RzJClcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICB0YWtlKDEpLFxyXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKChbb3JkZXIsIG1ldGhvZHNdKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW9kYWxTZXJ2aWNlLmZyb21Db21wb25lbnQoU2VsZWN0U2hpcHBpbmdNZXRob2REaWFsb2dDb21wb25lbnQsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGlnaWJsZVNoaXBwaW5nTWV0aG9kczogbWV0aG9kcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbmN5Q29kZTogb3JkZXIuY3VycmVuY3lDb2RlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudFNlbGVjdGlvbklkOiBvcmRlci5zaGlwcGluZ0xpbmVzPy5bMF0/LnNoaXBwaW5nTWV0aG9kLmlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5vcmRlci5zZXREcmFmdE9yZGVyU2hpcHBpbmdNZXRob2QodGhpcy5pZCwgcmVzdWx0KS5zdWJzY3JpYmUoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlQ3VzdG9tRmllbGRzKGN1c3RvbUZpZWxkc1ZhbHVlOiBhbnkpIHtcclxuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyXHJcbiAgICAgICAgICAgIC51cGRhdGVPcmRlckN1c3RvbUZpZWxkcyh7XHJcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5pZCxcclxuICAgICAgICAgICAgICAgIGN1c3RvbUZpZWxkczogY3VzdG9tRmllbGRzVmFsdWUsXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICBkZWxldGVPcmRlcigpIHtcclxuICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLm9yZGVyLmRlbGV0ZURyYWZ0T3JkZXIodGhpcy5pZCkuc3Vic2NyaWJlKCh7IGRlbGV0ZURyYWZ0T3JkZXIgfSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoZGVsZXRlRHJhZnRPcmRlci5yZXN1bHQgPT09IERlbGV0aW9uUmVzdWx0LkRFTEVURUQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zdWNjZXNzKF8oJ2NvbW1vbi5ub3RpZnktZGVsZXRlLXN1Y2Nlc3MnKSwge1xyXG4gICAgICAgICAgICAgICAgICAgIGVudGl0eTogJ09yZGVyJyxcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvb3JkZXJzJ10pO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGRlbGV0ZURyYWZ0T3JkZXIubWVzc2FnZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKGRlbGV0ZURyYWZ0T3JkZXIubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjb21wbGV0ZU9yZGVyKCkge1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uub3JkZXJcclxuICAgICAgICAgICAgLnRyYW5zaXRpb25Ub1N0YXRlKHRoaXMuaWQsICdBcnJhbmdpbmdQYXltZW50JylcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoeyB0cmFuc2l0aW9uT3JkZXJUb1N0YXRlIH0pID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh0cmFuc2l0aW9uT3JkZXJUb1N0YXRlPy5fX3R5cGVuYW1lID09PSAnT3JkZXInKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvb3JkZXJzJywgdGhpcy5pZF0pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0cmFuc2l0aW9uT3JkZXJUb1N0YXRlPy5fX3R5cGVuYW1lID09PSAnT3JkZXJTdGF0ZVRyYW5zaXRpb25FcnJvcicpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IodHJhbnNpdGlvbk9yZGVyVG9TdGF0ZS50cmFuc2l0aW9uRXJyb3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhc0lkPFQgZXh0ZW5kcyB7IGlkOiBzdHJpbmcgfT4oaW5wdXQ6IFQgfCBhbnkpOiBpbnB1dCBpcyB7IGlkOiBzdHJpbmcgfSB7XHJcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBpbnB1dCA9PT0gJ29iamVjdCcgJiYgISFpbnB1dC5pZDtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgc2V0Rm9ybVZhbHVlcyhlbnRpdHk6IE9yZGVyRGV0YWlsRnJhZ21lbnQpOiB2b2lkIHtcclxuICAgICAgICAvLyBlbXB0eVxyXG4gICAgfVxyXG59XHJcbiIsIjx2ZHItcGFnZS1ibG9jaz5cclxuICAgIDx2ZHItYWN0aW9uLWJhciAqbmdJZj1cImVudGl0eSQgfCBhc3luYyBhcyBvcmRlclwiPlxyXG4gICAgICAgIDx2ZHItYWItbGVmdD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggY2xyLWFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPHZkci1vcmRlci1zdGF0ZS1sYWJlbCBbc3RhdGVdPVwib3JkZXIuc3RhdGVcIj48L3Zkci1vcmRlci1zdGF0ZS1sYWJlbD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC92ZHItYWItbGVmdD5cclxuXHJcbiAgICAgICAgPHZkci1hYi1yaWdodD5cclxuICAgICAgICAgICAgPHZkci1hY3Rpb24tYmFyLWl0ZW1zIGxvY2F0aW9uSWQ9XCJkcmFmdC1vcmRlci1kZXRhaWxcIiAvPlxyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY29tcGxldGVPcmRlcigpXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhb3JkZXIuY3VzdG9tZXIgfHwgIW9yZGVyLmxpbmVzLmxlbmd0aCB8fCAhb3JkZXIuc2hpcHBpbmdMaW5lcy5sZW5ndGhcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8Y2xyLWljb24gc2hhcGU9XCJjaGVja1wiPjwvY2xyLWljb24+XHJcbiAgICAgICAgICAgICAgICB7eyAnb3JkZXIuY29tcGxldGUtZHJhZnQtb3JkZXInIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8dmRyLWFjdGlvbi1iYXItZHJvcGRvd24tbWVudSBbYWx3YXlzU2hvd109XCJ0cnVlXCIgbG9jYXRpb25JZD1cImRyYWZ0LW9yZGVyLWRldGFpbFwiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgdmRyRHJvcGRvd25JdGVtIChjbGljayk9XCJkZWxldGVPcmRlcigpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGNsci1pY29uIHNoYXBlPVwidHJhc2hcIiBjbGFzcz1cImlzLWRhbmdlclwiPjwvY2xyLWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgJ29yZGVyLmRlbGV0ZS1kcmFmdC1vcmRlcicgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L3Zkci1hY3Rpb24tYmFyLWRyb3Bkb3duLW1lbnU+XHJcbiAgICAgICAgPC92ZHItYWItcmlnaHQ+XHJcbiAgICA8L3Zkci1hY3Rpb24tYmFyPlxyXG48L3Zkci1wYWdlLWJsb2NrPlxyXG5cclxuPHZkci1wYWdlLWRldGFpbC1sYXlvdXQgKm5nSWY9XCJlbnRpdHkkIHwgYXN5bmMgYXMgb3JkZXJcIj5cclxuICAgIDx2ZHItcGFnZS1kZXRhaWwtc2lkZWJhcj5cclxuICAgICAgICA8dmRyLWNhcmQgW3RpdGxlXT1cIidvcmRlci5jdXN0b21lcicgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHZkckNhcmRDb250cm9scz5cclxuICAgICAgICAgICAgICAgIDxjbHItaWNvbiAqbmdJZj1cIiFvcmRlci5jdXN0b21lclwiIHNoYXBlPVwidW5rbm93bi1zdGF0dXNcIiBjbGFzcz1cImlzLXdhcm5pbmdcIj48L2Nsci1pY29uPlxyXG4gICAgICAgICAgICAgICAgPGNsci1pY29uICpuZ0lmPVwib3JkZXIuY3VzdG9tZXJcIiBzaGFwZT1cImNoZWNrXCIgY2xhc3M9XCJpcy1zdWNjZXNzXCI+PC9jbHItaWNvbj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPHZkci1jdXN0b21lci1sYWJlbFxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJibG9jayBtYi0yXCJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwib3JkZXIuY3VzdG9tZXJcIlxyXG4gICAgICAgICAgICAgICAgW2N1c3RvbWVyXT1cIm9yZGVyLmN1c3RvbWVyXCJcclxuICAgICAgICAgICAgPjwvdmRyLWN1c3RvbWVyLWxhYmVsPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uLXNtYWxsXCIgKGNsaWNrKT1cInNldEN1c3RvbWVyKClcIj5cclxuICAgICAgICAgICAgICAgIHt7ICdvcmRlci5zZXQtY3VzdG9tZXItZm9yLW9yZGVyJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgIDx2ZHItY2FyZCBbdGl0bGVdPVwiJ29yZGVyLmJpbGxpbmctYWRkcmVzcycgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIHZkckNhcmRDb250cm9scz5cclxuICAgICAgICAgICAgICAgIDxjbHItaWNvblxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIW9yZGVyLmJpbGxpbmdBZGRyZXNzLnN0cmVldExpbmUxXCJcclxuICAgICAgICAgICAgICAgICAgICBzaGFwZT1cInVua25vd24tc3RhdHVzXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImlzLXdhcm5pbmdcIlxyXG4gICAgICAgICAgICAgICAgPjwvY2xyLWljb24+XHJcbiAgICAgICAgICAgICAgICA8Y2xyLWljb25cclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm9yZGVyLmJpbGxpbmdBZGRyZXNzLnN0cmVldExpbmUxXCJcclxuICAgICAgICAgICAgICAgICAgICBzaGFwZT1cImNoZWNrXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImlzLXN1Y2Nlc3NcIlxyXG4gICAgICAgICAgICAgICAgPjwvY2xyLWljb24+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDx2ZHItZm9ybWF0dGVkLWFkZHJlc3NcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYmxvY2sgbWItMlwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm9yZGVyLmJpbGxpbmdBZGRyZXNzXCJcclxuICAgICAgICAgICAgICAgIFthZGRyZXNzXT1cIm9yZGVyLmJpbGxpbmdBZGRyZXNzXCJcclxuICAgICAgICAgICAgPjwvdmRyLWZvcm1hdHRlZC1hZGRyZXNzPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uLXNtYWxsXCIgKGNsaWNrKT1cInNldEJpbGxpbmdBZGRyZXNzKClcIj5cclxuICAgICAgICAgICAgICAgIHt7ICdvcmRlci5zZXQtYmlsbGluZy1hZGRyZXNzJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgIDx2ZHItY2FyZCBbdGl0bGVdPVwiJ29yZGVyLnNoaXBwaW5nJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgdmRyQ2FyZENvbnRyb2xzPlxyXG4gICAgICAgICAgICAgICAgPGNsci1pY29uXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhb3JkZXIuc2hpcHBpbmdBZGRyZXNzLnN0cmVldExpbmUxIHx8ICFvcmRlci5zaGlwcGluZ0xpbmVzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgc2hhcGU9XCJ1bmtub3duLXN0YXR1c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpcy13YXJuaW5nXCJcclxuICAgICAgICAgICAgICAgID48L2Nsci1pY29uPlxyXG4gICAgICAgICAgICAgICAgPGNsci1pY29uXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJvcmRlci5zaGlwcGluZ0FkZHJlc3Muc3RyZWV0TGluZTEgJiYgb3JkZXIuc2hpcHBpbmdMaW5lcy5sZW5ndGhcIlxyXG4gICAgICAgICAgICAgICAgICAgIHNoYXBlPVwiY2hlY2tcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaXMtc3VjY2Vzc1wiXHJcbiAgICAgICAgICAgICAgICA+PC9jbHItaWNvbj5cclxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPHZkci1mb3JtYXR0ZWQtYWRkcmVzc1xyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJibG9jayBtYi0yXCJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwib3JkZXIuc2hpcHBpbmdBZGRyZXNzXCJcclxuICAgICAgICAgICAgICAgIFthZGRyZXNzXT1cIm9yZGVyLnNoaXBwaW5nQWRkcmVzc1wiXHJcbiAgICAgICAgICAgID48L3Zkci1mb3JtYXR0ZWQtYWRkcmVzcz5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbi1zbWFsbCBtci0yXCIgKGNsaWNrKT1cInNldFNoaXBwaW5nQWRkcmVzcygpXCI+XHJcbiAgICAgICAgICAgICAgICB7eyAnb3JkZXIuc2V0LXNoaXBwaW5nLWFkZHJlc3MnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgc2hpcHBpbmdMaW5lIG9mIG9yZGVyLnNoaXBwaW5nTGluZXNcIj5cclxuICAgICAgICAgICAgICAgIHt7IHNoaXBwaW5nTGluZS5zaGlwcGluZ01ldGhvZC5uYW1lIH19XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uLXNtYWxsXCIgKGNsaWNrKT1cInNldFNoaXBwaW5nTWV0aG9kKClcIj5cclxuICAgICAgICAgICAgICAgIHt7ICdvcmRlci5zZXQtc2hpcHBpbmctbWV0aG9kJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgIDx2ZHItY2FyZD5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJvcmRlci5jb3Vwb25Db2Rlcy5sZW5ndGggPT09IDAgJiYgIWRpc3BsYXlDb3Vwb25Db2RlSW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJidXR0b24tc21hbGxcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImRpc3BsYXlDb3Vwb25Db2RlSW5wdXQgPSAhZGlzcGxheUNvdXBvbkNvZGVJbnB1dFwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIHt7ICdvcmRlci5zZXQtY291cG9uLWNvZGVzJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9yZGVyLmNvdXBvbkNvZGVzLmxlbmd0aCB8fCBkaXNwbGF5Q291cG9uQ29kZUlucHV0XCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWw+e3sgJ29yZGVyLnNldC1jb3Vwb24tY29kZXMnIHwgdHJhbnNsYXRlIH19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDx2ZHItY291cG9uLWNvZGUtc2VsZWN0b3JcclxuICAgICAgICAgICAgICAgICAgICBbY291cG9uQ29kZXNdPVwib3JkZXIuY291cG9uQ29kZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIChhZGRDb3Vwb25Db2RlKT1cImFwcGx5Q291cG9uQ29kZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAocmVtb3ZlQ291cG9uQ29kZSk9XCJyZW1vdmVDb3Vwb25Db2RlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgPjwvdmRyLWNvdXBvbi1jb2RlLXNlbGVjdG9yPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgIDx2ZHItY2FyZD5cclxuICAgICAgICAgICAgPHZkci1wYWdlLWVudGl0eS1pbmZvICpuZ0lmPVwiZW50aXR5JCB8IGFzeW5jIGFzIGVudGl0eVwiIFtlbnRpdHldPVwiZW50aXR5XCIgLz5cclxuICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgPC92ZHItcGFnZS1kZXRhaWwtc2lkZWJhcj5cclxuICAgIDx2ZHItcGFnZS1ibG9jaz5cclxuICAgICAgICA8dmRyLWNhcmQ+XHJcbiAgICAgICAgICAgIDx2ZHItZHJhZnQtb3JkZXItdmFyaWFudC1zZWxlY3RvclxyXG4gICAgICAgICAgICAgICAgW29yZGVyTGluZUN1c3RvbUZpZWxkc109XCJvcmRlckxpbmVDdXN0b21GaWVsZHNcIlxyXG4gICAgICAgICAgICAgICAgW2N1cnJlbmN5Q29kZV09XCJvcmRlci5jdXJyZW5jeUNvZGVcIlxyXG4gICAgICAgICAgICAgICAgKGFkZEl0ZW0pPVwiYWRkSXRlbVRvT3JkZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgID48L3Zkci1kcmFmdC1vcmRlci12YXJpYW50LXNlbGVjdG9yPlxyXG4gICAgICAgICAgICA8dmRyLW9yZGVyLXRhYmxlXHJcbiAgICAgICAgICAgICAgICBbb3JkZXJdPVwib3JkZXJcIlxyXG4gICAgICAgICAgICAgICAgW29yZGVyTGluZUN1c3RvbUZpZWxkc109XCJvcmRlckxpbmVDdXN0b21GaWVsZHNcIlxyXG4gICAgICAgICAgICAgICAgW2lzRHJhZnRdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAoYWRqdXN0KT1cImFkanVzdE9yZGVyTGluZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgIChyZW1vdmUpPVwicmVtb3ZlT3JkZXJMaW5lKCRldmVudClcIlxyXG4gICAgICAgICAgICA+PC92ZHItb3JkZXItdGFibGU+XHJcbiAgICAgICAgPC92ZHItY2FyZD5cclxuICAgICAgICA8dmRyLWNhcmQgW3RpdGxlXT1cIidvcmRlci50YXgtc3VtbWFyeScgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9yZGVyLnRheFN1bW1hcnkubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnt7ICdjb21tb24uZGVzY3JpcHRpb24nIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAnb3JkZXIudGF4LXJhdGUnIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAnb3JkZXIudGF4LWJhc2UnIHwgdHJhbnNsYXRlIH19PC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAnb3JkZXIudGF4LXRvdGFsJyB8IHRyYW5zbGF0ZSB9fTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgcm93IG9mIG9yZGVyLnRheFN1bW1hcnlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyByb3cuZGVzY3JpcHRpb24gfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IHJvdy50YXhSYXRlIC8gMTAwIHwgcGVyY2VudCB9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3sgcm93LnRheEJhc2UgfCBsb2NhbGVDdXJyZW5jeSA6IG9yZGVyLmN1cnJlbmN5Q29kZSB9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3sgcm93LnRheFRvdGFsIHwgbG9jYWxlQ3VycmVuY3kgOiBvcmRlci5jdXJyZW5jeUNvZGUgfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L3Zkci1jYXJkPlxyXG4gICAgICAgIDx2ZHItY3VzdG9tLWRldGFpbC1jb21wb25lbnQtaG9zdFxyXG4gICAgICAgICAgICBsb2NhdGlvbklkPVwiZHJhZnQtb3JkZXItZGV0YWlsXCJcclxuICAgICAgICAgICAgW2VudGl0eSRdPVwiZW50aXR5JFwiXHJcbiAgICAgICAgICAgIFtkZXRhaWxGb3JtXT1cImRldGFpbEZvcm1cIlxyXG4gICAgICAgID48L3Zkci1jdXN0b20tZGV0YWlsLWNvbXBvbmVudC1ob3N0PlxyXG5cclxuICAgICAgICA8dmRyLW9yZGVyLWN1c3RvbS1maWVsZHMtY2FyZFxyXG4gICAgICAgICAgICBbY3VzdG9tRmllbGRzQ29uZmlnXT1cImN1c3RvbUZpZWxkc1wiXHJcbiAgICAgICAgICAgIFtjdXN0b21GaWVsZFZhbHVlc109XCJvcmRlci5jdXN0b21GaWVsZHNcIlxyXG4gICAgICAgICAgICAodXBkYXRlQ2xpY2spPVwidXBkYXRlQ3VzdG9tRmllbGRzKCRldmVudClcIlxyXG4gICAgICAgID48L3Zkci1vcmRlci1jdXN0b20tZmllbGRzLWNhcmQ+XHJcbiAgICA8L3Zkci1wYWdlLWJsb2NrPlxyXG48L3Zkci1wYWdlLWRldGFpbC1sYXlvdXQ+XHJcbiJdfQ==
@@ -7603,7 +7603,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
7603
7603
  }], ctorParameters: () => [{ type: AlertsService }] });
7604
7604
 
7605
7605
  // Auto-generated by the set-version.js script.
7606
- const ADMIN_UI_VERSION = '2.2.3';
7606
+ const ADMIN_UI_VERSION = '2.2.4';
7607
7607
 
7608
7608
  /* eslint-disable @angular-eslint/directive-selector */
7609
7609
  class FormFieldControlDirective {