ngx-semantic 2.0.3-beta.4 → 2.0.3-beta.5

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.
@@ -1,3 +1,5 @@
1
1
  export declare class ClassUtils {
2
2
  static getPropClass(state: boolean, className: string): string;
3
+ static combineToClass(input: string[]): string;
4
+ static removeExcessWhitespace(input: string): string;
3
5
  }
@@ -2,6 +2,7 @@
2
2
  * Created by bolorundurowb on 4/28/2021
3
3
  */
4
4
  import { Directive } from '@angular/core';
5
+ import { ClassUtils } from 'ngx-semantic/core/util';
5
6
  import * as i0 from "@angular/core";
6
7
  export class BaseDirective {
7
8
  constructor(element) {
@@ -14,7 +15,7 @@ export class BaseDirective {
14
15
  this.setClasses();
15
16
  }
16
17
  setClasses() {
17
- const cleanedClasses = this.classes.replace(/\s\s+/g, ' ').trim();
18
+ const cleanedClasses = ClassUtils.removeExcessWhitespace(this.classes);
18
19
  this.element?.nativeElement?.setAttribute('class', cleanedClasses);
19
20
  }
20
21
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BaseDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
@@ -23,4 +24,4 @@ export class BaseDirective {
23
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BaseDirective, decorators: [{
24
25
  type: Directive
25
26
  }], ctorParameters: () => [{ type: i0.ElementRef }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9iYXNlL2Jhc2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFDLFNBQVMsRUFBK0MsTUFBTSxlQUFlLENBQUM7O0FBR3RGLE1BQU0sT0FBZ0IsYUFBYTtJQUdqQyxZQUE4QixPQUFtQjtRQUFuQixZQUFPLEdBQVAsT0FBTyxDQUFZO0lBQ2pELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFTyxVQUFVO1FBQ2hCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsRSxJQUFJLENBQUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7OEdBakJtQixhQUFhO2tHQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBRGxDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENyZWF0ZWQgYnkgYm9sb3J1bmR1cm93YiBvbiA0LzI4LzIwMjFcbiAqL1xuaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgYWJzdHJhY3QgY2xhc3Nlczogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYpIHtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2V0Q2xhc3NlcygpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIHRoaXMuc2V0Q2xhc3NlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRDbGFzc2VzKCk6IHZvaWQge1xuICAgIGNvbnN0IGNsZWFuZWRDbGFzc2VzID0gdGhpcy5jbGFzc2VzLnJlcGxhY2UoL1xcc1xccysvZywgJyAnKS50cmltKCk7XG4gICAgdGhpcy5lbGVtZW50Py5uYXRpdmVFbGVtZW50Py5zZXRBdHRyaWJ1dGUoJ2NsYXNzJywgY2xlYW5lZENsYXNzZXMpO1xuICB9XG59XG4iXX0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9iYXNlL2Jhc2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFFLFNBQVMsRUFBZ0QsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUdwRCxNQUFNLE9BQWdCLGFBQWE7SUFHakMsWUFBOEIsT0FBbUI7UUFBbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtJQUNqRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRU8sVUFBVTtRQUNoQixNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDckUsQ0FBQzs4R0FqQm1CLGFBQWE7a0dBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEbEMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ3JlYXRlZCBieSBib2xvcnVuZHVyb3diIG9uIDQvMjgvMjAyMVxuICovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGFzc1V0aWxzIH0gZnJvbSAnbmd4LXNlbWFudGljL2NvcmUvdXRpbCc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIGFic3RyYWN0IGNsYXNzZXM6IHN0cmluZztcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldENsYXNzZXMoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICB0aGlzLnNldENsYXNzZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Q2xhc3NlcygpOiB2b2lkIHtcbiAgICBjb25zdCBjbGVhbmVkQ2xhc3NlcyA9IENsYXNzVXRpbHMucmVtb3ZlRXhjZXNzV2hpdGVzcGFjZSh0aGlzLmNsYXNzZXMpO1xuICAgIHRoaXMuZWxlbWVudD8ubmF0aXZlRWxlbWVudD8uc2V0QXR0cmlidXRlKCdjbGFzcycsIGNsZWFuZWRDbGFzc2VzKTtcbiAgfVxufVxuIl19
@@ -5,5 +5,11 @@ export class ClassUtils {
5
5
  }
6
6
  return className;
7
7
  }
8
+ static combineToClass(input) {
9
+ return input.filter(x => !!x).join(' ').trim();
10
+ }
11
+ static removeExcessWhitespace(input) {
12
+ return input.replace(/\s\s+/g, ' ').trim();
13
+ }
8
14
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS91dGlsL2NsYXNzLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxVQUFVO0lBQ2QsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFjLEVBQUUsU0FBaUI7UUFDMUQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENsYXNzVXRpbHMge1xuICBwdWJsaWMgc3RhdGljIGdldFByb3BDbGFzcyhzdGF0ZTogYm9vbGVhbiwgY2xhc3NOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICghc3RhdGUpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICByZXR1cm4gY2xhc3NOYW1lO1xuICB9XG59XG4iXX0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS91dGlsL2NsYXNzLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxVQUFVO0lBQ2QsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFjLEVBQUUsU0FBaUI7UUFDMUQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZTtRQUMxQyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pELENBQUM7SUFFTSxNQUFNLENBQUMsc0JBQXNCLENBQUMsS0FBYTtRQUNoRCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDbGFzc1V0aWxzIHtcbiAgcHVibGljIHN0YXRpYyBnZXRQcm9wQ2xhc3Moc3RhdGU6IGJvb2xlYW4sIGNsYXNzTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIXN0YXRlKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNsYXNzTmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgY29tYmluZVRvQ2xhc3MoaW5wdXQ6IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaW5wdXQuZmlsdGVyKHggPT4gISF4KS5qb2luKCcgJykudHJpbSgpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyByZW1vdmVFeGNlc3NXaGl0ZXNwYWNlKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBpbnB1dC5yZXBsYWNlKC9cXHNcXHMrL2csICcgJykudHJpbSgpO1xuICB9XG59XG4iXX0=
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  /**
3
3
  * Created by bolor on 10/22/2020
4
4
  */
5
- import { Component, HostBinding, Input } from '@angular/core';
5
+ import { Component, Input } from '@angular/core';
6
6
  import { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "@angular/common";
@@ -34,7 +34,7 @@ export class SuiProgressComponent {
34
34
  return this.maxValue;
35
35
  }
36
36
  get classes() {
37
- return [
37
+ return ClassUtils.combineToClass([
38
38
  'ui',
39
39
  this.suiSize,
40
40
  this.suiColour,
@@ -45,7 +45,7 @@ export class SuiProgressComponent {
45
45
  ClassUtils.getPropClass(this.suiInverted, 'inverted'),
46
46
  'progress',
47
47
  this.suiState
48
- ].join(' ');
48
+ ]);
49
49
  }
50
50
  calculatePercentage() {
51
51
  if (this.value > this.maxValue) {
@@ -58,17 +58,19 @@ export class SuiProgressComponent {
58
58
  }
59
59
  }
60
60
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
61
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: SuiProgressComponent, selector: "sui-progress", inputs: { suiAttached: "suiAttached", suiSize: "suiSize", suiColour: "suiColour", suiState: "suiState", suiIndicating: "suiIndicating", disabled: "disabled", suiInverted: "suiInverted", suiShowProgress: "suiShowProgress", suiValue: "suiValue", suiMaxValue: "suiMaxValue" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: `
62
- <div class="bar"
63
- [style.width.%]="progressPercentage">
64
- <ng-container *ngIf="suiShowProgress">
65
- <div class="progress">{{progressPercentage}}%</div>
66
- </ng-container>
61
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: SuiProgressComponent, selector: "sui-progress", inputs: { suiAttached: "suiAttached", suiSize: "suiSize", suiColour: "suiColour", suiState: "suiState", suiIndicating: "suiIndicating", disabled: "disabled", suiInverted: "suiInverted", suiShowProgress: "suiShowProgress", suiValue: "suiValue", suiMaxValue: "suiMaxValue" }, ngImport: i0, template: `
62
+ <div [ngClass]="classes" [attr.data-percent]="progressPercentage">
63
+ <div class="bar"
64
+ [style.width.%]="progressPercentage">
65
+ <ng-container *ngIf="suiShowProgress">
66
+ <div class="progress">{{ progressPercentage }}%</div>
67
+ </ng-container>
68
+ </div>
69
+ <div class="label">
70
+ <ng-content></ng-content>
71
+ </div>
67
72
  </div>
68
- <div class="label">
69
- <ng-content></ng-content>
70
- </div>
71
- `, isInline: true, styles: [":host{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
73
+ `, isInline: true, styles: [":host{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
72
74
  }
73
75
  __decorate([
74
76
  InputBoolean()
@@ -85,14 +87,16 @@ __decorate([
85
87
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiProgressComponent, decorators: [{
86
88
  type: Component,
87
89
  args: [{ selector: 'sui-progress', template: `
88
- <div class="bar"
89
- [style.width.%]="progressPercentage">
90
- <ng-container *ngIf="suiShowProgress">
91
- <div class="progress">{{progressPercentage}}%</div>
92
- </ng-container>
93
- </div>
94
- <div class="label">
95
- <ng-content></ng-content>
90
+ <div [ngClass]="classes" [attr.data-percent]="progressPercentage">
91
+ <div class="bar"
92
+ [style.width.%]="progressPercentage">
93
+ <ng-container *ngIf="suiShowProgress">
94
+ <div class="progress">{{ progressPercentage }}%</div>
95
+ </ng-container>
96
+ </div>
97
+ <div class="label">
98
+ <ng-content></ng-content>
99
+ </div>
96
100
  </div>
97
101
  `, styles: [":host{width:100%}\n"] }]
98
102
  }], propDecorators: { suiAttached: [{
@@ -115,8 +119,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
115
119
  type: Input
116
120
  }], suiMaxValue: [{
117
121
  type: Input
118
- }], classes: [{
119
- type: HostBinding,
120
- args: ['class']
121
122
  }] } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvcHJvZ3Jlc3MvcHJvZ3Jlc3MuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRztBQUVILE9BQU8sRUFBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7QUF5QmhFLE1BQU0sT0FBTyxvQkFBb0I7SUFuQmpDO1FBb0JrQixnQkFBVyxHQUEwQixJQUFJLENBQUM7UUFDMUMsWUFBTyxHQUFZLElBQUksQ0FBQztRQUN4QixjQUFTLEdBQWMsSUFBSSxDQUFDO1FBQzVCLGFBQVEsR0FBcUIsSUFBSSxDQUFDO1FBQ2xCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFFL0MsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLGFBQVEsR0FBRyxHQUFHLENBQUM7S0FvRHhCO0lBaERDLElBQ0ksUUFBUSxDQUFDLEtBQWE7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUNJLFdBQVcsQ0FBQyxRQUFnQjtRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQ0ksT0FBTztRQUNULE9BQU87WUFDTCxJQUFJO1lBQ0osSUFBSSxDQUFDLE9BQU87WUFDWixJQUFJLENBQUMsU0FBUztZQUNkLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3RELFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUM7WUFDaEQsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQztZQUN6RCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDO1lBQ2xELFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUM7WUFDckQsVUFBVTtZQUNWLElBQUksQ0FBQyxRQUFRO1NBQ2QsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDZCxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0IsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxDQUFDO1FBRTlDLElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO1FBQzVCLENBQUM7SUFDSCxDQUFDOzhHQTlEVSxvQkFBb0I7a0dBQXBCLG9CQUFvQix5WEFqQnJCOzs7Ozs7Ozs7O0dBVVQ7O0FBWStCO0lBQXRCLFlBQVksRUFBRTsyREFBOEI7QUFDdEI7SUFBdEIsWUFBWSxFQUFFO3NEQUF5QjtBQUNqQjtJQUF0QixZQUFZLEVBQUU7eURBQTRCO0FBQ3BCO0lBQXRCLFlBQVksRUFBRTs2REFBK0I7MkZBUjVDLG9CQUFvQjtrQkFuQmhDLFNBQVM7K0JBQ0UsY0FBYyxZQUNkOzs7Ozs7Ozs7O0dBVVQ7OEJBUWUsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxPQUFPO3NCQUF0QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDMEIsYUFBYTtzQkFBNUMsS0FBSztnQkFDMEIsUUFBUTtzQkFBdkMsS0FBSztnQkFDMEIsV0FBVztzQkFBMUMsS0FBSztnQkFDMEIsZUFBZTtzQkFBOUMsS0FBSztnQkFRRixRQUFRO3NCQURYLEtBQUs7Z0JBV0YsV0FBVztzQkFEZCxLQUFLO2dCQVdGLE9BQU87c0JBRFYsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDcmVhdGVkIGJ5IGJvbG9yIG9uIDEwLzIyLzIwMjBcbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q2xhc3NVdGlscywgSW5wdXRCb29sZWFufSBmcm9tICduZ3gtc2VtYW50aWMvY29yZS91dGlsJztcbmltcG9ydCB7U3VpQ29sb3VyLCBTdWlTaXplfSBmcm9tICduZ3gtc2VtYW50aWMvY29yZS9lbnVtcyc7XG5cbmV4cG9ydCB0eXBlIFN1aVByb2dyZXNzQXR0YWNobWVudCA9ICdib3R0b20nIHwgJ3RvcCcgfCBudWxsO1xuZXhwb3J0IHR5cGUgU3VpUHJvZ3Jlc3NTdGF0ZSA9ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdlcnJvcicgfCBudWxsO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzdWktcHJvZ3Jlc3MnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJiYXJcIlxuICAgICAgICAgW3N0eWxlLndpZHRoLiVdPVwicHJvZ3Jlc3NQZXJjZW50YWdlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3VpU2hvd1Byb2dyZXNzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzc1wiPnt7cHJvZ3Jlc3NQZXJjZW50YWdlfX0lPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibGFiZWxcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIDpob3N0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgU3VpUHJvZ3Jlc3NDb21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgc3VpQXR0YWNoZWQ6IFN1aVByb2dyZXNzQXR0YWNobWVudCA9IG51bGw7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWlTaXplOiBTdWlTaXplID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIHN1aUNvbG91cjogU3VpQ29sb3VyID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIHN1aVN0YXRlOiBTdWlQcm9ncmVzc1N0YXRlID0gbnVsbDtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlJbmRpY2F0aW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlJbnZlcnRlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aVNob3dQcm9ncmVzcyA9IHRydWU7XG5cbiAgcHJpdmF0ZSB2YWx1ZSA9IDA7XG4gIHByaXZhdGUgbWF4VmFsdWUgPSAxMDA7XG4gIHB1YmxpYyBwcm9ncmVzc1BlcmNlbnRhZ2U6IG51bWJlcjtcbiAgcHVibGljIGlzQWN0aXZlOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBzdWlWYWx1ZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy52YWx1ZSA9ICt2YWx1ZTtcbiAgICB0aGlzLmNhbGN1bGF0ZVBlcmNlbnRhZ2UoKTtcbiAgfVxuXG4gIGdldCBzdWlWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHN1aU1heFZhbHVlKG1heFZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLm1heFZhbHVlID0gK21heFZhbHVlO1xuICAgIHRoaXMuY2FsY3VsYXRlUGVyY2VudGFnZSgpO1xuICB9XG5cbiAgZ2V0IHN1aU1heFZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMubWF4VmFsdWU7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGNsYXNzZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gW1xuICAgICAgJ3VpJyxcbiAgICAgIHRoaXMuc3VpU2l6ZSxcbiAgICAgIHRoaXMuc3VpQ29sb3VyLFxuICAgICAgdGhpcy5zdWlBdHRhY2hlZCA/IGAke3RoaXMuc3VpQXR0YWNoZWR9IGF0dGFjaGVkYCA6ICcnLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5pc0FjdGl2ZSwgJ2FjdGl2ZScpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlJbmRpY2F0aW5nLCAnaW5kaWNhdGluZycpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5kaXNhYmxlZCwgJ2Rpc2FibGVkJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aUludmVydGVkLCAnaW52ZXJ0ZWQnKSxcbiAgICAgICdwcm9ncmVzcycsXG4gICAgICB0aGlzLnN1aVN0YXRlXG4gICAgXS5qb2luKCcgJyk7XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZVBlcmNlbnRhZ2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmFsdWUgPiB0aGlzLm1heFZhbHVlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wcm9ncmVzc1BlcmNlbnRhZ2UgPSBNYXRoLmNlaWwodGhpcy52YWx1ZSAqIDEwMCAvIHRoaXMubWF4VmFsdWUpO1xuICAgIHRoaXMuaXNBY3RpdmUgPSB0aGlzLnByb2dyZXNzUGVyY2VudGFnZSA8IDEwMDtcblxuICAgIGlmICh0aGlzLnByb2dyZXNzUGVyY2VudGFnZSA9PT0gMTAwKSB7XG4gICAgICB0aGlzLnN1aVN0YXRlID0gJ3N1Y2Nlc3MnO1xuICAgIH1cbiAgfVxufVxuIl19
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvcHJvZ3Jlc3MvcHJvZ3Jlc3MuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7OztBQTJCbEUsTUFBTSxPQUFPLG9CQUFvQjtJQXJCakM7UUFzQmtCLGdCQUFXLEdBQTBCLElBQUksQ0FBQztRQUMxQyxZQUFPLEdBQVksSUFBSSxDQUFDO1FBQ3hCLGNBQVMsR0FBYyxJQUFJLENBQUM7UUFDNUIsYUFBUSxHQUFxQixJQUFJLENBQUM7UUFDbEIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixvQkFBZSxHQUFHLElBQUksQ0FBQztRQUUvQyxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsYUFBUSxHQUFHLEdBQUcsQ0FBQztLQW1EeEI7SUEvQ0MsSUFDSSxRQUFRLENBQUMsS0FBYTtRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQ0ksV0FBVyxDQUFDLFFBQWdCO1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxVQUFVLENBQUMsY0FBYyxDQUFDO1lBQy9CLElBQUk7WUFDSixJQUFJLENBQUMsT0FBTztZQUNaLElBQUksQ0FBQyxTQUFTO1lBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDdEQsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQztZQUNoRCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsWUFBWSxDQUFDO1lBQ3pELFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUM7WUFDbEQsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsQ0FBQztZQUNyRCxVQUFVO1lBQ1YsSUFBSSxDQUFDLFFBQVE7U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDL0IsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxDQUFDO1FBRTlDLElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO1FBQzVCLENBQUM7SUFDSCxDQUFDOzhHQTdEVSxvQkFBb0I7a0dBQXBCLG9CQUFvQixzVUFuQnJCOzs7Ozs7Ozs7Ozs7R0FZVDs7QUFZK0I7SUFBdEIsWUFBWSxFQUFFOzJEQUE4QjtBQUN0QjtJQUF0QixZQUFZLEVBQUU7c0RBQXlCO0FBQ2pCO0lBQXRCLFlBQVksRUFBRTt5REFBNEI7QUFDcEI7SUFBdEIsWUFBWSxFQUFFOzZEQUErQjsyRkFSNUMsb0JBQW9CO2tCQXJCaEMsU0FBUzsrQkFDRSxjQUFjLFlBQ2Q7Ozs7Ozs7Ozs7OztHQVlUOzhCQVFlLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQzBCLGFBQWE7c0JBQTVDLEtBQUs7Z0JBQzBCLFFBQVE7c0JBQXZDLEtBQUs7Z0JBQzBCLFdBQVc7c0JBQTFDLEtBQUs7Z0JBQzBCLGVBQWU7c0JBQTlDLEtBQUs7Z0JBUUYsUUFBUTtzQkFEWCxLQUFLO2dCQVdGLFdBQVc7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ3JlYXRlZCBieSBib2xvciBvbiAxMC8yMi8yMDIwXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xhc3NVdGlscywgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd4LXNlbWFudGljL2NvcmUvdXRpbCc7XG5pbXBvcnQgeyBTdWlDb2xvdXIsIFN1aVNpemUgfSBmcm9tICduZ3gtc2VtYW50aWMvY29yZS9lbnVtcyc7XG5cbmV4cG9ydCB0eXBlIFN1aVByb2dyZXNzQXR0YWNobWVudCA9ICdib3R0b20nIHwgJ3RvcCcgfCBudWxsO1xuZXhwb3J0IHR5cGUgU3VpUHJvZ3Jlc3NTdGF0ZSA9ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdlcnJvcicgfCBudWxsO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzdWktcHJvZ3Jlc3MnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgW25nQ2xhc3NdPVwiY2xhc3Nlc1wiIFthdHRyLmRhdGEtcGVyY2VudF09XCJwcm9ncmVzc1BlcmNlbnRhZ2VcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJiYXJcIlxuICAgICAgICAgICBbc3R5bGUud2lkdGguJV09XCJwcm9ncmVzc1BlcmNlbnRhZ2VcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN1aVNob3dQcm9ncmVzc1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzc1wiPnt7IHByb2dyZXNzUGVyY2VudGFnZSB9fSU8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBbIGBcbiAgICA6aG9zdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIGAgXVxufSlcbmV4cG9ydCBjbGFzcyBTdWlQcm9ncmVzc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWlBdHRhY2hlZDogU3VpUHJvZ3Jlc3NBdHRhY2htZW50ID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIHN1aVNpemU6IFN1aVNpemUgPSBudWxsO1xuICBASW5wdXQoKSBwdWJsaWMgc3VpQ29sb3VyOiBTdWlDb2xvdXIgPSBudWxsO1xuICBASW5wdXQoKSBwdWJsaWMgc3VpU3RhdGU6IFN1aVByb2dyZXNzU3RhdGUgPSBudWxsO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aUluZGljYXRpbmcgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aUludmVydGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpU2hvd1Byb2dyZXNzID0gdHJ1ZTtcblxuICBwcml2YXRlIHZhbHVlID0gMDtcbiAgcHJpdmF0ZSBtYXhWYWx1ZSA9IDEwMDtcbiAgcHVibGljIHByb2dyZXNzUGVyY2VudGFnZTogbnVtYmVyO1xuICBwdWJsaWMgaXNBY3RpdmU6IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgc2V0IHN1aVZhbHVlKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLnZhbHVlID0gK3ZhbHVlO1xuICAgIHRoaXMuY2FsY3VsYXRlUGVyY2VudGFnZSgpO1xuICB9XG5cbiAgZ2V0IHN1aVZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgc3VpTWF4VmFsdWUobWF4VmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMubWF4VmFsdWUgPSArbWF4VmFsdWU7XG4gICAgdGhpcy5jYWxjdWxhdGVQZXJjZW50YWdlKCk7XG4gIH1cblxuICBnZXQgc3VpTWF4VmFsdWUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5tYXhWYWx1ZTtcbiAgfVxuXG4gIGdldCBjbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIENsYXNzVXRpbHMuY29tYmluZVRvQ2xhc3MoW1xuICAgICAgJ3VpJyxcbiAgICAgIHRoaXMuc3VpU2l6ZSxcbiAgICAgIHRoaXMuc3VpQ29sb3VyLFxuICAgICAgdGhpcy5zdWlBdHRhY2hlZCA/IGAke3RoaXMuc3VpQXR0YWNoZWR9IGF0dGFjaGVkYCA6ICcnLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5pc0FjdGl2ZSwgJ2FjdGl2ZScpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlJbmRpY2F0aW5nLCAnaW5kaWNhdGluZycpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5kaXNhYmxlZCwgJ2Rpc2FibGVkJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aUludmVydGVkLCAnaW52ZXJ0ZWQnKSxcbiAgICAgICdwcm9ncmVzcycsXG4gICAgICB0aGlzLnN1aVN0YXRlXG4gICAgXSk7XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZVBlcmNlbnRhZ2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmFsdWUgPiB0aGlzLm1heFZhbHVlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wcm9ncmVzc1BlcmNlbnRhZ2UgPSBNYXRoLmNlaWwodGhpcy52YWx1ZSAqIDEwMCAvIHRoaXMubWF4VmFsdWUpO1xuICAgIHRoaXMuaXNBY3RpdmUgPSB0aGlzLnByb2dyZXNzUGVyY2VudGFnZSA8IDEwMDtcblxuICAgIGlmICh0aGlzLnByb2dyZXNzUGVyY2VudGFnZSA9PT0gMTAwKSB7XG4gICAgICB0aGlzLnN1aVN0YXRlID0gJ3N1Y2Nlc3MnO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -195,14 +195,14 @@ export class SuiSelectComponent {
195
195
  <i [className]="'flag ' + option.flag"></i>
196
196
  </ng-container>
197
197
 
198
- {{option.text}}
198
+ {{ option.text }}
199
199
 
200
200
  <i class="delete icon"
201
201
  (click)="removeSelection(option, $event)"></i>
202
202
  </a>
203
203
  </ng-container>
204
204
 
205
- <div class="default text">{{suiPlaceholder}}</div>
205
+ <div class="default text">{{ suiPlaceholder }}</div>
206
206
  </ng-container>
207
207
 
208
208
  <!-- Search Section -->
@@ -231,11 +231,11 @@ export class SuiSelectComponent {
231
231
  <i [className]="'flag ' + selectedOption.flag"></i>
232
232
  </ng-container>
233
233
 
234
- {{selectedOption.text}}
234
+ {{ selectedOption.text }}
235
235
  </ng-container>
236
236
 
237
237
  <ng-container *ngIf="!selectedOption">
238
- {{suiPlaceholder}}
238
+ {{ suiPlaceholder }}
239
239
  </ng-container>
240
240
  </div>
241
241
  </ng-container>
@@ -256,7 +256,7 @@ export class SuiSelectComponent {
256
256
  <ng-container *ngIf="option.flag">
257
257
  <i [className]="'flag ' + option.flag"></i>
258
258
  </ng-container>
259
- {{option.text}}
259
+ {{ option.text }}
260
260
  </div>
261
261
  </ng-container>
262
262
  <ng-container *ngIf="hasNoSearchResults()">
@@ -320,14 +320,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
320
320
  <i [className]="'flag ' + option.flag"></i>
321
321
  </ng-container>
322
322
 
323
- {{option.text}}
323
+ {{ option.text }}
324
324
 
325
325
  <i class="delete icon"
326
326
  (click)="removeSelection(option, $event)"></i>
327
327
  </a>
328
328
  </ng-container>
329
329
 
330
- <div class="default text">{{suiPlaceholder}}</div>
330
+ <div class="default text">{{ suiPlaceholder }}</div>
331
331
  </ng-container>
332
332
 
333
333
  <!-- Search Section -->
@@ -356,11 +356,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
356
356
  <i [className]="'flag ' + selectedOption.flag"></i>
357
357
  </ng-container>
358
358
 
359
- {{selectedOption.text}}
359
+ {{ selectedOption.text }}
360
360
  </ng-container>
361
361
 
362
362
  <ng-container *ngIf="!selectedOption">
363
- {{suiPlaceholder}}
363
+ {{ suiPlaceholder }}
364
364
  </ng-container>
365
365
  </div>
366
366
  </ng-container>
@@ -381,7 +381,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
381
381
  <ng-container *ngIf="option.flag">
382
382
  <i [className]="'flag ' + option.flag"></i>
383
383
  </ng-container>
384
- {{option.text}}
384
+ {{ option.text }}
385
385
  </div>
386
386
  </ng-container>
387
387
  <ng-container *ngIf="hasNoSearchResults()">
@@ -437,4 +437,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
437
437
  type: HostListener,
438
438
  args: ['click']
439
439
  }] } });
440
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFBRSxpQkFBaUIsRUFDN0IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1QixpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxVQUFVLEVBQUUsWUFBWSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQXFHL0QsTUFBTSxPQUFPLGtCQUFrQjtJQTRCN0IsSUFDSSxVQUFVLENBQUMsT0FBNkI7UUFDMUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQztJQUNuRCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUNJLFFBQVE7UUFDVixPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxJQUNJLE9BQU87UUFDVCxPQUFPO1lBQ0wsSUFBSTtZQUNKLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFDL0MsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQztZQUNuRCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDO1lBQ2pELFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUM7WUFD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RUFBRSxtQkFBbUIsQ0FBQzs0QkFDakQsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBQztpQkFDSDtzRkFFMkMsV0FBVztzQkFBcEQsU0FBUzt1QkFBQyxzQkFBc0I7Z0JBRWhCLG1CQUFtQjtzQkFBbkMsTUFBTTtnQkFDUyxjQUFjO3NCQUE3QixLQUFLO2dCQUMwQixTQUFTO3NCQUF4QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixTQUFTO3NCQUF4QyxLQUFLO2dCQUMwQixVQUFVO3NCQUF6QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixZQUFZO3NCQUEzQyxLQUFLO2dCQUMwQixVQUFVO3NCQUF6QyxLQUFLO2dCQUMwQixJQUFJO3NCQUFuQyxLQUFLO2dCQUMwQixXQUFXO3NCQUExQyxLQUFLO2dCQWVGLFVBQVU7c0JBRGIsS0FBSztnQkFVRixRQUFRO3NCQURYLFdBQVc7dUJBQUMsVUFBVTtnQkFNbkIsT0FBTztzQkFEVixXQUFXO3VCQUFDLE9BQU87Z0JBZ0RiLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7Q2xhc3NVdGlscywgSW5wdXRCb29sZWFufSBmcm9tICduZ3gtc2VtYW50aWMvY29yZS91dGlsJztcbmltcG9ydCB7U3VpU2VsZWN0TWVudURpcmVjdGl2ZX0gZnJvbSAnLi9zZWxlY3QtbWVudS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtJU2VsZWN0T3B0aW9ufSBmcm9tICcuL2ludGVyZmFjZXMvSVNlbGVjdE9wdGlvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N1aS1zZWxlY3QnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxpIGNsYXNzPVwiZHJvcGRvd24gaWNvblwiPjwvaT5cblxuICAgIDwhLS0gTXVsdGlwbGUgU2VsZWN0IERpc3BsYXkgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN1aU11bHRpcGxlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygc2VsZWN0ZWRPcHRpb25zXCI+XG4gICAgICAgIDxhIGNsYXNzPVwidWkgbGFiZWwgdHJhbnNpdGlvbiB2aXNpYmxlXCJcbiAgICAgICAgICAgc3R5bGU9XCJkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uLmltYWdlXCI+XG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwidWkgbWluaSBpbWFnZVwiXG4gICAgICAgICAgICAgICAgIFtjbGFzcy5hdmF0YXJdPVwib3B0aW9uLmltYWdlLmF2YXRhclwiXG4gICAgICAgICAgICAgICAgIFtzcmNdPVwib3B0aW9uLmltYWdlLnNyY1wiLz5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uLmZsYWdcIj5cbiAgICAgICAgICAgIDxpIFtjbGFzc05hbWVdPVwiJ2ZsYWcgJyArIG9wdGlvbi5mbGFnXCI+PC9pPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAge3tvcHRpb24udGV4dH19XG5cbiAgICAgICAgICA8aSBjbGFzcz1cImRlbGV0ZSBpY29uXCJcbiAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlU2VsZWN0aW9uKG9wdGlvbiwgJGV2ZW50KVwiPjwvaT5cbiAgICAgICAgPC9hPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0IHRleHRcIj57e3N1aVBsYWNlaG9sZGVyfX08L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS0gU2VhcmNoIFNlY3Rpb24gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN1aVNlYXJjaFwiPlxuICAgICAgPGlucHV0IGNsYXNzPVwic2VhcmNoXCJcbiAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXJtXCJcbiAgICAgICAgICAgICAoZm9jdXMpPVwib25DbGljaygpXCJcbiAgICAgICAgICAgICAoa2V5dXApPVwib25TZWFyY2goKVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPCEtLSBEaXNwbGF5IFNlY3Rpb24gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzdWlNdWx0aXBsZVwiPlxuICAgICAgPGRpdlxuICAgICAgICBbY2xhc3MuZGVmYXVsdF09XCJpc0RlZmF1bHRUZXh0XCJcbiAgICAgICAgW2NsYXNzLmZpbHRlcmVkXT1cImlzRmlsdGVyZWRUZXh0XCJcbiAgICAgICAgW2NsYXNzLnRleHRdPVwidHJ1ZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb25cIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb24uaW1hZ2VcIj5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJ1aSBtaW5pIGltYWdlXCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmF2YXRhcl09XCJzZWxlY3RlZE9wdGlvbi5pbWFnZS5hdmF0YXJcIlxuICAgICAgICAgICAgICAgICBbc3JjXT1cInNlbGVjdGVkT3B0aW9uLmltYWdlLnNyY1wiLz5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb24uZmxhZ1wiPlxuICAgICAgICAgICAgPGkgW2NsYXNzTmFtZV09XCInZmxhZyAnICsgc2VsZWN0ZWRPcHRpb24uZmxhZ1wiPjwvaT5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgIHt7c2VsZWN0ZWRPcHRpb24udGV4dH19XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc2VsZWN0ZWRPcHRpb25cIj5cbiAgICAgICAgICB7e3N1aVBsYWNlaG9sZGVyfX1cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS0gRHJvcCBEb3duIE1lbnUgU2VjdGlvbiAtLT5cbiAgICA8ZGl2IHN1aVNlbGVjdE1lbnU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmlsdGVyZWRPcHRpb25zXCI+XG4gICAgICAgIDxkaXYgc3VpU2VsZWN0TWVudUl0ZW1cbiAgICAgICAgICAgICBbc3VpVmFsdWVdPVwib3B0aW9uLnZhbHVlXCJcbiAgICAgICAgICAgICBbc3VpU2VsZWN0ZWRdPVwiaXNBY3RpdmUob3B0aW9uKVwiXG4gICAgICAgICAgICAgW3N1aU11bHRpcGxlXT1cInN1aU11bHRpcGxlXCJcbiAgICAgICAgICAgICAoY2xpY2spPVwib25JdGVtQ2xpY2sob3B0aW9uLCAkZXZlbnQpXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9wdGlvbi5pbWFnZVwiPlxuICAgICAgICAgICAgPGltZyBjbGFzcz1cInVpIG1pbmkgaW1hZ2VcIlxuICAgICAgICAgICAgICAgICBbY2xhc3MuYXZhdGFyXT1cIm9wdGlvbi5pbWFnZS5hdmF0YXJcIlxuICAgICAgICAgICAgICAgICBbc3JjXT1cIm9wdGlvbi5pbWFnZS5zcmNcIi8+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9wdGlvbi5mbGFnXCI+XG4gICAgICAgICAgICA8aSBbY2xhc3NOYW1lXT1cIidmbGFnICcgKyBvcHRpb24uZmxhZ1wiPjwvaT5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICB7e29wdGlvbi50ZXh0fX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNOb1NlYXJjaFJlc3VsdHMoKVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiXG4gICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICAgIE5vIHJlc3VsdHMgZm91bmQuXG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTdWlTZWxlY3RDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1dXG59KVxuZXhwb3J0IGNsYXNzIFN1aVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgQFZpZXdDaGlsZChTdWlTZWxlY3RNZW51RGlyZWN0aXZlKSBwdWJsaWMgb3B0aW9uc01lbnU6IFN1aVNlbGVjdE1lbnVEaXJlY3RpdmU7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBzdWlTZWxlY3Rpb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnkgfCBBcnJheTxhbnk+PigpO1xuICBASW5wdXQoKSBwdWJsaWMgc3VpUGxhY2Vob2xkZXI6IHN0cmluZyA9IG51bGw7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpU2VhcmNoID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpRmx1aWQgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlJbmxpbmUgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlMb2FkaW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpRXJyb3IgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aVNjcm9sbGluZyA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aUNvbXBhY3QgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBuYW1lOiBzdHJpbmcgPSBudWxsO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aU11bHRpcGxlID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBpc09wZW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBpc1NlYXJjaGluZyA9IGZhbHNlO1xuICBwcml2YXRlIHNlbGVjdGVkVmFsdWVzOiBBcnJheTxhbnk+ID0gW107XG4gIHB1YmxpYyBzZWFyY2hUZXJtOiBzdHJpbmc7XG4gIHByaXZhdGUgYWxsT3B0aW9uczogQXJyYXk8SVNlbGVjdE9wdGlvbj4gPSBbXTtcbiAgcHVibGljIGZpbHRlcmVkT3B0aW9uczogQXJyYXk8SVNlbGVjdE9wdGlvbj4gPSBbXTtcbiAgcHVibGljIHNlbGVjdGVkT3B0aW9uOiBJU2VsZWN0T3B0aW9uO1xuICBwdWJsaWMgc2VsZWN0ZWRPcHRpb25zOiBBcnJheTxJU2VsZWN0T3B0aW9uPiA9IFtdO1xuXG4gIHByaXZhdGUgY29udHJvbFZhbHVlQ2hhbmdlRm46ICh2YWx1ZTogYW55IHwgQXJyYXk8YW55PikgPT4gdm9pZCA9ICgpID0+IHtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBzdWlPcHRpb25zKG9wdGlvbnM6IEFycmF5PElTZWxlY3RPcHRpb24+KSB7XG4gICAgdGhpcy5hbGxPcHRpb25zID0gdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSBvcHRpb25zO1xuICB9XG5cbiAgZ2V0IHN1aU9wdGlvbnMoKTogQXJyYXk8SVNlbGVjdE9wdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmFsbE9wdGlvbnM7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3RhYmluZGV4JylcbiAgZ2V0IHRhYkluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGNsYXNzZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gW1xuICAgICAgJ3VpJyxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpRmx1aWQsICdmbHVpZCcpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlDb21wYWN0LCAnY29tcGFjdCcpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlTZWFyY2gsICdzZWFyY2gnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpTG9hZGluZywgJ2xvYWRpbmcnKSxcbiAgICAgICdzZWxlY3Rpb24nLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlJbmxpbmUsICdpbmxpbmUnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuZGlzYWJsZWQsICdkaXNhYmxlZCcpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlTY3JvbGxpbmcsICdzY3JvbGxpbmcnKSxcbiAgICAgICdkcm9wZG93bicsXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aU11bHRpcGxlLCAnbXVsdGlwbGUnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuaXNPcGVuLCAnYWN0aXZlJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLmlzT3BlbiwgJ3Zpc2libGUnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpRXJyb3IsICdlcnJvcicpXG4gICAgXS5qb2luKCcgJyk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICB9XG5cbiAgcHVibGljIGdldCBtdWx0aXBsZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnN1aU11bHRpcGxlID8gJycgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzRGVmYXVsdFRleHQoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zdWlTZWFyY2gpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gIXRoaXMuc2VsZWN0ZWRPcHRpb247XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzRmlsdGVyZWRUZXh0KCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5zdWlTZWFyY2gpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pc1NlYXJjaGluZztcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgcHVibGljIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmlzT3BlbiA9ICF0aGlzLmlzT3BlbjtcblxuICAgIC8vIGhhbmRsZSBzZWxlY3Rpb24gZHJvcGRvd25cbiAgICBpZiAodGhpcy5vcHRpb25zTWVudSkge1xuICAgICAgdGhpcy5vcHRpb25zTWVudS5zdWlJc09wZW4gPSB0aGlzLmlzT3BlbjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5vcHRpb25zTWVudSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBbiBlcnJvciBvY2N1cnJlZCByZW5kZXJpbmcgdGhlIG9wdGlvbnMuJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uU2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMuaXNTZWFyY2hpbmcgPSAhIXRoaXMuc2VhcmNoVGVybTtcblxuICAgIC8vIGlmIHRoZSB1c2VyIGlzIHNlYXJjaGluZywgdGhlbiBrZWVwIHRoZSBkcm9wZG93biBvcGVuXG4gICAgaWYgKHRoaXMub3B0aW9uc01lbnUpIHtcbiAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICAgIHRoaXMub3B0aW9uc01lbnUuc3VpSXNPcGVuID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBsaW1pdCB0aGUgb3B0aW9ucyBkaXNwbGF5ZWRcbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IHRoaXMuYWxsT3B0aW9uc1xuICAgICAgLmZpbHRlcigoeCkgPT4geC50ZXh0LnRvTG9jYWxlTG93ZXJDYXNlKClcbiAgICAgICAgLmluY2x1ZGVzKHRoaXMuc2VhcmNoVGVybS50b0xvY2FsZUxvd2VyQ2FzZSgpKSk7XG4gIH1cblxuICBwdWJsaWMgaXNBY3RpdmUob3B0aW9uOiBJU2VsZWN0T3B0aW9uKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuc3VpTXVsdGlwbGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkVmFsdWVzLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkT3B0aW9uID09PSBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhhc05vU2VhcmNoUmVzdWx0cygpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuc3VpU2VhcmNoKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyZWRPcHRpb25zLmxlbmd0aCA9PT0gMDtcbiAgfVxuXG4gIHB1YmxpYyBvbkl0ZW1DbGljayhvcHRpb246IElTZWxlY3RPcHRpb24sIGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIC8vIGhhbmRsZSBzaW5nbGUgc2VsZWN0XG4gICAgaWYgKCF0aGlzLnN1aU11bHRpcGxlKSB7XG4gICAgICBjb25zdCB2YWx1ZUNoYW5nZWQgPSB0aGlzLnNlbGVjdGVkT3B0aW9uPy52YWx1ZSAhPT0gb3B0aW9uLnZhbHVlO1xuICAgICAgdGhpcy5zZWxlY3RlZE9wdGlvbiA9IG9wdGlvbjtcblxuICAgICAgaWYgKHZhbHVlQ2hhbmdlZCkge1xuICAgICAgICB0aGlzLmNvbnRyb2xWYWx1ZUNoYW5nZUZuKG9wdGlvbi52YWx1ZSk7XG4gICAgICAgIHRoaXMuc3VpU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KG9wdGlvbi52YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gaGFuZGxlIG11bHRpcGxlICBzZWxlY3RcbiAgICBpZiAodGhpcy5zdWlNdWx0aXBsZSkge1xuICAgICAgY29uc3QgdmFsdWVDaGFuZ2VkID0gIXRoaXMuc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMob3B0aW9uLnZhbHVlKTtcblxuICAgICAgaWYgKHZhbHVlQ2hhbmdlZCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnB1c2gob3B0aW9uLnZhbHVlKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE9wdGlvbnMucHVzaChvcHRpb24pO1xuXG4gICAgICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlRm4odGhpcy5zZWxlY3RlZFZhbHVlcyk7XG4gICAgICAgIHRoaXMuc3VpU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHRoaXMuc2VsZWN0ZWRWYWx1ZXMpO1xuICAgICAgfVxuXG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICAvLyBjbGVhciBzZWFyY2hcbiAgICB0aGlzLmlzU2VhcmNoaW5nID0gZmFsc2U7XG4gICAgdGhpcy5zZWFyY2hUZXJtID0gJyc7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlU2VsZWN0aW9uKG9wdGlvbjogSVNlbGVjdE9wdGlvbiwgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN1aU11bHRpcGxlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkVmFsdWVzLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGVkVmFsdWVzID0gdGhpcy5zZWxlY3RlZFZhbHVlcy5maWx0ZXIoKHgpID0+IHggIT09IG9wdGlvbi52YWx1ZSk7XG4gICAgdGhpcy5zZWxlY3RlZE9wdGlvbnMgPSB0aGlzLnNlbGVjdGVkT3B0aW9ucy5maWx0ZXIoKHgpID0+IHggIT09IG9wdGlvbik7XG5cbiAgICB0aGlzLmNvbnRyb2xWYWx1ZUNoYW5nZUZuKHRoaXMuc2VsZWN0ZWRWYWx1ZXMpO1xuICAgIHRoaXMuc3VpU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHRoaXMuc2VsZWN0ZWRWYWx1ZXMpO1xuXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogYW55IHwgQXJyYXk8YW55Pik6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlQ2hhbmdlZCA9IHZhbHVlICE9PSB0aGlzLnNlbGVjdGVkT3B0aW9uPy52YWx1ZTtcblxuICAgIGlmICh2YWx1ZUNoYW5nZWQpIHtcbiAgICAgIHRoaXMuc3VpU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBtYXRjaGVkT3B0aW9ucyA9IHRoaXMuYWxsT3B0aW9uc1xuICAgICAgLmZpbHRlcigoeCkgPT4geC52YWx1ZSA9PT0gdmFsdWUpO1xuICAgIHRoaXMuc2VsZWN0ZWRPcHRpb24gPSBtYXRjaGVkT3B0aW9uc1swXTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlRm4gPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICB9XG59XG4iXX0=
440
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBR0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQXFHakUsTUFBTSxPQUFPLGtCQUFrQjtJQTRCN0IsSUFDSSxVQUFVLENBQUMsT0FBNkI7UUFDMUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQztJQUNuRCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUNJLFFBQVE7UUFDVixPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxJQUNJLE9BQU87UUFDVCxPQUFPO1lBQ0wsSUFBSTtZQUNKLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFDL0MsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQztZQUNuRCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDO1lBQ2pELFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUM7WUFD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RUFBRSxtQkFBbUIsQ0FBQzs0QkFDakQsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBRTtpQkFDSjtzRkFFMkMsV0FBVztzQkFBcEQsU0FBUzt1QkFBQyxzQkFBc0I7Z0JBRWhCLG1CQUFtQjtzQkFBbkMsTUFBTTtnQkFDUyxjQUFjO3NCQUE3QixLQUFLO2dCQUMwQixTQUFTO3NCQUF4QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixTQUFTO3NCQUF4QyxLQUFLO2dCQUMwQixVQUFVO3NCQUF6QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixRQUFRO3NCQUF2QyxLQUFLO2dCQUMwQixZQUFZO3NCQUEzQyxLQUFLO2dCQUMwQixVQUFVO3NCQUF6QyxLQUFLO2dCQUMwQixJQUFJO3NCQUFuQyxLQUFLO2dCQUMwQixXQUFXO3NCQUExQyxLQUFLO2dCQWVGLFVBQVU7c0JBRGIsS0FBSztnQkFVRixRQUFRO3NCQURYLFdBQVc7dUJBQUMsVUFBVTtnQkFNbkIsT0FBTztzQkFEVixXQUFXO3VCQUFDLE9BQU87Z0JBZ0RiLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2xhc3NVdGlscywgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd4LXNlbWFudGljL2NvcmUvdXRpbCc7XG5pbXBvcnQgeyBTdWlTZWxlY3RNZW51RGlyZWN0aXZlIH0gZnJvbSAnLi9zZWxlY3QtbWVudS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSVNlbGVjdE9wdGlvbiB9IGZyb20gJy4vaW50ZXJmYWNlcy9JU2VsZWN0T3B0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3VpLXNlbGVjdCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGkgY2xhc3M9XCJkcm9wZG93biBpY29uXCI+PC9pPlxuXG4gICAgPCEtLSBNdWx0aXBsZSBTZWxlY3QgRGlzcGxheSAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3VpTXVsdGlwbGVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBzZWxlY3RlZE9wdGlvbnNcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJ1aSBsYWJlbCB0cmFuc2l0aW9uIHZpc2libGVcIlxuICAgICAgICAgICBzdHlsZT1cImRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1wiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uaW1hZ2VcIj5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJ1aSBtaW5pIGltYWdlXCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmF2YXRhcl09XCJvcHRpb24uaW1hZ2UuYXZhdGFyXCJcbiAgICAgICAgICAgICAgICAgW3NyY109XCJvcHRpb24uaW1hZ2Uuc3JjXCIvPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uZmxhZ1wiPlxuICAgICAgICAgICAgPGkgW2NsYXNzTmFtZV09XCInZmxhZyAnICsgb3B0aW9uLmZsYWdcIj48L2k+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICB7eyBvcHRpb24udGV4dCB9fVxuXG4gICAgICAgICAgPGkgY2xhc3M9XCJkZWxldGUgaWNvblwiXG4gICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZVNlbGVjdGlvbihvcHRpb24sICRldmVudClcIj48L2k+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdCB0ZXh0XCI+e3sgc3VpUGxhY2Vob2xkZXIgfX08L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS0gU2VhcmNoIFNlY3Rpb24gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN1aVNlYXJjaFwiPlxuICAgICAgPGlucHV0IGNsYXNzPVwic2VhcmNoXCJcbiAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXJtXCJcbiAgICAgICAgICAgICAoZm9jdXMpPVwib25DbGljaygpXCJcbiAgICAgICAgICAgICAoa2V5dXApPVwib25TZWFyY2goKVwiPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPCEtLSBEaXNwbGF5IFNlY3Rpb24gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzdWlNdWx0aXBsZVwiPlxuICAgICAgPGRpdlxuICAgICAgICBbY2xhc3MuZGVmYXVsdF09XCJpc0RlZmF1bHRUZXh0XCJcbiAgICAgICAgW2NsYXNzLmZpbHRlcmVkXT1cImlzRmlsdGVyZWRUZXh0XCJcbiAgICAgICAgW2NsYXNzLnRleHRdPVwidHJ1ZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb25cIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb24uaW1hZ2VcIj5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJ1aSBtaW5pIGltYWdlXCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmF2YXRhcl09XCJzZWxlY3RlZE9wdGlvbi5pbWFnZS5hdmF0YXJcIlxuICAgICAgICAgICAgICAgICBbc3JjXT1cInNlbGVjdGVkT3B0aW9uLmltYWdlLnNyY1wiLz5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRPcHRpb24uZmxhZ1wiPlxuICAgICAgICAgICAgPGkgW2NsYXNzTmFtZV09XCInZmxhZyAnICsgc2VsZWN0ZWRPcHRpb24uZmxhZ1wiPjwvaT5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgIHt7IHNlbGVjdGVkT3B0aW9uLnRleHQgfX1cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzZWxlY3RlZE9wdGlvblwiPlxuICAgICAgICAgIHt7IHN1aVBsYWNlaG9sZGVyIH19XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tIERyb3AgRG93biBNZW51IFNlY3Rpb24gLS0+XG4gICAgPGRpdiBzdWlTZWxlY3RNZW51PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9uc1wiPlxuICAgICAgICA8ZGl2IHN1aVNlbGVjdE1lbnVJdGVtXG4gICAgICAgICAgICAgW3N1aVZhbHVlXT1cIm9wdGlvbi52YWx1ZVwiXG4gICAgICAgICAgICAgW3N1aVNlbGVjdGVkXT1cImlzQWN0aXZlKG9wdGlvbilcIlxuICAgICAgICAgICAgIFtzdWlNdWx0aXBsZV09XCJzdWlNdWx0aXBsZVwiXG4gICAgICAgICAgICAgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKG9wdGlvbiwgJGV2ZW50KVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uaW1hZ2VcIj5cbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJ1aSBtaW5pIGltYWdlXCJcbiAgICAgICAgICAgICAgICAgW2NsYXNzLmF2YXRhcl09XCJvcHRpb24uaW1hZ2UuYXZhdGFyXCJcbiAgICAgICAgICAgICAgICAgW3NyY109XCJvcHRpb24uaW1hZ2Uuc3JjXCIvPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb24uZmxhZ1wiPlxuICAgICAgICAgICAgPGkgW2NsYXNzTmFtZV09XCInZmxhZyAnICsgb3B0aW9uLmZsYWdcIj48L2k+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAge3sgb3B0aW9uLnRleHQgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNOb1NlYXJjaFJlc3VsdHMoKVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiXG4gICAgICAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICAgIE5vIHJlc3VsdHMgZm91bmQuXG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHByb3ZpZGVyczogWyB7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU3VpU2VsZWN0Q29tcG9uZW50KSxcbiAgICBtdWx0aTogdHJ1ZVxuICB9IF1cbn0pXG5leHBvcnQgY2xhc3MgU3VpU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBAVmlld0NoaWxkKFN1aVNlbGVjdE1lbnVEaXJlY3RpdmUpIHB1YmxpYyBvcHRpb25zTWVudTogU3VpU2VsZWN0TWVudURpcmVjdGl2ZTtcblxuICBAT3V0cHV0KCkgcHVibGljIHN1aVNlbGVjdGlvbkNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueSB8IEFycmF5PGFueT4+KCk7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdWlQbGFjZWhvbGRlcjogc3RyaW5nID0gbnVsbDtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlTZWFyY2ggPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlGbHVpZCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aUlubGluZSA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIHN1aUxvYWRpbmcgPSBmYWxzZTtcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHB1YmxpYyBzdWlFcnJvciA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpU2Nyb2xsaW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpQ29tcGFjdCA9IGZhbHNlO1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcHVibGljIG5hbWU6IHN0cmluZyA9IG51bGw7XG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwdWJsaWMgc3VpTXVsdGlwbGUgPSBmYWxzZTtcblxuICBwcml2YXRlIGlzT3BlbiA9IGZhbHNlO1xuICBwcml2YXRlIGlzU2VhcmNoaW5nID0gZmFsc2U7XG4gIHByaXZhdGUgc2VsZWN0ZWRWYWx1ZXM6IEFycmF5PGFueT4gPSBbXTtcbiAgcHVibGljIHNlYXJjaFRlcm06IHN0cmluZztcbiAgcHJpdmF0ZSBhbGxPcHRpb25zOiBBcnJheTxJU2VsZWN0T3B0aW9uPiA9IFtdO1xuICBwdWJsaWMgZmlsdGVyZWRPcHRpb25zOiBBcnJheTxJU2VsZWN0T3B0aW9uPiA9IFtdO1xuICBwdWJsaWMgc2VsZWN0ZWRPcHRpb246IElTZWxlY3RPcHRpb247XG4gIHB1YmxpYyBzZWxlY3RlZE9wdGlvbnM6IEFycmF5PElTZWxlY3RPcHRpb24+ID0gW107XG5cbiAgcHJpdmF0ZSBjb250cm9sVmFsdWVDaGFuZ2VGbjogKHZhbHVlOiBhbnkgfCBBcnJheTxhbnk+KSA9PiB2b2lkID0gKCkgPT4ge1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHN1aU9wdGlvbnMob3B0aW9uczogQXJyYXk8SVNlbGVjdE9wdGlvbj4pIHtcbiAgICB0aGlzLmFsbE9wdGlvbnMgPSB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IG9wdGlvbnM7XG4gIH1cblxuICBnZXQgc3VpT3B0aW9ucygpOiBBcnJheTxJU2VsZWN0T3B0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuYWxsT3B0aW9ucztcbiAgfVxuXG4gIEBIb3N0QmluZGluZygndGFiaW5kZXgnKVxuICBnZXQgdGFiSW5kZXgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgY2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICAndWknLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlGbHVpZCwgJ2ZsdWlkJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aUNvbXBhY3QsICdjb21wYWN0JyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aVNlYXJjaCwgJ3NlYXJjaCcpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlMb2FkaW5nLCAnbG9hZGluZycpLFxuICAgICAgJ3NlbGVjdGlvbicsXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aUlubGluZSwgJ2lubGluZScpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5kaXNhYmxlZCwgJ2Rpc2FibGVkJyksXG4gICAgICBDbGFzc1V0aWxzLmdldFByb3BDbGFzcyh0aGlzLnN1aVNjcm9sbGluZywgJ3Njcm9sbGluZycpLFxuICAgICAgJ2Ryb3Bkb3duJyxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuc3VpTXVsdGlwbGUsICdtdWx0aXBsZScpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5pc09wZW4sICdhY3RpdmUnKSxcbiAgICAgIENsYXNzVXRpbHMuZ2V0UHJvcENsYXNzKHRoaXMuaXNPcGVuLCAndmlzaWJsZScpLFxuICAgICAgQ2xhc3NVdGlscy5nZXRQcm9wQ2xhc3ModGhpcy5zdWlFcnJvciwgJ2Vycm9yJylcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG11bHRpcGxlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuc3VpTXVsdGlwbGUgPyAnJyA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNEZWZhdWx0VGV4dCgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRPcHRpb24pIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnN1aVNlYXJjaCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiAhdGhpcy5zZWxlY3RlZE9wdGlvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNGaWx0ZXJlZFRleHQoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLnN1aVNlYXJjaCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmlzU2VhcmNoaW5nO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaXNPcGVuID0gIXRoaXMuaXNPcGVuO1xuXG4gICAgLy8gaGFuZGxlIHNlbGVjdGlvbiBkcm9wZG93blxuICAgIGlmICh0aGlzLm9wdGlvbnNNZW51KSB7XG4gICAgICB0aGlzLm9wdGlvbnNNZW51LnN1aUlzT3BlbiA9IHRoaXMuaXNPcGVuO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnNNZW51KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FuIGVycm9yIG9jY3VycmVkIHJlbmRlcmluZyB0aGUgb3B0aW9ucy4nKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25TZWFyY2goKTogdm9pZCB7XG4gICAgdGhpcy5pc1NlYXJjaGluZyA9ICEhdGhpcy5zZWFyY2hUZXJtO1xuXG4gICAgLy8gaWYgdGhlIHVzZXIgaXMgc2VhcmNoaW5nLCB0aGVuIGtlZXAgdGhlIGRyb3Bkb3duIG9wZW5cbiAgICBpZiAodGhpcy5vcHRpb25zTWVudSkge1xuICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuICAgICAgdGhpcy5vcHRpb25zTWVudS5zdWlJc09wZW4gPSB0cnVlO1xuICAgIH1cblxuICAgIC8vIGxpbWl0IHRoZSBvcHRpb25zIGRpc3BsYXllZFxuICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zID0gdGhpcy5hbGxPcHRpb25zXG4gICAgICAuZmlsdGVyKCh4KSA9PiB4LnRleHQudG9Mb2NhbGVMb3dlckNhc2UoKVxuICAgICAgICAuaW5jbHVkZXModGhpcy5zZWFyY2hUZXJtLnRvTG9jYWxlTG93ZXJDYXNlKCkpKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0FjdGl2ZShvcHRpb246IElTZWxlY3RPcHRpb24pOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5zdWlNdWx0aXBsZSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMob3B0aW9uLnZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRPcHRpb24gPT09IG9wdGlvbjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFzTm9TZWFyY2hSZXN1bHRzKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5zdWlTZWFyY2gpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5maWx0ZXJlZE9wdGlvbnMubGVuZ3RoID09PSAwO1xuICB9XG5cbiAgcHVibGljIG9uSXRlbUNsaWNrKG9wdGlvbjogSVNlbGVjdE9wdGlvbiwgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgLy8gaGFuZGxlIHNpbmdsZSBzZWxlY3RcbiAgICBpZiAoIXRoaXMuc3VpTXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlQ2hhbmdlZCA9IHRoaXMuc2VsZWN0ZWRPcHRpb24/LnZhbHVlICE9PSBvcHRpb24udmFsdWU7XG4gICAgICB0aGlzLnNlbGVjdGVkT3B0aW9uID0gb3B0aW9uO1xuXG4gICAgICBpZiAodmFsdWVDaGFuZ2VkKSB7XG4gICAgICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlRm4ob3B0aW9uLnZhbHVlKTtcbiAgICAgICAgdGhpcy5zdWlTZWxlY3Rpb25DaGFuZ2VkLmVtaXQob3B0aW9uLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBoYW5kbGUgbXVsdGlwbGUgIHNlbGVjdFxuICAgIGlmICh0aGlzLnN1aU11bHRpcGxlKSB7XG4gICAgICBjb25zdCB2YWx1ZUNoYW5nZWQgPSAhdGhpcy5zZWxlY3RlZFZhbHVlcy5pbmNsdWRlcyhvcHRpb24udmFsdWUpO1xuXG4gICAgICBpZiAodmFsdWVDaGFuZ2VkKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucHVzaChvcHRpb24udmFsdWUpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkT3B0aW9ucy5wdXNoKG9wdGlvbik7XG5cbiAgICAgICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2VGbih0aGlzLnNlbGVjdGVkVmFsdWVzKTtcbiAgICAgICAgdGhpcy5zdWlTZWxlY3Rpb25DaGFuZ2VkLmVtaXQodGhpcy5zZWxlY3RlZFZhbHVlcyk7XG4gICAgICB9XG5cbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIC8vIGNsZWFyIHNlYXJjaFxuICAgIHRoaXMuaXNTZWFyY2hpbmcgPSBmYWxzZTtcbiAgICB0aGlzLnNlYXJjaFRlcm0gPSAnJztcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVTZWxlY3Rpb24ob3B0aW9uOiBJU2VsZWN0T3B0aW9uLCBldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3VpTXVsdGlwbGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMob3B0aW9uLnZhbHVlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMgPSB0aGlzLnNlbGVjdGVkVmFsdWVzLmZpbHRlcigoeCkgPT4geCAhPT0gb3B0aW9uLnZhbHVlKTtcbiAgICB0aGlzLnNlbGVjdGVkT3B0aW9ucyA9IHRoaXMuc2VsZWN0ZWRPcHRpb25zLmZpbHRlcigoeCkgPT4geCAhPT0gb3B0aW9uKTtcblxuICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlRm4odGhpcy5zZWxlY3RlZFZhbHVlcyk7XG4gICAgdGhpcy5zdWlTZWxlY3Rpb25DaGFuZ2VkLmVtaXQodGhpcy5zZWxlY3RlZFZhbHVlcyk7XG5cbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBhbnkgfCBBcnJheTxhbnk+KTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWVDaGFuZ2VkID0gdmFsdWUgIT09IHRoaXMuc2VsZWN0ZWRPcHRpb24/LnZhbHVlO1xuXG4gICAgaWYgKHZhbHVlQ2hhbmdlZCkge1xuICAgICAgdGhpcy5zdWlTZWxlY3Rpb25DaGFuZ2VkLmVtaXQodmFsdWUpO1xuICAgIH1cblxuICAgIGNvbnN0IG1hdGNoZWRPcHRpb25zID0gdGhpcy5hbGxPcHRpb25zXG4gICAgICAuZmlsdGVyKCh4KSA9PiB4LnZhbHVlID09PSB2YWx1ZSk7XG4gICAgdGhpcy5zZWxlY3RlZE9wdGlvbiA9IG1hdGNoZWRPcHRpb25zWzBdO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2VGbiA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Directive } from '@angular/core';
3
+ import { ClassUtils } from 'ngx-semantic/core/util';
3
4
 
4
5
  /**
5
6
  * Created by bolorundurowb on 4/28/2021
@@ -15,7 +16,7 @@ class BaseDirective {
15
16
  this.setClasses();
16
17
  }
17
18
  setClasses() {
18
- const cleanedClasses = this.classes.replace(/\s\s+/g, ' ').trim();
19
+ const cleanedClasses = ClassUtils.removeExcessWhitespace(this.classes);
19
20
  this.element?.nativeElement?.setAttribute('class', cleanedClasses);
20
21
  }
21
22
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BaseDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-semantic-core-base.mjs","sources":["../../src/core/base/base.directive.ts","../../src/core/base/public-api.ts","../../src/core/base/ngx-semantic-core-base.ts"],"sourcesContent":["/**\n * Created by bolorundurowb on 4/28/2021\n */\nimport {Directive, ElementRef, OnChanges, OnInit, SimpleChanges} from '@angular/core';\n\n@Directive()\nexport abstract class BaseDirective implements OnInit, OnChanges {\n abstract classes: string;\n\n protected constructor(private element: ElementRef) {\n }\n\n ngOnInit() {\n this.setClasses();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.setClasses();\n }\n\n private setClasses(): void {\n const cleanedClasses = this.classes.replace(/\\s\\s+/g, ' ').trim();\n this.element?.nativeElement?.setAttribute('class', cleanedClasses);\n }\n}\n","/**\n * Created by bolorundurowb on 2/4/2021\n */\n\nexport * from './base.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAAA;;AAEG;MAImB,aAAa,CAAA;AAGjC,IAAA,WAAA,CAA8B,OAAmB,EAAA;QAAnB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAY;KAChD;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEO,UAAU,GAAA;AAChB,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAClE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;KACpE;8GAjBmB,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAb,aAAa,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADlC,SAAS;;;ACLV;;AAEG;;ACFH;;AAEG;;;;"}
1
+ {"version":3,"file":"ngx-semantic-core-base.mjs","sources":["../../src/core/base/base.directive.ts","../../src/core/base/public-api.ts","../../src/core/base/ngx-semantic-core-base.ts"],"sourcesContent":["/**\n * Created by bolorundurowb on 4/28/2021\n */\nimport { Directive, ElementRef, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { ClassUtils } from 'ngx-semantic/core/util';\n\n@Directive()\nexport abstract class BaseDirective implements OnInit, OnChanges {\n abstract classes: string;\n\n protected constructor(private element: ElementRef) {\n }\n\n ngOnInit() {\n this.setClasses();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this.setClasses();\n }\n\n private setClasses(): void {\n const cleanedClasses = ClassUtils.removeExcessWhitespace(this.classes);\n this.element?.nativeElement?.setAttribute('class', cleanedClasses);\n }\n}\n","/**\n * Created by bolorundurowb on 2/4/2021\n */\n\nexport * from './base.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAAA;;AAEG;MAKmB,aAAa,CAAA;AAGjC,IAAA,WAAA,CAA8B,OAAmB,EAAA;QAAnB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAY;KAChD;IAED,QAAQ,GAAA;QACN,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAEO,UAAU,GAAA;QAChB,MAAM,cAAc,GAAG,UAAU,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;KACpE;8GAjBmB,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAb,aAAa,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADlC,SAAS;;;ACNV;;AAEG;;ACFH;;AAEG;;;;"}
@@ -41,6 +41,12 @@ class ClassUtils {
41
41
  }
42
42
  return className;
43
43
  }
44
+ static combineToClass(input) {
45
+ return input.filter(x => !!x).join(' ').trim();
46
+ }
47
+ static removeExcessWhitespace(input) {
48
+ return input.replace(/\s\s+/g, ' ').trim();
49
+ }
44
50
  }
45
51
 
46
52
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-semantic-core-util.mjs","sources":["../../src/core/util/converters.ts","../../src/core/util/class-utils.ts","../../src/core/util/public-api.ts","../../src/core/util/ngx-semantic-core-util.ts"],"sourcesContent":["/**\n * Created by bolorundurowb on 2/4/2021\n */\n\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {SuiAny} from 'ngx-semantic/core/types';\n\nexport function toBoolean(value: boolean | string): boolean {\n return coerceBooleanProperty(value);\n}\n\nfunction propDecoratorFactory<T, D>(name: string, fallback: (v: T) => D): (target: SuiAny, propName: string) => void {\n function propDecorator(target: SuiAny, propName: string, originalDescriptor?: TypedPropertyDescriptor<SuiAny>): SuiAny {\n const privatePropName = `$$__${propName}`;\n\n if (Object.prototype.hasOwnProperty.call(target, privatePropName)) {\n console.warn(`The prop \"${privatePropName}\" already exists, it will be overridden by ${name} decorator.`);\n }\n\n Object.defineProperty(target, privatePropName, {\n configurable: true,\n writable: true\n });\n\n return {\n get(): string {\n return originalDescriptor && originalDescriptor.get ? originalDescriptor.get.bind(this)() : this[privatePropName];\n },\n set(value: T): void {\n if (originalDescriptor && originalDescriptor.set) {\n originalDescriptor.set.bind(this)(fallback(value));\n }\n this[privatePropName] = fallback(value);\n }\n };\n }\n\n return propDecorator;\n}\n\nexport function InputBoolean(): SuiAny {\n return propDecoratorFactory('InputBoolean', toBoolean);\n}\n","export class ClassUtils {\n public static getPropClass(state: boolean, className: string): string {\n if (!state) {\n return '';\n }\n\n return className;\n }\n}\n","/**\n * Created by bolorundurowb on 2/4/2021\n */\n\nexport * from './converters';\nexport * from './class-utils';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;AAAA;;AAEG;AAKG,SAAU,SAAS,CAAC,KAAuB,EAAA;AAC/C,IAAA,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,oBAAoB,CAAO,IAAY,EAAE,QAAqB,EAAA;AACrE,IAAA,SAAS,aAAa,CAAC,MAAc,EAAE,QAAgB,EAAE,kBAAoD,EAAA;AAC3G,QAAA,MAAM,eAAe,GAAG,CAAO,IAAA,EAAA,QAAQ,EAAE,CAAC;AAE1C,QAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE;YACjE,OAAO,CAAC,IAAI,CAAC,CAAA,UAAA,EAAa,eAAe,CAA8C,2CAAA,EAAA,IAAI,CAAa,WAAA,CAAA,CAAC,CAAC;SAC3G;AAED,QAAA,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE;AAC7C,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,QAAQ,EAAE,IAAI;AACf,SAAA,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,GAAA;gBACD,OAAO,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;aACnH;AACD,YAAA,GAAG,CAAC,KAAQ,EAAA;AACV,gBAAA,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,EAAE;AAChD,oBAAA,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;iBACpD;gBACD,IAAI,CAAC,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;aACzC;SACF,CAAC;KACH;AAED,IAAA,OAAO,aAAa,CAAC;AACvB,CAAC;SAEe,YAAY,GAAA;AAC1B,IAAA,OAAO,oBAAoB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;AACzD;;MC1Ca,UAAU,CAAA;AACd,IAAA,OAAO,YAAY,CAAC,KAAc,EAAE,SAAiB,EAAA;QAC1D,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,OAAO,EAAE,CAAC;SACX;AAED,QAAA,OAAO,SAAS,CAAC;KAClB;AACF;;ACRD;;AAEG;;ACFH;;AAEG;;;;"}
1
+ {"version":3,"file":"ngx-semantic-core-util.mjs","sources":["../../src/core/util/converters.ts","../../src/core/util/class-utils.ts","../../src/core/util/public-api.ts","../../src/core/util/ngx-semantic-core-util.ts"],"sourcesContent":["/**\n * Created by bolorundurowb on 2/4/2021\n */\n\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {SuiAny} from 'ngx-semantic/core/types';\n\nexport function toBoolean(value: boolean | string): boolean {\n return coerceBooleanProperty(value);\n}\n\nfunction propDecoratorFactory<T, D>(name: string, fallback: (v: T) => D): (target: SuiAny, propName: string) => void {\n function propDecorator(target: SuiAny, propName: string, originalDescriptor?: TypedPropertyDescriptor<SuiAny>): SuiAny {\n const privatePropName = `$$__${propName}`;\n\n if (Object.prototype.hasOwnProperty.call(target, privatePropName)) {\n console.warn(`The prop \"${privatePropName}\" already exists, it will be overridden by ${name} decorator.`);\n }\n\n Object.defineProperty(target, privatePropName, {\n configurable: true,\n writable: true\n });\n\n return {\n get(): string {\n return originalDescriptor && originalDescriptor.get ? originalDescriptor.get.bind(this)() : this[privatePropName];\n },\n set(value: T): void {\n if (originalDescriptor && originalDescriptor.set) {\n originalDescriptor.set.bind(this)(fallback(value));\n }\n this[privatePropName] = fallback(value);\n }\n };\n }\n\n return propDecorator;\n}\n\nexport function InputBoolean(): SuiAny {\n return propDecoratorFactory('InputBoolean', toBoolean);\n}\n","export class ClassUtils {\n public static getPropClass(state: boolean, className: string): string {\n if (!state) {\n return '';\n }\n\n return className;\n }\n\n public static combineToClass(input: string[]): string {\n return input.filter(x => !!x).join(' ').trim();\n }\n\n public static removeExcessWhitespace(input: string): string {\n return input.replace(/\\s\\s+/g, ' ').trim();\n }\n}\n","/**\n * Created by bolorundurowb on 2/4/2021\n */\n\nexport * from './converters';\nexport * from './class-utils';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;AAAA;;AAEG;AAKG,SAAU,SAAS,CAAC,KAAuB,EAAA;AAC/C,IAAA,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,oBAAoB,CAAO,IAAY,EAAE,QAAqB,EAAA;AACrE,IAAA,SAAS,aAAa,CAAC,MAAc,EAAE,QAAgB,EAAE,kBAAoD,EAAA;AAC3G,QAAA,MAAM,eAAe,GAAG,CAAO,IAAA,EAAA,QAAQ,EAAE,CAAC;AAE1C,QAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE;YACjE,OAAO,CAAC,IAAI,CAAC,CAAA,UAAA,EAAa,eAAe,CAA8C,2CAAA,EAAA,IAAI,CAAa,WAAA,CAAA,CAAC,CAAC;SAC3G;AAED,QAAA,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE;AAC7C,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,QAAQ,EAAE,IAAI;AACf,SAAA,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,GAAA;gBACD,OAAO,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;aACnH;AACD,YAAA,GAAG,CAAC,KAAQ,EAAA;AACV,gBAAA,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,EAAE;AAChD,oBAAA,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;iBACpD;gBACD,IAAI,CAAC,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;aACzC;SACF,CAAC;KACH;AAED,IAAA,OAAO,aAAa,CAAC;AACvB,CAAC;SAEe,YAAY,GAAA;AAC1B,IAAA,OAAO,oBAAoB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;AACzD;;MC1Ca,UAAU,CAAA;AACd,IAAA,OAAO,YAAY,CAAC,KAAc,EAAE,SAAiB,EAAA;QAC1D,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,OAAO,EAAE,CAAC;SACX;AAED,QAAA,OAAO,SAAS,CAAC;KAClB;IAEM,OAAO,cAAc,CAAC,KAAe,EAAA;QAC1C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;KAChD;IAEM,OAAO,sBAAsB,CAAC,KAAa,EAAA;QAChD,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;KAC5C;AACF;;AChBD;;AAEG;;ACFH;;AAEG;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
- import { Component, Input, HostBinding, NgModule } from '@angular/core';
3
+ import { Component, Input, NgModule } from '@angular/core';
4
4
  import { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';
5
5
  import * as i1 from '@angular/common';
6
6
  import { CommonModule } from '@angular/common';
@@ -33,7 +33,7 @@ class SuiProgressComponent {
33
33
  return this.maxValue;
34
34
  }
35
35
  get classes() {
36
- return [
36
+ return ClassUtils.combineToClass([
37
37
  'ui',
38
38
  this.suiSize,
39
39
  this.suiColour,
@@ -44,7 +44,7 @@ class SuiProgressComponent {
44
44
  ClassUtils.getPropClass(this.suiInverted, 'inverted'),
45
45
  'progress',
46
46
  this.suiState
47
- ].join(' ');
47
+ ]);
48
48
  }
49
49
  calculatePercentage() {
50
50
  if (this.value > this.maxValue) {
@@ -57,17 +57,19 @@ class SuiProgressComponent {
57
57
  }
58
58
  }
59
59
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: SuiProgressComponent, selector: "sui-progress", inputs: { suiAttached: "suiAttached", suiSize: "suiSize", suiColour: "suiColour", suiState: "suiState", suiIndicating: "suiIndicating", disabled: "disabled", suiInverted: "suiInverted", suiShowProgress: "suiShowProgress", suiValue: "suiValue", suiMaxValue: "suiMaxValue" }, host: { properties: { "class": "this.classes" } }, ngImport: i0, template: `
61
- <div class="bar"
62
- [style.width.%]="progressPercentage">
63
- <ng-container *ngIf="suiShowProgress">
64
- <div class="progress">{{progressPercentage}}%</div>
65
- </ng-container>
60
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: SuiProgressComponent, selector: "sui-progress", inputs: { suiAttached: "suiAttached", suiSize: "suiSize", suiColour: "suiColour", suiState: "suiState", suiIndicating: "suiIndicating", disabled: "disabled", suiInverted: "suiInverted", suiShowProgress: "suiShowProgress", suiValue: "suiValue", suiMaxValue: "suiMaxValue" }, ngImport: i0, template: `
61
+ <div [ngClass]="classes" [attr.data-percent]="progressPercentage">
62
+ <div class="bar"
63
+ [style.width.%]="progressPercentage">
64
+ <ng-container *ngIf="suiShowProgress">
65
+ <div class="progress">{{ progressPercentage }}%</div>
66
+ </ng-container>
67
+ </div>
68
+ <div class="label">
69
+ <ng-content></ng-content>
70
+ </div>
66
71
  </div>
67
- <div class="label">
68
- <ng-content></ng-content>
69
- </div>
70
- `, isInline: true, styles: [":host{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
72
+ `, isInline: true, styles: [":host{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
71
73
  }
72
74
  __decorate([
73
75
  InputBoolean()
@@ -84,14 +86,16 @@ __decorate([
84
86
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: SuiProgressComponent, decorators: [{
85
87
  type: Component,
86
88
  args: [{ selector: 'sui-progress', template: `
87
- <div class="bar"
88
- [style.width.%]="progressPercentage">
89
- <ng-container *ngIf="suiShowProgress">
90
- <div class="progress">{{progressPercentage}}%</div>
91
- </ng-container>
92
- </div>
93
- <div class="label">
94
- <ng-content></ng-content>
89
+ <div [ngClass]="classes" [attr.data-percent]="progressPercentage">
90
+ <div class="bar"
91
+ [style.width.%]="progressPercentage">
92
+ <ng-container *ngIf="suiShowProgress">
93
+ <div class="progress">{{ progressPercentage }}%</div>
94
+ </ng-container>
95
+ </div>
96
+ <div class="label">
97
+ <ng-content></ng-content>
98
+ </div>
95
99
  </div>
96
100
  `, styles: [":host{width:100%}\n"] }]
97
101
  }], propDecorators: { suiAttached: [{
@@ -114,9 +118,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
114
118
  type: Input
115
119
  }], suiMaxValue: [{
116
120
  type: Input
117
- }], classes: [{
118
- type: HostBinding,
119
- args: ['class']
120
121
  }] } });
121
122
 
122
123
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-semantic-modules-progress.mjs","sources":["../../src/modules/progress/progress.component.ts","../../src/modules/progress/progress.module.ts","../../src/modules/progress/public-api.ts","../../src/modules/progress/ngx-semantic-modules-progress.ts"],"sourcesContent":["/**\n * Created by bolor on 10/22/2020\n */\n\nimport {Component, HostBinding, Input} from '@angular/core';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\nimport {SuiColour, SuiSize} from 'ngx-semantic/core/enums';\n\nexport type SuiProgressAttachment = 'bottom' | 'top' | null;\nexport type SuiProgressState = 'success' | 'warning' | 'error' | null;\n\n@Component({\n selector: 'sui-progress',\n template: `\n <div class=\"bar\"\n [style.width.%]=\"progressPercentage\">\n <ng-container *ngIf=\"suiShowProgress\">\n <div class=\"progress\">{{progressPercentage}}%</div>\n </ng-container>\n </div>\n <div class=\"label\">\n <ng-content></ng-content>\n </div>\n `,\n styles: [`\n :host {\n width: 100%;\n }\n `]\n})\nexport class SuiProgressComponent {\n @Input() public suiAttached: SuiProgressAttachment = null;\n @Input() public suiSize: SuiSize = null;\n @Input() public suiColour: SuiColour = null;\n @Input() public suiState: SuiProgressState = null;\n @Input() @InputBoolean() public suiIndicating = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() @InputBoolean() public suiInverted = false;\n @Input() @InputBoolean() public suiShowProgress = true;\n\n private value = 0;\n private maxValue = 100;\n public progressPercentage: number;\n public isActive: boolean;\n\n @Input()\n set suiValue(value: number) {\n this.value = +value;\n this.calculatePercentage();\n }\n\n get suiValue(): number {\n return this.value;\n }\n\n @Input()\n set suiMaxValue(maxValue: number) {\n this.maxValue = +maxValue;\n this.calculatePercentage();\n }\n\n get suiMaxValue(): number {\n return this.maxValue;\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'ui',\n this.suiSize,\n this.suiColour,\n this.suiAttached ? `${this.suiAttached} attached` : '',\n ClassUtils.getPropClass(this.isActive, 'active'),\n ClassUtils.getPropClass(this.suiIndicating, 'indicating'),\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n ClassUtils.getPropClass(this.suiInverted, 'inverted'),\n 'progress',\n this.suiState\n ].join(' ');\n }\n\n private calculatePercentage(): void {\n if (this.value > this.maxValue) {\n return;\n }\n\n this.progressPercentage = Math.ceil(this.value * 100 / this.maxValue);\n this.isActive = this.progressPercentage < 100;\n\n if (this.progressPercentage === 100) {\n this.suiState = 'success';\n }\n }\n}\n","/**\n * Created by bolor on 10/22/2020\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {SuiProgressComponent} from './progress.component';\n\n@NgModule({\n declarations: [SuiProgressComponent],\n exports: [SuiProgressComponent],\n imports: [CommonModule],\n})\nexport class SuiProgressModule {\n}\n","/**\n * Created by bolor on 10/22/2020\n */\n\nexport * from './progress.component';\nexport * from './progress.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-semantic-modules-progress.mjs","sources":["../../src/modules/progress/progress.component.ts","../../src/modules/progress/progress.module.ts","../../src/modules/progress/public-api.ts","../../src/modules/progress/ngx-semantic-modules-progress.ts"],"sourcesContent":["/**\n * Created by bolor on 10/22/2020\n */\n\nimport { Component, Input } from '@angular/core';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiColour, SuiSize } from 'ngx-semantic/core/enums';\n\nexport type SuiProgressAttachment = 'bottom' | 'top' | null;\nexport type SuiProgressState = 'success' | 'warning' | 'error' | null;\n\n@Component({\n selector: 'sui-progress',\n template: `\n <div [ngClass]=\"classes\" [attr.data-percent]=\"progressPercentage\">\n <div class=\"bar\"\n [style.width.%]=\"progressPercentage\">\n <ng-container *ngIf=\"suiShowProgress\">\n <div class=\"progress\">{{ progressPercentage }}%</div>\n </ng-container>\n </div>\n <div class=\"label\">\n <ng-content></ng-content>\n </div>\n </div>\n `,\n styles: [ `\n :host {\n width: 100%;\n }\n ` ]\n})\nexport class SuiProgressComponent {\n @Input() public suiAttached: SuiProgressAttachment = null;\n @Input() public suiSize: SuiSize = null;\n @Input() public suiColour: SuiColour = null;\n @Input() public suiState: SuiProgressState = null;\n @Input() @InputBoolean() public suiIndicating = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() @InputBoolean() public suiInverted = false;\n @Input() @InputBoolean() public suiShowProgress = true;\n\n private value = 0;\n private maxValue = 100;\n public progressPercentage: number;\n public isActive: boolean;\n\n @Input()\n set suiValue(value: number) {\n this.value = +value;\n this.calculatePercentage();\n }\n\n get suiValue(): number {\n return this.value;\n }\n\n @Input()\n set suiMaxValue(maxValue: number) {\n this.maxValue = +maxValue;\n this.calculatePercentage();\n }\n\n get suiMaxValue(): number {\n return this.maxValue;\n }\n\n get classes(): string {\n return ClassUtils.combineToClass([\n 'ui',\n this.suiSize,\n this.suiColour,\n this.suiAttached ? `${this.suiAttached} attached` : '',\n ClassUtils.getPropClass(this.isActive, 'active'),\n ClassUtils.getPropClass(this.suiIndicating, 'indicating'),\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n ClassUtils.getPropClass(this.suiInverted, 'inverted'),\n 'progress',\n this.suiState\n ]);\n }\n\n private calculatePercentage(): void {\n if (this.value > this.maxValue) {\n return;\n }\n\n this.progressPercentage = Math.ceil(this.value * 100 / this.maxValue);\n this.isActive = this.progressPercentage < 100;\n\n if (this.progressPercentage === 100) {\n this.suiState = 'success';\n }\n }\n}\n","/**\n * Created by bolor on 10/22/2020\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {SuiProgressComponent} from './progress.component';\n\n@NgModule({\n declarations: [SuiProgressComponent],\n exports: [SuiProgressComponent],\n imports: [CommonModule],\n})\nexport class SuiProgressModule {\n}\n","/**\n * Created by bolor on 10/22/2020\n */\n\nexport * from './progress.component';\nexport * from './progress.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -286,14 +286,14 @@ class SuiSelectComponent {
286
286
  <i [className]="'flag ' + option.flag"></i>
287
287
  </ng-container>
288
288
 
289
- {{option.text}}
289
+ {{ option.text }}
290
290
 
291
291
  <i class="delete icon"
292
292
  (click)="removeSelection(option, $event)"></i>
293
293
  </a>
294
294
  </ng-container>
295
295
 
296
- <div class="default text">{{suiPlaceholder}}</div>
296
+ <div class="default text">{{ suiPlaceholder }}</div>
297
297
  </ng-container>
298
298
 
299
299
  <!-- Search Section -->
@@ -322,11 +322,11 @@ class SuiSelectComponent {
322
322
  <i [className]="'flag ' + selectedOption.flag"></i>
323
323
  </ng-container>
324
324
 
325
- {{selectedOption.text}}
325
+ {{ selectedOption.text }}
326
326
  </ng-container>
327
327
 
328
328
  <ng-container *ngIf="!selectedOption">
329
- {{suiPlaceholder}}
329
+ {{ suiPlaceholder }}
330
330
  </ng-container>
331
331
  </div>
332
332
  </ng-container>
@@ -347,7 +347,7 @@ class SuiSelectComponent {
347
347
  <ng-container *ngIf="option.flag">
348
348
  <i [className]="'flag ' + option.flag"></i>
349
349
  </ng-container>
350
- {{option.text}}
350
+ {{ option.text }}
351
351
  </div>
352
352
  </ng-container>
353
353
  <ng-container *ngIf="hasNoSearchResults()">
@@ -411,14 +411,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
411
411
  <i [className]="'flag ' + option.flag"></i>
412
412
  </ng-container>
413
413
 
414
- {{option.text}}
414
+ {{ option.text }}
415
415
 
416
416
  <i class="delete icon"
417
417
  (click)="removeSelection(option, $event)"></i>
418
418
  </a>
419
419
  </ng-container>
420
420
 
421
- <div class="default text">{{suiPlaceholder}}</div>
421
+ <div class="default text">{{ suiPlaceholder }}</div>
422
422
  </ng-container>
423
423
 
424
424
  <!-- Search Section -->
@@ -447,11 +447,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
447
447
  <i [className]="'flag ' + selectedOption.flag"></i>
448
448
  </ng-container>
449
449
 
450
- {{selectedOption.text}}
450
+ {{ selectedOption.text }}
451
451
  </ng-container>
452
452
 
453
453
  <ng-container *ngIf="!selectedOption">
454
- {{suiPlaceholder}}
454
+ {{ suiPlaceholder }}
455
455
  </ng-container>
456
456
  </div>
457
457
  </ng-container>
@@ -472,7 +472,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
472
472
  <ng-container *ngIf="option.flag">
473
473
  <i [className]="'flag ' + option.flag"></i>
474
474
  </ng-container>
475
- {{option.text}}
475
+ {{ option.text }}
476
476
  </div>
477
477
  </ng-container>
478
478
  <ng-container *ngIf="hasNoSearchResults()">
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-semantic-modules-select.mjs","sources":["../../src/modules/select/select-menu-item.directive.ts","../../src/modules/select/interfaces/ISelectOption.ts","../../src/modules/select/select-menu.directive.ts","../../src/modules/select/select.component.ts","../../src/modules/select/select.module.ts","../../src/modules/select/ngx-semantic-modules-select.ts"],"sourcesContent":["import {Directive, HostBinding, Input} from '@angular/core';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\n\n@Directive({\n selector: '[suiSelectMenuItem]'\n})\nexport class SuiSelectMenuItemDirective {\n @Input() public suiValue: any = null;\n @Input() @InputBoolean() public suiSelected = false;\n @Input() @InputBoolean() public suiMultiple = false;\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'item',\n ClassUtils.getPropClass(this.suiSelected, 'active'),\n ClassUtils.getPropClass(!this.suiMultiple && this.suiSelected, 'selected'),\n ClassUtils.getPropClass(this.suiMultiple && this.suiSelected, 'filtered')\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 11/2/2020\n */\n\nimport {ISelectOptionImage} from './ISelectOptionImage';\n\nexport interface ISelectOption {\n text: string;\n value: any;\n image?: ISelectOptionImage;\n flag?: string;\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\n\nexport type SuiSelectMenuDirection = 'left' | 'right' | null;\n\n@Directive({\n selector: '[suiSelectMenu]'\n})\nexport class SuiSelectMenuDirective {\n @Input() public suiDirection: SuiSelectMenuDirection = null;\n @Input() @InputBoolean() public suiScrolling = false;\n\n private isOpen;\n\n @Input()\n set suiIsOpen(isOpen: boolean) {\n this.isOpen = isOpen;\n }\n\n get suiIsOpen(): boolean {\n return this.isOpen;\n }\n\n @HostBinding('tabindex')\n get tabIndex(): number {\n return -1;\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiScrolling, 'scrolling'),\n this.suiDirection,\n 'menu',\n 'transition',\n ClassUtils.getPropClass(!this.isOpen, 'hidden'),\n ClassUtils.getPropClass(this.isOpen, 'visible')\n ].join(' ');\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output,\n ViewChild, ViewEncapsulation\n} from '@angular/core';\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\nimport {SuiSelectMenuDirective} from './select-menu.directive';\nimport {ISelectOption} from './interfaces/ISelectOption';\n\n@Component({\n selector: 'sui-select',\n encapsulation: ViewEncapsulation.None,\n template: `\n <i class=\"dropdown icon\"></i>\n\n <!-- Multiple Select Display -->\n <ng-container *ngIf=\"suiMultiple\">\n <ng-container *ngFor=\"let option of selectedOptions\">\n <a class=\"ui label transition visible\"\n style=\"display: inline-block !important;\">\n <ng-container *ngIf=\"option.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"option.image.avatar\"\n [src]=\"option.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"option.flag\">\n <i [className]=\"'flag ' + option.flag\"></i>\n </ng-container>\n\n {{option.text}}\n\n <i class=\"delete icon\"\n (click)=\"removeSelection(option, $event)\"></i>\n </a>\n </ng-container>\n\n <div class=\"default text\">{{suiPlaceholder}}</div>\n </ng-container>\n\n <!-- Search Section -->\n <ng-container *ngIf=\"suiSearch\">\n <input class=\"search\"\n autocomplete=\"off\"\n tabindex=\"0\"\n [(ngModel)]=\"searchTerm\"\n (focus)=\"onClick()\"\n (keyup)=\"onSearch()\">\n </ng-container>\n\n <!-- Display Section -->\n <ng-container *ngIf=\"!suiMultiple\">\n <div\n [class.default]=\"isDefaultText\"\n [class.filtered]=\"isFilteredText\"\n [class.text]=\"true\">\n <ng-container *ngIf=\"selectedOption\">\n <ng-container *ngIf=\"selectedOption.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"selectedOption.image.avatar\"\n [src]=\"selectedOption.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"selectedOption.flag\">\n <i [className]=\"'flag ' + selectedOption.flag\"></i>\n </ng-container>\n\n {{selectedOption.text}}\n </ng-container>\n\n <ng-container *ngIf=\"!selectedOption\">\n {{suiPlaceholder}}\n </ng-container>\n </div>\n </ng-container>\n\n <!-- Drop Down Menu Section -->\n <div suiSelectMenu>\n <ng-container *ngFor=\"let option of filteredOptions\">\n <div suiSelectMenuItem\n [suiValue]=\"option.value\"\n [suiSelected]=\"isActive(option)\"\n [suiMultiple]=\"suiMultiple\"\n (click)=\"onItemClick(option, $event)\">\n <ng-container *ngIf=\"option.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"option.image.avatar\"\n [src]=\"option.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"option.flag\">\n <i [className]=\"'flag ' + option.flag\"></i>\n </ng-container>\n {{option.text}}\n </div>\n </ng-container>\n <ng-container *ngIf=\"hasNoSearchResults()\">\n <div class=\"message\"\n (click)=\"$event.stopPropagation()\">\n No results found.\n </div>\n </ng-container>\n </div>\n `,\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiSelectComponent),\n multi: true\n }]\n})\nexport class SuiSelectComponent implements AfterViewInit, ControlValueAccessor {\n @ViewChild(SuiSelectMenuDirective) public optionsMenu: SuiSelectMenuDirective;\n\n @Output() public suiSelectionChanged = new EventEmitter<any | Array<any>>();\n @Input() public suiPlaceholder: string = null;\n @Input() @InputBoolean() public suiSearch = false;\n @Input() @InputBoolean() public suiFluid = false;\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public suiLoading = false;\n @Input() @InputBoolean() public suiError = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() @InputBoolean() public suiScrolling = false;\n @Input() @InputBoolean() public suiCompact = false;\n @Input() @InputBoolean() public name: string = null;\n @Input() @InputBoolean() public suiMultiple = false;\n\n private isOpen = false;\n private isSearching = false;\n private selectedValues: Array<any> = [];\n public searchTerm: string;\n private allOptions: Array<ISelectOption> = [];\n public filteredOptions: Array<ISelectOption> = [];\n public selectedOption: ISelectOption;\n public selectedOptions: Array<ISelectOption> = [];\n\n private controlValueChangeFn: (value: any | Array<any>) => void = () => {\n }\n\n @Input()\n set suiOptions(options: Array<ISelectOption>) {\n this.allOptions = this.filteredOptions = options;\n }\n\n get suiOptions(): Array<ISelectOption> {\n return this.allOptions;\n }\n\n @HostBinding('tabindex')\n get tabIndex(): number {\n return 0;\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'ui',\n ClassUtils.getPropClass(this.suiFluid, 'fluid'),\n ClassUtils.getPropClass(this.suiCompact, 'compact'),\n ClassUtils.getPropClass(this.suiSearch, 'search'),\n ClassUtils.getPropClass(this.suiLoading, 'loading'),\n 'selection',\n ClassUtils.getPropClass(this.suiInline, 'inline'),\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n ClassUtils.getPropClass(this.suiScrolling, 'scrolling'),\n 'dropdown',\n ClassUtils.getPropClass(this.suiMultiple, 'multiple'),\n ClassUtils.getPropClass(this.isOpen, 'active'),\n ClassUtils.getPropClass(this.isOpen, 'visible'),\n ClassUtils.getPropClass(this.suiError, 'error')\n ].join(' ');\n }\n\n constructor(private changeDetectorRef: ChangeDetectorRef) {\n }\n\n public get multiple(): string | undefined {\n return this.suiMultiple ? '' : undefined;\n }\n\n public get isDefaultText(): boolean {\n if (!this.selectedOption) {\n return true;\n }\n\n if (this.suiSearch) {\n return false;\n }\n\n return !this.selectedOption;\n }\n\n public get isFilteredText(): boolean {\n if (!this.suiSearch) {\n return false;\n }\n\n return this.isSearching;\n }\n\n @HostListener('click')\n public onClick(): void {\n if (this.disabled) {\n return;\n }\n\n this.isOpen = !this.isOpen;\n\n // handle selection dropdown\n if (this.optionsMenu) {\n this.optionsMenu.suiIsOpen = this.isOpen;\n }\n }\n\n public ngAfterViewInit(): void {\n if (!this.optionsMenu) {\n throw new Error('An error occurred rendering the options.');\n }\n }\n\n public onSearch(): void {\n this.isSearching = !!this.searchTerm;\n\n // if the user is searching, then keep the dropdown open\n if (this.optionsMenu) {\n this.isOpen = true;\n this.optionsMenu.suiIsOpen = true;\n }\n\n // limit the options displayed\n this.filteredOptions = this.allOptions\n .filter((x) => x.text.toLocaleLowerCase()\n .includes(this.searchTerm.toLocaleLowerCase()));\n }\n\n public isActive(option: ISelectOption): boolean {\n if (this.suiMultiple) {\n return this.selectedValues.includes(option.value);\n } else {\n return this.selectedOption === option;\n }\n }\n\n public hasNoSearchResults(): boolean {\n if (!this.suiSearch) {\n return false;\n }\n\n return this.filteredOptions.length === 0;\n }\n\n public onItemClick(option: ISelectOption, event: Event): void {\n // handle single select\n if (!this.suiMultiple) {\n const valueChanged = this.selectedOption?.value !== option.value;\n this.selectedOption = option;\n\n if (valueChanged) {\n this.controlValueChangeFn(option.value);\n this.suiSelectionChanged.emit(option.value);\n }\n }\n\n // handle multiple select\n if (this.suiMultiple) {\n const valueChanged = !this.selectedValues.includes(option.value);\n\n if (valueChanged) {\n this.selectedValues.push(option.value);\n this.selectedOptions.push(option);\n\n this.controlValueChangeFn(this.selectedValues);\n this.suiSelectionChanged.emit(this.selectedValues);\n }\n\n event.stopPropagation();\n }\n\n // clear search\n this.isSearching = false;\n this.searchTerm = '';\n }\n\n public removeSelection(option: ISelectOption, event: Event): void {\n if (!this.suiMultiple) {\n return;\n }\n\n if (!this.selectedValues.includes(option.value)) {\n return;\n }\n\n this.selectedValues = this.selectedValues.filter((x) => x !== option.value);\n this.selectedOptions = this.selectedOptions.filter((x) => x !== option);\n\n this.controlValueChangeFn(this.selectedValues);\n this.suiSelectionChanged.emit(this.selectedValues);\n\n event.stopPropagation();\n }\n\n public writeValue(value: any | Array<any>): void {\n const valueChanged = value !== this.selectedOption?.value;\n\n if (valueChanged) {\n this.suiSelectionChanged.emit(value);\n }\n\n const matchedOptions = this.allOptions\n .filter((x) => x.value === value);\n this.selectedOption = matchedOptions[0];\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: any): void {\n this.controlValueChangeFn = fn;\n }\n\n public registerOnTouched(fn: any): void {\n }\n\n public setDisabledState?(isDisabled: boolean): void {\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {SuiSelectMenuItemDirective} from './select-menu-item.directive';\nimport {SuiSelectMenuDirective} from './select-menu.directive';\nimport {SuiSelectComponent} from './select.component';\n\n@NgModule({\n exports: [\n SuiSelectComponent,\n SuiSelectMenuDirective,\n SuiSelectMenuItemDirective\n ],\n imports: [\n FormsModule,\n CommonModule\n ],\n declarations: [\n SuiSelectComponent,\n SuiSelectMenuDirective,\n SuiSelectMenuItemDirective\n ]\n})\nexport class SuiSelectModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.SuiSelectMenuDirective","i4.SuiSelectMenuItemDirective"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-semantic-modules-select.mjs","sources":["../../src/modules/select/select-menu-item.directive.ts","../../src/modules/select/interfaces/ISelectOption.ts","../../src/modules/select/select-menu.directive.ts","../../src/modules/select/select.component.ts","../../src/modules/select/select.module.ts","../../src/modules/select/ngx-semantic-modules-select.ts"],"sourcesContent":["import {Directive, HostBinding, Input} from '@angular/core';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\n\n@Directive({\n selector: '[suiSelectMenuItem]'\n})\nexport class SuiSelectMenuItemDirective {\n @Input() public suiValue: any = null;\n @Input() @InputBoolean() public suiSelected = false;\n @Input() @InputBoolean() public suiMultiple = false;\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'item',\n ClassUtils.getPropClass(this.suiSelected, 'active'),\n ClassUtils.getPropClass(!this.suiMultiple && this.suiSelected, 'selected'),\n ClassUtils.getPropClass(this.suiMultiple && this.suiSelected, 'filtered')\n ].join(' ');\n }\n}\n","/**\n * Created by bolor on 11/2/2020\n */\n\nimport {ISelectOptionImage} from './ISelectOptionImage';\n\nexport interface ISelectOption {\n text: string;\n value: any;\n image?: ISelectOptionImage;\n flag?: string;\n}\n","import {Directive, HostBinding, Input} from '@angular/core';\nimport {ClassUtils, InputBoolean} from 'ngx-semantic/core/util';\n\nexport type SuiSelectMenuDirection = 'left' | 'right' | null;\n\n@Directive({\n selector: '[suiSelectMenu]'\n})\nexport class SuiSelectMenuDirective {\n @Input() public suiDirection: SuiSelectMenuDirection = null;\n @Input() @InputBoolean() public suiScrolling = false;\n\n private isOpen;\n\n @Input()\n set suiIsOpen(isOpen: boolean) {\n this.isOpen = isOpen;\n }\n\n get suiIsOpen(): boolean {\n return this.isOpen;\n }\n\n @HostBinding('tabindex')\n get tabIndex(): number {\n return -1;\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n ClassUtils.getPropClass(this.suiScrolling, 'scrolling'),\n this.suiDirection,\n 'menu',\n 'transition',\n ClassUtils.getPropClass(!this.isOpen, 'hidden'),\n ClassUtils.getPropClass(this.isOpen, 'visible')\n ].join(' ');\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ClassUtils, InputBoolean } from 'ngx-semantic/core/util';\nimport { SuiSelectMenuDirective } from './select-menu.directive';\nimport { ISelectOption } from './interfaces/ISelectOption';\n\n@Component({\n selector: 'sui-select',\n encapsulation: ViewEncapsulation.None,\n template: `\n <i class=\"dropdown icon\"></i>\n\n <!-- Multiple Select Display -->\n <ng-container *ngIf=\"suiMultiple\">\n <ng-container *ngFor=\"let option of selectedOptions\">\n <a class=\"ui label transition visible\"\n style=\"display: inline-block !important;\">\n <ng-container *ngIf=\"option.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"option.image.avatar\"\n [src]=\"option.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"option.flag\">\n <i [className]=\"'flag ' + option.flag\"></i>\n </ng-container>\n\n {{ option.text }}\n\n <i class=\"delete icon\"\n (click)=\"removeSelection(option, $event)\"></i>\n </a>\n </ng-container>\n\n <div class=\"default text\">{{ suiPlaceholder }}</div>\n </ng-container>\n\n <!-- Search Section -->\n <ng-container *ngIf=\"suiSearch\">\n <input class=\"search\"\n autocomplete=\"off\"\n tabindex=\"0\"\n [(ngModel)]=\"searchTerm\"\n (focus)=\"onClick()\"\n (keyup)=\"onSearch()\">\n </ng-container>\n\n <!-- Display Section -->\n <ng-container *ngIf=\"!suiMultiple\">\n <div\n [class.default]=\"isDefaultText\"\n [class.filtered]=\"isFilteredText\"\n [class.text]=\"true\">\n <ng-container *ngIf=\"selectedOption\">\n <ng-container *ngIf=\"selectedOption.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"selectedOption.image.avatar\"\n [src]=\"selectedOption.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"selectedOption.flag\">\n <i [className]=\"'flag ' + selectedOption.flag\"></i>\n </ng-container>\n\n {{ selectedOption.text }}\n </ng-container>\n\n <ng-container *ngIf=\"!selectedOption\">\n {{ suiPlaceholder }}\n </ng-container>\n </div>\n </ng-container>\n\n <!-- Drop Down Menu Section -->\n <div suiSelectMenu>\n <ng-container *ngFor=\"let option of filteredOptions\">\n <div suiSelectMenuItem\n [suiValue]=\"option.value\"\n [suiSelected]=\"isActive(option)\"\n [suiMultiple]=\"suiMultiple\"\n (click)=\"onItemClick(option, $event)\">\n <ng-container *ngIf=\"option.image\">\n <img class=\"ui mini image\"\n [class.avatar]=\"option.image.avatar\"\n [src]=\"option.image.src\"/>\n </ng-container>\n <ng-container *ngIf=\"option.flag\">\n <i [className]=\"'flag ' + option.flag\"></i>\n </ng-container>\n {{ option.text }}\n </div>\n </ng-container>\n <ng-container *ngIf=\"hasNoSearchResults()\">\n <div class=\"message\"\n (click)=\"$event.stopPropagation()\">\n No results found.\n </div>\n </ng-container>\n </div>\n `,\n providers: [ {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SuiSelectComponent),\n multi: true\n } ]\n})\nexport class SuiSelectComponent implements AfterViewInit, ControlValueAccessor {\n @ViewChild(SuiSelectMenuDirective) public optionsMenu: SuiSelectMenuDirective;\n\n @Output() public suiSelectionChanged = new EventEmitter<any | Array<any>>();\n @Input() public suiPlaceholder: string = null;\n @Input() @InputBoolean() public suiSearch = false;\n @Input() @InputBoolean() public suiFluid = false;\n @Input() @InputBoolean() public suiInline = false;\n @Input() @InputBoolean() public suiLoading = false;\n @Input() @InputBoolean() public suiError = false;\n @Input() @InputBoolean() public disabled = false;\n @Input() @InputBoolean() public suiScrolling = false;\n @Input() @InputBoolean() public suiCompact = false;\n @Input() @InputBoolean() public name: string = null;\n @Input() @InputBoolean() public suiMultiple = false;\n\n private isOpen = false;\n private isSearching = false;\n private selectedValues: Array<any> = [];\n public searchTerm: string;\n private allOptions: Array<ISelectOption> = [];\n public filteredOptions: Array<ISelectOption> = [];\n public selectedOption: ISelectOption;\n public selectedOptions: Array<ISelectOption> = [];\n\n private controlValueChangeFn: (value: any | Array<any>) => void = () => {\n }\n\n @Input()\n set suiOptions(options: Array<ISelectOption>) {\n this.allOptions = this.filteredOptions = options;\n }\n\n get suiOptions(): Array<ISelectOption> {\n return this.allOptions;\n }\n\n @HostBinding('tabindex')\n get tabIndex(): number {\n return 0;\n }\n\n @HostBinding('class')\n get classes(): string {\n return [\n 'ui',\n ClassUtils.getPropClass(this.suiFluid, 'fluid'),\n ClassUtils.getPropClass(this.suiCompact, 'compact'),\n ClassUtils.getPropClass(this.suiSearch, 'search'),\n ClassUtils.getPropClass(this.suiLoading, 'loading'),\n 'selection',\n ClassUtils.getPropClass(this.suiInline, 'inline'),\n ClassUtils.getPropClass(this.disabled, 'disabled'),\n ClassUtils.getPropClass(this.suiScrolling, 'scrolling'),\n 'dropdown',\n ClassUtils.getPropClass(this.suiMultiple, 'multiple'),\n ClassUtils.getPropClass(this.isOpen, 'active'),\n ClassUtils.getPropClass(this.isOpen, 'visible'),\n ClassUtils.getPropClass(this.suiError, 'error')\n ].join(' ');\n }\n\n constructor(private changeDetectorRef: ChangeDetectorRef) {\n }\n\n public get multiple(): string | undefined {\n return this.suiMultiple ? '' : undefined;\n }\n\n public get isDefaultText(): boolean {\n if (!this.selectedOption) {\n return true;\n }\n\n if (this.suiSearch) {\n return false;\n }\n\n return !this.selectedOption;\n }\n\n public get isFilteredText(): boolean {\n if (!this.suiSearch) {\n return false;\n }\n\n return this.isSearching;\n }\n\n @HostListener('click')\n public onClick(): void {\n if (this.disabled) {\n return;\n }\n\n this.isOpen = !this.isOpen;\n\n // handle selection dropdown\n if (this.optionsMenu) {\n this.optionsMenu.suiIsOpen = this.isOpen;\n }\n }\n\n public ngAfterViewInit(): void {\n if (!this.optionsMenu) {\n throw new Error('An error occurred rendering the options.');\n }\n }\n\n public onSearch(): void {\n this.isSearching = !!this.searchTerm;\n\n // if the user is searching, then keep the dropdown open\n if (this.optionsMenu) {\n this.isOpen = true;\n this.optionsMenu.suiIsOpen = true;\n }\n\n // limit the options displayed\n this.filteredOptions = this.allOptions\n .filter((x) => x.text.toLocaleLowerCase()\n .includes(this.searchTerm.toLocaleLowerCase()));\n }\n\n public isActive(option: ISelectOption): boolean {\n if (this.suiMultiple) {\n return this.selectedValues.includes(option.value);\n } else {\n return this.selectedOption === option;\n }\n }\n\n public hasNoSearchResults(): boolean {\n if (!this.suiSearch) {\n return false;\n }\n\n return this.filteredOptions.length === 0;\n }\n\n public onItemClick(option: ISelectOption, event: Event): void {\n // handle single select\n if (!this.suiMultiple) {\n const valueChanged = this.selectedOption?.value !== option.value;\n this.selectedOption = option;\n\n if (valueChanged) {\n this.controlValueChangeFn(option.value);\n this.suiSelectionChanged.emit(option.value);\n }\n }\n\n // handle multiple select\n if (this.suiMultiple) {\n const valueChanged = !this.selectedValues.includes(option.value);\n\n if (valueChanged) {\n this.selectedValues.push(option.value);\n this.selectedOptions.push(option);\n\n this.controlValueChangeFn(this.selectedValues);\n this.suiSelectionChanged.emit(this.selectedValues);\n }\n\n event.stopPropagation();\n }\n\n // clear search\n this.isSearching = false;\n this.searchTerm = '';\n }\n\n public removeSelection(option: ISelectOption, event: Event): void {\n if (!this.suiMultiple) {\n return;\n }\n\n if (!this.selectedValues.includes(option.value)) {\n return;\n }\n\n this.selectedValues = this.selectedValues.filter((x) => x !== option.value);\n this.selectedOptions = this.selectedOptions.filter((x) => x !== option);\n\n this.controlValueChangeFn(this.selectedValues);\n this.suiSelectionChanged.emit(this.selectedValues);\n\n event.stopPropagation();\n }\n\n public writeValue(value: any | Array<any>): void {\n const valueChanged = value !== this.selectedOption?.value;\n\n if (valueChanged) {\n this.suiSelectionChanged.emit(value);\n }\n\n const matchedOptions = this.allOptions\n .filter((x) => x.value === value);\n this.selectedOption = matchedOptions[0];\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: any): void {\n this.controlValueChangeFn = fn;\n }\n\n public registerOnTouched(fn: any): void {\n }\n\n public setDisabledState?(isDisabled: boolean): void {\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {SuiSelectMenuItemDirective} from './select-menu-item.directive';\nimport {SuiSelectMenuDirective} from './select-menu.directive';\nimport {SuiSelectComponent} from './select.component';\n\n@NgModule({\n exports: [\n SuiSelectComponent,\n SuiSelectMenuDirective,\n SuiSelectMenuItemDirective\n ],\n imports: [\n FormsModule,\n CommonModule\n ],\n declarations: [\n SuiSelectComponent,\n SuiSelectMenuDirective,\n SuiSelectMenuItemDirective\n ]\n})\nexport class SuiSelectModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.SuiSelectMenuDirective","i4.SuiSelectMenuItemDirective"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ngx-semantic",
3
3
  "description": "This package is intended to bring the latest Angular support for Semantic UI",
4
- "version": "2.0.3-beta.4",
4
+ "version": "2.0.3-beta.5",
5
5
  "license": "MIT",
6
6
  "keywords": [
7
7
  "ngx",