@ndwnu/design-system 0.0.1-beta.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +3 -136
  2. package/assets/icons/icons.json +830 -46
  3. package/assets/images/ndw-logo-short.svg +1 -1
  4. package/assets/images/nwb-logo-short.svg +10 -0
  5. package/assets/images/nwb-logo.svg +3 -10
  6. package/components/collapsible/collapsible.animation.d.ts +1 -0
  7. package/components/collapsible/collapsible.component.d.ts +1 -0
  8. package/components/dropdown/dropdown-trigger.directive.d.ts +23 -0
  9. package/components/dropdown/dropdown.component.d.ts +6 -17
  10. package/components/dropdown/index.d.ts +1 -0
  11. package/components/form-field/checkbox/checkbox.component.d.ts +23 -0
  12. package/components/form-field/checkbox/index.d.ts +1 -0
  13. package/components/form-field/checkbox-group/checkbox-group.component.d.ts +5 -0
  14. package/components/form-field/checkbox-group/index.d.ts +1 -0
  15. package/components/form-field/form-field.component.d.ts +12 -8
  16. package/components/form-field/form-field.model.d.ts +1 -0
  17. package/components/form-field/index.d.ts +7 -0
  18. package/components/form-field/radio-button/index.d.ts +1 -0
  19. package/components/form-field/radio-button/radio-button.component.d.ts +22 -0
  20. package/components/form-field/radio-group/index.d.ts +1 -0
  21. package/components/form-field/radio-group/radio-group.component.d.ts +11 -0
  22. package/components/icon/icon.component.d.ts +2 -5
  23. package/components/index.d.ts +4 -4
  24. package/components/main-navigation/main-navigation.component.d.ts +18 -9
  25. package/components/main-navigation-menu/main-navigation-menu.component.d.ts +2 -4
  26. package/components/modal/index.d.ts +1 -0
  27. package/components/modal/modal-trigger.directive.d.ts +20 -0
  28. package/components/pill/index.d.ts +2 -0
  29. package/components/pill/pill.component.d.ts +8 -0
  30. package/components/pill/pill.model.d.ts +8 -0
  31. package/core/styles/ndw-styles.scss +48 -116
  32. package/core/styles/nwb-styles.scss +48 -116
  33. package/esm2022/components/accordion/accordion.component.mjs +1 -1
  34. package/esm2022/components/accordion/accordion.service.mjs +2 -2
  35. package/esm2022/components/badge/badge.component.mjs +3 -3
  36. package/esm2022/components/card/card.component.mjs +3 -3
  37. package/esm2022/components/collapsible/collapsible.animation.mjs +36 -0
  38. package/esm2022/components/collapsible/collapsible.component.mjs +7 -9
  39. package/esm2022/components/dropdown/dropdown-trigger.directive.mjs +99 -0
  40. package/esm2022/components/dropdown/dropdown.component.mjs +10 -65
  41. package/esm2022/components/dropdown/index.mjs +2 -1
  42. package/esm2022/components/form-field/checkbox/checkbox.component.mjs +91 -0
  43. package/esm2022/components/form-field/checkbox/index.mjs +2 -0
  44. package/esm2022/components/form-field/checkbox-group/checkbox-group.component.mjs +11 -0
  45. package/esm2022/components/form-field/checkbox-group/index.mjs +2 -0
  46. package/esm2022/components/form-field/error/error.component.mjs +12 -0
  47. package/esm2022/components/form-field/error/index.mjs +2 -0
  48. package/esm2022/components/form-field/form-field.component.mjs +67 -44
  49. package/esm2022/components/form-field/form-field.model.mjs +2 -1
  50. package/esm2022/components/form-field/index.mjs +8 -1
  51. package/esm2022/components/form-field/info/index.mjs +2 -0
  52. package/esm2022/components/{info → form-field/info}/info.component.mjs +1 -1
  53. package/esm2022/components/form-field/input/index.mjs +3 -0
  54. package/esm2022/components/form-field/input/input.directive.mjs +36 -0
  55. package/esm2022/components/form-field/input/input.model.mjs +13 -0
  56. package/esm2022/components/form-field/radio-button/index.mjs +2 -0
  57. package/esm2022/components/form-field/radio-button/radio-button.component.mjs +81 -0
  58. package/esm2022/components/form-field/radio-group/index.mjs +2 -0
  59. package/esm2022/components/form-field/radio-group/radio-group.component.mjs +34 -0
  60. package/esm2022/components/icon/icon.component.mjs +12 -20
  61. package/esm2022/components/icon/icon.service.mjs +2 -2
  62. package/esm2022/components/index.mjs +5 -5
  63. package/esm2022/components/main-navigation/main-navigation.component.mjs +50 -15
  64. package/esm2022/components/main-navigation-menu/main-navigation-menu.component.mjs +5 -13
  65. package/esm2022/components/modal/index.mjs +2 -0
  66. package/esm2022/components/modal/modal-trigger.directive.mjs +77 -0
  67. package/esm2022/components/pill/index.mjs +3 -0
  68. package/esm2022/components/pill/pill.component.mjs +20 -0
  69. package/esm2022/components/pill/pill.model.mjs +2 -0
  70. package/esm2022/components/tab/tab.component.mjs +2 -2
  71. package/esm2022/components/tab-group/tab-group.component.mjs +3 -3
  72. package/esm2022/components/tooltip/tooltip.component.mjs +3 -3
  73. package/esm2022/components/tooltip/tooltip.directive.mjs +4 -3
  74. package/fesm2022/ndwnu-design-system.mjs +610 -205
  75. package/fesm2022/ndwnu-design-system.mjs.map +1 -1
  76. package/package.json +3 -2
  77. package/esm2022/components/error/error.component.mjs +0 -14
  78. package/esm2022/components/error/index.mjs +0 -2
  79. package/esm2022/components/info/index.mjs +0 -2
  80. package/esm2022/components/input/index.mjs +0 -3
  81. package/esm2022/components/input/input.directive.mjs +0 -36
  82. package/esm2022/components/input/input.model.mjs +0 -13
  83. /package/components/{error → form-field/error}/error.component.d.ts +0 -0
  84. /package/components/{error → form-field/error}/index.d.ts +0 -0
  85. /package/components/{info → form-field/info}/index.d.ts +0 -0
  86. /package/components/{info → form-field/info}/info.component.d.ts +0 -0
  87. /package/components/{input → form-field/input}/index.d.ts +0 -0
  88. /package/components/{input → form-field/input}/input.directive.d.ts +0 -0
  89. /package/components/{input → form-field/input}/input.model.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import { Overlay } from '@angular/cdk/overlay';
