@apipass/inputs 0.1.2 → 0.1.6-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/apipass-inputs.d.ts +5 -6
- package/assets/css/buttons.scss +112 -112
- package/assets/css/colors.scss +34 -34
- package/assets/css/fonts.scss +24 -24
- package/assets/css/inputs.scss +197 -197
- package/assets/css/pt_sans.scss +143 -143
- package/assets/css/spacing.scss +28 -28
- package/assets/css/texts.scss +18 -18
- package/bundles/apipass-inputs.umd.js +1855 -1011
- package/bundles/apipass-inputs.umd.js.map +1 -1
- package/bundles/apipass-inputs.umd.min.js +2 -2
- package/bundles/apipass-inputs.umd.min.js.map +1 -1
- package/custom-select/custom-select-item.d.ts +5 -5
- package/custom-select/custom-select.component.d.ts +41 -38
- package/esm2015/apipass-inputs.js +5 -7
- package/esm2015/custom-select/custom-select-item.js +7 -7
- package/esm2015/custom-select/custom-select.component.js +254 -147
- package/esm2015/field/field.component.js +94 -33
- package/esm2015/input-avatar/input-avatar.component.js +167 -77
- package/esm2015/input-file/input-file.component.js +133 -0
- package/esm2015/input-password/input-password.component.js +159 -75
- package/esm2015/input-text/input-text.component.js +118 -50
- package/esm2015/inputs.module.js +121 -68
- package/esm2015/public-api.js +11 -10
- package/esm2015/select-box/mat-select-infinite-scroll.directive.js +86 -83
- package/esm2015/select-box/select-box.component.js +227 -132
- package/esm2015/select-enum/select-enum.component.js +97 -38
- package/esm2015/value-acessor-base.js +31 -31
- package/fesm2015/apipass-inputs.js +1402 -696
- package/fesm2015/apipass-inputs.js.map +1 -1
- package/field/field.component.d.ts +15 -12
- package/input-avatar/input-avatar.component.d.ts +29 -26
- package/input-file/input-file.component.d.ts +31 -0
- package/input-password/input-password.component.d.ts +29 -26
- package/input-text/input-text.component.d.ts +17 -14
- package/inputs.module.d.ts +29 -2
- package/package.json +13 -11
- package/public-api.d.ts +10 -9
- package/select-box/mat-select-infinite-scroll.directive.d.ts +26 -23
- package/select-box/select-box.component.d.ts +43 -40
- package/select-enum/select-enum.component.d.ts +12 -9
- package/value-acessor-base.d.ts +13 -13
- package/apipass-inputs.metadata.json +0 -1
package/esm2015/inputs.module.js
CHANGED
|
@@ -1,68 +1,121 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { FormsModule } from '@angular/forms';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { SelectEnumComponent } from './select-enum/select-enum.component';
|
|
5
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
6
|
-
import { MatInputModule } from '@angular/material/input';
|
|
7
|
-
import { MatSelectModule } from '@angular/material/select';
|
|
8
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
9
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
10
|
-
import { InputPasswordComponent } from './input-password/input-password.component';
|
|
11
|
-
import { InputTextComponent } from './input-text/input-text.component';
|
|
12
|
-
import { InputAvatarComponent } from './input-avatar/input-avatar.component';
|
|
13
|
-
import { FieldComponent } from './field/field.component';
|
|
14
|
-
import { SelectBoxComponent } from './select-box/select-box.component';
|
|
15
|
-
import { MatSelectFilterModule } from 'mat-select-filter';
|
|
16
|
-
import { MatSelectInfiniteScrollDirective } from './select-box/mat-select-infinite-scroll.directive';
|
|
17
|
-
import { NgSelectModule } from '@ng-select/ng-select';
|
|
18
|
-
import { CustomSelectComponent } from './custom-select/custom-select.component';
|
|
19
|
-
import { DndModule } from 'ngx-drag-drop';
|
|
20
|
-
import { IconsModule } from '@apipass/icons';
|
|
21
|
-
import { PipeModule } from '@apipass/pipes';
|
|
22
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
23
|
-
import { RouterModule } from '@angular/router';
|
|
24
|
-
import { MatPasswordStrengthModule } from '@angular-material-extensions/password-strength';
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { FormsModule } from '@angular/forms';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { SelectEnumComponent } from './select-enum/select-enum.component';
|
|
5
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
6
|
+
import { MatInputModule } from '@angular/material/input';
|
|
7
|
+
import { MatSelectModule } from '@angular/material/select';
|
|
8
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
9
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
10
|
+
import { InputPasswordComponent } from './input-password/input-password.component';
|
|
11
|
+
import { InputTextComponent } from './input-text/input-text.component';
|
|
12
|
+
import { InputAvatarComponent } from './input-avatar/input-avatar.component';
|
|
13
|
+
import { FieldComponent } from './field/field.component';
|
|
14
|
+
import { SelectBoxComponent } from './select-box/select-box.component';
|
|
15
|
+
import { MatSelectFilterModule } from 'mat-select-filter';
|
|
16
|
+
import { MatSelectInfiniteScrollDirective } from './select-box/mat-select-infinite-scroll.directive';
|
|
17
|
+
import { NgSelectModule } from '@ng-select/ng-select';
|
|
18
|
+
import { CustomSelectComponent } from './custom-select/custom-select.component';
|
|
19
|
+
import { DndModule } from 'ngx-drag-drop';
|
|
20
|
+
import { IconsModule } from '@apipass/icons';
|
|
21
|
+
import { PipeModule } from '@apipass/pipes';
|
|
22
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
23
|
+
import { RouterModule } from '@angular/router';
|
|
24
|
+
import { MatPasswordStrengthModule } from '@angular-material-extensions/password-strength';
|
|
25
|
+
import { InputFileComponent } from './input-file/input-file.component';
|
|
26
|
+
import * as i0 from "@angular/core";
|
|
27
|
+
import * as i1 from "@angular/router";
|
|
28
|
+
export class InputsModule {
|
|
29
|
+
}
|
|
30
|
+
InputsModule.ɵmod = i0.ɵɵdefineNgModule({ type: InputsModule });
|
|
31
|
+
InputsModule.ɵinj = i0.ɵɵdefineInjector({ factory: function InputsModule_Factory(t) { return new (t || InputsModule)(); }, providers: [], imports: [[
|
|
32
|
+
RouterModule.forChild([]),
|
|
33
|
+
CommonModule,
|
|
34
|
+
FormsModule,
|
|
35
|
+
MatFormFieldModule,
|
|
36
|
+
MatInputModule,
|
|
37
|
+
MatPasswordStrengthModule,
|
|
38
|
+
MatSelectModule,
|
|
39
|
+
MatSelectFilterModule,
|
|
40
|
+
NgSelectModule,
|
|
41
|
+
PipeModule,
|
|
42
|
+
MatIconModule,
|
|
43
|
+
TranslateModule,
|
|
44
|
+
IconsModule,
|
|
45
|
+
MatTooltipModule,
|
|
46
|
+
DndModule,
|
|
47
|
+
]] });
|
|
48
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(InputsModule, { declarations: [MatSelectInfiniteScrollDirective,
|
|
49
|
+
SelectBoxComponent,
|
|
50
|
+
SelectEnumComponent,
|
|
51
|
+
InputTextComponent,
|
|
52
|
+
InputPasswordComponent,
|
|
53
|
+
InputAvatarComponent,
|
|
54
|
+
InputFileComponent,
|
|
55
|
+
CustomSelectComponent,
|
|
56
|
+
FieldComponent], imports: [i1.RouterModule, CommonModule,
|
|
57
|
+
FormsModule,
|
|
58
|
+
MatFormFieldModule,
|
|
59
|
+
MatInputModule,
|
|
60
|
+
MatPasswordStrengthModule,
|
|
61
|
+
MatSelectModule,
|
|
62
|
+
MatSelectFilterModule,
|
|
63
|
+
NgSelectModule,
|
|
64
|
+
PipeModule,
|
|
65
|
+
MatIconModule,
|
|
66
|
+
TranslateModule,
|
|
67
|
+
IconsModule,
|
|
68
|
+
MatTooltipModule,
|
|
69
|
+
DndModule], exports: [SelectBoxComponent,
|
|
70
|
+
SelectEnumComponent,
|
|
71
|
+
InputTextComponent,
|
|
72
|
+
InputPasswordComponent,
|
|
73
|
+
InputAvatarComponent,
|
|
74
|
+
InputFileComponent,
|
|
75
|
+
CustomSelectComponent,
|
|
76
|
+
FieldComponent] }); })();
|
|
77
|
+
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(InputsModule, [{
|
|
78
|
+
type: NgModule,
|
|
79
|
+
args: [{
|
|
80
|
+
imports: [
|
|
81
|
+
RouterModule.forChild([]),
|
|
82
|
+
CommonModule,
|
|
83
|
+
FormsModule,
|
|
84
|
+
MatFormFieldModule,
|
|
85
|
+
MatInputModule,
|
|
86
|
+
MatPasswordStrengthModule,
|
|
87
|
+
MatSelectModule,
|
|
88
|
+
MatSelectFilterModule,
|
|
89
|
+
NgSelectModule,
|
|
90
|
+
PipeModule,
|
|
91
|
+
MatIconModule,
|
|
92
|
+
TranslateModule,
|
|
93
|
+
IconsModule,
|
|
94
|
+
MatTooltipModule,
|
|
95
|
+
DndModule,
|
|
96
|
+
],
|
|
97
|
+
declarations: [
|
|
98
|
+
MatSelectInfiniteScrollDirective,
|
|
99
|
+
SelectBoxComponent,
|
|
100
|
+
SelectEnumComponent,
|
|
101
|
+
InputTextComponent,
|
|
102
|
+
InputPasswordComponent,
|
|
103
|
+
InputAvatarComponent,
|
|
104
|
+
InputFileComponent,
|
|
105
|
+
CustomSelectComponent,
|
|
106
|
+
FieldComponent
|
|
107
|
+
],
|
|
108
|
+
exports: [
|
|
109
|
+
SelectBoxComponent,
|
|
110
|
+
SelectEnumComponent,
|
|
111
|
+
InputTextComponent,
|
|
112
|
+
InputPasswordComponent,
|
|
113
|
+
InputAvatarComponent,
|
|
114
|
+
InputFileComponent,
|
|
115
|
+
CustomSelectComponent,
|
|
116
|
+
FieldComponent
|
|
117
|
+
],
|
|
118
|
+
providers: [],
|
|
119
|
+
}]
|
|
120
|
+
}], null, null); })();
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvaW5wdXRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDeEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3hELE9BQU8sRUFBQyxnQ0FBZ0MsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ25HLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUN6RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQzs7O0FBMkNyRSxNQUFNLE9BQU8sWUFBWTs7Z0RBQVosWUFBWTt1R0FBWixZQUFZLG1CQUZaLEVBQUUsWUF0Q0o7WUFDUCxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUN6QixZQUFZO1lBQ1osV0FBVztZQUNYLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QseUJBQXlCO1lBQ3pCLGVBQWU7WUFDZixxQkFBcUI7WUFDckIsY0FBYztZQUNkLFVBQVU7WUFDVixhQUFhO1lBQ2IsZUFBZTtZQUNmLFdBQVc7WUFDWCxnQkFBZ0I7WUFDaEIsU0FBUztTQUNWO3dGQXdCVSxZQUFZLG1CQXRCckIsZ0NBQWdDO1FBQ2hDLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLHNCQUFzQjtRQUN0QixvQkFBb0I7UUFDcEIsa0JBQWtCO1FBQ2xCLHFCQUFxQjtRQUNyQixjQUFjLDhCQXhCZCxZQUFZO1FBQ1osV0FBVztRQUNYLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QseUJBQXlCO1FBQ3pCLGVBQWU7UUFDZixxQkFBcUI7UUFDckIsY0FBYztRQUNkLFVBQVU7UUFDVixhQUFhO1FBQ2IsZUFBZTtRQUNmLFdBQVc7UUFDWCxnQkFBZ0I7UUFDaEIsU0FBUyxhQWNULGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLHNCQUFzQjtRQUN0QixvQkFBb0I7UUFDcEIsa0JBQWtCO1FBQ2xCLHFCQUFxQjtRQUNyQixjQUFjO2tEQUlMLFlBQVk7Y0F6Q3hCLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7b0JBQ3pCLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QseUJBQXlCO29CQUN6QixlQUFlO29CQUNmLHFCQUFxQjtvQkFDckIsY0FBYztvQkFDZCxVQUFVO29CQUNWLGFBQWE7b0JBQ2IsZUFBZTtvQkFDZixXQUFXO29CQUNYLGdCQUFnQjtvQkFDaEIsU0FBUztpQkFDVjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1osZ0NBQWdDO29CQUNoQyxrQkFBa0I7b0JBQ2xCLG1CQUFtQjtvQkFDbkIsa0JBQWtCO29CQUNsQixzQkFBc0I7b0JBQ3RCLG9CQUFvQjtvQkFDcEIsa0JBQWtCO29CQUNsQixxQkFBcUI7b0JBQ3JCLGNBQWM7aUJBQ2Y7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLGtCQUFrQjtvQkFDbEIsbUJBQW1CO29CQUNuQixrQkFBa0I7b0JBQ2xCLHNCQUFzQjtvQkFDdEIsb0JBQW9CO29CQUNwQixrQkFBa0I7b0JBQ2xCLHFCQUFxQjtvQkFDckIsY0FBYztpQkFDZjtnQkFDRCxTQUFTLEVBQUUsRUFBRTthQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7U2VsZWN0RW51bUNvbXBvbmVudH0gZnJvbSAnLi9zZWxlY3QtZW51bS9zZWxlY3QtZW51bS5jb21wb25lbnQnO1xuaW1wb3J0IHtNYXRGb3JtRmllbGRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHtNYXRJbnB1dE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHtNYXRTZWxlY3RNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQge01hdEljb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHtNYXRUb29sdGlwTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7SW5wdXRQYXNzd29yZENvbXBvbmVudH0gZnJvbSAnLi9pbnB1dC1wYXNzd29yZC9pbnB1dC1wYXNzd29yZC5jb21wb25lbnQnO1xuaW1wb3J0IHtJbnB1dFRleHRDb21wb25lbnR9IGZyb20gJy4vaW5wdXQtdGV4dC9pbnB1dC10ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQge0lucHV0QXZhdGFyQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWF2YXRhci9pbnB1dC1hdmF0YXIuY29tcG9uZW50JztcbmltcG9ydCB7RmllbGRDb21wb25lbnR9IGZyb20gJy4vZmllbGQvZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7U2VsZWN0Qm94Q29tcG9uZW50fSBmcm9tICcuL3NlbGVjdC1ib3gvc2VsZWN0LWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHtNYXRTZWxlY3RGaWx0ZXJNb2R1bGV9IGZyb20gJ21hdC1zZWxlY3QtZmlsdGVyJztcbmltcG9ydCB7TWF0U2VsZWN0SW5maW5pdGVTY3JvbGxEaXJlY3RpdmV9IGZyb20gJy4vc2VsZWN0LWJveC9tYXQtc2VsZWN0LWluZmluaXRlLXNjcm9sbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtOZ1NlbGVjdE1vZHVsZX0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnO1xuaW1wb3J0IHtDdXN0b21TZWxlY3RDb21wb25lbnR9IGZyb20gJy4vY3VzdG9tLXNlbGVjdC9jdXN0b20tc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge0RuZE1vZHVsZX0gZnJvbSAnbmd4LWRyYWctZHJvcCc7XG5pbXBvcnQge0ljb25zTW9kdWxlfSBmcm9tICdAYXBpcGFzcy9pY29ucyc7XG5pbXBvcnQge1BpcGVNb2R1bGV9IGZyb20gJ0BhcGlwYXNzL3BpcGVzJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Um91dGVyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtNYXRQYXNzd29yZFN0cmVuZ3RoTW9kdWxlfSBmcm9tICdAYW5ndWxhci1tYXRlcmlhbC1leHRlbnNpb25zL3Bhc3N3b3JkLXN0cmVuZ3RoJztcbmltcG9ydCB7SW5wdXRGaWxlQ29tcG9uZW50fSBmcm9tICcuL2lucHV0LWZpbGUvaW5wdXQtZmlsZS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgUm91dGVyTW9kdWxlLmZvckNoaWxkKFtdKSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdFBhc3N3b3JkU3RyZW5ndGhNb2R1bGUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIE1hdFNlbGVjdEZpbHRlck1vZHVsZSxcbiAgICBOZ1NlbGVjdE1vZHVsZSxcbiAgICBQaXBlTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIEljb25zTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgRG5kTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBNYXRTZWxlY3RJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSxcbiAgICBTZWxlY3RCb3hDb21wb25lbnQsXG4gICAgU2VsZWN0RW51bUNvbXBvbmVudCxcbiAgICBJbnB1dFRleHRDb21wb25lbnQsXG4gICAgSW5wdXRQYXNzd29yZENvbXBvbmVudCxcbiAgICBJbnB1dEF2YXRhckNvbXBvbmVudCxcbiAgICBJbnB1dEZpbGVDb21wb25lbnQsXG4gICAgQ3VzdG9tU2VsZWN0Q29tcG9uZW50LFxuICAgIEZpZWxkQ29tcG9uZW50XG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBTZWxlY3RCb3hDb21wb25lbnQsXG4gICAgU2VsZWN0RW51bUNvbXBvbmVudCxcbiAgICBJbnB1dFRleHRDb21wb25lbnQsXG4gICAgSW5wdXRQYXNzd29yZENvbXBvbmVudCxcbiAgICBJbnB1dEF2YXRhckNvbXBvbmVudCxcbiAgICBJbnB1dEZpbGVDb21wb25lbnQsXG4gICAgQ3VzdG9tU2VsZWN0Q29tcG9uZW50LFxuICAgIEZpZWxkQ29tcG9uZW50XG4gIF0sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIElucHV0c01vZHVsZSB7XG59XG4iXX0=
|
package/esm2015/public-api.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
export * from './inputs.module';
|
|
2
|
-
export * from './custom-select/custom-select.component';
|
|
3
|
-
export * from './custom-select/custom-select-item';
|
|
4
|
-
export * from './field/field.component';
|
|
5
|
-
export * from './input-avatar/input-avatar.component';
|
|
6
|
-
export * from './input-
|
|
7
|
-
export * from './input-
|
|
8
|
-
export * from './
|
|
9
|
-
export * from './select-
|
|
10
|
-
|
|
1
|
+
export * from './inputs.module';
|
|
2
|
+
export * from './custom-select/custom-select.component';
|
|
3
|
+
export * from './custom-select/custom-select-item';
|
|
4
|
+
export * from './field/field.component';
|
|
5
|
+
export * from './input-avatar/input-avatar.component';
|
|
6
|
+
export * from './input-file/input-file.component';
|
|
7
|
+
export * from './input-password/input-password.component';
|
|
8
|
+
export * from './input-text/input-text.component';
|
|
9
|
+
export * from './select-box/select-box.component';
|
|
10
|
+
export * from './select-enum/select-enum.component';
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pbnB1dHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY3VzdG9tLXNlbGVjdC9jdXN0b20tc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2N1c3RvbS1zZWxlY3QvY3VzdG9tLXNlbGVjdC1pdGVtJztcbmV4cG9ydCAqIGZyb20gJy4vZmllbGQvZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtYXZhdGFyL2lucHV0LWF2YXRhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1maWxlL2lucHV0LWZpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtcGFzc3dvcmQvaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtdGV4dC9pbnB1dC10ZXh0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdC1ib3gvc2VsZWN0LWJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QtZW51bS9zZWxlY3QtZW51bS5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,83 +1,86 @@
|
|
|
1
|
-
import { Directive, EventEmitter, Input, NgZone, Output } from '@angular/core';
|
|
2
|
-
import { MatSelect } from '@angular/material/select';
|
|
3
|
-
import { debounceTime, takeUntil, tap } from 'rxjs/operators';
|
|
4
|
-
import { fromEvent, Subject } from 'rxjs';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
this.
|
|
12
|
-
this.
|
|
13
|
-
this.
|
|
14
|
-
this.
|
|
15
|
-
this.
|
|
16
|
-
this.
|
|
17
|
-
this.
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
this.
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
const
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
]
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
1
|
+
import { Directive, EventEmitter, Input, NgZone, Output } from '@angular/core';
|
|
2
|
+
import { MatSelect } from '@angular/material/select';
|
|
3
|
+
import { debounceTime, takeUntil, tap } from 'rxjs/operators';
|
|
4
|
+
import { fromEvent, Subject } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/material/select";
|
|
7
|
+
/** The height of the select items in `em` units. */
|
|
8
|
+
const SELECT_ITEM_HEIGHT_EM = 3;
|
|
9
|
+
export class MatSelectInfiniteScrollDirective {
|
|
10
|
+
constructor(matSelect, ngZone) {
|
|
11
|
+
this.matSelect = matSelect;
|
|
12
|
+
this.ngZone = ngZone;
|
|
13
|
+
this.threshold = '15%';
|
|
14
|
+
this.debounceTime = 150;
|
|
15
|
+
this.infiniteScroll = new EventEmitter();
|
|
16
|
+
this.thrPx = 0;
|
|
17
|
+
this.thrPc = 0;
|
|
18
|
+
this.singleOptionHeight = SELECT_ITEM_HEIGHT_EM;
|
|
19
|
+
this.destroyed$ = new Subject();
|
|
20
|
+
}
|
|
21
|
+
ngOnInit() {
|
|
22
|
+
this.evaluateThreshold();
|
|
23
|
+
}
|
|
24
|
+
ngAfterViewInit() {
|
|
25
|
+
this.matSelect.openedChange.pipe(takeUntil(this.destroyed$)).subscribe((opened) => {
|
|
26
|
+
if (opened) {
|
|
27
|
+
this.panel = this.matSelect.panel.nativeElement;
|
|
28
|
+
this.singleOptionHeight = this.getSelectItemHeightPx();
|
|
29
|
+
this.registerScrollListener();
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
ngOnDestroy() {
|
|
34
|
+
this.destroyed$.next(true);
|
|
35
|
+
this.destroyed$.complete();
|
|
36
|
+
}
|
|
37
|
+
evaluateThreshold() {
|
|
38
|
+
if (this.threshold.lastIndexOf('%') > -1) {
|
|
39
|
+
this.thrPx = 0;
|
|
40
|
+
this.thrPc = (parseFloat(this.threshold) / 100);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
this.thrPx = parseFloat(this.threshold);
|
|
44
|
+
this.thrPc = 0;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
registerScrollListener() {
|
|
48
|
+
fromEvent(this.panel, 'scroll').pipe(takeUntil(this.destroyed$), debounceTime(this.debounceTime), tap((event) => {
|
|
49
|
+
this.handleScrollEvent(event);
|
|
50
|
+
})).subscribe();
|
|
51
|
+
}
|
|
52
|
+
handleScrollEvent(event) {
|
|
53
|
+
this.ngZone.runOutsideAngular(() => {
|
|
54
|
+
if (this.complete) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
const countOfRenderedOptions = this.matSelect.options.length;
|
|
58
|
+
const infiniteScrollDistance = this.singleOptionHeight * countOfRenderedOptions;
|
|
59
|
+
const threshold = this.thrPc !== 0 ? (infiniteScrollDistance * this.thrPc) : this.thrPx;
|
|
60
|
+
const scrolledDistance = this.panel.clientHeight + event.target.scrollTop;
|
|
61
|
+
if ((scrolledDistance + threshold) >= infiniteScrollDistance) {
|
|
62
|
+
this.ngZone.run(() => this.infiniteScroll.emit());
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
getSelectItemHeightPx() {
|
|
67
|
+
return parseFloat(getComputedStyle(this.panel).fontSize) * SELECT_ITEM_HEIGHT_EM;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
MatSelectInfiniteScrollDirective.ɵfac = function MatSelectInfiniteScrollDirective_Factory(t) { return new (t || MatSelectInfiniteScrollDirective)(i0.ɵɵdirectiveInject(i1.MatSelect), i0.ɵɵdirectiveInject(i0.NgZone)); };
|
|
71
|
+
MatSelectInfiniteScrollDirective.ɵdir = i0.ɵɵdefineDirective({ type: MatSelectInfiniteScrollDirective, selectors: [["", "msInfiniteScroll", ""]], inputs: { threshold: "threshold", debounceTime: "debounceTime", complete: "complete" }, outputs: { infiniteScroll: "infiniteScroll" } });
|
|
72
|
+
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(MatSelectInfiniteScrollDirective, [{
|
|
73
|
+
type: Directive,
|
|
74
|
+
args: [{
|
|
75
|
+
selector: '[msInfiniteScroll]'
|
|
76
|
+
}]
|
|
77
|
+
}], function () { return [{ type: i1.MatSelect }, { type: i0.NgZone }]; }, { threshold: [{
|
|
78
|
+
type: Input
|
|
79
|
+
}], debounceTime: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], complete: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], infiniteScroll: [{
|
|
84
|
+
type: Output
|
|
85
|
+
}] }); })();
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LXNlbGVjdC1pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9zZWxlY3QtYm94L21hdC1zZWxlY3QtaW5maW5pdGUtc2Nyb2xsLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBcUIsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RCxPQUFPLEVBQUMsU0FBUyxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQzs7O0FBRXhDLG9EQUFvRDtBQUNwRCxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQztBQUtoQyxNQUFNLE9BQU8sZ0NBQWdDO0lBYzNDLFlBQW9CLFNBQW9CLEVBQVUsTUFBYztRQUE1QyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVp2RCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsR0FBRyxDQUFDO1FBRWxCLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUc1QyxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLHVCQUFrQixHQUFHLHFCQUFxQixDQUFDO1FBRTNDLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO0lBRzVDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQzlCLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQzNCLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDckIsSUFBSSxNQUFNLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUM7Z0JBQ2hELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztnQkFDdkQsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7YUFDL0I7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtZQUN4QyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztZQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1NBRWpEO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7U0FDaEI7SUFDSCxDQUFDO0lBRUQsc0JBQXNCO1FBQ3BCLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDbEMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFDMUIsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFDL0IsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDWixJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQ0gsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBVTtRQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUNqQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLE9BQU87YUFDUjtZQUNELE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQzdELE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixHQUFHLHNCQUFzQixDQUFDO1lBQ2hGLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUV4RixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO1lBRTFFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsSUFBSSxzQkFBc0IsRUFBRTtnQkFDNUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO2FBQ25EO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLE9BQU8sVUFBVSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxxQkFBcUIsQ0FBQztJQUNuRixDQUFDOztnSEE5RVUsZ0NBQWdDO3FFQUFoQyxnQ0FBZ0M7a0RBQWhDLGdDQUFnQztjQUg1QyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjthQUMvQjtpRkFHVSxTQUFTO2tCQUFqQixLQUFLO1lBQ0csWUFBWTtrQkFBcEIsS0FBSztZQUNHLFFBQVE7a0JBQWhCLEtBQUs7WUFDSSxjQUFjO2tCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01hdFNlbGVjdH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCB0YWtlVW50aWwsIHRhcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuXG4vKiogVGhlIGhlaWdodCBvZiB0aGUgc2VsZWN0IGl0ZW1zIGluIGBlbWAgdW5pdHMuICovXG5jb25zdCBTRUxFQ1RfSVRFTV9IRUlHSFRfRU0gPSAzO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbXNJbmZpbml0ZVNjcm9sbF0nXG59KVxuZXhwb3J0IGNsYXNzIE1hdFNlbGVjdEluZmluaXRlU2Nyb2xsRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gIEBJbnB1dCgpIHRocmVzaG9sZCA9ICcxNSUnO1xuICBASW5wdXQoKSBkZWJvdW5jZVRpbWUgPSAxNTA7XG4gIEBJbnB1dCgpIGNvbXBsZXRlITogYm9vbGVhbjtcbiAgQE91dHB1dCgpIGluZmluaXRlU2Nyb2xsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHByaXZhdGUgcGFuZWwhOiBFbGVtZW50O1xuICBwcml2YXRlIHRoclB4ID0gMDtcbiAgcHJpdmF0ZSB0aHJQYyA9IDA7XG4gIHByaXZhdGUgc2luZ2xlT3B0aW9uSGVpZ2h0ID0gU0VMRUNUX0lURU1fSEVJR0hUX0VNO1xuXG4gIHByaXZhdGUgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtYXRTZWxlY3Q6IE1hdFNlbGVjdCwgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5ldmFsdWF0ZVRocmVzaG9sZCgpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMubWF0U2VsZWN0Lm9wZW5lZENoYW5nZS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJClcbiAgICApLnN1YnNjcmliZSgob3BlbmVkKSA9PiB7XG4gICAgICBpZiAob3BlbmVkKSB7XG4gICAgICAgIHRoaXMucGFuZWwgPSB0aGlzLm1hdFNlbGVjdC5wYW5lbC5uYXRpdmVFbGVtZW50O1xuICAgICAgICB0aGlzLnNpbmdsZU9wdGlvbkhlaWdodCA9IHRoaXMuZ2V0U2VsZWN0SXRlbUhlaWdodFB4KCk7XG4gICAgICAgIHRoaXMucmVnaXN0ZXJTY3JvbGxMaXN0ZW5lcigpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95ZWQkLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5kZXN0cm95ZWQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBldmFsdWF0ZVRocmVzaG9sZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50aHJlc2hvbGQubGFzdEluZGV4T2YoJyUnKSA+IC0xKSB7XG4gICAgICB0aGlzLnRoclB4ID0gMDtcbiAgICAgIHRoaXMudGhyUGMgPSAocGFyc2VGbG9hdCh0aGlzLnRocmVzaG9sZCkgLyAxMDApO1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudGhyUHggPSBwYXJzZUZsb2F0KHRoaXMudGhyZXNob2xkKTtcbiAgICAgIHRoaXMudGhyUGMgPSAwO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyU2Nyb2xsTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgZnJvbUV2ZW50KHRoaXMucGFuZWwsICdzY3JvbGwnKS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCksXG4gICAgICBkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZVRpbWUpLFxuICAgICAgdGFwKChldmVudCkgPT4ge1xuICAgICAgICB0aGlzLmhhbmRsZVNjcm9sbEV2ZW50KGV2ZW50KTtcbiAgICAgIH0pXG4gICAgKS5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGhhbmRsZVNjcm9sbEV2ZW50KGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBpZiAodGhpcy5jb21wbGV0ZSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBjb3VudE9mUmVuZGVyZWRPcHRpb25zID0gdGhpcy5tYXRTZWxlY3Qub3B0aW9ucy5sZW5ndGg7XG4gICAgICBjb25zdCBpbmZpbml0ZVNjcm9sbERpc3RhbmNlID0gdGhpcy5zaW5nbGVPcHRpb25IZWlnaHQgKiBjb3VudE9mUmVuZGVyZWRPcHRpb25zO1xuICAgICAgY29uc3QgdGhyZXNob2xkID0gdGhpcy50aHJQYyAhPT0gMCA/IChpbmZpbml0ZVNjcm9sbERpc3RhbmNlICogdGhpcy50aHJQYykgOiB0aGlzLnRoclB4O1xuXG4gICAgICBjb25zdCBzY3JvbGxlZERpc3RhbmNlID0gdGhpcy5wYW5lbC5jbGllbnRIZWlnaHQgKyBldmVudC50YXJnZXQuc2Nyb2xsVG9wO1xuXG4gICAgICBpZiAoKHNjcm9sbGVkRGlzdGFuY2UgKyB0aHJlc2hvbGQpID49IGluZmluaXRlU2Nyb2xsRGlzdGFuY2UpIHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHRoaXMuaW5maW5pdGVTY3JvbGwuZW1pdCgpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldFNlbGVjdEl0ZW1IZWlnaHRQeCgpOiBudW1iZXIge1xuICAgIHJldHVybiBwYXJzZUZsb2F0KGdldENvbXB1dGVkU3R5bGUodGhpcy5wYW5lbCkuZm9udFNpemUpICogU0VMRUNUX0lURU1fSEVJR0hUX0VNO1xuICB9XG5cbn1cbiJdfQ==
|