@bravura/ui 2.4.0 → 2.5.1

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 (108) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/alert/alert-container.component.d.ts +3 -1
  3. package/clip-note/clip-note.component.d.ts +45 -0
  4. package/clip-note/clip-note.directive.d.ts +69 -0
  5. package/clip-note/clip-note.module.d.ts +19 -0
  6. package/clip-note/index.d.ts +5 -0
  7. package/clip-note/public-api.d.ts +1 -0
  8. package/discrete-input/discrete-input.component.d.ts +4 -2
  9. package/esm2020/alert/alert-container.component.mjs +14 -8
  10. package/esm2020/alert/alert-message.component.mjs +4 -4
  11. package/esm2020/alert/alert.module.mjs +4 -4
  12. package/esm2020/behavior/await.directive.mjs +4 -4
  13. package/esm2020/behavior/behavior.module.mjs +4 -4
  14. package/esm2020/behavior/sizing-monitor.directive.mjs +3 -3
  15. package/esm2020/behavior/sizing.directive.mjs +4 -4
  16. package/esm2020/clip-note/bravura-ui-clip-note.mjs +5 -0
  17. package/esm2020/clip-note/clip-note.component.mjs +216 -0
  18. package/esm2020/clip-note/clip-note.directive.mjs +141 -0
  19. package/esm2020/clip-note/clip-note.module.mjs +32 -0
  20. package/esm2020/clip-note/public-api.mjs +2 -0
  21. package/esm2020/common/common.module.mjs +5 -5
  22. package/esm2020/currency-input/currency-input.directive.mjs +3 -3
  23. package/esm2020/currency-input/currency-input.module.mjs +4 -4
  24. package/esm2020/decimal-input/decimal-input.directive.mjs +3 -3
  25. package/esm2020/decimal-input/decimal-input.module.mjs +4 -4
  26. package/esm2020/discrete-input/discrete-input.component.mjs +26 -15
  27. package/esm2020/discrete-input/discrete-input.module.mjs +4 -4
  28. package/esm2020/file-upload/file-upload.component.mjs +3 -3
  29. package/esm2020/file-upload/file-upload.module.mjs +4 -4
  30. package/esm2020/file-upload/file-upload.service.mjs +3 -3
  31. package/esm2020/form-field/form-field.component.mjs +6 -6
  32. package/esm2020/form-field/form-field.module.mjs +4 -4
  33. package/esm2020/icon-font/icon-font.module.mjs +4 -4
  34. package/esm2020/icon-font/icon.directive.mjs +3 -3
  35. package/esm2020/panel/panel-section.component.mjs +3 -3
  36. package/esm2020/panel/panel.component.mjs +4 -4
  37. package/esm2020/panel/panel.module.mjs +4 -4
  38. package/esm2020/phone-number/phone-number.directive.mjs +3 -3
  39. package/esm2020/phone-number/phone-number.module.mjs +4 -4
  40. package/esm2020/phone-number/phone-number.pipe.mjs +3 -3
  41. package/esm2020/phone-number/phone-number.validator.mjs +3 -3
  42. package/esm2020/radio-panel/radio-panel-item.component.mjs +5 -5
  43. package/esm2020/radio-panel/radio-panel.component.mjs +3 -3
  44. package/esm2020/radio-panel/radio-panel.module.mjs +4 -4
  45. package/esm2020/selection-panel/selection-panel-item.component.mjs +4 -4
  46. package/esm2020/selection-panel/selection-panel.directive.mjs +3 -3
  47. package/esm2020/selection-panel/selection-panel.module.mjs +4 -4
  48. package/esm2020/skeletons/skeleton-loader-presets.directive.mjs +3 -3
  49. package/esm2020/skeletons/skeleton-loader.component.mjs +3 -3
  50. package/esm2020/skeletons/skeletons.module.mjs +4 -4
  51. package/esm2020/stepper/stepper.component.mjs +3 -3
  52. package/esm2020/stepper/stepper.module.mjs +4 -4
  53. package/esm2020/tooltip/tooltip.component.mjs +3 -3
  54. package/esm2020/tooltip/tooltip.directive.mjs +3 -3
  55. package/esm2020/tooltip/tooltip.module.mjs +4 -4
  56. package/fesm2015/bravura-ui-alert.mjs +20 -14
  57. package/fesm2015/bravura-ui-alert.mjs.map +1 -1
  58. package/fesm2015/bravura-ui-behavior.mjs +13 -13
  59. package/fesm2015/bravura-ui-behavior.mjs.map +1 -1
  60. package/fesm2015/bravura-ui-clip-note.mjs +393 -0
  61. package/fesm2015/bravura-ui-clip-note.mjs.map +1 -0
  62. package/fesm2015/bravura-ui-common.mjs +4 -4
  63. package/fesm2015/bravura-ui-common.mjs.map +1 -1
  64. package/fesm2015/bravura-ui-currency-input.mjs +7 -7
  65. package/fesm2015/bravura-ui-decimal-input.mjs +7 -7
  66. package/fesm2015/bravura-ui-discrete-input.mjs +29 -18
  67. package/fesm2015/bravura-ui-discrete-input.mjs.map +1 -1
  68. package/fesm2015/bravura-ui-file-upload.mjs +10 -10
  69. package/fesm2015/bravura-ui-form-field.mjs +9 -9
  70. package/fesm2015/bravura-ui-form-field.mjs.map +1 -1
  71. package/fesm2015/bravura-ui-icon-font.mjs +7 -7
  72. package/fesm2015/bravura-ui-panel.mjs +11 -11
  73. package/fesm2015/bravura-ui-panel.mjs.map +1 -1
  74. package/fesm2015/bravura-ui-phone-number.mjs +13 -13
  75. package/fesm2015/bravura-ui-radio-panel.mjs +11 -11
  76. package/fesm2015/bravura-ui-radio-panel.mjs.map +1 -1
  77. package/fesm2015/bravura-ui-selection-panel.mjs +11 -11
  78. package/fesm2015/bravura-ui-selection-panel.mjs.map +1 -1
  79. package/fesm2015/bravura-ui-skeletons.mjs +10 -10
  80. package/fesm2015/bravura-ui-stepper.mjs +7 -7
  81. package/fesm2015/bravura-ui-tooltip.mjs +10 -10
  82. package/fesm2020/bravura-ui-alert.mjs +20 -14
  83. package/fesm2020/bravura-ui-alert.mjs.map +1 -1
  84. package/fesm2020/bravura-ui-behavior.mjs +13 -13
  85. package/fesm2020/bravura-ui-behavior.mjs.map +1 -1
  86. package/fesm2020/bravura-ui-clip-note.mjs +388 -0
  87. package/fesm2020/bravura-ui-clip-note.mjs.map +1 -0
  88. package/fesm2020/bravura-ui-common.mjs +4 -4
  89. package/fesm2020/bravura-ui-common.mjs.map +1 -1
  90. package/fesm2020/bravura-ui-currency-input.mjs +7 -7
  91. package/fesm2020/bravura-ui-decimal-input.mjs +7 -7
  92. package/fesm2020/bravura-ui-discrete-input.mjs +29 -18
  93. package/fesm2020/bravura-ui-discrete-input.mjs.map +1 -1
  94. package/fesm2020/bravura-ui-file-upload.mjs +10 -10
  95. package/fesm2020/bravura-ui-form-field.mjs +9 -9
  96. package/fesm2020/bravura-ui-form-field.mjs.map +1 -1
  97. package/fesm2020/bravura-ui-icon-font.mjs +7 -7
  98. package/fesm2020/bravura-ui-panel.mjs +11 -11
  99. package/fesm2020/bravura-ui-panel.mjs.map +1 -1
  100. package/fesm2020/bravura-ui-phone-number.mjs +13 -13
  101. package/fesm2020/bravura-ui-radio-panel.mjs +11 -11
  102. package/fesm2020/bravura-ui-radio-panel.mjs.map +1 -1
  103. package/fesm2020/bravura-ui-selection-panel.mjs +11 -11
  104. package/fesm2020/bravura-ui-selection-panel.mjs.map +1 -1
  105. package/fesm2020/bravura-ui-skeletons.mjs +10 -10
  106. package/fesm2020/bravura-ui-stepper.mjs +7 -7
  107. package/fesm2020/bravura-ui-tooltip.mjs +10 -10
  108. package/package.json +9 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Change history
2
2
 
3
+ ## <small>2.5.1 (2022-09-26)</small>
4
+
5
+ * build: fix incorrect package checksum ([8d0bc98](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/8d0bc98))
6
+ * build: fix issue with package resolution ([b6fd072](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/b6fd072))
7
+ * ci: upgrade packages ([b1b1f9c](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/b1b1f9c))
8
+ * fix(alert): fix alert content overflow boundaries in animation ([ec408c1](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/ec408c1))
9
+ * fix(discrete-input): improve accessbility ([11dd4be](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/11dd4be))
10
+ * fix(form-field): fix mat icon being clipped off in suffix area ([58e3777](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/58e3777))
11
+ * docs(clip-note): fix source code display ([085c13d](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/085c13d))
12
+ * docs(storybook): clean up documents ([19ffb8e](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/19ffb8e))
13
+
14
+ ## 2.5.0 (2022-09-23)
15
+
16
+ * feat: add new ui component - clip note ([2c55879](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/2c55879))
17
+
3
18
  ## 2.4.0 (2022-09-19)
4
19
 
