@c8y/ngx-components 1010.0.29 → 1010.0.32

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.
Files changed (60) hide show
  1. package/assets-navigator/asset-node.service.d.ts +7 -3
  2. package/assets-navigator/c8y-ngx-components-assets-navigator.metadata.json +1 -1
  3. package/bundles/c8y-ngx-components-assets-navigator.umd.js +7 -2
  4. package/bundles/c8y-ngx-components-assets-navigator.umd.js.map +1 -1
  5. package/bundles/c8y-ngx-components-assets-navigator.umd.min.js +1 -1
  6. package/bundles/c8y-ngx-components-assets-navigator.umd.min.js.map +1 -1
  7. package/bundles/c8y-ngx-components-repository.umd.js +8 -4
  8. package/bundles/c8y-ngx-components-repository.umd.js.map +1 -1
  9. package/bundles/c8y-ngx-components-repository.umd.min.js +1 -1
  10. package/bundles/c8y-ngx-components-repository.umd.min.js.map +1 -1
  11. package/bundles/c8y-ngx-components-sensor-phone.umd.js +1 -1
  12. package/bundles/c8y-ngx-components-sensor-phone.umd.js.map +1 -1
  13. package/bundles/c8y-ngx-components-sensor-phone.umd.min.js +1 -1
  14. package/bundles/c8y-ngx-components-sensor-phone.umd.min.js.map +1 -1
  15. package/bundles/c8y-ngx-components.umd.js +14 -8
  16. package/bundles/c8y-ngx-components.umd.js.map +1 -1
  17. package/bundles/c8y-ngx-components.umd.min.js +1 -1
  18. package/bundles/c8y-ngx-components.umd.min.js.map +1 -1
  19. package/c8y-ngx-components.metadata.json +1 -1
  20. package/core/file-picker/file-picker.component.d.ts +8 -0
  21. package/esm2015/assets-navigator/asset-node.service.js +8 -3
  22. package/esm2015/core/file-picker/file-picker.component.js +12 -2
  23. package/esm2015/core/file-picker/file-picker.module.js +6 -8
  24. package/esm2015/repository/configuration/configuration-detail.component.js +7 -2
  25. package/esm2015/repository/firmware/add-firmware-modal.component.js +7 -2
  26. package/esm2015/repository/firmware/add-firmware-patch-modal.component.js +7 -2
  27. package/esm2015/repository/software/add-software-modal.component.js +7 -2
  28. package/esm2015/sensor-phone/sensor-phone-modal.component.js +2 -2
  29. package/esm5/assets-navigator/asset-node.service.js +8 -3
  30. package/esm5/core/file-picker/file-picker.component.js +12 -2
  31. package/esm5/core/file-picker/file-picker.module.js +6 -8
  32. package/esm5/repository/configuration/configuration-detail.component.js +3 -2
  33. package/esm5/repository/firmware/add-firmware-modal.component.js +3 -2
  34. package/esm5/repository/firmware/add-firmware-patch-modal.component.js +3 -2
  35. package/esm5/repository/software/add-software-modal.component.js +3 -2
  36. package/esm5/sensor-phone/sensor-phone-modal.component.js +2 -2
  37. package/fesm2015/c8y-ngx-components-assets-navigator.js +7 -2
  38. package/fesm2015/c8y-ngx-components-assets-navigator.js.map +1 -1
  39. package/fesm2015/c8y-ngx-components-repository.js +24 -4
  40. package/fesm2015/c8y-ngx-components-repository.js.map +1 -1
  41. package/fesm2015/c8y-ngx-components-sensor-phone.js +1 -1
  42. package/fesm2015/c8y-ngx-components-sensor-phone.js.map +1 -1
  43. package/fesm2015/c8y-ngx-components.js +14 -8
  44. package/fesm2015/c8y-ngx-components.js.map +1 -1
  45. package/fesm5/c8y-ngx-components-assets-navigator.js +7 -2
  46. package/fesm5/c8y-ngx-components-assets-navigator.js.map +1 -1
  47. package/fesm5/c8y-ngx-components-repository.js +8 -4
  48. package/fesm5/c8y-ngx-components-repository.js.map +1 -1
  49. package/fesm5/c8y-ngx-components-sensor-phone.js +1 -1
  50. package/fesm5/c8y-ngx-components-sensor-phone.js.map +1 -1
  51. package/fesm5/c8y-ngx-components.js +14 -8
  52. package/fesm5/c8y-ngx-components.js.map +1 -1
  53. package/locales/locales.pot +30 -9
  54. package/package.json +2 -2
  55. package/repository/c8y-ngx-components-repository.metadata.json +1 -1
  56. package/repository/configuration/configuration-detail.component.d.ts +1 -0
  57. package/repository/firmware/add-firmware-modal.component.d.ts +1 -0
  58. package/repository/firmware/add-firmware-patch-modal.component.d.ts +1 -0
  59. package/repository/software/add-software-modal.component.d.ts +1 -0
  60. package/sensor-phone/c8y-ngx-components-sensor-phone.metadata.json +1 -1
