@falcon-ng/tailwind 0.0.14 → 0.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/fesm2022/falcon-ng-tailwind.mjs +139 -150
  2. package/fesm2022/falcon-ng-tailwind.mjs.map +1 -1
  3. package/package.json +3 -5
  4. package/esm2022/falcon-ng-tailwind.mjs +0 -5
  5. package/esm2022/lib/base-form-component.mjs +0 -234
  6. package/esm2022/lib/component/auto-complete/auto-complete.component.mjs +0 -33
  7. package/esm2022/lib/component/bottom-sheet/bottom-sheet.component.mjs +0 -27
  8. package/esm2022/lib/component/button/button.component.mjs +0 -27
  9. package/esm2022/lib/component/button-toggle/button-toggle.component.mjs +0 -32
  10. package/esm2022/lib/component/checkbox/checkbox.component.mjs +0 -18
  11. package/esm2022/lib/component/chips/chip.component.mjs +0 -109
  12. package/esm2022/lib/component/date-picker/date-picker.component.mjs +0 -17
  13. package/esm2022/lib/component/dialog/dialog.component.mjs +0 -21
  14. package/esm2022/lib/component/pagination/pagination.component.mjs +0 -95
  15. package/esm2022/lib/component/progress-bar/progress-bar.component.mjs +0 -20
  16. package/esm2022/lib/component/progress-spinner/progress-spinner.component.mjs +0 -26
  17. package/esm2022/lib/component/radio/radio.component.mjs +0 -31
  18. package/esm2022/lib/component/rich-text-editor/rich-text-editor.component.mjs +0 -15
  19. package/esm2022/lib/component/select/select.component.mjs +0 -35
  20. package/esm2022/lib/component/slide-toggle/slide-toggle.component.mjs +0 -14
  21. package/esm2022/lib/component/slider/slider.component.mjs +0 -15
  22. package/esm2022/lib/component/snack-bar/snack-bar.component.mjs +0 -11
  23. package/esm2022/lib/component/table/table.component.mjs +0 -74
  24. package/esm2022/lib/component/textarea/textarea.component.mjs +0 -16
  25. package/esm2022/lib/component/textbox/textbox.component.mjs +0 -17
  26. package/esm2022/lib/control-builder/control-builder.component.mjs +0 -18
  27. package/esm2022/lib/falcon-tailwind.module.mjs +0 -230
  28. package/esm2022/lib/model/constant.mjs +0 -32
  29. package/esm2022/lib/model/environments.mjs +0 -3
  30. package/esm2022/lib/model/layout.mjs +0 -2
  31. package/esm2022/lib/reactive-field.directive.mjs +0 -28
  32. package/esm2022/lib/service/appsetting.service.mjs +0 -55
  33. package/esm2022/lib/service/http/generic-http-client.mjs +0 -197
  34. package/esm2022/lib/service/http/igeneric-http-client.mjs +0 -10
  35. package/esm2022/lib/service/logger.service.mjs +0 -78
  36. package/esm2022/lib/service/open-id/TokenHelperService.mjs +0 -71
  37. package/esm2022/lib/service/open-id/auth-guard.service.mjs +0 -30
  38. package/esm2022/lib/service/open-id/auth.service.mjs +0 -141
  39. package/esm2022/public-api.mjs +0 -29
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@falcon-ng/tailwind",
3
- "version": "0.0.14",
3
+ "version": "0.0.15",
4
4
  "peerDependencies": {
5
- "@angular/common": "^18.0.1",
6
- "@angular/core": "^18.0.1"
5
+ "@angular/common": "^19.0.1",
6
+ "@angular/core": "^19.0.1"
7
7
  },
8
8
  "dependencies": {
9
9
  "tslib": "^2.3.0"
@@ -16,8 +16,6 @@
16
16
  },
17
17
  ".": {
18
18
  "types": "./index.d.ts",
19
- "esm2022": "./esm2022/falcon-ng-tailwind.mjs",
20
- "esm": "./esm2022/falcon-ng-tailwind.mjs",
21
19
  "default": "./fesm2022/falcon-ng-tailwind.mjs"
22
20
  }