5
20
  * test: fix test failures ([2ed4fdd](https://scm.bravurasolutions.net/projects/DIGI/repos/ui-components/commits/2ed4fdd))
@@ -47,6 +47,8 @@ export declare class AlertContainerComponent implements OnInit, OnDestroy {
47
47
  readonly _animationEnded: Subject<AnimationEvent>;
48
48
  private _destroyed$;
49
49
  private _endFloatingSub?;
50
+ /** Emits the component instance after initialisation. */
51
+ private init;
50
52
  constructor(zone: NgZone, cdRef: ChangeDetectorRef, _elementRef: ElementRef<HTMLElement>, scroll: ScrollDispatcher);
51
53
  ngOnInit(): void;
52
54
  ngOnDestroy(): void;
@@ -64,6 +66,6 @@ export declare class AlertContainerComponent implements OnInit, OnDestroy {
64
66
  clear(): Promise<void>;
65
67
  private _endFloating;
66
68
  static ɵfac: i0.ɵɵFactoryDeclaration<AlertContainerComponent, never>;
67
- static ɵcmp: i0.ɵɵComponentDeclaration<AlertContainerComponent, "bui-alert-container", never, { "max": "max"; "outsideViewportBehavior": "outsideViewportBehavior"; "floatDuration": "floatDuration"; }, {}, never, never, false>;
69
+ static ɵcmp: i0.ɵɵComponentDeclaration<AlertContainerComponent, "bui-alert-container", never, { "max": "max"; "outsideViewportBehavior": "outsideViewportBehavior"; "floatDuration": "floatDuration"; }, { "init": "init"; }, never, never, false>;
68
70
  }
69
71
  export {};
@@ -0,0 +1,45 @@
1
+ import { Directionality } from '@angular/cdk/bidi';
2
+ import { ChangeDetectorRef, ElementRef, EmbeddedViewRef, EventEmitter, OnDestroy, OnInit, TemplateRef } from '@angular/core';
3
+ import { ThemePalette } from '@angular/material/core';
4
+ import * as i0 from "@angular/core";
5
+ export declare class ClipNoteComponent implements OnInit, OnDestroy {
6
+ private _cd;
7
+ private _dir;
8
+ private _elemRef;
9
+ buttonText: string;
10
+ get buttonState(): string;
11
+ get buttonIconState(): string;
12
+ panelState: 'open' | 'closed-ltr' | 'closed-rtl';
13
+ direction: string;
14
+ _contentView?: EmbeddedViewRef<any>;
15
+ _content?: string;
16
+ _color: ThemePalette;
17
+ _buttonAnimating: boolean;
18
+ _icon?: string;
19
+ _hasContent: boolean;
20
+ readonly opened: EventEmitter<void>;
21
+ readonly closed: EventEmitter<void>;
22
+ private _hovering;
23
+ private _destroyed$;
24
+ private _toggleQueue;
25
+ private _viewDiv;
26
+ private _noteViewRef;
27
+ private _fallbackTemplate;
28
+ constructor(_cd: ChangeDetectorRef, _dir: Directionality, _elemRef: ElementRef<HTMLElement>);
29
+ ngOnInit(): void;
30
+ ngOnDestroy(): void;
31
+ _mouseOverButton(hovering: boolean): void;
32
+ toggle(): void;
33
+ _scheduleToggle(): void;
34
+ _checkToggle(): void;
35
+ open(): void;
36
+ close(): void;
37
+ _emit(): void;
38
+ _contentChanged(content?: string | TemplateRef<any>): void;
39
+ _checkContent(initial?: boolean): void;
40
+ _assignColor(color: ThemePalette): void;
41
+ _assignButtonText(text: string): void;
42
+ _assignButtonIcon(icon?: string): void;
43
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClipNoteComponent, [null, null, { host: true; }]>;
44
+ static ɵcmp: i0.ɵɵComponentDeclaration<ClipNoteComponent, "bui-clip-note", never, {}, {}, never, never, false>;
45
+ }
@@ -0,0 +1,69 @@
1
+ import { AfterViewInit, ElementRef, EventEmitter, InjectionToken, TemplateRef, ViewContainerRef } from '@angular/core';
2
+ import { ThemePalette } from '@angular/material/core';
3
+ import * as i0 from "@angular/core";
4
+ export interface ClipNoteDefaultConfig {
5
+ color: ThemePalette;
6
+ caption: string;
7
+ }
8
+ /** Used to provide default config for clip notes. */
9
+ export declare const CLIP_NOTE_DEFAULT_CONFIG: InjectionToken<ClipNoteDefaultConfig>;
10
+ /**
11
+ * A clip note consists of a toggle button and a floating 'notepad' element, attached to the top end of the host element's
12
+ * viewable area. The 'notepad' normally collapses away and only reveals itself when the toggle button is active.
13
+ *
14
+ * The toggle button clips on the edge of the host element and expands to display the full caption when hovered. It hides itself
15
+ * automatically when there is no content provided via the `buiClipNote` property of the directive.
16
+ *
17
+ * The clip note component is suitable for large page container elements with visible boundaries. It can present contextual
18
+ * information regarding and in addition to the content displayed in the main view area.
19
+ *
20
+ * The properties `buiClipNoteColor` and `buiClipNoteCaption` customise the appearance of the clip note, the default values of which
21
+ * can optionally be provided by the `ClipNoteModule.forConfig()` method.
22
+ *
23
+ */
24
+ export declare class ClipNoteDirective implements AfterViewInit {
25
+ private _elementRef;
26
+ private _vc;
27
+ /**
28
+ * Provide content to the clip note's floating notepad element.
29
+ * It accepts a `string` of HTML content or a `TemplateRef` object.
30
+ */
31
+ get buiClipNote(): string | TemplateRef<any> | undefined;
32
+ set buiClipNote(note: string | TemplateRef<any> | undefined);
33
+ /**
34
+ * Customise the theme color alias.
35
+ * @default 'primary'
36
+ */
37
+ get buiClipNoteColor(): ThemePalette;
38
+ set buiClipNoteColor(color: ThemePalette);
39
+ /**
40
+ * Customise the icon on the toggle button. With this property specified, the animation on the icon
41
+ * will not be active.
42
+ */
43
+ get buiClipNoteIcon(): string | undefined;
44
+ set buiClipNoteIcon(icon: string | undefined);
45
+ /**
46
+ * The caption of the toggle button when expanded.
47
+ */
48
+ get buiClipNoteCaption(): string;
49
+ set buiClipNoteCaption(text: string);
50
+ /** Emits when the panel opens */
51
+ readonly buiClipNoteOpened: EventEmitter<void>;
52
+ /** Emits when the panel closes */
53
+ readonly buiClipNoteClosed: EventEmitter<void>;
54
+ private _content?;
55
+ private _color;
56
+ private _compRef;
57
+ private _caption;
58
+ private _icon?;
59
+ constructor(_elementRef: ElementRef<HTMLElement>, _vc: ViewContainerRef, _config: ClipNoteDefaultConfig);
60
+ ngAfterViewInit(): void;
61
+ ngOnDestroy(): void;
62
+ /** Open the note panel */
63
+ open(): void;
64
+ /** Close the note panel */
65
+ close(): void;
66
+ private _processContent;
67
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClipNoteDirective, [{ host: true; }, null, null]>;
68
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ClipNoteDirective, "[buiClipNote]", ["buiClipNote"], { "buiClipNote": "buiClipNote"; "buiClipNoteColor": "buiClipNoteColor"; "buiClipNoteIcon": "buiClipNoteIcon"; "buiClipNoteCaption": "buiClipNoteCaption"; }, { "buiClipNoteOpened": "buiClipNoteOpened"; "buiClipNoteClosed": "buiClipNoteClosed"; }, never, never, false>;
69
+ }
@@ -0,0 +1,19 @@
1
+ import { ModuleWithProviders } from '@angular/core';
2
+ import { ClipNoteDefaultConfig, ClipNoteDirective } from './clip-note.directive';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./clip-note.component";
5
+ import * as i2 from "./clip-note.directive";
6
+ import * as i3 from "@angular/common";
7
+ import * as i4 from "@angular/material/button";
8
+ import * as i5 from "@angular/material/icon";
9
+ import * as i6 from "@angular/cdk/bidi";
10
+ import * as i7 from "@bravura/ui/common";
11
+ import * as i8 from "@angular/cdk/observers";
12
+ import * as i9 from "@bravura/ui/icon-font";
13
+ export declare class ClipNoteModule {
14
+ static forConfig(config: ClipNoteDefaultConfig): ModuleWithProviders<ClipNoteModule>;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClipNoteModule, never>;
16
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ClipNoteModule, [typeof i1.ClipNoteComponent, typeof i2.ClipNoteDirective], [typeof i3.CommonModule, typeof i4.MatButtonModule, typeof i5.MatIconModule, typeof i6.BidiModule, typeof i7.BuiCommonModule, typeof i8.ObserversModule, typeof i9.IconFontModule], [typeof i2.ClipNoteDirective]>;
17
+ static ɵinj: i0.ɵɵInjectorDeclaration<ClipNoteModule>;
18
+ }
19
+ export { ClipNoteDirective };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@bravura/ui/clip-note" />
5
+ export * from './public-api';
@@ -0,0 +1 @@
1
+ export * from './clip-note.module';
@@ -62,6 +62,7 @@ export declare class DiscreteInputComponent extends _DiscreteInputBase implement
62
62
  _formField: MatFormField;
63
63
  /**@ignore */
64
64
  ngControl: NgControl;
65
+ autocomplete?: string;
65
66
  private _sizeSpec;
66
67
  private _required;
67
68
  private _placeholder?;
@@ -112,7 +113,7 @@ export declare class DiscreteInputComponent extends _DiscreteInputBase implement
112
113
  /** @ignore */
113
114
  setDisabledState(isDisabled: boolean): void;
114
115
  /** @ignore */
115
- _handleInput(control: AbstractControl, index: number): void;
116
+ _handleInput(control: AbstractControl, index: number, event: Event): void;
116
117
  /** @ignore */
117
118
  _handleBeforeInput(index: number, event: InputEvent): void;
118
119
  /** @ignore */
@@ -133,7 +134,8 @@ export declare class DiscreteInputComponent extends _DiscreteInputBase implement
133
134
  _placeholderAt(index: number): string | undefined;
134
135
  /** @ignore */
135
136
  ngDoCheck(): void;
137
+ private _replaceText;
136
138
  static ɵfac: i0.ɵɵFactoryDeclaration<DiscreteInputComponent, [null, null, { optional: true; }, { optional: true; self: true; }, { optional: true; }, { optional: true; }, null]>;
137
- static ɵcmp: i0.ɵɵComponentDeclaration<DiscreteInputComponent, "bui-discrete-input", never, { "type": "type"; "separator": "separator"; "accept": "accept"; "userAriaDescribedBy": "aria-describedby"; "sizeSpec": "sizeSpec"; "placeholder": "placeholder"; "required": "required"; "disabled": "disabled"; "value": "value"; }, {}, never, never, false>;
139
+ static ɵcmp: i0.ɵɵComponentDeclaration<DiscreteInputComponent, "bui-discrete-input", never, { "type": "type"; "separator": "separator"; "accept": "accept"; "userAriaDescribedBy": "aria-describedby"; "autocomplete": "autocomplete"; "sizeSpec": "sizeSpec"; "placeholder": "placeholder"; "required": "required"; "disabled": "disabled"; "value": "value"; }, {}, never, never, false>;
138
140
  }
139
141
  export {};
@@ -1,5 +1,5 @@
1
1
  import { animate, state, style, transition, trigger } from '@angular/animations';
2
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
3
3
  import { generateID, isElementInViewport } from '@bravura/ui/common';
4
4
  import { Subject, timer } from 'rxjs';
5
5
  import { delay, take, takeUntil, tap } from 'rxjs/operators';
@@ -52,6 +52,8 @@ export class AlertContainerComponent {
52
52
  /** @ignore Emits whenever the animation is done. */
53
53
  this._animationEnded = new Subject();
54
54
  this._destroyed$ = new Subject();
55
+ /** Emits the component instance after initialisation. */
56
+ this.init = new EventEmitter();
55
57
  }
56
58
  ngOnInit() {
57
59
  const checkScroll = () => {
@@ -64,6 +66,8 @@ export class AlertContainerComponent {
64
66
  .pipe(takeUntil(this._destroyed$))
65
67
  .subscribe(checkScroll);
66
68
  checkScroll();
69
+ this.init.emit(this);
70
+ this.init.complete();
67
71
  }
68
72
  ngOnDestroy() {
69
73
  this._destroyed$.next();
@@ -144,8 +148,8 @@ export class AlertContainerComponent {
144
148
  });
145
149
  }
146
150
  }
147
- AlertContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AlertContainerComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.ScrollDispatcher }], target: i0.ɵɵFactoryTarget.Component });
148
- AlertContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: AlertContainerComponent, selector: "bui-alert-container", inputs: { max: "max", outsideViewportBehavior: "outsideViewportBehavior", floatDuration: "floatDuration" }, host: { properties: { "class": "'bui-alert-container bui-host bui-alert-container-' + (_remaining.length ? 'not-empty': 'empty')" } }, ngImport: i0, template: "<div\n\tclass=\"bui-alert-fixed-panel\"\n\t[style.opacity]=\"_floatPanelHidden ? 1 : 0\"\n\t[class.bui-alert-fixed-panel-blink]=\"outsideViewportBehavior === 'scroll'\"\n>\n\t<bui-alert\n\t\t*ngFor=\"let a of _alerts\"\n\t\t[id]=\"a.id\"\n\t\t[type]=\"a.type\"\n\t\t[message]=\"a.message\"\n\t\tdismissible\n\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\n\t\t(@alertTransition.start)=\"_animationStarted.next($event)\"\n\t\t(@alertTransition.done)=\"_animationEnded.next($event)\"\n\t\t(dismissed)=\"_dismiss(a)\"\n\t></bui-alert>\n</div>\n\n<div class=\"bui-alert-float-panel-frame\" [hidden]=\"_floatPanelHidden\" [class.bui-alert-float-panel-shaded]=\"_floated\">\n\t<div class=\"bui-alert-float-panel\" [style.max-width]=\"_width + 'px'\" [@floatTransition]=\"'visible'\" *ngIf=\"_floated\">\n\t\t<bui-alert\n\t\t\t*ngFor=\"let a of _alerts\"\n\t\t\t[id]=\"a.id\"\n\t\t\t[type]=\"a.type\"\n\t\t\t[message]=\"a.message\"\n\t\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\n\t\t></bui-alert>\n\t</div>\n</div>\n", styles: [".bui-alert:not(:first-of-type){margin-top:.5rem}:host(:not([hidden])){display:block}.bui-alert-fixed-panel{transition:opacity .2s ease-in}.bui-alert-fixed-panel.bui-alert-fixed-panel-blink .bui-alert:last-of-type{animation:blink 1s ease-in forwards}.bui-alert-float-panel-frame{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;justify-content:center;align-items:center;flex-direction:column;transition:background-color .4s cubic-bezier(.25,0,.55,.2)}.bui-alert-float-panel-frame:not([hidden]){display:flex}.bui-alert-float-panel-frame.bui-alert-float-panel-shaded{background-color:#00000080}.bui-alert-float-panel-frame .bui-alert{background-color:var(--bui-bg-card)}@keyframes blink{60%{opacity:1}70%{opacity:0}80%{opacity:1}90%{opacity:0}}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.AlertMessageComponent, selector: "bui-alert", inputs: ["type", "message", "dismissible", "id"], outputs: ["dismissed", "initialised"] }], animations: [
151
+ AlertContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AlertContainerComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.ScrollDispatcher }], target: i0.ɵɵFactoryTarget.Component });
152
+ AlertContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: AlertContainerComponent, selector: "bui-alert-container", inputs: { max: "max", outsideViewportBehavior: "outsideViewportBehavior", floatDuration: "floatDuration" }, outputs: { init: "init" }, host: { properties: { "class": "'bui-alert-container bui-host bui-alert-container-' + (_remaining.length ? 'not-empty': 'empty')" } }, ngImport: i0, template: "<div\n\tclass=\"bui-alert-fixed-panel\"\n\t[style.opacity]=\"_floatPanelHidden ? 1 : 0\"\n\t[class.bui-alert-fixed-panel-blink]=\"outsideViewportBehavior === 'scroll'\"\n>\n\t<bui-alert\n\t\t*ngFor=\"let a of _alerts\"\n\t\t[id]=\"a.id\"\n\t\t[type]=\"a.type\"\n\t\t[message]=\"a.message\"\n\t\tdismissible\n\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\n\t\t(@alertTransition.start)=\"_animationStarted.next($event)\"\n\t\t(@alertTransition.done)=\"_animationEnded.next($event)\"\n\t\t(dismissed)=\"_dismiss(a)\"\n\t></bui-alert>\n</div>\n\n<div class=\"bui-alert-float-panel-frame\" [hidden]=\"_floatPanelHidden\" [class.bui-alert-float-panel-shaded]=\"_floated\">\n\t<div class=\"bui-alert-float-panel\" [style.max-width]=\"_width + 'px'\" [@floatTransition]=\"'visible'\" *ngIf=\"_floated\">\n\t\t<bui-alert\n\t\t\t*ngFor=\"let a of _alerts\"\n\t\t\t[id]=\"a.id\"\n\t\t\t[type]=\"a.type\"\n\t\t\t[message]=\"a.message\"\n\t\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\n\t\t></bui-alert>\n\t</div>\n</div>\n", styles: [".bui-alert:not(:first-of-type){margin-top:.5rem}:host(:not([hidden])){display:block}.bui-alert-fixed-panel{transition:opacity .2s ease-in}.bui-alert-fixed-panel.bui-alert-fixed-panel-blink .bui-alert:last-of-type{animation:blink 1s ease-in forwards}.bui-alert-float-panel-frame{position:fixed;z-index:1000;inset:0;justify-content:center;align-items:center;flex-direction:column;transition:background-color .4s cubic-bezier(.25,0,.55,.2)}.bui-alert-float-panel-frame:not([hidden]){display:flex}.bui-alert-float-panel-frame.bui-alert-float-panel-shaded{background-color:#00000080}.bui-alert-float-panel-frame .bui-alert{background-color:var(--bui-bg-card)}@keyframes blink{60%{opacity:1}70%{opacity:0}80%{opacity:1}90%{opacity:0}}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.AlertMessageComponent, selector: "bui-alert", inputs: ["type", "message", "dismissible", "id"], outputs: ["dismissed", "initialised"] }], animations: [
149
153
  trigger('floatTransition', [
150
154
  transition(':enter', [style({ opacity: '0', transform: 'translateY(-10vh)' }), animate('.3s ease-in')]),
151
155
  transition(':leave', [animate('.4s ease-out', style({ transform: 'translateY(-10vh)', opacity: '0' }))])
@@ -160,13 +164,13 @@ AlertContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
160
164
  'margin-top': '-1rem'
161
165
  })),
162
166
  transition('void => visible', [
163
- style({ transform: 'translateY(100%)', height: 0, opacity: '0' }),
167
+ style({ transform: 'translateY(100%)', height: 0, opacity: '0', overflow: 'hidden' }),
164
168
  animate('250ms cubic-bezier(0.42, 0.0, 0.58, 1.0)')
165
169
  ]),
166
170
  transition('visible => hidden', [animate('250ms cubic-bezier(0.25, 0, 0.3, 1.0)')])
167
171
  ])
168
172
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
169
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AlertContainerComponent, decorators: [{
173
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AlertContainerComponent, decorators: [{
170
174
  type: Component,
171
175
  args: [{ selector: 'bui-alert-container', host: {
172
176
  '[class]': `'bui-alert-container bui-host bui-alert-container-' + (_remaining.length ? 'not-empty': 'empty')`
@@ -185,17 +189,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
185
189
  'margin-top': '-1rem'
186
190
  })),
187
191
  transition('void => visible', [
188
- style({ transform: 'translateY(100%)', height: 0, opacity: '0' }),
192
+ style({ transform: 'translateY(100%)', height: 0, opacity: '0', overflow: 'hidden' }),
189
193
  animate('250ms cubic-bezier(0.42, 0.0, 0.58, 1.0)')
190
194
  ]),
191
195
  transition('visible => hidden', [animate('250ms cubic-bezier(0.25, 0, 0.3, 1.0)')])
192
196
  ])
193
- ], template: "<div\n\tclass=\"bui-alert-fixed-panel\"\n\t[style.opacity]=\"_floatPanelHidden ? 1 : 0\"\n\t[class.bui-alert-fixed-panel-blink]=\"outsideViewportBehavior === 'scroll'\"\n>\n\t<bui-alert\n\t\t*ngFor=\"let a of _alerts\"\n\t\t[id]=\"a.id\"\n\t\t[type]=\"a.type\"\n\t\t[message]=\"a.message\"\n\t\tdismissible\n\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\n\t\t(@alertTransition.start)=\"_animationStarted.next($event)\"\n\t\t(@alertTransition.done)=\"_animationEnded.next($event)\"\n\t\t(dismissed)=\"_dismiss(a)\"\n\t></bui-alert>\n</div>\n\n<div class=\"bui-alert-float-panel-frame\" [hidden]=\"_floatPanelHidden\" [class.bui-alert-float-panel-shaded]=\"_floated\">\n\t<div class=\"bui-alert-float-panel\" [style.max-width]=\"_width + 'px'\" [@floatTransition]=\"'visible'\" *ngIf=\"_floated\">\n\t\t<bui-alert\n\t\t\t*ngFor=\"let a of _alerts\"\n\t\t\t[id]=\"a.id\"\n\t\t\t[type]=\"a.type\"\n\t\t\t[message]=\"a.message\"\n\t\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\n\t\t></bui-alert>\n\t</div>\n</div>\n", styles: [".bui-alert:not(:first-of-type){margin-top:.5rem}:host(:not([hidden])){display:block}.bui-alert-fixed-panel{transition:opacity .2s ease-in}.bui-alert-fixed-panel.bui-alert-fixed-panel-blink .bui-alert:last-of-type{animation:blink 1s ease-in forwards}.bui-alert-float-panel-frame{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;justify-content:center;align-items:center;flex-direction:column;transition:background-color .4s cubic-bezier(.25,0,.55,.2)}.bui-alert-float-panel-frame:not([hidden]){display:flex}.bui-alert-float-panel-frame.bui-alert-float-panel-shaded{background-color:#00000080}.bui-alert-float-panel-frame .bui-alert{background-color:var(--bui-bg-card)}@keyframes blink{60%{opacity:1}70%{opacity:0}80%{opacity:1}90%{opacity:0}}\n"] }]
197
+ ], template: "<div\n\tclass=\"bui-alert-fixed-panel\"\n\t[style.opacity]=\"_floatPanelHidden ? 1 : 0\"\n\t[class.bui-alert-fixed-panel-blink]=\"outsideViewportBehavior === 'scroll'\"\n>\n\t<bui-alert\n\t\t*ngFor=\"let a of _alerts\"\n\t\t[id]=\"a.id\"\n\t\t[type]=\"a.type\"\n\t\t[message]=\"a.message\"\n\t\tdismissible\n\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\n\t\t(@alertTransition.start)=\"_animationStarted.next($event)\"\n\t\t(@alertTransition.done)=\"_animationEnded.next($event)\"\n\t\t(dismissed)=\"_dismiss(a)\"\n\t></bui-alert>\n</div>\n\n<div class=\"bui-alert-float-panel-frame\" [hidden]=\"_floatPanelHidden\" [class.bui-alert-float-panel-shaded]=\"_floated\">\n\t<div class=\"bui-alert-float-panel\" [style.max-width]=\"_width + 'px'\" [@floatTransition]=\"'visible'\" *ngIf=\"_floated\">\n\t\t<bui-alert\n\t\t\t*ngFor=\"let a of _alerts\"\n\t\t\t[id]=\"a.id\"\n\t\t\t[type]=\"a.type\"\n\t\t\t[message]=\"a.message\"\n\t\t\t[@alertTransition]=\"a.deleted ? 'hidden' : 'visible'\"\n\t\t></bui-alert>\n\t</div>\n</div>\n", styles: [".bui-alert:not(:first-of-type){margin-top:.5rem}:host(:not([hidden])){display:block}.bui-alert-fixed-panel{transition:opacity .2s ease-in}.bui-alert-fixed-panel.bui-alert-fixed-panel-blink .bui-alert:last-of-type{animation:blink 1s ease-in forwards}.bui-alert-float-panel-frame{position:fixed;z-index:1000;inset:0;justify-content:center;align-items:center;flex-direction:column;transition:background-color .4s cubic-bezier(.25,0,.55,.2)}.bui-alert-float-panel-frame:not([hidden]){display:flex}.bui-alert-float-panel-frame.bui-alert-float-panel-shaded{background-color:#00000080}.bui-alert-float-panel-frame .bui-alert{background-color:var(--bui-bg-card)}@keyframes blink{60%{opacity:1}70%{opacity:0}80%{opacity:1}90%{opacity:0}}\n"] }]
194
198
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.ScrollDispatcher }]; }, propDecorators: { max: [{
195
199
  type: Input
196
200
  }], outsideViewportBehavior: [{
197
201
  type: Input
198
202
  }], floatDuration: [{
199
203
  type: Input
204
+ }], init: [{
205
+ type: Output
200
206
  }] } });