2
2
  import { ComponentPortal } from '@angular/cdk/portal';
3
- import { Directive, ElementRef, HostListener, inject, input } from '@angular/core';
3
+ import { Directive, ElementRef, HostListener, inject, input, } from '@angular/core';
4
4
  import { TooltipComponent } from './tooltip.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class TooltipDirective {
@@ -10,7 +10,8 @@ export class TooltipDirective {
10
10
  this.overlay = inject(Overlay);
11
11
  }
12
12
  ngOnInit() {
13
- const positionStrategy = this.overlay.position()
13
+ const positionStrategy = this.overlay
14
+ .position()
14
15
  .flexibleConnectedTo(this.elementRef.nativeElement)
15
16
  .withPositions([
16
17
  {
@@ -61,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
61
62
  type: HostListener,
62
63
  args: ['mouseleave']
63
64
  }] } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZHcvc3JjL2NvbXBvbmVudHMvdG9vbHRpcC90b29sdGlwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFFWixNQUFNLEVBQ04sS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU12RCxNQUFNLE9BQU8sZ0JBQWdCO0lBSjdCO1FBS1MsU0FBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUU3QyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLFlBQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7S0E2QzVDO0lBekNRLFFBQVE7UUFDYixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO2FBQzdDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO2FBQ2xELGFBQWEsQ0FBQztZQUNiO2dCQUNFLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQzNELE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQ1gsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLE9BQU8sRUFBRSxLQUFLO2dCQUNkLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsVUFBVSxFQUFFLGFBQWE7YUFDMUI7WUFDRDtnQkFDRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsV0FBVyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUMzRCxPQUFPLEVBQUUsQ0FBQztnQkFDVixPQUFPLEVBQUUsT0FBTztnQkFDaEIsT0FBTyxFQUFFLFFBQVE7Z0JBQ2pCLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixRQUFRLEVBQUUsS0FBSztnQkFDZixVQUFVLEVBQUUsZ0JBQWdCO2FBQzdCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0wsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBR1MsSUFBSTtRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JELE1BQU0sVUFBVSxHQUFtQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRixVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFHUyxJQUFJO1FBQ1osSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQWhEVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQW9DVyxJQUFJO3NCQURiLFlBQVk7dUJBQUMsWUFBWTtnQkFZaEIsSUFBSTtzQkFEYixZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBDb21wb25lbnRSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBPbkluaXQsXG4gIGluamVjdCxcbiAgaW5wdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL3Rvb2x0aXAuY29tcG9uZW50JztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW25kd1Rvb2x0aXBdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyB0ZXh0ID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPih7IGFsaWFzOiAnbmR3VG9vbHRpcCcgfSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IG92ZXJsYXkgPSBpbmplY3QoT3ZlcmxheSk7XG5cbiAgcHJpdmF0ZSBvdmVybGF5UmVmITogT3ZlcmxheVJlZjtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMub3ZlcmxheS5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudClcbiAgICAgIC53aXRoUG9zaXRpb25zKFtcbiAgICAgICAge1xuICAgICAgICAgIG9mZnNldFg6IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIC8gMiAtIDE2LFxuICAgICAgICAgIG9mZnNldFk6IC04LFxuICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0b29sdGlwLXRvcCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvZmZzZXRYOiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCAvIDIgLSAxNixcbiAgICAgICAgICBvZmZzZXRZOiA4LFxuICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0b29sdGlwLWJvdHRvbScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKHsgcG9zaXRpb25TdHJhdGVneSB9KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZW50ZXInKVxuICBwcm90ZWN0ZWQgc2hvdygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMudGV4dCgpLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoVG9vbHRpcENvbXBvbmVudCk7XG4gICAgY29uc3QgdG9vbHRpcFJlZjogQ29tcG9uZW50UmVmPFRvb2x0aXBDb21wb25lbnQ+ID0gdGhpcy5vdmVybGF5UmVmLmF0dGFjaChwb3J0YWwpO1xuICAgIHRvb2x0aXBSZWYuaW5zdGFuY2UudGV4dCA9IHRoaXMudGV4dDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxuICBwcm90ZWN0ZWQgaGlkZSgpOiB2b2lkIHtcbiAgICB0aGlzLm92ZXJsYXlSZWYuZGV0YWNoKCk7XG4gIH1cbn1cbiJdfQ==
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZHcvc3JjL2NvbXBvbmVudHMvdG9vbHRpcC90b29sdGlwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFFWixNQUFNLEVBQ04sS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU12RCxNQUFNLE9BQU8sZ0JBQWdCO0lBSjdCO1FBS1MsU0FBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUU3QyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLFlBQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7S0E4QzVDO0lBMUNRLFFBQVE7UUFDYixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPO2FBQ2xDLFFBQVEsRUFBRTthQUNWLG1CQUFtQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO2FBQ2xELGFBQWEsQ0FBQztZQUNiO2dCQUNFLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQzNELE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQ1gsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLE9BQU8sRUFBRSxLQUFLO2dCQUNkLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsVUFBVSxFQUFFLGFBQWE7YUFDMUI7WUFDRDtnQkFDRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsV0FBVyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUMzRCxPQUFPLEVBQUUsQ0FBQztnQkFDVixPQUFPLEVBQUUsT0FBTztnQkFDaEIsT0FBTyxFQUFFLFFBQVE7Z0JBQ2pCLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixRQUFRLEVBQUUsS0FBSztnQkFDZixVQUFVLEVBQUUsZ0JBQWdCO2FBQzdCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0wsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBR1MsSUFBSTtRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JELE1BQU0sVUFBVSxHQUFtQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRixVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFHUyxJQUFJO1FBQ1osSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQWpEVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQXFDVyxJQUFJO3NCQURiLFlBQVk7dUJBQUMsWUFBWTtnQkFZaEIsSUFBSTtzQkFEYixZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBDb21wb25lbnRSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBPbkluaXQsXG4gIGluamVjdCxcbiAgaW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZHdUb29sdGlwXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgdGV4dCA9IGlucHV0LnJlcXVpcmVkPHN0cmluZz4oeyBhbGlhczogJ25kd1Rvb2x0aXAnIH0pO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBvdmVybGF5ID0gaW5qZWN0KE92ZXJsYXkpO1xuXG4gIHByaXZhdGUgb3ZlcmxheVJlZiE6IE92ZXJsYXlSZWY7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudClcbiAgICAgIC53aXRoUG9zaXRpb25zKFtcbiAgICAgICAge1xuICAgICAgICAgIG9mZnNldFg6IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIC8gMiAtIDE2LFxuICAgICAgICAgIG9mZnNldFk6IC04LFxuICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0b29sdGlwLXRvcCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvZmZzZXRYOiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCAvIDIgLSAxNixcbiAgICAgICAgICBvZmZzZXRZOiA4LFxuICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0b29sdGlwLWJvdHRvbScsXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKHsgcG9zaXRpb25TdHJhdGVneSB9KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZW50ZXInKVxuICBwcm90ZWN0ZWQgc2hvdygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMudGV4dCgpLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoVG9vbHRpcENvbXBvbmVudCk7XG4gICAgY29uc3QgdG9vbHRpcFJlZjogQ29tcG9uZW50UmVmPFRvb2x0aXBDb21wb25lbnQ+ID0gdGhpcy5vdmVybGF5UmVmLmF0dGFjaChwb3J0YWwpO1xuICAgIHRvb2x0aXBSZWYuaW5zdGFuY2UudGV4dCA9IHRoaXMudGV4dDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxuICBwcm90ZWN0ZWQgaGlkZSgpOiB2b2lkIHtcbiAgICB0aGlzLm92ZXJsYXlSZWYuZGV0YWNoKCk7XG4gIH1cbn1cbiJdfQ==