23
21
  },
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFsY29uLW5nLXRhaWx3aW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLW5nL3RhaWx3aW5kL3NyYy9mYWxjb24tbmctdGFpbHdpbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,234 +0,0 @@
1
- import { FormBuilder, Validators, } from '@angular/forms';
2
- import { inject } from '@angular/core';
3
- /**
4
- * @description
5
- * Base form component initialized to create form controls, set validation, submit.
6
- *
7
- * @usageNotes
8
- * The following snippet shows how a component can implement this abstract class to
9
- * define its own initialization method.
10
- * ```ts
11
- * export class InputComponent extends BaseFormComponent<any> implements OnInit {
12
- * constructor(fb : FormBuilder) {
13
- * super(fb);
14
- * this.defineForm();
15
- * }
16
- * protected defineForm(): void {
17
- * }
18
- * ngOnInit(): void {
19
- * this.formGroup = this.createControls();
20
- * }
21
- * protected submitDatasource(model: any): Observable<any> {
22
- * return of(model);
23
- * }
24
- * ```
25
- */
26
- export class BaseFormComponent {
27
- constructor() {
28
- this.dataSource = undefined;
29
- this.showLoading = false;
30
- this.fb = inject(FormBuilder);
31
- }
32
- /**
33
- * @description
34
- * Method evoke on when the form is submitted.
35
- * @returns submitDatasource() method with form data if valid otherwise form invalid.
36
- */
37
- onSubmit() {
38
- if (this.formGroup !== undefined && this.formGroup.valid) {
39
- this.submitDataSource(this.formGroup.value);
40
- }
41
- else {
42
- this.validateAllFormFields(this.formGroup);
43
- }
44
- }
45
- /**
46
- * @description
47
- * Private method to validate all form controls before is form submited.
48
- * @param formGroup Validate form group.
49
- * @returns Groups of controls added to the form builder.
50
- */
51
- validateAllFormFields(formGroup) {
52
- if (this.formGroup !== undefined)
53
- this.formGroup.markAllAsTouched();
54
- }
55
- /**
56
- * @description
57
- * Create the reactive form controls
58
- * @returns Groups of controls added to the form builder.
59
- */
60
- createControls() {
61
- const group = this.fb.group({});
62
- this.controlsConfig.baseControls.forEach((controls, index) => {
63
- this.bindControl(controls, group, index);
64
- });
65
- return group;
66
- }
67
- /**
68
- * @description
69
- * Private method to bind the form control.
70
- * @param controlConfig field to bind.
71
- * @param group group to add.
72
- * @param index index of the layout
73
- */
74
- bindControl(controlConfig, group, index) {
75
- if (controlConfig.controlType === 'button')
76
- return;
77
- let control = null;
78
- if (controlConfig.formArray !== undefined) {
79
- control =
80
- controlConfig.formArray.length > 0
81
- ? this.fb.array([
82
- this.createFormArrayGroup(controlConfig.formArray[controlConfig.formArray.length - 1].formArray),
83
- ])
84
- : this.fb.array([], this.bindValidations(controlConfig.validations || []));
85
- }
86
- else {
87
- control = this.fb.control({
88
- value: controlConfig.value,
89
- disabled: controlConfig.disabled,
90
- }, this.bindValidations(controlConfig.validations || []));
91
- }
92
- group.addControl(controlConfig.formControlName, control);
93
- }
94
- /**
95
- * @description
96
- * Private method to bind the validation to the form controls on form submit.
97
- * @param validations Push the validation to the controls.
98
- * @returns Validation.
99
- */
100
- bindValidations(validations) {
101
- if (validations.length > 0) {
102
- const validList = [];
103
- validations.forEach((valid) => {
104
- validList.push(valid.validator);
105
- });
106
- return Validators.compose(validList);
107
- }
108
- return null;
109
- }
110
- /**
111
- * Create an form array element
112
- * @param layoutConfig layout of form array
113
- * @returns Form array group
114
- */
115
- createFormArrayGroup(componentConfig) {
116
- var formGroup = this.fb.group({});
117
- componentConfig?.forEach((item, index) => {
118
- var control = null;
119
- if (item.formArray !== undefined) {
120
- control =
121
- item.formArray.length > 0
122
- ? this.fb.array([
123
- this.createFormArrayGroup(item.formArray[item.formArray.length - 1].formArray),
124
- ], this.bindValidations(item.validations || []))
125
- : this.fb.array([], this.bindValidations(item.validations || []));
126
- }
127
- else {
128
- control = this.fb.control({
129
- value: item.value,
130
- disabled: item.disabled,
131
- }, this.bindValidations(item.validations || []));
132
- }
133
- formGroup.addControl(item.formControlName, control);
134
- });
135
- return formGroup;
136
- }
137
- /**
138
- * @description
139
- * Reset fild values to default or specify some value.
140
- * @param defaultValues Specify the specific value to set to the controls.
141
- * @returns void.
142
- */
143
- reset(defaultValues) {
144
- this.formGroup.reset(defaultValues);
145
- }
146
- /**
147
- * @description
148
- * Reset specific fild Errors.
149
- * @param name Name of the field to reset the error.
150
- * @returns void.
151
- */
152
- resetFieldErrors(name) {
153
- this.formGroup?.get(name)?.setErrors(null);
154
- }
155
- /**
156
- * @description
157
- * Get the controls value from the form.
158
- * @returns Form controls values.
159
- */
160
- get value() {
161
- return this.formGroup.value;
162
- }
163
- /**
164
- * @description
165
- * Updating parts of the data model.
166
- * Use the patchValue() method to replace any properties defined in the object that have changed in the form model.
167
- * @returns Form controls values.
168
- * @param value The object that matches the structure of the group.
169
- * @param options Configuration options that determine how the control propagates changes and
170
- * emits events after the value is patched.
171
- * `onlySelf`: When true, each change only affects this control and not its parent. Default is
172
- * true.
173
- * `emitEvent`: When true or not supplied (the default), both the `statusChanges` and
174
- * `valueChanges`
175
- * @usageNotes
176
- * The following snippet shows how a component can implement this abstract class to
177
- * define its own initialization method.
178
- * ```ts
179
- * this.formGroup.patchValue({
180
- * name: 'Todd Motto',
181
- * event: {
182
- * title: 'AngularCamp 2016',
183
- * location: 'Barcelona, Spain'
184
- * }
185
- * });
186
- * ```
187
- */
188
- patchValue(value, options) {
189
- return this.formGroup.patchValue(value, options);
190
- }
191
- /**
192
- * @description
193
- * Updating parts of the data model.
194
- * Use the setValue() method to set a new value for an individual control. The setValue() method strictly adheres to the structure of the form group and replaces the entire value for the control.
195
- * @returns Form controls values.
196
- * @param value The object that matches the structure of the group.
197
- * @param options Configuration options that determine how the control propagates changes and
198
- * emits events after the value is patched.
199
- * `onlySelf`: When true, each change only affects this control and not its parent. Default is
200
- * true.
201
- * `emitEvent`: When true or not supplied (the default), both the `statusChanges` and
202
- * `valueChanges`
203
- * @usageNotes
204
- * The following snippet shows how a component can implement this abstract class to
205
- * define its own initialization method.
206
- * ```ts
207
- * this.formGroup.setValue({
208
- * name: 'Todd Motto',
209
- * event: {
210
- * title: 'AngularCamp 2016',
211
- * location: 'Barcelona, Spain'
212
- * }
213
- * });
214
- * ```
215
- */
216
- setValue(value, options) {
217
- return this.formGroup.setValue(value, options);
218
- }
219
- /**
220
- * @description
221
- * Dynamically remove the form control.
222
- * @param index Index of item.
223
- * @usageNotes
224
- * The following snippet shows how to remove the form control from Froup Group
225
- * ```ts
226
- * removeControl(1);
227
- * ```
228
- */
229
- removeControl(layoutIndex, index) {
230
- this.formGroup.removeControl(this.controlsConfig.baseControls[layoutIndex].formControlName);
231
- this.controlsConfig.baseControls.splice(index, 1);
232
- }
233
- }
234
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1mb3JtLWNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2Jhc2UtZm9ybS1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFdBQVcsRUFHWCxVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBSXJDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBQ0gsTUFBTSxPQUFnQixpQkFBaUI7SUFZckM7UUFMTyxlQUFVLEdBQWtCLFNBQVMsQ0FBQztRQUV0QyxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUMxQixPQUFFLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBR25DLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksUUFBUTtRQUNiLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN6RCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLHFCQUFxQixDQUFDLFNBQW9CO1FBQ2hELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQ3RFLENBQUM7SUFFRDs7OztPQUlHO0lBQ08sY0FBYztRQUN0QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FB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SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09Bd0JHO0lBQ08sUUFBUSxDQUNoQixLQUE2QixFQUM3QixPQUFxRDtRQUVyRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ08sYUFBYSxDQUFDLFdBQW1CLEVBQUUsS0FBYTtRQUN4RCxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FDMUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUMsZUFBZSxDQUM5RCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0NBd0VGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIEZvcm1CdWlsZGVyLFxuICBGb3JtR3JvdXAsXG4gIFZhbGlkYXRvckZuLFxuICBWYWxpZGF0b3JzLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge2luamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Jhc2VDb250cm9sLElWYWxpZGF0b3J9IGZyb20gXCJAZmFsY29uLW5nL2NvcmVcIlxuaW1wb3J0IHsgTGF5b3V0IH0gZnJvbSAnLi9tb2RlbC9sYXlvdXQnO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvblxuICogQmFzZSBmb3JtIGNvbXBvbmVudCBpbml0aWFsaXplZCB0byBjcmVhdGUgZm9ybSBjb250cm9scywgc2V0IHZhbGlkYXRpb24sIHN1Ym1pdC5cbiAqXG4gKiBAdXNhZ2VOb3Rlc1xuICogVGhlIGZvbGxvd2luZyBzbmlwcGV0IHNob3dzIGhvdyBhIGNvbXBvbmVudCBjYW4gaW1wbGVtZW50IHRoaXMgYWJzdHJhY3QgY2xhc3MgdG9cbiAqIGRlZmluZSBpdHMgb3duIGluaXRpYWxpemF0aW9uIG1ldGhvZC5cbiAqIGBgYHRzXG4gKiAgZXhwb3J0IGNsYXNzIElucHV0Q29tcG9uZW50IGV4dGVuZHMgQmFzZUZvcm1Db21wb25lbnQ8YW55PiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gKiAgICAgY29uc3RydWN0b3IoZmIgOiBGb3JtQnVpbGRlcikge1xuICogICAgICAgIHN1cGVyKGZiKTtcbiAqICAgICAgICB0aGlzLmRlZmluZUZvcm0oKTtcbiAqICAgIH1cbiAqICAgIHByb3RlY3RlZCBkZWZpbmVGb3JtKCk6IHZvaWQge1xuICogICAgfVxuICogICAgbmdPbkluaXQoKTogdm9pZCB7XG4gKiAgICAgIHRoaXMuZm9ybUdyb3VwID0gdGhpcy5jcmVhdGVDb250cm9scygpO1xuICogICAgfVxuICogICAgcHJvdGVjdGVkIHN1Ym1pdERhdGFzb3VyY2UobW9kZWw6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gKiAgICAgIHJldHVybiBvZihtb2RlbCk7XG4gKiAgICB9XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VGb3JtQ29tcG9uZW50PFQ+IHtcbiAgcHVibGljIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZGVmaW5lRm9ybSgpOiB2b2lkO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzdWJtaXREYXRhU291cmNlKG1vZGVsOiBUKTogT2JzZXJ2YWJsZTxUPjtcblxuICBwdWJsaWMgZGF0YVNvdXJjZTogVCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgcHVibGljIGNvbnRyb2xzQ29uZmlnITogTGF5b3V0PFQ+O1xuICBwdWJsaWMgc2hvd0xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJvdGVjdGVkIGZiID0gaW5qZWN0KEZvcm1CdWlsZGVyKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogTWV0aG9kIGV2b2tlIG9uIHdoZW4gdGhlIGZvcm0gaXMgc3VibWl0dGVkLlxuICAgKiBAcmV0dXJucyBzdWJtaXREYXRhc291cmNlKCkgbWV0aG9kIHdpdGggZm9ybSBkYXRhIGlmIHZhbGlkIG90aGVyd2lzZSBmb3JtIGludmFsaWQuXG4gICAqL1xuICBwdWJsaWMgb25TdWJtaXQoKSB7XG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwICE9PSB1bmRlZmluZWQgJiYgdGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcbiAgICAgIHRoaXMuc3VibWl0RGF0YVNvdXJjZSh0aGlzLmZvcm1Hcm91cC52YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsaWRhdGVBbGxGb3JtRmllbGRzKHRoaXMuZm9ybUdyb3VwKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFByaXZhdGUgbWV0aG9kIHRvIHZhbGlkYXRlIGFsbCBmb3JtIGNvbnRyb2xzIGJlZm9yZSBpcyBmb3JtIHN1Ym1pdGVkLlxuICAgKiBAcGFyYW0gZm9ybUdyb3VwIFZhbGlkYXRlIGZvcm0gZ3JvdXAuXG4gICAqIEByZXR1cm5zIEdyb3VwcyBvZiBjb250cm9scyBhZGRlZCB0byB0aGUgZm9ybSBidWlsZGVyLlxuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZUFsbEZvcm1GaWVsZHMoZm9ybUdyb3VwOiBGb3JtR3JvdXApIHtcbiAgICBpZiAodGhpcy5mb3JtR3JvdXAgIT09IHVuZGVmaW5lZCkgdGhpcy5mb3JtR3JvdXAubWFya0FsbEFzVG91Y2hlZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBDcmVhdGUgdGhlIHJlYWN0aXZlIGZvcm0gY29udHJvbHNcbiAgICogQHJldHVybnMgR3JvdXBzIG9mIGNvbnRyb2xzIGFkZGVkIHRvIHRoZSBmb3JtIGJ1aWxkZXIuXG4gICAqL1xuICBwcm90ZWN0ZWQgY3JlYXRlQ29udHJvbHMoKSB7XG4gICAgY29uc3QgZ3JvdXAgPSB0aGlzLmZiLmdyb3VwKHt9KTtcbiAgICB0aGlzLmNvbnRyb2xzQ29uZmlnLmJhc2VDb250cm9scy5mb3JFYWNoKChjb250cm9scywgaW5kZXgpID0+IHtcbiAgICAgIHRoaXMuYmluZENvbnRyb2woY29udHJvbHMsIGdyb3VwLCBpbmRleCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGdyb3VwO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBQcml2YXRlIG1ldGhvZCB0byBiaW5kIHRoZSBmb3JtIGNvbnRyb2wuXG4gICAqIEBwYXJhbSBjb250cm9sQ29uZmlnIGZpZWxkIHRvIGJpbmQuXG4gICAqIEBwYXJhbSBncm91cCBncm91cCB0byBhZGQuXG4gICAqIEBwYXJhbSBpbmRleCBpbmRleCBvZiB0aGUgbGF5b3V0XG4gICAqL1xuICBwcml2YXRlIGJpbmRDb250cm9sKFxuICAgIGNvbnRyb2xDb25maWc6IEJhc2VDb250cm9sPFQ+LFxuICAgIGdyb3VwOiBGb3JtR3JvdXAsXG4gICAgaW5kZXg6IG51bWJlclxuICApIHtcbiAgICBpZiAoY29udHJvbENvbmZpZy5jb250cm9sVHlwZSA9PT0gJ2J1dHRvbicpIHJldHVybjtcbiAgICBsZXQgY29udHJvbCA9IG51bGw7XG4gICAgaWYgKGNvbnRyb2xDb25maWcuZm9ybUFycmF5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnRyb2wgPVxuICAgICAgICBjb250cm9sQ29uZmlnLmZvcm1BcnJheS5sZW5ndGggPiAwXG4gICAgICAgICAgPyB0aGlzLmZiLmFycmF5KFtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlRm9ybUFycmF5R3JvdXAoXG4gICAgICAgICAgICAgIGNvbnRyb2xDb25maWcuZm9ybUFycmF5W1xuICAgICAgICAgICAgICBjb250cm9sQ29uZmlnLmZvcm1BcnJheS5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgXS5mb3JtQXJyYXksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIF0pXG4gICAgICAgICAgOiB0aGlzLmZiLmFycmF5KFxuICAgICAgICAgICAgW10sXG4gICAgICAgICAgICB0aGlzLmJpbmRWYWxpZGF0aW9ucyhjb250cm9sQ29uZmlnLnZhbGlkYXRpb25zIHx8IFtdKSxcbiAgICAgICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb250cm9sID0gdGhpcy5mYi5jb250cm9sKFxuICAgICAgICB7XG4gICAgICAgICAgdmFsdWU6IGNvbnRyb2xDb25maWcudmFsdWUsXG4gICAgICAgICAgZGlzYWJsZWQ6IGNvbnRyb2xDb25maWcuZGlzYWJsZWQsXG4gICAgICAgIH0sXG4gICAgICAgIHRoaXMuYmluZFZhbGlkYXRpb25zKGNvbnRyb2xDb25maWcudmFsaWRhdGlvbnMgfHwgW10pXG4gICAgICApO1xuICAgIH1cbiAgICBncm91cC5hZGRDb250cm9sKGNvbnRyb2xDb25maWcuZm9ybUNvbnRyb2xOYW1lLCBjb250cm9sKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogUHJpdmF0ZSBtZXRob2QgdG8gYmluZCB0aGUgdmFsaWRhdGlvbiB0byB0aGUgZm9ybSBjb250cm9scyBvbiBmb3JtIHN1Ym1pdC5cbiAgICogQHBhcmFtIHZhbGlkYXRpb25zIFB1c2ggdGhlIHZhbGlkYXRpb24gdG8gdGhlIGNvbnRyb2xzLlxuICAgKiBAcmV0dXJucyBWYWxpZGF0aW9uLlxuICAgKi9cbiAgcHJpdmF0ZSBiaW5kVmFsaWRhdGlvbnModmFsaWRhdGlvbnM6IElWYWxpZGF0b3JbXSkge1xuICAgIGlmICh2YWxpZGF0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCB2YWxpZExpc3Q6IChWYWxpZGF0b3JGbiB8IG51bGwgfCB1bmRlZmluZWQpW10gPSBbXTtcbiAgICAgIHZhbGlkYXRpb25zLmZvckVhY2goKHZhbGlkOiBJVmFsaWRhdG9yKSA9PiB7XG4gICAgICAgIHZhbGlkTGlzdC5wdXNoKHZhbGlkLnZhbGlkYXRvcik7XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBWYWxpZGF0b3JzLmNvbXBvc2UodmFsaWRMaXN0KTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGFuIGZvcm0gYXJyYXkgZWxlbWVudFxuICAgKiBAcGFyYW0gbGF5b3V0Q29uZmlnIGxheW91dCBvZiBmb3JtIGFycmF5XG4gICAqIEByZXR1cm5zIEZvcm0gYXJyYXkgZ3JvdXBcbiAgICovXG4gIHByaXZhdGUgY3JlYXRlRm9ybUFycmF5R3JvdXAoY29tcG9uZW50Q29uZmlnOiBCYXNlQ29udHJvbDxUPltdIHwgdW5kZWZpbmVkKTogRm9ybUdyb3VwIHtcbiAgICB2YXIgZm9ybUdyb3VwOiBGb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHt9KTtcbiAgICBjb21wb25lbnRDb25maWc/LmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICB2YXIgY29udHJvbCA9IG51bGw7XG4gICAgICBpZiAoaXRlbS5mb3JtQXJyYXkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb250cm9sID1cbiAgICAgICAgICBpdGVtLmZvcm1BcnJheS5sZW5ndGggPiAwXG4gICAgICAgICAgICA/IHRoaXMuZmIuYXJyYXkoXG4gICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZUZvcm1BcnJheUdyb3VwKFxuICAgICAgICAgICAgICAgICAgaXRlbS5mb3JtQXJyYXlbaXRlbS5mb3JtQXJyYXkubGVuZ3RoIC0gMV0uZm9ybUFycmF5LFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIHRoaXMuYmluZFZhbGlkYXRpb25zKGl0ZW0udmFsaWRhdGlvbnMgfHwgW10pLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiB0aGlzLmZiLmFycmF5KFxuICAgICAgICAgICAgICBbXSxcbiAgICAgICAgICAgICAgdGhpcy5iaW5kVmFsaWRhdGlvbnMoaXRlbS52YWxpZGF0aW9ucyB8fCBbXSksXG4gICAgICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29udHJvbCA9IHRoaXMuZmIuY29udHJvbChcbiAgICAgICAgICB7XG4gICAgICAgICAgICB2YWx1ZTogaXRlbS52YWx1ZSxcbiAgICAgICAgICAgIGRpc2FibGVkOiBpdGVtLmRpc2FibGVkLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdGhpcy5iaW5kVmFsaWRhdGlvbnMoaXRlbS52YWxpZGF0aW9ucyB8fCBbXSksXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBmb3JtR3JvdXAuYWRkQ29udHJvbChpdGVtLmZvcm1Db250cm9sTmFtZSwgY29udHJvbCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGZvcm1Hcm91cDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogUmVzZXQgZmlsZCB2YWx1ZXMgdG8gZGVmYXVsdCBvciBzcGVjaWZ5IHNvbWUgdmFsdWUuXG4gICAqIEBwYXJhbSBkZWZhdWx0VmFsdWVzIFNwZWNpZnkgdGhlIHNwZWNpZmljIHZhbHVlIHRvIHNldCB0byB0aGUgY29udHJvbHMuXG4gICAqIEByZXR1cm5zIHZvaWQuXG4gICAqL1xuICBwdWJsaWMgcmVzZXQoZGVmYXVsdFZhbHVlcz86IGFueSk6IHZvaWQge1xuICAgIHRoaXMuZm9ybUdyb3VwLnJlc2V0KGRlZmF1bHRWYWx1ZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBSZXNldCBzcGVjaWZpYyBmaWxkIEVycm9ycy5cbiAgICogQHBhcmFtIG5hbWUgTmFtZSBvZiB0aGUgZmllbGQgdG8gcmVzZXQgdGhlIGVycm9yLlxuICAgKiBAcmV0dXJucyB2b2lkLlxuICAgKi9cbiAgcmVzZXRGaWVsZEVycm9ycyhuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmZvcm1Hcm91cD8uZ2V0KG5hbWUpPy5zZXRFcnJvcnMobnVsbCk7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEdldCB0aGUgY29udHJvbHMgdmFsdWUgZnJvbSB0aGUgZm9ybS5cbiAgICogQHJldHVybnMgRm9ybSBjb250cm9scyB2YWx1ZXMuXG4gICAqL1xuICBnZXQgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAudmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFVwZGF0aW5nIHBhcnRzIG9mIHRoZSBkYXRhIG1vZGVsLlxuICAgKiBVc2UgdGhlIHBhdGNoVmFsdWUoKSBtZXRob2QgdG8gcmVwbGFjZSBhbnkgcHJvcGVydGllcyBkZWZpbmVkIGluIHRoZSBvYmplY3QgdGhhdCBoYXZlIGNoYW5nZWQgaW4gdGhlIGZvcm0gbW9kZWwuXG4gICAqIEByZXR1cm5zIEZvcm0gY29udHJvbHMgdmFsdWVzLlxuICAgKiBAcGFyYW0gdmFsdWUgVGhlIG9iamVjdCB0aGF0IG1hdGNoZXMgdGhlIHN0cnVjdHVyZSBvZiB0aGUgZ3JvdXAuXG4gICAqIEBwYXJhbSBvcHRpb25zIENvbmZpZ3VyYXRpb24gb3B0aW9ucyB0aGF0IGRldGVybWluZSBob3cgdGhlIGNvbnRyb2wgcHJvcGFnYXRlcyBjaGFuZ2VzIGFuZFxuICAgKiBlbWl0cyBldmVudHMgYWZ0ZXIgdGhlIHZhbHVlIGlzIHBhdGNoZWQuXG4gICAqIGBvbmx5U2VsZmA6IFdoZW4gdHJ1ZSwgZWFjaCBjaGFuZ2Ugb25seSBhZmZlY3RzIHRoaXMgY29udHJvbCBhbmQgbm90IGl0cyBwYXJlbnQuIERlZmF1bHQgaXNcbiAgICogdHJ1ZS5cbiAgICogYGVtaXRFdmVudGA6IFdoZW4gdHJ1ZSBvciBub3Qgc3VwcGxpZWQgKHRoZSBkZWZhdWx0KSwgYm90aCB0aGUgYHN0YXR1c0NoYW5nZXNgIGFuZFxuICAgKiBgdmFsdWVDaGFuZ2VzYFxuICAgKiAgQHVzYWdlTm90ZXNcbiAgICogVGhlIGZvbGxvd2luZyBzbmlwcGV0IHNob3dzIGhvdyBhIGNvbXBvbmVudCBjYW4gaW1wbGVtZW50IHRoaXMgYWJzdHJhY3QgY2xhc3MgdG9cbiAgICogZGVmaW5lIGl0cyBvd24gaW5pdGlhbGl6YXRpb24gbWV0aG9kLlxuICAgKiBgYGB0c1xuICAgKiAgIHRoaXMuZm9ybUdyb3VwLnBhdGNoVmFsdWUoe1xuICAgKiAgICAgbmFtZTogJ1RvZGQgTW90dG8nLFxuICAgKiAgICAgZXZlbnQ6IHtcbiAgICogICAgICAgdGl0bGU6ICdBbmd1bGFyQ2FtcCAyMDE2JyxcbiAgICogICAgICAgbG9jYXRpb246ICdCYXJjZWxvbmEsIFNwYWluJ1xuICAgKiAgICAgfVxuICAgKiAgIH0pO1xuICAgKiBgYGBcbiAgICovXG4gIHByb3RlY3RlZCBwYXRjaFZhbHVlKFxuICAgIHZhbHVlOiB7IFtrZXk6IHN0cmluZ106IGFueSB9LFxuICAgIG9wdGlvbnM/OiB7IG9ubHlTZWxmPzogYm9vbGVhbjsgZW1pdEV2ZW50PzogYm9vbGVhbiB9XG4gICkge1xuICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cC5wYXRjaFZhbHVlKHZhbHVlLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogVXBkYXRpbmcgcGFydHMgb2YgdGhlIGRhdGEgbW9kZWwuXG4gICAqIFVzZSB0aGUgc2V0VmFsdWUoKSBtZXRob2QgdG8gc2V0IGEgbmV3IHZhbHVlIGZvciBhbiBpbmRpdmlkdWFsIGNvbnRyb2wuIFRoZSBzZXRWYWx1ZSgpIG1ldGhvZCBzdHJpY3RseSBhZGhlcmVzIHRvIHRoZSBzdHJ1Y3R1cmUgb2YgdGhlIGZvcm0gZ3JvdXAgYW5kIHJlcGxhY2VzIHRoZSBlbnRpcmUgdmFsdWUgZm9yIHRoZSBjb250cm9sLlxuICAgKiBAcmV0dXJucyBGb3JtIGNvbnRyb2xzIHZhbHVlcy5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSBvYmplY3QgdGhhdCBtYXRjaGVzIHRoZSBzdHJ1Y3R1cmUgb2YgdGhlIGdyb3VwLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBDb25maWd1cmF0aW9uIG9wdGlvbnMgdGhhdCBkZXRlcm1pbmUgaG93IHRoZSBjb250cm9sIHByb3BhZ2F0ZXMgY2hhbmdlcyBhbmRcbiAgICogZW1pdHMgZXZlbnRzIGFmdGVyIHRoZSB2YWx1ZSBpcyBwYXRjaGVkLlxuICAgKiBgb25seVNlbGZgOiBXaGVuIHRydWUsIGVhY2ggY2hhbmdlIG9ubHkgYWZmZWN0cyB0aGlzIGNvbnRyb2wgYW5kIG5vdCBpdHMgcGFyZW50LiBEZWZhdWx0IGlzXG4gICAqIHRydWUuXG4gICAqIGBlbWl0RXZlbnRgOiBXaGVuIHRydWUgb3Igbm90IHN1cHBsaWVkICh0aGUgZGVmYXVsdCksIGJvdGggdGhlIGBzdGF0dXNDaGFuZ2VzYCBhbmRcbiAgICogYHZhbHVlQ2hhbmdlc2BcbiAgICogIEB1c2FnZU5vdGVzXG4gICAqIFRoZSBmb2xsb3dpbmcgc25pcHBldCBzaG93cyBob3cgYSBjb21wb25lbnQgY2FuIGltcGxlbWVudCB0aGlzIGFic3RyYWN0IGNsYXNzIHRvXG4gICAqIGRlZmluZSBpdHMgb3duIGluaXRpYWxpemF0aW9uIG1ldGhvZC5cbiAgICogYGBgdHNcbiAgICogICB0aGlzLmZvcm1Hcm91cC5zZXRWYWx1ZSh7XG4gICAqICAgICBuYW1lOiAnVG9kZCBNb3R0bycsXG4gICAqICAgICBldmVudDoge1xuICAgKiAgICAgICB0aXRsZTogJ0FuZ3VsYXJDYW1wIDIwMTYnLFxuICAgKiAgICAgICBsb2NhdGlvbjogJ0JhcmNlbG9uYSwgU3BhaW4nXG4gICAqICAgICB9XG4gICAqICAgfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgcHJvdGVjdGVkIHNldFZhbHVlKFxuICAgIHZhbHVlOiB7IFtrZXk6IHN0cmluZ106IGFueSB9LFxuICAgIG9wdGlvbnM/OiB7IG9ubHlTZWxmPzogYm9vbGVhbjsgZW1pdEV2ZW50PzogYm9vbGVhbiB9XG4gICkge1xuICAgIHJldHVybiB0aGlzLmZvcm1Hcm91cC5zZXRWYWx1ZSh2YWx1ZSwgb3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIER5bmFtaWNhbGx5IHJlbW92ZSB0aGUgZm9ybSBjb250cm9sLlxuICAgKiBAcGFyYW0gaW5kZXggSW5kZXggb2YgaXRlbS5cbiAgICogQHVzYWdlTm90ZXNcbiAgICogVGhlIGZvbGxvd2luZyBzbmlwcGV0IHNob3dzIGhvdyB0byByZW1vdmUgdGhlIGZvcm0gY29udHJvbCBmcm9tIEZyb3VwIEdyb3VwXG4gICAqIGBgYHRzXG4gICAqICAgIHJlbW92ZUNvbnRyb2woMSk7XG4gICAqIGBgYFxuICAgKi9cbiAgcHJvdGVjdGVkIHJlbW92ZUNvbnRyb2wobGF5b3V0SW5kZXg6IG51bWJlciwgaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuZm9ybUdyb3VwLnJlbW92ZUNvbnRyb2woXG4gICAgICB0aGlzLmNvbnRyb2xzQ29uZmlnLmJhc2VDb250cm9sc1tsYXlvdXRJbmRleF0uZm9ybUNvbnRyb2xOYW1lXG4gICAgKTtcbiAgICB0aGlzLmNvbnRyb2xzQ29uZmlnLmJhc2VDb250cm9scy5zcGxpY2UoaW5kZXgsIDEpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBEeW5hbWljYWxseSBhZGQgdGhlIGZvcm0gY29udHJvbC5cbiAgICogQHBhcmFtIGNvbmZpZ1RvQWRkIENvbmZpZ3VyYXRpb24gb2YgdGhlIGZvcm0gY29udHJvbC5cbiAgICogQHBhcmFtIGluZGV4IEFkZCBjb250cm9scyB0byB0aGUgc3BlY2lmaWMgaW5kZXguXG4gICAqIEB1c2FnZU5vdGVzXG4gICAqIFRoZSBmb2xsb3dpbmcgc25pcHBldCBzaG93cyBob3cgYSBjb21wb25lbnQgY2FuIGltcGxlbWVudCB0aGlzIGFic3RyYWN0IGNsYXNzIHRvXG4gICAqIGRlZmluZSBpdHMgb3duIGluaXRpYWxpemF0aW9uIG1ldGhvZC5cbiAgICogYGBgdHNcbiAgICogICB2YXIgY29uZmlnVG9hZGQgPSB7XG4gICAqICAgIGNvbXBvbmVudFByb3BlcnR5OiB7XG4gICAqICAgICAgbGFiZWw6IFwiT3V0bGluZSBBdXRvIGNvbXBsZXRlXCIsXG4gICAqICAgICAgb3B0aW9uczogW3sgdmFsdWU6ICdFeHRyYS1jaGVlc2UnLCB2aWV3VmFsdWU6ICdFeHRyYSBjaGVlc2UnIH0sXG4gICAqICAgICAgeyB2YWx1ZTogJ0JlbGxzcHJvdXQnLCB2aWV3VmFsdWU6ICdCZWxsc3Byb3V0JyB9LFxuICAgKiAgICAgIHsgdmFsdWU6ICdNdXNocm9vbScsIHZpZXdWYWx1ZTogJ011c2hyb29tJyB9LFxuICAgKiAgICAgIHsgdmFsdWU6ICdPbmlvbicsIHZpZXdWYWx1ZTogJ09uaW9uJyB9LFxuICAgKiAgICAgIHsgdmFsdWU6ICdQZXBwZXJvbmknLCB2aWV3VmFsdWU6ICdQZXBwZXJvbmknIH0sXG4gICAqICAgICAgeyB2YWx1ZTogJ1NhdXNhZ2UnLCB2aWV3VmFsdWU6ICdTYXVzYWdlJyB9LFxuICAgKiAgICAgIHsgdmFsdWU6ICdUb21hdG8nLCB2aWV3VmFsdWU6ICdUb21hdG8nIH1dLFxuICAgKiAgICAgIGFwcGVhcmFuY2U6IEFwcGVhcmFuY2UuT3V0bGluZSxcbiAgICogICAgICBjb2xvcjogJ2FjY2VudCdcbiAgICogICAgfSxcbiAgICogICAgY29tcG9uZW50VHlwZTogQ29tcG9uZW50VHlwZS5BdXRvQ29tcGxldGUsXG4gICAqICAgIGZvcm1Db250cm9sTmFtZTogXCJ0ZXN0XCJcbiAgICogIH07XG4gICAqICB0aGlzLmFkZENvbnRyb2woY29uZmlnVG9hZGQpOyBvciB0aGlzLmFkZENvbnRyb2woY29uZmlnVG9hZGQsMSk7XG4gICAqIGBgYFxuICAgKi9cbiAgLy8gIHByb3RlY3RlZCBhZGRDb250cm9sKGxheW91dFRvQWRkPzogQmFzZUNvbnRyb2w8c3RyaW5nPltdLGluZGV4PzogbnVtYmVyKSB7XG4gIC8vICAgIGxheW91dFRvQWRkLmZvckVhY2goKGxheW91dCwgbGF5b3V0SW5kZXgpID0+IHtcbiAgLy8gICAgICBsYXlvdXQuY29tcG9uZW50Q29uZmlnLmZvckVhY2goXG4gIC8vICAgICAgICAoY29tcG9uZW50Q29uZmlnLCBjb21wb25lbnRJbmRleCkgPT4ge1xuICAvLyAgICAgICAgICBpZiAoY29tcG9uZW50Q29uZmlnLmZvcm1BcnJheSAhPT0gdW5kZWZpbmVkKSB7XG4gIC8vICAgICAgICAgICAgY29tcG9uZW50Q29uZmlnLmZvcm1BcnJheS5mb3JFYWNoKChjb250cm9sKSA9PiB7XG4gIC8vICAgICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5zZXRDb250cm9sKFxuICAvLyAgICAgICAgICAgICAgICAncHJvZHVjdE9wdGlvbicsXG4gIC8vICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlRm9ybUFycmF5R3JvdXAoY29udHJvbC5jb21wb25lbnRDb25maWcpLFxuICAvLyAgICAgICAgICAgICAgKTtcbiAgLy8gICAgICAgICAgICAgIHRoaXMuY29udHJvbHNDb25maWcuY29udGFpbmVyLmxheW91dENvbmZpZ1sxXS5jb21wb25lbnRDb25maWdbMF0uZm9ybUFycmF5LnB1c2goXG4gIC8vICAgICAgICAgICAgICAgIGxheW91dCxcbiAgLy8gICAgICAgICAgICAgICk7XG4gIC8vICAgICAgICAgICAgfSk7XG4gIC8vICAgICAgICAgIH0gZWxzZSB7XG4gIC8vICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAuYWRkQ29udHJvbChcbiAgLy8gICAgICAgICAgICAgIGNvbXBvbmVudENvbmZpZy5mb3JtQ29udHJvbE5hbWUsXG4gIC8vICAgICAgICAgICAgICBuZXcgVW50eXBlZEZvcm1Db250cm9sKFxuICAvLyAgICAgICAgICAgICAgICB7XG4gIC8vICAgICAgICAgICAgICAgICAgdmFsdWU6IGNvbXBvbmVudENvbmZpZy5jb21wb25lbnRQcm9wZXJ0eS52YWx1ZSxcbiAgLy8gICAgICAgICAgICAgICAgICBkaXNhYmxlZDpcbiAgLy8gICAgICAgICAgICAgICAgICBjb21wb25lbnRDb25maWcuY29tcG9uZW50UHJvcGVydHkuZGlzYWJsZWQsXG4gIC8vICAgICAgICAgICAgICAgIH0sXG4gIC8vICAgICAgICAgICAgICAgIHRoaXMuYmluZFZhbGlkYXRpb25zKFxuICAvLyAgICAgICAgICAgICAgICAgIGNvbXBvbmVudENvbmZpZy52YWxpZGF0aW9ucyB8fCBbXSxcbiAgLy8gICAgICAgICAgICAgICAgKSxcbiAgLy8gICAgICAgICAgICAgICksXG4gIC8vICAgICAgICAgICAgKTtcbiAgLy8gICAgICAgICAgICBpbmRleCAhPT0gbnVsbFxuICAvLyAgICAgICAgICAgICAgPyB0aGlzLmNvbnRyb2xzQ29uZmlnLmNvbnRhaW5lci5sYXlvdXRDb25maWcuc3BsaWNlKFxuICAvLyAgICAgICAgICAgICAgICBpbmRleCxcbiAgLy8gICAgICAgICAgICAgICAgMCxcbiAgLy8gICAgICAgICAgICAgICAgbGF5b3V0LFxuICAvLyAgICAgICAgICAgICAgKVxuICAvLyAgICAgICAgICAgICAgOiB0aGlzLmNvbnRyb2xzQ29uZmlnLmNvbnRhaW5lci5sYXlvdXRDb25maWcucHVzaChcbiAgLy8gICAgICAgICAgICAgICAgbGF5b3V0LFxuICAvLyAgICAgICAgICAgICAgKTtcbiAgLy8gICAgICAgICAgfVxuICAvLyAgICAgICAgfSxcbiAgLy8gICAgICApO1xuICAvLyAgICB9KTtcbiAgLy8gIH1cbn1cbiJdfQ==
@@ -1,33 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { FormControl } from "@angular/forms";
3
- import { map, startWith } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/material/autocomplete";
6
- import * as i2 from "@angular/material/core";
7
- import * as i3 from "@angular/material/input";
8
- import * as i4 from "@angular/material/form-field";
9
- import * as i5 from "@angular/material/tooltip";
10
- import * as i6 from "@angular/common";
11
- import * as i7 from "@angular/forms";
12
- export class AutoCompleteComponent {
13
- constructor() {
14
- this.autoCompleteControl = new FormControl();
15
- }
16
- ngOnInit() {
17
- this.filteredOptions = this.autoCompleteControl.valueChanges.pipe(startWith(''), map(value => this._filter(value)));
18
- }
19
- _filter(value) {
20
- const filterValue = value.toLowerCase();
21
- return this.control.options.filter((option) => option?.key?.toLowerCase().includes(filterValue));
22
- }
23
- optionSelected(value) {
24
- this.formGroup?.get(this.control?.formControlName)?.setValue(value);
25
- }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: AutoCompleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: AutoCompleteComponent, selector: "falcon-auto-complete", ngImport: i0, template: "<mat-form-field *ngIf=\"control.appearance != 'plain'; else plainInput\" [appearance]=\"control.appearance\"\n [formGroup]=\"formGroup\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <input matInput [formControl]=\"autoCompleteControl\" [formControlName]=\"control.formControlName\"\n [placeholder]=\"control.placeHolder\" [type]=\"control.type\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matAutocomplete]=\"auto\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='optionSelected($event.option.viewValue)'>\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n\n <span matPrefix [matTooltip]=\"control.prefix.toolTipText!\"\n [ngClass]=\"{'material-icons': control.prefix.isIcon}\">{{control.prefix.text}} &nbsp;&nbsp;</span>\n <span matSuffix [matTooltip]=\"control.suffix.toolTipText!\"\n [ngClass]=\"{'material-icons': control.suffix.isIcon}\">{{control.suffix.text}} &nbsp;&nbsp;</span>\n\n <mat-hint>{{control.hint.text}}</mat-hint>\n <ng-container *ngFor=\"let validation of control.validations;\" ngProjectAs=\"mat-error\">\n <mat-error *ngIf=\"formGroup.get(control.formControlName)?.hasError(validation?.name || '')\">{{validation.message}}\n </mat-error>\n </ng-container>\n</mat-form-field>\n\n<ng-template #plainInput>\n <div [formGroup]=\"formGroup\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <input type=\"text\" [formControl]=\"autoCompleteControl\" [formControlName]=\"control.formControlName\"\n [placeholder]=\"control.placeHolder\" [type]=\"control.type\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matAutocomplete]=\"auto\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n class=\"bg-gray-200 appearance-none border-2 border-gray-200 rounded w-full py-2 px-4 text-gray-700 leading-tight focus:outline-none focus:bg-white focus:border-purple-500\">\n </div>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='optionSelected($event.option.viewValue)'>\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: i1.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i1.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i7.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i7.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] }); }
28
- }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: AutoCompleteComponent, decorators: [{
30
- type: Component,
31
- args: [{ selector: 'falcon-auto-complete', template: "<mat-form-field *ngIf=\"control.appearance != 'plain'; else plainInput\" [appearance]=\"control.appearance\"\n [formGroup]=\"formGroup\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <mat-label>{{control.label}}</mat-label>\n <input matInput [formControl]=\"autoCompleteControl\" [formControlName]=\"control.formControlName\"\n [placeholder]=\"control.placeHolder\" [type]=\"control.type\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matAutocomplete]=\"auto\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\">\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='optionSelected($event.option.viewValue)'>\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n\n <span matPrefix [matTooltip]=\"control.prefix.toolTipText!\"\n [ngClass]=\"{'material-icons': control.prefix.isIcon}\">{{control.prefix.text}} &nbsp;&nbsp;</span>\n <span matSuffix [matTooltip]=\"control.suffix.toolTipText!\"\n [ngClass]=\"{'material-icons': control.suffix.isIcon}\">{{control.suffix.text}} &nbsp;&nbsp;</span>\n\n <mat-hint>{{control.hint.text}}</mat-hint>\n <ng-container *ngFor=\"let validation of control.validations;\" ngProjectAs=\"mat-error\">\n <mat-error *ngIf=\"formGroup.get(control.formControlName)?.hasError(validation?.name || '')\">{{validation.message}}\n </mat-error>\n </ng-container>\n</mat-form-field>\n\n<ng-template #plainInput>\n <div [formGroup]=\"formGroup\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <input type=\"text\" [formControl]=\"autoCompleteControl\" [formControlName]=\"control.formControlName\"\n [placeholder]=\"control.placeHolder\" [type]=\"control.type\" [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [matAutocomplete]=\"auto\"\n [required]=\"formGroup.get(control.formControlName)?.errors !== null && formGroup.get(control.formControlName)?.errors?.['required']\"\n class=\"bg-gray-200 appearance-none border-2 border-gray-200 rounded w-full py-2 px-4 text-gray-700 leading-tight focus:outline-none focus:bg-white focus:border-purple-500\">\n </div>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)='optionSelected($event.option.viewValue)'>\n <mat-option *ngFor=\"let item of filteredOptions | async\" [value]=\"item.key\">\n {{item.value}}\n </mat-option>\n </mat-autocomplete>\n</ng-template>\n" }]
32
- }], ctorParameters: () => [] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1jb21wbGV0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbmcvdGFpbHdpbmQvc3JjL2xpYi9jb21wb25lbnQvYXV0by1jb21wbGV0ZS9hdXRvLWNvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9hdXRvLWNvbXBsZXRlL2F1dG8tY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUMsV0FBVyxFQUFZLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBT2hELE1BQU0sT0FBTyxxQkFBcUI7SUFJaEM7UUFEQSx3QkFBbUIsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFHakIsUUFBUTtRQUNOLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFTyxPQUFPLENBQUMsS0FBYTtRQUMzQixNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDeEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFnQixFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLGVBQWUsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0RSxDQUFDOzhHQWxCVSxxQkFBcUI7a0dBQXJCLHFCQUFxQiw0RENWbEMsMC9FQXVDQTs7MkZEN0JhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUNvbnRyb2wsIEZvcm1Hcm91cH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QmFzZUNvbnRyb2wsSU9wdGlvbnN9IGZyb20gXCJAZmFsY29uLW5nL2NvcmVcIlxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmFsY29uLWF1dG8tY29tcGxldGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0by1jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F1dG8tY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b0NvbXBsZXRlQ29tcG9uZW50IHtcbiAgY29udHJvbCE6IEJhc2VDb250cm9sPHN0cmluZz47XG4gIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcbiAgYXV0b0NvbXBsZXRlQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgpO1xuICBjb25zdHJ1Y3RvcigpIHsgfVxuICBmaWx0ZXJlZE9wdGlvbnMhOiBPYnNlcnZhYmxlPElPcHRpb25zW10+O1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zID0gdGhpcy5hdXRvQ29tcGxldGVDb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aCgnJyksbWFwKHZhbHVlID0+IHRoaXMuX2ZpbHRlcih2YWx1ZSkpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbHRlcih2YWx1ZTogc3RyaW5nKTogSU9wdGlvbnNbXSB7XG4gICAgY29uc3QgZmlsdGVyVmFsdWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2wub3B0aW9ucy5maWx0ZXIoKG9wdGlvbjogSU9wdGlvbnMpID0+IG9wdGlvbj8ua2V5Py50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGZpbHRlclZhbHVlKSk7XG4gIH1cblxuICBvcHRpb25TZWxlY3RlZCh2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5mb3JtR3JvdXA/LmdldCh0aGlzLmNvbnRyb2w/LmZvcm1Db250cm9sTmFtZSk/LnNldFZhbHVlKHZhbHVlKTtcbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwiY29udHJvbC5hcHBlYXJhbmNlICE9ICdwbGFpbic7IGVsc2UgcGxhaW5JbnB1dFwiIFthcHBlYXJhbmNlXT1cImNvbnRyb2wuYXBwZWFyYW5jZVwiXG4gIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIj5cbiAgPG1hdC1sYWJlbD57e2NvbnRyb2wubGFiZWx9fTwvbWF0LWxhYmVsPlxuICA8aW5wdXQgbWF0SW5wdXQgW2Zvcm1Db250cm9sXT1cImF1dG9Db21wbGV0ZUNvbnRyb2xcIiBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiY29udHJvbC5wbGFjZUhvbGRlclwiIFt0eXBlXT1cImNvbnRyb2wudHlwZVwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgIFtyZXF1aXJlZF09XCJmb3JtR3JvdXAuZ2V0KGNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lKT8uZXJyb3JzICE9PSBudWxsICYmIGZvcm1Hcm91cC5nZXQoY29udHJvbC5mb3JtQ29udHJvbE5hbWUpPy5lcnJvcnM/LlsncmVxdWlyZWQnXVwiPlxuICA8bWF0LWF1dG9jb21wbGV0ZSAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiIChvcHRpb25TZWxlY3RlZCk9J29wdGlvblNlbGVjdGVkKCRldmVudC5vcHRpb24udmlld1ZhbHVlKSc+XG4gICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsdGVyZWRPcHRpb25zIHwgYXN5bmNcIiBbdmFsdWVdPVwiaXRlbS5rZXlcIj5cbiAgICAgIHt7aXRlbS52YWx1ZX19XG4gICAgPC9tYXQtb3B0aW9uPlxuICA8L21hdC1hdXRvY29tcGxldGU+XG5cbiAgPHNwYW4gbWF0UHJlZml4IFttYXRUb29sdGlwXT1cImNvbnRyb2wucHJlZml4LnRvb2xUaXBUZXh0IVwiXG4gICAgW25nQ2xhc3NdPVwieydtYXRlcmlhbC1pY29ucyc6IGNvbnRyb2wucHJlZml4LmlzSWNvbn1cIj57e2NvbnRyb2wucHJlZml4LnRleHR9fSAmbmJzcDsmbmJzcDs8L3NwYW4+XG4gIDxzcGFuIG1hdFN1ZmZpeCBbbWF0VG9vbHRpcF09XCJjb250cm9sLnN1ZmZpeC50b29sVGlwVGV4dCFcIlxuICAgIFtuZ0NsYXNzXT1cInsnbWF0ZXJpYWwtaWNvbnMnOiBjb250cm9sLnN1ZmZpeC5pc0ljb259XCI+e3tjb250cm9sLnN1ZmZpeC50ZXh0fX0gJm5ic3A7Jm5ic3A7PC9zcGFuPlxuXG4gIDxtYXQtaGludD57e2NvbnRyb2wuaGludC50ZXh0fX08L21hdC1oaW50PlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCB2YWxpZGF0aW9uIG9mIGNvbnRyb2wudmFsaWRhdGlvbnM7XCIgbmdQcm9qZWN0QXM9XCJtYXQtZXJyb3JcIj5cbiAgICA8bWF0LWVycm9yICpuZ0lmPVwiZm9ybUdyb3VwLmdldChjb250cm9sLmZvcm1Db250cm9sTmFtZSk/Lmhhc0Vycm9yKHZhbGlkYXRpb24/Lm5hbWUgfHwgJycpXCI+e3t2YWxpZGF0aW9uLm1lc3NhZ2V9fVxuICAgIDwvbWF0LWVycm9yPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbWF0LWZvcm0tZmllbGQ+XG5cbjxuZy10ZW1wbGF0ZSAjcGxhaW5JbnB1dD5cbiAgPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCI+XG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgW2Zvcm1Db250cm9sXT1cImF1dG9Db21wbGV0ZUNvbnRyb2xcIiBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJjb250cm9sLnBsYWNlSG9sZGVyXCIgW3R5cGVdPVwiY29udHJvbC50eXBlXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCJcbiAgICAgIFtyZXF1aXJlZF09XCJmb3JtR3JvdXAuZ2V0KGNvbnRyb2wuZm9ybUNvbnRyb2xOYW1lKT8uZXJyb3JzICE9PSBudWxsICYmIGZvcm1Hcm91cC5nZXQoY29udHJvbC5mb3JtQ29udHJvbE5hbWUpPy5lcnJvcnM/LlsncmVxdWlyZWQnXVwiXG4gICAgICBjbGFzcz1cImJnLWdyYXktMjAwIGFwcGVhcmFuY2Utbm9uZSBib3JkZXItMiBib3JkZXItZ3JheS0yMDAgcm91bmRlZCB3LWZ1bGwgcHktMiBweC00IHRleHQtZ3JheS03MDAgbGVhZGluZy10aWdodCBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6Ymctd2hpdGUgZm9jdXM6Ym9yZGVyLXB1cnBsZS01MDBcIj5cbiAgPC9kaXY+XG4gIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT0nb3B0aW9uU2VsZWN0ZWQoJGV2ZW50Lm9wdGlvbi52aWV3VmFsdWUpJz5cbiAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZE9wdGlvbnMgfCBhc3luY1wiIFt2YWx1ZV09XCJpdGVtLmtleVwiPlxuICAgICAge3tpdGVtLnZhbHVlfX1cbiAgICA8L21hdC1vcHRpb24+XG4gIDwvbWF0LWF1dG9jb21wbGV0ZT5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,27 +0,0 @@
1
- import { Component, Inject } from '@angular/core';
2
- import { MAT_BOTTOM_SHEET_DATA } from "@angular/material/bottom-sheet";
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/material/bottom-sheet";
5
- import * as i2 from "@angular/material/core";
6
- import * as i3 from "@angular/material/list";
7
- import * as i4 from "@angular/common";
8
- export class BottomSheetComponent {
9
- constructor(_bottomSheetRef, data) {
10
- this._bottomSheetRef = _bottomSheetRef;
11
- this.data = data;
12
- }
13
- click(event, item) {
14
- this._bottomSheetRef.dismiss(item);
15
- event.preventDefault();
16
- }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BottomSheetComponent, deps: [{ token: i1.MatBottomSheetRef }, { token: MAT_BOTTOM_SHEET_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BottomSheetComponent, selector: "lib-bottom-sheet", ngImport: i0, template: "<mat-nav-list>\n <ng-container *ngFor=\"let item of data\">\n <a [href]=\"item.link\" mat-list-item (click)=\"click($event,item)\">\n <span matListItemTitle>{{item.levelOneText}}</span>\n <span matLine>{{item.levelTwoText}}</span>\n </a>\n </ng-container>\n\n</mat-nav-list>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.MatLine, selector: "[mat-line], [matLine]" }, { kind: "component", type: i3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i3.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BottomSheetComponent, decorators: [{
21
- type: Component,
22
- args: [{ selector: 'lib-bottom-sheet', template: "<mat-nav-list>\n <ng-container *ngFor=\"let item of data\">\n <a [href]=\"item.link\" mat-list-item (click)=\"click($event,item)\">\n <span matListItemTitle>{{item.levelOneText}}</span>\n <span matLine>{{item.levelTwoText}}</span>\n </a>\n </ng-container>\n\n</mat-nav-list>\n" }]
23
- }], ctorParameters: () => [{ type: i1.MatBottomSheetRef }, { type: undefined, decorators: [{
24
- type: Inject,
25
- args: [MAT_BOTTOM_SHEET_DATA]
26
- }] }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tLXNoZWV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9ib3R0b20tc2hlZXQvYm90dG9tLXNoZWV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9ib3R0b20tc2hlZXQvYm90dG9tLXNoZWV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBQyxxQkFBcUIsRUFBb0IsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7O0FBT3hGLE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFBb0IsZUFBd0QsRUFBd0MsSUFBUztRQUF6RyxvQkFBZSxHQUFmLGVBQWUsQ0FBeUM7UUFBd0MsU0FBSSxHQUFKLElBQUksQ0FBSztJQUFJLENBQUM7SUFFbEksS0FBSyxDQUFDLEtBQWlCLEVBQUUsSUFBVTtRQUNqQyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDekIsQ0FBQzs4R0FOVSxvQkFBb0IsbURBQ3VELHFCQUFxQjtrR0FEaEcsb0JBQW9CLHdEQ1JqQyx3U0FTQTs7MkZERGEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGtCQUFrQjs7MEJBS21ELE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01BVF9CT1RUT01fU0hFRVRfREFUQSwgTWF0Qm90dG9tU2hlZXRSZWZ9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9ib3R0b20tc2hlZXRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWJvdHRvbS1zaGVldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ib3R0b20tc2hlZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ib3R0b20tc2hlZXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBCb3R0b21TaGVldENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2JvdHRvbVNoZWV0UmVmOiBNYXRCb3R0b21TaGVldFJlZjxCb3R0b21TaGVldENvbXBvbmVudD4sIEBJbmplY3QoTUFUX0JPVFRPTV9TSEVFVF9EQVRBKSBwdWJsaWMgZGF0YTogYW55KSB7IH1cblxuICBjbGljayhldmVudDogTW91c2VFdmVudCwgaXRlbSA6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuX2JvdHRvbVNoZWV0UmVmLmRpc21pc3MoaXRlbSk7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxufVxuIiwiPG1hdC1uYXYtbGlzdD5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhXCI+XG4gICAgPGEgW2hyZWZdPVwiaXRlbS5saW5rXCIgbWF0LWxpc3QtaXRlbSAoY2xpY2spPVwiY2xpY2soJGV2ZW50LGl0ZW0pXCI+XG4gICAgICA8c3BhbiBtYXRMaXN0SXRlbVRpdGxlPnt7aXRlbS5sZXZlbE9uZVRleHR9fTwvc3Bhbj5cbiAgICAgIDxzcGFuIG1hdExpbmU+e3tpdGVtLmxldmVsVHdvVGV4dH19PC9zcGFuPlxuICAgIDwvYT5cbiAgPC9uZy1jb250YWluZXI+XG5cbjwvbWF0LW5hdi1saXN0PlxuIl19
@@ -1,27 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/button";
4
- import * as i2 from "@angular/material/icon";
5
- import * as i3 from "@angular/common";
6
- import * as i4 from "@angular/router";
7
- export class ButtonComponent {
8
- constructor() {
9
- this.btnClick = new EventEmitter();
10
- }
11
- childBtnClick() {
12
- this.btnClick.emit("Button Click Event");
13
- }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: ButtonComponent, selector: "falcon-button", inputs: { control: "control", formGroup: "formGroup" }, outputs: { btnClick: "btnClick" }, ngImport: i0, template: "<div [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <ng-container [ngSwitch]=\"control.appearance\">\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [color]=\"control.color\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\" mat-button *ngSwitchCase=\"0\">\n <mat-icon *ngIf=\"control?.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon>&nbsp;{{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-raised-button *ngSwitchCase=\"1\">\n <mat-icon *ngIf=\"control.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon>&nbsp;{{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-stroked-button *ngSwitchCase=\"2\">\n <mat-icon *ngIf=\"control.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon>&nbsp;{{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-flat-button *ngSwitchCase=\"3\">\n <mat-icon *ngIf=\"control.suffix.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon>&nbsp;{{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-icon-button [attr.aria-label]=\"control.label\" *ngSwitchCase=\"4\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\" mat-fab\n [attr.aria-label]=\"control.label\" *ngSwitchCase=\"5\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\" mat-mini-fab\n [attr.aria-label]=\"control.label\" *ngSwitchCase=\"6\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <a mat-stroked-button *ngSwitchCase=\"7\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\" routerLink=\"[]\">{{control.label}}</a>\n <a mat-stroked-button *ngSwitchCase=\"8\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\"\n href=\"{{control.value}}\">{{control.label}}</a>\n </ng-container>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i1.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "component", type: i1.MatFabButton, selector: "button[mat-fab]", inputs: ["extended"], exportAs: ["matButton"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ButtonComponent, decorators: [{
18
- type: Component,
19
- args: [{ selector: 'falcon-button', template: "<div [ngStyle]=\"control.style\" [ngClass]=\"control.class\">\n <ng-container [ngSwitch]=\"control.appearance\">\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [color]=\"control.color\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\" mat-button *ngSwitchCase=\"0\">\n <mat-icon *ngIf=\"control?.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon>&nbsp;{{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-raised-button *ngSwitchCase=\"1\">\n <mat-icon *ngIf=\"control.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon>&nbsp;{{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-stroked-button *ngSwitchCase=\"2\">\n <mat-icon *ngIf=\"control.suffix?.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon>&nbsp;{{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-flat-button *ngSwitchCase=\"3\">\n <mat-icon *ngIf=\"control.suffix.isIcon\" style=\"margin-bottom: 1px;\">\n {{control.suffix.text}}</mat-icon>&nbsp;{{control.label}}\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\"\n mat-icon-button [attr.aria-label]=\"control.label\" *ngSwitchCase=\"4\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\" mat-fab\n [attr.aria-label]=\"control.label\" *ngSwitchCase=\"5\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <button [disabled]=\"control.disabled\" (click)=\"childBtnClick()\"\n [type]=\"control.type\" [ngClass]=\"control.class\"\n [color]=\"control.color\" [ngStyle]=\"control.style\" mat-mini-fab\n [attr.aria-label]=\"control.label\" *ngSwitchCase=\"6\">\n <mat-icon>{{control.label}}</mat-icon>\n </button>\n <a mat-stroked-button *ngSwitchCase=\"7\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\" routerLink=\"[]\">{{control.label}}</a>\n <a mat-stroked-button *ngSwitchCase=\"8\" [ngClass]=\"control.class\"\n [ngStyle]=\"control.style\"\n href=\"{{control.value}}\">{{control.label}}</a>\n </ng-container>\n</div>" }]
20
- }], propDecorators: { control: [{
21
- type: Input
22
- }], formGroup: [{
23
- type: Input
24
- }], btnClick: [{
25
- type: Output
26
- }] } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVNyRSxNQUFNLE9BQU8sZUFBZTtJQUw1QjtRQVFZLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBSWpEO0lBSEMsYUFBYTtRQUNYLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDM0MsQ0FBQzs4R0FOVSxlQUFlO2tHQUFmLGVBQWUsZ0pDVDVCLGt1R0FxRE07OzJGRDVDTyxlQUFlO2tCQUwzQixTQUFTOytCQUNFLGVBQWU7OEJBS2hCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUdyb3VwfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7QmFzZUNvbnRyb2x9IGZyb20gXCJAZmFsY29uLW5nL2NvcmVcIlxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmYWxjb24tYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2J1dHRvbi5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgY29udHJvbCE6IEJhc2VDb250cm9sPHN0cmluZz47XG4gIEBJbnB1dCgpIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcbiAgQE91dHB1dCgpIGJ0bkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIGNoaWxkQnRuQ2xpY2soKSB7XG4gICAgdGhpcy5idG5DbGljay5lbWl0KFwiQnV0dG9uIENsaWNrIEV2ZW50XCIpO1xuICB9XG59XG4iLCI8ZGl2IFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29udHJvbC5hcHBlYXJhbmNlXCI+XG4gICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImNvbnRyb2wuZGlzYWJsZWRcIiAoY2xpY2spPVwiY2hpbGRCdG5DbGljaygpXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJjb250cm9sLmNvbG9yXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgbWF0LWJ1dHRvbiAqbmdTd2l0Y2hDYXNlPVwiMFwiPlxuICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiY29udHJvbD8uc3VmZml4Py5pc0ljb25cIiBzdHlsZT1cIm1hcmdpbi1ib3R0b206IDFweDtcIj5cbiAgICAgICAgICAgICAgICB7e2NvbnRyb2wuc3VmZml4LnRleHR9fTwvbWF0LWljb24+Jm5ic3A7e3tjb250cm9sLmxhYmVsfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImNvbnRyb2wuZGlzYWJsZWRcIiAoY2xpY2spPVwiY2hpbGRCdG5DbGljaygpXCJcbiAgICAgICAgICAgIFt0eXBlXT1cImNvbnRyb2wudHlwZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgW2NvbG9yXT1cImNvbnRyb2wuY29sb3JcIiBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCJcbiAgICAgICAgICAgIG1hdC1yYWlzZWQtYnV0dG9uICpuZ1N3aXRjaENhc2U9XCIxXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJjb250cm9sLnN1ZmZpeD8uaXNJY29uXCIgc3R5bGU9XCJtYXJnaW4tYm90dG9tOiAxcHg7XCI+XG4gICAgICAgICAgICAgICAge3tjb250cm9sLnN1ZmZpeC50ZXh0fX08L21hdC1pY29uPiZuYnNwO3t7Y29udHJvbC5sYWJlbH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJjb250cm9sLmRpc2FibGVkXCIgKGNsaWNrKT1cImNoaWxkQnRuQ2xpY2soKVwiXG4gICAgICAgICAgICBbdHlwZV09XCJjb250cm9sLnR5cGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJjb250cm9sLmNvbG9yXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiXG4gICAgICAgICAgICBtYXQtc3Ryb2tlZC1idXR0b24gKm5nU3dpdGNoQ2FzZT1cIjJcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImNvbnRyb2wuc3VmZml4Py5pc0ljb25cIiBzdHlsZT1cIm1hcmdpbi1ib3R0b206IDFweDtcIj5cbiAgICAgICAgICAgICAgICB7e2NvbnRyb2wuc3VmZml4LnRleHR9fTwvbWF0LWljb24+Jm5ic3A7e3tjb250cm9sLmxhYmVsfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImNvbnRyb2wuZGlzYWJsZWRcIiAoY2xpY2spPVwiY2hpbGRCdG5DbGljaygpXCJcbiAgICAgICAgICAgIFt0eXBlXT1cImNvbnRyb2wudHlwZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgW2NvbG9yXT1cImNvbnRyb2wuY29sb3JcIiBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCJcbiAgICAgICAgICAgIG1hdC1mbGF0LWJ1dHRvbiAqbmdTd2l0Y2hDYXNlPVwiM1wiPlxuICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiY29udHJvbC5zdWZmaXguaXNJY29uXCIgc3R5bGU9XCJtYXJnaW4tYm90dG9tOiAxcHg7XCI+XG4gICAgICAgICAgICAgICAge3tjb250cm9sLnN1ZmZpeC50ZXh0fX08L21hdC1pY29uPiZuYnNwO3t7Y29udHJvbC5sYWJlbH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJjb250cm9sLmRpc2FibGVkXCIgKGNsaWNrKT1cImNoaWxkQnRuQ2xpY2soKVwiXG4gICAgICAgICAgICBbdHlwZV09XCJjb250cm9sLnR5cGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJjb250cm9sLmNvbG9yXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b24gW2F0dHIuYXJpYS1sYWJlbF09XCJjb250cm9sLmxhYmVsXCIgKm5nU3dpdGNoQ2FzZT1cIjRcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj57e2NvbnRyb2wubGFiZWx9fTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJjb250cm9sLmRpc2FibGVkXCIgKGNsaWNrKT1cImNoaWxkQnRuQ2xpY2soKVwiXG4gICAgICAgICAgICBbdHlwZV09XCJjb250cm9sLnR5cGVcIiBbbmdDbGFzc109XCJjb250cm9sLmNsYXNzXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJjb250cm9sLmNvbG9yXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIG1hdC1mYWJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29udHJvbC5sYWJlbFwiICpuZ1N3aXRjaENhc2U9XCI1XCI+XG4gICAgICAgICAgICA8bWF0LWljb24+e3tjb250cm9sLmxhYmVsfX08L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBbZGlzYWJsZWRdPVwiY29udHJvbC5kaXNhYmxlZFwiIChjbGljayk9XCJjaGlsZEJ0bkNsaWNrKClcIlxuICAgICAgICAgICAgW3R5cGVdPVwiY29udHJvbC50eXBlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiXG4gICAgICAgICAgICBbY29sb3JdPVwiY29udHJvbC5jb2xvclwiIFtuZ1N0eWxlXT1cImNvbnRyb2wuc3R5bGVcIiBtYXQtbWluaS1mYWJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiY29udHJvbC5sYWJlbFwiICpuZ1N3aXRjaENhc2U9XCI2XCI+XG4gICAgICAgICAgICA8bWF0LWljb24+e3tjb250cm9sLmxhYmVsfX08L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGEgbWF0LXN0cm9rZWQtYnV0dG9uICpuZ1N3aXRjaENhc2U9XCI3XCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiXG4gICAgICAgICAgICBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgcm91dGVyTGluaz1cIltdXCI+e3tjb250cm9sLmxhYmVsfX08L2E+XG4gICAgICAgIDxhIG1hdC1zdHJva2VkLWJ1dHRvbiAqbmdTd2l0Y2hDYXNlPVwiOFwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiXG4gICAgICAgICAgICBocmVmPVwie3tjb250cm9sLnZhbHVlfX1cIj57e2NvbnRyb2wubGFiZWx9fTwvYT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PiJdfQ==
@@ -1,32 +0,0 @@
1
- import { Component, EventEmitter, Output } from '@angular/core';
2
- import { FormControl, FormGroup } from "@angular/forms";
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/material/button-toggle";
5
- import * as i2 from "@angular/material/icon";
6
- import * as i3 from "@angular/material/form-field";
7
- import * as i4 from "@angular/common";
8
- import * as i5 from "@angular/forms";
9
- export class ButtonToggleComponent {
10
- constructor() {
11
- this.toggleGroupChange = new EventEmitter();
12
- }
13
- ngOnInit() {
14
- if (this.formGroup === undefined) {
15
- this.formGroup = new FormGroup({
16
- default: new FormControl()
17
- });
18
- }
19
- }
20
- toggleChange($event) {
21
- this.toggleGroupChange.emit($event.value);
22
- }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ButtonToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: ButtonToggleComponent, selector: "falcon-button-toggle", outputs: { toggleGroupChange: "toggleGroupChange" }, ngImport: i0, template: "<div [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [formGroup]=\"formGroup\">\n <mat-label [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n *ngIf=\"control.label != undefined\">\n {{control.label | titlecase}}\n </mat-label>\n <mat-button-toggle-group\n [formControlName]=\"control.formControlName != undefined ? control.formControlName : 'default'\"\n [appearance]=\"control.appearance\" [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\" [attr.aria-label]=\"control.label\"\n class=\"botton-toggle\" (change)=\"toggleChange($event)\">\n <mat-button-toggle *ngFor=\"let item of control.options\" [value]=\"item?.value\"\n [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\">\n <mat-icon [ngClass]=\"item?.class\" aria-hidden=\"false\" aria-label=\"item icon\" *ngIf=\"item?.icon != undefined\">\n {{item?.icon}}\n </mat-icon>\n {{item.viewValue | titlecase}}\n </mat-button-toggle>\n </mat-button-toggle-group>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i4.TitleCasePipe, name: "titlecase" }] }); }
25
- }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ButtonToggleComponent, decorators: [{
27
- type: Component,
28
- args: [{ selector: 'falcon-button-toggle', template: "<div [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [formGroup]=\"formGroup\">\n <mat-label [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n *ngIf=\"control.label != undefined\">\n {{control.label | titlecase}}\n </mat-label>\n <mat-button-toggle-group\n [formControlName]=\"control.formControlName != undefined ? control.formControlName : 'default'\"\n [appearance]=\"control.appearance\" [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\" [attr.aria-label]=\"control.label\"\n class=\"botton-toggle\" (change)=\"toggleChange($event)\">\n <mat-button-toggle *ngFor=\"let item of control.options\" [value]=\"item?.value\"\n [ngStyle]=\"control.style\"\n [ngClass]=\"control.class\">\n <mat-icon [ngClass]=\"item?.class\" aria-hidden=\"false\" aria-label=\"item icon\" *ngIf=\"item?.icon != undefined\">\n {{item?.icon}}\n </mat-icon>\n {{item.viewValue | titlecase}}\n </mat-button-toggle>\n </mat-button-toggle-group>\n</div>" }]
29
- }], propDecorators: { toggleGroupChange: [{
30
- type: Output
31
- }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbmcvdGFpbHdpbmQvc3JjL2xpYi9jb21wb25lbnQvYnV0dG9uLXRvZ2dsZS9idXR0b24tdG9nZ2xlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9idXR0b24tdG9nZ2xlL2J1dHRvbi10b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7QUFTdEQsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQVFZLHNCQUFpQixHQUF3QyxJQUFJLFlBQVksRUFBeUIsQ0FBQztLQVk5RztJQVhDLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLFNBQVMsQ0FBQztnQkFDN0IsT0FBTyxFQUFFLElBQUksV0FBVyxFQUFFO2FBQzNCLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQVc7UUFDdEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs4R0FkVSxxQkFBcUI7a0dBQXJCLHFCQUFxQixpSENWbEMsc2lDQW9CTTs7MkZEVk8scUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLHNCQUFzQjs4QkFPdEIsaUJBQWlCO3NCQUExQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3JtQ29udHJvbCwgRm9ybUdyb3VwfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7TWF0QnV0dG9uVG9nZ2xlQ2hhbmdlfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZVwiO1xuaW1wb3J0IHtCYXNlQ29udHJvbH0gZnJvbSBcIkBmYWxjb24tbmcvY29yZVwiXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZhbGNvbi1idXR0b24tdG9nZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi10b2dnbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9idXR0b24tdG9nZ2xlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJ1dHRvblRvZ2dsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnRyb2whOiBCYXNlQ29udHJvbDxzdHJpbmc+O1xuICBmb3JtR3JvdXAhOiBGb3JtR3JvdXA7XG4gIEBPdXRwdXQoKSB0b2dnbGVHcm91cENoYW5nZTogRXZlbnRFbWl0dGVyPE1hdEJ1dHRvblRvZ2dsZUNoYW5nZT4gPSBuZXcgRXZlbnRFbWl0dGVyPE1hdEJ1dHRvblRvZ2dsZUNoYW5nZT4oKTtcbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgIGRlZmF1bHQ6IG5ldyBGb3JtQ29udHJvbCgpXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVDaGFuZ2UoJGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnRvZ2dsZUdyb3VwQ2hhbmdlLmVtaXQoJGV2ZW50LnZhbHVlKTtcbiAgfVxufVxuIiwiPGRpdiBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCIgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiXG4gICAgIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gIDxtYXQtbGFiZWwgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICAgICAgICpuZ0lmPVwiY29udHJvbC5sYWJlbCAhPSB1bmRlZmluZWRcIj5cbiAgICB7e2NvbnRyb2wubGFiZWwgfCB0aXRsZWNhc2V9fVxuICA8L21hdC1sYWJlbD5cbiAgPG1hdC1idXR0b24tdG9nZ2xlLWdyb3VwXG4gICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb250cm9sLmZvcm1Db250cm9sTmFtZSAhPSB1bmRlZmluZWQgPyBjb250cm9sLmZvcm1Db250cm9sTmFtZSA6ICdkZWZhdWx0J1wiXG4gICAgW2FwcGVhcmFuY2VdPVwiY29udHJvbC5hcHBlYXJhbmNlXCIgW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiXG4gICAgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiIFthdHRyLmFyaWEtbGFiZWxdPVwiY29udHJvbC5sYWJlbFwiXG4gICAgY2xhc3M9XCJib3R0b24tdG9nZ2xlXCIgKGNoYW5nZSk9XCJ0b2dnbGVDaGFuZ2UoJGV2ZW50KVwiPlxuICAgIDxtYXQtYnV0dG9uLXRvZ2dsZSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250cm9sLm9wdGlvbnNcIiBbdmFsdWVdPVwiaXRlbT8udmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJjb250cm9sLnN0eWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiY29udHJvbC5jbGFzc1wiPlxuICAgICAgPG1hdC1pY29uIFtuZ0NsYXNzXT1cIml0ZW0/LmNsYXNzXCIgYXJpYS1oaWRkZW49XCJmYWxzZVwiIGFyaWEtbGFiZWw9XCJpdGVtIGljb25cIiAqbmdJZj1cIml0ZW0/Lmljb24gIT0gdW5kZWZpbmVkXCI+XG4gICAgICAgIHt7aXRlbT8uaWNvbn19XG4gICAgICA8L21hdC1pY29uPlxuICAgICAge3tpdGVtLnZpZXdWYWx1ZSB8IHRpdGxlY2FzZX19XG4gICAgPC9tYXQtYnV0dG9uLXRvZ2dsZT5cbiAgPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cbjwvZGl2PiJdfQ==
@@ -1,18 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/checkbox";
4
- import * as i2 from "@angular/common";
5
- import * as i3 from "@angular/forms";
6
- export class CheckboxComponent {
7
- change($event) {
8
- if (this.control.event !== undefined)
9
- this.control?.event?.change?.emit($event);
10
- }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: CheckboxComponent, selector: "falcon-checkbox", ngImport: i0, template: "<div [formGroup]=\"formGroup\">\n <mat-checkbox [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [color]=\"control.color != null ? control.color : 'accent'\" [labelPosition]=\"control.labelPosition\"\n [formControlName]=\"control.formControlName\" (change)=\"change($event)\">\n {{control.label}}</mat-checkbox>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: CheckboxComponent, decorators: [{
15
- type: Component,
16
- args: [{ selector: 'falcon-checkbox', template: "<div [formGroup]=\"formGroup\">\n <mat-checkbox [ngStyle]=\"control.style\" [ngClass]=\"control.class\"\n [color]=\"control.color != null ? control.color : 'accent'\" [labelPosition]=\"control.labelPosition\"\n [formControlName]=\"control.formControlName\" (change)=\"change($event)\">\n {{control.label}}</mat-checkbox>\n</div>" }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLW5nL3RhaWx3aW5kL3NyYy9saWIvY29tcG9uZW50L2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1uZy90YWlsd2luZC9zcmMvbGliL2NvbXBvbmVudC9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVMxQyxNQUFNLE9BQU8saUJBQWlCO0lBRzVCLE1BQU0sQ0FBQyxNQUFXO1FBQ2hCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssU0FBUztZQUNsQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUM7OEdBTlUsaUJBQWlCO2tHQUFqQixpQkFBaUIsdURDVDlCLGtXQUtNOzsyRkRJTyxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0Jhc2VDb250cm9sfSBmcm9tIFwiQGZhbGNvbi1uZy9jb3JlXCJcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmFsY29uLWNoZWNrYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hlY2tib3guY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hDb21wb25lbnQge1xuICBjb250cm9sITogQmFzZUNvbnRyb2w8c3RyaW5nPjtcbiAgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xuICBjaGFuZ2UoJGV2ZW50OiBhbnkpIHtcbiAgICBpZiAodGhpcy5jb250cm9sLmV2ZW50ICE9PSB1bmRlZmluZWQpXG4gICAgICB0aGlzLmNvbnRyb2w/LmV2ZW50Py5jaGFuZ2U/LmVtaXQoJGV2ZW50KTtcbiAgfVxufVxuIiwiPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICAgIDxtYXQtY2hlY2tib3ggW25nU3R5bGVdPVwiY29udHJvbC5zdHlsZVwiIFtuZ0NsYXNzXT1cImNvbnRyb2wuY2xhc3NcIlxuICAgICAgICBbY29sb3JdPVwiY29udHJvbC5jb2xvciAhPSBudWxsID8gY29udHJvbC5jb2xvciA6ICdhY2NlbnQnXCIgW2xhYmVsUG9zaXRpb25dPVwiY29udHJvbC5sYWJlbFBvc2l0aW9uXCJcbiAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb250cm9sLmZvcm1Db250cm9sTmFtZVwiIChjaGFuZ2UpPVwiY2hhbmdlKCRldmVudClcIj5cbiAgICAgICAge3tjb250cm9sLmxhYmVsfX08L21hdC1jaGVja2JveD5cbjwvZGl2PiJdfQ==