201
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL2FsZXJ0L2FsZXJ0LWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9hbGVydC9hbGVydC1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQWtCLE1BQU0scUJBQXFCLENBQUM7QUFFakcsT0FBTyxFQUNOLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsS0FBSyxFQUlMLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsT0FBTyxFQUFnQixLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQUU3RCxlQUFlO0FBQ2YsTUFBTSxrQkFBa0I7SUFHdkIsWUFBNEIsSUFBMkMsRUFBa0IsT0FBZTtRQUE1RSxTQUFJLEdBQUosSUFBSSxDQUF1QztRQUFrQixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBRHhHLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFZixJQUFJLENBQUMsRUFBRSxHQUFHLHdCQUF3QixVQUFVLEVBQUUsRUFBRSxDQUFDO0lBQ2xELENBQUM7Q0FDRDtBQUVEOzs7R0FHRztBQWtDSCxNQUFNLE9BQU8sdUJBQXVCO0lBcUNuQyxZQUNTLElBQVksRUFDWixLQUF3QixFQUN4QixXQUFvQyxFQUNwQyxNQUF3QjtRQUh4QixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQ1osVUFBSyxHQUFMLEtBQUssQ0FBbUI7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Y2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIsIEFuaW1hdGlvbkV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBTY3JvbGxEaXNwYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQge1xuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXG5cdENvbXBvbmVudCxcblx0RWxlbWVudFJlZixcblx0SW5wdXQsXG5cdE5nWm9uZSxcblx0T25EZXN0cm95LFxuXHRPbkluaXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZW5lcmF0ZUlELCBpc0VsZW1lbnRJblZpZXdwb3J0IH0gZnJvbSAnQGJyYXZ1cmEvdWkvY29tbW9uJztcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlbGF5LCB0YWtlLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLyoqQGludGVybmFsICovXG5jbGFzcyBJbnRlcm5hbEFsZXJ0T2plY3Qge1xuXHRpZDogc3RyaW5nO1xuXHRkZWxldGVkID0gZmFsc2U7XG5cdGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSB0eXBlOiAnc3VjY2VzcycgfCAnaW5mbycgfCAnd2FybicgfCAnZXJyb3InLCBwdWJsaWMgcmVhZG9ubHkgbWVzc2FnZTogc3RyaW5nKSB7XG5cdFx0dGhpcy5pZCA9IGBidWktYWxlcnQtY29udC1hbGVydC0ke2dlbmVyYXRlSUQoKX1gO1xuXHR9XG59XG5cbi8qKlxuICogVXNlIHRoaXMgY29tcG9uZW50IGluIGEgZGVzaWduYXRlZCBhcmVhIG9mIGEgcGFnZSBmb3IgZGlzcGxheWluZyBub3RpZmljYXRpb24gbWVzc2FnZXNcbiAqXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2J1aS1hbGVydC1jb250YWluZXInLFxuXHR0ZW1wbGF0ZVVybDogJy4vYWxlcnQtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vYWxlcnQtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXG5cdGhvc3Q6IHtcblx0XHQnW2NsYXNzXSc6IGAnYnVpLWFsZXJ0LWNvbnRhaW5lciBidWktaG9zdCBidWktYWxlcnQtY29udGFpbmVyLScgKyAoX3JlbWFpbmluZy5sZW5ndGggPyAnbm90LWVtcHR5JzogJ2VtcHR5JylgXG5cdH0sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRhbmltYXRpb25zOiBbXG5cdFx0dHJpZ2dlcignZmxvYXRUcmFuc2l0aW9uJywgW1xuXHRcdFx0dHJhbnNpdGlvbignOmVudGVyJywgW3N0eWxlKHsgb3BhY2l0eTogJzAnLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC0xMHZoKScgfSksIGFuaW1hdGUoJy4zcyBlYXNlLWluJyldKSxcblx0XHRcdHRyYW5zaXRpb24oJzpsZWF2ZScsIFthbmltYXRlKCcuNHMgZWFzZS1vdXQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoLTEwdmgpJywgb3BhY2l0eTogJzAnIH0pKV0pXG5cdFx0XSksXG5cdFx0dHJpZ2dlcignYWxlcnRUcmFuc2l0aW9uJywgW1xuXHRcdFx0c3RhdGUoJ3Zpc2libGUnLCBzdHlsZSh7fSkpLFxuXHRcdFx0c3RhdGUoXG5cdFx0XHRcdCdoaWRkZW4nLFxuXHRcdFx0XHRzdHlsZSh7XG5cdFx0XHRcdFx0aGVpZ2h0OiAwLFxuXHRcdFx0XHRcdG92ZXJmbG93OiAnaGlkZGVuJyxcblx0XHRcdFx0XHR0cmFuc2Zvcm06ICdzY2FsZVkoMCknLFxuXHRcdFx0XHRcdG9wYWNpdHk6IDAsXG5cdFx0XHRcdFx0J21hcmdpbi10b3AnOiAnLTFyZW0nXG5cdFx0XHRcdH0pXG5cdFx0XHQpLFxuXHRcdFx0dHJhbnNpdGlvbigndm9pZCA9PiB2aXNpYmxlJywgW1xuXHRcdFx0XHRzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMTAwJSknLCBoZWlnaHQ6IDAsIG9wYWNpdHk6ICcwJyB9KSxcblx0XHRcdFx0YW5pbWF0ZSgnMjUwbXMgY3ViaWMtYmV6aWVyKDAuNDIsIDAuMCwgMC41OCwgMS4wKScpXG5cdFx0XHRdKSxcblx0XHRcdHRyYW5zaXRpb24oJ3Zpc2libGUgPT4gaGlkZGVuJywgW2FuaW1hdGUoJzI1MG1zIGN1YmljLWJlemllcigwLjI1LCAwLCAwLjMsIDEuMCknKV0pXG5cdFx0XSlcblx0XVxufSlcbmV4cG9ydCBjbGFzcyBBbGVydENvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblx0LyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBtZXNzYWdlcyBkaXNwbGF5ZWQgaW4gdGhlIGNvbnRhaW5lciBhcmVhLiAqL1xuXHRASW5wdXQoKVxuXHRtYXggPSA1O1xuXG5cdC8qKlxuXHQgKiBUaGlzIHByb3BlcnR5IGRldGVybWluZXMgdGhlIGJlaGF2aW9yIGZvciBkaXNwbGF5aW5nIHRoZSBub3RpZmljYXRpb25zIHdoZW4gdGhlIGNvbnRhaW5lciBpcyBvdXRzaWRlIHRoZSB2aWV3cG9ydC5cblx0ICpcblx0ICogYHNjcm9sbGA6IFRoZSBjb21wb25lbnQgd2lsbCB0cnkgdG8gc2Nyb2xsIHRvIHJldmVhbCB0aGUgbmV3IG5vdGlmaWNhdGlvbnMuXG5cdCAqIGBmbG9hdGA6IFRoZSBjb21wb25lbnQgd2lsbCBmbG9hdCB0aGUgYWxlcnQgcGFuZWwgdG8gdGhlIGNlbnRlciBvZiB0aGUgc2NyZWVuIGZvciBhIGNvdXBsZSBvZiBzZWNvbmRzIGFuZCBtb3ZlIGl0IGJhY2sgdG8gdGhlIG9yaWdpbmFsIHBvc2l0aW9uLlxuXHQgKi9cblx0QElucHV0KClcblx0b3V0c2lkZVZpZXdwb3J0QmVoYXZpb3I6ICdzY3JvbGwnIHwgJ2Zsb2F0JyA9ICdmbG9hdCc7XG5cblx0LyoqXG5cdCAqIFRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIGZvciB3aGljaCB0aGUgYWxlcnQgY29udGFpbmVyIHdpbGwgYmUgZmxvYXRlZCB3aGVuIG5ldyBub3RpZmljYXRpb24gYXJyaXZlcy5cblx0ICpcblx0ICogVGhpcyB3aWxsIG9ubHkgdGFrZSBlZmZlY3Qgd2hlbiBgb3V0c2lkZVZpZXdwb3J0QmVoYXZpb3JgIGlzIHNldCB0byBgZmxvYXRgIGFuZCB0aGUgY29udGFpbmVyIGlzIG91dHNpZGUgdGhlIHZpZXdwb3J0LlxuXHQgKi9cblx0QElucHV0KClcblx0ZmxvYXREdXJhdGlvbiA9IDIwMDA7XG5cblx0LyoqQGludGVybmFsICovXG5cdF9hbGVydHM6IEludGVybmFsQWxlcnRPamVjdFtdID0gW107XG5cdC8qKkBpbnRlcm5hbCAqL1xuXHRfZmxvYXRlZCA9IGZhbHNlO1xuXHQvKipAaW50ZXJuYWwgKi9cblx0X2Zsb2F0UGFuZWxIaWRkZW4gPSB0cnVlO1xuXG5cdC8qKiBAaWdub3JlIEVtaXRzIHdoZW5ldmVyIHRoZSBhbmltYXRpb24gaXMgc3RhcnRlZC4gKi9cblx0cmVhZG9ubHkgX2FuaW1hdGlvblN0YXJ0ZWQgPSBuZXcgU3ViamVjdDxBbmltYXRpb25FdmVudD4oKTtcblx0LyoqIEBpZ25vcmUgRW1pdHMgd2hlbmV2ZXIgdGhlIGFuaW1hdGlvbiBpcyBkb25lLiAqL1xuXHRyZWFkb25seSBfYW5pbWF0aW9uRW5kZWQgPSBuZXcgU3ViamVjdDxBbmltYXRpb25FdmVudD4oKTtcblxuXHRwcml2YXRlIF9kZXN0cm95ZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblx0cHJpdmF0ZSBfZW5kRmxvYXRpbmdTdWI/OiBTdWJzY3JpcHRpb247XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0cHJpdmF0ZSB6b25lOiBOZ1pvbmUsXG5cdFx0cHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG5cdFx0cHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG5cdFx0cHJpdmF0ZSBzY3JvbGw6IFNjcm9sbERpc3BhdGNoZXJcblx0KSB7fVxuXG5cdG5nT25Jbml0KCk6IHZvaWQge1xuXHRcdGNvbnN0IGNoZWNrU2Nyb2xsID0gKCkgPT4ge1xuXHRcdFx0aWYgKGlzRWxlbWVudEluVmlld3BvcnQodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSkge1xuXHRcdFx0XHR0aGlzLl9lbmRGbG9hdGluZygpO1xuXHRcdFx0fVxuXHRcdH07XG5cdFx0dGhpcy5zY3JvbGxcblx0XHRcdC5hbmNlc3RvclNjcm9sbGVkKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudClcblx0XHRcdC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95ZWQkKSlcblx0XHRcdC5zdWJzY3JpYmUoY2hlY2tTY3JvbGwpO1xuXHRcdGNoZWNrU2Nyb2xsKCk7XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpOiB2b2lkIHtcblx0XHR0aGlzLl9kZXN0cm95ZWQkLm5leHQoKTtcblx0XHR0aGlzLl9kZXN0cm95ZWQkLmNvbXBsZXRlKCk7XG5cdFx0dGhpcy5fZW5kRmxvYXRpbmdTdWI/LnVuc3Vic2NyaWJlKCk7XG5cdH1cblxuXHQvKipAaW50ZXJuYWwgKi9cblx0Z2V0IF9yZW1haW5pbmcoKSB7XG5cdFx0cmV0dXJuIHRoaXMuX2FsZXJ0cy5maWx0ZXIoYSA9PiAhYS5kZWxldGVkKTtcblx0fVxuXG5cdC8qKkBpbnRlcm5hbCAqL1xuXHRnZXQgX3dpZHRoKCkge1xuXHRcdHJldHVybiB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGg7XG5cdH1cblxuXHQvKiogQWRkIGEgbWVzc2FnZSB0byB0aGUgbm90aWZpY2F0aW9uIGFyZWEgKi9cblx0YXN5bmMgbm90aWZ5KHR5cGU6ICdzdWNjZXNzJyB8ICdpbmZvJyB8ICd3YXJuJyB8ICdlcnJvcicsIG1lc3NhZ2U6IHN0cmluZykge1xuXHRcdHRoaXMuX2VuZEZsb2F0aW5nU3ViPy51bnN1YnNjcmliZSgpO1xuXHRcdGNvbnN0IGR1cGxpY2F0ZSA9IHRoaXMuX3JlbWFpbmluZy5maW5kKF9hID0+IG1lc3NhZ2UgPT09IF9hLm1lc3NhZ2UpO1xuXHRcdGlmIChkdXBsaWNhdGUpIHtcblx0XHRcdHRoaXMuX2Rpc21pc3MoZHVwbGljYXRlKTtcblx0XHR9XG5cblx0XHRjb25zdCByZW1haW5pbmcgPSB0aGlzLl9yZW1haW5pbmc7XG5cdFx0aWYgKHJlbWFpbmluZy5sZW5ndGggPj0gdGhpcy5tYXgpIHtcblx0XHRcdHRoaXMuX2Rpc21pc3MocmVtYWluaW5nWzBdKTtcblx0XHR9XG5cblx0XHRjb25zdCBhID0gbmV3IEludGVybmFsQWxlcnRPamVjdCh0eXBlLCBtZXNzYWdlKTtcblx0XHRhd2FpdCB0aGlzLl9jaGVja1ZpZXdwb3J0KCk7XG5cdFx0dGhpcy56b25lLnJ1bigoKSA9PiB7XG5cdFx0XHR0aGlzLl9hbGVydHMucHVzaChhKTtcblx0XHRcdHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XG5cdFx0fSk7XG5cdH1cblxuXHQvKipAaWdub3JlICovXG5cdGFzeW5jIF9jaGVja1ZpZXdwb3J0KCkge1xuXHRcdGlmICghaXNFbGVtZW50SW5WaWV3cG9ydCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpKSB7XG5cdFx0XHRpZiAodGhpcy5vdXRzaWRlVmlld3BvcnRCZWhhdmlvciA9PT0gJ2Zsb2F0Jykge1xuXHRcdFx0XHRjb25zdCBkID0gdGhpcy5fZmxvYXRlZCA/IDAgOiAxMDA7XG5cdFx0XHRcdHRoaXMuX2Zsb2F0ZWQgPSB0cnVlO1xuXHRcdFx0XHR0aGlzLl9mbG9hdFBhbmVsSGlkZGVuID0gZmFsc2U7XG5cdFx0XHRcdHRoaXMuX2VuZEZsb2F0aW5nKHRoaXMuZmxvYXREdXJhdGlvbik7XG5cdFx0XHRcdHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XG5cdFx0XHRcdGF3YWl0IHRpbWVyKGQpLnRvUHJvbWlzZSgpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNjcm9sbEludG9WaWV3KHsgYmxvY2s6ICdzdGFydCcsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvKipAaWdub3JlICovXG5cdGFzeW5jIF9kaXNtaXNzKGE6IEludGVybmFsQWxlcnRPamVjdCkge1xuXHRcdGNvbnN0IGlkID0gYS5pZDtcblx0XHRhLmRlbGV0ZWQgPSB0cnVlO1xuXHRcdHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XG5cdFx0YXdhaXQgdGhpcy5fYW5pbWF0aW9uRW5kZWQucGlwZSh0YWtlKDEpKS50b1Byb21pc2UoKTtcblx0XHR0aGlzLnpvbmUucnVuKCgpID0+IHtcblx0XHRcdHRoaXMuX2FsZXJ0cyA9IHRoaXMuX2FsZXJ0cy5maWx0ZXIoX2EgPT4gX2EuaWQgIT09IGlkKTtcblx0XHRcdHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XG5cdFx0fSk7XG5cdH1cblxuXHQvKiogUmVtb3ZlIGFsbCBtZXNzYWdlcyBjdXJyZW50bHkgZGlzcGxheWVkLiAqL1xuXHRhc3luYyBjbGVhcigpIHtcblx0XHRhd2FpdCBQcm9taXNlLmFsbCh0aGlzLl9yZW1haW5pbmcubWFwKGEgPT4gdGhpcy5fZGlzbWlzcyhhKSkpO1xuXHRcdHRoaXMuX2VuZEZsb2F0aW5nKCk7XG5cdH1cblxuXHRwcml2YXRlIF9lbmRGbG9hdGluZyhfZGVsYXkgPSAwKSB7XG5cdFx0aWYgKCF0aGlzLl9mbG9hdGVkKSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdHRoaXMuX2VuZEZsb2F0aW5nU3ViPy51bnN1YnNjcmliZSgpO1xuXHRcdHRoaXMuX2VuZEZsb2F0aW5nU3ViID0gdGltZXIoX2RlbGF5KVxuXHRcdFx0LnBpcGUoXG5cdFx0XHRcdHRhcCgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5fZmxvYXRlZCA9IGZhbHNlO1xuXHRcdFx0XHRcdHRoaXMuem9uZS5ydW4oKCkgPT4gdGhpcy5jZFJlZi5tYXJrRm9yQ2hlY2soKSk7XG5cdFx0XHRcdH0pLFxuXHRcdFx0XHRkZWxheSg0MDApXG5cdFx0XHQpXG5cdFx0XHQuc3Vic2NyaWJlKCgpID0+IHtcblx0XHRcdFx0dGhpcy5fZmxvYXRQYW5lbEhpZGRlbiA9IHRydWU7XG5cdFx0XHRcdHRoaXMuem9uZS5ydW4oKCkgPT4gdGhpcy5jZFJlZi5tYXJrRm9yQ2hlY2soKSk7XG5cdFx0XHR9KTtcblx0fVxufVxuIiwiPGRpdlxuXHRjbGFzcz1cImJ1aS1hbGVydC1maXhlZC1wYW5lbFwiXG5cdFtzdHlsZS5vcGFjaXR5XT1cIl9mbG9hdFBhbmVsSGlkZGVuID8gMSA6IDBcIlxuXHRbY2xhc3MuYnVpLWFsZXJ0LWZpeGVkLXBhbmVsLWJsaW5rXT1cIm91dHNpZGVWaWV3cG9ydEJlaGF2aW9yID09PSAnc2Nyb2xsJ1wiXG4+XG5cdDxidWktYWxlcnRcblx0XHQqbmdGb3I9XCJsZXQgYSBvZiBfYWxlcnRzXCJcblx0XHRbaWRdPVwiYS5pZFwiXG5cdFx0W3R5cGVdPVwiYS50eXBlXCJcblx0XHRbbWVzc2FnZV09XCJhLm1lc3NhZ2VcIlxuXHRcdGRpc21pc3NpYmxlXG5cdFx0W0BhbGVydFRyYW5zaXRpb25dPVwiYS5kZWxldGVkID8gJ2hpZGRlbicgOiAndmlzaWJsZSdcIlxuXHRcdChAYWxlcnRUcmFuc2l0aW9uLnN0YXJ0KT1cIl9hbmltYXRpb25TdGFydGVkLm5leHQoJGV2ZW50KVwiXG5cdFx0KEBhbGVydFRyYW5zaXRpb24uZG9uZSk9XCJfYW5pbWF0aW9uRW5kZWQubmV4dCgkZXZlbnQpXCJcblx0XHQoZGlzbWlzc2VkKT1cIl9kaXNtaXNzKGEpXCJcblx0PjwvYnVpLWFsZXJ0PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJidWktYWxlcnQtZmxvYXQtcGFuZWwtZnJhbWVcIiBbaGlkZGVuXT1cIl9mbG9hdFBhbmVsSGlkZGVuXCIgW2NsYXNzLmJ1aS1hbGVydC1mbG9hdC1wYW5lbC1zaGFkZWRdPVwiX2Zsb2F0ZWRcIj5cblx0PGRpdiBjbGFzcz1cImJ1aS1hbGVydC1mbG9hdC1wYW5lbFwiIFtzdHlsZS5tYXgtd2lkdGhdPVwiX3dpZHRoICsgJ3B4J1wiIFtAZmxvYXRUcmFuc2l0aW9uXT1cIid2aXNpYmxlJ1wiICpuZ0lmPVwiX2Zsb2F0ZWRcIj5cblx0XHQ8YnVpLWFsZXJ0XG5cdFx0XHQqbmdGb3I9XCJsZXQgYSBvZiBfYWxlcnRzXCJcblx0XHRcdFtpZF09XCJhLmlkXCJcblx0XHRcdFt0eXBlXT1cImEudHlwZVwiXG5cdFx0XHRbbWVzc2FnZV09XCJhLm1lc3NhZ2VcIlxuXHRcdFx0W0BhbGVydFRyYW5zaXRpb25dPVwiYS5kZWxldGVkID8gJ2hpZGRlbicgOiAndmlzaWJsZSdcIlxuXHRcdD48L2J1aS1hbGVydD5cblx0PC9kaXY+XG48L2Rpdj5cbiJdfQ==
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL2FsZXJ0L2FsZXJ0LWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9hbGVydC9hbGVydC1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQWtCLE1BQU0scUJBQXFCLENBQUM7QUFFakcsT0FBTyxFQUNOLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxPQUFPLEVBQWdCLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBRTdELGVBQWU7QUFDZixNQUFNLGtCQUFrQjtJQUd2QixZQUE0QixJQUEyQyxFQUFrQixPQUFlO1FBQTVFLFNBQUksR0FBSixJQUFJLENBQXVDO1FBQWtCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFEeEcsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUVmLElBQUksQ0FBQyxFQUFFLEdBQUcsd0JBQXdCLFVBQVUsRUFBRSxFQUFFLENBQUM7SUFDbEQsQ0FBQztDQUNEO0FBRUQ7OztHQUdHO0FBa0NILE1BQU0sT0FBTyx1QkFBdUI7SUF5Q25DLFlBQ1MsSUFBWSxFQUNaLEtBQXdCLEVBQ3hCLFdBQW9DLEVBQ3BDLE1BQXdCO1FBSHhCLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixV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QUM7Z0NBQ3JGLE9BQU8sQ0FBQywwQ0FBMEMsQ0FBQzs2QkFDbkQsQ0FBQzs0QkFDRixVQUFVLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxPQUFPLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxDQUFDO3lCQUNuRixDQUFDO3FCQUNGO3FMQUtELEdBQUc7c0JBREYsS0FBSztnQkFVTix1QkFBdUI7c0JBRHRCLEtBQUs7Z0JBU04sYUFBYTtzQkFEWixLQUFLO2dCQW9CRSxJQUFJO3NCQURYLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIsIEFuaW1hdGlvbkV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBTY3JvbGxEaXNwYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQge1xuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXG5cdENvbXBvbmVudCxcblx0RWxlbWVudFJlZixcblx0RXZlbnRFbWl0dGVyLFxuXHRJbnB1dCxcblx0Tmdab25lLFxuXHRPbkRlc3Ryb3ksXG5cdE9uSW5pdCxcblx0T3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2VuZXJhdGVJRCwgaXNFbGVtZW50SW5WaWV3cG9ydCB9IGZyb20gJ0BicmF2dXJhL3VpL2NvbW1vbic7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWxheSwgdGFrZSwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKkBpbnRlcm5hbCAqL1xuY2xhc3MgSW50ZXJuYWxBbGVydE9qZWN0IHtcblx0aWQ6IHN0cmluZztcblx0ZGVsZXRlZCA9IGZhbHNlO1xuXHRjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgdHlwZTogJ3N1Y2Nlc3MnIHwgJ2luZm8nIHwgJ3dhcm4nIHwgJ2Vycm9yJywgcHVibGljIHJlYWRvbmx5IG1lc3NhZ2U6IHN0cmluZykge1xuXHRcdHRoaXMuaWQgPSBgYnVpLWFsZXJ0LWNvbnQtYWxlcnQtJHtnZW5lcmF0ZUlEKCl9YDtcblx0fVxufVxuXG4vKipcbiAqIFVzZSB0aGlzIGNvbXBvbmVudCBpbiBhIGRlc2lnbmF0ZWQgYXJlYSBvZiBhIHBhZ2UgZm9yIGRpc3BsYXlpbmcgbm90aWZpY2F0aW9uIG1lc3NhZ2VzXG4gKlxuICovXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdidWktYWxlcnQtY29udGFpbmVyJyxcblx0dGVtcGxhdGVVcmw6ICcuL2FsZXJ0LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL2FsZXJ0LWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuXHRob3N0OiB7XG5cdFx0J1tjbGFzc10nOiBgJ2J1aS1hbGVydC1jb250YWluZXIgYnVpLWhvc3QgYnVpLWFsZXJ0LWNvbnRhaW5lci0nICsgKF9yZW1haW5pbmcubGVuZ3RoID8gJ25vdC1lbXB0eSc6ICdlbXB0eScpYFxuXHR9LFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcblx0YW5pbWF0aW9uczogW1xuXHRcdHRyaWdnZXIoJ2Zsb2F0VHJhbnNpdGlvbicsIFtcblx0XHRcdHRyYW5zaXRpb24oJzplbnRlcicsIFtzdHlsZSh7IG9wYWNpdHk6ICcwJywgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgtMTB2aCknIH0pLCBhbmltYXRlKCcuM3MgZWFzZS1pbicpXSksXG5cdFx0XHR0cmFuc2l0aW9uKCc6bGVhdmUnLCBbYW5pbWF0ZSgnLjRzIGVhc2Utb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC0xMHZoKScsIG9wYWNpdHk6ICcwJyB9KSldKVxuXHRcdF0pLFxuXHRcdHRyaWdnZXIoJ2FsZXJ0VHJhbnNpdGlvbicsIFtcblx0XHRcdHN0YXRlKCd2aXNpYmxlJywgc3R5bGUoe30pKSxcblx0XHRcdHN0YXRlKFxuXHRcdFx0XHQnaGlkZGVuJyxcblx0XHRcdFx0c3R5bGUoe1xuXHRcdFx0XHRcdGhlaWdodDogMCxcblx0XHRcdFx0XHRvdmVyZmxvdzogJ2hpZGRlbicsXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiAnc2NhbGVZKDApJyxcblx0XHRcdFx0XHRvcGFjaXR5OiAwLFxuXHRcdFx0XHRcdCdtYXJnaW4tdG9wJzogJy0xcmVtJ1xuXHRcdFx0XHR9KVxuXHRcdFx0KSxcblx0XHRcdHRyYW5zaXRpb24oJ3ZvaWQgPT4gdmlzaWJsZScsIFtcblx0XHRcdFx0c3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDEwMCUpJywgaGVpZ2h0OiAwLCBvcGFjaXR5OiAnMCcsIG92ZXJmbG93OiAnaGlkZGVuJyB9KSxcblx0XHRcdFx0YW5pbWF0ZSgnMjUwbXMgY3ViaWMtYmV6aWVyKDAuNDIsIDAuMCwgMC41OCwgMS4wKScpXG5cdFx0XHRdKSxcblx0XHRcdHRyYW5zaXRpb24oJ3Zpc2libGUgPT4gaGlkZGVuJywgW2FuaW1hdGUoJzI1MG1zIGN1YmljLWJlemllcigwLjI1LCAwLCAwLjMsIDEuMCknKV0pXG5cdFx0XSlcblx0XVxufSlcbmV4cG9ydCBjbGFzcyBBbGVydENvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblx0LyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBtZXNzYWdlcyBkaXNwbGF5ZWQgaW4gdGhlIGNvbnRhaW5lciBhcmVhLiAqL1xuXHRASW5wdXQoKVxuXHRtYXggPSA1O1xuXG5cdC8qKlxuXHQgKiBUaGlzIHByb3BlcnR5IGRldGVybWluZXMgdGhlIGJlaGF2aW9yIGZvciBkaXNwbGF5aW5nIHRoZSBub3RpZmljYXRpb25zIHdoZW4gdGhlIGNvbnRhaW5lciBpcyBvdXRzaWRlIHRoZSB2aWV3cG9ydC5cblx0ICpcblx0ICogYHNjcm9sbGA6IFRoZSBjb21wb25lbnQgd2lsbCB0cnkgdG8gc2Nyb2xsIHRvIHJldmVhbCB0aGUgbmV3IG5vdGlmaWNhdGlvbnMuXG5cdCAqIGBmbG9hdGA6IFRoZSBjb21wb25lbnQgd2lsbCBmbG9hdCB0aGUgYWxlcnQgcGFuZWwgdG8gdGhlIGNlbnRlciBvZiB0aGUgc2NyZWVuIGZvciBhIGNvdXBsZSBvZiBzZWNvbmRzIGFuZCBtb3ZlIGl0IGJhY2sgdG8gdGhlIG9yaWdpbmFsIHBvc2l0aW9uLlxuXHQgKi9cblx0QElucHV0KClcblx0b3V0c2lkZVZpZXdwb3J0QmVoYXZpb3I6ICdzY3JvbGwnIHwgJ2Zsb2F0JyA9ICdmbG9hdCc7XG5cblx0LyoqXG5cdCAqIFRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIGZvciB3aGljaCB0aGUgYWxlcnQgY29udGFpbmVyIHdpbGwgYmUgZmxvYXRlZCB3aGVuIG5ldyBub3RpZmljYXRpb24gYXJyaXZlcy5cblx0ICpcblx0ICogVGhpcyB3aWxsIG9ubHkgdGFrZSBlZmZlY3Qgd2hlbiBgb3V0c2lkZVZpZXdwb3J0QmVoYXZpb3JgIGlzIHNldCB0byBgZmxvYXRgIGFuZCB0aGUgY29udGFpbmVyIGlzIG91dHNpZGUgdGhlIHZpZXdwb3J0LlxuXHQgKi9cblx0QElucHV0KClcblx0ZmxvYXREdXJhdGlvbiA9IDIwMDA7XG5cblx0LyoqQGludGVybmFsICovXG5cdF9hbGVydHM6IEludGVybmFsQWxlcnRPamVjdFtdID0gW107XG5cdC8qKkBpbnRlcm5hbCAqL1xuXHRfZmxvYXRlZCA9IGZhbHNlO1xuXHQvKipAaW50ZXJuYWwgKi9cblx0X2Zsb2F0UGFuZWxIaWRkZW4gPSB0cnVlO1xuXG5cdC8qKiBAaWdub3JlIEVtaXRzIHdoZW5ldmVyIHRoZSBhbmltYXRpb24gaXMgc3RhcnRlZC4gKi9cblx0cmVhZG9ubHkgX2FuaW1hdGlvblN0YXJ0ZWQgPSBuZXcgU3ViamVjdDxBbmltYXRpb25FdmVudD4oKTtcblx0LyoqIEBpZ25vcmUgRW1pdHMgd2hlbmV2ZXIgdGhlIGFuaW1hdGlvbiBpcyBkb25lLiAqL1xuXHRyZWFkb25seSBfYW5pbWF0aW9uRW5kZWQgPSBuZXcgU3ViamVjdDxBbmltYXRpb25FdmVudD4oKTtcblxuXHRwcml2YXRlIF9kZXN0cm95ZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblx0cHJpdmF0ZSBfZW5kRmxvYXRpbmdTdWI/OiBTdWJzY3JpcHRpb247XG5cblx0LyoqIEVtaXRzIHRoZSBjb21wb25lbnQgaW5zdGFuY2UgYWZ0ZXIgaW5pdGlhbGlzYXRpb24uICovXG5cdEBPdXRwdXQoKVxuXHRwcml2YXRlIGluaXQgPSBuZXcgRXZlbnRFbWl0dGVyPEFsZXJ0Q29udGFpbmVyQ29tcG9uZW50PigpO1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgem9uZTogTmdab25lLFxuXHRcdHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuXHRcdHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuXHRcdHByaXZhdGUgc2Nyb2xsOiBTY3JvbGxEaXNwYXRjaGVyXG5cdCkge31cblxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcblx0XHRjb25zdCBjaGVja1Njcm9sbCA9ICgpID0+IHtcblx0XHRcdGlmIChpc0VsZW1lbnRJblZpZXdwb3J0KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkpIHtcblx0XHRcdFx0dGhpcy5fZW5kRmxvYXRpbmcoKTtcblx0XHRcdH1cblx0XHR9O1xuXHRcdHRoaXMuc2Nyb2xsXG5cdFx0XHQuYW5jZXN0b3JTY3JvbGxlZCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpXG5cdFx0XHQucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveWVkJCkpXG5cdFx0XHQuc3Vic2NyaWJlKGNoZWNrU2Nyb2xsKTtcblx0XHRjaGVja1Njcm9sbCgpO1xuXHRcdHRoaXMuaW5pdC5lbWl0KHRoaXMpO1xuXHRcdHRoaXMuaW5pdC5jb21wbGV0ZSgpO1xuXHR9XG5cblx0bmdPbkRlc3Ryb3koKTogdm9pZCB7XG5cdFx0dGhpcy5fZGVzdHJveWVkJC5uZXh0KCk7XG5cdFx0dGhpcy5fZGVzdHJveWVkJC5jb21wbGV0ZSgpO1xuXHRcdHRoaXMuX2VuZEZsb2F0aW5nU3ViPy51bnN1YnNjcmliZSgpO1xuXHR9XG5cblx0LyoqQGludGVybmFsICovXG5cdGdldCBfcmVtYWluaW5nKCkge1xuXHRcdHJldHVybiB0aGlzLl9hbGVydHMuZmlsdGVyKGEgPT4gIWEuZGVsZXRlZCk7XG5cdH1cblxuXHQvKipAaW50ZXJuYWwgKi9cblx0Z2V0IF93aWR0aCgpIHtcblx0XHRyZXR1cm4gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoO1xuXHR9XG5cblx0LyoqIEFkZCBhIG1lc3NhZ2UgdG8gdGhlIG5vdGlmaWNhdGlvbiBhcmVhICovXG5cdGFzeW5jIG5vdGlmeSh0eXBlOiAnc3VjY2VzcycgfCAnaW5mbycgfCAnd2FybicgfCAnZXJyb3InLCBtZXNzYWdlOiBzdHJpbmcpIHtcblx0XHR0aGlzLl9lbmRGbG9hdGluZ1N1Yj8udW5zdWJzY3JpYmUoKTtcblx0XHRjb25zdCBkdXBsaWNhdGUgPSB0aGlzLl9yZW1haW5pbmcuZmluZChfYSA9PiBtZXNzYWdlID09PSBfYS5tZXNzYWdlKTtcblx0XHRpZiAoZHVwbGljYXRlKSB7XG5cdFx0XHR0aGlzLl9kaXNtaXNzKGR1cGxpY2F0ZSk7XG5cdFx0fVxuXG5cdFx0Y29uc3QgcmVtYWluaW5nID0gdGhpcy5fcmVtYWluaW5nO1xuXHRcdGlmIChyZW1haW5pbmcubGVuZ3RoID49IHRoaXMubWF4KSB7XG5cdFx0XHR0aGlzLl9kaXNtaXNzKHJlbWFpbmluZ1swXSk7XG5cdFx0fVxuXG5cdFx0Y29uc3QgYSA9IG5ldyBJbnRlcm5hbEFsZXJ0T2plY3QodHlwZSwgbWVzc2FnZSk7XG5cdFx0YXdhaXQgdGhpcy5fY2hlY2tWaWV3cG9ydCgpO1xuXHRcdHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuXHRcdFx0dGhpcy5fYWxlcnRzLnB1c2goYSk7XG5cdFx0XHR0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xuXHRcdH0pO1xuXHR9XG5cblx0LyoqQGlnbm9yZSAqL1xuXHRhc3luYyBfY2hlY2tWaWV3cG9ydCgpIHtcblx0XHRpZiAoIWlzRWxlbWVudEluVmlld3BvcnQodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KSkge1xuXHRcdFx0aWYgKHRoaXMub3V0c2lkZVZpZXdwb3J0QmVoYXZpb3IgPT09ICdmbG9hdCcpIHtcblx0XHRcdFx0Y29uc3QgZCA9IHRoaXMuX2Zsb2F0ZWQgPyAwIDogMTAwO1xuXHRcdFx0XHR0aGlzLl9mbG9hdGVkID0gdHJ1ZTtcblx0XHRcdFx0dGhpcy5fZmxvYXRQYW5lbEhpZGRlbiA9IGZhbHNlO1xuXHRcdFx0XHR0aGlzLl9lbmRGbG9hdGluZyh0aGlzLmZsb2F0RHVyYXRpb24pO1xuXHRcdFx0XHR0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xuXHRcdFx0XHRhd2FpdCB0aW1lcihkKS50b1Byb21pc2UoKTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnc3RhcnQnLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyoqQGlnbm9yZSAqL1xuXHRhc3luYyBfZGlzbWlzcyhhOiBJbnRlcm5hbEFsZXJ0T2plY3QpIHtcblx0XHRjb25zdCBpZCA9IGEuaWQ7XG5cdFx0YS5kZWxldGVkID0gdHJ1ZTtcblx0XHR0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xuXHRcdGF3YWl0IHRoaXMuX2FuaW1hdGlvbkVuZGVkLnBpcGUodGFrZSgxKSkudG9Qcm9taXNlKCk7XG5cdFx0dGhpcy56b25lLnJ1bigoKSA9PiB7XG5cdFx0XHR0aGlzLl9hbGVydHMgPSB0aGlzLl9hbGVydHMuZmlsdGVyKF9hID0+IF9hLmlkICE9PSBpZCk7XG5cdFx0XHR0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xuXHRcdH0pO1xuXHR9XG5cblx0LyoqIFJlbW92ZSBhbGwgbWVzc2FnZXMgY3VycmVudGx5IGRpc3BsYXllZC4gKi9cblx0YXN5bmMgY2xlYXIoKSB7XG5cdFx0YXdhaXQgUHJvbWlzZS5hbGwodGhpcy5fcmVtYWluaW5nLm1hcChhID0+IHRoaXMuX2Rpc21pc3MoYSkpKTtcblx0XHR0aGlzLl9lbmRGbG9hdGluZygpO1xuXHR9XG5cblx0cHJpdmF0ZSBfZW5kRmxvYXRpbmcoX2RlbGF5ID0gMCkge1xuXHRcdGlmICghdGhpcy5fZmxvYXRlZCkge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHR0aGlzLl9lbmRGbG9hdGluZ1N1Yj8udW5zdWJzY3JpYmUoKTtcblx0XHR0aGlzLl9lbmRGbG9hdGluZ1N1YiA9IHRpbWVyKF9kZWxheSlcblx0XHRcdC5waXBlKFxuXHRcdFx0XHR0YXAoKCkgPT4ge1xuXHRcdFx0XHRcdHRoaXMuX2Zsb2F0ZWQgPSBmYWxzZTtcblx0XHRcdFx0XHR0aGlzLnpvbmUucnVuKCgpID0+IHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCkpO1xuXHRcdFx0XHR9KSxcblx0XHRcdFx0ZGVsYXkoNDAwKVxuXHRcdFx0KVxuXHRcdFx0LnN1YnNjcmliZSgoKSA9PiB7XG5cdFx0XHRcdHRoaXMuX2Zsb2F0UGFuZWxIaWRkZW4gPSB0cnVlO1xuXHRcdFx0XHR0aGlzLnpvbmUucnVuKCgpID0+IHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCkpO1xuXHRcdFx0fSk7XG5cdH1cbn1cbiIsIjxkaXZcblx0Y2xhc3M9XCJidWktYWxlcnQtZml4ZWQtcGFuZWxcIlxuXHRbc3R5bGUub3BhY2l0eV09XCJfZmxvYXRQYW5lbEhpZGRlbiA/IDEgOiAwXCJcblx0W2NsYXNzLmJ1aS1hbGVydC1maXhlZC1wYW5lbC1ibGlua109XCJvdXRzaWRlVmlld3BvcnRCZWhhdmlvciA9PT0gJ3Njcm9sbCdcIlxuPlxuXHQ8YnVpLWFsZXJ0XG5cdFx0Km5nRm9yPVwibGV0IGEgb2YgX2FsZXJ0c1wiXG5cdFx0W2lkXT1cImEuaWRcIlxuXHRcdFt0eXBlXT1cImEudHlwZVwiXG5cdFx0W21lc3NhZ2VdPVwiYS5tZXNzYWdlXCJcblx0XHRkaXNtaXNzaWJsZVxuXHRcdFtAYWxlcnRUcmFuc2l0aW9uXT1cImEuZGVsZXRlZCA/ICdoaWRkZW4nIDogJ3Zpc2libGUnXCJcblx0XHQoQGFsZXJ0VHJhbnNpdGlvbi5zdGFydCk9XCJfYW5pbWF0aW9uU3RhcnRlZC5uZXh0KCRldmVudClcIlxuXHRcdChAYWxlcnRUcmFuc2l0aW9uLmRvbmUpPVwiX2FuaW1hdGlvbkVuZGVkLm5leHQoJGV2ZW50KVwiXG5cdFx0KGRpc21pc3NlZCk9XCJfZGlzbWlzcyhhKVwiXG5cdD48L2J1aS1hbGVydD5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiYnVpLWFsZXJ0LWZsb2F0LXBhbmVsLWZyYW1lXCIgW2hpZGRlbl09XCJfZmxvYXRQYW5lbEhpZGRlblwiIFtjbGFzcy5idWktYWxlcnQtZmxvYXQtcGFuZWwtc2hhZGVkXT1cIl9mbG9hdGVkXCI+XG5cdDxkaXYgY2xhc3M9XCJidWktYWxlcnQtZmxvYXQtcGFuZWxcIiBbc3R5bGUubWF4LXdpZHRoXT1cIl93aWR0aCArICdweCdcIiBbQGZsb2F0VHJhbnNpdGlvbl09XCIndmlzaWJsZSdcIiAqbmdJZj1cIl9mbG9hdGVkXCI+XG5cdFx0PGJ1aS1hbGVydFxuXHRcdFx0Km5nRm9yPVwibGV0IGEgb2YgX2FsZXJ0c1wiXG5cdFx0XHRbaWRdPVwiYS5pZFwiXG5cdFx0XHRbdHlwZV09XCJhLnR5cGVcIlxuXHRcdFx0W21lc3NhZ2VdPVwiYS5tZXNzYWdlXCJcblx0XHRcdFtAYWxlcnRUcmFuc2l0aW9uXT1cImEuZGVsZXRlZCA/ICdoaWRkZW4nIDogJ3Zpc2libGUnXCJcblx0XHQ+PC9idWktYWxlcnQ+XG5cdDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -62,14 +62,14 @@ export class AlertMessageComponent {
62
62
  this.dismissed.emit(this._id);
63
63
  }
