@gravitee/ui-particles-angular 14.1.4 → 14.1.5-renovate-angular-8be5abb

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 (128) hide show
  1. package/esm2022/gio-asciidoctor/gio-asciidoctor.component.mjs +3 -3
  2. package/esm2022/gio-asciidoctor/gio-asciidoctor.module.mjs +4 -4
  3. package/esm2022/gio-asciidoctor/gio-asciidoctor.service.mjs +3 -3
  4. package/esm2022/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.component.mjs +3 -3
  5. package/esm2022/gio-el/gio-el-editor/gio-el-editor.component.mjs +3 -3
  6. package/esm2022/gio-el/gio-el-editor/gio-el-field/gio-el-field.component.mjs +3 -3
  7. package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-boolean/gio-el-editor-type-boolean.component.mjs +3 -3
  8. package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-date/gio-el-editor-type-date.component.mjs +3 -3
  9. package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-number/gio-el-editor-type-number.component.mjs +3 -3
  10. package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-string/gio-el-editor-type-string.component.mjs +3 -3
  11. package/esm2022/lib/gio-avatar/gio-avatar.component.mjs +3 -3
  12. package/esm2022/lib/gio-avatar/gio-avatar.module.mjs +4 -4
  13. package/esm2022/lib/gio-banner/gio-banner.component.mjs +21 -21
  14. package/esm2022/lib/gio-banner/gio-banner.module.mjs +4 -4
  15. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb-item.directive.mjs +3 -3
  16. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb.component.mjs +3 -3
  17. package/esm2022/lib/gio-breadcrumb/gio-breadcrumb.module.mjs +4 -4
  18. package/esm2022/lib/gio-card-empty-state/gio-card-empty-state.component.mjs +3 -3
  19. package/esm2022/lib/gio-card-empty-state/gio-card-empty-state.module.mjs +4 -4
  20. package/esm2022/lib/gio-clipboard/gio-clipboard-copy-icon.component.mjs +3 -3
  21. package/esm2022/lib/gio-clipboard/gio-clipboard-copy-wrapper.component.mjs +3 -3
  22. package/esm2022/lib/gio-clipboard/gio-clipboard.base.component.mjs +3 -3
  23. package/esm2022/lib/gio-clipboard/gio-clipboard.module.mjs +4 -4
  24. package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.component.mjs +3 -3
  25. package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.module.mjs +4 -4
  26. package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.component.mjs +3 -3
  27. package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.module.mjs +4 -4
  28. package/esm2022/lib/gio-form-cron/gio-form-cron-hint.component.mjs +3 -3
  29. package/esm2022/lib/gio-form-cron/gio-form-cron-label.component.mjs +3 -3
  30. package/esm2022/lib/gio-form-cron/gio-form-cron.component.mjs +3 -3
  31. package/esm2022/lib/gio-form-cron/gio-form-cron.module.mjs +4 -4
  32. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-add-button/gio-form-file-picker-add-button.component.mjs +3 -3
  33. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-empty/gio-form-file-picker-empty.component.mjs +3 -3
  34. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-label/gio-form-file-picker-label.component.mjs +3 -3
  35. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.component.mjs +3 -3
  36. package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.module.mjs +4 -4
  37. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid-ignore.directive.mjs +3 -3
  38. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.directive.mjs +9 -9
  39. package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.module.mjs +4 -4
  40. package/esm2022/lib/gio-form-headers/gio-form-headers-label.component.mjs +3 -3
  41. package/esm2022/lib/gio-form-headers/gio-form-headers.component.mjs +3 -3
  42. package/esm2022/lib/gio-form-headers/gio-form-headers.module.mjs +4 -4
  43. package/esm2022/lib/gio-form-json-schema/gio-form-json-schema.component.mjs +3 -3
  44. package/esm2022/lib/gio-form-json-schema/gio-form-json-schema.module.mjs +4 -4
  45. package/esm2022/lib/gio-form-json-schema/gio-formly-json-schema.service.mjs +3 -3
  46. package/esm2022/lib/gio-form-json-schema/type-component/array-type.component.mjs +3 -3
  47. package/esm2022/lib/gio-form-json-schema/type-component/code-editor-type.component.mjs +3 -3
  48. package/esm2022/lib/gio-form-json-schema/type-component/cron-type.component.mjs +3 -3
  49. package/esm2022/lib/gio-form-json-schema/type-component/headers-type.component.mjs +3 -3
  50. package/esm2022/lib/gio-form-json-schema/type-component/multischema-type.component.mjs +3 -3
  51. package/esm2022/lib/gio-form-json-schema/type-component/null-type.component.mjs +3 -3
  52. package/esm2022/lib/gio-form-json-schema/type-component/object-type.component.mjs +3 -3
  53. package/esm2022/lib/gio-form-json-schema/type-component/toggle-type.component.mjs +3 -3
  54. package/esm2022/lib/gio-form-json-schema/wrappers/gio-banner-wrapper.component.mjs +3 -3
  55. package/esm2022/lib/gio-form-json-schema/wrappers/gio-password-eye.component.mjs +3 -3
  56. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card-content/gio-form-selection-inline-card-content.component.mjs +9 -9
  57. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card.component.mjs +3 -3
  58. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.component.mjs +3 -3
  59. package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.module.mjs +4 -4
  60. package/esm2022/lib/gio-form-slide-toggle/gio-form-label.directive.mjs +9 -9
  61. package/esm2022/lib/gio-form-slide-toggle/gio-form-slide-toggle.component.mjs +3 -3
  62. package/esm2022/lib/gio-form-slide-toggle/gio-form-slide-toggle.module.mjs +4 -4
  63. package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.component.mjs +3 -3
  64. package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.module.mjs +4 -4
  65. package/esm2022/lib/gio-icons/gio-icons.module.mjs +4 -4
  66. package/esm2022/lib/gio-license/gio-license-dialog/gio-license-dialog.component.mjs +3 -3
  67. package/esm2022/lib/gio-license/gio-license-dialog/gio-license-dialog.module.mjs +4 -4
  68. package/esm2022/lib/gio-license/gio-license.directive.mjs +3 -3
  69. package/esm2022/lib/gio-license/gio-license.module.mjs +4 -4
  70. package/esm2022/lib/gio-license/gio-license.service.mjs +3 -3
  71. package/esm2022/lib/gio-license/gio-license.testing.module.mjs +4 -4
  72. package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.component.mjs +3 -3
  73. package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.module.mjs +4 -4
  74. package/esm2022/lib/gio-loader/gio-loader.component.mjs +3 -3
  75. package/esm2022/lib/gio-loader/gio-loader.module.mjs +4 -4
  76. package/esm2022/lib/gio-mat-config/gio-mat-config.module.mjs +4 -4
  77. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor-form-field.directive.mjs +3 -3
  78. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.component.mjs +5 -8
  79. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.module.mjs +5 -17
  80. package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.testing.component.mjs +3 -3
  81. package/esm2022/lib/gio-monaco-editor/services/gio-language-el.service.mjs +8 -5
  82. package/esm2022/lib/gio-monaco-editor/services/gio-language-json.service.mjs +8 -5
  83. package/esm2022/lib/gio-monaco-editor/services/gio-monaco-editor.service.mjs +8 -5
  84. package/esm2022/lib/gio-pipe/gio.pipe.module.mjs +4 -4
  85. package/esm2022/lib/gio-pipe/safe.pipe.mjs +3 -3
  86. package/esm2022/lib/gio-prismjs/gio-prismjs.service.mjs +3 -3
  87. package/esm2022/lib/gio-save-bar/gio-save-bar.component.mjs +3 -3
  88. package/esm2022/lib/gio-save-bar/gio-save-bar.module.mjs +4 -4
  89. package/esm2022/lib/oem-theme/gio-menu/gio-menu-footer/gio-menu-footer.component.mjs +3 -3
  90. package/esm2022/lib/oem-theme/gio-menu/gio-menu-header/gio-menu-header.component.mjs +3 -3
  91. package/esm2022/lib/oem-theme/gio-menu/gio-menu-item/gio-menu-item.component.mjs +3 -3
  92. package/esm2022/lib/oem-theme/gio-menu/gio-menu-license-expiration-notification/gio-menu-license-expiration-notification.component.mjs +3 -3
  93. package/esm2022/lib/oem-theme/gio-menu/gio-menu-list/gio-menu-list.component.mjs +3 -3
  94. package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.component.mjs +3 -3
  95. package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.service.mjs +3 -3
  96. package/esm2022/lib/oem-theme/gio-menu/gio-menu-selector/gio-menu-selector.component.mjs +3 -3
  97. package/esm2022/lib/oem-theme/gio-menu/gio-menu.component.mjs +3 -3
  98. package/esm2022/lib/oem-theme/gio-menu/gio-menu.module.mjs +4 -4
  99. package/esm2022/lib/oem-theme/gio-menu/gio-menu.service.mjs +3 -3
  100. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu-group/gio-submenu-group.component.mjs +3 -3
  101. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu-item/gio-submenu-item.component.mjs +3 -3
  102. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu.component.mjs +6 -6
  103. package/esm2022/lib/oem-theme/gio-submenu/gio-submenu.module.mjs +4 -4
  104. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-content/gio-top-bar-content.component.mjs +3 -3
  105. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.component.mjs +3 -3
  106. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.module.mjs +4 -4
  107. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.component.mjs +3 -3
  108. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.module.mjs +4 -4
  109. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar.component.mjs +3 -3
  110. package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar.module.mjs +4 -4
  111. package/fesm2022/gravitee-ui-particles-angular-gio-asciidoctor.mjs +10 -10
  112. package/fesm2022/gravitee-ui-particles-angular-gio-el.mjs +21 -21
  113. package/fesm2022/gravitee-ui-particles-angular.mjs +382 -382
  114. package/fesm2022/gravitee-ui-particles-angular.mjs.map +1 -1
  115. package/gio-el/gio-el-editor/gio-el-editor.harness.d.ts +1 -1
  116. package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type.harness.d.ts +1 -1
  117. package/lib/gio-form-cron/gio-form-cron.harness.d.ts +2 -2
  118. package/lib/gio-form-file-picker/gio-form-file-picker.component.harness.d.ts +4 -4
  119. package/lib/gio-form-selection-inline/gio-form-selection-inline.harness.d.ts +2 -2
  120. package/lib/gio-form-tags-input/gio-form-tags-input.harness.d.ts +2 -2
  121. package/lib/gio-license-expiration-notification/gio-license-expiration-notification.harness.d.ts +4 -4
  122. package/lib/gio-monaco-editor/gio-monaco-editor.harness.d.ts +1 -1
  123. package/lib/gio-monaco-editor/gio-monaco-editor.module.d.ts +2 -5
  124. package/lib/gio-save-bar/gio-save-bar.harness.d.ts +2 -2
  125. package/package.json +1 -1
  126. package/src/lib/public-api.scss +1 -1
  127. package/testing/harnesses/div.harness.d.ts +3 -3
  128. package/testing/harnesses/span.harness.d.ts +3 -3
@@ -47,10 +47,10 @@ export class GioFormSlideToggleComponent {
47
47
  this.unsubscribe$.next();
48
48
  this.unsubscribe$.complete();
49
49
  }