@@ -51,7 +51,7 @@ var AssetNodeService = /** @class */ (function () {
51
51
  var defaultFilter = {
52
52
  pageSize: this.PAGE_SIZE,
53
53
  withChildren: false,
54
- query: this.queriesUtil.buildQuery(this.rootQueryFilter())
54
+ query: this.queriesUtil.buildQuery(this.navRootQueryFilter())
55
55
  };
56
56
  var groupFilter = customFilter ? customFilter : defaultFilter;
57
57
  // due to BE performance limitations we do not allow filtering and sorting for a user without inventory roles
@@ -92,13 +92,18 @@ var AssetNodeService = /** @class */ (function () {
92
92
  AssetNodeService.prototype.groupQueryFilter = function (moId) {
93
93
  return "$filter=(bygroupid(" + moId + "))$orderby=name";
94
94
  };
95
+ AssetNodeService.prototype.navRootQueryFilter = function () {
96
+ var navRootFilter = this.rootQueryFilter();
97
+ navRootFilter.__orderby = [{ name: 1 }];
98
+ return navRootFilter;
99
+ };
95
100
  AssetNodeService.prototype.rootQueryFilter = function () {
96
101
  var moduleConfig = this.moduleConfig;
97
102
  var rootFilter = {
98
103
  __filter: {
99
104
  type: "" + GroupFragment.groupType
100
105
  },
101
- __orderby: [{ name: 1 }]
106
+ __orderby: []
102
107
  };
103
108
  if (moduleConfig.smartGroups) {
104
109
  var queryFilter = {
@@ -205,4 +210,4 @@ var AssetNodeService = /** @class */ (function () {
205
210
  return AssetNodeService;
206
211
  }());
207
212
  export { AssetNodeService };
208
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtbm9kZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy9hc3NldHMtbmF2aWdhdG9yLyIsInNvdXJjZXMiOlsiYXNzZXQtbm9kZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNsRyxPQUFPLEVBQ0wsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUF3QixzQkFBc0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQVFyRDtJQU9FLDBCQUNTLFNBQTJCLEVBQzNCLE1BQTBCLEVBQzFCLFVBQXNCLEVBQ3RCLEtBQW1CLEVBQ25CLEtBQW1CLEVBQ2hCLGlCQUFvQyxFQUNwQyxJQUFpQixFQUNqQixRQUF5QixFQUNnQixZQUFrQztRQVI5RSxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMz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QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEludmVudG9yeVNlcnZpY2UsIFF1ZXJpZXNVdGlsLCBVc2VyU2VydmljZSwgSU1hbmFnZWRPYmplY3QsIElSZXN1bHQgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQge1xuICBBbGVydFNlcnZpY2UsXG4gIEJyZWFkY3J1bWJTZXJ2aWNlLFxuICBNb2RhbFNlcnZpY2UsXG4gIE5hdmlnYXRvck5vZGUsXG4gIEFwcFN0YXRlU2VydmljZVxufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IEFwaVNlcnZpY2UgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL2FwaSc7XG5pbXBvcnQgeyBlbXB0eSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtZXJnZU1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFzc2V0Tm9kZSB9IGZyb20gJy4vYXNzZXQtbm9kZSc7XG5pbXBvcnQgeyBBc3NldE5hdmlnYXRvckNvbmZpZywgQVNTRVRfTkFWSUdBVE9SX0NPTkZJRyB9IGZyb20gJy4vYXNzZXQtbm9kZS1jb25maWcubW9kZWwnO1xuaW1wb3J0IHsgRHluYW1pY0dyb3VwTm9kZSB9IGZyb20gJy4vZHluYW1pYy1ncm91cC1ub2RlJztcbmltcG9ydCB7IEdyb3VwRnJhZ21lbnQgfSBmcm9tICcuL2dyb3VwLWZyYWdtZW50Lm1vZGVsJztcbmltcG9ydCB7IERldmljZUdyb3VwU2VydmljZSB9IGZyb20gJy4vZ3JvdXAuc2VydmljZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXNzZXROb2RlTW8ge1xuICBpZDogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBc3NldE5vZGVTZXJ2aWNlIHtcbiAgcm9vdE5vZGU6IEFzc2V0Tm9kZTtcbiAgZmlyc3RVcmwgPSB0cnVlO1xuICBkcmFnZ2VkRGF0YTogQXNzZXROb2RlO1xuICBxdWVyaWVzVXRpbDogUXVlcmllc1V0aWw7XG4gIHByb3RlY3RlZCBQQUdFX1NJWkUgPSAyMDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaW52ZW50b3J5OiBJbnZlbnRvcnlTZXJ2aWNlLFxuICAgIHB1YmxpYyBncm91cHM6IERldmljZUdyb3VwU2VydmljZSxcbiAgICBwdWJsaWMgYXBpU2VydmljZTogQXBpU2VydmljZSxcbiAgICBwdWJsaWMgbW9kYWw6IE1vZGFsU2VydmljZSxcbiAgICBwdWJsaWMgYWxlcnQ6IEFsZXJ0U2VydmljZSxcbiAgICBwcm90ZWN0ZWQgYnJlYWRjcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCB1c2VyOiBVc2VyU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgYXBwU3RhdGU6IEFwcFN0YXRlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFTU0VUX05BVklHQVRPUl9DT05GSUcpIHB1YmxpYyBtb2R1bGVDb25maWc6IEFzc2V0TmF2aWdhdG9yQ29uZmlnXG4gICkge1xuICAgIHRoaXMubW9kdWxlQ29uZmlnID0ge1xuICAgICAgcm9vdE5vZGVQcmlvcml0eTogMjAwMCxcbiAgICAgIC4uLihtb2R1bGVDb25maWcgfHwge30pXG4gICAgfTtcbiAgICB0aGlzLnF1ZXJpZXNVdGlsID0gbmV3IFF1ZXJpZXNVdGlsKCk7XG4gIH1cblxuICBjcmVhdGVSb290Tm9kZSgpIHtcbiAgICB0aGlzLnJvb3ROb2RlID0gdGhpcy5jcmVhdGVBc3NldE5vZGUoe1xuICAgICAgcm9vdDogdHJ1ZSxcbiAgICAgIHByaW9yaXR5OiB0aGlzLm1vZHVsZUNvbmZpZy5yb290Tm9kZVByaW9yaXR5XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMucm9vdE5vZGU7XG4gIH1cblxuICBjcmVhdGVEeW5hbWljR3JvdXBOb2RlKGNvbmZpZykge1xuICAgIHJldHVybiBuZXcgRHluYW1pY0dyb3VwTm9kZSh0aGlzLCBjb25maWcpO1xuICB9XG5cbiAgY3JlYXRlQXNzZXROb2RlKGNvbmZpZykge1xuICAgIHJldHVybiBuZXcgQXNzZXROb2RlKHRoaXMsIGNvbmZpZyk7XG4gIH1cblxuICBjcmVhdGVDaGlsZE5vZGUobWFuYWdlZE9iamVjdCkge1xuICAgIGNvbnN0IHsgdHlwZSB9ID0gbWFuYWdlZE9iamVjdDtcbiAgICBjb25zdCBjb25maWc6IFBhcnRpYWw8QXNzZXROb2RlPiA9IHsgbW86IG1hbmFnZWRPYmplY3QgfTtcbiAgICBpZiAodHlwZSA9PT0gR3JvdXBGcmFnbWVudC5keW5hbWljR3JvdXBUeXBlKSB7XG4gICAgICByZXR1cm4gdGhpcy5jcmVhdGVEeW5hbWljR3JvdXBOb2RlKGNvbmZpZyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNyZWF0ZUFzc2V0Tm9kZShjb25maWcpO1xuICB9XG5cbiAgZ2V0Um9vdE5vZGVzKGN1c3RvbUZpbHRlcj86IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgZGVmYXVsdEZpbHRlciA9IHtcbiAgICAgIHBhZ2VTaXplOiB0aGlzLlBBR0VfU0laRSxcbiAgICAgIHdpdGhDaGlsZHJlbjogZmFsc2UsXG4gICAgICBxdWVyeTogdGhpcy5xdWVyaWVzVXRpbC5idWlsZFF1ZXJ5KHRoaXMucm9vdFF1ZXJ5RmlsdGVyKCkpXG4gICAgfTtcbiAgICBjb25zdCBncm91cEZpbHRlciA9IGN1c3RvbUZpbHRlciA/IGN1c3RvbUZpbHRlciA6IGRlZmF1bHRGaWx0ZXI7XG5cbiAgICAvLyBkdWUgdG8gQkUgcGVyZm9ybWFuY2UgbGltaXRhdGlvbnMgd2UgZG8gbm90IGFsbG93IGZpbHRlcmluZyBhbmQgc29ydGluZyBmb3IgYSB1c2VyIHdpdGhvdXQgaW52ZW50b3J5IHJvbGVzXG4gICAgaWYgKCF0aGlzLnVzZXIuaGFzUm9sZSh0aGlzLmFwcFN0YXRlLmN1cnJlbnRVc2VyLnZhbHVlLCAnUk9MRV9JTlZFTlRPUllfUkVBRCcpKSB7XG4gICAgICBkZWxldGUgZ3JvdXBGaWx0ZXIucXVlcnk7XG4gICAgICBPYmplY3QuYXNzaWduKGdyb3VwRmlsdGVyLCB7XG4gICAgICAgIGZyYWdtZW50VHlwZTogR3JvdXBGcmFnbWVudC5ncm91cEZyYWdtZW50VHlwZSxcbiAgICAgICAgb25seVJvb3RzOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaW52ZW50b3J5Lmxpc3QodGhpcy5jcmVhdGVGaWx0ZXIoZ3JvdXBGaWx0ZXIpKTtcbiAgfVxuXG4gIGdldEdyb3VwSXRlbXMobW9JZDogc3RyaW5nLCBleHRyYUZpbHRlcjogb2JqZWN0ID0ge30pIHtcbiAgICBjb25zdCBxdWVyeUZpbHRlciA9IHtcbiAgICAgIHdpdGhDaGlsZHJlbjogZmFsc2UsXG4gICAgICBwYWdlU2l6ZTogdGhpcy5QQUdFX1NJWkUsXG4gICAgICBxdWVyeTogdGhpcy5ncm91cFF1ZXJ5RmlsdGVyKG1vSWQpXG4gICAgfTtcbiAgICByZXR1cm4gdGhpcy5pbnZlbnRvcnkuY2hpbGRBc3NldHNMaXN0KG1vSWQsIHsgLi4ucXVlcnlGaWx0ZXIsIC4uLmV4dHJhRmlsdGVyIH0pO1xuICB9XG5cbiAgZ2V0RHluYW1pY0dyb3VwSXRlbXMoZ3JvdXBRdWVyeTogc3RyaW5nLCBmaWx0ZXJPYmo6IGFueSA9IHt9KSB7XG4gICAgY29uc3QgeyBxdWVyeSwgLi4ucXVlcnlQYXJhbXMgfSA9IGZpbHRlck9iajtcbiAgICBjb25zdCBvcmRlckJ5UXVlcnkgPSBxdWVyeTtcbiAgICBjb25zdCBxdWVyeUZpbHRlciA9IHtcbiAgICAgIHE6IHRoaXMuYnVpbGRDb21iaW5lZFF1ZXJ5KGdyb3VwUXVlcnksIG9yZGVyQnlRdWVyeSksXG4gICAgICAuLi5xdWVyeVBhcmFtc1xuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaW52ZW50b3J5Lmxpc3QodGhpcy5jcmVhdGVGaWx0ZXIocXVlcnlGaWx0ZXIpKTtcbiAgfVxuXG4gIGdldERldmljZUNoaWxkcmVuKG1vSWQ6IHN0cmluZywgZXh0cmFGaWx0ZXI6IG9iamVjdCA9IHt9KSB7XG4gICAgY29uc3QgcXVlcnlGaWx0ZXIgPSB7XG4gICAgICB3aXRoQ2hpbGRyZW46IGZhbHNlLFxuICAgICAgcGFnZVNpemU6IHRoaXMuUEFHRV9TSVpFLFxuICAgICAgcXVlcnk6IHRoaXMuZ3JvdXBRdWVyeUZpbHRlcihtb0lkKVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaW52ZW50b3J5LmNoaWxkRGV2aWNlc0xpc3QobW9JZCwgeyAuLi5xdWVyeUZpbHRlciwgLi4uZXh0cmFGaWx0ZXIgfSk7XG4gIH1cblxuICBncm91cFF1ZXJ5RmlsdGVyKG1vSWQ6IHN0cmluZykge1xuICAgIHJldHVybiBgJGZpbHRlcj0oYnlncm91cGlkKCR7bW9JZH0pKSRvcmRlcmJ5PW5hbWVgO1xuICB9XG5cbiAgcm9vdFF1ZXJ5RmlsdGVyKCkge1xuICAgIGNvbnN0IHsgbW9kdWxlQ29uZmlnIH0gPSB0aGlzO1xuICAgIGNvbnN0IHJvb3RGaWx0ZXIgPSB7XG4gICAgICBfX2ZpbHRlcjoge1xuICAgICAgICB0eXBlOiBgJHtHcm91cEZyYWdtZW50Lmdyb3VwVHlwZX1gXG4gICAgICB9LFxuICAgICAgX19vcmRlcmJ5OiBbeyBuYW1lOiAxIH1dXG4gICAgfTtcbiAgICBpZiAobW9kdWxlQ29uZmlnLnNtYXJ0R3JvdXBzKSB7XG4gICAgICBjb25zdCBxdWVyeUZpbHRlciA9IHtcbiAgICAgICAgX19maWx0ZXI6IHtcbiAgICAgICAgICBfX2FuZDogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0eXBlOiBgJHtHcm91cEZyYWdtZW50LmR5bmFtaWNHcm91cFR5cGV9YFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgX19oYXM6IGAke0dyb3VwRnJhZ21lbnQuZHluYW1pY0dyb3VwRnJhZ21lbnR9YFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHsgX19ub3Q6IHsgX19oYXM6IGAke0dyb3VwRnJhZ21lbnQuZHluYW1pY0dyb3VwRnJhZ21lbnR9LmludmlzaWJsZWAgfSB9XG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgdGhpcy5xdWVyaWVzVXRpbC5hZGRPckZpbHRlcihyb290RmlsdGVyLCBxdWVyeUZpbHRlcik7XG4gICAgfVxuICAgIHJldHVybiByb290RmlsdGVyO1xuICB9XG5cbiAgb25VcGRhdGUoeyBtbywgcm9vdCB9KSB7XG4gICAgaWYgKG1vLmlkKSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlXG4gICAgICAgIC5ob29rUmVzcG9uc2UoXG4gICAgICAgICAgKHsgdXJsLCBtZXRob2QgfSkgPT5cbiAgICAgICAgICAgIFsnUFVUJywgJ0RFTEVURScsICdQT1NUJ10uaW5jbHVkZXMobWV0aG9kKSAmJlxuICAgICAgICAgICAgUmVnRXhwKGAoKGludmVudG9yeS9tYW5hZ2VkT2JqZWN0cyl8KHNlcnZpY2Uvc21hcnRncm91cC9zbWFydGdyb3VwcykpLyR7bW8uaWR9YCkudGVzdChcbiAgICAgICAgICAgICAgdXJsXG4gICAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgZmlsdGVyKCgpID0+ICF0aGlzLmRyYWdnZWREYXRhKSxcbiAgICAgICAgICBtZXJnZU1hcCh0aGlzLmFwaVNlcnZpY2UucmVzb2x2ZURhdGEpLFxuICAgICAgICAgIGZpbHRlcihyZXNwb25zZSA9PiAhcmVzcG9uc2UuZGF0YS5jOHlfRGFzaGJvYXJkKVxuICAgICAgICApO1xuICAgIH0gZWxzZSBpZiAocm9vdCkge1xuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZVxuICAgICAgICAuaG9va1Jlc3BvbnNlKFxuICAgICAgICAgICh7IHVybCwgbWV0aG9kIH0pID0+XG4gICAgICAgICAgICBSZWdFeHAoJygoaW52ZW50b3J5L21hbmFnZWRPYmplY3RzKXwoc2VydmljZS9zbWFydGdyb3VwL3NtYXJ0Z3JvdXBzKSkvPyQnKS50ZXN0KHVybCkgJiZcbiAgICAgICAgICAgIG1ldGhvZCA9PT0gJ1BPU1QnXG4gICAgICAgIClcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWVyZ2VNYXAodGhpcy5hcGlTZXJ2aWNlLnJlc29sdmVEYXRhKSxcbiAgICAgICAgICBmaWx0ZXIocmVzcG9uc2UgPT4gdGhpcy5pc05ld01hbmFnZWRPYmplY3RSb290KHJlc3BvbnNlKSlcbiAgICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGVtcHR5KCk7XG4gICAgfVxuICB9XG5cbiAgaXNOZXdNYW5hZ2VkT2JqZWN0Um9vdChyZXNwb25zZTogUGFydGlhbDxJUmVzdWx0PElNYW5hZ2VkT2JqZWN0Pj4gPSB7fSkge1xuICAgIGNvbnN0IHsgZGF0YSB9ID0gcmVzcG9uc2U7XG4gICAgbGV0IGlzUm9vdEFzc2V0ID0gZmFsc2U7XG5cbiAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdvYmplY3QnKSB7XG4gICAgICBpc1Jvb3RBc3NldCA9ICEhZGF0YVtHcm91cEZyYWdtZW50Lmdyb3VwRnJhZ21lbnRUeXBlXTtcbiAgICAgIGlmICghaXNSb290QXNzZXQgJiYgdGhpcy5tb2R1bGVDb25maWcuc21hcnRHcm91cHMpIHtcbiAgICAgICAgaXNSb290QXNzZXQgPSAhIWRhdGFbR3JvdXBGcmFnbWVudC5keW5hbWljR3JvdXBGcmFnbWVudF07XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBpc1Jvb3RBc3NldDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGVyZSBjb3VsZCBiZSBtdWx0aXBsZSBicmVhZGNydW1icyBmb3IgZGV2aWNlcyxcbiAgICogc28gd2Ugc2V0IGEgcHJlZmVycmVkIG9uZSBvbiBjbGljayBvbiBhIGRldmljZS5cbiAgICogQHBhcmFtIHBhcmVudHMgVGhlIHBhcmVudCBub2RlcyBvZiB0aGUgZGV2aWNlIHRvIHNlbGVjdCB0aGUgcHJlZmVyZWQgb25lLlxuICAgKi9cbiAgcHJlZmVyQnJlYWRjcnVtYihwYXJlbnRzOiBOYXZpZ2F0b3JOb2RlW10pIHtcbiAgICBpZiAocGFyZW50cy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHRoaXMuYnJlYWRjcnVtYlNlcnZpY2Uuc2VsZWN0UHJlZmVycmVkQnlQYXRoKHBhcmVudHNbMF0ucGF0aCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUZpbHRlcihleHRyYVBhcmFtczogYW55ID0ge30pIHtcbiAgICBjb25zdCBwYXJhbXMgPSB7XG4gICAgICBjdXJyZW50UGFnZTogMSxcbiAgICAgIHdpdGhUb3RhbFBhZ2VzOiB0cnVlLFxuICAgICAgcGFnZVNpemU6IDEwXG4gICAgfTtcbiAgICByZXR1cm4geyAuLi5wYXJhbXMsIC4uLmV4dHJhUGFyYW1zIH07XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQ29tYmluZWRRdWVyeShxdWVyeSwgb3JkZXJCeVF1ZXJ5KSB7XG4gICAgbGV0IGNvbWJpbmVkUXVlcnk7XG4gICAgaWYgKHF1ZXJ5ICYmIG9yZGVyQnlRdWVyeSkge1xuICAgICAgY29uc3QgZmlsdGVyUXVlcnkgPSB0aGlzLnF1ZXJpZXNVdGlsLmJ1aWxkUXVlcnkoe1xuICAgICAgICBfX3VzZUZpbHRlclF1ZXJ5U3RyaW5nOiBxdWVyeVxuICAgICAgfSk7XG4gICAgICBjb21iaW5lZFF1ZXJ5ID0gYCR7ZmlsdGVyUXVlcnl9ICR7b3JkZXJCeVF1ZXJ5fWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbWJpbmVkUXVlcnkgPSBxdWVyeSB8fCBvcmRlckJ5UXVlcnkgfHwgJyc7XG4gICAgfVxuICAgIHJldHVybiBjb21iaW5lZFF1ZXJ5O1xuICB9XG59XG4iXX0=
213
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtbm9kZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy9hc3NldHMtbmF2aWdhdG9yLyIsInNvdXJjZXMiOlsiYXNzZXQtbm9kZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNsRyxPQUFPLEVBQ0wsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUF3QixzQkFBc0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQVFyRDtJQU9FLDBCQUNTLFNBQTJCLEVBQzNCLE1BQTBCLEVBQzFCLFVBQXNCLEVBQ3RCLEtBQW1CLEVBQ25CLEtBQW1CLEVBQ2hCLGlCQUFvQyxFQUNwQyxJQUFpQixFQUNqQixRQUF5QixFQUNnQixZQUFrQztRQVI5RSxjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMz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VSxFQUFFO1FBaUJSLG1CQUFBLFFBQVEsRUFBRSxDQUFBLEVBQUUsbUJBQUEsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUE7T0FoQmxDLGdCQUFnQixDQWtONUI7SUFBRCx1QkFBQztDQUFBLEFBbE5ELElBa05DO1NBbE5ZLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEludmVudG9yeVNlcnZpY2UsIFF1ZXJpZXNVdGlsLCBVc2VyU2VydmljZSwgSU1hbmFnZWRPYmplY3QsIElSZXN1bHQgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQge1xuICBBbGVydFNlcnZpY2UsXG4gIEJyZWFkY3J1bWJTZXJ2aWNlLFxuICBNb2RhbFNlcnZpY2UsXG4gIE5hdmlnYXRvck5vZGUsXG4gIEFwcFN0YXRlU2VydmljZVxufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IEFwaVNlcnZpY2UgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL2FwaSc7XG5pbXBvcnQgeyBlbXB0eSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtZXJnZU1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFzc2V0Tm9kZSB9IGZyb20gJy4vYXNzZXQtbm9kZSc7XG5pbXBvcnQgeyBBc3NldE5hdmlnYXRvckNvbmZpZywgQVNTRVRfTkFWSUdBVE9SX0NPTkZJRyB9IGZyb20gJy4vYXNzZXQtbm9kZS1jb25maWcubW9kZWwnO1xuaW1wb3J0IHsgRHluYW1pY0dyb3VwTm9kZSB9IGZyb20gJy4vZHluYW1pYy1ncm91cC1ub2RlJztcbmltcG9ydCB7IEdyb3VwRnJhZ21lbnQgfSBmcm9tICcuL2dyb3VwLWZyYWdtZW50Lm1vZGVsJztcbmltcG9ydCB7IERldmljZUdyb3VwU2VydmljZSB9IGZyb20gJy4vZ3JvdXAuc2VydmljZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXNzZXROb2RlTW8ge1xuICBpZDogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBc3NldE5vZGVTZXJ2aWNlIHtcbiAgcm9vdE5vZGU6IEFzc2V0Tm9kZTtcbiAgZmlyc3RVcmwgPSB0cnVlO1xuICBkcmFnZ2VkRGF0YTogQXNzZXROb2RlO1xuICBxdWVyaWVzVXRpbDogUXVlcmllc1V0aWw7XG4gIHByb3RlY3RlZCBQQUdFX1NJWkUgPSAyMDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaW52ZW50b3J5OiBJbnZlbnRvcnlTZXJ2aWNlLFxuICAgIHB1YmxpYyBncm91cHM6IERldmljZUdyb3VwU2VydmljZSxcbiAgICBwdWJsaWMgYXBpU2VydmljZTogQXBpU2VydmljZSxcbiAgICBwdWJsaWMgbW9kYWw6IE1vZGFsU2VydmljZSxcbiAgICBwdWJsaWMgYWxlcnQ6IEFsZXJ0U2VydmljZSxcbiAgICBwcm90ZWN0ZWQgYnJlYWRjcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCB1c2VyOiBVc2VyU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgYXBwU3RhdGU6IEFwcFN0YXRlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFTU0VUX05BVklHQVRPUl9DT05GSUcpIHB1YmxpYyBtb2R1bGVDb25maWc6IEFzc2V0TmF2aWdhdG9yQ29uZmlnXG4gICkge1xuICAgIHRoaXMubW9kdWxlQ29uZmlnID0ge1xuICAgICAgcm9vdE5vZGVQcmlvcml0eTogMjAwMCxcbiAgICAgIC4uLihtb2R1bGVDb25maWcgfHwge30pXG4gICAgfTtcbiAgICB0aGlzLnF1ZXJpZXNVdGlsID0gbmV3IFF1ZXJpZXNVdGlsKCk7XG4gIH1cblxuICBjcmVhdGVSb290Tm9kZSgpIHtcbiAgICB0aGlzLnJvb3ROb2RlID0gdGhpcy5jcmVhdGVBc3NldE5vZGUoe1xuICAgICAgcm9vdDogdHJ1ZSxcbiAgICAgIHByaW9yaXR5OiB0aGlzLm1vZHVsZUNvbmZpZy5yb290Tm9kZVByaW9yaXR5XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMucm9vdE5vZGU7XG4gIH1cblxuICBjcmVhdGVEeW5hbWljR3JvdXBOb2RlKGNvbmZpZykge1xuICAgIHJldHVybiBuZXcgRHluYW1pY0dyb3VwTm9kZSh0aGlzLCBjb25maWcpO1xuICB9XG5cbiAgY3JlYXRlQXNzZXROb2RlKGNvbmZpZykge1xuICAgIHJldHVybiBuZXcgQXNzZXROb2RlKHRoaXMsIGNvbmZpZyk7XG4gIH1cblxuICBjcmVhdGVDaGlsZE5vZGUobWFuYWdlZE9iamVjdCkge1xuICAgIGNvbnN0IHsgdHlwZSB9ID0gbWFuYWdlZE9iamVjdDtcbiAgICBjb25zdCBjb25maWc6IFBhcnRpYWw8QXNzZXROb2RlPiA9IHsgbW86IG1hbmFnZWRPYmplY3QgfTtcbiAgICBpZiAodHlwZSA9PT0gR3JvdXBGcmFnbWVudC5keW5hbWljR3JvdXBUeXBlKSB7XG4gICAgICByZXR1cm4gdGhpcy5jcmVhdGVEeW5hbWljR3JvdXBOb2RlKGNvbmZpZyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNyZWF0ZUFzc2V0Tm9kZShjb25maWcpO1xuICB9XG5cbiAgZ2V0Um9vdE5vZGVzKGN1c3RvbUZpbHRlcj86IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgZGVmYXVsdEZpbHRlciA9IHtcbiAgICAgIHBhZ2VTaXplOiB0aGlzLlBBR0VfU0laRSxcbiAgICAgIHdpdGhDaGlsZHJlbjogZmFsc2UsXG4gICAgICBxdWVyeTogdGhpcy5xdWVyaWVzVXRpbC5idWlsZFF1ZXJ5KHRoaXMubmF2Um9vdFF1ZXJ5RmlsdGVyKCkpXG4gICAgfTtcbiAgICBjb25zdCBncm91cEZpbHRlciA9IGN1c3RvbUZpbHRlciA/IGN1c3RvbUZpbHRlciA6IGRlZmF1bHRGaWx0ZXI7XG5cbiAgICAvLyBkdWUgdG8gQkUgcGVyZm9ybWFuY2UgbGltaXRhdGlvbnMgd2UgZG8gbm90IGFsbG93IGZpbHRlcmluZyBhbmQgc29ydGluZyBmb3IgYSB1c2VyIHdpdGhvdXQgaW52ZW50b3J5IHJvbGVzXG4gICAgaWYgKCF0aGlzLnVzZXIuaGFzUm9sZSh0aGlzLmFwcFN0YXRlLmN1cnJlbnRVc2VyLnZhbHVlLCAnUk9MRV9JTlZFTlRPUllfUkVBRCcpKSB7XG4gICAgICBkZWxldGUgZ3JvdXBGaWx0ZXIucXVlcnk7XG4gICAgICBPYmplY3QuYXNzaWduKGdyb3VwRmlsdGVyLCB7XG4gICAgICAgIGZyYWdtZW50VHlwZTogR3JvdXBGcmFnbWVudC5ncm91cEZyYWdtZW50VHlwZSxcbiAgICAgICAgb25seVJvb3RzOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaW52ZW50b3J5Lmxpc3QodGhpcy5jcmVhdGVGaWx0ZXIoZ3JvdXBGaWx0ZXIpKTtcbiAgfVxuXG4gIGdldEdyb3VwSXRlbXMobW9JZDogc3RyaW5nLCBleHRyYUZpbHRlcjogb2JqZWN0ID0ge30pIHtcbiAgICBjb25zdCBxdWVyeUZpbHRlciA9IHtcbiAgICAgIHdpdGhDaGlsZHJlbjogZmFsc2UsXG4gICAgICBwYWdlU2l6ZTogdGhpcy5QQUdFX1NJWkUsXG4gICAgICBxdWVyeTogdGhpcy5ncm91cFF1ZXJ5RmlsdGVyKG1vSWQpXG4gICAgfTtcbiAgICByZXR1cm4gdGhpcy5pbnZlbnRvcnkuY2hpbGRBc3NldHNMaXN0KG1vSWQsIHsgLi4ucXVlcnlGaWx0ZXIsIC4uLmV4dHJhRmlsdGVyIH0pO1xuICB9XG5cbiAgZ2V0RHluYW1pY0dyb3VwSXRlbXMoZ3JvdXBRdWVyeTogc3RyaW5nLCBmaWx0ZXJPYmo6IGFueSA9IHt9KSB7XG4gICAgY29uc3QgeyBxdWVyeSwgLi4ucXVlcnlQYXJhbXMgfSA9IGZpbHRlck9iajtcbiAgICBjb25zdCBvcmRlckJ5UXVlcnkgPSBxdWVyeTtcbiAgICBjb25zdCBxdWVyeUZpbHRlciA9IHtcbiAgICAgIHE6IHRoaXMuYnVpbGRDb21iaW5lZFF1ZXJ5KGdyb3VwUXVlcnksIG9yZGVyQnlRdWVyeSksXG4gICAgICAuLi5xdWVyeVBhcmFtc1xuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaW52ZW50b3J5Lmxpc3QodGhpcy5jcmVhdGVGaWx0ZXIocXVlcnlGaWx0ZXIpKTtcbiAgfVxuXG4gIGdldERldmljZUNoaWxkcmVuKG1vSWQ6IHN0cmluZywgZXh0cmFGaWx0ZXI6IG9iamVjdCA9IHt9KSB7XG4gICAgY29uc3QgcXVlcnlGaWx0ZXIgPSB7XG4gICAgICB3aXRoQ2hpbGRyZW46IGZhbHNlLFxuICAgICAgcGFnZVNpemU6IHRoaXMuUEFHRV9TSVpFLFxuICAgICAgcXVlcnk6IHRoaXMuZ3JvdXBRdWVyeUZpbHRlcihtb0lkKVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuaW52ZW50b3J5LmNoaWxkRGV2aWNlc0xpc3QobW9JZCwgeyAuLi5xdWVyeUZpbHRlciwgLi4uZXh0cmFGaWx0ZXIgfSk7XG4gIH1cblxuICBncm91cFF1ZXJ5RmlsdGVyKG1vSWQ6IHN0cmluZykge1xuICAgIHJldHVybiBgJGZpbHRlcj0oYnlncm91cGlkKCR7bW9JZH0pKSRvcmRlcmJ5PW5hbWVgO1xuICB9XG5cbiAgbmF2Um9vdFF1ZXJ5RmlsdGVyKCkge1xuICAgIGNvbnN0IG5hdlJvb3RGaWx0ZXIgPSB0aGlzLnJvb3RRdWVyeUZpbHRlcigpO1xuICAgIG5hdlJvb3RGaWx0ZXIuX19vcmRlcmJ5ID0gW3sgbmFtZTogMSB9XTtcbiAgICByZXR1cm4gbmF2Um9vdEZpbHRlcjtcbiAgfVxuXG4gIHJvb3RRdWVyeUZpbHRlcigpIHtcbiAgICBjb25zdCB7IG1vZHVsZUNvbmZpZyB9ID0gdGhpcztcbiAgICBjb25zdCByb290RmlsdGVyID0ge1xuICAgICAgX19maWx0ZXI6IHtcbiAgICAgICAgdHlwZTogYCR7R3JvdXBGcmFnbWVudC5ncm91cFR5cGV9YFxuICAgICAgfSxcbiAgICAgIF9fb3JkZXJieTogW11cbiAgICB9O1xuICAgIGlmIChtb2R1bGVDb25maWcuc21hcnRHcm91cHMpIHtcbiAgICAgIGNvbnN0IHF1ZXJ5RmlsdGVyID0ge1xuICAgICAgICBfX2ZpbHRlcjoge1xuICAgICAgICAgIF9fYW5kOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6IGAke0dyb3VwRnJhZ21lbnQuZHluYW1pY0dyb3VwVHlwZX1gXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBfX2hhczogYCR7R3JvdXBGcmFnbWVudC5keW5hbWljR3JvdXBGcmFnbWVudH1gXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBfX25vdDogeyBfX2hhczogYCR7R3JvdXBGcmFnbWVudC5keW5hbWljR3JvdXBGcmFnbWVudH0uaW52aXNpYmxlYCB9IH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICB0aGlzLnF1ZXJpZXNVdGlsLmFkZE9yRmlsdGVyKHJvb3RGaWx0ZXIsIHF1ZXJ5RmlsdGVyKTtcbiAgICB9XG4gICAgcmV0dXJuIHJvb3RGaWx0ZXI7XG4gIH1cblxuICBvblVwZGF0ZSh7IG1vLCByb290IH0pIHtcbiAgICBpZiAobW8uaWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2VcbiAgICAgICAgLmhvb2tSZXNwb25zZShcbiAgICAgICAgICAoeyB1cmwsIG1ldGhvZCB9KSA9PlxuICAgICAgICAgICAgWydQVVQnLCAnREVMRVRFJywgJ1BPU1QnXS5pbmNsdWRlcyhtZXRob2QpICYmXG4gICAgICAgICAgICBSZWdFeHAoYCgoaW52ZW50b3J5L21hbmFnZWRPYmplY3RzKXwoc2VydmljZS9zbWFydGdyb3VwL3NtYXJ0Z3JvdXBzKSkvJHttby5pZH1gKS50ZXN0KFxuICAgICAgICAgICAgICB1cmxcbiAgICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBmaWx0ZXIoKCkgPT4gIXRoaXMuZHJhZ2dlZERhdGEpLFxuICAgICAgICAgIG1lcmdlTWFwKHRoaXMuYXBpU2VydmljZS5yZXNvbHZlRGF0YSksXG4gICAgICAgICAgZmlsdGVyKHJlc3BvbnNlID0+ICFyZXNwb25zZS5kYXRhLmM4eV9EYXNoYm9hcmQpXG4gICAgICAgICk7XG4gICAgfSBlbHNlIGlmIChyb290KSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlXG4gICAgICAgIC5ob29rUmVzcG9uc2UoXG4gICAgICAgICAgKHsgdXJsLCBtZXRob2QgfSkgPT5cbiAgICAgICAgICAgIFJlZ0V4cCgnKChpbnZlbnRvcnkvbWFuYWdlZE9iamVjdHMpfChzZXJ2aWNlL3NtYXJ0Z3JvdXAvc21hcnRncm91cHMpKS8/JCcpLnRlc3QodXJsKSAmJlxuICAgICAgICAgICAgbWV0aG9kID09PSAnUE9TVCdcbiAgICAgICAgKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtZXJnZU1hcCh0aGlzLmFwaVNlcnZpY2UucmVzb2x2ZURhdGEpLFxuICAgICAgICAgIGZpbHRlcihyZXNwb25zZSA9PiB0aGlzLmlzTmV3TWFuYWdlZE9iamVjdFJvb3QocmVzcG9uc2UpKVxuICAgICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZW1wdHkoKTtcbiAgICB9XG4gIH1cblxuICBpc05ld01hbmFnZWRPYmplY3RSb290KHJlc3BvbnNlOiBQYXJ0aWFsPElSZXN1bHQ8SU1hbmFnZWRPYmplY3Q+PiA9IHt9KSB7XG4gICAgY29uc3QgeyBkYXRhIH0gPSByZXNwb25zZTtcbiAgICBsZXQgaXNSb290QXNzZXQgPSBmYWxzZTtcblxuICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGlzUm9vdEFzc2V0ID0gISFkYXRhW0dyb3VwRnJhZ21lbnQuZ3JvdXBGcmFnbWVudFR5cGVdO1xuICAgICAgaWYgKCFpc1Jvb3RBc3NldCAmJiB0aGlzLm1vZHVsZUNvbmZpZy5zbWFydEdyb3Vwcykge1xuICAgICAgICBpc1Jvb3RBc3NldCA9ICEhZGF0YVtHcm91cEZyYWdtZW50LmR5bmFtaWNHcm91cEZyYWdtZW50XTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGlzUm9vdEFzc2V0O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZXJlIGNvdWxkIGJlIG11bHRpcGxlIGJyZWFkY3J1bWJzIGZvciBkZXZpY2VzLFxuICAgKiBzbyB3ZSBzZXQgYSBwcmVmZXJyZWQgb25lIG9uIGNsaWNrIG9uIGEgZGV2aWNlLlxuICAgKiBAcGFyYW0gcGFyZW50cyBUaGUgcGFyZW50IG5vZGVzIG9mIHRoZSBkZXZpY2UgdG8gc2VsZWN0IHRoZSBwcmVmZXJlZCBvbmUuXG4gICAqL1xuICBwcmVmZXJCcmVhZGNydW1iKHBhcmVudHM6IE5hdmlnYXRvck5vZGVbXSkge1xuICAgIGlmIChwYXJlbnRzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5zZWxlY3RQcmVmZXJyZWRCeVBhdGgocGFyZW50c1swXS5wYXRoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlRmlsdGVyKGV4dHJhUGFyYW1zOiBhbnkgPSB7fSkge1xuICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgIGN1cnJlbnRQYWdlOiAxLFxuICAgICAgd2l0aFRvdGFsUGFnZXM6IHRydWUsXG4gICAgICBwYWdlU2l6ZTogMTBcbiAgICB9O1xuICAgIHJldHVybiB7IC4uLnBhcmFtcywgLi4uZXh0cmFQYXJhbXMgfTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRDb21iaW5lZFF1ZXJ5KHF1ZXJ5LCBvcmRlckJ5UXVlcnkpIHtcbiAgICBsZXQgY29tYmluZWRRdWVyeTtcbiAgICBpZiAocXVlcnkgJiYgb3JkZXJCeVF1ZXJ5KSB7XG4gICAgICBjb25zdCBmaWx0ZXJRdWVyeSA9IHRoaXMucXVlcmllc1V0aWwuYnVpbGRRdWVyeSh7XG4gICAgICAgIF9fdXNlRmlsdGVyUXVlcnlTdHJpbmc6IHF1ZXJ5XG4gICAgICB9KTtcbiAgICAgIGNvbWJpbmVkUXVlcnkgPSBgJHtmaWx0ZXJRdWVyeX0gJHtvcmRlckJ5UXVlcnl9YDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29tYmluZWRRdWVyeSA9IHF1ZXJ5IHx8IG9yZGVyQnlRdWVyeSB8fCAnJztcbiAgICB9XG4gICAgcmV0dXJuIGNvbWJpbmVkUXVlcnk7XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  import * as tslib_1 from "tslib";
2
2
  import { Component, Output, Input, EventEmitter, ViewChild } from '@angular/core';
3
3
  import { DropAreaComponent } from '../drop-area/drop-area.component';
4
+ import { isEmpty } from 'lodash-es';
4
5
  /**
5
6
  * User can upload a binary directly or use an URL.
6
7
  *
@@ -64,6 +65,12 @@ var FilePickerComponent = /** @class */ (function () {
64
65
  };
65
66
  this.onFilesPicked.emit(this.fileToSave);
66
67
  };
68
+ /**
69
+ * Checks if there is popover to display.
70
+ */
71
+ FilePickerComponent.prototype.isPopoverUsed = function () {
72
+ return !isEmpty(this.fileUrlPopover);
73
+ };
67
74
  tslib_1.__decorate([
68
75
  ViewChild(DropAreaComponent, { static: true })
69
76
  ], FilePickerComponent.prototype, "dropArea", void 0);
@@ -82,13 +89,16 @@ var FilePickerComponent = /** @class */ (function () {
82
89
  tslib_1.__decorate([
83
90
  Input()
84
91
  ], FilePickerComponent.prototype, "fileBinary", void 0);
92
+ tslib_1.__decorate([
93
+ Input()
94
+ ], FilePickerComponent.prototype, "fileUrlPopover", void 0);
85
95
  FilePickerComponent = tslib_1.__decorate([
86
96
  Component({
87
97
  selector: 'c8y-file-picker',
88
- template: "<div class=\"form-group\">\n <label title=\"{{ 'Upload a binary' | translate }}\" class=\"c8y-radio radio-inline\">\n <input\n #radio\n type=\"radio\"\n value=\"uploadBinary\"\n name=\"uploadChoice\"\n [(ngModel)]=\"uploadChoice\"\n (click)=\"clearInputFromUrl()\"\n />\n <span></span>\n <span>{{ 'Upload a binary' | translate }}</span>\n </label>\n <label title=\"{{ 'Use a URL' | translate }}\" class=\"c8y-radio radio-inline\">\n <input\n #radio\n type=\"radio\"\n value=\"uploadUrl\"\n name=\"uploadChoice\"\n [(ngModel)]=\"uploadChoice\"\n (click)=\"clearSelectedFiles()\"\n />\n <span></span>\n <span>{{ 'Use a URL' | translate }}</span>\n </label>\n</div>\n\n<div [hidden]=\"uploadChoice !== 'uploadBinary'\">\n <c8y-form-group class=\"m-0\">\n <c8y-drop-area\n class=\"drop-area-sm\"\n (dropped)=\"onFileDropped($event)\"\n [title]=\"'Drop file or click to browse' | translate\"\n [maxAllowedFiles]=\"maxAllowedFiles\"\n [files]=\"droppedFiles\"\n >\n </c8y-drop-area>\n </c8y-form-group>\n</div>\n\n<div [hidden]=\"uploadChoice !== 'uploadUrl'\">\n <c8y-form-group class=\"m-0\">\n <div class=\"m-b-4 p-b-8\">\n <div class=\"input-group\">\n <span class=\"input-group-addon\">\n <i c8yIcon=\"globe\"></i>\n </span>\n <input\n type=\"text\"\n class=\"form-control\"\n name=\"fileUrl\"\n [(ngModel)]=\"fileUrl\"\n (ngModelChange)=\"onFileUrlChange($event)\"\n placeholder=\"{{ 'e.g.' | translate }} http://example.com/binary.zip\"\n required\n />\n </div>\n </div>\n </c8y-form-group>\n</div>\n"
98
+ template: "<div class=\"form-group\">\n <label title=\"{{ 'Upload a binary' | translate }}\" class=\"c8y-radio radio-inline\">\n <input\n #radio\n type=\"radio\"\n value=\"uploadBinary\"\n name=\"uploadChoice\"\n [(ngModel)]=\"uploadChoice\"\n (click)=\"clearInputFromUrl()\"\n />\n <span></span>\n <span>{{ 'Upload a binary' | translate }}</span>\n </label>\n <label title=\"{{ 'Provide a file path' | translate }}\" class=\"c8y-radio radio-inline m-l-8\">\n <input\n #radio\n type=\"radio\"\n value=\"uploadUrl\"\n name=\"uploadChoice\"\n [(ngModel)]=\"uploadChoice\"\n (click)=\"clearSelectedFiles()\"\n />\n <span></span>\n <span>\n {{ 'Provide a file path' | translate }}\n </span>\n <button\n *ngIf=\"isPopoverUsed()\"\n class=\"btn btn-clean text-primary m-l-4\"\n type=\"button\"\n popover=\"{{ fileUrlPopover | translate }}\"\n triggers=\"focus\"\n container=\"body\"\n placement=\"top\"\n >\n <i [c8yIcon]=\"'question-circle-o'\"></i>\n </button>\n </label>\n</div>\n\n<div [hidden]=\"uploadChoice !== 'uploadBinary'\">\n <c8y-form-group class=\"m-0\">\n <c8y-drop-area\n class=\"drop-area-sm\"\n (dropped)=\"onFileDropped($event)\"\n [title]=\"'Drop file or click to browse' | translate\"\n [maxAllowedFiles]=\"maxAllowedFiles\"\n [files]=\"droppedFiles\"\n >\n </c8y-drop-area>\n </c8y-form-group>\n</div>\n\n<div [hidden]=\"uploadChoice !== 'uploadUrl'\">\n <c8y-form-group class=\"m-0\">\n <div class=\"m-b-4 p-b-8\">\n <div class=\"input-group\">\n <span class=\"input-group-addon\">\n <i c8yIcon=\"globe\"></i>\n </span>\n <input\n type=\"text\"\n class=\"form-control\"\n name=\"fileUrl\"\n [(ngModel)]=\"fileUrl\"\n (ngModelChange)=\"onFileUrlChange($event)\"\n placeholder=\"{{ 'e.g.' | translate }} http://example.com/binary.zip\"\n required\n />\n </div>\n </div>\n </c8y-form-group>\n</div>\n"
89
99
  })
90
100
  ], FilePickerComponent);
91
101
  return FilePickerComponent;
92
102
  }());
93
103
  export { FilePickerComponent };
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvZmlsZS1waWNrZXIvZmlsZS1waWNrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQWUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUdsRjs7Ozs7Ozs7Ozs7R0FXRztBQU1IO0lBSkE7UUFNWSxrQkFBYSxHQUE4QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQy9ELG9CQUFlLEdBQVcsUUFBUSxDQUFDO1FBQ25DLGlCQUFZLEdBQWlDLGNBQWMsQ0FBQztJQXdEdkUsQ0FBQztJQWpEQzs7T0FFRztJQUNILHNDQUFRLEdBQVI7UUFDRSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2QztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILDJDQUFhLEdBQWIsVUFBYyxZQUEyQjtRQUN2QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztZQUN0QixZQUFZLGNBQUE7U0FDYixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCwrQ0FBaUIsR0FBakI7UUFDRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRztZQUNoQixHQUFHLEVBQUUsU0FBUztTQUNmLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZ0RBQWtCLEdBQWxCO1FBQ0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHO1lBQ2hCLFlBQVksRUFBRSxTQUFTO1NBQ3hCLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsNkNBQWUsR0FBZixVQUFnQixNQUFNO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUc7WUFDaEIsR0FBRyxFQUFFLE1BQU07U0FDWixDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUExRCtDO1FBQS9DLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQzt5REFBNkI7SUFDbEU7UUFBVCxNQUFNLEVBQUU7OERBQStEO0lBQy9EO1FBQVIsS0FBSyxFQUFFO2dFQUFvQztJQUNuQztRQUFSLEtBQUssRUFBRTs2REFBNkQ7SUFDNUQ7UUFBUixLQUFLLEVBQUU7d0RBQWlCO0lBQ2hCO1FBQVIsS0FBSyxFQUFFOzJEQUF5QjtJQU50QixtQkFBbUI7UUFKL0IsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQiwydERBQTJDO1NBQzVDLENBQUM7T0FDVyxtQkFBbUIsQ0E0RC9CO0lBQUQsMEJBQUM7Q0FBQSxBQTVERCxJQTREQztTQTVEWSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE91dHB1dCwgSW5wdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERyb3BwZWRGaWxlLCBEcm9wQXJlYUNvbXBvbmVudCB9IGZyb20gJy4uL2Ryb3AtYXJlYS9kcm9wLWFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IFBpY2tlZEZpbGVzIH0gZnJvbSAnLi9maWxlLXBpY2tlci5tb2RlbCc7XG5cbi8qKlxuICogVXNlciBjYW4gdXBsb2FkIGEgYmluYXJ5IGRpcmVjdGx5IG9yIHVzZSBhbiBVUkwuXG4gKlxuICogIyMgVXNhZ2UgRXhhbXBsZTpcbiAqXG4gKiBgYGBodG1sXG4gKiA8ZGl2PlxuICogPGM4eS1maWxlLXBpY2tlciBbbWF4QWxsb3dlZEZpbGVzXT1cIjFcIiAob25GaWxlc1BpY2tlZCk9XCJvbkZpbGUoJGV2ZW50KVwiPlxuICogPC9jOHktZmlsZS1waWNrZXI+XG4gKiA8L2Rpdj5cbiAqIGBgYFxuICovXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1maWxlLXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXBpY2tlci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRmlsZVBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGQoRHJvcEFyZWFDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIGRyb3BBcmVhOiBEcm9wQXJlYUNvbXBvbmVudDtcbiAgQE91dHB1dCgpIG9uRmlsZXNQaWNrZWQ6IEV2ZW50RW1pdHRlcjxQaWNrZWRGaWxlcz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIG1heEFsbG93ZWRGaWxlczogbnVtYmVyID0gSW5maW5pdHk7XG4gIEBJbnB1dCgpIHVwbG9hZENob2ljZTogJ3VwbG9hZEJpbmFyeScgfCAndXBsb2FkVXJsJyA9ICd1cGxvYWRCaW5hcnknO1xuICBASW5wdXQoKSBmaWxlVXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGZpbGVCaW5hcnk6IERyb3BwZWRGaWxlO1xuXG4gIGRyb3BwZWRGaWxlczogRHJvcHBlZEZpbGVbXTtcbiAgcHJpdmF0ZSBmaWxlVG9TYXZlOiBQaWNrZWRGaWxlcztcblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZmlsZUJpbmFyeSkge1xuICAgICAgdGhpcy5kcm9wcGVkRmlsZXMgPSBbdGhpcy5maWxlQmluYXJ5XTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcmVkIGJ5IGRyb3BwZWQgZmlsZSBpbiBjb21wb25lbnQgYW5kIHBhc3MgaXQgaW50byBkcm9wLWFyZWEgY29tcG9uZW50LlxuICAgKi9cbiAgb25GaWxlRHJvcHBlZChkcm9wcGVkRmlsZXM6IERyb3BwZWRGaWxlW10pOiB2b2lkIHtcbiAgICB0aGlzLm9uRmlsZXNQaWNrZWQuZW1pdCh7XG4gICAgICBkcm9wcGVkRmlsZXNcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmlnZ2VyZWQgd2hlbiB1c2VyIGNoYW5nZXMgdXBsb2FkIGNob2ljZSwgZnJvbSB1cGxvYWQgdXJsIHRvIHVwbG9hZCBiaW5hcnkuXG4gICAqL1xuICBjbGVhcklucHV0RnJvbVVybCgpOiB2b2lkIHtcbiAgICBkZWxldGUgdGhpcy5maWxlVXJsO1xuICAgIHRoaXMuZmlsZVRvU2F2ZSA9IHtcbiAgICAgIHVybDogdW5kZWZpbmVkXG4gICAgfTtcbiAgICB0aGlzLm9uRmlsZXNQaWNrZWQuZW1pdCh0aGlzLmZpbGVUb1NhdmUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyaWdnZXJlZCB3aGVuIHVzZXIgY2hhbmdlcyB1cGxvYWQgY2hvaWNlLCB0byBhdm9pZCBjdW11bGF0aW9uIG9mIGRyb3BwZWRGaWxlcy5cbiAgICovXG4gIGNsZWFyU2VsZWN0ZWRGaWxlcygpOiB2b2lkIHtcbiAgICB0aGlzLmRyb3BBcmVhLm9uRGVsZXRlKCk7XG4gICAgdGhpcy5maWxlVG9TYXZlID0ge1xuICAgICAgZHJvcHBlZEZpbGVzOiB1bmRlZmluZWRcbiAgICB9O1xuICAgIHRoaXMub25GaWxlc1BpY2tlZC5lbWl0KHRoaXMuZmlsZVRvU2F2ZSk7XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcmVkIHdoZW4gdXNlciBwdXRzIGJpbmFyeSdzIHVybCB0byB1cGxvYWQuXG4gICAqL1xuICBvbkZpbGVVcmxDaGFuZ2UodXJsU3RyKTogdm9pZCB7XG4gICAgdGhpcy5maWxlVG9TYXZlID0ge1xuICAgICAgdXJsOiB1cmxTdHJcbiAgICB9O1xuICAgIHRoaXMub25GaWxlc1BpY2tlZC5lbWl0KHRoaXMuZmlsZVRvU2F2ZSk7XG4gIH1cbn1cbiJdfQ==
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvZmlsZS1waWNrZXIvZmlsZS1waWNrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQWUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVsRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDOzs7Ozs7Ozs7OztHQVdHO0FBTUg7SUFKQTtRQU1ZLGtCQUFhLEdBQThCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDL0Qsb0JBQWUsR0FBVyxRQUFRLENBQUM7UUFDbkMsaUJBQVksR0FBaUMsY0FBYyxDQUFDO0lBbUV2RSxDQUFDO0lBeERDOztPQUVHO0lBQ0gsc0NBQVEsR0FBUjtRQUNFLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsMkNBQWEsR0FBYixVQUFjLFlBQTJCO1FBQ3ZDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1lBQ3RCLFlBQVksY0FBQTtTQUNiLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILCtDQUFpQixHQUFqQjtRQUNFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHO1lBQ2hCLEdBQUcsRUFBRSxTQUFTO1NBQ2YsQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxnREFBa0IsR0FBbEI7UUFDRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUc7WUFDaEIsWUFBWSxFQUFFLFNBQVM7U0FDeEIsQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCw2Q0FBZSxHQUFmLFVBQWdCLE1BQU07UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRztZQUNoQixHQUFHLEVBQUUsTUFBTTtTQUNaLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsMkNBQWEsR0FBYjtRQUNFLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFyRStDO1FBQS9DLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQzt5REFBNkI7SUFDbEU7UUFBVCxNQUFNLEVBQUU7OERBQStEO0lBQy9EO1FBQVIsS0FBSyxFQUFFO2dFQUFvQztJQUNuQztRQUFSLEtBQUssRUFBRTs2REFBNkQ7SUFDNUQ7UUFBUixLQUFLLEVBQUU7d0RBQWlCO0lBQ2hCO1FBQVIsS0FBSyxFQUFFOzJEQUF5QjtJQUl4QjtRQUFSLEtBQUssRUFBRTsrREFBd0I7SUFWckIsbUJBQW1CO1FBSi9CLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxpQkFBaUI7WUFDM0Isa2tFQUEyQztTQUM1QyxDQUFDO09BQ1csbUJBQW1CLENBdUUvQjtJQUFELDBCQUFDO0NBQUEsQUF2RUQsSUF1RUM7U0F2RVksbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPdXRwdXQsIElucHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEcm9wcGVkRmlsZSwgRHJvcEFyZWFDb21wb25lbnQgfSBmcm9tICcuLi9kcm9wLWFyZWEvZHJvcC1hcmVhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQaWNrZWRGaWxlcyB9IGZyb20gJy4vZmlsZS1waWNrZXIubW9kZWwnO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbi8qKlxuICogVXNlciBjYW4gdXBsb2FkIGEgYmluYXJ5IGRpcmVjdGx5IG9yIHVzZSBhbiBVUkwuXG4gKlxuICogIyMgVXNhZ2UgRXhhbXBsZTpcbiAqXG4gKiBgYGBodG1sXG4gKiA8ZGl2PlxuICogPGM4eS1maWxlLXBpY2tlciBbbWF4QWxsb3dlZEZpbGVzXT1cIjFcIiAob25GaWxlc1BpY2tlZCk9XCJvbkZpbGUoJGV2ZW50KVwiPlxuICogPC9jOHktZmlsZS1waWNrZXI+XG4gKiA8L2Rpdj5cbiAqIGBgYFxuICovXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1maWxlLXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLXBpY2tlci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRmlsZVBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGQoRHJvcEFyZWFDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIGRyb3BBcmVhOiBEcm9wQXJlYUNvbXBvbmVudDtcbiAgQE91dHB1dCgpIG9uRmlsZXNQaWNrZWQ6IEV2ZW50RW1pdHRlcjxQaWNrZWRGaWxlcz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIG1heEFsbG93ZWRGaWxlczogbnVtYmVyID0gSW5maW5pdHk7XG4gIEBJbnB1dCgpIHVwbG9hZENob2ljZTogJ3VwbG9hZEJpbmFyeScgfCAndXBsb2FkVXJsJyA9ICd1cGxvYWRCaW5hcnknO1xuICBASW5wdXQoKSBmaWxlVXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGZpbGVCaW5hcnk6IERyb3BwZWRGaWxlO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBzdHJpbmcgdG8gYmUgZGlzcGxheWVkIGluIGEgcG9wb3Zlci5cbiAgICovXG4gIEBJbnB1dCgpIGZpbGVVcmxQb3BvdmVyOiBzdHJpbmc7XG5cbiAgZHJvcHBlZEZpbGVzOiBEcm9wcGVkRmlsZVtdO1xuICBwcml2YXRlIGZpbGVUb1NhdmU6IFBpY2tlZEZpbGVzO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5maWxlQmluYXJ5KSB7XG4gICAgICB0aGlzLmRyb3BwZWRGaWxlcyA9IFt0aGlzLmZpbGVCaW5hcnldO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUcmlnZ2VyZWQgYnkgZHJvcHBlZCBmaWxlIGluIGNvbXBvbmVudCBhbmQgcGFzcyBpdCBpbnRvIGRyb3AtYXJlYSBjb21wb25lbnQuXG4gICAqL1xuICBvbkZpbGVEcm9wcGVkKGRyb3BwZWRGaWxlczogRHJvcHBlZEZpbGVbXSk6IHZvaWQge1xuICAgIHRoaXMub25GaWxlc1BpY2tlZC5lbWl0KHtcbiAgICAgIGRyb3BwZWRGaWxlc1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyaWdnZXJlZCB3aGVuIHVzZXIgY2hhbmdlcyB1cGxvYWQgY2hvaWNlLCBmcm9tIHVwbG9hZCB1cmwgdG8gdXBsb2FkIGJpbmFyeS5cbiAgICovXG4gIGNsZWFySW5wdXRGcm9tVXJsKCk6IHZvaWQge1xuICAgIGRlbGV0ZSB0aGlzLmZpbGVVcmw7XG4gICAgdGhpcy5maWxlVG9TYXZlID0ge1xuICAgICAgdXJsOiB1bmRlZmluZWRcbiAgICB9O1xuICAgIHRoaXMub25GaWxlc1BpY2tlZC5lbWl0KHRoaXMuZmlsZVRvU2F2ZSk7XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcmVkIHdoZW4gdXNlciBjaGFuZ2VzIHVwbG9hZCBjaG9pY2UsIHRvIGF2b2lkIGN1bXVsYXRpb24gb2YgZHJvcHBlZEZpbGVzLlxuICAgKi9cbiAgY2xlYXJTZWxlY3RlZEZpbGVzKCk6IHZvaWQge1xuICAgIHRoaXMuZHJvcEFyZWEub25EZWxldGUoKTtcbiAgICB0aGlzLmZpbGVUb1NhdmUgPSB7XG4gICAgICBkcm9wcGVkRmlsZXM6IHVuZGVmaW5lZFxuICAgIH07XG4gICAgdGhpcy5vbkZpbGVzUGlja2VkLmVtaXQodGhpcy5maWxlVG9TYXZlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmlnZ2VyZWQgd2hlbiB1c2VyIHB1dHMgYmluYXJ5J3MgdXJsIHRvIHVwbG9hZC5cbiAgICovXG4gIG9uRmlsZVVybENoYW5nZSh1cmxTdHIpOiB2b2lkIHtcbiAgICB0aGlzLmZpbGVUb1NhdmUgPSB7XG4gICAgICB1cmw6IHVybFN0clxuICAgIH07XG4gICAgdGhpcy5vbkZpbGVzUGlja2VkLmVtaXQodGhpcy5maWxlVG9TYXZlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlcmUgaXMgcG9wb3ZlciB0byBkaXNwbGF5LlxuICAgKi9cbiAgaXNQb3BvdmVyVXNlZCgpIHtcbiAgICByZXR1cm4gIWlzRW1wdHkodGhpcy5maWxlVXJsUG9wb3Zlcik7XG4gIH1cbn1cbiJdfQ==
@@ -6,6 +6,7 @@ import { DropAreaModule } from '../drop-area/drop-area.module';
6
6
  import { FormsModule } from '@angular/forms';
7
7
  import { CommonModule } from '@angular/common';
8
8
  import { FormsModule as C8yFormsModule } from '../forms/forms.module';
9
+ import { PopoverModule } from 'ngx-bootstrap/popover';
9
10
  /**
10
11
  * The angular module definition for a drop-area.
11
12
  * @exports FilePickerComponent
@@ -20,17 +21,14 @@ var FilePickerModule = /** @class */ (function () {
20
21
  CommonModule,
21
22
  DropAreaModule,
22
23
  FormsModule,
23
- C8yCommonModule
24
+ C8yCommonModule,
25
+ PopoverModule
24
26
  ],
25
- exports: [
26
- FilePickerComponent,
27
- ],
28
- declarations: [
29
- FilePickerComponent,
30
- ]
27
+ exports: [FilePickerComponent],
28
+ declarations: [FilePickerComponent]
31
29
  })
32
30
  ], FilePickerModule);
33
31
  return FilePickerModule;
34
32
  }());
35
33
  export { FilePickerModule };
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1waWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvZmlsZS1waWNrZXIvZmlsZS1waWNrZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLElBQUksZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsSUFBSSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV0RTs7O0dBR0c7QUFnQkg7SUFBQTtJQUFnQyxDQUFDO0lBQXBCLGdCQUFnQjtRQWY1QixRQUFRLENBQUM7WUFDUixPQUFPLEVBQUU7Z0JBQ1AsY0FBYztnQkFDZCxZQUFZO2dCQUNaLGNBQWM7Z0JBQ2QsV0FBVztnQkFDWCxlQUFlO2FBQ2hCO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLG1CQUFtQjthQUNwQjtZQUNELFlBQVksRUFBRTtnQkFDWixtQkFBbUI7YUFDcEI7U0FDRixDQUFDO09BQ1csZ0JBQWdCLENBQUk7SUFBRCx1QkFBQztDQUFBLEFBQWpDLElBQWlDO1NBQXBCLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgYXMgQzh5Q29tbW9uTW9kdWxlIH0gZnJvbSAnLi4vY29tbW9uL2NvbW1vbi5tb2R1bGUnO1xuaW1wb3J0IHsgRmlsZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vZmlsZS1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IERyb3BBcmVhTW9kdWxlIH0gZnJvbSAnLi4vZHJvcC1hcmVhL2Ryb3AtYXJlYS5tb2R1bGUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgYXMgQzh5Rm9ybXNNb2R1bGUgfSBmcm9tICcuLi9mb3Jtcy9mb3Jtcy5tb2R1bGUnO1xuXG4vKipcbiAqIFRoZSBhbmd1bGFyIG1vZHVsZSBkZWZpbml0aW9uIGZvciBhIGRyb3AtYXJlYS5cbiAqIEBleHBvcnRzIEZpbGVQaWNrZXJDb21wb25lbnRcbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEM4eUZvcm1zTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBEcm9wQXJlYU1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBDOHlDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZpbGVQaWNrZXJDb21wb25lbnQsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZpbGVQaWNrZXJDb21wb25lbnQsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRmlsZVBpY2tlck1vZHVsZSB7IH1cbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1waWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy8iLCJzb3VyY2VzIjpbImNvcmUvZmlsZS1waWNrZXIvZmlsZS1waWNrZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLElBQUksZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsSUFBSSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEQ7OztHQUdHO0FBYUg7SUFBQTtJQUErQixDQUFDO0lBQW5CLGdCQUFnQjtRQVo1QixRQUFRLENBQUM7WUFDUixPQUFPLEVBQUU7Z0JBQ1AsY0FBYztnQkFDZCxZQUFZO2dCQUNaLGNBQWM7Z0JBQ2QsV0FBVztnQkFDWCxlQUFlO2dCQUNmLGFBQWE7YUFDZDtZQUNELE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO1lBQzlCLFlBQVksRUFBRSxDQUFDLG1CQUFtQixDQUFDO1NBQ3BDLENBQUM7T0FDVyxnQkFBZ0IsQ0FBRztJQUFELHVCQUFDO0NBQUEsQUFBaEMsSUFBZ0M7U0FBbkIsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSBhcyBDOHlDb21tb25Nb2R1bGUgfSBmcm9tICcuLi9jb21tb24vY29tbW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBGaWxlUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9maWxlLXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHJvcEFyZWFNb2R1bGUgfSBmcm9tICcuLi9kcm9wLWFyZWEvZHJvcC1hcmVhLm1vZHVsZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSBhcyBDOHlGb3Jtc01vZHVsZSB9IGZyb20gJy4uL2Zvcm1zL2Zvcm1zLm1vZHVsZSc7XG5pbXBvcnQgeyBQb3BvdmVyTW9kdWxlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9wb3BvdmVyJztcblxuLyoqXG4gKiBUaGUgYW5ndWxhciBtb2R1bGUgZGVmaW5pdGlvbiBmb3IgYSBkcm9wLWFyZWEuXG4gKiBAZXhwb3J0cyBGaWxlUGlja2VyQ29tcG9uZW50XG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDOHlGb3Jtc01vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRHJvcEFyZWFNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgQzh5Q29tbW9uTW9kdWxlLFxuICAgIFBvcG92ZXJNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW0ZpbGVQaWNrZXJDb21wb25lbnRdLFxuICBkZWNsYXJhdGlvbnM6IFtGaWxlUGlja2VyQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlUGlja2VyTW9kdWxlIHt9XG4iXX0=
@@ -21,6 +21,7 @@ var ConfigurationDetailComponent = /** @class */ (function () {
21
21
  this.mo = {};
22
22
  this.saving = false;
23
23
  this.uploadChoice = 'uploadBinary';
24
+ this.textForConfigurationUrlPopover = gettext("Path for binaries can vary depending on device agent implementation, e.g.:\n /configuration/binaries/configuration1.bin\n https://configuration/binary/123\n ftp://configuration/binary/123.tar.gz\n ");
24
25
  this.result = new Promise(function (resolve, reject) {
25
26
  _this._save = resolve;
26
27
  _this._cancel = reject;
@@ -126,10 +127,10 @@ var ConfigurationDetailComponent = /** @class */ (function () {
126
127
  ConfigurationDetailComponent = tslib_1.__decorate([
127
128
  Component({
128
129
  selector: 'c8y-configuration-detail',
129
- template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'cogs'\"></i>\n <h4 translate *ngIf=\"mo.id\">Update configuration</h4>\n <h4 translate *ngIf=\"!mo.id\">Add configuration</h4>\n </div>\n\n <form class=\"d-contents\" #configurationForm=\"ngForm\" (ngSubmit)=\"configurationForm.form.valid && save()\">\n <div class=\"modal-inner-scroll\">\n <div class=\"modal-body\">\n <c8y-form-group>\n <label translate>Name</label>\n <input\n type=\"text\"\n class=\"form-control\"\n placeholder=\"{{ 'e.g.' | translate }} hosts\"\n autocomplete=\"off\"\n required\n maxlength=\"254\"\n [(ngModel)]=\"version\"\n name=\"version\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Device type</label>\n <input\n type=\"text\"\n class=\"form-control\"\n placeholder=\"{{ 'e.g.' | translate }} c8y_Linux\"\n maxlength=\"254\"\n autocomplete=\"off\"\n [(ngModel)]=\"deviceType\"\n name=\"deviceType\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Description</label>\n <input\n type=\"text\"\n class=\"form-control\"\n placeholder=\"{{ 'e.g. Host configuration' | translate }} c8y_Linux\"\n maxlength=\"254\"\n autocomplete=\"off\"\n [(ngModel)]=\"description\"\n name=\"description\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Configuration type</label>\n <c8y-typeahead\n [(ngModel)]=\"selected\"\n name=\"confType\"\n placeholder=\"{{ 'e.g.' | translate }} ssh\"\n (onSearch)=\"setPipe($event)\"\n displayProperty=\"configurationType\"\n >\n <c8y-li\n *c8yFor=\"let config of configs; pipe: filterPipe; notFound: notFoundTemplate\"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"selected = config; setPipe('')\"\n [active]=\"selected === config\"\n >\n <c8y-highlight\n [text]=\"config.configurationType || '--'\"\n [pattern]=\"pattern\"\n ></c8y-highlight>\n </c8y-li>\n <ng-template #notFoundTemplate>\n <c8y-li class=\"bg-gray-lighter p-8\" *ngIf=\"pattern.length > 0\">\n <span translate>No match found, add new`configuration`?</span>\n <button title=\"Create new`configuration`\" type=\"button\" class=\"btn btn-primary btn-xs m-l-16\" translate>\n Create new`configuration`\n </button>\n </c8y-li>\n </ng-template>\n </c8y-typeahead>\n </c8y-form-group>\n\n <c8y-form-group>\n <div class=\"legend form-block m-t-40\" translate>Configuration file</div>\n <c8y-file-picker\n [maxAllowedFiles]=\"1\"\n (onFilesPicked)=\"onFile($event)\"\n [uploadChoice]=\"uploadChoice\"\n [fileUrl]=\"binary.url\"\n [fileBinary]=\"binary.file\"\n >\n </c8y-file-picker>\n </c8y-form-group>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button\n (click)=\"cancel()\"\n type=\"button\"\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n [disabled]=\"saving\"\n >\n <span translate>Cancel</span>\n </button>\n <button\n class=\"btn btn-primary\"\n type=\"submit\"\n title=\"{{ submitButtonTitle | translate }}\"\n [ngClass]=\"{ 'btn-pending': saving }\"\n [disabled]=\"\n !configurationForm.valid ||\n configurationForm.pristine ||\n (!binary?.url && !binary?.file) ||\n saving\n \"\n >\n {{ submitButtonTitle | translate }}\n </button>\n </div>\n </form>\n</div>\n"
130
+ template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'cogs'\"></i>\n <h4 translate *ngIf=\"mo.id\">Update configuration</h4>\n <h4 translate *ngIf=\"!mo.id\">Add configuration</h4>\n </div>\n\n <form class=\"d-contents\" #configurationForm=\"ngForm\" (ngSubmit)=\"configurationForm.form.valid && save()\">\n <div class=\"modal-inner-scroll\">\n <div class=\"modal-body\">\n <c8y-form-group>\n <label translate>Name</label>\n <input\n type=\"text\"\n class=\"form-control\"\n placeholder=\"{{ 'e.g.' | translate }} hosts\"\n autocomplete=\"off\"\n required\n maxlength=\"254\"\n [(ngModel)]=\"version\"\n name=\"version\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Device type</label>\n <input\n type=\"text\"\n class=\"form-control\"\n placeholder=\"{{ 'e.g.' | translate }} c8y_Linux\"\n maxlength=\"254\"\n autocomplete=\"off\"\n [(ngModel)]=\"deviceType\"\n name=\"deviceType\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Description</label>\n <input\n type=\"text\"\n class=\"form-control\"\n placeholder=\"{{ 'e.g. Host configuration' | translate }} c8y_Linux\"\n maxlength=\"254\"\n autocomplete=\"off\"\n [(ngModel)]=\"description\"\n name=\"description\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label translate>Configuration type</label>\n <c8y-typeahead\n [(ngModel)]=\"selected\"\n name=\"confType\"\n placeholder=\"{{ 'e.g.' | translate }} ssh\"\n (onSearch)=\"setPipe($event)\"\n displayProperty=\"configurationType\"\n >\n <c8y-li\n *c8yFor=\"let config of configs; pipe: filterPipe; notFound: notFoundTemplate\"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"selected = config; setPipe('')\"\n [active]=\"selected === config\"\n >\n <c8y-highlight\n [text]=\"config.configurationType || '--'\"\n [pattern]=\"pattern\"\n ></c8y-highlight>\n </c8y-li>\n <ng-template #notFoundTemplate>\n <c8y-li class=\"bg-gray-lighter p-8\" *ngIf=\"pattern.length > 0\">\n <span translate>No match found, add new`configuration`?</span>\n <button title=\"Create new`configuration`\" type=\"button\" class=\"btn btn-primary btn-xs m-l-16\" translate>\n Create new`configuration`\n </button>\n </c8y-li>\n </ng-template>\n </c8y-typeahead>\n </c8y-form-group>\n\n <c8y-form-group>\n <div class=\"legend form-block m-t-40\" translate>Configuration file</div>\n <c8y-file-picker\n [maxAllowedFiles]=\"1\"\n (onFilesPicked)=\"onFile($event)\"\n [uploadChoice]=\"uploadChoice\"\n [fileUrl]=\"binary.url\"\n [fileBinary]=\"binary.file\"\n [fileUrlPopover]=\"textForConfigurationUrlPopover\"\n >\n </c8y-file-picker>\n </c8y-form-group>\n </div>\n </div>\n\n <div class=\"modal-footer\">\n <button\n (click)=\"cancel()\"\n type=\"button\"\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n [disabled]=\"saving\"\n >\n <span translate>Cancel</span>\n </button>\n <button\n class=\"btn btn-primary\"\n type=\"submit\"\n title=\"{{ submitButtonTitle | translate }}\"\n [ngClass]=\"{ 'btn-pending': saving }\"\n [disabled]=\"\n !configurationForm.valid ||\n configurationForm.pristine ||\n (!binary?.url && !binary?.file) ||\n saving\n \"\n >\n {{ submitButtonTitle | translate }}\n </button>\n </div>\n </form>\n</div>\n"
130
131
  })
131
132
  ], ConfigurationDetailComponent);
132
133
  return ConfigurationDetailComponent;
133
134
  }());
134
135
  export { ConfigurationDetailComponent };
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1kZXRhaWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy9yZXBvc2l0b3J5LyIsInNvdXJjZXMiOlsiY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLWRldGFpbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUIsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBYyxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQVExRDtJQTRCRSxzQ0FDVSxpQkFBb0MsRUFDcEMsVUFBc0IsRUFDdEIsS0FBbUI7UUFIN0IsaUJBSUk7UUFITSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsVUFBSyxHQUFMLEtBQUssQ0FBYztRQTFCN0IsV0FBTSxHQUFrQztZQUN0QyxJQUFJLEVBQUUsU0FBUztZQUNmLEdBQUcsRUFBRSxTQUFTO1NBQ2YsQ0FBQztRQUdGLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFHckIsT0FBRSxHQUE0QixFQUFFLENBQUM7UUFDakMsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLGlCQUFZLEdBQWlDLGNBQWMsQ0FBQztRQUk1RCxXQUFNLEdBQWtCLElB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LElBNkdDO1NBN0dZLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJTWFuYWdlZE9iamVjdCB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IEFsZXJ0U2VydmljZSwgZ2V0dGV4dCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgdW5pcUJ5LCBpc1VuZGVmaW5lZCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCc01vZGFsUmVmIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBwaXBlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNb2RhbE1vZGVsLCBSZXBvc2l0b3J5VHlwZSB9IGZyb20gJy4uL3JlcG9zaXRvcnkubW9kZWwnO1xuaW1wb3J0IHsgUmVwb3NpdG9yeVNlcnZpY2UgfSBmcm9tICcuLi9yZXBvc2l0b3J5LnNlcnZpY2UnO1xuaW1wb3J0IHsgUGlja2VkRmlsZXMgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LWNvbmZpZ3VyYXRpb24tZGV0YWlsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbmZpZ3VyYXRpb24tZGV0YWlsLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uRGV0YWlsQ29tcG9uZW50IGltcGxlbWVudHMgTW9kYWxNb2RlbCB7XG4gIEBWaWV3Q2hpbGQoJ2NvbmZpZ3VyYXRpb25Gb3JtJywgeyBzdGF0aWM6IHRydWUgfSkgY29uZmlndXJhdGlvbkZvcm06IE5nRm9ybTtcbiAgc2VsZWN0ZWQ6IHsgaWQ6IHN0cmluZzsgbmFtZTogc3RyaW5nIH07XG4gIHZlcnNpb246IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgYmluYXJ5OiB7IGZpbGU/OiBGaWxlOyB1cmw/OiBzdHJpbmcgfSA9IHtcbiAgICBmaWxlOiB1bmRlZmluZWQsXG4gICAgdXJsOiB1bmRlZmluZWRcbiAgfTtcbiAgZGV2aWNlVHlwZTogc3RyaW5nO1xuXG4gIHBhdHRlcm46IHN0cmluZyA9ICcnO1xuICBmaWx0ZXJQaXBlO1xuICBjb25maWdzO1xuICBtbzogUGFydGlhbDxJTWFuYWdlZE9iamVjdD4gPSB7fTtcbiAgc2F2aW5nID0gZmFsc2U7XG4gIHVwbG9hZENob2ljZTogJ3VwbG9hZEJpbmFyeScgfCAndXBsb2FkVXJsJyA9ICd1cGxvYWRCaW5hcnknO1xuICBleGlzdGluZ0JpbmFyeTogRmlsZTtcbiAgc3VibWl0QnV0dG9uVGl0bGU6IHN0cmluZztcblxuICByZXN1bHQ6IFByb21pc2U8dm9pZD4gPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgdGhpcy5fc2F2ZSA9IHJlc29sdmU7XG4gICAgdGhpcy5fY2FuY2VsID0gcmVqZWN0O1xuICB9KTtcblxuICBwcml2YXRlIF9zYXZlO1xuICBwcml2YXRlIF9jYW5jZWw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZXBvc2l0b3J5U2VydmljZTogUmVwb3NpdG9yeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBic01vZGFsUmVmOiBCc01vZGFsUmVmLFxuICAgIHByaXZhdGUgYWxlcnQ6IEFsZXJ0U2VydmljZVxuICApIHt9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb25maWdzID0gYXdhaXQgdGhpcy5yZXBvc2l0b3J5U2VydmljZS5saXN0UmVwb3NpdG9yeUVudHJpZXMoUmVwb3NpdG9yeVR5cGUuQ09ORklHVVJBVElPTik7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWQpIHtcbiAgICAgIHRoaXMudXBsb2FkQ2hvaWNlID0gdGhpcy5iaW5hcnkuZmlsZSA/ICd1cGxvYWRCaW5hcnknIDogJ3VwbG9hZFVybCc7XG4gICAgICB0aGlzLmV4aXN0aW5nQmluYXJ5ID0gdGhpcy5iaW5hcnkuZmlsZTtcbiAgICB9XG4gICAgdGhpcy5zZXRQaXBlKCcnKTtcbiAgICB0aGlzLnN1Ym1pdEJ1dHRvblRpdGxlID0gdGhpcy5tby5pZFxuICAgICAgPyBnZXR0ZXh0KCdVcGRhdGUgY29uZmlndXJhdGlvbicpXG4gICAgICA6IGdldHRleHQoJ0FkZCBjb25maWd1cmF0aW9uJyk7XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy5ic01vZGFsUmVmLmhpZGUoKTtcbiAgICB0aGlzLl9jYW5jZWwoKTtcbiAgfVxuXG4gIHNldFBpcGUoZmlsdGVyU3RyOiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhdHRlcm4gPSBmaWx0ZXJTdHI7XG4gICAgdGhpcy5maWx0ZXJQaXBlID0gcGlwZShcbiAgICAgIG1hcCgoZGF0YTogW10pID0+IHVuaXFCeShkYXRhLCAnY29uZmlndXJhdGlvblR5cGUnKSksXG4gICAgICBtYXAoKGRhdGE6IFtdKSA9PiB7XG4gICAgICAgIHJldHVybiBkYXRhLmZpbHRlcihcbiAgICAgICAgICAobW86IGFueSkgPT5cbiAgICAgICAgICAgIG1vLmNvbmZpZ3VyYXRpb25UeXBlICYmXG4gICAgICAgICAgICBtby5jb25maWd1cmF0aW9uVHlwZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyU3RyLnRvTG93ZXJDYXNlKCkpID4gLTFcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG9uRmlsZShkcm9wcGVkOiBQaWNrZWRGaWxlcykge1xuICAgIHRoaXMuY29uZmlndXJhdGlvbkZvcm0uZm9ybS5tYXJrQXNEaXJ0eSgpO1xuICAgIGlmICghaXNVbmRlZmluZWQoZHJvcHBlZC51cmwpKSB7XG4gICAgICB0aGlzLmJpbmFyeSA9IHtcbiAgICAgICAgdXJsOiBkcm9wcGVkLnVybFxuICAgICAgfTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKCFpc1VuZGVmaW5lZChkcm9wcGVkLmRyb3BwZWRGaWxlcykpIHtcbiAgICAgIHRoaXMuYmluYXJ5ID0ge1xuICAgICAgICBmaWxlOiBkcm9wcGVkLmRyb3BwZWRGaWxlc1swXS5maWxlXG4gICAgICB9O1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmJpbmFyeSA9IHtcbiAgICAgICAgZmlsZTogdW5kZWZpbmVkLFxuICAgICAgICB1cmw6IHVuZGVmaW5lZFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBzYXZlKCkge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnNhdmluZyA9IHRydWU7XG4gICAgICBjb25zdCB7IHNlbGVjdGVkLCB2ZXJzaW9uLCBkZXNjcmlwdGlvbiwgYmluYXJ5LCBkZXZpY2VUeXBlIH0gPSB0aGlzO1xuICAgICAgaWYgKHRoaXMuZXhpc3RpbmdCaW5hcnkgPT09IHRoaXMuYmluYXJ5LmZpbGUpIHtcbiAgICAgICAgYmluYXJ5LmZpbGUgPSB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgICBhd2FpdCB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLnNhdmUoXG4gICAgICAgIHsgc2VsZWN0ZWQsIHZlcnNpb24sIGRlc2NyaXB0aW9uLCBiaW5hcnksIGRldmljZVR5cGUgfSxcbiAgICAgICAgUmVwb3NpdG9yeVR5cGUuQ09ORklHVVJBVElPTixcbiAgICAgICAgdGhpcy5tb1xuICAgICAgKTtcbiAgICAgIHRoaXMuYWxlcnQuc3VjY2VzcyhcbiAgICAgICAgdGhpcy5tby5pZCA/IGdldHRleHQoJ0NvbmZpZ3VyYXRpb24gdXBkYXRlZC4nKSA6IGdldHRleHQoJ0NvbmZpZ3VyYXRpb24gY3JlYXRlZC4nKVxuICAgICAgKTtcbiAgICAgIHRoaXMuYnNNb2RhbFJlZi5oaWRlKCk7XG4gICAgICB0aGlzLl9zYXZlKCk7XG4gICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgIHRoaXMuYWxlcnQuYWRkU2VydmVyRmFpbHVyZShleCk7XG4gICAgICB0aGlzLl9jYW5jZWwoKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5zYXZpbmcgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1kZXRhaWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGM4eS9uZ3gtY29tcG9uZW50cy9yZXBvc2l0b3J5LyIsInNvdXJjZXMiOlsiY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLWRldGFpbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUIsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBYyxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQVExRDtJQWlDRSxzQ0FDVSxpQkFBb0MsRUFDcEMsVUFBc0IsRUFDdEIsS0FBbUI7UUFIN0IsaUJBSUk7UUFITSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsVUFBSyxHQUFMLEtBQUssQ0FBYztRQS9CN0IsV0FBTSxHQUFrQztZQUN0QyxJQUFJLEVBQUUsU0FBUztZQUNmLEdBQUcsRUFBRSxTQUFTO1NBQ2YsQ0FBQztRQUdGLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFHckIsT0FBRSxHQUE0QixFQUFFLENBQUM7UUFDakMsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLGlCQUFZLEdBQWlDLGNBQWMsQ0FBQztRQUc1RCxtQ0FBOEIsR0FBVyxP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QUFDO09BQ1csNEJBQTRCLENBa0h4QztJQUFELG1DQUFDO0NBQUEsQUFsSEQsSUFrSEM7U0FsSFksNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElNYW5hZ2VkT2JqZWN0IH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlLCBnZXR0ZXh0IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyB1bmlxQnksIGlzVW5kZWZpbmVkIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEJzTW9kYWxSZWYgfSBmcm9tICduZ3gtYm9vdHN0cmFwL21vZGFsJztcbmltcG9ydCB7IHBpcGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1vZGFsTW9kZWwsIFJlcG9zaXRvcnlUeXBlIH0gZnJvbSAnLi4vcmVwb3NpdG9yeS5tb2RlbCc7XG5pbXBvcnQgeyBSZXBvc2l0b3J5U2VydmljZSB9IGZyb20gJy4uL3JlcG9zaXRvcnkuc2VydmljZSc7XG5pbXBvcnQgeyBQaWNrZWRGaWxlcyB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktY29uZmlndXJhdGlvbi1kZXRhaWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29uZmlndXJhdGlvbi1kZXRhaWwuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb25EZXRhaWxDb21wb25lbnQgaW1wbGVtZW50cyBNb2RhbE1vZGVsIHtcbiAgQFZpZXdDaGlsZCgnY29uZmlndXJhdGlvbkZvcm0nLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb25maWd1cmF0aW9uRm9ybTogTmdGb3JtO1xuICBzZWxlY3RlZDogeyBpZDogc3RyaW5nOyBuYW1lOiBzdHJpbmcgfTtcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBiaW5hcnk6IHsgZmlsZT86IEZpbGU7IHVybD86IHN0cmluZyB9ID0ge1xuICAgIGZpbGU6IHVuZGVmaW5lZCxcbiAgICB1cmw6IHVuZGVmaW5lZFxuICB9O1xuICBkZXZpY2VUeXBlOiBzdHJpbmc7XG5cbiAgcGF0dGVybjogc3RyaW5nID0gJyc7XG4gIGZpbHRlclBpcGU7XG4gIGNvbmZpZ3M7XG4gIG1vOiBQYXJ0aWFsPElNYW5hZ2VkT2JqZWN0PiA9IHt9O1xuICBzYXZpbmcgPSBmYWxzZTtcbiAgdXBsb2FkQ2hvaWNlOiAndXBsb2FkQmluYXJ5JyB8ICd1cGxvYWRVcmwnID0gJ3VwbG9hZEJpbmFyeSc7XG4gIGV4aXN0aW5nQmluYXJ5OiBGaWxlO1xuICBzdWJtaXRCdXR0b25UaXRsZTogc3RyaW5nO1xuICB0ZXh0Rm9yQ29uZmlndXJhdGlvblVybFBvcG92ZXI6IHN0cmluZyA9IGdldHRleHQoYFBhdGggZm9yIGJpbmFyaWVzIGNhbiB2YXJ5IGRlcGVuZGluZyBvbiBkZXZpY2UgYWdlbnQgaW1wbGVtZW50YXRpb24sIGUuZy46XG4gICAgL2NvbmZpZ3VyYXRpb24vYmluYXJpZXMvY29uZmlndXJhdGlvbjEuYmluXG4gICAgaHR0cHM6Ly9jb25maWd1cmF0aW9uL2JpbmFyeS8xMjNcbiAgICBmdHA6Ly9jb25maWd1cmF0aW9uL2JpbmFyeS8xMjMudGFyLmd6XG4gIGApO1xuXG4gIHJlc3VsdDogUHJvbWlzZTx2b2lkPiA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICB0aGlzLl9zYXZlID0gcmVzb2x2ZTtcbiAgICB0aGlzLl9jYW5jZWwgPSByZWplY3Q7XG4gIH0pO1xuXG4gIHByaXZhdGUgX3NhdmU7XG4gIHByaXZhdGUgX2NhbmNlbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlcG9zaXRvcnlTZXJ2aWNlOiBSZXBvc2l0b3J5U2VydmljZSxcbiAgICBwcml2YXRlIGJzTW9kYWxSZWY6IEJzTW9kYWxSZWYsXG4gICAgcHJpdmF0ZSBhbGVydDogQWxlcnRTZXJ2aWNlXG4gICkge31cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmNvbmZpZ3MgPSBhd2FpdCB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmxpc3RSZXBvc2l0b3J5RW50cmllcyhSZXBvc2l0b3J5VHlwZS5DT05GSUdVUkFUSU9OKTtcbiAgICBpZiAodGhpcy5zZWxlY3RlZCkge1xuICAgICAgdGhpcy51cGxvYWRDaG9pY2UgPSB0aGlzLmJpbmFyeS5maWxlID8gJ3VwbG9hZEJpbmFyeScgOiAndXBsb2FkVXJsJztcbiAgICAgIHRoaXMuZXhpc3RpbmdCaW5hcnkgPSB0aGlzLmJpbmFyeS5maWxlO1xuICAgIH1cbiAgICB0aGlzLnNldFBpcGUoJycpO1xuICAgIHRoaXMuc3VibWl0QnV0dG9uVGl0bGUgPSB0aGlzLm1vLmlkXG4gICAgICA/IGdldHRleHQoJ1VwZGF0ZSBjb25maWd1cmF0aW9uJylcbiAgICAgIDogZ2V0dGV4dCgnQWRkIGNvbmZpZ3VyYXRpb24nKTtcbiAgfVxuXG4gIGNhbmNlbCgpIHtcbiAgICB0aGlzLmJzTW9kYWxSZWYuaGlkZSgpO1xuICAgIHRoaXMuX2NhbmNlbCgpO1xuICB9XG5cbiAgc2V0UGlwZShmaWx0ZXJTdHI6IHN0cmluZykge1xuICAgIHRoaXMucGF0dGVybiA9IGZpbHRlclN0cjtcbiAgICB0aGlzLmZpbHRlclBpcGUgPSBwaXBlKFxuICAgICAgbWFwKChkYXRhOiBbXSkgPT4gdW5pcUJ5KGRhdGEsICdjb25maWd1cmF0aW9uVHlwZScpKSxcbiAgICAgIG1hcCgoZGF0YTogW10pID0+IHtcbiAgICAgICAgcmV0dXJuIGRhdGEuZmlsdGVyKFxuICAgICAgICAgIChtbzogYW55KSA9PlxuICAgICAgICAgICAgbW8uY29uZmlndXJhdGlvblR5cGUgJiZcbiAgICAgICAgICAgIG1vLmNvbmZpZ3VyYXRpb25UeXBlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXJTdHIudG9Mb3dlckNhc2UoKSkgPiAtMVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgb25GaWxlKGRyb3BwZWQ6IFBpY2tlZEZpbGVzKSB7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uRm9ybS5mb3JtLm1hcmtBc0RpcnR5KCk7XG4gICAgaWYgKCFpc1VuZGVmaW5lZChkcm9wcGVkLnVybCkpIHtcbiAgICAgIHRoaXMuYmluYXJ5ID0ge1xuICAgICAgICB1cmw6IGRyb3BwZWQudXJsXG4gICAgICB9O1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSBpZiAoIWlzVW5kZWZpbmVkKGRyb3BwZWQuZHJvcHBlZEZpbGVzKSkge1xuICAgICAgdGhpcy5iaW5hcnkgPSB7XG4gICAgICAgIGZpbGU6IGRyb3BwZWQuZHJvcHBlZEZpbGVzWzBdLmZpbGVcbiAgICAgIH07XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYmluYXJ5ID0ge1xuICAgICAgICBmaWxlOiB1bmRlZmluZWQsXG4gICAgICAgIHVybDogdW5kZWZpbmVkXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHNhdmUoKSB7XG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuc2F2aW5nID0gdHJ1ZTtcbiAgICAgIGNvbnN0IHsgc2VsZWN0ZWQsIHZlcnNpb24sIGRlc2NyaXB0aW9uLCBiaW5hcnksIGRldmljZVR5cGUgfSA9IHRoaXM7XG4gICAgICBpZiAodGhpcy5leGlzdGluZ0JpbmFyeSA9PT0gdGhpcy5iaW5hcnkuZmlsZSkge1xuICAgICAgICBiaW5hcnkuZmlsZSA9IHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGF3YWl0IHRoaXMucmVwb3NpdG9yeVNlcnZpY2Uuc2F2ZShcbiAgICAgICAgeyBzZWxlY3RlZCwgdmVyc2lvbiwgZGVzY3JpcHRpb24sIGJpbmFyeSwgZGV2aWNlVHlwZSB9LFxuICAgICAgICBSZXBvc2l0b3J5VHlwZS5DT05GSUdVUkFUSU9OLFxuICAgICAgICB0aGlzLm1vXG4gICAgICApO1xuICAgICAgdGhpcy5hbGVydC5zdWNjZXNzKFxuICAgICAgICB0aGlzLm1vLmlkID8gZ2V0dGV4dCgnQ29uZmlndXJhdGlvbiB1cGRhdGVkLicpIDogZ2V0dGV4dCgnQ29uZmlndXJhdGlvbiBjcmVhdGVkLicpXG4gICAgICApO1xuICAgICAgdGhpcy5ic01vZGFsUmVmLmhpZGUoKTtcbiAgICAgIHRoaXMuX3NhdmUoKTtcbiAgICB9IGNhdGNoIChleCkge1xuICAgICAgdGhpcy5hbGVydC5hZGRTZXJ2ZXJGYWlsdXJlKGV4KTtcbiAgICAgIHRoaXMuX2NhbmNlbCgpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -26,6 +26,7 @@ var AddFirmwareModalComponent = /** @class */ (function () {
26
26
  };
27
27
  this.saving = false;
28
28
  this.firmwarePreselected = false;
29
+ this.textForFirmwareUrlPopover = gettext("Path for binaries can vary depending on device agent implementation, e.g.:\n /firmware/binaries/firmware1.bin\n https://firmware/binary/123\n ftp://firmware/binary/123.tar.gz\n ");
29
30
  }
30
31
  AddFirmwareModalComponent.prototype.ngOnInit = function () {
31
32
  this.setInitialState();
@@ -131,10 +132,10 @@ var AddFirmwareModalComponent = /** @class */ (function () {
131
132
  AddFirmwareModalComponent = tslib_1.__decorate([
132
133
  Component({
133
134
  selector: 'c8y-add-firmware-software-modal',
134
- template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-firmware'\"></i>\n <h4 translate>\n Add firmware\n </h4>\n </div>\n <div class=\"p-16 text-center separator-bottom\" *ngIf=\"!firmwarePreselected\">\n <p class=\"lead m-0\" translate>\n Select or create new firmware\n </p>\n </div>\n <form\n class=\"d-contents\"\n autocomplete=\"off\"\n #firmwareForm=\"ngForm\"\n (ngSubmit)=\"firmwareForm.form.valid && save()\"\n >\n <div class=\"modal-inner-scroll\">\n <div class=\"modal-body\">\n <div [hidden]=\"firmwarePreselected\">\n <c8y-form-group>\n <label for=\"firmwareName\" translate>Firmware</label>\n <c8y-typeahead\n [(ngModel)]=\"model.selected\"\n name=\"firmwareName\"\n placeholder=\"{{ 'Select or enter' | translate }}\"\n (onSearch)=\"onInput.next($event)\"\n [required]=\"true\"\n >\n <c8y-li\n *c8yFor=\"\n let firmware of firmwaresResult;\n loadMore: 'auto';\n notFound: notFoundTemplate\n \"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"onFirmwareSelect(firmware)\"\n [active]=\"model.selected === firmware\"\n >\n <c8y-highlight\n [text]=\"firmware.name || '--'\"\n [pattern]=\"onInput | async\"\n ></c8y-highlight>\n </c8y-li>\n <ng-template #notFoundTemplate>\n <c8y-li class=\"bg-gray-lighter p-8\" *ngIf=\"(onInput | async)?.length > 0\">\n <span translate>No match found, add new`firmware`? </span>\n <button\n title=\"{{ 'Create new`firmware`' | translate }}\"\n type=\"button\"\n class=\"btn btn-primary btn-xs m-l-16\"\n translate\n >\n Create new`firmware`\n </button>\n </c8y-li>\n </ng-template>\n </c8y-typeahead>\n </c8y-form-group>\n\n <c8y-form-group>\n <label for=\"firmwareDescription\" translate>Description</label>\n <input\n id=\"firmwareDescription\"\n class=\"form-control\"\n autocomplete=\"off\"\n name=\"description\"\n [(ngModel)]=\"model.description\"\n placeholder=\"{{ 'e.g. Firmware for hardware revision b' | translate }}\"\n [disabled]=\"model.selected?.id\"\n [required]=\"true\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label for=\"firmwareDeviceTypeFilter\" translate>Device type filter</label>\n <input\n id=\"firmwareDeviceTypeFilter\"\n class=\"form-control\"\n name=\"firmwareDeviceTypeFilter\"\n popover=\"{{\n 'If the filter is set, the firmware will show up for installation only for devices of that type. If no filter is set, it will be available for all devices.'\n | translate\n }}\"\n [(ngModel)]=\"model.deviceType\"\n placeholder=\"{{ 'e.g.' | translate }} c8y_Linux\"\n [disabled]=\"model.selected?.id\"\n />\n </c8y-form-group>\n </div>\n\n <c8y-form-group>\n <label for=\"firmwareVersion\" translate>Version</label>\n <input\n id=\"firmwareVersion\"\n class=\"form-control\"\n autocomplete=\"off\"\n name=\"version\"\n [(ngModel)]=\"model.version\"\n placeholder=\"{{ 'e.g.' | translate }} 1.0.0\"\n [required]=\"true\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <div class=\"legend form-block m-t-40\" translate>Firmware file</div>\n <c8y-file-picker [maxAllowedFiles]=\"1\" (onFilesPicked)=\"onFile($event)\">\n </c8y-file-picker>\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n title=\"{{ 'Cancel' | translate }}\"\n class=\"btn btn-default\"\n type=\"button\"\n (click)=\"cancel()\"\n [disabled]=\"saving\"\n translate\n >\n Cancel\n </button>\n\n <button\n title=\"{{ 'Add firmware' | translate }}\"\n class=\"btn btn-primary\"\n type=\"submit\"\n [ngClass]=\"{ 'btn-pending': saving }\"\n [disabled]=\"\n !firmwareForm.form.valid ||\n firmwareForm.form.pristine ||\n saving ||\n (!model.binary?.url && !model.binary?.file)\n \"\n translate\n >\n Add firmware\n </button>\n </div>\n </form>\n</div>\n"
135
+ template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-firmware'\"></i>\n <h4 translate>\n Add firmware\n </h4>\n </div>\n <div class=\"p-16 text-center separator-bottom\" *ngIf=\"!firmwarePreselected\">\n <p class=\"lead m-0\" translate>\n Select or create new firmware\n </p>\n </div>\n <form\n class=\"d-contents\"\n autocomplete=\"off\"\n #firmwareForm=\"ngForm\"\n (ngSubmit)=\"firmwareForm.form.valid && save()\"\n >\n <div class=\"modal-inner-scroll\">\n <div class=\"modal-body\">\n <div [hidden]=\"firmwarePreselected\">\n <c8y-form-group>\n <label for=\"firmwareName\" translate>Firmware</label>\n <c8y-typeahead\n [(ngModel)]=\"model.selected\"\n name=\"firmwareName\"\n placeholder=\"{{ 'Select or enter' | translate }}\"\n (onSearch)=\"onInput.next($event)\"\n [required]=\"true\"\n >\n <c8y-li\n *c8yFor=\"\n let firmware of firmwaresResult;\n loadMore: 'auto';\n notFound: notFoundTemplate\n \"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"onFirmwareSelect(firmware)\"\n [active]=\"model.selected === firmware\"\n >\n <c8y-highlight\n [text]=\"firmware.name || '--'\"\n [pattern]=\"onInput | async\"\n ></c8y-highlight>\n </c8y-li>\n <ng-template #notFoundTemplate>\n <c8y-li class=\"bg-gray-lighter p-8\" *ngIf=\"(onInput | async)?.length > 0\">\n <span translate>No match found, add new`firmware`? </span>\n <button\n title=\"{{ 'Create new`firmware`' | translate }}\"\n type=\"button\"\n class=\"btn btn-primary btn-xs m-l-16\"\n translate\n >\n Create new`firmware`\n </button>\n </c8y-li>\n </ng-template>\n </c8y-typeahead>\n </c8y-form-group>\n\n <c8y-form-group>\n <label for=\"firmwareDescription\" translate>Description</label>\n <input\n id=\"firmwareDescription\"\n class=\"form-control\"\n autocomplete=\"off\"\n name=\"description\"\n [(ngModel)]=\"model.description\"\n placeholder=\"{{ 'e.g. Firmware for hardware revision b' | translate }}\"\n [disabled]=\"model.selected?.id\"\n [required]=\"true\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <label for=\"firmwareDeviceTypeFilter\" translate>Device type filter</label>\n <input\n id=\"firmwareDeviceTypeFilter\"\n class=\"form-control\"\n name=\"firmwareDeviceTypeFilter\"\n popover=\"{{\n 'If the filter is set, the firmware will show up for installation only for devices of that type. If no filter is set, it will be available for all devices.'\n | translate\n }}\"\n [(ngModel)]=\"model.deviceType\"\n placeholder=\"{{ 'e.g.' | translate }} c8y_Linux\"\n [disabled]=\"model.selected?.id\"\n />\n </c8y-form-group>\n </div>\n\n <c8y-form-group>\n <label for=\"firmwareVersion\" translate>Version</label>\n <input\n id=\"firmwareVersion\"\n class=\"form-control\"\n autocomplete=\"off\"\n name=\"version\"\n [(ngModel)]=\"model.version\"\n placeholder=\"{{ 'e.g.' | translate }} 1.0.0\"\n [required]=\"true\"\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <div class=\"legend form-block m-t-40\" translate>Firmware file</div>\n <c8y-file-picker [maxAllowedFiles]=\"1\" (onFilesPicked)=\"onFile($event)\" [fileUrlPopover]=\"textForFirmwareUrlPopover\">\n </c8y-file-picker>\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n title=\"{{ 'Cancel' | translate }}\"\n class=\"btn btn-default\"\n type=\"button\"\n (click)=\"cancel()\"\n [disabled]=\"saving\"\n translate\n >\n Cancel\n </button>\n\n <button\n title=\"{{ 'Add firmware' | translate }}\"\n class=\"btn btn-primary\"\n type=\"submit\"\n [ngClass]=\"{ 'btn-pending': saving }\"\n [disabled]=\"\n !firmwareForm.form.valid ||\n firmwareForm.form.pristine ||\n saving ||\n (!model.binary?.url && !model.binary?.file)\n \"\n translate\n >\n Add firmware\n </button>\n </div>\n </form>\n</div>\n"
135
136
  })
136
137
  ], AddFirmwareModalComponent);
137
138
  return AddFirmwareModalComponent;
138
139
  }());
139
140
  export { AddFirmwareModalComponent };
140
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWZpcm13YXJlLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BjOHkvbmd4LWNvbXBvbmVudHMvcmVwb3NpdG9yeS8iLCJzb3VyY2VzIjpbImZpcm13YXJlL2FkZC1maXJtd2FyZS1tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQWtDLE1BQU0scUJBQXFCLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBUXBGO0lBbUJFLG1DQUNVLEtBQWlCLEVBQ2pCLGlCQUFvQyxFQUNwQyxLQUFtQjtRQUZuQixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsVUFBSyxHQUFMLEtBQUssQ0FBYztRQXBCbkIsVUFBSyxHQUFxQyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUMzRixZQUFPLEdBQTRCLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLFVBQUssR0FBZTtZQUNsQixRQUFRLEVBQUUsU0FBUztZQUNuQixPQUFPLEVBQUUs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QjtRQUpyQyxTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUsaUNBQWlDO1lBQzNDLHU1SkFBZ0Q7U0FDakQsQ0FBQztPQUNXLHlCQUF5QixDQTBIckM7SUFBRCxnQ0FBQztDQUFBLEFBMUhELElBMEhDO1NBMUhZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQnNNb2RhbFJlZiB9IGZyb20gJ25neC1ib290c3RyYXAvbW9kYWwnO1xuaW1wb3J0IHsgUmVwb3NpdG9yeVNlcnZpY2UgfSBmcm9tICcuLi9yZXBvc2l0b3J5LnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVwb3NpdG9yeVR5cGUsIE1vZGFsTW9kZWwsIFJlcG9zaXRvcnlDYXRlZ29yeSB9IGZyb20gJy4uL3JlcG9zaXRvcnkubW9kZWwnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlLCBnZXR0ZXh0IH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBpc1VuZGVmaW5lZCwgZ2V0LCBhc3NpZ24gfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRhcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgUGlja2VkRmlsZXMgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IElNYW5hZ2VkT2JqZWN0IH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktYWRkLWZpcm13YXJlLXNvZnR3YXJlLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICdhZGQtZmlybXdhcmUtbW9kYWwuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEFkZEZpcm13YXJlTW9kYWxDb21wb25lbnQge1xuICBAVmlld0NoaWxkKCdmaXJtd2FyZUZvcm0nLCB7IHN0YXRpYzogZmFsc2UgfSkgZm9ybTogTmdGb3JtO1xuICBAT3V0cHV0KCkgc2F2ZWQ6IEV2ZW50RW1pdHRlcjxSZXBvc2l0b3J5Q2F0ZWdvcnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZXBvc2l0b3J5Q2F0ZWdvcnk+KCk7XG4gIG9uSW5wdXQ6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgbW9kZWw6IE1vZGFsTW9kZWwgPSB7XG4gICAgc2VsZWN0ZWQ6IHVuZGVmaW5lZCxcbiAgICB2ZXJzaW9uOiB1bmRlZmluZWQsXG4gICAgZGVzY3JpcHRpb246IHVuZGVmaW5lZCxcbiAgICBkZXZpY2VUeXBlOiB1bmRlZmluZWQsXG4gICAgYmluYXJ5OiB7XG4gICAgICBmaWxlOiB1bmRlZmluZWQsXG4gICAgICB1cmw6IHVuZGVmaW5lZFxuICAgIH1cbiAgfTtcbiAgZmlybXdhcmVzUmVzdWx0O1xuICBzYXZpbmcgPSBmYWxzZTtcbiAgZmlybXdhcmVQcmVzZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIGlucHV0U3Vic2NyaXB0aW9uJDogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbW9kYWw6IEJzTW9kYWxSZWYsXG4gICAgcHJpdmF0ZSByZXBvc2l0b3J5U2VydmljZTogUmVwb3NpdG9yeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydDogQWxlcnRTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldEluaXRpYWxTdGF0ZSgpO1xuICAgIHRoaXMubG9hZEZpcm13YXJlcygpO1xuICB9XG5cbiAgc2V0SW5pdGlhbFN0YXRlKCkge1xuICAgIGlmICh0aGlzLm1vZGVsLnNlbGVjdGVkKSB7XG4gICAgICB0aGlzLmZpcm13YXJlUHJlc2VsZWN0ZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGxvYWRGaXJtd2FyZXMoKSB7XG4gICAgdGhpcy5pbnB1dFN1YnNjcmlwdGlvbiQgPSB0aGlzLm9uSW5wdXRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIGlmICghdGhpcy5maXJtd2FyZVByZXNlbGVjdGVkKSB7XG4gICAgICAgICAgICB0aGlzLm1vZGVsLmRlc2NyaXB0aW9uID0gbnVsbDtcbiAgICAgICAgICAgIGlmICh0aGlzLmZvcm0pIHtcbiAgICAgICAgICAgICAgdGhpcy5mb3JtLmZvcm0uZ2V0KCdkZXNjcmlwdGlvbicpLnJlc2V0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHN3aXRjaE1hcChzZWFyY2hTdHIgPT4gdGhpcy5nZXRGaXJtd2FyZVJlc3VsdChzZWFyY2hTdHIpKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgICB0aGlzLmZpcm13YXJlc1Jlc3VsdCA9IHJlc3VsdDtcbiAgICAgIH0pO1xuICB9XG5cbiAgZ2V0RmlybXdhcmVSZXN1bHQoc2VhcmNoU3RyOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gZnJvbShcbiAgICAgIHRoaXMucmVwb3NpdG9yeVNlcnZpY2UubGlzdFJlcG9zaXRvcnlFbnRyaWVzKFJlcG9zaXRvcnlUeXBlLkZJUk1XQVJFLCB7XG4gICAgICAgIHBhcnRpYWxOYW1lOiBzZWFyY2hTdHIsXG4gICAgICAgIHNraXBMZWdhY3k6IHRydWVcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIHNhdmUoKSB7XG4gICAgdGhpcy5zYXZpbmcgPSB0cnVlO1xuICAgIHRoaXMucmVwb3NpdG9yeVNlcnZpY2VcbiAgICAgIC5jcmVhdGUodGhpcy5tb2RlbCwgUmVwb3NpdG9yeVR5cGUuRklSTVdBUkUpXG4gICAgICAudGhlbihzYXZlZEZpcm13YXJlID0+IHtcbiAgICAgICAgdGhpcy5zdWNjZXNzTXNnKCk7XG4gICAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2F2ZWQubmV4dChzYXZlZEZpcm13YXJlKTtcbiAgICAgICAgdGhpcy5jYW5jZWwoKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goZSA9PiB7XG4gICAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2F2ZWQuZXJyb3IoZSk7XG4gICAgICAgIHRoaXMuY2FuY2VsKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHN1Y2Nlc3NNc2coKSB7XG4gICAgY29uc3QgbXNnID0gZ2V0dGV4dCgnRmlybXdhcmUgYWRkZWQuJyk7XG4gICAgdGhpcy5hbGVydC5zdWNjZXNzKG1zZyk7XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy5tb2RhbC5oaWRlKCk7XG4gICAgdGhpcy5zYXZlZC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5pbnB1dFN1YnNjcmlwdGlvbiQudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG9uRmlsZShkcm9wcGVkOiBQaWNrZWRGaWxlcykge1xuICAgIGlmICghaXNVbmRlZmluZWQoZHJvcHBlZC51cmwpKSB7XG4gICAgICB0aGlzLm1vZGVsLmJpbmFyeSA9IHtcbiAgICAgICAgdXJsOiBkcm9wcGVkLnVybFxuICAgICAgfTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKCFpc1VuZGVmaW5lZChkcm9wcGVkLmRyb3BwZWRGaWxlcykpIHtcbiAgICAgIHRoaXMubW9kZWwuYmluYXJ5ID0ge1xuICAgICAgICBmaWxlOiBkcm9wcGVkLmRyb3BwZWRGaWxlc1swXS5maWxlXG4gICAgICB9O1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vZGVsLmJpbmFyeSA9IHtcbiAgICAgICAgZmlsZTogdW5kZWZpbmVkLFxuICAgICAgICB1cmw6IHVuZGVmaW5lZFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBvbkZpcm13YXJlU2VsZWN0KGZpcm13YXJlOiBJTWFuYWdlZE9iamVjdCkge1xuICAgIGFzc2lnbih0aGlzLm1vZGVsLCB7XG4gICAgICBzZWxlY3RlZDogZmlybXdhcmUsXG4gICAgICBkZXNjcmlwdGlvbjogZmlybXdhcmUuZGVzY3JpcHRpb24sXG4gICAgICBkZXZpY2VUeXBlOiBnZXQoZmlybXdhcmUsICdjOHlfRmlsdGVyLnR5cGUnKVxuICAgIH0pO1xuICB9XG59XG4iXX0=
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWZpcm13YXJlLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BjOHkvbmd4LWNvbXBvbmVudHMvcmVwb3NpdG9yeS8iLCJzb3VyY2VzIjpbImZpcm13YXJlL2FkZC1maXJtd2FyZS1tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQWtDLE1BQU0scUJBQXFCLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBUXBGO0lBd0JFLG1DQUNVLEtBQWlCLEVBQ2pCLGlCQUFvQyxFQUNwQyxLQUFtQjtRQUZuQixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsVUFBSyxHQUFMLEtBQUssQ0FBYztRQXpCbkIsVUFBSyxHQUFxQyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUMzRixZQUFPLEdBQTRCLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLFVBQUssR0FBZTtZQUNsQixRQUFRLEVBQUUsU0FBUztZQUNuQixPQUFPLEVBQUUsU0FBUztZQUNsQixXQUFXLEVBQUUsU0FBUztZQUN0QixVQUFVLEVBQUUsU0FBUztZQUNyQixNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsR0FBRyxFQUFFLFNBQVM7YUFDZjtTQUNGLENBQUM7UUFFRixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2Ysd0JBQW1CLEdBQVksS0FBSyxDQUFDO1FBQ3JDLDhCQUF5QixHQUFXLE9BQU8sQ0FBQyw2TEFJM0MsQ0FBQyxDQUFDO0lBT0EsQ0FBQztJQUVKLDRDQUFRLEdBQVI7UUFDRSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxtREFBZSxHQUFmO1FBQ0UsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUN2QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUVELGlEQUFhLEdBQWI7UUFBQSxpQkFrQkM7UUFqQkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxPQUFPO2FBQ25DLElBQUksQ0FDSCxHQUFHLENBQUM7WUFDRixJQUFJLENBQUMsS0FBSSxDQUFDLG1CQUFtQixFQUFFO2dCQUM3QixLQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7Z0JBQzlCLElBQUksS0FBSSxDQUFDLElBQUksRUFBRTtvQkFDYixLQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7aUJBQzNDO2FBQ0Y7UUFDSCxDQUFDLENBQUMsRUFDRixZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxVQUFBLFNBQVMsSUFBSSxPQUFBLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsRUFBakMsQ0FBaUMsQ0FBQyxDQUMxRDthQUNBLFNBQVMsQ0FBQyxVQUFBLE1BQU07WUFDZixLQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxxREFBaUIsR0FBakIsVUFBa0IsU0FBaUI7UUFDakMsT0FBTyxJQUFJLENBQ1QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUU7WUFDcEUsV0FBVyxFQUFFLFNBQVM7WUFDdEIsVUFBVSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUssd0NBQUksR0FBVjs7OztnQkFDRSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFDbkIsSUFBSSxDQUFDLGlCQUFpQjtxQkFDbkIsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsY0FBYyxDQUFDLFFBQVEsQ0FBQztxQkFDM0MsSUFBSSxDQUFDLFVBQUEsYUFBYTtvQkFDakIsS0FBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO29CQUNsQixLQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztvQkFDcEIsS0FBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7b0JBQy9CLEtBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDaEIsQ0FBQyxDQUFDO3FCQUNELEtBQUssQ0FBQyxVQUFBLENBQUM7b0JBQ04sS0FBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7b0JBQ3BCLEtBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNwQixLQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ2hCLENBQUMsQ0FBQyxDQUFDOzs7O0tBQ047SUFFRCw4Q0FBVSxHQUFWO1FBQ0UsSUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELDBDQUFNLEdBQU47UUFDRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELCtDQUFXLEdBQVg7UUFDRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELDBDQUFNLEdBQU4sVUFBTyxPQUFvQjtRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRztnQkFDbEIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO2FBQ2pCLENBQUM7WUFDRixPQUFPO1NBQ1I7YUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRztnQkFDbEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSTthQUNuQyxDQUFDO1lBQ0YsT0FBTztTQUNSO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRztnQkFDbEIsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsR0FBRyxFQUFFLFNBQVM7YUFDZixDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQsb0RBQWdCLEdBQWhCLFVBQWlCLFFBQXdCO1FBQ3ZDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2pCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLFdBQVcsRUFBRSxRQUFRLENBQUMsV0FBVztZQUNqQyxVQUFVLEVBQUUsR0FBRyxDQUFDLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQztTQUM3QyxDQUFDLENBQUM7SUFDTCxDQUFDOztnQkFyR2dCLFVBQVU7Z0JBQ0UsaUJBQWlCO2dCQUM3QixZQUFZOztJQTFCaUI7UUFBN0MsU0FBUyxDQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQzsyREFBYztJQUNqRDtRQUFULE1BQU0sRUFBRTs0REFBa0Y7SUFGaEYseUJBQXlCO1FBSnJDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxpQ0FBaUM7WUFDM0MsczhKQUFnRDtTQUNqRCxDQUFDO09BQ1cseUJBQXlCLENBK0hyQztJQUFELGdDQUFDO0NBQUEsQUEvSEQsSUErSEM7U0EvSFkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCc01vZGFsUmVmIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBSZXBvc2l0b3J5U2VydmljZSB9IGZyb20gJy4uL3JlcG9zaXRvcnkuc2VydmljZSc7XG5pbXBvcnQgeyBSZXBvc2l0b3J5VHlwZSwgTW9kYWxNb2RlbCwgUmVwb3NpdG9yeUNhdGVnb3J5IH0gZnJvbSAnLi4vcmVwb3NpdG9yeS5tb2RlbCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UsIGdldHRleHQgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IGlzVW5kZWZpbmVkLCBnZXQsIGFzc2lnbiB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiwgZnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBQaWNrZWRGaWxlcyB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgSU1hbmFnZWRPYmplY3QgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1hZGQtZmlybXdhcmUtc29mdHdhcmUtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJ2FkZC1maXJtd2FyZS1tb2RhbC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQWRkRmlybXdhcmVNb2RhbENvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ2Zpcm13YXJlRm9ybScsIHsgc3RhdGljOiBmYWxzZSB9KSBmb3JtOiBOZ0Zvcm07XG4gIEBPdXRwdXQoKSBzYXZlZDogRXZlbnRFbWl0dGVyPFJlcG9zaXRvcnlDYXRlZ29yeT4gPSBuZXcgRXZlbnRFbWl0dGVyPFJlcG9zaXRvcnlDYXRlZ29yeT4oKTtcbiAgb25JbnB1dDogQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBtb2RlbDogTW9kYWxNb2RlbCA9IHtcbiAgICBzZWxlY3RlZDogdW5kZWZpbmVkLFxuICAgIHZlcnNpb246IHVuZGVmaW5lZCxcbiAgICBkZXNjcmlwdGlvbjogdW5kZWZpbmVkLFxuICAgIGRldmljZVR5cGU6IHVuZGVmaW5lZCxcbiAgICBiaW5hcnk6IHtcbiAgICAgIGZpbGU6IHVuZGVmaW5lZCxcbiAgICAgIHVybDogdW5kZWZpbmVkXG4gICAgfVxuICB9O1xuICBmaXJtd2FyZXNSZXN1bHQ7XG4gIHNhdmluZyA9IGZhbHNlO1xuICBmaXJtd2FyZVByZXNlbGVjdGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHRleHRGb3JGaXJtd2FyZVVybFBvcG92ZXI6IHN0cmluZyA9IGdldHRleHQoYFBhdGggZm9yIGJpbmFyaWVzIGNhbiB2YXJ5IGRlcGVuZGluZyBvbiBkZXZpY2UgYWdlbnQgaW1wbGVtZW50YXRpb24sIGUuZy46XG4gICAgL2Zpcm13YXJlL2JpbmFyaWVzL2Zpcm13YXJlMS5iaW5cbiAgICBodHRwczovL2Zpcm13YXJlL2JpbmFyeS8xMjNcbiAgICBmdHA6Ly9maXJtd2FyZS9iaW5hcnkvMTIzLnRhci5nelxuICBgKTtcbiAgcHJpdmF0ZSBpbnB1dFN1YnNjcmlwdGlvbiQ6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG1vZGFsOiBCc01vZGFsUmVmLFxuICAgIHByaXZhdGUgcmVwb3NpdG9yeVNlcnZpY2U6IFJlcG9zaXRvcnlTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnQ6IEFsZXJ0U2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXRJbml0aWFsU3RhdGUoKTtcbiAgICB0aGlzLmxvYWRGaXJtd2FyZXMoKTtcbiAgfVxuXG4gIHNldEluaXRpYWxTdGF0ZSgpIHtcbiAgICBpZiAodGhpcy5tb2RlbC5zZWxlY3RlZCkge1xuICAgICAgdGhpcy5maXJtd2FyZVByZXNlbGVjdGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBsb2FkRmlybXdhcmVzKCkge1xuICAgIHRoaXMuaW5wdXRTdWJzY3JpcHRpb24kID0gdGhpcy5vbklucHV0XG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICBpZiAoIXRoaXMuZmlybXdhcmVQcmVzZWxlY3RlZCkge1xuICAgICAgICAgICAgdGhpcy5tb2RlbC5kZXNjcmlwdGlvbiA9IG51bGw7XG4gICAgICAgICAgICBpZiAodGhpcy5mb3JtKSB7XG4gICAgICAgICAgICAgIHRoaXMuZm9ybS5mb3JtLmdldCgnZGVzY3JpcHRpb24nKS5yZXNldCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIGRlYm91bmNlVGltZSgzMDApLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICBzd2l0Y2hNYXAoc2VhcmNoU3RyID0+IHRoaXMuZ2V0RmlybXdhcmVSZXN1bHQoc2VhcmNoU3RyKSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgdGhpcy5maXJtd2FyZXNSZXN1bHQgPSByZXN1bHQ7XG4gICAgICB9KTtcbiAgfVxuXG4gIGdldEZpcm13YXJlUmVzdWx0KHNlYXJjaFN0cjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGZyb20oXG4gICAgICB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlLmxpc3RSZXBvc2l0b3J5RW50cmllcyhSZXBvc2l0b3J5VHlwZS5GSVJNV0FSRSwge1xuICAgICAgICBwYXJ0aWFsTmFtZTogc2VhcmNoU3RyLFxuICAgICAgICBza2lwTGVnYWN5OiB0cnVlXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBhc3luYyBzYXZlKCkge1xuICAgIHRoaXMuc2F2aW5nID0gdHJ1ZTtcbiAgICB0aGlzLnJlcG9zaXRvcnlTZXJ2aWNlXG4gICAgICAuY3JlYXRlKHRoaXMubW9kZWwsIFJlcG9zaXRvcnlUeXBlLkZJUk1XQVJFKVxuICAgICAgLnRoZW4oc2F2ZWRGaXJtd2FyZSA9PiB7XG4gICAgICAgIHRoaXMuc3VjY2Vzc01zZygpO1xuICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNhdmVkLm5leHQoc2F2ZWRGaXJtd2FyZSk7XG4gICAgICAgIHRoaXMuY2FuY2VsKCk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKGUgPT4ge1xuICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNhdmVkLmVycm9yKGUpO1xuICAgICAgICB0aGlzLmNhbmNlbCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBzdWNjZXNzTXNnKCkge1xuICAgIGNvbnN0IG1zZyA9IGdldHRleHQoJ0Zpcm13YXJlIGFkZGVkLicpO1xuICAgIHRoaXMuYWxlcnQuc3VjY2Vzcyhtc2cpO1xuICB9XG5cbiAgY2FuY2VsKCkge1xuICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgIHRoaXMuc2F2ZWQuY29tcGxldGUoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuaW5wdXRTdWJzY3JpcHRpb24kLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBvbkZpbGUoZHJvcHBlZDogUGlja2VkRmlsZXMpIHtcbiAgICBpZiAoIWlzVW5kZWZpbmVkKGRyb3BwZWQudXJsKSkge1xuICAgICAgdGhpcy5tb2RlbC5iaW5hcnkgPSB7XG4gICAgICAgIHVybDogZHJvcHBlZC51cmxcbiAgICAgIH07XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIGlmICghaXNVbmRlZmluZWQoZHJvcHBlZC5kcm9wcGVkRmlsZXMpKSB7XG4gICAgICB0aGlzLm1vZGVsLmJpbmFyeSA9IHtcbiAgICAgICAgZmlsZTogZHJvcHBlZC5kcm9wcGVkRmlsZXNbMF0uZmlsZVxuICAgICAgfTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tb2RlbC5iaW5hcnkgPSB7XG4gICAgICAgIGZpbGU6IHVuZGVmaW5lZCxcbiAgICAgICAgdXJsOiB1bmRlZmluZWRcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgb25GaXJtd2FyZVNlbGVjdChmaXJtd2FyZTogSU1hbmFnZWRPYmplY3QpIHtcbiAgICBhc3NpZ24odGhpcy5tb2RlbCwge1xuICAgICAgc2VsZWN0ZWQ6IGZpcm13YXJlLFxuICAgICAgZGVzY3JpcHRpb246IGZpcm13YXJlLmRlc2NyaXB0aW9uLFxuICAgICAgZGV2aWNlVHlwZTogZ2V0KGZpcm13YXJlLCAnYzh5X0ZpbHRlci50eXBlJylcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -14,6 +14,7 @@ var AddFirmwarePatchModalComponent = /** @class */ (function () {
14
14
  this.repository = repository;
15
15
  this.alert = alert;
16
16
  this.saved = new EventEmitter();
17
+ this.textForFirmwareUrlPopover = gettext("Path for binaries can vary depending on device agent implementation, e.g.:\n /firmware/binaries/firmware1.bin\n https://firmware/binary/123\n ftp://firmware/binary/123.tar.gz\n ");
17
18
  this.model = {
18
19
  selected: undefined,
19
20
  dependency: null,
@@ -132,10 +133,10 @@ var AddFirmwarePatchModalComponent = /** @class */ (function () {
132
133
  AddFirmwarePatchModalComponent = tslib_1.__decorate([
133
134
  Component({
134
135
  selector: 'c8y-add-firmware-patch-modal.component',
135
- template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-firmware'\"></i>\n <h4 translate>\n Add firmware patch\n </h4>\n </div>\n <div class=\"p-16 text-center separator-bottom\">\n <p class=\"lead m-0\" translate>\n Select a firmware version\n </p>\n </div>\n\n <form class=\"d-contents\" autocomplete=\"off\" #firmwarePatchForm=\"ngForm\" (ngSubmit)=\"save()\">\n <div class=\"modal-inner-scroll\">\n <div class=\"modal-body\">\n <div [hidden]=\"firmwarePreselected\">\n <c8y-form-group>\n <label for=\"firmwareName\" translate>Firmware</label>\n <c8y-typeahead\n [ngModel]=\"model.selected\"\n name=\"firmwareName\"\n placeholder=\"{{ 'Select or enter' | translate }}\"\n (onSearch)=\"firmwareInput$.next($event)\"\n [allowFreeEntries]=\"false\"\n [required]=\"true\"\n >\n <c8y-li\n *c8yFor=\"let firmware of firmwares$ | async; loadMore: 'auto'\"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"model.selected = firmware; firmwareSelected$.next(firmware)\"\n [active]=\"model.selected === firmware\"\n >\n <c8y-highlight\n [text]=\"firmware.name || '--'\"\n [pattern]=\"firmwareInput$ | async\"\n ></c8y-highlight>\n </c8y-li>\n </c8y-typeahead>\n <c8y-messages\n ><c8y-message\n name=\"notExisting\"\n [text]=\"'Select one of the existing firmwares.' | translate\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n </div>\n\n <c8y-form-group>\n <label for=\"patchDependency\" class=\"m-r-8\" translate>Version</label>\n <c8y-typeahead\n [ngModel]=\"model.dependency\"\n name=\"patchDependency\"\n placeholder=\"{{ 'Select or enter' | translate }}\"\n (onSearch)=\"patchDependencyInput$.next($event)\"\n [displayProperty]=\"'c8y_Firmware.version'\"\n [allowFreeEntries]=\"false\"\n [disabled]=\"\n (baseVersions$ | async) === null || (baseVersions$ | async)?.data.length === 0\n \"\n [required]=\"true\"\n >\n <c8y-li\n *c8yFor=\"\n let baseVersion of baseVersions$;\n loadMore: 'auto';\n pipe: baseVersionsFilterPipe\n \"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"model.dependency = baseVersion\"\n [active]=\"model.dependency === baseVersion\"\n >\n <c8y-highlight\n [text]=\"baseVersion.c8y_Firmware.version || '--'\"\n [pattern]=\"patchDependencyInput$ | async\"\n ></c8y-highlight>\n </c8y-li>\n </c8y-typeahead>\n <c8y-messages\n ><c8y-message\n name=\"notExisting\"\n [text]=\"'Select one of the existing versions.' | translate\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n\n <c8y-form-group>\n <label for=\"patchVersion\" translate>Patch</label>\n <input\n id=\"patchVersion\"\n class=\"form-control\"\n autocomplete=\"off\"\n name=\"patchVersion\"\n [(ngModel)]=\"model.patchVersion\"\n placeholder=\"{{ 'e.g.' | translate }} 1.0.0\"\n required\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <div class=\"legend form-block m-t-40\" translate>Patch file</div>\n <c8y-file-picker [maxAllowedFiles]=\"1\" (onFilesPicked)=\"onFile($event)\">\n </c8y-file-picker>\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n title=\"{{ 'Cancel' | translate }}\"\n class=\"btn btn-default\"\n type=\"button\"\n (click)=\"cancel()\"\n [disabled]=\"saving\"\n translate\n >\n Cancel\n </button>\n <button\n title=\"{{ 'Add firmware patch' | translate }}\"\n class=\"btn btn-primary\"\n [ngClass]=\"{ 'btn-pending': saving }\"\n type=\"submit\"\n [disabled]=\"\n !firmwarePatchForm.form.valid ||\n firmwarePatchForm.form.pristine ||\n (!model.binary?.url && !model.binary?.file) ||\n saving\n \"\n translate\n >\n Add firmware patch\n </button>\n </div>\n </form>\n</div>\n"
136
+ template: "<div class=\"viewport-modal\">\n <div class=\"modal-header dialog-header\">\n <i [c8yIcon]=\"'c8y-firmware'\"></i>\n <h4 translate>\n Add firmware patch\n </h4>\n </div>\n <div class=\"p-16 text-center separator-bottom\">\n <p class=\"lead m-0\" translate>\n Select a firmware version\n </p>\n </div>\n\n <form\n class=\"d-contents\"\n autocomplete=\"off\"\n #firmwarePatchForm=\"ngForm\"\n (ngSubmit)=\"firmwarePatchForm.form.valid && save()\"\n >\n <div class=\"modal-inner-scroll\">\n <div class=\"modal-body\">\n <div [hidden]=\"firmwarePreselected\">\n <c8y-form-group>\n <label for=\"firmwareName\" translate>Firmware</label>\n <c8y-typeahead\n [ngModel]=\"model.selected\"\n name=\"firmwareName\"\n placeholder=\"{{ 'Select or enter' | translate }}\"\n (onSearch)=\"firmwareInput$.next($event)\"\n [allowFreeEntries]=\"false\"\n [required]=\"true\"\n >\n <c8y-li\n *c8yFor=\"let firmware of firmwares$ | async; loadMore: 'auto'\"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"model.selected = firmware; firmwareSelected$.next(firmware)\"\n [active]=\"model.selected === firmware\"\n >\n <c8y-highlight\n [text]=\"firmware.name || '--'\"\n [pattern]=\"firmwareInput$ | async\"\n ></c8y-highlight>\n </c8y-li>\n </c8y-typeahead>\n <c8y-messages\n ><c8y-message\n name=\"notExisting\"\n [text]=\"'Select one of the existing firmwares.' | translate\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n </div>\n\n <c8y-form-group>\n <label for=\"patchDependency\" class=\"m-r-8\" translate>Version</label>\n <c8y-typeahead\n [ngModel]=\"model.dependency\"\n name=\"patchDependency\"\n placeholder=\"{{ 'Select or enter' | translate }}\"\n (onSearch)=\"patchDependencyInput$.next($event)\"\n [displayProperty]=\"'c8y_Firmware.version'\"\n [allowFreeEntries]=\"false\"\n [disabled]=\"\n (baseVersions$ | async) === null || (baseVersions$ | async)?.data.length === 0\n \"\n [required]=\"true\"\n >\n <c8y-li\n *c8yFor=\"\n let baseVersion of baseVersions$;\n loadMore: 'auto';\n pipe: baseVersionsFilterPipe\n \"\n class=\"p-l-8 p-r-8 c8y-list__item--link\"\n (click)=\"model.dependency = baseVersion\"\n [active]=\"model.dependency === baseVersion\"\n >\n <c8y-highlight\n [text]=\"baseVersion.c8y_Firmware.version || '--'\"\n [pattern]=\"patchDependencyInput$ | async\"\n ></c8y-highlight>\n </c8y-li>\n </c8y-typeahead>\n <c8y-messages\n ><c8y-message\n name=\"notExisting\"\n [text]=\"'Select one of the existing versions.' | translate\"\n ></c8y-message>\n </c8y-messages>\n </c8y-form-group>\n\n <c8y-form-group>\n <label for=\"patchVersion\" translate>Patch</label>\n <input\n id=\"patchVersion\"\n class=\"form-control\"\n autocomplete=\"off\"\n name=\"patchVersion\"\n [(ngModel)]=\"model.patchVersion\"\n placeholder=\"{{ 'e.g.' | translate }} 1.0.0\"\n required\n />\n </c8y-form-group>\n\n <c8y-form-group>\n <div class=\"legend form-block m-t-40\" translate>Patch file</div>\n <c8y-file-picker [maxAllowedFiles]=\"1\" (onFilesPicked)=\"onFile($event)\" [fileUrlPopover]=\"textForFirmwareUrlPopover\">\n </c8y-file-picker>\n </c8y-form-group>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button\n title=\"{{ 'Cancel' | translate }}\"\n class=\"btn btn-default\"\n type=\"button\"\n (click)=\"cancel()\"\n [disabled]=\"saving\"\n translate\n >\n Cancel\n </button>\n <button\n title=\"{{ 'Add firmware patch' | translate }}\"\n class=\"btn btn-primary\"\n type=\"submit\"\n [ngClass]=\"{ 'btn-pending': saving }\"\n [disabled]=\"\n !firmwarePatchForm.form.valid ||\n firmwarePatchForm.form.pristine ||\n (!model.binary?.url && !model.binary?.file) ||\n saving\n \"\n translate\n >\n Add firmware patch\n </button>\n </div>\n </form>\n</div>\n"
136
137
  })
137
138
  ], AddFirmwarePatchModalComponent);
138
139
  return AddFirmwarePatchModalComponent;
139
140
  }());
140
141
  export { AddFirmwarePatchModalComponent };
141
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWZpcm13YXJlLXBhdGNoLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BjOHkvbmd4LWNvbXBvbmVudHMvcmVwb3NpdG9yeS8iLCJzb3VyY2VzIjpbImZpcm13YXJlL2FkZC1maXJtd2FyZS1wYXRjaC1tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQWtDLE1BQU0scUJBQXFCLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRzFFLE9BQU8sRUFDTCxZQUFZLEVBQ1osR0FBRyxFQUNILFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNYLEdBQUcsRUFDSixNQUFNLGdCQUFnQixDQUFDO0FBT3hCO0lBbUVFLHdDQUNVLEtBQWlCLEVBQ2pCLFVBQTZCLEVBQzdCLEtBQW1CO1FBSDdCLGlCQUlJO1FBSE0sVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQUM3QixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBckVuQixVQUFLLEdBQXFDLElBQUksWUFBWSxFQUFzQixDQUFDO1FBSzNGLFVBQUssR0FBZTtZQUNsQixRQUFRLEVBQUUsU0FBUztZQUNuQixVQUFVLEVBQUUs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SSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUc7Z0JBQ2xCLElBQUksRUFBRSxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUk7YUFDbkMsQ0FBQztZQUNGLE9BQU87U0FDUjthQUFNO1lBQ0wsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUc7Z0JBQ2xCLElBQUksRUFBRSxTQUFTO2dCQUNmLEdBQUcsRUFBRSxTQUFTO2FBQ2YsQ0FBQztTQUNIO0lBQ0gsQ0FBQzs7Z0JBNURnQixVQUFVO2dCQUNMLGlCQUFpQjtnQkFDdEIsWUFBWTs7SUFyRW5CO1FBQVQsTUFBTSxFQUFFO2lFQUFrRjtJQUVqRDtRQUF6QyxTQUFTLENBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDO29FQUErQjtJQUNyQjtRQUFsRCxTQUFTLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUM7Z0VBQWM7SUFKckQsOEJBQThCO1FBSjFDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSx3Q0FBd0M7WUFDbEQsb3NKQUFzRDtTQUN2RCxDQUFDO09BQ1csOEJBQThCLENBaUkxQztJQUFELHFDQUFDO0NBQUEsQUFqSUQsSUFpSUM7U0FqSVksOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCc01vZGFsUmVmIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBSZXBvc2l0b3J5U2VydmljZSB9IGZyb20gJy4uL3JlcG9zaXRvcnkuc2VydmljZSc7XG5pbXBvcnQgeyBSZXBvc2l0b3J5VHlwZSwgTW9kYWxNb2RlbCwgUmVwb3NpdG9yeUNhdGVnb3J5IH0gZnJvbSAnLi4vcmVwb3NpdG9yeS5tb2RlbCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UsIGdldHRleHQgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IElNYW5hZ2VkT2JqZWN0LCBJUmVzdWx0TGlzdCB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IGlzVW5kZWZpbmVkIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgb2YsIGZyb20sIHBpcGUsIG1lcmdlLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCc0Ryb3Bkb3duRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9kcm9wZG93bic7XG5pbXBvcnQgeyBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBkZWJvdW5jZVRpbWUsXG4gIHRhcCxcbiAgc3dpdGNoTWFwLFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgc2hhcmVSZXBsYXksXG4gIG1hcFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBQaWNrZWRGaWxlcyB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktYWRkLWZpcm13YXJlLXBhdGNoLW1vZGFsLmNvbXBvbmVudCcsXG4gIHRlbXBsYXRlVXJsOiAnYWRkLWZpcm13YXJlLXBhdGNoLW1vZGFsLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBZGRGaXJtd2FyZVBhdGNoTW9kYWxDb21wb25lbnQge1xuICBAT3V0cHV0KCkgc2F2ZWQ6IEV2ZW50RW1pdHRlcjxSZXBvc2l0b3J5Q2F0ZWdvcnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZXBvc2l0b3J5Q2F0ZWdvcnk+KCk7XG5cbiAgQFZpZXdDaGlsZCgnZHJvcGRvd24nLCB7IHN0YXRpYzogZmFsc2UgfSkgZHJvcGRvd246IEJzRHJvcGRvd25EaXJlY3RpdmU7XG4gIEBWaWV3Q2hpbGQoJ2Zpcm13YXJlUGF0Y2hGb3JtJywgeyBzdGF0aWM6IGZhbHNlIH0pIGZvcm06IE5nRm9ybTtcblxuICBtb2RlbDogTW9kYWxNb2RlbCA9IHtcbiAgICBzZWxlY3RlZDogdW5kZWZpbmVkLFxuICAgIGRlcGVuZGVuY3k6IG51bGwsXG4gICAgcGF0Y2hWZXJzaW9uOiB1bmRlZmluZWQsXG4gICAgYmluYXJ5OiB7XG4gICAgICBmaWxlOiB1bmRlZmluZWQsXG4gICAgICB1cmw6IHVuZGVmaW5lZFxuICAgIH1cbiAgfTtcblxuICBmaXJtd2FyZUlucHV0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIGZpcm13YXJlcyQ6IE9ic2VydmFibGU8SVJlc3VsdExpc3Q8SU1hbmFnZWRPYmplY3Q+PiA9IHRoaXMuZmlybXdhcmVJbnB1dCQucGlwZShcbiAgICBkZWJvdW5jZVRpbWUoMzAwKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHN3aXRjaE1hcChzZWFyY2hTdHIgPT5cbiAgICAgIGZyb20oXG4gICAgICAgIHRoaXMucmVwb3NpdG9yeS5saXN0UmVwb3NpdG9yeUVudHJpZXMoUmVwb3NpdG9yeVR5cGUuRklSTVdBUkUsIHtcbiAgICAgICAgICBwYXJ0aWFsTmFtZTogc2VhcmNoU3RyLFxuICAgICAgICAgIHNraXBMZWdhY3k6IHRydWVcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG4gIGZpcm13YXJlU2VsZWN0ZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQYXJ0aWFsPFJlcG9zaXRvcnlDYXRlZ29yeT4+KG51bGwpO1xuICBwYXRjaERlcGVuZGVuY3lJbnB1dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuXG4gIHNhdmluZyA9IGZhbHNlO1xuICBmaXJtd2FyZVByZXNlbGVjdGVkOiBib29sZWFuID0gZmFsc2U7XG4gIGJhc2VWZXJzaW9ucyQ6IE9ic2VydmFibGU8SVJlc3VsdExpc3Q8SU1hbmFnZWRPYmplY3Q+PiA9IG1lcmdlKFxuICAgIHRoaXMuZmlybXdhcmVJbnB1dCQucGlwZShcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIHRoaXMubW9kZWwuZGVwZW5kZW5jeSA9IG51bGw7XG4gICAgICAgIGlmICh0aGlzLmZvcm0pIHtcbiAgICAgICAgICB0aGlzLmZvcm0uZm9ybS5nZXQoJ3BhdGNoRGVwZW5kZW5jeScpLnJlc2V0KCk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IG9mKG51bGwpKVxuICAgICksXG4gICAgdGhpcy5maXJtd2FyZVNlbGVjdGVkJFxuICApLnBpcGUoXG4gICAgc3dpdGNoTWFwKHNlbGVjdGVkRmlybXdhcmUgPT5cbiAgICAgIHNlbGVjdGVkRmlybXdhcmUgPyB0aGlzLnJlcG9zaXRvcnkubGlzdEJhc2VWZXJzaW9ucyhzZWxlY3RlZEZpcm13YXJlKSA6IG9mKG51bGwpXG4gICAgKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuICBiYXNlVmVyc2lvbnNGaWx0ZXJQaXBlID0gcGlwZShcbiAgICBzd2l0Y2hNYXAoKGRhdGE6IFtdKSA9PlxuICAgICAgdGhpcy5wYXRjaERlcGVuZGVuY3lJbnB1dCQucGlwZShcbiAgICAgICAgbWFwKHBhcnRpYWxWZXJzaW9uID0+XG4gICAgICAgICAgZGF0YS5maWx0ZXIoKG1vOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZlcnNpb24gPSBtby5jOHlfRmlybXdhcmUudmVyc2lvbi50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgcGFydGlhbFZlcnNpb24ubGVuZ3RoID09PSAwIHx8IHZlcnNpb24uaW5kZXhPZihwYXJ0aWFsVmVyc2lvbi50b0xvd2VyQ2FzZSgpKSA+IC0xXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBtb2RhbDogQnNNb2RhbFJlZixcbiAgICBwcml2YXRlIHJlcG9zaXRvcnk6IFJlcG9zaXRvcnlTZXJ2aWNlLFxuICAgIHByaXZhdGUgYWxlcnQ6IEFsZXJ0U2VydmljZVxuICApIHt9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXRJbml0aWFsU3RhdGUoKTtcbiAgfVxuXG4gIHNldEluaXRpYWxTdGF0ZSgpIHtcbiAgICBpZiAodGhpcy5tb2RlbC5zZWxlY3RlZCkge1xuICAgICAgdGhpcy5maXJtd2FyZVByZXNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuZmlybXdhcmVTZWxlY3RlZCQubmV4dCh0aGlzLm1vZGVsLnNlbGVjdGVkKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBzYXZlKCkge1xuICAgIHRoaXMuc2F2aW5nID0gdHJ1ZTtcbiAgICB0aGlzLnJlcG9zaXRvcnlcbiAgICAgIC5jcmVhdGUodGhpcy5tb2RlbCwgUmVwb3NpdG9yeVR5cGUuRklSTVdBUkUpXG4gICAgICAudGhlbihzYXZlZEZpcm13YXJlID0+IHtcbiAgICAgICAgdGhpcy5zdWNjZXNzTXNnKCk7XG4gICAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2F2ZWQubmV4dChzYXZlZEZpcm13YXJlKTtcbiAgICAgICAgdGhpcy5jYW5jZWwoKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goZSA9PiB7XG4gICAgICAgIHRoaXMuc2F2aW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2F2ZWQuZXJyb3IoZSk7XG4gICAgICAgIHRoaXMuY2FuY2VsKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHN1Y2Nlc3NNc2coKSB7XG4gICAgY29uc3QgbXNnID0gZ2V0dGV4dCgnRmlybXdhcmUgcGF0Y2ggYWRkZWQuJyk7XG4gICAgdGhpcy5hbGVydC5zdWNjZXNzKG1zZyk7XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy5tb2RhbC5oaWRlKCk7XG4gICAgdGhpcy5zYXZlZC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgb25GaWxlKGRyb3BwZWQ6IFBpY2tlZEZpbGVzKSB7XG4gICAgaWYgKCFpc1VuZGVmaW5lZChkcm9wcGVkLnVybCkpIHtcbiAgICAgIHRoaXMubW9kZWwuYmluYXJ5ID0ge1xuICAgICAgICB1cmw6IGRyb3BwZWQudXJsXG4gICAgICB9O1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSBpZiAoIWlzVW5kZWZpbmVkKGRyb3BwZWQuZHJvcHBlZEZpbGVzKSkge1xuICAgICAgdGhpcy5tb2RlbC5iaW5hcnkgPSB7XG4gICAgICAgIGZpbGU6IGRyb3BwZWQuZHJvcHBlZEZpbGVzWzBdLmZpbGVcbiAgICAgIH07XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubW9kZWwuYmluYXJ5ID0ge1xuICAgICAgICBmaWxlOiB1bmRlZmluZWQsXG4gICAgICAgIHVybDogdW5kZWZpbmVkXG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuIl19
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWZpcm13YXJlLXBhdGNoLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BjOHkvbmd4LWNvbXBvbmVudHMvcmVwb3NpdG9yeS8iLCJzb3VyY2VzIjpbImZpcm13YXJlL2FkZC1maXJtd2FyZS1wYXRjaC1tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQWtDLE1BQU0scUJBQXFCLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRzFFLE9BQU8sRUFDTCxZQUFZLEVBQ1osR0FBRyxFQUNILFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsV0FBVyxFQUNYLEdBQUcsRUFDSixNQUFNLGdCQUFnQixDQUFDO0FBT3hCO0lBd0VFLHdDQUNVLEtBQWlCLEVBQ2pCLFVBQTZCLEVBQzdCLEtBQW1CO1FBSDdCLGlCQUlJO1FBSE0sVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixlQUFVLEdBQVYsVUFBVSxDQUFtQjtRQUM3QixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBMUVuQixVQUFLLEdBQXFDLElBQUksWUFBWSxFQUFzQixDQUFDO1FBSTNGLDhCQUF5QixHQUFXLE9BQU8sQ0FBQyw2TEFJM0MsQ0FBQyxDQUFDO1FBRUgsVUFB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Q0FBQyxHQUFHO2FBQ2pCLENBQUM7WUFDRixPQUFPO1NBQ1I7YUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRztnQkFDbEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSTthQUNuQyxDQUFDO1lBQ0YsT0FBTztTQUNSO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRztnQkFDbEIsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsR0FBRyxFQUFFLFNBQVM7YUFDZixDQUFDO1NBQ0g7SUFDSCxDQUFDOztnQkE1RGdCLFVBQVU7Z0JBQ0wsaUJBQWlCO2dCQUN0QixZQUFZOztJQTFFbkI7UUFBVCxNQUFNLEVBQUU7aUVBQWtGO0lBRWpEO1FBQXpDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUM7b0VBQStCO0lBQ3JCO1FBQWxELFNBQVMsQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQztnRUFBYztJQUpyRCw4QkFBOEI7UUFKMUMsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLHdDQUF3QztZQUNsRCwyeUpBQXNEO1NBQ3ZELENBQUM7T0FDVyw4QkFBOEIsQ0FzSTFDO0lBQUQscUNBQUM7Q0FBQSxBQXRJRCxJQXNJQztTQXRJWSw4QkFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJzTW9kYWxSZWYgfSBmcm9tICduZ3gtYm9vdHN0cmFwL21vZGFsJztcbmltcG9ydCB7IFJlcG9zaXRvcnlTZXJ2aWNlIH0gZnJvbSAnLi4vcmVwb3NpdG9yeS5zZXJ2aWNlJztcbmltcG9ydCB7IFJlcG9zaXRvcnlUeXBlLCBNb2RhbE1vZGVsLCBSZXBvc2l0b3J5Q2F0ZWdvcnkgfSBmcm9tICcuLi9yZXBvc2l0b3J5Lm1vZGVsJztcbmltcG9ydCB7IEFsZXJ0U2VydmljZSwgZ2V0dGV4dCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgSU1hbmFnZWRPYmplY3QsIElSZXN1bHRMaXN0IH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgaXNVbmRlZmluZWQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBvZiwgZnJvbSwgcGlwZSwgbWVyZ2UsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJzRHJvcGRvd25EaXJlY3RpdmUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL2Ryb3Bkb3duJztcbmltcG9ydCB7IE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIGRlYm91bmNlVGltZSxcbiAgdGFwLFxuICBzd2l0Y2hNYXAsXG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICBzaGFyZVJlcGxheSxcbiAgbWFwXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFBpY2tlZEZpbGVzIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1hZGQtZmlybXdhcmUtcGF0Y2gtbW9kYWwuY29tcG9uZW50JyxcbiAgdGVtcGxhdGVVcmw6ICdhZGQtZmlybXdhcmUtcGF0Y2gtbW9kYWwuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEFkZEZpcm13YXJlUGF0Y2hNb2RhbENvbXBvbmVudCB7XG4gIEBPdXRwdXQoKSBzYXZlZDogRXZlbnRFbWl0dGVyPFJlcG9zaXRvcnlDYXRlZ29yeT4gPSBuZXcgRXZlbnRFbWl0dGVyPFJlcG9zaXRvcnlDYXRlZ29yeT4oKTtcblxuICBAVmlld0NoaWxkKCdkcm9wZG93bicsIHsgc3RhdGljOiBmYWxzZSB9KSBkcm9wZG93bjogQnNEcm9wZG93bkRpcmVjdGl2ZTtcbiAgQFZpZXdDaGlsZCgnZmlybXdhcmVQYXRjaEZvcm0nLCB7IHN0YXRpYzogZmFsc2UgfSkgZm9ybTogTmdGb3JtO1xuICB0ZXh0Rm9yRmlybXdhcmVVcmxQb3BvdmVyOiBzdHJpbmcgPSBnZXR0ZXh0KGBQYXRoIGZvciBiaW5hcmllcyBjYW4gdmFyeSBkZXBlbmRpbmcgb24gZGV2aWNlIGFnZW50IGltcGxlbWVudGF0aW9uLCBlLmcuOlxuICAgIC9maXJtd2FyZS9iaW5hcmllcy9maXJtd2FyZTEuYmluXG4gICAgaHR0cHM6Ly9maXJtd2FyZS9iaW5hcnkvMTIzXG4gICAgZnRwOi8vZmlybXdhcmUvYmluYXJ5LzEyMy50YXIuZ3pcbiAgYCk7XG5cbiAgbW9kZWw6IE1vZGFsTW9kZWwgPSB7XG4gICAgc2VsZWN0ZWQ6IHVuZGVmaW5lZCxcbiAgICBkZXBlbmRlbmN5OiBudWxsLFxuICAgIHBhdGNoVmVyc2lvbjogdW5kZWZpbmVkLFxuICAgIGJpbmFyeToge1xuICAgICAgZmlsZTogdW5kZWZpbmVkLFxuICAgICAgdXJsOiB1bmRlZmluZWRcbiAgICB9XG4gIH07XG5cbiAgZmlybXdhcmVJbnB1dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBmaXJtd2FyZXMkOiBPYnNlcnZhYmxlPElSZXN1bHRMaXN0PElNYW5hZ2VkT2JqZWN0Pj4gPSB0aGlzLmZpcm13YXJlSW5wdXQkLnBpcGUoXG4gICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBzd2l0Y2hNYXAoc2VhcmNoU3RyID0+XG4gICAgICBmcm9tKFxuICAgICAgICB0aGlzLnJlcG9zaXRvcnkubGlzdFJlcG9zaXRvcnlFbnRyaWVzKFJlcG9zaXRvcnlUeXBlLkZJUk1XQVJFLCB7XG4gICAgICAgICAgcGFydGlhbE5hbWU6IHNlYXJjaFN0cixcbiAgICAgICAgICBza2lwTGVnYWN5OiB0cnVlXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuICBmaXJtd2FyZVNlbGVjdGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UGFydGlhbDxSZXBvc2l0b3J5Q2F0ZWdvcnk+PihudWxsKTtcbiAgcGF0Y2hEZXBlbmRlbmN5SW5wdXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcblxuICBzYXZpbmcgPSBmYWxzZTtcbiAgZmlybXdhcmVQcmVzZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBiYXNlVmVyc2lvbnMkOiBPYnNlcnZhYmxlPElSZXN1bHRMaXN0PElNYW5hZ2VkT2JqZWN0Pj4gPSBtZXJnZShcbiAgICB0aGlzLmZpcm13YXJlSW5wdXQkLnBpcGUoXG4gICAgICB0YXAoKCkgPT4ge1xuICAgICAgICB0aGlzLm1vZGVsLmRlcGVuZGVuY3kgPSBudWxsO1xuICAgICAgICBpZiAodGhpcy5mb3JtKSB7XG4gICAgICAgICAgdGhpcy5mb3JtLmZvcm0uZ2V0KCdwYXRjaERlcGVuZGVuY3knKS5yZXNldCgpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBvZihudWxsKSlcbiAgICApLFxuICAgIHRoaXMuZmlybXdhcmVTZWxlY3RlZCRcbiAgKS5waXBlKFxuICAgIHN3aXRjaE1hcChzZWxlY3RlZEZpcm13YXJlID0+XG4gICAgICBzZWxlY3RlZEZpcm13YXJlID8gdGhpcy5yZXBvc2l0b3J5Lmxpc3RCYXNlVmVyc2lvbnMoc2VsZWN0ZWRGaXJtd2FyZSkgOiBvZihudWxsKVxuICAgICksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgYmFzZVZlcnNpb25zRmlsdGVyUGlwZSA9IHBpcGUoXG4gICAgc3dpdGNoTWFwKChkYXRhOiBbXSkgPT5cbiAgICAgIHRoaXMucGF0Y2hEZXBlbmRlbmN5SW5wdXQkLnBpcGUoXG4gICAgICAgIG1hcChwYXJ0aWFsVmVyc2lvbiA9PlxuICAgICAgICAgIGRhdGEuZmlsdGVyKChtbzogYW55KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2ZXJzaW9uID0gbW8uYzh5X0Zpcm13YXJlLnZlcnNpb24udG9Mb3dlckNhc2UoKTtcbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIHBhcnRpYWxWZXJzaW9uLmxlbmd0aCA9PT0gMCB8fCB2ZXJzaW9uLmluZGV4T2YocGFydGlhbFZlcnNpb24udG9Mb3dlckNhc2UoKSkgPiAtMVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICApXG4gICAgKVxuICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbW9kYWw6IEJzTW9kYWxSZWYsXG4gICAgcHJpdmF0ZSByZXBvc2l0b3J5OiBSZXBvc2l0b3J5U2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0OiBBbGVydFNlcnZpY2VcbiAgKSB7fVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2V0SW5pdGlhbFN0YXRlKCk7XG4gIH1cblxuICBzZXRJbml0aWFsU3RhdGUoKSB7XG4gICAgaWYgKHRoaXMubW9kZWwuc2VsZWN0ZWQpIHtcbiAgICAgIHRoaXMuZmlybXdhcmVQcmVzZWxlY3RlZCA9IHRydWU7XG4gICAgICB0aGlzLmZpcm13YXJlU2VsZWN0ZWQkLm5leHQodGhpcy5tb2RlbC5zZWxlY3RlZCk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgc2F2ZSgpIHtcbiAgICB0aGlzLnNhdmluZyA9IHRydWU7XG4gICAgdGhpcy5yZXBvc2l0b3J5XG4gICAgICAuY3JlYXRlKHRoaXMubW9kZWwsIFJlcG9zaXRvcnlUeXBlLkZJUk1XQVJFKVxuICAgICAgLnRoZW4oc2F2ZWRGaXJtd2FyZSA9PiB7XG4gICAgICAgIHRoaXMuc3VjY2Vzc01zZygpO1xuICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNhdmVkLm5leHQoc2F2ZWRGaXJtd2FyZSk7XG4gICAgICAgIHRoaXMuY2FuY2VsKCk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKGUgPT4ge1xuICAgICAgICB0aGlzLnNhdmluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNhdmVkLmVycm9yKGUpO1xuICAgICAgICB0aGlzLmNhbmNlbCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBzdWNjZXNzTXNnKCkge1xuICAgIGNvbnN0IG1zZyA9IGdldHRleHQoJ0Zpcm13YXJlIHBhdGNoIGFkZGVkLicpO1xuICAgIHRoaXMuYWxlcnQuc3VjY2Vzcyhtc2cpO1xuICB9XG5cbiAgY2FuY2VsKCkge1xuICAgIHRoaXMubW9kYWwuaGlkZSgpO1xuICAgIHRoaXMuc2F2ZWQuY29tcGxldGUoKTtcbiAgfVxuXG4gIG9uRmlsZShkcm9wcGVkOiBQaWNrZWRGaWxlcykge1xuICAgIGlmICghaXNVbmRlZmluZWQoZHJvcHBlZC51cmwpKSB7XG4gICAgICB0aGlzLm1vZGVsLmJpbmFyeSA9IHtcbiAgICAgICAgdXJsOiBkcm9wcGVkLnVybFxuICAgICAgfTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKCFpc1VuZGVmaW5lZChkcm9wcGVkLmRyb3BwZWRGaWxlcykpIHtcbiAgICAgIHRoaXMubW9kZWwuYmluYXJ5ID0ge1xuICAgICAgICBmaWxlOiBkcm9wcGVkLmRyb3BwZWRGaWxlc1swXS5maWxlXG4gICAgICB9O1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vZGVsLmJpbmFyeSA9IHtcbiAgICAgICAgZmlsZTogdW5kZWZpbmVkLFxuICAgICAgICB1cmw6IHVuZGVmaW5lZFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==