64
64
  }
65
- AlertMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AlertMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
66
- AlertMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: AlertMessageComponent, selector: "bui-alert", inputs: { type: "type", message: "message", dismissible: "dismissible", _id: ["id", "_id"] }, outputs: { dismissed: "dismissed", initialised: "initialised" }, host: { attributes: { "role": "alert" }, properties: { "class": "'bui-alert bui-host bui-alert-' + (type === 'warn' ? 'warning' : type) + (dismissible ? ' bui-alert-dismissible' : '')", "id": "this._id" } }, ngImport: i0, template: "<div class=\"bui-alert-backdrop\"></div>\n<div class=\"bui-alert-frame\"></div>\n\n<div class=\"bui-alert-wrapper\">\n\t<div class=\"bui-alert-icon-area\">\n\t\t<mat-icon [buiIcon]=\"iconName\" variant=\"outlined\"></mat-icon>\n\t</div>\n\t<div class=\"bui-alert-content\"><div [innerHTML]=\"message\"></div></div>\n</div>\n\n<div class=\"bui-alert-button-area\" *ngIf=\"dismissible\">\n\t<div class=\"bui-alert-button-backdrop\"></div>\n\t<button mat-icon-button class=\"bui-alert-button\" (click)=\"_dismiss()\"><mat-icon>cancel</mat-icon></button>\n</div>\n", styles: [":host(:not([hidden])){display:block;padding:12px 14px 12px 19px;position:relative;border-radius:5px}:host-context([dir=rtl]) :host(:not([hidden])){padding:12px 19px 12px 14px}:host(:not([hidden])),:host(:not([hidden])) *{box-sizing:border-box}.bui-alert-backdrop,.bui-alert-frame{position:absolute;top:0;right:0;bottom:0;left:0}.bui-alert-backdrop{opacity:.1}:host(.bui-alert-dismissible) .bui-alert-backdrop{clip-path:polygon(0 0,calc(100% - 25px) 0,calc(100% - 18.75px) 18.75px,100% 25px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-backdrop{clip-path:polygon(0 25px,0 100%,100% 100%,100% 0,25px 0,18.75px 18.75px)}.bui-alert-frame{border-radius:5px;border-width:1px 1px 1px 5px;border-style:solid}:host-context([dir=rtl]) .bui-alert-frame{border-width:1px 5px 1px 1px}:host(.bui-alert-dismissible) .bui-alert-frame{clip-path:polygon(0 0,calc(100% - 25px) 0,calc(100% - 25px) 25px,100% 25px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-frame{clip-path:polygon(0 25px,0 100%,100% 100%,100% 0,25px 0)}.bui-alert-button-area{position:absolute;right:-15px;top:-15px;width:40px;height:40px;border-radius:20px;display:flex;align-items:center;justify-content:center}:host-context([dir=rtl]) .bui-alert-button-area{right:unset;left:-15px}.bui-alert-button-backdrop{position:absolute;border-radius:20px;width:100%;height:100%;clip-path:polygon(0 15px,25px 15px,25px 100%,0% 100%)}:host-context([dir=rtl]) .bui-alert-button-backdrop{clip-path:polygon(15px 15px,15px 100%,100% 100%,100% 15px)}.bui-alert-wrapper{display:flex;align-items:stretch}.bui-alert-icon-area{flex-shrink:0;display:flex;justify-content:center;align-items:center;border-radius:5px;width:30px;height:30px;margin-right:14px;color:var(--bui-bg-card)}:host-context([dir=rtl]) .bui-alert-icon-area{margin-right:unset;margin-left:14px}.bui-alert-content{display:flex;align-items:center;z-index:1}:host(.bui-alert-dismissible) .bui-alert-content{clip-path:polygon(0 0,calc(100% - 11px) 0,100% 13px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-content{clip-path:polygon(0 13px,0 100%,100% 100%,100% 0,11px 0)}:host(.bui-alert-success) .bui-alert-frame{border-color:var(--bui-color-success)}:host(.bui-alert-success) .bui-alert-backdrop,:host(.bui-alert-success) .bui-alert-icon-area{background-color:var(--bui-color-success)}:host(.bui-alert-success) .bui-alert-button-backdrop{border:1px var(--bui-color-success) solid}:host(.bui-alert-success) .bui-alert-button{color:var(--bui-color-success)}:host(.bui-alert-info) .bui-alert-frame{border-color:var(--bui-color-info)}:host(.bui-alert-info) .bui-alert-backdrop,:host(.bui-alert-info) .bui-alert-icon-area{background-color:var(--bui-color-info)}:host(.bui-alert-info) .bui-alert-button-backdrop{border:1px var(--bui-color-info) solid}:host(.bui-alert-info) .bui-alert-button{color:var(--bui-color-info)}:host(.bui-alert-warning) .bui-alert-frame{border-color:var(--bui-color-warning)}:host(.bui-alert-warning) .bui-alert-backdrop,:host(.bui-alert-warning) .bui-alert-icon-area{background-color:var(--bui-color-warning)}:host(.bui-alert-warning) .bui-alert-button-backdrop{border:1px var(--bui-color-warning) solid}:host(.bui-alert-warning) .bui-alert-button{color:var(--bui-color-warning)}:host(.bui-alert-error) .bui-alert-frame{border-color:var(--bui-color-error)}:host(.bui-alert-error) .bui-alert-backdrop,:host(.bui-alert-error) .bui-alert-icon-area{background-color:var(--bui-color-error)}:host(.bui-alert-error) .bui-alert-button-backdrop{border:1px var(--bui-color-error) solid}:host(.bui-alert-error) .bui-alert-button{color:var(--bui-color-error)}\n"], dependencies: [{ 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"] }, { kind: "directive", type: i3.IconDirective, selector: "[buiIcon]", inputs: ["buiIcon", "size", "variant"] }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AlertMessageComponent, decorators: [{
65
+ AlertMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AlertMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
66
+ AlertMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: AlertMessageComponent, selector: "bui-alert", inputs: { type: "type", message: "message", dismissible: "dismissible", _id: ["id", "_id"] }, outputs: { dismissed: "dismissed", initialised: "initialised" }, host: { attributes: { "role": "alert" }, properties: { "class": "'bui-alert bui-host bui-alert-' + (type === 'warn' ? 'warning' : type) + (dismissible ? ' bui-alert-dismissible' : '')", "id": "this._id" } }, ngImport: i0, template: "<div class=\"bui-alert-backdrop\"></div>\n<div class=\"bui-alert-frame\"></div>\n\n<div class=\"bui-alert-wrapper\">\n\t<div class=\"bui-alert-icon-area\">\n\t\t<mat-icon [buiIcon]=\"iconName\" variant=\"outlined\"></mat-icon>\n\t</div>\n\t<div class=\"bui-alert-content\"><div [innerHTML]=\"message\"></div></div>\n</div>\n\n<div class=\"bui-alert-button-area\" *ngIf=\"dismissible\">\n\t<div class=\"bui-alert-button-backdrop\"></div>\n\t<button mat-icon-button class=\"bui-alert-button\" (click)=\"_dismiss()\"><mat-icon>cancel</mat-icon></button>\n</div>\n", styles: [":host(:not([hidden])){display:block;padding:12px 14px 12px 19px;position:relative;border-radius:5px}:host-context([dir=rtl]) :host(:not([hidden])){padding:12px 19px 12px 14px}:host(:not([hidden])),:host(:not([hidden])) *{box-sizing:border-box}.bui-alert-backdrop,.bui-alert-frame{position:absolute;inset:0}.bui-alert-backdrop{opacity:.1}:host(.bui-alert-dismissible) .bui-alert-backdrop{clip-path:polygon(0 0,calc(100% - 25px) 0,calc(100% - 18.75px) 18.75px,100% 25px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-backdrop{clip-path:polygon(0 25px,0 100%,100% 100%,100% 0,25px 0,18.75px 18.75px)}.bui-alert-frame{border-radius:5px;border-width:1px 1px 1px 5px;border-style:solid}:host-context([dir=rtl]) .bui-alert-frame{border-width:1px 5px 1px 1px}:host(.bui-alert-dismissible) .bui-alert-frame{clip-path:polygon(0 0,calc(100% - 25px) 0,calc(100% - 25px) 25px,100% 25px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-frame{clip-path:polygon(0 25px,0 100%,100% 100%,100% 0,25px 0)}.bui-alert-button-area{position:absolute;right:-15px;top:-15px;width:40px;height:40px;border-radius:20px;display:flex;align-items:center;justify-content:center}:host-context([dir=rtl]) .bui-alert-button-area{right:unset;left:-15px}.bui-alert-button-backdrop{position:absolute;border-radius:20px;width:100%;height:100%;clip-path:polygon(0 15px,25px 15px,25px 100%,0% 100%)}:host-context([dir=rtl]) .bui-alert-button-backdrop{clip-path:polygon(15px 15px,15px 100%,100% 100%,100% 15px)}.bui-alert-wrapper{display:flex;align-items:stretch}.bui-alert-icon-area{flex-shrink:0;display:flex;justify-content:center;align-items:center;border-radius:5px;width:30px;height:30px;margin-right:14px;color:var(--bui-bg-card)}:host-context([dir=rtl]) .bui-alert-icon-area{margin-right:unset;margin-left:14px}.bui-alert-content{display:flex;align-items:center;z-index:1}:host(.bui-alert-dismissible) .bui-alert-content{clip-path:polygon(0 0,calc(100% - 11px) 0,100% 13px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-content{clip-path:polygon(0 13px,0 100%,100% 100%,100% 0,11px 0)}:host(.bui-alert-success) .bui-alert-frame{border-color:var(--bui-color-success)}:host(.bui-alert-success) .bui-alert-backdrop,:host(.bui-alert-success) .bui-alert-icon-area{background-color:var(--bui-color-success)}:host(.bui-alert-success) .bui-alert-button-backdrop{border:1px var(--bui-color-success) solid}:host(.bui-alert-success) .bui-alert-button{color:var(--bui-color-success)}:host(.bui-alert-info) .bui-alert-frame{border-color:var(--bui-color-info)}:host(.bui-alert-info) .bui-alert-backdrop,:host(.bui-alert-info) .bui-alert-icon-area{background-color:var(--bui-color-info)}:host(.bui-alert-info) .bui-alert-button-backdrop{border:1px var(--bui-color-info) solid}:host(.bui-alert-info) .bui-alert-button{color:var(--bui-color-info)}:host(.bui-alert-warning) .bui-alert-frame{border-color:var(--bui-color-warning)}:host(.bui-alert-warning) .bui-alert-backdrop,:host(.bui-alert-warning) .bui-alert-icon-area{background-color:var(--bui-color-warning)}:host(.bui-alert-warning) .bui-alert-button-backdrop{border:1px var(--bui-color-warning) solid}:host(.bui-alert-warning) .bui-alert-button{color:var(--bui-color-warning)}:host(.bui-alert-error) .bui-alert-frame{border-color:var(--bui-color-error)}:host(.bui-alert-error) .bui-alert-backdrop,:host(.bui-alert-error) .bui-alert-icon-area{background-color:var(--bui-color-error)}:host(.bui-alert-error) .bui-alert-button-backdrop{border:1px var(--bui-color-error) solid}:host(.bui-alert-error) .bui-alert-button{color:var(--bui-color-error)}\n"], dependencies: [{ 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"] }, { kind: "directive", type: i3.IconDirective, selector: "[buiIcon]", inputs: ["buiIcon", "size", "variant"] }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AlertMessageComponent, decorators: [{
68
68
  type: Component,
69
69
  args: [{ selector: 'bui-alert', host: {
70
70
  '[class]': `'bui-alert bui-host bui-alert-' + (type === 'warn' ? 'warning' : type) + (dismissible ? ' bui-alert-dismissible' : '')`,
71
71
  role: 'alert'
72
- }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bui-alert-backdrop\"></div>\n<div class=\"bui-alert-frame\"></div>\n\n<div class=\"bui-alert-wrapper\">\n\t<div class=\"bui-alert-icon-area\">\n\t\t<mat-icon [buiIcon]=\"iconName\" variant=\"outlined\"></mat-icon>\n\t</div>\n\t<div class=\"bui-alert-content\"><div [innerHTML]=\"message\"></div></div>\n</div>\n\n<div class=\"bui-alert-button-area\" *ngIf=\"dismissible\">\n\t<div class=\"bui-alert-button-backdrop\"></div>\n\t<button mat-icon-button class=\"bui-alert-button\" (click)=\"_dismiss()\"><mat-icon>cancel</mat-icon></button>\n</div>\n", styles: [":host(:not([hidden])){display:block;padding:12px 14px 12px 19px;position:relative;border-radius:5px}:host-context([dir=rtl]) :host(:not([hidden])){padding:12px 19px 12px 14px}:host(:not([hidden])),:host(:not([hidden])) *{box-sizing:border-box}.bui-alert-backdrop,.bui-alert-frame{position:absolute;top:0;right:0;bottom:0;left:0}.bui-alert-backdrop{opacity:.1}:host(.bui-alert-dismissible) .bui-alert-backdrop{clip-path:polygon(0 0,calc(100% - 25px) 0,calc(100% - 18.75px) 18.75px,100% 25px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-backdrop{clip-path:polygon(0 25px,0 100%,100% 100%,100% 0,25px 0,18.75px 18.75px)}.bui-alert-frame{border-radius:5px;border-width:1px 1px 1px 5px;border-style:solid}:host-context([dir=rtl]) .bui-alert-frame{border-width:1px 5px 1px 1px}:host(.bui-alert-dismissible) .bui-alert-frame{clip-path:polygon(0 0,calc(100% - 25px) 0,calc(100% - 25px) 25px,100% 25px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-frame{clip-path:polygon(0 25px,0 100%,100% 100%,100% 0,25px 0)}.bui-alert-button-area{position:absolute;right:-15px;top:-15px;width:40px;height:40px;border-radius:20px;display:flex;align-items:center;justify-content:center}:host-context([dir=rtl]) .bui-alert-button-area{right:unset;left:-15px}.bui-alert-button-backdrop{position:absolute;border-radius:20px;width:100%;height:100%;clip-path:polygon(0 15px,25px 15px,25px 100%,0% 100%)}:host-context([dir=rtl]) .bui-alert-button-backdrop{clip-path:polygon(15px 15px,15px 100%,100% 100%,100% 15px)}.bui-alert-wrapper{display:flex;align-items:stretch}.bui-alert-icon-area{flex-shrink:0;display:flex;justify-content:center;align-items:center;border-radius:5px;width:30px;height:30px;margin-right:14px;color:var(--bui-bg-card)}:host-context([dir=rtl]) .bui-alert-icon-area{margin-right:unset;margin-left:14px}.bui-alert-content{display:flex;align-items:center;z-index:1}:host(.bui-alert-dismissible) .bui-alert-content{clip-path:polygon(0 0,calc(100% - 11px) 0,100% 13px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-content{clip-path:polygon(0 13px,0 100%,100% 100%,100% 0,11px 0)}:host(.bui-alert-success) .bui-alert-frame{border-color:var(--bui-color-success)}:host(.bui-alert-success) .bui-alert-backdrop,:host(.bui-alert-success) .bui-alert-icon-area{background-color:var(--bui-color-success)}:host(.bui-alert-success) .bui-alert-button-backdrop{border:1px var(--bui-color-success) solid}:host(.bui-alert-success) .bui-alert-button{color:var(--bui-color-success)}:host(.bui-alert-info) .bui-alert-frame{border-color:var(--bui-color-info)}:host(.bui-alert-info) .bui-alert-backdrop,:host(.bui-alert-info) .bui-alert-icon-area{background-color:var(--bui-color-info)}:host(.bui-alert-info) .bui-alert-button-backdrop{border:1px var(--bui-color-info) solid}:host(.bui-alert-info) .bui-alert-button{color:var(--bui-color-info)}:host(.bui-alert-warning) .bui-alert-frame{border-color:var(--bui-color-warning)}:host(.bui-alert-warning) .bui-alert-backdrop,:host(.bui-alert-warning) .bui-alert-icon-area{background-color:var(--bui-color-warning)}:host(.bui-alert-warning) .bui-alert-button-backdrop{border:1px var(--bui-color-warning) solid}:host(.bui-alert-warning) .bui-alert-button{color:var(--bui-color-warning)}:host(.bui-alert-error) .bui-alert-frame{border-color:var(--bui-color-error)}:host(.bui-alert-error) .bui-alert-backdrop,:host(.bui-alert-error) .bui-alert-icon-area{background-color:var(--bui-color-error)}:host(.bui-alert-error) .bui-alert-button-backdrop{border:1px var(--bui-color-error) solid}:host(.bui-alert-error) .bui-alert-button{color:var(--bui-color-error)}\n"] }]
72
+ }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"bui-alert-backdrop\"></div>\n<div class=\"bui-alert-frame\"></div>\n\n<div class=\"bui-alert-wrapper\">\n\t<div class=\"bui-alert-icon-area\">\n\t\t<mat-icon [buiIcon]=\"iconName\" variant=\"outlined\"></mat-icon>\n\t</div>\n\t<div class=\"bui-alert-content\"><div [innerHTML]=\"message\"></div></div>\n</div>\n\n<div class=\"bui-alert-button-area\" *ngIf=\"dismissible\">\n\t<div class=\"bui-alert-button-backdrop\"></div>\n\t<button mat-icon-button class=\"bui-alert-button\" (click)=\"_dismiss()\"><mat-icon>cancel</mat-icon></button>\n</div>\n", styles: [":host(:not([hidden])){display:block;padding:12px 14px 12px 19px;position:relative;border-radius:5px}:host-context([dir=rtl]) :host(:not([hidden])){padding:12px 19px 12px 14px}:host(:not([hidden])),:host(:not([hidden])) *{box-sizing:border-box}.bui-alert-backdrop,.bui-alert-frame{position:absolute;inset:0}.bui-alert-backdrop{opacity:.1}:host(.bui-alert-dismissible) .bui-alert-backdrop{clip-path:polygon(0 0,calc(100% - 25px) 0,calc(100% - 18.75px) 18.75px,100% 25px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-backdrop{clip-path:polygon(0 25px,0 100%,100% 100%,100% 0,25px 0,18.75px 18.75px)}.bui-alert-frame{border-radius:5px;border-width:1px 1px 1px 5px;border-style:solid}:host-context([dir=rtl]) .bui-alert-frame{border-width:1px 5px 1px 1px}:host(.bui-alert-dismissible) .bui-alert-frame{clip-path:polygon(0 0,calc(100% - 25px) 0,calc(100% - 25px) 25px,100% 25px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-frame{clip-path:polygon(0 25px,0 100%,100% 100%,100% 0,25px 0)}.bui-alert-button-area{position:absolute;right:-15px;top:-15px;width:40px;height:40px;border-radius:20px;display:flex;align-items:center;justify-content:center}:host-context([dir=rtl]) .bui-alert-button-area{right:unset;left:-15px}.bui-alert-button-backdrop{position:absolute;border-radius:20px;width:100%;height:100%;clip-path:polygon(0 15px,25px 15px,25px 100%,0% 100%)}:host-context([dir=rtl]) .bui-alert-button-backdrop{clip-path:polygon(15px 15px,15px 100%,100% 100%,100% 15px)}.bui-alert-wrapper{display:flex;align-items:stretch}.bui-alert-icon-area{flex-shrink:0;display:flex;justify-content:center;align-items:center;border-radius:5px;width:30px;height:30px;margin-right:14px;color:var(--bui-bg-card)}:host-context([dir=rtl]) .bui-alert-icon-area{margin-right:unset;margin-left:14px}.bui-alert-content{display:flex;align-items:center;z-index:1}:host(.bui-alert-dismissible) .bui-alert-content{clip-path:polygon(0 0,calc(100% - 11px) 0,100% 13px,100% 100%,0 100%)}:host-context([dir=rtl]) :host(.bui-alert-dismissible) .bui-alert-content{clip-path:polygon(0 13px,0 100%,100% 100%,100% 0,11px 0)}:host(.bui-alert-success) .bui-alert-frame{border-color:var(--bui-color-success)}:host(.bui-alert-success) .bui-alert-backdrop,:host(.bui-alert-success) .bui-alert-icon-area{background-color:var(--bui-color-success)}:host(.bui-alert-success) .bui-alert-button-backdrop{border:1px var(--bui-color-success) solid}:host(.bui-alert-success) .bui-alert-button{color:var(--bui-color-success)}:host(.bui-alert-info) .bui-alert-frame{border-color:var(--bui-color-info)}:host(.bui-alert-info) .bui-alert-backdrop,:host(.bui-alert-info) .bui-alert-icon-area{background-color:var(--bui-color-info)}:host(.bui-alert-info) .bui-alert-button-backdrop{border:1px var(--bui-color-info) solid}:host(.bui-alert-info) .bui-alert-button{color:var(--bui-color-info)}:host(.bui-alert-warning) .bui-alert-frame{border-color:var(--bui-color-warning)}:host(.bui-alert-warning) .bui-alert-backdrop,:host(.bui-alert-warning) .bui-alert-icon-area{background-color:var(--bui-color-warning)}:host(.bui-alert-warning) .bui-alert-button-backdrop{border:1px var(--bui-color-warning) solid}:host(.bui-alert-warning) .bui-alert-button{color:var(--bui-color-warning)}:host(.bui-alert-error) .bui-alert-frame{border-color:var(--bui-color-error)}:host(.bui-alert-error) .bui-alert-backdrop,:host(.bui-alert-error) .bui-alert-icon-area{background-color:var(--bui-color-error)}:host(.bui-alert-error) .bui-alert-button-backdrop{border:1px var(--bui-color-error) solid}:host(.bui-alert-error) .bui-alert-button{color:var(--bui-color-error)}\n"] }]
73
73
  }], ctorParameters: function () { return []; }, propDecorators: { type: [{
74
74
  type: Input
75
75
  }], message: [{
@@ -7,10 +7,10 @@ import { AlertMessageComponent } from './alert-message.component';
7
7
  import * as i0 from "@angular/core";
8
8
  export class AlertModule {
9
9
  }
10
- AlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- AlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: AlertModule, declarations: [AlertMessageComponent, AlertContainerComponent], imports: [CommonModule, IconFontModule, MatButtonModule], exports: [AlertMessageComponent, AlertContainerComponent] });
12
- AlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AlertModule, imports: [CommonModule, IconFontModule, MatButtonModule] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AlertModule, decorators: [{
10
+ AlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ AlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.3", ngImport: i0, type: AlertModule, declarations: [AlertMessageComponent, AlertContainerComponent], imports: [CommonModule, IconFontModule, MatButtonModule], exports: [AlertMessageComponent, AlertContainerComponent] });
12
+ AlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AlertModule, imports: [CommonModule, IconFontModule, MatButtonModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AlertModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [AlertMessageComponent, AlertContainerComponent],
@@ -84,9 +84,9 @@ export class AwaitDirective {
84
84
  }
85
85
  }
86
86
  }
87
- AwaitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AwaitDirective, deps: [{ token: i0.ElementRef }, { token: i1.MatButton, optional: true }, { token: DOCUMENT }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
88
- AwaitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: AwaitDirective, selector: "[buiAwait]", inputs: { buiAwait: "buiAwait", buiAwaitAriaLabel: "buiAwaitAriaLabel", buiAwaitDiameter: "buiAwaitDiameter" }, ngImport: i0 });
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: AwaitDirective, decorators: [{
87
+ AwaitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AwaitDirective, deps: [{ token: i0.ElementRef }, { token: i1.MatButton, optional: true }, { token: DOCUMENT }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
88
+ AwaitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.3", type: AwaitDirective, selector: "[buiAwait]", inputs: { buiAwait: "buiAwait", buiAwaitAriaLabel: "buiAwaitAriaLabel", buiAwaitDiameter: "buiAwaitDiameter" }, ngImport: i0 });
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: AwaitDirective, decorators: [{
90
90
  type: Directive,
91
91
  args: [{
92
92
  selector: '[buiAwait]'
@@ -103,4 +103,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
103
103
  }], buiAwaitDiameter: [{
104
104
  type: Input
105
105
  }] } });
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdhaXQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvYmVoYXZpb3IvYXdhaXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBS04sU0FBUyxFQUdULE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUVSLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7QUFHeEU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFJSCxNQUFNLE9BQU8sY0FBYztJQTJCMUIsWUFDa0IsS0FBOEIsRUFDbEIsTUFBaUIsRUFDWCxHQUFhLEVBQ2hELGVBQXlDLEVBQ2pDLFNBQTJCO1FBSmxCLFVBQUssR0FBTCxLQUFLLENBQXlCO1FBQ2xCLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDWCxRQUFHLEdBQUgsR0FBRyxDQUFVO1FBRXhDLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBbkJwQyxxRkFBcUY7UUFFckYsc0JBQWlCLEdBQUcsYUFBYSxDQUFDO1FBRWxDLDBFQUEwRTtRQUUxRSxxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFHZCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVkzQixJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1osT0FBTyxDQUFDLEtBQUssQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO1lBQzVELE9BQU87U0FDUDtRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLHVCQUF1QixDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELGNBQWM7SUFDZCxlQUFlO1FBQ2QsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUM1QixpSEFBaUgsQ0FBQztZQUNuSCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBZ0IsQ0FBQztTQUNwRztJQUNGLENBQUM7SUFFRCxjQUFjO0lBQ2QsU0FBUztRQUNSLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0csSUFBSSxVQUFVLEtBQUssSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztZQUM5QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDdEI7SUFDRixDQUFDO0lBRU8sY0FBYztRQUNyQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUV4QyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxDQUFDO2dCQUNsRSxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztnQkFDcEMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ25DLENBQUMsQ0FBQyxJQUFJLEdBQUcsZUFBZSxDQUFDO2dCQUN6QixDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO2dCQUM1QixNQUFNLENBQUMsR0FBZ0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO2dCQUMvRCxDQUFDLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDckQsSUFBSSxDQUFDLFVBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxlQUFnQixDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO2FBQ2xEO2lCQUFNO2dCQUNOLElBQUksQ0FBQyxlQUFnQixDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsV0FBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUM1QixJQUFJLENBQUMsVUFBVyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7YUFDaEM7U0FDRDtJQUNGLENBQUM7OzJHQWxGVyxjQUFjLHFGQThCakIsUUFBUTsrRkE5QkwsY0FBYzsyRkFBZCxjQUFjO2tCQUgxQixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxZQUFZO2lCQUN0Qjs7MEJBOEJFLFFBQVE7OEJBQytCLFFBQVE7MEJBQS9DLE1BQU07MkJBQUMsUUFBUTtrSEFuQmpCLFFBQVE7c0JBRFAsS0FBSztnQkFLTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBS04sZ0JBQWdCO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuXHRBZnRlclZpZXdJbml0LFxuXHRDb21wb25lbnRGYWN0b3J5LFxuXHRDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG5cdENvbXBvbmVudFJlZixcblx0RGlyZWN0aXZlLFxuXHREb0NoZWNrLFxuXHRFbGVtZW50UmVmLFxuXHRJbmplY3QsXG5cdElucHV0LFxuXHRPcHRpb25hbCxcblx0Vmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIFVzZSB0aGlzIGRpcmVjdGl2ZSBvbiBhIGBNYXRCdXR0b25gIGVsZW1lbnQgdG8gcHJvdmlkZSBhbiBhbHRlcm5hdGl2ZSB2aWV3IHdoZW4gYW4gc3luYyBvcGVyYXRpb24gaXMgaW4gcHJvZ3Jlc3MuXG4gKlxuICogRm9yIGV4YW1wbGU6XG4gKlxuICogYGBgXG4gKiA8YnV0dG9uIChjbGljayk9XCJzdWJtaXQoKTtcIiBbYnVpQXdhaXRdPVwic3VibWl0U3Vic2NyaXB0aW9uXCIgYnVpQXdhaXRBcmlhTGFiZWw9XCJzdWJtaXR0aW5nXCI+U3VibWl0PC9idXR0b24+XG4gKiBgYGBcbiAqXG4gKiBQbGVhc2UgcmVmZXIgdG8gW01hdGVyaWFsIERlc2lnbl0oaHR0cHM6Ly9tYXRlcmlhbC5pby9jb21wb25lbnRzL3Byb2dyZXNzLWluZGljYXRvcnMjY2lyY3VsYXItcHJvZ3Jlc3MtaW5kaWNhdG9ycylcbiAqIGZvciBtb3JlIGRldGFpbHMgb2YgaW50ZWdyYXRpbmcgY2lyY3VsYXIgc3Bpbm5lciBjb21wb25lbnQgd2l0aCBhY3Rpb24gYnV0dG9ucy5cbiAqXG4gKiBUaGUgb3BlcmF0aW9uIGlzIGNvbnNpZGVyZWQgJ2luIHByb2dyZXNzJyB3aGVuIHRoZSBib3VuZCBwcm9wZXJ0eSBgYnVpQXdhaXRgIGV2YWx1YXRlcyB0b1xuICpcbiAqIC0gYHRydWVgOyBvclxuICogLSBhbiBpbnN0YW5jZSBvZiBgcnhqcy9TdWJzY3JpcHRpb25gIGFuZCBgYnVpQXdhaXQuY2xvc2VkYCBpcyBmYWxzeVxuICpcbiAqIFdoZW4gaW4gcHJvZ3Jlc3NcbiAqXG4gKiAtIHRoZSBidXR0b24ncyBjYXB0aW9uIHdpbGwgYmUgaGlkZGVuO1xuICogLSBhIGA8bWF0LXByb2dyZXNzLXNwaW5uZXI+YCB3aWxsIGJlIGRpc3BsYXllZCBpbiBwbGFjZSBvZiB0aGUgY2FwdGlvbjtcbiAqIC0gdGhlIGJ1dHRvbiB3aWxsIGJlIGRpc2FibGVkIGJ5IHNldHRpbmcgdGhlIHByb3BlcnR5IGBkaXNhYmxlZGAgb2YgdGhlIGBNYXRCdXR0b25gIGluc3RhbmNlLlxuICovXG5ARGlyZWN0aXZlKHtcblx0c2VsZWN0b3I6ICdbYnVpQXdhaXRdJ1xufSlcbmV4cG9ydCBjbGFzcyBBd2FpdERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIERvQ2hlY2sge1xuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoZSBgaW4gcHJvZ3Jlc3NgIHN0YXR1cyBvZiBhbiBhc3luYyBvcGVyYXRpb24uXG5cdCAqXG5cdCAqIFRoZSBvcGVyYXRpb24gaXMgY29uc2lkZXJlZCAnaW4gcHJvZ3Jlc3MnIHdoZW4gdGhlIHByb3BlcnR5IGV2YWx1YXRlcyB0b1xuXHQgKlxuXHQgKiAtIGB0cnVlYDsgb3Jcblx0ICogLSBhbiBpbnN0YW5jZSBvZiBgcnhqcy9TdWJzY3JpcHRpb25gIGFuZCBgYnVpQXdhaXQuY2xvc2VkYCBpcyBmYWxzeVxuXHQgKlxuXHQgKi9cblx0QElucHV0KClcblx0YnVpQXdhaXQ6IG51bGwgfCB1bmRlZmluZWQgfCBib29sZWFuIHwgU3Vic2NyaXB0aW9uO1xuXG5cdC8qKiBUaGUgQVJJQSBsYWJlbCB0byBiZSBwdXQgb24gdGhlIHNwaW5uZXIuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGBcIkluIHByb2dyZXNzXCJgLiAqL1xuXHRASW5wdXQoKVxuXHRidWlBd2FpdEFyaWFMYWJlbCA9ICdJbiBwcm9ncmVzcyc7XG5cblx0LyoqIFRoZSBkaWFtZXRlciBvZiB0aGUgaW4tcHJvZ3Jlc3Mgc3Bpbm5lci4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgYDIwYC4gKi9cblx0QElucHV0KClcblx0YnVpQXdhaXREaWFtZXRlciA9IDIwO1xuXG5cdHByaXZhdGUgX292ZXJsYXlFbDogSFRNTERpdkVsZW1lbnQgfCB1bmRlZmluZWQ7XG5cdHByaXZhdGUgX3Byb2Nlc3NpbmcgPSBmYWxzZTtcblx0cHJpdmF0ZSBfZmFjdG9yeTogQ29tcG9uZW50RmFjdG9yeTxNYXRQcm9ncmVzc1NwaW5uZXI+IHwgdW5kZWZpbmVkO1xuXHRwcml2YXRlIF9zcGlubmVyUmVmOiBDb21wb25lbnRSZWY8TWF0UHJvZ3Jlc3NTcGlubmVyPiB8IHVuZGVmaW5lZDtcblx0cHJpdmF0ZSBfY2FwdGlvbldyYXBwZXI6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgcmVhZG9ubHkgX2VSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuXHRcdEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgYnV0dG9uOiBNYXRCdXR0b24sXG5cdFx0QEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2M6IERvY3VtZW50LFxuXHRcdGZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuXHRcdHByaXZhdGUgX3ZpZXdDb250OiBWaWV3Q29udGFpbmVyUmVmXG5cdCkge1xuXHRcdGlmICghYnV0dG9uKSB7XG5cdFx0XHRjb25zb2xlLmVycm9yKCdbYnVpQXdhaXRdIGNhbiBvbmx5IGJlIHVzZWQgb24gYSBNYXRCdXR0b24nKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0dGhpcy5fZmFjdG9yeSA9IGZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShNYXRQcm9ncmVzc1NwaW5uZXIpO1xuXHR9XG5cblx0LyoqIEBpZ25vcmUgKi9cblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLmJ1dHRvbikge1xuXHRcdFx0dGhpcy5fb3ZlcmxheUVsID0gdGhpcy5kb2MuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG5cdFx0XHR0aGlzLl9lUmVmLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fb3ZlcmxheUVsKTtcblx0XHRcdHRoaXMuX292ZXJsYXlFbC5jbGFzc0xpc3QuYWRkKCdidWktYXdhaXQtb3ZlcmxheScpO1xuXHRcdFx0dGhpcy5fb3ZlcmxheUVsLnN0eWxlLmNzc1RleHQgPVxuXHRcdFx0XHQnZGlzcGxheTpmbGV4OyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IHJpZ2h0OjA7IGJvdHRvbTowOyBsZWZ0OjA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyJztcblx0XHRcdHRoaXMuX2NhcHRpb25XcmFwcGVyID0gdGhpcy5fZVJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5tYXQtYnV0dG9uLXdyYXBwZXInKSBhcyBIVE1MRWxlbWVudDtcblx0XHR9XG5cdH1cblxuXHQvKiogQGlnbm9yZSAqL1xuXHRuZ0RvQ2hlY2soKTogdm9pZCB7XG5cdFx0Y29uc3QgaW5Qcm9ncmVzcyA9IHRoaXMuYnVpQXdhaXQgPT09IHRydWUgfHwgKHR5cGVvZiB0aGlzLmJ1aUF3YWl0ID09PSAnb2JqZWN0JyAmJiAhdGhpcy5idWlBd2FpdCEuY2xvc2VkKTtcblx0XHRpZiAoaW5Qcm9ncmVzcyAhPT0gdGhpcy5fcHJvY2Vzc2luZykge1xuXHRcdFx0dGhpcy5fcHJvY2Vzc2luZyA9IGluUHJvZ3Jlc3M7XG5cdFx0XHR0aGlzLl9zdGF0dXNDaGFuZ2VkKCk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBfc3RhdHVzQ2hhbmdlZCgpIHtcblx0XHRpZiAodGhpcy5idXR0b24pIHtcblx0XHRcdHRoaXMuYnV0dG9uLmRpc2FibGVkID0gdGhpcy5fcHJvY2Vzc2luZztcblxuXHRcdFx0aWYgKHRoaXMuX3Byb2Nlc3NpbmcpIHtcblx0XHRcdFx0dGhpcy5fc3Bpbm5lclJlZiA9IHRoaXMuX3ZpZXdDb250LmNyZWF0ZUNvbXBvbmVudCh0aGlzLl9mYWN0b3J5ISk7XG5cdFx0XHRcdGNvbnN0IGMgPSB0aGlzLl9zcGlubmVyUmVmLmluc3RhbmNlO1xuXHRcdFx0XHRjLmRpYW1ldGVyID0gdGhpcy5idWlBd2FpdERpYW1ldGVyO1xuXHRcdFx0XHRjLm1vZGUgPSAnaW5kZXRlcm1pbmF0ZSc7XG5cdFx0XHRcdGMuY29sb3IgPSB0aGlzLmJ1dHRvbi5jb2xvcjtcblx0XHRcdFx0Y29uc3QgZTogSFRNTEVsZW1lbnQgPSB0aGlzLl9zcGlubmVyUmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG5cdFx0XHRcdGUuc2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJywgdGhpcy5idWlBd2FpdEFyaWFMYWJlbCk7XG5cdFx0XHRcdHRoaXMuX292ZXJsYXlFbCEuYXBwZW5kQ2hpbGQoZSk7XG5cdFx0XHRcdHRoaXMuX2NhcHRpb25XcmFwcGVyIS5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHR0aGlzLl9jYXB0aW9uV3JhcHBlciEuc3R5bGUudmlzaWJpbGl0eSA9ICcnO1xuXHRcdFx0XHR0aGlzLl9zcGlubmVyUmVmIS5kZXN0cm95KCk7XG5cdFx0XHRcdHRoaXMuX292ZXJsYXlFbCEuaW5uZXJIVE1MID0gJyc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iXX0=
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdhaXQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvYmVoYXZpb3IvYXdhaXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBS04sU0FBUyxFQUdULE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUVSLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7QUFHeEU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFJSCxNQUFNLE9BQU8sY0FBYztJQTJCMUIsWUFDa0IsS0FBOEIsRUFDbEIsTUFBaUIsRUFDWCxHQUFhLEVBQ2hELGVBQXlDLEVBQ2pDLFNBQTJCO1FBSmxCLFVBQUssR0FBTCxLQUFLLENBQXlCO1FBQ2xCLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDWCxRQUFHLEdBQUgsR0FBRyxDQUFVO1FBRXhDLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBbkJwQyxxRkFBcUY7UUFFckYsc0JBQWlCLEdBQUcsYUFBYSxDQUFDO1FBRWxDLDBFQUEwRTtRQUUxRSxxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFHZCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVkzQixJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1osT0FBTyxDQUFDLEtBQUssQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO1lBQzVELE9BQU87U0FDUDtRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLHVCQUF1QixDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELGNBQWM7SUFDZCxlQUFlO1FBQ2QsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUM1QixpSEFBaUgsQ0FBQztZQUNuSCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBZ0IsQ0FBQztTQUNwRztJQUNGLENBQUM7SUFFRCxjQUFjO0lBQ2QsU0FBUztRQUNSLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0csSUFBSSxVQUFVLEtBQUssSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztZQUM5QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDdEI7SUFDRixDQUFDO0lBRU8sY0FBYztRQUNyQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUV4QyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxDQUFDO2dCQUNsRSxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztnQkFDcEMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7Z0JBQ25DLENBQUMsQ0FBQyxJQUFJLEdBQUcsZUFBZSxDQUFDO2dCQUN6QixDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO2dCQUM1QixNQUFNLENBQUMsR0FBZ0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO2dCQUMvRCxDQUFDLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDckQsSUFBSSxDQUFDLFVBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxlQUFnQixDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO2FBQ2xEO2lCQUFNO2dCQUNOLElBQUksQ0FBQyxlQUFnQixDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsV0FBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUM1QixJQUFJLENBQUMsVUFBVyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7YUFDaEM7U0FDRDtJQUNGLENBQUM7OzJHQWxGVyxjQUFjLHFGQThCakIsUUFBUTsrRkE5QkwsY0FBYzsyRkFBZCxjQUFjO2tCQUgxQixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxZQUFZO2lCQUN0Qjs7MEJBOEJFLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsUUFBUTtrSEFuQmpCLFFBQVE7c0JBRFAsS0FBSztnQkFLTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBS04sZ0JBQWdCO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuXHRBZnRlclZpZXdJbml0LFxuXHRDb21wb25lbnRGYWN0b3J5LFxuXHRDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG5cdENvbXBvbmVudFJlZixcblx0RGlyZWN0aXZlLFxuXHREb0NoZWNrLFxuXHRFbGVtZW50UmVmLFxuXHRJbmplY3QsXG5cdElucHV0LFxuXHRPcHRpb25hbCxcblx0Vmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG4vKipcbiAqIFVzZSB0aGlzIGRpcmVjdGl2ZSBvbiBhIGBNYXRCdXR0b25gIGVsZW1lbnQgdG8gcHJvdmlkZSBhbiBhbHRlcm5hdGl2ZSB2aWV3IHdoZW4gYW4gc3luYyBvcGVyYXRpb24gaXMgaW4gcHJvZ3Jlc3MuXG4gKlxuICogRm9yIGV4YW1wbGU6XG4gKlxuICogYGBgXG4gKiA8YnV0dG9uIChjbGljayk9XCJzdWJtaXQoKTtcIiBbYnVpQXdhaXRdPVwic3VibWl0U3Vic2NyaXB0aW9uXCIgYnVpQXdhaXRBcmlhTGFiZWw9XCJzdWJtaXR0aW5nXCI+U3VibWl0PC9idXR0b24+XG4gKiBgYGBcbiAqXG4gKiBQbGVhc2UgcmVmZXIgdG8gW01hdGVyaWFsIERlc2lnbl0oaHR0cHM6Ly9tYXRlcmlhbC5pby9jb21wb25lbnRzL3Byb2dyZXNzLWluZGljYXRvcnMjY2lyY3VsYXItcHJvZ3Jlc3MtaW5kaWNhdG9ycylcbiAqIGZvciBtb3JlIGRldGFpbHMgb2YgaW50ZWdyYXRpbmcgY2lyY3VsYXIgc3Bpbm5lciBjb21wb25lbnQgd2l0aCBhY3Rpb24gYnV0dG9ucy5cbiAqXG4gKiBUaGUgb3BlcmF0aW9uIGlzIGNvbnNpZGVyZWQgJ2luIHByb2dyZXNzJyB3aGVuIHRoZSBib3VuZCBwcm9wZXJ0eSBgYnVpQXdhaXRgIGV2YWx1YXRlcyB0b1xuICpcbiAqIC0gYHRydWVgOyBvclxuICogLSBhbiBpbnN0YW5jZSBvZiBgcnhqcy9TdWJzY3JpcHRpb25gIGFuZCBgYnVpQXdhaXQuY2xvc2VkYCBpcyBmYWxzeVxuICpcbiAqIFdoZW4gaW4gcHJvZ3Jlc3NcbiAqXG4gKiAtIHRoZSBidXR0b24ncyBjYXB0aW9uIHdpbGwgYmUgaGlkZGVuO1xuICogLSBhIGA8bWF0LXByb2dyZXNzLXNwaW5uZXI+YCB3aWxsIGJlIGRpc3BsYXllZCBpbiBwbGFjZSBvZiB0aGUgY2FwdGlvbjtcbiAqIC0gdGhlIGJ1dHRvbiB3aWxsIGJlIGRpc2FibGVkIGJ5IHNldHRpbmcgdGhlIHByb3BlcnR5IGBkaXNhYmxlZGAgb2YgdGhlIGBNYXRCdXR0b25gIGluc3RhbmNlLlxuICovXG5ARGlyZWN0aXZlKHtcblx0c2VsZWN0b3I6ICdbYnVpQXdhaXRdJ1xufSlcbmV4cG9ydCBjbGFzcyBBd2FpdERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIERvQ2hlY2sge1xuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoZSBgaW4gcHJvZ3Jlc3NgIHN0YXR1cyBvZiBhbiBhc3luYyBvcGVyYXRpb24uXG5cdCAqXG5cdCAqIFRoZSBvcGVyYXRpb24gaXMgY29uc2lkZXJlZCAnaW4gcHJvZ3Jlc3MnIHdoZW4gdGhlIHByb3BlcnR5IGV2YWx1YXRlcyB0b1xuXHQgKlxuXHQgKiAtIGB0cnVlYDsgb3Jcblx0ICogLSBhbiBpbnN0YW5jZSBvZiBgcnhqcy9TdWJzY3JpcHRpb25gIGFuZCBgYnVpQXdhaXQuY2xvc2VkYCBpcyBmYWxzeVxuXHQgKlxuXHQgKi9cblx0QElucHV0KClcblx0YnVpQXdhaXQ6IG51bGwgfCB1bmRlZmluZWQgfCBib29sZWFuIHwgU3Vic2NyaXB0aW9uO1xuXG5cdC8qKiBUaGUgQVJJQSBsYWJlbCB0byBiZSBwdXQgb24gdGhlIHNwaW5uZXIuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGBcIkluIHByb2dyZXNzXCJgLiAqL1xuXHRASW5wdXQoKVxuXHRidWlBd2FpdEFyaWFMYWJlbCA9ICdJbiBwcm9ncmVzcyc7XG5cblx0LyoqIFRoZSBkaWFtZXRlciBvZiB0aGUgaW4tcHJvZ3Jlc3Mgc3Bpbm5lci4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgYDIwYC4gKi9cblx0QElucHV0KClcblx0YnVpQXdhaXREaWFtZXRlciA9IDIwO1xuXG5cdHByaXZhdGUgX292ZXJsYXlFbDogSFRNTERpdkVsZW1lbnQgfCB1bmRlZmluZWQ7XG5cdHByaXZhdGUgX3Byb2Nlc3NpbmcgPSBmYWxzZTtcblx0cHJpdmF0ZSBfZmFjdG9yeTogQ29tcG9uZW50RmFjdG9yeTxNYXRQcm9ncmVzc1NwaW5uZXI+IHwgdW5kZWZpbmVkO1xuXHRwcml2YXRlIF9zcGlubmVyUmVmOiBDb21wb25lbnRSZWY8TWF0UHJvZ3Jlc3NTcGlubmVyPiB8IHVuZGVmaW5lZDtcblx0cHJpdmF0ZSBfY2FwdGlvbldyYXBwZXI6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdHByaXZhdGUgcmVhZG9ubHkgX2VSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuXHRcdEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgYnV0dG9uOiBNYXRCdXR0b24sXG5cdFx0QEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2M6IERvY3VtZW50LFxuXHRcdGZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuXHRcdHByaXZhdGUgX3ZpZXdDb250OiBWaWV3Q29udGFpbmVyUmVmXG5cdCkge1xuXHRcdGlmICghYnV0dG9uKSB7XG5cdFx0XHRjb25zb2xlLmVycm9yKCdbYnVpQXdhaXRdIGNhbiBvbmx5IGJlIHVzZWQgb24gYSBNYXRCdXR0b24nKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0dGhpcy5fZmFjdG9yeSA9IGZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShNYXRQcm9ncmVzc1NwaW5uZXIpO1xuXHR9XG5cblx0LyoqIEBpZ25vcmUgKi9cblx0bmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuXHRcdGlmICh0aGlzLmJ1dHRvbikge1xuXHRcdFx0dGhpcy5fb3ZlcmxheUVsID0gdGhpcy5kb2MuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG5cdFx0XHR0aGlzLl9lUmVmLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fb3ZlcmxheUVsKTtcblx0XHRcdHRoaXMuX292ZXJsYXlFbC5jbGFzc0xpc3QuYWRkKCdidWktYXdhaXQtb3ZlcmxheScpO1xuXHRcdFx0dGhpcy5fb3ZlcmxheUVsLnN0eWxlLmNzc1RleHQgPVxuXHRcdFx0XHQnZGlzcGxheTpmbGV4OyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IHJpZ2h0OjA7IGJvdHRvbTowOyBsZWZ0OjA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyJztcblx0XHRcdHRoaXMuX2NhcHRpb25XcmFwcGVyID0gdGhpcy5fZVJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5tYXQtYnV0dG9uLXdyYXBwZXInKSBhcyBIVE1MRWxlbWVudDtcblx0XHR9XG5cdH1cblxuXHQvKiogQGlnbm9yZSAqL1xuXHRuZ0RvQ2hlY2soKTogdm9pZCB7XG5cdFx0Y29uc3QgaW5Qcm9ncmVzcyA9IHRoaXMuYnVpQXdhaXQgPT09IHRydWUgfHwgKHR5cGVvZiB0aGlzLmJ1aUF3YWl0ID09PSAnb2JqZWN0JyAmJiAhdGhpcy5idWlBd2FpdCEuY2xvc2VkKTtcblx0XHRpZiAoaW5Qcm9ncmVzcyAhPT0gdGhpcy5fcHJvY2Vzc2luZykge1xuXHRcdFx0dGhpcy5fcHJvY2Vzc2luZyA9IGluUHJvZ3Jlc3M7XG5cdFx0XHR0aGlzLl9zdGF0dXNDaGFuZ2VkKCk7XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSBfc3RhdHVzQ2hhbmdlZCgpIHtcblx0XHRpZiAodGhpcy5idXR0b24pIHtcblx0XHRcdHRoaXMuYnV0dG9uLmRpc2FibGVkID0gdGhpcy5fcHJvY2Vzc2luZztcblxuXHRcdFx0aWYgKHRoaXMuX3Byb2Nlc3NpbmcpIHtcblx0XHRcdFx0dGhpcy5fc3Bpbm5lclJlZiA9IHRoaXMuX3ZpZXdDb250LmNyZWF0ZUNvbXBvbmVudCh0aGlzLl9mYWN0b3J5ISk7XG5cdFx0XHRcdGNvbnN0IGMgPSB0aGlzLl9zcGlubmVyUmVmLmluc3RhbmNlO1xuXHRcdFx0XHRjLmRpYW1ldGVyID0gdGhpcy5idWlBd2FpdERpYW1ldGVyO1xuXHRcdFx0XHRjLm1vZGUgPSAnaW5kZXRlcm1pbmF0ZSc7XG5cdFx0XHRcdGMuY29sb3IgPSB0aGlzLmJ1dHRvbi5jb2xvcjtcblx0XHRcdFx0Y29uc3QgZTogSFRNTEVsZW1lbnQgPSB0aGlzLl9zcGlubmVyUmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG5cdFx0XHRcdGUuc2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJywgdGhpcy5idWlBd2FpdEFyaWFMYWJlbCk7XG5cdFx0XHRcdHRoaXMuX292ZXJsYXlFbCEuYXBwZW5kQ2hpbGQoZSk7XG5cdFx0XHRcdHRoaXMuX2NhcHRpb25XcmFwcGVyIS5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHR0aGlzLl9jYXB0aW9uV3JhcHBlciEuc3R5bGUudmlzaWJpbGl0eSA9ICcnO1xuXHRcdFx0XHR0aGlzLl9zcGlubmVyUmVmIS5kZXN0cm95KCk7XG5cdFx0XHRcdHRoaXMuX292ZXJsYXlFbCEuaW5uZXJIVE1MID0gJyc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iXX0=
@@ -11,10 +11,10 @@ import * as i0 from "@angular/core";
11
11
  */
12
12
  export class BehaviorModule {
13
13
  }
14
- BehaviorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: BehaviorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
- BehaviorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: BehaviorModule, declarations: [SizingDirective, SizingMonitorDirective, AwaitDirective], imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule], exports: [SizingDirective, SizingMonitorDirective, AwaitDirective, MatProgressSpinnerModule] });
16
- BehaviorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: BehaviorModule, imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule, MatProgressSpinnerModule] });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: BehaviorModule, decorators: [{
14
+ BehaviorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: BehaviorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ BehaviorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.3", ngImport: i0, type: BehaviorModule, declarations: [SizingDirective, SizingMonitorDirective, AwaitDirective], imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule], exports: [SizingDirective, SizingMonitorDirective, AwaitDirective, MatProgressSpinnerModule] });
16
+ BehaviorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: BehaviorModule, imports: [CommonModule, MatButtonModule, MatProgressSpinnerModule, MatProgressSpinnerModule] });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: BehaviorModule, decorators: [{
18
18
  type: NgModule,
19
19
  args: [{
20
20
  declarations: [SizingDirective, SizingMonitorDirective, AwaitDirective],
@@ -20,9 +20,9 @@ export class SizingMonitorDirective {
20
20
  this.element = element;
21
21
  }
22
22
  }
23
- SizingMonitorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: SizingMonitorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
24
- SizingMonitorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: SizingMonitorDirective, selector: "[buiSizingMonitor]", ngImport: i0 });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: SizingMonitorDirective, decorators: [{
23
+ SizingMonitorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: SizingMonitorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
24
+ SizingMonitorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.3", type: SizingMonitorDirective, selector: "[buiSizingMonitor]", ngImport: i0 });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: SizingMonitorDirective, decorators: [{
26
26
  type: Directive,
27
27
  args: [{
28
28
  selector: '[buiSizingMonitor]'