50
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormSlideToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
51
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: GioFormSlideToggleComponent, isStandalone: false, selector: "gio-form-slide-toggle", inputs: { appearance: "appearance" }, queries: [{ propertyName: "innerMatSlideToggle", first: true, predicate: MatSlideToggle, descendants: true }, { propertyName: "innerFormControlName", first: true, predicate: NgControl, descendants: true }], ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"form-slide-toggle\" [class.appearance-fill]=\"appearance === 'fill'\" [class.appearance-outline]=\"appearance === 'outline'\">\n <div class=\"form-slide-toggle__icon\">\n <ng-content select=\"[gioFormPrefix]\"></ng-content>\n </div>\n <div class=\"form-slide-toggle__field\">\n <div class=\"form-slide-toggle__field__mat-slide-toggle\">\n <ng-content select=\"[gioFormSlideToggle]\"></ng-content>\n </div>\n <div class=\"form-slide-toggle__field__text\" [class.disabled]=\"disabled\">\n <span class=\"form-slide-toggle__field__text__label-1\">\n <ng-content select=\"gio-form-label\"></ng-content>\n </span>\n <span class=\"form-slide-toggle__field__text__label-2\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:inline-block;padding:4px 0}.form-slide-toggle{display:flex;min-height:60px;align-items:center;padding-left:12px}.form-slide-toggle__icon{display:flex;padding:12px 12px 12px 0}.form-slide-toggle__icon:empty{display:none}.form-slide-toggle__field{display:flex;min-width:180px;flex:1 1 auto;flex-direction:row;align-items:center;justify-content:flex-start}.form-slide-toggle__field__text{display:flex;flex:1 1 100%;flex-direction:column;padding-left:14px}.form-slide-toggle__field__text__label-1{font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.form-slide-toggle__field__text__label-2{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.form-slide-toggle__field__text.disabled{color:#00000061}\n"] }); }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormSlideToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
51
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: GioFormSlideToggleComponent, isStandalone: false, selector: "gio-form-slide-toggle", inputs: { appearance: "appearance" }, queries: [{ propertyName: "innerMatSlideToggle", first: true, predicate: MatSlideToggle, descendants: true }, { propertyName: "innerFormControlName", first: true, predicate: NgControl, descendants: true }], ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"form-slide-toggle\" [class.appearance-fill]=\"appearance === 'fill'\" [class.appearance-outline]=\"appearance === 'outline'\">\n <div class=\"form-slide-toggle__icon\">\n <ng-content select=\"[gioFormPrefix]\"></ng-content>\n </div>\n <div class=\"form-slide-toggle__field\">\n <div class=\"form-slide-toggle__field__mat-slide-toggle\">\n <ng-content select=\"[gioFormSlideToggle]\"></ng-content>\n </div>\n <div class=\"form-slide-toggle__field__text\" [class.disabled]=\"disabled\">\n <span class=\"form-slide-toggle__field__text__label-1\">\n <ng-content select=\"gio-form-label\"></ng-content>\n </span>\n <span class=\"form-slide-toggle__field__text__label-2\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:inline-block;padding:4px 0}.form-slide-toggle{display:flex;min-height:60px;align-items:center;padding-left:12px}.form-slide-toggle__icon{display:flex;padding:12px 12px 12px 0}.form-slide-toggle__icon:empty{display:none}.form-slide-toggle__field{display:flex;min-width:180px;flex:1 1 auto;flex-direction:row;align-items:center;justify-content:flex-start}.form-slide-toggle__field__text{display:flex;flex:1 1 100%;flex-direction:column;padding-left:14px}.form-slide-toggle__field__text__label-1{font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.form-slide-toggle__field__text__label-2{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.form-slide-toggle__field__text.disabled{color:#00000061}\n"] }); }
52
52
  }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormSlideToggleComponent, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormSlideToggleComponent, decorators: [{
54
54
  type: Component,
55
55
  args: [{ selector: 'gio-form-slide-toggle', standalone: false, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"form-slide-toggle\" [class.appearance-fill]=\"appearance === 'fill'\" [class.appearance-outline]=\"appearance === 'outline'\">\n <div class=\"form-slide-toggle__icon\">\n <ng-content select=\"[gioFormPrefix]\"></ng-content>\n </div>\n <div class=\"form-slide-toggle__field\">\n <div class=\"form-slide-toggle__field__mat-slide-toggle\">\n <ng-content select=\"[gioFormSlideToggle]\"></ng-content>\n </div>\n <div class=\"form-slide-toggle__field__text\" [class.disabled]=\"disabled\">\n <span class=\"form-slide-toggle__field__text__label-1\">\n <ng-content select=\"gio-form-label\"></ng-content>\n </span>\n <span class=\"form-slide-toggle__field__text__label-2\">\n <ng-content></ng-content>\n </span>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}:host{display:inline-block;padding:4px 0}.form-slide-toggle{display:flex;min-height:60px;align-items:center;padding-left:12px}.form-slide-toggle__icon{display:flex;padding:12px 12px 12px 0}.form-slide-toggle__icon:empty{display:none}.form-slide-toggle__field{display:flex;min-width:180px;flex:1 1 auto;flex-direction:row;align-items:center;justify-content:flex-start}.form-slide-toggle__field__text{display:flex;flex:1 1 100%;flex-direction:column;padding-left:14px}.form-slide-toggle__field__text__label-1{font-size:14px;font-weight:500;line-height:20px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.form-slide-toggle__field__text__label-2{font-size:14px;font-weight:400;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}.form-slide-toggle__field__text.disabled{color:#00000061}\n"] }]
56
56
  }], propDecorators: { appearance: [{
@@ -19,11 +19,11 @@ import { GioFormLabelComponent, GioFormPrefixDirective, GioFormSlideToggleDirect
19
19
  import { GioFormSlideToggleComponent } from './gio-form-slide-toggle.component';
20
20
  import * as i0 from "@angular/core";
21
21
  export class GioFormSlideToggleModule {
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormSlideToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
23
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioFormSlideToggleModule, declarations: [GioFormSlideToggleComponent, GioFormLabelComponent, GioFormPrefixDirective, GioFormSlideToggleDirective], imports: [CommonModule], exports: [GioFormSlideToggleComponent, GioFormLabelComponent, GioFormPrefixDirective, GioFormSlideToggleDirective] }); }
24
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormSlideToggleModule, imports: [CommonModule] }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormSlideToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
23
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioFormSlideToggleModule, declarations: [GioFormSlideToggleComponent, GioFormLabelComponent, GioFormPrefixDirective, GioFormSlideToggleDirective], imports: [CommonModule], exports: [GioFormSlideToggleComponent, GioFormLabelComponent, GioFormPrefixDirective, GioFormSlideToggleDirective] }); }
24
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormSlideToggleModule, imports: [CommonModule] }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormSlideToggleModule, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormSlideToggleModule, decorators: [{
27
27
  type: NgModule,
28
28
  args: [{
29
29
  imports: [CommonModule],
@@ -246,15 +246,15 @@ export class GioFormTagsInputComponent {
246
246
  this.changeDetectorRef.detectChanges();
247
247
  }
248
248
  }
249
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormTagsInputComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: i0.ElementRef }, { token: i2.FocusMonitor }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
250
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: GioFormTagsInputComponent, isStandalone: false, selector: "gio-form-tags-input", inputs: { ariaLabel: ["aria-label", "ariaLabel"], addOnBlur: "addOnBlur", tagValidationHook: "tagValidationHook", autocompleteOptions: "autocompleteOptions", displayValueWith: "displayValueWith", useAutocompleteOptionValueOnly: "useAutocompleteOptionValueOnly", placeholder: "placeholder", required: "required", disabled: "disabled" }, host: { properties: { "id": "this.id", "class.floating": "this.shouldLabelFloat", "attr.aria-describedby": "this.describedBy" } }, providers: [
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormTagsInputComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: i0.ElementRef }, { token: i2.FocusMonitor }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
250
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: GioFormTagsInputComponent, isStandalone: false, selector: "gio-form-tags-input", inputs: { ariaLabel: ["aria-label", "ariaLabel"], addOnBlur: "addOnBlur", tagValidationHook: "tagValidationHook", autocompleteOptions: "autocompleteOptions", displayValueWith: "displayValueWith", useAutocompleteOptionValueOnly: "useAutocompleteOptionValueOnly", placeholder: "placeholder", required: "required", disabled: "disabled" }, host: { properties: { "id": "this.id", "class.floating": "this.shouldLabelFloat", "attr.aria-describedby": "this.describedBy" } }, providers: [
251
251
  {
252
252
  provide: MatFormFieldControl,
253
253
  useExisting: GioFormTagsInputComponent,
254
254
  },
255
255
  ], viewQueries: [{ propertyName: "tagInput", first: true, predicate: ["tagInput"], descendants: true }], ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<mat-chip-grid #tagChipList [attr.aria-label]=\"ariaLabel\" multiple [disabled]=\"disabled\">\n <mat-chip-row *ngFor=\"let tag of value\" [removable]=\"!disabled\" (removed)=\"removeChipToFormControl(tag)\" [disabled]=\"disabled\">\n {{ _displayValueWith ? (_displayValueWith(tag) | async) : tag }}\n <mat-icon matChipRemove>cancel</mat-icon>\n </mat-chip-row>\n <input\n #tagInput\n [matAutocompleteDisabled]=\"!_autocompleteOptions || disabled\"\n [matAutocomplete]=\"auto\"\n [placeholder]=\"placeholder\"\n [matChipInputFor]=\"tagChipList\"\n [matChipInputAddOnBlur]=\"addOnBlur\"\n (matChipInputTokenEnd)=\"onMatChipTokenEnd()\"\n />\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onAutocompleteSelect($event)\">\n <mat-option *ngIf=\"loading\" disabled id=\"loader\">\n <div class=\"loader-option\"><gio-loader></gio-loader></div>\n </mat-option>\n <mat-option *ngFor=\"let option of autocompleteFilteredOptions$ | async\" [value]=\"option.value\">\n {{ option.label }}\n </mat-option>\n </mat-autocomplete>\n</mat-chip-grid>\n", styles: ["::ng-deep gio-form-tags-input .mat-mdc-standard-chip{height:unset!important;min-height:var(--mdc-chip-container-height)}::ng-deep gio-form-tags-input .mat-mdc-standard-chip .mdc-evolution-chip__text-label{white-space:normal}.loader-option{display:flex}.loader-option gio-loader{width:24px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i4.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i4.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i7.GioLoaderComponent, selector: "gio-loader" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
256
256
  }
257
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormTagsInputComponent, decorators: [{
257
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormTagsInputComponent, decorators: [{
258
258
  type: Component,
259
259
  args: [{ selector: 'gio-form-tags-input', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
260
260
  {
@@ -26,8 +26,8 @@ import { GioLoaderModule } from '../gio-loader/gio-loader.module';
26
26
  import { GioFormTagsInputComponent } from './gio-form-tags-input.component';
27
27
  import * as i0 from "@angular/core";
28
28
  export class GioFormTagsInputModule {
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormTagsInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
30
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioFormTagsInputModule, declarations: [GioFormTagsInputComponent], imports: [CommonModule,
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormTagsInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
30
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioFormTagsInputModule, declarations: [GioFormTagsInputComponent], imports: [CommonModule,
31
31
  A11yModule,
32
32
  MatChipsModule,
33
33
  MatInputModule,
@@ -36,7 +36,7 @@ export class GioFormTagsInputModule {
36
36
  MatAutocompleteModule,
37
37
  MatSelectModule,
38
38
  GioLoaderModule], exports: [GioFormTagsInputComponent] }); }
39
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormTagsInputModule, imports: [CommonModule,
39
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormTagsInputModule, imports: [CommonModule,
40
40
  A11yModule,
41
41
  MatChipsModule,
42
42
  MatInputModule,
@@ -46,7 +46,7 @@ export class GioFormTagsInputModule {
46
46
  MatSelectModule,
47
47
  GioLoaderModule] }); }
48
48
  }
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormTagsInputModule, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioFormTagsInputModule, decorators: [{
50
50
  type: NgModule,
51
51
  args: [{
52
52
  imports: [
@@ -23,11 +23,11 @@ export class GioIconsModule {
23
23
  constructor(matIconRegistry, sanitizer) {
24
24
  matIconRegistry.addSvgIconSetInNamespace('gio', sanitizer.bypassSecurityTrustResourceUrl('assets/gio-icons.svg'));
25
25
  }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioIconsModule, deps: [{ token: i1.MatIconRegistry }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.NgModule }); }
27
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioIconsModule, imports: [CommonModule, MatIconModule], exports: [MatIconModule] }); }
28
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioIconsModule, imports: [CommonModule, MatIconModule, MatIconModule] }); }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioIconsModule, deps: [{ token: i1.MatIconRegistry }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.NgModule }); }
27
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioIconsModule, imports: [CommonModule, MatIconModule], exports: [MatIconModule] }); }
28
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioIconsModule, imports: [CommonModule, MatIconModule, MatIconModule] }); }
29
29
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioIconsModule, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioIconsModule, decorators: [{
31
31
  type: NgModule,
32
32
  args: [{
33
33
  imports: [CommonModule, MatIconModule],
@@ -30,10 +30,10 @@ export class GioLicenseDialogComponent {
30
30
  onClose() {
31
31
  this.dialogRef.close();
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: GioLicenseDialogComponent, isStandalone: false, selector: "gio-license-dialog", ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-license-dialog__title\">\n <mat-icon class=\"gio-license-dialog__title__cancel\"></mat-icon>\n <button mat-icon-button [attr.aria-label]=\"'Close'\" (click)=\"onClose()\">\n <mat-icon class=\"gio-license-dialog__title__cancel\" svgIcon=\"gio:cancel\"> </mat-icon>\n </button>\n</div>\n\n<mat-dialog-content class=\"gio-license-dialog__content\">\n <img class=\"gio-license-dialog__content__image\" [src]=\"featureInfo.image\" [alt]=\"featureInfo.title || 'Unlock Gravitee Enterprise'\" />\n <h2 class=\"gio-license-dialog__content__title\" [innerHTML]=\"featureInfo.title || 'Unlock Gravitee Enterprise' | safe: 'html'\"></h2>\n <div class=\"gio-license-dialog__content__description\" [innerHTML]=\"featureInfo.description | safe: 'html'\"></div>\n <div class=\"gio-license-dialog__content__action\">\n <a class=\"gio-license-dialog__content__action__button\" mat-stroked-button color=\"accent\" target=\"_blank\" [href]=\"trialURL\">\n {{ featureInfo.trialButtonLabel || 'Request an enterprise license' }} <mat-icon svgIcon=\"gio:external-link\"></mat-icon>\n </a>\n <div *ngIf=\"!featureInfo.hideDays\" class=\"gio-license-dialog__content__action__info\">14 days trial</div>\n </div>\n</mat-dialog-content>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-license-dialog__title{display:flex;justify-content:space-between}.gio-license-dialog__title__cancel{width:24px;height:24px;color:#8e8f9c}.gio-license-dialog__content{display:flex;width:600px;flex-direction:column;align-items:center;justify-content:center;padding:0}.gio-license-dialog__content__title{margin:0 0 24px;font-size:26px;font-weight:600;line-height:36px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.gio-license-dialog__content__description{padding:0 50px 32px;color:#606274;font-weight:500;line-height:24px;text-align:center}.gio-license-dialog__content__action{display:flex;flex-direction:column;align-items:center;padding:0 40px 16px}.gio-license-dialog__content__action__button{width:250px}.gio-license-dialog__content__action__info{margin-top:10px;color:#606274;text-align:center}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "pipe", type: i5.SafePipe, name: "safe" }] }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: GioLicenseDialogComponent, isStandalone: false, selector: "gio-license-dialog", ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-license-dialog__title\">\n <mat-icon class=\"gio-license-dialog__title__cancel\"></mat-icon>\n <button mat-icon-button [attr.aria-label]=\"'Close'\" (click)=\"onClose()\">\n <mat-icon class=\"gio-license-dialog__title__cancel\" svgIcon=\"gio:cancel\"> </mat-icon>\n </button>\n</div>\n\n<mat-dialog-content class=\"gio-license-dialog__content\">\n <img class=\"gio-license-dialog__content__image\" [src]=\"featureInfo.image\" [alt]=\"featureInfo.title || 'Unlock Gravitee Enterprise'\" />\n <h2 class=\"gio-license-dialog__content__title\" [innerHTML]=\"featureInfo.title || 'Unlock Gravitee Enterprise' | safe: 'html'\"></h2>\n <div class=\"gio-license-dialog__content__description\" [innerHTML]=\"featureInfo.description | safe: 'html'\"></div>\n <div class=\"gio-license-dialog__content__action\">\n <a class=\"gio-license-dialog__content__action__button\" mat-stroked-button color=\"accent\" target=\"_blank\" [href]=\"trialURL\">\n {{ featureInfo.trialButtonLabel || 'Request an enterprise license' }} <mat-icon svgIcon=\"gio:external-link\"></mat-icon>\n </a>\n <div *ngIf=\"!featureInfo.hideDays\" class=\"gio-license-dialog__content__action__info\">14 days trial</div>\n </div>\n</mat-dialog-content>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-license-dialog__title{display:flex;justify-content:space-between}.gio-license-dialog__title__cancel{width:24px;height:24px;color:#8e8f9c}.gio-license-dialog__content{display:flex;width:600px;flex-direction:column;align-items:center;justify-content:center;padding:0}.gio-license-dialog__content__title{margin:0 0 24px;font-size:26px;font-weight:600;line-height:36px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.gio-license-dialog__content__description{padding:0 50px 32px;color:#606274;font-weight:500;line-height:24px;text-align:center}.gio-license-dialog__content__action{display:flex;flex-direction:column;align-items:center;padding:0 40px 16px}.gio-license-dialog__content__action__button{width:250px}.gio-license-dialog__content__action__info{margin-top:10px;color:#606274;text-align:center}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "pipe", type: i5.SafePipe, name: "safe" }] }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseDialogComponent, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseDialogComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{ selector: 'gio-license-dialog', standalone: false, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"gio-license-dialog__title\">\n <mat-icon class=\"gio-license-dialog__title__cancel\"></mat-icon>\n <button mat-icon-button [attr.aria-label]=\"'Close'\" (click)=\"onClose()\">\n <mat-icon class=\"gio-license-dialog__title__cancel\" svgIcon=\"gio:cancel\"> </mat-icon>\n </button>\n</div>\n\n<mat-dialog-content class=\"gio-license-dialog__content\">\n <img class=\"gio-license-dialog__content__image\" [src]=\"featureInfo.image\" [alt]=\"featureInfo.title || 'Unlock Gravitee Enterprise'\" />\n <h2 class=\"gio-license-dialog__content__title\" [innerHTML]=\"featureInfo.title || 'Unlock Gravitee Enterprise' | safe: 'html'\"></h2>\n <div class=\"gio-license-dialog__content__description\" [innerHTML]=\"featureInfo.description | safe: 'html'\"></div>\n <div class=\"gio-license-dialog__content__action\">\n <a class=\"gio-license-dialog__content__action__button\" mat-stroked-button color=\"accent\" target=\"_blank\" [href]=\"trialURL\">\n {{ featureInfo.trialButtonLabel || 'Request an enterprise license' }} <mat-icon svgIcon=\"gio:external-link\"></mat-icon>\n </a>\n <div *ngIf=\"!featureInfo.hideDays\" class=\"gio-license-dialog__content__action__info\">14 days trial</div>\n </div>\n</mat-dialog-content>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.gio-license-dialog__title{display:flex;justify-content:space-between}.gio-license-dialog__title__cancel{width:24px;height:24px;color:#8e8f9c}.gio-license-dialog__content{display:flex;width:600px;flex-direction:column;align-items:center;justify-content:center;padding:0}.gio-license-dialog__content__title{margin:0 0 24px;font-size:26px;font-weight:600;line-height:36px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.gio-license-dialog__content__description{padding:0 50px 32px;color:#606274;font-weight:500;line-height:24px;text-align:center}.gio-license-dialog__content__action{display:flex;flex-direction:column;align-items:center;padding:0 40px 16px}.gio-license-dialog__content__action__button{width:250px}.gio-license-dialog__content__action__info{margin-top:10px;color:#606274;text-align:center}\n"] }]
39
39
  }], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
@@ -22,11 +22,11 @@ import { GioIconsModule } from '../../gio-icons/gio-icons.module';
22
22
  import { GioLicenseDialogComponent } from './gio-license-dialog.component';
23
23
  import * as i0 from "@angular/core";
24
24
  export class GioLicenseDialogModule {
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
26
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseDialogModule, declarations: [GioLicenseDialogComponent], imports: [CommonModule, MatDialogModule, GioIconsModule, MatButtonModule, GioSafePipeModule], exports: [GioLicenseDialogComponent] }); }
27
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseDialogModule, imports: [CommonModule, MatDialogModule, GioIconsModule, MatButtonModule, GioSafePipeModule] }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
26
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseDialogModule, declarations: [GioLicenseDialogComponent], imports: [CommonModule, MatDialogModule, GioIconsModule, MatButtonModule, GioSafePipeModule], exports: [GioLicenseDialogComponent] }); }
27
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseDialogModule, imports: [CommonModule, MatDialogModule, GioIconsModule, MatButtonModule, GioSafePipeModule] }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseDialogModule, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseDialogModule, decorators: [{
30
30
  type: NgModule,
31
31
  args: [{
32
32
  imports: [CommonModule, MatDialogModule, GioIconsModule, MatButtonModule, GioSafePipeModule],
@@ -77,10 +77,10 @@ export class GioLicenseDirective {
77
77
  .subscribe();
78
78
  return false;
79
79
  }
80
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseDirective, deps: [{ token: i1.GioLicenseService }, { token: i2.MatDialog }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
81
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: GioLicenseDirective, isStandalone: false, selector: "[gioLicense]", inputs: { gioLicense: "gioLicense" }, ngImport: i0 }); }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseDirective, deps: [{ token: i1.GioLicenseService }, { token: i2.MatDialog }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
81
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.7", type: GioLicenseDirective, isStandalone: false, selector: "[gioLicense]", inputs: { gioLicense: "gioLicense" }, ngImport: i0 }); }
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseDirective, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseDirective, decorators: [{
84
84
  type: Directive,
85
85
  args: [{
86
86
  selector: '[gioLicense]',
@@ -20,11 +20,11 @@ import { GioLicenseDirective } from './gio-license.directive';
20
20
  import { GioLicenseDialogModule } from './gio-license-dialog/gio-license-dialog.module';
21
21
  import * as i0 from "@angular/core";
22
22
  export class GioLicenseModule {
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseModule, declarations: [GioLicenseDirective], imports: [CommonModule, MatDialogModule, GioLicenseDialogModule], exports: [GioLicenseDirective] }); }
25
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseModule, imports: [CommonModule, MatDialogModule, GioLicenseDialogModule] }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseModule, declarations: [GioLicenseDirective], imports: [CommonModule, MatDialogModule, GioLicenseDialogModule], exports: [GioLicenseDirective] }); }
25
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseModule, imports: [CommonModule, MatDialogModule, GioLicenseDialogModule] }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseModule, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseModule, decorators: [{
28
28
  type: NgModule,
29
29
  args: [{
30
30
  imports: [CommonModule, MatDialogModule, GioLicenseDialogModule],
@@ -86,10 +86,10 @@ export class GioLicenseService {
86
86
  isExpired$() {
87
87
  return this.getLicense$().pipe(map(license => license?.isExpired === true));
88
88
  }
89
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseService, deps: [{ token: i1.HttpClient }, { token: 'LicenseConfiguration' }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable }); }
90
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseService, providedIn: 'root' }); }
89
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseService, deps: [{ token: i1.HttpClient }, { token: 'LicenseConfiguration' }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable }); }
90
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseService, providedIn: 'root' }); }
91
91
  }
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseService, decorators: [{
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseService, decorators: [{
93
93
  type: Injectable,
94
94
  args: [{
95
95
  providedIn: 'root',
@@ -63,9 +63,9 @@ export class GioLicenseTestingModule {
63
63
  ],
64
64
  };
65
65
  }
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
67
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseTestingModule }); }
68
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseTestingModule, providers: [
66
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
67
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseTestingModule }); }
68
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseTestingModule, providers: [
69
69
  {
70
70
  provide: 'LicenseConfiguration',
71
71
  useValue: LICENSE_CONFIGURATION_TESTING,
@@ -82,7 +82,7 @@ export class GioLicenseTestingModule {
82
82
  },
83
83
  ] }); }
84
84
  }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseTestingModule, decorators: [{
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseTestingModule, decorators: [{
86
86
  type: NgModule,
87
87
  args: [{
88
88
  imports: [],
@@ -57,10 +57,10 @@ export class GioLicenseExpirationNotificationComponent {
57
57
  transformDateWithoutHours(date) {
58
58
  return new Date(date.toDateString()).valueOf();
59
59
  }
60
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseExpirationNotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
61
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: GioLicenseExpirationNotificationComponent, isStandalone: false, selector: "gio-license-expiration-notification", inputs: { expirationDate: "expirationDate", showCallToAction: "showCallToAction", callToActionMessage: "callToActionMessage", link: "link", inError: "inError" }, usesOnChanges: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2024 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div *ngIf=\"expirationDate && daysRemaining <= 30\" class=\"status\" rel=\"noopener\">\n <div [ngClass]=\"'status__title ' + statusColor\">\n <div class=\"status__title__text\">\n {{ title }}\n <img src=\"assets/license-expiration-notification-background.svg\" />\n </div>\n </div>\n <a *ngIf=\"showCallToAction\" class=\"status__action\" [href]=\"link ?? 'https://www.gravitee.io/contact-us-licence'\" target=\"_blank\">\n <div class=\"status__action__text\">{{ callToActionMessage ?? 'Contact Gravitee' }}</div>\n <mat-icon svgIcon=\"gio:right-circle\" class=\"status__action__icon\"></mat-icon>\n </a>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.status{position:relative;display:flex;width:192px;height:152px;flex-direction:column;padding:0;border-radius:4px;color:#100c27;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border:none;background:#fff;text-decoration:none}.status--disabled{cursor:not-allowed}.status__sub-tile{height:56px;margin-top:16px}.status__title img{position:absolute;top:0;right:0}.status__title.red{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#ffe9f4;color:#930149}.status__title.red img{filter:invert(21%) sepia(96%) saturate(2923%) hue-rotate(316deg) brightness(75%) contrast(116%)}.status__title.blue{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#e9f6ff;color:#006fb9}.status__title.blue img{filter:invert(27%) sepia(98%) saturate(1450%) hue-rotate(183deg) brightness(91%) contrast(102%)}.status__title.orange{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#ffece5;color:#983611}.status__title.orange img{filter:invert(23%) sepia(92%) saturate(1610%) hue-rotate(357deg) brightness(103%) contrast(94%)}.status__title__text{font-size:14px;font-weight:500;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px;margin:24px 12px;text-align:left}.status__action{font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;display:flex;width:100%;align-items:center;justify-content:space-between;padding:20px 12px;color:#1c1e39;font-weight:700;text-decoration:none}.status__action__icon{width:20px;height:20px}:host-context(.gio-menu__reduced) .status{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
60
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseExpirationNotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
61
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: GioLicenseExpirationNotificationComponent, isStandalone: false, selector: "gio-license-expiration-notification", inputs: { expirationDate: "expirationDate", showCallToAction: "showCallToAction", callToActionMessage: "callToActionMessage", link: "link", inError: "inError" }, usesOnChanges: true, ngImport: i0, template: "<!--\n\n Copyright (C) 2024 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div *ngIf=\"expirationDate && daysRemaining <= 30\" class=\"status\" rel=\"noopener\">\n <div [ngClass]=\"'status__title ' + statusColor\">\n <div class=\"status__title__text\">\n {{ title }}\n <img src=\"assets/license-expiration-notification-background.svg\" />\n </div>\n </div>\n <a *ngIf=\"showCallToAction\" class=\"status__action\" [href]=\"link ?? 'https://www.gravitee.io/contact-us-licence'\" target=\"_blank\">\n <div class=\"status__action__text\">{{ callToActionMessage ?? 'Contact Gravitee' }}</div>\n <mat-icon svgIcon=\"gio:right-circle\" class=\"status__action__icon\"></mat-icon>\n </a>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.status{position:relative;display:flex;width:192px;height:152px;flex-direction:column;padding:0;border-radius:4px;color:#100c27;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border:none;background:#fff;text-decoration:none}.status--disabled{cursor:not-allowed}.status__sub-tile{height:56px;margin-top:16px}.status__title img{position:absolute;top:0;right:0}.status__title.red{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#ffe9f4;color:#930149}.status__title.red img{filter:invert(21%) sepia(96%) saturate(2923%) hue-rotate(316deg) brightness(75%) contrast(116%)}.status__title.blue{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#e9f6ff;color:#006fb9}.status__title.blue img{filter:invert(27%) sepia(98%) saturate(1450%) hue-rotate(183deg) brightness(91%) contrast(102%)}.status__title.orange{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#ffece5;color:#983611}.status__title.orange img{filter:invert(23%) sepia(92%) saturate(1610%) hue-rotate(357deg) brightness(103%) contrast(94%)}.status__title__text{font-size:14px;font-weight:500;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px;margin:24px 12px;text-align:left}.status__action{font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;display:flex;width:100%;align-items:center;justify-content:space-between;padding:20px 12px;color:#1c1e39;font-weight:700;text-decoration:none}.status__action__icon{width:20px;height:20px}:host-context(.gio-menu__reduced) .status{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
62
62
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseExpirationNotificationComponent, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseExpirationNotificationComponent, decorators: [{
64
64
  type: Component,
65
65
  args: [{ selector: 'gio-license-expiration-notification', standalone: false, template: "<!--\n\n Copyright (C) 2024 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div *ngIf=\"expirationDate && daysRemaining <= 30\" class=\"status\" rel=\"noopener\">\n <div [ngClass]=\"'status__title ' + statusColor\">\n <div class=\"status__title__text\">\n {{ title }}\n <img src=\"assets/license-expiration-notification-background.svg\" />\n </div>\n </div>\n <a *ngIf=\"showCallToAction\" class=\"status__action\" [href]=\"link ?? 'https://www.gravitee.io/contact-us-licence'\" target=\"_blank\">\n <div class=\"status__action__text\">{{ callToActionMessage ?? 'Contact Gravitee' }}</div>\n <mat-icon svgIcon=\"gio:right-circle\" class=\"status__action__icon\"></mat-icon>\n </a>\n</div>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #e7e2fb);color:var(--gio-oem-palette--active-contrast, #100c27)}.status{position:relative;display:flex;width:192px;height:152px;flex-direction:column;padding:0;border-radius:4px;color:#100c27;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;border:none;background:#fff;text-decoration:none}.status--disabled{cursor:not-allowed}.status__sub-tile{height:56px;margin-top:16px}.status__title img{position:absolute;top:0;right:0}.status__title.red{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#ffe9f4;color:#930149}.status__title.red img{filter:invert(21%) sepia(96%) saturate(2923%) hue-rotate(316deg) brightness(75%) contrast(116%)}.status__title.blue{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#e9f6ff;color:#006fb9}.status__title.blue img{filter:invert(27%) sepia(98%) saturate(1450%) hue-rotate(183deg) brightness(91%) contrast(102%)}.status__title.orange{display:flex;width:inherit;flex:1 1 100%;align-items:center;border-radius:4px;background:#ffece5;color:#983611}.status__title.orange img{filter:invert(23%) sepia(92%) saturate(1610%) hue-rotate(357deg) brightness(103%) contrast(94%)}.status__title__text{font-size:14px;font-weight:500;line-height:22px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px;margin:24px 12px;text-align:left}.status__action{font-size:12px;font-weight:400;line-height:16px;font-family:Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;display:flex;width:100%;align-items:center;justify-content:space-between;padding:20px 12px;color:#1c1e39;font-weight:700;text-decoration:none}.status__action__icon{width:20px;height:20px}:host-context(.gio-menu__reduced) .status{display:none}\n"] }]
66
66
  }], propDecorators: { expirationDate: [{
@@ -21,11 +21,11 @@ import { GioIconsModule } from '../gio-icons/gio-icons.module';
21
21
  import { GioLicenseExpirationNotificationComponent } from './gio-license-expiration-notification.component';
22
22
  import * as i0 from "@angular/core";
23
23
  export class GioLicenseExpirationNotificationModule {
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseExpirationNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseExpirationNotificationModule, declarations: [GioLicenseExpirationNotificationComponent], imports: [CommonModule, MatButtonModule, MatTooltipModule, GioIconsModule], exports: [GioLicenseExpirationNotificationComponent] }); }
26
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseExpirationNotificationModule, imports: [CommonModule, MatButtonModule, MatTooltipModule, GioIconsModule] }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseExpirationNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseExpirationNotificationModule, declarations: [GioLicenseExpirationNotificationComponent], imports: [CommonModule, MatButtonModule, MatTooltipModule, GioIconsModule], exports: [GioLicenseExpirationNotificationComponent] }); }
26
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseExpirationNotificationModule, imports: [CommonModule, MatButtonModule, MatTooltipModule, GioIconsModule] }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLicenseExpirationNotificationModule, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLicenseExpirationNotificationModule, decorators: [{
29
29
  type: NgModule,
30
30
  args: [{
31
31
  imports: [CommonModule, MatButtonModule, MatTooltipModule, GioIconsModule],
@@ -17,10 +17,10 @@ import { Component } from '@angular/core';
17
17
  import * as i0 from "@angular/core";
18
18
  import * as i1 from "@angular/material/icon";
19
19
  export class GioLoaderComponent {
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: GioLoaderComponent, isStandalone: false, selector: "gio-loader", ngImport: i0, template: "<!--\n\n Copyright (C) 2023 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"loader\">\n <mat-icon svgIcon=\"gio:loader\"></mat-icon>\n</div>\n", styles: [":host{position:relative;display:flex;width:48px;height:48px;align-self:center;margin:auto}.loader{display:flex;align-items:center;justify-content:center;animation:rotation 2s infinite linear}.loader mat-icon{width:100%;height:100%;margin:0}@keyframes rotation{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: GioLoaderComponent, isStandalone: false, selector: "gio-loader", ngImport: i0, template: "<!--\n\n Copyright (C) 2023 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"loader\">\n <mat-icon svgIcon=\"gio:loader\"></mat-icon>\n</div>\n", styles: [":host{position:relative;display:flex;width:48px;height:48px;align-self:center;margin:auto}.loader{display:flex;align-items:center;justify-content:center;animation:rotation 2s infinite linear}.loader mat-icon{width:100%;height:100%;margin:0}@keyframes rotation{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLoaderComponent, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLoaderComponent, decorators: [{
24
24
  type: Component,
25
25
  args: [{ selector: 'gio-loader', standalone: false, template: "<!--\n\n Copyright (C) 2023 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<div class=\"loader\">\n <mat-icon svgIcon=\"gio:loader\"></mat-icon>\n</div>\n", styles: [":host{position:relative;display:flex;width:48px;height:48px;align-self:center;margin:auto}.loader{display:flex;align-items:center;justify-content:center;animation:rotation 2s infinite linear}.loader mat-icon{width:100%;height:100%;margin:0}@keyframes rotation{to{transform:rotate(360deg)}}\n"] }]
26
26
  }] });
@@ -19,11 +19,11 @@ import { GioIconsModule } from '../gio-icons/gio-icons.module';
19
19
  import { GioLoaderComponent } from './gio-loader.component';
20
20
  import * as i0 from "@angular/core";
21
21
  export class GioLoaderModule {
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLoaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
23
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioLoaderModule, declarations: [GioLoaderComponent], imports: [CommonModule, GioIconsModule], exports: [GioLoaderComponent] }); }
24
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLoaderModule, imports: [CommonModule, GioIconsModule] }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLoaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
23
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioLoaderModule, declarations: [GioLoaderComponent], imports: [CommonModule, GioIconsModule], exports: [GioLoaderComponent] }); }
24
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLoaderModule, imports: [CommonModule, GioIconsModule] }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioLoaderModule, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioLoaderModule, decorators: [{
27
27
  type: NgModule,
28
28
  args: [{
29
29
  imports: [CommonModule, GioIconsModule],
@@ -17,11 +17,11 @@ import { NgModule } from '@angular/core';
17
17
  import { MAT_FORM_FIELD_DEFAULT_OPTIONS } from '@angular/material/form-field';
18
18
  import * as i0 from "@angular/core";
19
19
  export class GioMatConfigModule {
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioMatConfigModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioMatConfigModule }); }
22
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioMatConfigModule, providers: [{ provide: MAT_FORM_FIELD_DEFAULT_OPTIONS, useValue: { appearance: 'outline', subscriptSizing: 'dynamic' } }] }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioMatConfigModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: GioMatConfigModule }); }
22
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioMatConfigModule, providers: [{ provide: MAT_FORM_FIELD_DEFAULT_OPTIONS, useValue: { appearance: 'outline', subscriptSizing: 'dynamic' } }] }); }
23
23
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioMatConfigModule, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioMatConfigModule, decorators: [{
25
25
  type: NgModule,
26
26
  args: [{
27
27
  providers: [{ provide: MAT_FORM_FIELD_DEFAULT_OPTIONS, useValue: { appearance: 'outline', subscriptSizing: 'dynamic' } }],
@@ -106,15 +106,15 @@ export class GioMonacoEditorFormFieldDirective {
106
106
  this.hostGioMonacoEditorComponent.standaloneCodeEditor?.focus();
107
107
  }
108
108
  }
109
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioMonacoEditorFormFieldDirective, deps: [{ token: i0.ElementRef }, { token: i1.FocusMonitor }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i2.GioMonacoEditorComponent, host: true, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
110
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: GioMonacoEditorFormFieldDirective, isStandalone: false, selector: "[gioMonacoEditorFormField]", inputs: { placeholder: "placeholder", required: "required", disabled: "disabled" }, host: { properties: { "id": "this.id", "attr.aria-describedBy": "this.userAriaDescribedBy", "class.hidden": "this.shouldHideEditor" } }, providers: [
109
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioMonacoEditorFormFieldDirective, deps: [{ token: i0.ElementRef }, { token: i1.FocusMonitor }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i2.GioMonacoEditorComponent, host: true, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
110
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.7", type: GioMonacoEditorFormFieldDirective, isStandalone: false, selector: "[gioMonacoEditorFormField]", inputs: { placeholder: "placeholder", required: "required", disabled: "disabled" }, host: { properties: { "id": "this.id", "attr.aria-describedBy": "this.userAriaDescribedBy", "class.hidden": "this.shouldHideEditor" } }, providers: [
111
111
  {
112
112
  provide: MatFormFieldControl,
113
113
  useExisting: forwardRef(() => GioMonacoEditorFormFieldDirective),
114
114
  },
115
115
  ], ngImport: i0 }); }
116
116
  }
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioMonacoEditorFormFieldDirective, decorators: [{
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioMonacoEditorFormFieldDirective, decorators: [{
118
118
  type: Directive,
119
119
  args: [{
120
120
  selector: '[gioMonacoEditorFormField]',
@@ -18,9 +18,6 @@ import { isEqual, isString, uniqueId } from 'lodash';
18
18
  import { ReplaySubject, Subject } from 'rxjs';
19
19
  import { takeUntil } from 'rxjs/operators';
20
20
  import { GIO_MONACO_EDITOR_CONFIG } from './models/GioMonacoEditorConfig';
21
- import { GioLanguageJsonService } from './services/gio-language-json.service';
22
- import { GioMonacoEditorService } from './services/gio-monaco-editor.service';
23
- import { GioLanguageElService } from './services/gio-language-el.service';
24
21
  import * as i0 from "@angular/core";
25
22
  import * as i1 from "./services/gio-monaco-editor.service";
26
23
  import * as i2 from "./services/gio-language-json.service";
@@ -249,12 +246,12 @@ export class GioMonacoEditorComponent {
249
246
  break;
250
247
  }
251
248
  }
252
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioMonacoEditorComponent, deps: [{ token: i0.ElementRef }, { token: GIO_MONACO_EDITOR_CONFIG }, { token: i1.GioMonacoEditorService }, { token: i2.GioLanguageJsonService }, { token: i3.GioLanguageElService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i4.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
253
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: GioMonacoEditorComponent, isStandalone: false, selector: "gio-monaco-editor", inputs: { languageConfig: "languageConfig", options: "options", disableMiniMap: "disableMiniMap", disableAutoFormat: "disableAutoFormat", singleLineMode: "singleLineMode" }, host: { properties: { "class.single-line": "this.singleLineMode" } }, providers: [GioMonacoEditorService, GioLanguageJsonService, GioLanguageElService], ngImport: i0, template: ` <div *ngIf="loaded$ | async">Loading...</div>`, isInline: true, styles: [":host{display:block;height:100%;min-height:150px;pointer-events:auto;transition:opacity .2s ease-out}:host.single-line{display:flex;height:24px;min-height:24px;align-items:center}:host-context(.hidden){opacity:0}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioMonacoEditorComponent, deps: [{ token: i0.ElementRef }, { token: GIO_MONACO_EDITOR_CONFIG }, { token: i1.GioMonacoEditorService }, { token: i2.GioLanguageJsonService }, { token: i3.GioLanguageElService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i4.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
250
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.7", type: GioMonacoEditorComponent, isStandalone: false, selector: "gio-monaco-editor", inputs: { languageConfig: "languageConfig", options: "options", disableMiniMap: "disableMiniMap", disableAutoFormat: "disableAutoFormat", singleLineMode: "singleLineMode" }, host: { properties: { "class.single-line": "this.singleLineMode" } }, ngImport: i0, template: ` <div *ngIf="loaded$ | async">Loading...</div>`, isInline: true, styles: [":host{display:block;height:100%;min-height:150px;pointer-events:auto;transition:opacity .2s ease-out}:host.single-line{display:flex;height:24px;min-height:24px;align-items:center}:host-context(.hidden){opacity:0}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
254
251
  }
255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioMonacoEditorComponent, decorators: [{
252
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: GioMonacoEditorComponent, decorators: [{
256
253
  type: Component,
257
- args: [{ selector: 'gio-monaco-editor', template: ` <div *ngIf="loaded$ | async">Loading...</div>`, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, providers: [GioMonacoEditorService, GioLanguageJsonService, GioLanguageElService], styles: [":host{display:block;height:100%;min-height:150px;pointer-events:auto;transition:opacity .2s ease-out}:host.single-line{display:flex;height:24px;min-height:24px;align-items:center}:host-context(.hidden){opacity:0}\n"] }]
254
+ args: [{ selector: 'gio-monaco-editor', template: ` <div *ngIf="loaded$ | async">Loading...</div>`, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, styles: [":host{display:block;height:100%;min-height:150px;pointer-events:auto;transition:opacity .2s ease-out}:host.single-line{display:flex;height:24px;min-height:24px;align-items:center}:host-context(.hidden){opacity:0}\n"] }]
258
255
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{
259
256
  type: Inject,
260
257
  args: [GIO_MONACO_EDITOR_CONFIG]
@@ -285,4 +282,4 @@ const isJsonString = (str) => {
285
282
  }
286
283
  return true;
287
284
  };
288
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLW1vbmFjby1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcGFydGljbGVzLWFuZ3VsYXIvc3JjL2xpYi9naW8tbW9uYWNvLWVkaXRvci9naW8tbW9uYWNvLWVkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsSUFBSSxHQUNMLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUF5Qix3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7O0FBaUMxRSxNQUFNLE9BQU8sd0JBQXdCO0lBdUNuQyxZQUNrQixXQUF1QixFQUNZLE1BQTZCLEVBQy9ELG1CQUEyQyxFQUMzQyxtQkFBMkMsRUFDM0MsbUJBQXlDLEVBQ3pDLGlCQUFvQyxFQUNwQyxNQUFjLEVBQ0ssU0FBb0I7UUFQeEMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDWSxXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQUMvRCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBQzNDLHdCQUFt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LElBQUksY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDNUQsQ0FBQztnQkFDRCxNQUFNO1lBQ1I7Z0JBQ0UsTUFBTTtRQUNWLENBQUM7SUFDSCxDQUFDOzhHQTFRVSx3QkFBd0IsNENBeUN6Qix3QkFBd0I7a0dBekN2Qix3QkFBd0IscVRBRnhCLENBQUMsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLENBQUMsMEJBSnZFLGdEQUFnRDs7MkZBTS9DLHdCQUF3QjtrQkFScEMsU0FBUzsrQkFDRSxtQkFBbUIsWUFDbkIsZ0RBQWdELG1CQUV6Qyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUssYUFDTixDQUFDLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixDQUFDOzswQkEyQzlFLE1BQU07MkJBQUMsd0JBQXdCOzswQkFNL0IsUUFBUTs7MEJBQUksSUFBSTt5Q0E3Q1osY0FBYztzQkFEcEIsS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSUMsY0FBYztzQkFEcEIsS0FBSztnQkFJQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBS0MsY0FBYztzQkFGcEIsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxtQkFBbUI7O0FBK1BsQyxNQUFNLFlBQVksR0FBRyxDQUFDLEdBQVcsRUFBVyxFQUFFO0lBQzVDLElBQUksQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDWCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjMgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgaXNFcXVhbCwgaXNTdHJpbmcsIHVuaXF1ZUlkIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBNb25hY28sIHsgZWRpdG9yIH0gZnJvbSAnbW9uYWNvLWVkaXRvcic7XG5pbXBvcnQgeyBSZXBsYXlTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEdpb01vbmFjb0VkaXRvckNvbmZpZywgR0lPX01PTkFDT19FRElUT1JfQ09ORklHIH0gZnJvbSAnLi9tb2RlbHMvR2lvTW9uYWNvRWRpdG9yQ29uZmlnJztcbmltcG9ydCB7IEdpb0xhbmd1YWdlSnNvblNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2dpby1sYW5ndWFnZS1qc29uLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2lvTW9uYWNvRWRpdG9yU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZ2lvLW1vbmFjby1lZGl0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBHaW9MYW5ndWFnZUVsU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZ2lvLWxhbmd1YWdlLWVsLnNlcnZpY2UnO1xuaW1wb3J0IHsgSlNPTlNjaGVtYSB9IGZyb20gJy4vbW9kZWxzL0pTT05TY2hlbWFBdXRvQ29tcGxldGUnO1xuXG5leHBvcnQgdHlwZSBNb25hY29FZGl0b3JMYW5ndWFnZUNvbmZpZyA9XG4gIHwge1xuICAgICAgbGFuZ3VhZ2U6ICdqc29uJztcbiAgICAgIHNjaGVtYXM/OiB7IHVyaTogc3RyaW5nOyBzY2hlbWE6IHVua25vd24gfVtdO1xuICAgIH1cbiAgfCB7XG4gICAgICBsYW5ndWFnZTogJ21hcmtkb3duJztcbiAgICB9XG4gIHwge1xuICAgICAgbGFuZ3VhZ2U6ICdodG1sJztcbiAgICB9XG4gIHwge1xuICAgICAgbGFuZ3VhZ2U6ICd5YW1sJztcbiAgICB9XG4gIHwge1xuICAgICAgbGFuZ3VhZ2U6ICdzcGVsJztcbiAgICAgIHNjaGVtYT86IEpTT05TY2hlbWE7XG4gICAgfVxuICB8IHtcbiAgICAgIGxhbmd1YWdlOiAnY3NzJztcbiAgICB9O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnaW8tbW9uYWNvLWVkaXRvcicsXG4gIHRlbXBsYXRlOiBgIDxkaXYgKm5nSWY9XCJsb2FkZWQkIHwgYXN5bmNcIj5Mb2FkaW5nLi4uPC9kaXY+YCxcbiAgc3R5bGVVcmxzOiBbJy4vZ2lvLW1vbmFjby1lZGl0b3IuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxuICBwcm92aWRlcnM6IFtHaW9Nb25hY29FZGl0b3JTZXJ2aWNlLCBHaW9MYW5ndWFnZUpzb25TZXJ2aWNlLCBHaW9MYW5ndWFnZUVsU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEdpb01vbmFjb0VkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBwdWJsaWMgbGFuZ3VhZ2VDb25maWc/OiBNb25hY29FZGl0b3JMYW5ndWFnZUNvbmZpZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3B0aW9uczogZWRpdG9yLklTdGFuZGFsb25lRWRpdG9yQ29uc3RydWN0aW9uT3B0aW9ucyA9IHt9O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkaXNhYmxlTWluaU1hcCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkaXNhYmxlQXV0b0Zvcm1hdCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc2luZ2xlLWxpbmUnKVxuICBwdWJsaWMgc2luZ2xlTGluZU1vZGUgPSBmYWxzZTtcblxuICBwdWJsaWMgbG9hZGVkJCA9IG5ldyBSZXBsYXlTdWJqZWN0PGJvb2xlYW4+KDEpO1xuXG4gIHByaXZhdGUgZGVmYXVsdE9wdGlvbnM6IGVkaXRvci5JU3RhbmRhbG9uZUVkaXRvckNvbnN0cnVjdGlvbk9wdGlvbnMgPSB7XG4gICAgY29udGV4dG1lbnU6IGZhbHNlLFxuICAgIG1pbmltYXA6IHtcbiAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgfSxcbiAgICBhdXRvbWF0aWNMYXlvdXQ6IHRydWUsXG4gICAgc2Nyb2xsQmV5b25kTGFzdExpbmU6IGZhbHNlLFxuICB9O1xuXG4gIHB1YmxpYyB2YWx1ZSA9ICcnO1xuICBwdWJsaWMgcmVhZE9ubHkgPSBmYWxzZTtcbiAgcHVibGljIHN0YW5kYWxvbmVDb2RlRWRpdG9yPzogZWRpdG9yLklTdGFuZGFsb25lQ29kZUVkaXRvcjtcbiAgcHJpdmF0ZSB0ZXh0TW9kZWw/OiBlZGl0b3IuSVRleHRNb2RlbDtcbiAgcHJpdmF0ZSB0b0Rpc3Bvc2VzOiBNb25hY28uSURpc3Bvc2FibGVbXSA9IFtdO1xuXG4gIHByb3RlY3RlZCBfb25DaGFuZ2U6IChfdmFsdWU6IHN0cmluZyB8IG51bGwpID0+IHZvaWQgPSAoKSA9PiAoe30pO1xuXG4gIHByb3RlY3RlZCBfb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4gKHt9KTtcbiAgcHJpdmF0ZSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBob3N0RWxlbWVudDogRWxlbWVudFJlZixcbiAgICBASW5qZWN0KEdJT19NT05BQ09fRURJVE9SX0NPTkZJRykgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IEdpb01vbmFjb0VkaXRvckNvbmZpZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1vbmFjb0VkaXRvclNlcnZpY2U6IEdpb01vbmFjb0VkaXRvclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsYW5ndWFnZUpzb25TZXJ2aWNlOiBHaW9MYW5ndWFnZUpzb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGFuZ3VhZ2VTcGVsU2VydmljZTogR2lvTGFuZ3VhZ2VFbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyByZWFkb25seSBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgKSB7XG4gICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICAvLyBTZXQgdGhlIHZhbHVlIGFjY2Vzc29yIGRpcmVjdGx5IChpbnN0ZWFkIG9mIHByb3ZpZGluZ1xuICAgICAgLy8gTkdfVkFMVUVfQUNDRVNTT1IpIHRvIGF2b2lkIHJ1bm5pbmcgaW50byBhIGNpcmN1bGFyIGltcG9ydFxuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XG4gICAgfVxuICAgIHRoaXMubW9uYWNvRWRpdG9yU2VydmljZS5sb2FkRWRpdG9yKCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIC8vIFdhaXQgdW50aWwgbW9uYWNvIGVkaXRvciBpcyBhdmFpbGFibGVcbiAgICB0aGlzLm1vbmFjb0VkaXRvclNlcnZpY2UubG9hZGVkJC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCkpLnN1YnNjcmliZSgoeyBtb25hY28gfSkgPT4ge1xuICAgICAgdGhpcy5zZXR1cEVkaXRvcihtb25hY28pO1xuXG4gICAgICB0aGlzLmxvYWRlZCQubmV4dChmYWxzZSk7XG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnRvRGlzcG9zZXMuZm9yRWFjaChkID0+IGQuZGlzcG9zZSgpKTtcblxuICAgIGlmICh0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yKSB7XG4gICAgICB0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yLmRpc3Bvc2UoKTtcbiAgICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3IgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudGV4dE1vZGVsKSB7XG4gICAgICB0aGlzLnRleHRNb2RlbC5kaXNwb3NlKCk7XG4gICAgICB0aGlzLnRleHRNb2RlbCA9IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgdGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuICAgIHRoaXMudW5zdWJzY3JpYmUkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvLyBGcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxuICBwdWJsaWMgd3JpdGVWYWx1ZShfdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChfdmFsdWUpIHtcbiAgICAgIHRoaXMudmFsdWUgPSBpc1N0cmluZyhfdmFsdWUpID8gX3ZhbHVlIDogSlNPTi5zdHJpbmdpZnkoX3ZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudGV4dE1vZGVsKSB7XG4gICAgICB0aGlzLnRleHRNb2RlbC5zZXRWYWx1ZSh0aGlzLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAvLyBGcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF92YWx1ZTogc3RyaW5nIHwgbnVsbCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuX29uQ2hhbmdlID0gZm47XG4gIH1cblxuICAvLyBGcm9tIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLl9vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIC8vIEZyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnJlYWRPbmx5ID0gaXNEaXNhYmxlZDtcblxuICAgIGlmICh0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yKSB7XG4gICAgICB0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yLnVwZGF0ZU9wdGlvbnMoe1xuICAgICAgICByZWFkT25seTogaXNEaXNhYmxlZCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBFZGl0b3IobW9uYWNvOiB0eXBlb2YgTW9uYWNvKSB7XG4gICAgaWYgKCF0aGlzLmhvc3RFbGVtZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGVkaXRvciByZWYgZm91bmQuJyk7XG4gICAgfVxuXG4gICAgY29uc3QgZG9tRWxlbWVudCA9IHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudDtcblxuICAgIGNvbnN0IHNldHRpbmdzID0ge1xuICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICBsYW5ndWFnZTogdGhpcy5sYW5ndWFnZUNvbmZpZz8ubGFuZ3VhZ2UgPz8gKGlzSnNvblN0cmluZyh0aGlzLnZhbHVlKSA/ICdqc29uJyA6ICdwbGFpbnRleHQnKSxcbiAgICAgIHVyaTogYGNvZGUtJHt1bmlxdWVJZCgpfWAsXG4gICAgfTtcblxuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHRoaXMudGV4dE1vZGVsID0gbW9uYWNvLmVkaXRvci5jcmVhdGVNb2RlbChzZXR0aW5ncy52YWx1ZSwgc2V0dGluZ3MubGFuZ3VhZ2UsIG1vbmFjby5VcmkucGFyc2Uoc2V0dGluZ3MudXJpKSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kZWZhdWx0T3B0aW9ucywgdGhpcy5vcHRpb25zLCB7XG4gICAgICByZWFkT25seTogdGhpcy5yZWFkT25seSxcbiAgICAgIHRoZW1lOiB0aGlzLmNvbmZpZy50aGVtZSA/PyAndnMnLFxuICAgICAgbW9kZWw6IHRoaXMudGV4dE1vZGVsLFxuICAgICAgbWluaW1hcDoge1xuICAgICAgICBlbmFibGVkOiAhdGhpcy5kaXNhYmxlTWluaU1hcCxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yID0gbW9uYWNvLmVkaXRvci5jcmVhdGUoZG9tRWxlbWVudCwge1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICB9KTtcblxuICAgIGlmICghdGhpcy5kaXNhYmxlQXV0b0Zvcm1hdCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3I/LmdldEFjdGlvbignZWRpdG9yLmFjdGlvbi5mb3JtYXREb2N1bWVudCcpPy5ydW4oKTtcbiAgICAgIH0sIDgwKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zaW5nbGVMaW5lTW9kZSkge1xuICAgICAgdGhpcy5zdGFuZGFsb25lQ29kZUVkaXRvcj8uYWRkQWN0aW9uKHtcbiAgICAgICAgaWQ6ICdjdXN0b20uYWN0aW9uJyxcbiAgICAgICAgbGFiZWw6ICdjdXN0b20gYWN0aW9uJyxcbiAgICAgICAga2V5YmluZGluZ3M6IFttb25hY28uS2V5Q29kZS5FbnRlcl0sXG4gICAgICAgIHByZWNvbmRpdGlvbjogJyFzdWdnZXN0V2lkZ2V0VmlzaWJsZSAmJiAhcmVuYW1lSW5wdXRWaXNpYmxlICYmICFpblNuaXBwZXRNb2RlICYmICFxdWlja0ZpeFdpZGdldFZpc2libGUnLFxuICAgICAgICBydW46ICgpID0+IHtcbiAgICAgICAgICAvLyBJZ25vcmUgRW50ZXIga2V5IGluIHNpbmdsZSBsaW5lIG1vZGUgd2hlbiB3cml0aW5nXG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3Qgb25EaWRDaGFuZ2VDb250ZW50ID0gdGhpcy50ZXh0TW9kZWw/Lm9uRGlkQ2hhbmdlQ29udGVudCgoKSA9PiB7XG4gICAgICBjb25zdCB0ZXh0TW9kZWxWYWx1ZSA9IHRoaXMudGV4dE1vZGVsPy5nZXRWYWx1ZSgpID8/ICcnO1xuICAgICAgaWYgKHRoaXMuc2luZ2xlTGluZU1vZGUpIHtcbiAgICAgICAgLy8gSWYgdmFsdWUgaGFzIFxcbiwgXFxyIG9yIFxcclxcbiwgcmVtb3ZlIHRoZW1cbiAgICAgICAgLy8gVXNlZnVsIHRvIGNsZWFyIGxpbmUgYnJlYWtzIHdoZW4gcGFzdGluZyB0ZXh0XG4gICAgICAgIGNvbnN0IGhhc0xpbmVCcmVhayA9IG5ldyBSZWdFeHAoLyhcXHJcXG58XFxufFxccikvZ20pO1xuICAgICAgICBpZiAoaGFzTGluZUJyZWFrLnRlc3QodGV4dE1vZGVsVmFsdWUpKSB7XG4gICAgICAgICAgY29uc3QgY3VycmVudFBvc2l0aW9uID0gdGhpcy5zdGFuZGFsb25lQ29kZUVkaXRvcj8uZ2V0UG9zaXRpb24oKTtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3I/LnB1c2hVbmRvU3RvcCgpO1xuICAgICAgICAgICAgdGhpcy50ZXh0TW9kZWw/LnNldFZhbHVlKHRleHRNb2RlbFZhbHVlLnJlcGxhY2UoLyhcXHJcXG58XFxufFxccikvZ20sICcnKSk7XG4gICAgICAgICAgICBpZiAoY3VycmVudFBvc2l0aW9uKSB7XG4gICAgICAgICAgICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3I/LnNldFBvc2l0aW9uKGN1cnJlbnRQb3NpdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yPy5wb3BVbmRvU3RvcCgpO1xuICAgICAgICAgIH0sIDApO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICBpZiAoIXRoaXMucmVhZE9ubHkgJiYgIWlzRXF1YWwodGhpcy52YWx1ZSwgdGV4dE1vZGVsVmFsdWUpKSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gdGV4dE1vZGVsVmFsdWU7XG4gICAgICAgICAgICB0aGlzLl9vbkNoYW5nZSh0ZXh0TW9kZWxWYWx1ZSk7XG4gICAgICAgICAgICB0aGlzLl9vblRvdWNoZWQoKTtcbiAgICAgICAgICB9LCAwKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5zaW5nbGVMaW5lTW9kZSkge1xuICAgICAgLy8gU291cmNlIDogaHR0cHM6Ly9mYXJ6YWR5ei5jb20vYmxvZy9zaW5nbGUtbGluZS1tb25hY28tZWRpdG9yXG4gICAgICB0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yPy51cGRhdGVPcHRpb25zKHtcbiAgICAgICAgLy8gcXVpY2tTdWdnZXN0aW9uczogZmFsc2UsXG4gICAgICAgIGZpeGVkT3ZlcmZsb3dXaWRnZXRzOiB0cnVlLFxuICAgICAgICBhY2NlcHRTdWdnZXN0aW9uT25FbnRlcjogJ29uJyxcbiAgICAgICAgaG92ZXI6IHtcbiAgICAgICAgICBkZWxheTogMTAwLFxuICAgICAgICB9LFxuICAgICAgICByb3VuZGVkU2VsZWN0aW9uOiBmYWxzZSxcbiAgICAgICAgY29udGV4dG1lbnU6IGZhbHNlLFxuICAgICAgICBjdXJzb3JTdHlsZTogJ2xpbmUtdGhpbicsXG4gICAgICAgIGxpbmtzOiBmYWxzZSxcbiAgICAgICAgZmluZDoge1xuICAgICAgICAgIGFkZEV4dHJhU3BhY2VPblRvcDogZmFsc2UsXG4gICAgICAgICAgYXV0b0ZpbmRJblNlbGVjdGlvbjogJ25ldmVyJyxcbiAgICAgICAgICBzZWVkU2VhcmNoU3RyaW5nRnJvbVNlbGVjdGlvbjogJ25ldmVyJyxcbiAgICAgICAgfSxcbiAgICAgICAgZm9udFNpemU6IDE0LFxuICAgICAgICBmb250V2VpZ2h0OiAnbm9ybWFsJyxcbiAgICAgICAgb3ZlcnZpZXdSdWxlckxhbmVzOiAwLFxuICAgICAgICBzY3JvbGxCZXlvbmRMYXN0Q29sdW1uOiAwLFxuICAgICAgICB3b3JkV3JhcDogJ29uJyxcbiAgICAgICAgbWluaW1hcDoge1xuICAgICAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICBsaW5lTnVtYmVyczogJ29mZicsXG4gICAgICAgIGhpZGVDdXJzb3JJbk92ZXJ2aWV3UnVsZXI6IHRydWUsXG4gICAgICAgIG92ZXJ2aWV3UnVsZXJCb3JkZXI6IGZhbHNlLFxuICAgICAgICBnbHlwaE1hcmdpbjogZmFsc2UsXG4gICAgICAgIGZvbGRpbmc6IGZhbHNlLFxuICAgICAgICBsaW5lRGVjb3JhdGlvbnNXaWR0aDogMCxcbiAgICAgICAgbGluZU51bWJlcnNNaW5DaGFyczogMCxcbiAgICAgICAgcmVuZGVyTGluZUhpZ2hsaWdodDogJ25vbmUnLFxuICAgICAgICBzY3JvbGxiYXI6IHtcbiAgICAgICAgICBob3Jpem9udGFsOiAnaGlkZGVuJyxcbiAgICAgICAgICB2ZXJ0aWNhbDogJ2hpZGRlbicsXG4gICAgICAgICAgYWx3YXlzQ29uc3VtZU1vdXNlV2hlZWw6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3Qgb25EaWRCbHVyRWRpdG9yV2lkZ2V0ID0gdGhpcy5zdGFuZGFsb25lQ29kZUVkaXRvcj8ub25EaWRCbHVyRWRpdG9yV2lkZ2V0KCgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy5yZWFkT25seSkgdGhpcy5fb25Ub3VjaGVkKCk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRoaXMudG9EaXNwb3NlcyA9IFtvbkRpZENoYW5nZUNvbnRlbnQsIG9uRGlkQmx1ckVkaXRvcldpZGdldF0uZmlsdGVyKGQgPT4gISFkKSBhcyBNb25hY28uSURpc3Bvc2FibGVbXTtcblxuICAgIHRoaXMuc2V0dXBMYW5ndWFnZShzZXR0aW5ncy51cmksIHRoaXMubGFuZ3VhZ2VDb25maWcpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cExhbmd1YWdlKHVyaTogc3RyaW5nLCBsYW5ndWFnZUNvbmZpZz86IE1vbmFjb0VkaXRvckxhbmd1YWdlQ29uZmlnKSB7XG4gICAgaWYgKCFsYW5ndWFnZUNvbmZpZykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHN3aXRjaCAobGFuZ3VhZ2VDb25maWcubGFuZ3VhZ2UpIHtcbiAgICAgIGNhc2UgJ2pzb24nOlxuICAgICAgICBpZiAobGFuZ3VhZ2VDb25maWcuc2NoZW1hcykge1xuICAgICAgICAgIHRoaXMubGFuZ3VhZ2VKc29uU2VydmljZS5hZGRTY2hlbWFzKHVyaSwgbGFuZ3VhZ2VDb25maWcuc2NoZW1hcyk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdzcGVsJzpcbiAgICAgICAgaWYgKGxhbmd1YWdlQ29uZmlnLnNjaGVtYSkge1xuICAgICAgICAgIHRoaXMubGFuZ3VhZ2VTcGVsU2VydmljZS5zZXRTY2hlbWEobGFuZ3VhZ2VDb25maWcuc2NoZW1hKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuXG5jb25zdCBpc0pzb25TdHJpbmcgPSAoc3RyOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgdHJ5IHtcbiAgICBKU09OLnBhcnNlKHN0cik7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59O1xuIl19
285
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLW1vbmFjby1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcGFydGljbGVzLWFuZ3VsYXIvc3JjL2xpYi9naW8tbW9uYWNvLWVkaXRvci9naW8tbW9uYWNvLWVkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBRUwsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsSUFBSSxHQUNMLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUF5Qix3QkFBd0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7O0FBbUNqRyxNQUFNLE9BQU8sd0JBQXdCO0lBdUNuQyxZQUNrQixXQUF1QixFQUNZLE1BQTZCLEVBQy9ELG1CQUEyQyxFQUMzQyxtQkFBMkMsRUFDM0MsbUJBQXlDLEVBQ3pDLGlCQUFvQyxFQUNwQyxNQUFjLEVBQ0ssU0FBb0I7UUFQeEMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDWSxXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQUMvRCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBQzNDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBd0I7UUFDM0Msd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFzQjtRQUN6QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDSyxjQUFTLEdBQVQsU0FBUyxDQUFX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QUNWLENBQUM7SUFDSCxDQUFDOzhHQTFRVSx3QkFBd0IsNENBeUN6Qix3QkFBd0I7a0dBekN2Qix3QkFBd0Isa1VBTHpCLGdEQUFnRDs7MkZBSy9DLHdCQUF3QjtrQkFQcEMsU0FBUzsrQkFDRSxtQkFBbUIsWUFDbkIsZ0RBQWdELG1CQUV6Qyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUs7OzBCQTJDZCxNQUFNOzJCQUFDLHdCQUF3Qjs7MEJBTS9CLFFBQVE7OzBCQUFJLElBQUk7eUNBN0NaLGNBQWM7c0JBRHBCLEtBQUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBSUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQUtDLGNBQWM7c0JBRnBCLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsbUJBQW1COztBQStQbEMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxHQUFXLEVBQVcsRUFBRTtJQUM1QyxJQUFJLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1gsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDIzIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgT3B0aW9uYWwsXG4gIFNlbGYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGlzRXF1YWwsIGlzU3RyaW5nLCB1bmlxdWVJZCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgTW9uYWNvLCB7IGVkaXRvciB9IGZyb20gJ21vbmFjby1lZGl0b3InO1xuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBHaW9Nb25hY29FZGl0b3JDb25maWcsIEdJT19NT05BQ09fRURJVE9SX0NPTkZJRyB9IGZyb20gJy4vbW9kZWxzL0dpb01vbmFjb0VkaXRvckNvbmZpZyc7XG5pbXBvcnQgeyBHaW9MYW5ndWFnZUpzb25TZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9naW8tbGFuZ3VhZ2UtanNvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEdpb01vbmFjb0VkaXRvclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2dpby1tb25hY28tZWRpdG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2lvTGFuZ3VhZ2VFbFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2dpby1sYW5ndWFnZS1lbC5zZXJ2aWNlJztcbmltcG9ydCB7IEpTT05TY2hlbWEgfSBmcm9tICcuL21vZGVscy9KU09OU2NoZW1hQXV0b0NvbXBsZXRlJztcblxuZXhwb3J0IHR5cGUgTW9uYWNvRWRpdG9yTGFuZ3VhZ2VDb25maWcgPVxuICB8IHtcbiAgICAgIGxhbmd1YWdlOiAnanNvbic7XG4gICAgICBzY2hlbWFzPzogeyB1cmk6IHN0cmluZzsgc2NoZW1hOiB1bmtub3duIH1bXTtcbiAgICB9XG4gIHwge1xuICAgICAgbGFuZ3VhZ2U6ICdtYXJrZG93bic7XG4gICAgfVxuICB8IHtcbiAgICAgIGxhbmd1YWdlOiAnaHRtbCc7XG4gICAgfVxuICB8IHtcbiAgICAgIGxhbmd1YWdlOiAneWFtbCc7XG4gICAgfVxuICB8IHtcbiAgICAgIGxhbmd1YWdlOiAnc3BlbCc7XG4gICAgICBzY2hlbWE/OiBKU09OU2NoZW1hO1xuICAgIH1cbiAgfCB7XG4gICAgICBsYW5ndWFnZTogJ2Nzcyc7XG4gICAgfTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2lvLW1vbmFjby1lZGl0b3InLFxuICB0ZW1wbGF0ZTogYCA8ZGl2ICpuZ0lmPVwibG9hZGVkJCB8IGFzeW5jXCI+TG9hZGluZy4uLjwvZGl2PmAsXG4gIHN0eWxlVXJsczogWycuL2dpby1tb25hY28tZWRpdG9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgR2lvTW9uYWNvRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsYW5ndWFnZUNvbmZpZz86IE1vbmFjb0VkaXRvckxhbmd1YWdlQ29uZmlnO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvcHRpb25zOiBlZGl0b3IuSVN0YW5kYWxvbmVFZGl0b3JDb25zdHJ1Y3Rpb25PcHRpb25zID0ge307XG5cbiAgQElucHV0KClcbiAgcHVibGljIGRpc2FibGVNaW5pTWFwID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGRpc2FibGVBdXRvRm9ybWF0ID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zaW5nbGUtbGluZScpXG4gIHB1YmxpYyBzaW5nbGVMaW5lTW9kZSA9IGZhbHNlO1xuXG4gIHB1YmxpYyBsb2FkZWQkID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XG5cbiAgcHJpdmF0ZSBkZWZhdWx0T3B0aW9uczogZWRpdG9yLklTdGFuZGFsb25lRWRpdG9yQ29uc3RydWN0aW9uT3B0aW9ucyA9IHtcbiAgICBjb250ZXh0bWVudTogZmFsc2UsXG4gICAgbWluaW1hcDoge1xuICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICB9LFxuICAgIGF1dG9tYXRpY0xheW91dDogdHJ1ZSxcbiAgICBzY3JvbGxCZXlvbmRMYXN0TGluZTogZmFsc2UsXG4gIH07XG5cbiAgcHVibGljIHZhbHVlID0gJyc7XG4gIHB1YmxpYyByZWFkT25seSA9IGZhbHNlO1xuICBwdWJsaWMgc3RhbmRhbG9uZUNvZGVFZGl0b3I/OiBlZGl0b3IuSVN0YW5kYWxvbmVDb2RlRWRpdG9yO1xuICBwcml2YXRlIHRleHRNb2RlbD86IGVkaXRvci5JVGV4dE1vZGVsO1xuICBwcml2YXRlIHRvRGlzcG9zZXM6IE1vbmFjby5JRGlzcG9zYWJsZVtdID0gW107XG5cbiAgcHJvdGVjdGVkIF9vbkNoYW5nZTogKF92YWx1ZTogc3RyaW5nIHwgbnVsbCkgPT4gdm9pZCA9ICgpID0+ICh7fSk7XG5cbiAgcHJvdGVjdGVkIF9vblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiAoe30pO1xuICBwcml2YXRlIHVuc3Vic2NyaWJlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGhvc3RFbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIEBJbmplY3QoR0lPX01PTkFDT19FRElUT1JfQ09ORklHKSBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogR2lvTW9uYWNvRWRpdG9yQ29uZmlnLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbW9uYWNvRWRpdG9yU2VydmljZTogR2lvTW9uYWNvRWRpdG9yU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxhbmd1YWdlSnNvblNlcnZpY2U6IEdpb0xhbmd1YWdlSnNvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsYW5ndWFnZVNwZWxTZXJ2aWNlOiBHaW9MYW5ndWFnZUVsU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLFxuICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIHJlYWRvbmx5IG5nQ29udHJvbDogTmdDb250cm9sLFxuICApIHtcbiAgICBpZiAodGhpcy5uZ0NvbnRyb2wpIHtcbiAgICAgIC8vIFNldCB0aGUgdmFsdWUgYWNjZXNzb3IgZGlyZWN0bHkgKGluc3RlYWQgb2YgcHJvdmlkaW5nXG4gICAgICAvLyBOR19WQUxVRV9BQ0NFU1NPUikgdG8gYXZvaWQgcnVubmluZyBpbnRvIGEgY2lyY3VsYXIgaW1wb3J0XG4gICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICB9XG4gICAgdGhpcy5tb25hY29FZGl0b3JTZXJ2aWNlLmxvYWRFZGl0b3IoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgLy8gV2FpdCB1bnRpbCBtb25hY28gZWRpdG9yIGlzIGF2YWlsYWJsZVxuICAgIHRoaXMubW9uYWNvRWRpdG9yU2VydmljZS5sb2FkZWQkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSkuc3Vic2NyaWJlKCh7IG1vbmFjbyB9KSA9PiB7XG4gICAgICB0aGlzLnNldHVwRWRpdG9yKG1vbmFjbyk7XG5cbiAgICAgIHRoaXMubG9hZGVkJC5uZXh0KGZhbHNlKTtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMudG9EaXNwb3Nlcy5mb3JFYWNoKGQgPT4gZC5kaXNwb3NlKCkpO1xuXG4gICAgaWYgKHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3IpIHtcbiAgICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3IuZGlzcG9zZSgpO1xuICAgICAgdGhpcy5zdGFuZGFsb25lQ29kZUVkaXRvciA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50ZXh0TW9kZWwpIHtcbiAgICAgIHRoaXMudGV4dE1vZGVsLmRpc3Bvc2UoKTtcbiAgICAgIHRoaXMudGV4dE1vZGVsID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5uZXh0KCk7XG4gICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8vIEZyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXG4gIHB1YmxpYyB3cml0ZVZhbHVlKF92YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKF92YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9IGlzU3RyaW5nKF92YWx1ZSkgPyBfdmFsdWUgOiBKU09OLnN0cmluZ2lmeShfdmFsdWUpO1xuICAgIH1cbiAgICBpZiAodGhpcy50ZXh0TW9kZWwpIHtcbiAgICAgIHRoaXMudGV4dE1vZGVsLnNldFZhbHVlKHRoaXMudmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoX3ZhbHVlOiBzdHJpbmcgfCBudWxsKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5fb25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIC8vIEZyb20gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuX29uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgLy8gRnJvbSBDb250cm9sVmFsdWVBY2Nlc3NvciBpbnRlcmZhY2VcbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMucmVhZE9ubHkgPSBpc0Rpc2FibGVkO1xuXG4gICAgaWYgKHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3IpIHtcbiAgICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3IudXBkYXRlT3B0aW9ucyh7XG4gICAgICAgIHJlYWRPbmx5OiBpc0Rpc2FibGVkLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cEVkaXRvcihtb25hY286IHR5cGVvZiBNb25hY28pIHtcbiAgICBpZiAoIXRoaXMuaG9zdEVsZW1lbnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gZWRpdG9yIHJlZiBmb3VuZC4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBkb21FbGVtZW50ID0gdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50O1xuXG4gICAgY29uc3Qgc2V0dGluZ3MgPSB7XG4gICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcbiAgICAgIGxhbmd1YWdlOiB0aGlzLmxhbmd1YWdlQ29uZmlnPy5sYW5ndWFnZSA/PyAoaXNKc29uU3RyaW5nKHRoaXMudmFsdWUpID8gJ2pzb24nIDogJ3BsYWludGV4dCcpLFxuICAgICAgdXJpOiBgY29kZS0ke3VuaXF1ZUlkKCl9YCxcbiAgICB9O1xuXG4gICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgdGhpcy50ZXh0TW9kZWwgPSBtb25hY28uZWRpdG9yLmNyZWF0ZU1vZGVsKHNldHRpbmdzLnZhbHVlLCBzZXR0aW5ncy5sYW5ndWFnZSwgbW9uYWNvLlVyaS5wYXJzZShzZXR0aW5ncy51cmkpKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IG9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmRlZmF1bHRPcHRpb25zLCB0aGlzLm9wdGlvbnMsIHtcbiAgICAgIHJlYWRPbmx5OiB0aGlzLnJlYWRPbmx5LFxuICAgICAgdGhlbWU6IHRoaXMuY29uZmlnLnRoZW1lID8/ICd2cycsXG4gICAgICBtb2RlbDogdGhpcy50ZXh0TW9kZWwsXG4gICAgICBtaW5pbWFwOiB7XG4gICAgICAgIGVuYWJsZWQ6ICF0aGlzLmRpc2FibGVNaW5pTWFwLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3IgPSBtb25hY28uZWRpdG9yLmNyZWF0ZShkb21FbGVtZW50LCB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuXG4gICAgaWYgKCF0aGlzLmRpc2FibGVBdXRvRm9ybWF0KSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zdGFuZGFsb25lQ29kZUVkaXRvcj8uZ2V0QWN0aW9uKCdlZGl0b3IuYWN0aW9uLmZvcm1hdERvY3VtZW50Jyk/LnJ1bigpO1xuICAgICAgfSwgODApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNpbmdsZUxpbmVNb2RlKSB7XG4gICAgICB0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yPy5hZGRBY3Rpb24oe1xuICAgICAgICBpZDogJ2N1c3RvbS5hY3Rpb24nLFxuICAgICAgICBsYWJlbDogJ2N1c3RvbSBhY3Rpb24nLFxuICAgICAgICBrZXliaW5kaW5nczogW21vbmFjby5LZXlDb2RlLkVudGVyXSxcbiAgICAgICAgcHJlY29uZGl0aW9uOiAnIXN1Z2dlc3RXaWRnZXRWaXNpYmxlICYmICFyZW5hbWVJbnB1dFZpc2libGUgJiYgIWluU25pcHBldE1vZGUgJiYgIXF1aWNrRml4V2lkZ2V0VmlzaWJsZScsXG4gICAgICAgIHJ1bjogKCkgPT4ge1xuICAgICAgICAgIC8vIElnbm9yZSBFbnRlciBrZXkgaW4gc2luZ2xlIGxpbmUgbW9kZSB3aGVuIHdyaXRpbmdcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBvbkRpZENoYW5nZUNvbnRlbnQgPSB0aGlzLnRleHRNb2RlbD8ub25EaWRDaGFuZ2VDb250ZW50KCgpID0+IHtcbiAgICAgIGNvbnN0IHRleHRNb2RlbFZhbHVlID0gdGhpcy50ZXh0TW9kZWw/LmdldFZhbHVlKCkgPz8gJyc7XG4gICAgICBpZiAodGhpcy5zaW5nbGVMaW5lTW9kZSkge1xuICAgICAgICAvLyBJZiB2YWx1ZSBoYXMgXFxuLCBcXHIgb3IgXFxyXFxuLCByZW1vdmUgdGhlbVxuICAgICAgICAvLyBVc2VmdWwgdG8gY2xlYXIgbGluZSBicmVha3Mgd2hlbiBwYXN0aW5nIHRleHRcbiAgICAgICAgY29uc3QgaGFzTGluZUJyZWFrID0gbmV3IFJlZ0V4cCgvKFxcclxcbnxcXG58XFxyKS9nbSk7XG4gICAgICAgIGlmIChoYXNMaW5lQnJlYWsudGVzdCh0ZXh0TW9kZWxWYWx1ZSkpIHtcbiAgICAgICAgICBjb25zdCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yPy5nZXRQb3NpdGlvbigpO1xuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zdGFuZGFsb25lQ29kZUVkaXRvcj8ucHVzaFVuZG9TdG9wKCk7XG4gICAgICAgICAgICB0aGlzLnRleHRNb2RlbD8uc2V0VmFsdWUodGV4dE1vZGVsVmFsdWUucmVwbGFjZSgvKFxcclxcbnxcXG58XFxyKS9nbSwgJycpKTtcbiAgICAgICAgICAgIGlmIChjdXJyZW50UG9zaXRpb24pIHtcbiAgICAgICAgICAgICAgdGhpcy5zdGFuZGFsb25lQ29kZUVkaXRvcj8uc2V0UG9zaXRpb24oY3VycmVudFBvc2l0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3I/LnBvcFVuZG9TdG9wKCk7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy5yZWFkT25seSAmJiAhaXNFcXVhbCh0aGlzLnZhbHVlLCB0ZXh0TW9kZWxWYWx1ZSkpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSB0ZXh0TW9kZWxWYWx1ZTtcbiAgICAgICAgICAgIHRoaXMuX29uQ2hhbmdlKHRleHRNb2RlbFZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMuX29uVG91Y2hlZCgpO1xuICAgICAgICAgIH0sIDApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLnNpbmdsZUxpbmVNb2RlKSB7XG4gICAgICAvLyBTb3VyY2UgOiBodHRwczovL2ZhcnphZHl6LmNvbS9ibG9nL3NpbmdsZS1saW5lLW1vbmFjby1lZGl0b3JcbiAgICAgIHRoaXMuc3RhbmRhbG9uZUNvZGVFZGl0b3I/LnVwZGF0ZU9wdGlvbnMoe1xuICAgICAgICAvLyBxdWlja1N1Z2dlc3Rpb25zOiBmYWxzZSxcbiAgICAgICAgZml4ZWRPdmVyZmxvd1dpZGdldHM6IHRydWUsXG4gICAgICAgIGFjY2VwdFN1Z2dlc3Rpb25PbkVudGVyOiAnb24nLFxuICAgICAgICBob3Zlcjoge1xuICAgICAgICAgIGRlbGF5OiAxMDAsXG4gICAgICAgIH0sXG4gICAgICAgIHJvdW5kZWRTZWxlY3Rpb246IGZhbHNlLFxuICAgICAgICBjb250ZXh0bWVudTogZmFsc2UsXG4gICAgICAgIGN1cnNvclN0eWxlOiAnbGluZS10aGluJyxcbiAgICAgICAgbGlua3M6IGZhbHNlLFxuICAgICAgICBmaW5kOiB7XG4gICAgICAgICAgYWRkRXh0cmFTcGFjZU9uVG9wOiBmYWxzZSxcbiAgICAgICAgICBhdXRvRmluZEluU2VsZWN0aW9uOiAnbmV2ZXInLFxuICAgICAgICAgIHNlZWRTZWFyY2hTdHJpbmdGcm9tU2VsZWN0aW9uOiAnbmV2ZXInLFxuICAgICAgICB9LFxuICAgICAgICBmb250U2l6ZTogMTQsXG4gICAgICAgIGZvbnRXZWlnaHQ6ICdub3JtYWwnLFxuICAgICAgICBvdmVydmlld1J1bGVyTGFuZXM6IDAsXG4gICAgICAgIHNjcm9sbEJleW9uZExhc3RDb2x1bW46IDAsXG4gICAgICAgIHdvcmRXcmFwOiAnb24nLFxuICAgICAgICBtaW5pbWFwOiB7XG4gICAgICAgICAgZW5hYmxlZDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIGxpbmVOdW1iZXJzOiAnb2ZmJyxcbiAgICAgICAgaGlkZUN1cnNvckluT3ZlcnZpZXdSdWxlcjogdHJ1ZSxcbiAgICAgICAgb3ZlcnZpZXdSdWxlckJvcmRlcjogZmFsc2UsXG4gICAgICAgIGdseXBoTWFyZ2luOiBmYWxzZSxcbiAgICAgICAgZm9sZGluZzogZmFsc2UsXG4gICAgICAgIGxpbmVEZWNvcmF0aW9uc1dpZHRoOiAwLFxuICAgICAgICBsaW5lTnVtYmVyc01pbkNoYXJzOiAwLFxuICAgICAgICByZW5kZXJMaW5lSGlnaGxpZ2h0OiAnbm9uZScsXG4gICAgICAgIHNjcm9sbGJhcjoge1xuICAgICAgICAgIGhvcml6b250YWw6ICdoaWRkZW4nLFxuICAgICAgICAgIHZlcnRpY2FsOiAnaGlkZGVuJyxcbiAgICAgICAgICBhbHdheXNDb25zdW1lTW91c2VXaGVlbDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBvbkRpZEJsdXJFZGl0b3JXaWRnZXQgPSB0aGlzLnN0YW5kYWxvbmVDb2RlRWRpdG9yPy5vbkRpZEJsdXJFZGl0b3JXaWRnZXQoKCkgPT4ge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnJlYWRPbmx5KSB0aGlzLl9vblRvdWNoZWQoKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGhpcy50b0Rpc3Bvc2VzID0gW29uRGlkQ2hhbmdlQ29udGVudCwgb25EaWRCbHVyRWRpdG9yV2lkZ2V0XS5maWx0ZXIoZCA9PiAhIWQpIGFzIE1vbmFjby5JRGlzcG9zYWJsZVtdO1xuXG4gICAgdGhpcy5zZXR1cExhbmd1YWdlKHNldHRpbmdzLnVyaSwgdGhpcy5sYW5ndWFnZUNvbmZpZyk7XG4gIH1cblxuICBwcml2YXRlIHNldHVwTGFuZ3VhZ2UodXJpOiBzdHJpbmcsIGxhbmd1YWdlQ29uZmlnPzogTW9uYWNvRWRpdG9yTGFuZ3VhZ2VDb25maWcpIHtcbiAgICBpZiAoIWxhbmd1YWdlQ29uZmlnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3dpdGNoIChsYW5ndWFnZUNvbmZpZy5sYW5ndWFnZSkge1xuICAgICAgY2FzZSAnanNvbic6XG4gICAgICAgIGlmIChsYW5ndWFnZUNvbmZpZy5zY2hlbWFzKSB7XG4gICAgICAgICAgdGhpcy5sYW5ndWFnZUpzb25TZXJ2aWNlLmFkZFNjaGVtYXModXJpLCBsYW5ndWFnZUNvbmZpZy5zY2hlbWFzKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3NwZWwnOlxuICAgICAgICBpZiAobGFuZ3VhZ2VDb25maWcuc2NoZW1hKSB7XG4gICAgICAgICAgdGhpcy5sYW5ndWFnZVNwZWxTZXJ2aWNlLnNldFNjaGVtYShsYW5ndWFnZUNvbmZpZy5zY2hlbWEpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGlzSnNvblN0cmluZyA9IChzdHI6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xuICB0cnkge1xuICAgIEpTT04ucGFyc2Uoc3RyKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn07XG4iXX0=