@sd-angular/core 1.3.243 → 1.3.245

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 (105) hide show
  1. package/autocomplete/sd-angular-core-autocomplete.metadata.json +1 -1
  2. package/bundles/sd-angular-core-autocomplete.umd.js +20 -21
  3. package/bundles/sd-angular-core-autocomplete.umd.js.map +1 -1
  4. package/bundles/sd-angular-core-autocomplete.umd.min.js +1 -15
  5. package/bundles/sd-angular-core-autocomplete.umd.min.js.map +1 -1
  6. package/bundles/sd-angular-core-date-full.umd.js +716 -0
  7. package/bundles/sd-angular-core-date-full.umd.js.map +1 -0
  8. package/bundles/sd-angular-core-date-full.umd.min.js +2 -0
  9. package/bundles/sd-angular-core-date-full.umd.min.js.map +1 -0
  10. package/bundles/sd-angular-core-date-time.umd.js +5 -6
  11. package/bundles/sd-angular-core-date-time.umd.js.map +1 -1
  12. package/bundles/sd-angular-core-date-time.umd.min.js +1 -1
  13. package/bundles/sd-angular-core-date-time.umd.min.js.map +1 -1
  14. package/bundles/sd-angular-core-date.umd.js +718 -0
  15. package/bundles/sd-angular-core-date.umd.js.map +1 -0
  16. package/bundles/sd-angular-core-date.umd.min.js +2 -0
  17. package/bundles/sd-angular-core-date.umd.min.js.map +1 -0
  18. package/bundles/sd-angular-core-export.umd.js +3 -0
  19. package/bundles/sd-angular-core-export.umd.js.map +1 -1
  20. package/bundles/sd-angular-core-export.umd.min.js +1 -1
  21. package/bundles/sd-angular-core-export.umd.min.js.map +1 -1
  22. package/bundles/sd-angular-core-form.umd.js +10 -4
  23. package/bundles/sd-angular-core-form.umd.js.map +1 -1
  24. package/bundles/sd-angular-core-form.umd.min.js +1 -1
  25. package/bundles/sd-angular-core-form.umd.min.js.map +1 -1
  26. package/bundles/sd-angular-core-input-number.umd.js +7 -10
  27. package/bundles/sd-angular-core-input-number.umd.js.map +1 -1
  28. package/bundles/sd-angular-core-input-number.umd.min.js +2 -2
  29. package/bundles/sd-angular-core-input-number.umd.min.js.map +1 -1
  30. package/bundles/sd-angular-core-month.umd.js +741 -0
  31. package/bundles/sd-angular-core-month.umd.js.map +1 -0
  32. package/bundles/sd-angular-core-month.umd.min.js +2 -0
  33. package/bundles/sd-angular-core-month.umd.min.js.map +1 -0
  34. package/bundles/sd-angular-core.umd.js +4 -4
  35. package/bundles/sd-angular-core.umd.min.js +1 -1
  36. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  37. package/date/index.d.ts +1 -0
  38. package/date/package.json +12 -0
  39. package/date/sd-angular-core-date.d.ts +4 -0
  40. package/date/sd-angular-core-date.metadata.json +1 -0
  41. package/date/src/lib/date.component.d.ts +62 -0
  42. package/date/src/lib/date.module.d.ts +2 -0
  43. package/date/src/public-api.d.ts +2 -0
  44. package/date-full/index.d.ts +1 -0
  45. package/date-full/package.json +12 -0
  46. package/date-full/sd-angular-core-date-full.d.ts +4 -0
  47. package/date-full/sd-angular-core-date-full.metadata.json +1 -0
  48. package/date-full/src/lib/date-full.component.d.ts +64 -0
  49. package/date-full/src/lib/date-full.module.d.ts +2 -0
  50. package/date-full/src/public-api.d.ts +2 -0
  51. package/date-time/sd-angular-core-date-time.metadata.json +1 -1
  52. package/esm2015/autocomplete/src/lib/autocomplete.component.js +2 -2
  53. package/esm2015/autocomplete/src/lib/autocomplete.module.js +8 -10
  54. package/esm2015/date/index.js +2 -0
  55. package/esm2015/date/sd-angular-core-date.js +5 -0
  56. package/esm2015/date/src/lib/date.component.js +309 -0
  57. package/esm2015/date/src/lib/date.module.js +38 -0
  58. package/esm2015/date/src/public-api.js +3 -0
  59. package/esm2015/date-full/index.js +2 -0
  60. package/esm2015/date-full/sd-angular-core-date-full.js +5 -0
  61. package/esm2015/date-full/src/lib/date-full.component.js +307 -0
  62. package/esm2015/date-full/src/lib/date-full.module.js +40 -0
  63. package/esm2015/date-full/src/public-api.js +3 -0
  64. package/esm2015/date-time/src/lib/date-time.component.js +2 -2
  65. package/esm2015/date-time/src/lib/date-time.module.js +10 -12
  66. package/esm2015/export/src/lib/export.service.js +4 -1
  67. package/esm2015/form/src/lib/form.module.js +21 -12
  68. package/esm2015/input-number/src/lib/input-number.component.js +2 -2
  69. package/esm2015/input-number/src/lib/input-number.module.js +3 -7
  70. package/esm2015/month/index.js +2 -0
  71. package/esm2015/month/sd-angular-core-month.js +5 -0
  72. package/esm2015/month/src/lib/month.component.js +332 -0
  73. package/esm2015/month/src/lib/month.module.js +40 -0
  74. package/esm2015/month/src/public-api.js +3 -0
  75. package/esm2015/public-api.js +4 -1
  76. package/fesm2015/sd-angular-core-autocomplete.js +8 -10
  77. package/fesm2015/sd-angular-core-autocomplete.js.map +1 -1
  78. package/fesm2015/sd-angular-core-date-full.js +348 -0
  79. package/fesm2015/sd-angular-core-date-full.js.map +1 -0
  80. package/fesm2015/sd-angular-core-date-time.js +12 -14
  81. package/fesm2015/sd-angular-core-date-time.js.map +1 -1
  82. package/fesm2015/sd-angular-core-date.js +348 -0
  83. package/fesm2015/sd-angular-core-date.js.map +1 -0
  84. package/fesm2015/sd-angular-core-export.js +3 -0
  85. package/fesm2015/sd-angular-core-export.js.map +1 -1
  86. package/fesm2015/sd-angular-core-form.js +19 -10
  87. package/fesm2015/sd-angular-core-form.js.map +1 -1
  88. package/fesm2015/sd-angular-core-input-number.js +3 -7
  89. package/fesm2015/sd-angular-core-input-number.js.map +1 -1
  90. package/fesm2015/sd-angular-core-month.js +373 -0
  91. package/fesm2015/sd-angular-core-month.js.map +1 -0
  92. package/fesm2015/sd-angular-core.js +3 -0
  93. package/fesm2015/sd-angular-core.js.map +1 -1
  94. package/form/sd-angular-core-form.metadata.json +1 -1
  95. package/input-number/sd-angular-core-input-number.metadata.json +1 -1
  96. package/month/index.d.ts +1 -0
  97. package/month/package.json +12 -0
  98. package/month/sd-angular-core-month.d.ts +4 -0
  99. package/month/sd-angular-core-month.metadata.json +1 -0
  100. package/month/src/lib/month.component.d.ts +64 -0
  101. package/month/src/lib/month.module.d.ts +2 -0
  102. package/month/src/public-api.d.ts +2 -0
  103. package/package.json +1 -1
  104. package/public-api.d.ts +3 -0
  105. package/{sd-angular-core-1.3.243.tgz → sd-angular-core-1.3.245.tgz} +0 -0
@@ -0,0 +1,332 @@
1
+ var _date, _name, _form, _subscription;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { NGX_MAT_DATE_FORMATS } from '@angular-material-components/datetime-picker';
4
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, EventEmitter, Inject, Input, Optional, Output, ViewChild, } from '@angular/core';
5
+ import { NgForm, Validators } from '@angular/forms';
6
+ import { MAT_DATE_FORMATS } from '@angular/material/core';
7
+ import { MatDatepicker } from '@angular/material/datepicker';
8
+ import { FORM_CONFIG, SdFormControl, SdLabelDefDirective, SdViewDefDirective } from '@sd-angular/core/common';
9
+ import moment from 'moment';
10
+ import { DeviceDetectorService } from 'ngx-device-detector';
11
+ import hash from 'object-hash';
12
+ import { Subscription } from 'rxjs';
13
+ import * as uuid from 'uuid';
14
+ const CUSTOM_DATETIME_FORMATS = {
15
+ parse: {
16
+ dateInput: 'DD/MM/YYYY HH:mm',
17
+ },
18
+ display: {
19
+ dateInput: 'DD/MM/YYYY HH:mm',
20
+ monthYearLabel: 'MMM YYYY',
21
+ dateA11yLabel: 'LL',
22
+ monthYearA11yLabel: 'MMMM YYYY',
23
+ },
24
+ };
25
+ const CUSTOM_DATE_FORMATS = {
26
+ parse: {
27
+ dateInput: 'DD/MM/YYYY',
28
+ },
29
+ display: {
30
+ dateInput: 'DD/MM/YYYY',
31
+ monthYearLabel: 'MMM YYYY',
32
+ dateA11yLabel: 'LL',
33
+ monthYearA11yLabel: 'MMMM YYYY',
34
+ },
35
+ };
36
+ const ɵ0 = CUSTOM_DATE_FORMATS, ɵ1 = CUSTOM_DATETIME_FORMATS;
37
+ export class SdMonth {
38
+ constructor(ref, deviceService, formConfig) {
39
+ this.ref = ref;
40
+ this.formConfig = formConfig;
41
+ this.id = `I${uuid.v4()}`;
42
+ this.isMobileOrTablet = false;
43
+ _date.set(this, void 0);
44
+ _name.set(this, uuid.v4());
45
+ this.disableErrorMessage = false;
46
+ this.formControl = new SdFormControl();
47
+ _form.set(this, void 0);
48
+ this.required = false;
49
+ this.sdChange = new EventEmitter();
50
+ this.sdFocus = new EventEmitter();
51
+ this.modelChange = new EventEmitter();
52
+ _subscription.set(this, new Subscription());
53
+ this.isFocused = false;
54
+ this.onFocus = () => {
55
+ this.isFocused = true;
56
+ this.sdFocus.emit();
57
+ };
58
+ this.onBlur = () => {
59
+ this.isFocused = false;
60
+ };
61
+ this.onClick = () => {
62
+ var _a;
63
+ if ((_a = this.sdView) === null || _a === void 0 ? void 0 : _a.templateRef) {
64
+ if (!this.formControl.disabled && !this.isFocused) {
65
+ this.focus();
66
+ }
67
+ }
68
+ };
69
+ this.blur = () => {
70
+ var _a, _b;
71
+ (_b = (_a = this.input) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.blur();
72
+ };
73
+ this.focus = () => {
74
+ this.isFocused = true;
75
+ setTimeout(() => {
76
+ var _a, _b, _c;
77
+ (_b = (_a = this.input) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.focus();
78
+ (_c = this.datePicker) === null || _c === void 0 ? void 0 : _c.open();
79
+ //
80
+ }, 100);
81
+ };
82
+ this.onKeyDown = (event) => {
83
+ const key = event.keyCode || event.charCode;
84
+ let isShift = false;
85
+ if (key === 16) {
86
+ isShift = true;
87
+ }
88
+ // cho phép copy parse
89
+ if (event.ctrlKey && (key === 67 || key === 86)) {
90
+ console.log('action copy parse... datepicker');
91
+ return true;
92
+ }
93
+ // Allow only Numeric Keys.
94
+ if (((key >= 48 && key <= 57) ||
95
+ key === 8 ||
96
+ key <= 37 ||
97
+ key <= 39 ||
98
+ (key >= 96 && key <= 105) ||
99
+ key === 191 ||
100
+ key === 186 ||
101
+ key === 59) &&
102
+ isShift === false) {
103
+ return true;
104
+ }
105
+ else {
106
+ return false;
107
+ }
108
+ };
109
+ this.onKeyup = event => {
110
+ const currentVal = event.target.value;
111
+ const formControl = this.formControl;
112
+ let regex = /^([0]{0,1}[1-9]|1[012])\/\d\d\d\d [012]{0,1}[0-9]:[0-6][0-9]$/g;
113
+ if (currentVal && !regex.test(currentVal)) {
114
+ setTimeout(() => {
115
+ this.isValid = true;
116
+ formControl.markAsDirty();
117
+ formControl.markAsTouched();
118
+ formControl.setErrors(Object.assign(Object.assign({}, formControl.errors), { date: `Sai định dạng` }));
119
+ }, 0);
120
+ }
121
+ else {
122
+ setTimeout(() => {
123
+ this.isValid = false;
124
+ formControl.setErrors(Object.assign(Object.assign({}, formControl.errors), { date: null }));
125
+ this.formControl.updateValueAndValidity();
126
+ }, 0);
127
+ }
128
+ };
129
+ this.onChange = (event) => {
130
+ var _a, _b, _c;
131
+ const value = (_a = event.value) === null || _a === void 0 ? void 0 : _a.toDate();
132
+ (_c = (_b = this.input) === null || _b === void 0 ? void 0 : _b.nativeElement) === null || _c === void 0 ? void 0 : _c.focus();
133
+ if (!this.isValid) {
134
+ if (new Date(__classPrivateFieldGet(this, _date)) !== value) {
135
+ this.modelChange.emit(value);
136
+ this.sdChange.emit(value);
137
+ }
138
+ }
139
+ else {
140
+ this.isValid = false;
141
+ this.formControl.setValue(null);
142
+ this.modelChange.emit(null);
143
+ this.sdChange.emit(null);
144
+ }
145
+ };
146
+ this.clear = ($event) => {
147
+ $event === null || $event === void 0 ? void 0 : $event.stopPropagation();
148
+ if (this.formControl.value) {
149
+ this.formControl.setValue(null);
150
+ this.modelChange.emit(null);
151
+ this.sdChange.emit(null);
152
+ }
153
+ };
154
+ this.onMonthSelected = (normalizedMonthAndYear) => {
155
+ const ctrlValue = this.formControl.value || moment();
156
+ ctrlValue.month(normalizedMonthAndYear.month());
157
+ ctrlValue.year(normalizedMonthAndYear.year());
158
+ this.formControl.setValue(ctrlValue);
159
+ this.datePicker.close();
160
+ this.modelChange.emit(ctrlValue);
161
+ this.sdChange.emit(ctrlValue);
162
+ };
163
+ this.isMobileOrTablet = !deviceService.isDesktop();
164
+ }
165
+ set name(val) {
166
+ if (val) {
167
+ __classPrivateFieldSet(this, _name, val);
168
+ }
169
+ }
170
+ set _disableErrorMessage(val) {
171
+ this.disableErrorMessage = val === '' || val;
172
+ val = val === '' || val;
173
+ }
174
+ set _min(val) {
175
+ if (Date.isDate(val)) {
176
+ this.min = new Date(val);
177
+ }
178
+ else {
179
+ this.min = null;
180
+ }
181
+ }
182
+ set _max(val) {
183
+ if (Date.isDate(val)) {
184
+ this.max = new Date(val);
185
+ }
186
+ else {
187
+ this.max = null;
188
+ }
189
+ }
190
+ set form(val) {
191
+ if (val) {
192
+ if (val instanceof NgForm) {
193
+ __classPrivateFieldSet(this, _form, val.form);
194
+ }
195
+ else {
196
+ __classPrivateFieldSet(this, _form, val);
197
+ }
198
+ }
199
+ }
200
+ set disabled(val) {
201
+ val = val === '' || val;
202
+ if (val) {
203
+ this.formControl.disable();
204
+ }
205
+ else {
206
+ this.formControl.enable();
207
+ }
208
+ }
209
+ set _required(val) {
210
+ this.required = val === '' || val;
211
+ if (this.required) {
212
+ this.formControl.setValidators([Validators.required]);
213
+ }
214
+ else {
215
+ this.formControl.clearValidators();
216
+ }
217
+ }
218
+ set _inlineError(val) {
219
+ this.inlineError = val;
220
+ if (this.inlineError) {
221
+ this.formControl.setValidators([this.customInlineErrorValidator()]);
222
+ this.formControl.updateValueAndValidity();
223
+ }
224
+ else {
225
+ this.formControl.clearValidators();
226
+ this.formControl.updateValueAndValidity();
227
+ }
228
+ }
229
+ set _label(val) {
230
+ this.label = val;
231
+ this.qcId = hash({
232
+ selector: 'sd-month',
233
+ label: val,
234
+ });
235
+ }
236
+ set minDate(val) {
237
+ if (Date.isDate(val)) {
238
+ this.min = new Date(val);
239
+ }
240
+ else {
241
+ this.min = null;
242
+ }
243
+ }
244
+ set maxDate(val) {
245
+ if (Date.isDate(val)) {
246
+ this.max = new Date(val);
247
+ }
248
+ else {
249
+ this.max = null;
250
+ }
251
+ }
252
+ set model(val) {
253
+ if (!Date.isDate(val)) {
254
+ val = null;
255
+ }
256
+ if (__classPrivateFieldGet(this, _date) !== val) {
257
+ __classPrivateFieldSet(this, _date, val);
258
+ const date = Date.isDate(__classPrivateFieldGet(this, _date)) ? moment(Date.toFormat(__classPrivateFieldGet(this, _date), 'MM/dd/yyyy HH:mm:ss'), 'MM/DD/YYYY HH:mm:ss') : null;
259
+ this.formControl.setValue(date);
260
+ }
261
+ }
262
+ ngOnDestroy() {
263
+ var _a;
264
+ (_a = __classPrivateFieldGet(this, _form)) === null || _a === void 0 ? void 0 : _a.removeControl(__classPrivateFieldGet(this, _name));
265
+ __classPrivateFieldGet(this, _subscription).unsubscribe();
266
+ }
267
+ ngOnInit() {
268
+ var _a, _b;
269
+ this.appearance = this.appearance || ((_a = this.formConfig) === null || _a === void 0 ? void 0 : _a.appearance);
270
+ __classPrivateFieldGet(this, _subscription).add(this.formControl.sdChanges.subscribe(() => {
271
+ // this.formControl.updateValueAndValidity();
272
+ this.ref.markForCheck();
273
+ }));
274
+ (_b = __classPrivateFieldGet(this, _form)) === null || _b === void 0 ? void 0 : _b.addControl(__classPrivateFieldGet(this, _name), this.formControl);
275
+ }
276
+ // Hàm tạo Validators tùy chỉnh cho inlineError
277
+ customInlineErrorValidator() {
278
+ return (control) => {
279
+ return { inlineError: true };
280
+ };
281
+ }
282
+ ngAfterViewInit() { }
283
+ focusInputElement() {
284
+ var _a, _b;
285
+ (_b = (_a = this.input) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.focus();
286
+ }
287
+ }
288
+ _date = new WeakMap(), _name = new WeakMap(), _form = new WeakMap(), _subscription = new WeakMap();
289
+ SdMonth.decorators = [
290
+ { type: Component, args: [{
291
+ selector: 'sd-month',
292
+ template: "<ng-container *ngIf=\"!appearance && sdLabelDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"sdLabelDef.templateRef\"> </ng-container>\r\n</ng-container>\r\n<label *ngIf=\"!appearance && label && !sdLabelDef?.templateRef\" class=\"d-block mb-0 T14M\"\r\n >{{ label }} <span class=\"text-danger mb-2\" *ngIf=\"required\">*</span></label\r\n>\r\n<div\r\n class=\"d-flex align-items-center\"\r\n [class.sd-view]=\"sdView?.templateRef\"\r\n [class.c-focused]=\"isFocused\"\r\n [class.c-disabled]=\"formControl.disabled\"\r\n (click)=\"onClick()\">\r\n <ng-container *ngIf=\"sdView?.templateRef && !isFocused && !datePicker?.opened; else default\">\r\n <ng-container *ngTemplateOutlet=\"sdView.templateRef; context: { value: formControl.value }\"> </ng-container>\r\n </ng-container>\r\n <ng-template #default>\r\n <mat-form-field\r\n class=\"sd-md\"\r\n [ngClass]=\"{ 'sd-sm': size === 'sm', 'no-padding-wrapper': disableErrorMessage }\"\r\n appearance=\"outline\">\r\n <mat-label *ngIf=\"label\">{{ label }}</mat-label>\r\n <input\r\n aria-hidden=\"true\"\r\n [id]=\"id\"\r\n matInput\r\n (keyup)=\"onKeyup($event)\"\r\n (keydown)=\"onKeyDown($event)\"\r\n (dateChange)=\"onChange($event)\"\r\n [autocomplete]=\"id\"\r\n autocorrect=\"off\"\r\n [formControl]=\"formControl\"\r\n [required]=\"required\"\r\n [matDatepicker]=\"picker\"\r\n [placeholder]=\"placeholder || (appearance ? label : '')\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n (focus)=\"onFocus()\"\r\n (blur)=\"onBlur()\"\r\n #input />\r\n <mat-icon\r\n *ngIf=\"formControl?.value && !required && !formControl.disabled\"\r\n class=\"pointer sd-suffix-icon\"\r\n (click)=\"clear($event)\"\r\n matSuffix\r\n >cancel\r\n </mat-icon>\r\n <mat-icon class=\"pointer sd-suffix-icon\" (click)=\"!formControl?.disabled && picker.open()\" #btn matSuffix> today </mat-icon>\r\n <mat-datepicker\r\n #picker\r\n [touchUi]=\"isMobileOrTablet\"\r\n startView=\"multi-year\"\r\n (monthSelected)=\"onMonthSelected($event)\"></mat-datepicker>\r\n <mat-error *ngIf=\"formControl?.errors?.required && formControl?.touched\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ 'This field is required' | sdTranslate }}</ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl?.errors?.matDatepickerMin && formControl?.touched\">\r\n <ng-container *ngIf=\"!disableErrorMessage\"\r\n >{{ 'Min date' | sdTranslate }}:\r\n <strong>{{ min | date : 'dd/MM/yyyy HH:mm' }}</strong>\r\n </ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl?.errors?.matDatepickerMax && formControl?.touched\">\r\n <ng-container *ngIf=\"!disableErrorMessage\"\r\n >{{ 'Max date' | sdTranslate }}:\r\n <strong>{{ max | date : 'dd/MM/yyyy HH:mm' }}</strong>\r\n </ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl?.errors?.matDatetimePickerParse && formControl?.touched\">\r\n <ng-container *ngIf=\"!disableErrorMessage\"\r\n >{{ 'Parse error' | sdTranslate }}:\r\n <strong>{{ formControl?.errors?.matDatetimePickerParse?.text }}</strong>\r\n </ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl?.errors?.customValidator && formControl?.touched && !disableErrorMessage\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ formControl?.errors?.customValidator }} </ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl.errors?.inlineError && formControl?.touched && !disableErrorMessage\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ inlineError }}</ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n </ng-template>\r\n</div>",
293
+ changeDetection: ChangeDetectionStrategy.OnPush,
294
+ providers: [
295
+ { provide: MAT_DATE_FORMATS, useValue: ɵ0 },
296
+ { provide: NGX_MAT_DATE_FORMATS, useValue: ɵ1 },
297
+ ],
298
+ styles: [":host{display:block;padding-top:5px}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field input.mat-input-element:disabled{color:#4d4d4d!important}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}.sd-view:not(.c-focused):not(.c-disabled):hover{background-color:#ebecf0}"]
299
+ },] }
300
+ ];
301
+ SdMonth.ctorParameters = () => [
302
+ { type: ChangeDetectorRef },
303
+ { type: DeviceDetectorService },
304
+ { type: undefined, decorators: [{ type: Inject, args: [FORM_CONFIG,] }, { type: Optional }] }
305
+ ];
306
+ SdMonth.propDecorators = {
307
+ name: [{ type: Input }],
308
+ appearance: [{ type: Input }],
309
+ _disableErrorMessage: [{ type: Input, args: ['disableErrorMessage',] }],
310
+ _min: [{ type: Input, args: ['min',] }],
311
+ _max: [{ type: Input, args: ['max',] }],
312
+ size: [{ type: Input }],
313
+ form: [{ type: Input }],
314
+ disabled: [{ type: Input }],
315
+ _required: [{ type: Input, args: ['required',] }],
316
+ _inlineError: [{ type: Input, args: ['inlineError',] }],
317
+ _label: [{ type: Input, args: ['label',] }],
318
+ placeholder: [{ type: Input }],
319
+ minDate: [{ type: Input }],
320
+ maxDate: [{ type: Input }],
321
+ validator: [{ type: Input }],
322
+ sdChange: [{ type: Output }],
323
+ sdFocus: [{ type: Output }],
324
+ model: [{ type: Input }],
325
+ modelChange: [{ type: Output }],
326
+ sdView: [{ type: ContentChild, args: [SdViewDefDirective,] }],
327
+ sdLabelDef: [{ type: ContentChild, args: [SdLabelDefDirective,] }],
328
+ input: [{ type: ViewChild, args: ['input',] }],
329
+ datePicker: [{ type: ViewChild, args: [MatDatepicker,] }]
330
+ };
331
+ export { ɵ0, ɵ1 };
332
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9tb250aC8iLCJzb3VyY2VzIjpbInNyYy9saWIvbW9udGguY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDcEYsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFFWixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQThCLE1BQU0sRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUEyQixNQUFNLDhCQUE4QixDQUFDO0FBRXRGLE9BQU8sRUFBRSxXQUFXLEVBQXNCLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xJLE9BQU8sTUFBa0IsTUFBTSxRQUFRLENBQUM7QUFDeEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFFN0IsTUFBTSx1QkFBdUIsR0FBRztJQUM5QixLQUFLLEVBQUU7UUFDTCxTQUFTLEVBQUUsa0JBQWtCO0tBQzlCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsU0FBUyxFQUFFLGtCQUFrQjtRQUM3QixjQUFjLEVB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aUMsRUFBRTtZQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDO1FBQy9CLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlLEtBQUksQ0FBQztJQWdDcEIsaUJBQWlCOztRQUNmLFlBQUEsSUFBSSxDQUFDLEtBQUssMENBQUUsYUFBYSwwQ0FBRSxLQUFLLEdBQUc7SUFDckMsQ0FBQzs7OztZQXRORixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLDAzSEFBcUM7Z0JBRXJDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxTQUFTLEVBQUU7b0JBQ1QsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxJQUFxQixFQUFFO29CQUM1RCxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxRQUFRLElBQXlCLEVBQUU7aUJBQ3JFOzthQUNGOzs7WUF4REMsaUJBQWlCO1lBbUJWLHFCQUFxQjs0Q0FvTHpCLE1BQU0sU0FBQyxXQUFXLGNBQUcsUUFBUTs7O21CQXpJL0IsS0FBSzt5QkFNTCxLQUFLO21DQUdMLEtBQUssU0FBQyxxQkFBcUI7bUJBUTNCLEtBQUssU0FBQyxLQUFLO21CQVVYLEtBQUssU0FBQyxLQUFLO21CQVFYLEtBQUs7bUJBRUwsS0FBSzt1QkFZTCxLQUFLO3dCQVdMLEtBQUssU0FBQyxVQUFVOzJCQVdoQixLQUFLLFNBQUMsYUFBYTtxQkFjbkIsS0FBSyxTQUFDLE9BQU87MEJBUWIsS0FBSztzQkFFTCxLQUFLO3NCQVFMLEtBQUs7d0JBUUwsS0FBSzt1QkFDTCxNQUFNO3NCQUNOLE1BQU07b0JBRU4sS0FBSzswQkFXTCxNQUFNO3FCQUVOLFlBQVksU0FBQyxrQkFBa0I7eUJBQy9CLFlBQVksU0FBQyxtQkFBbUI7b0JBQ2hDLFNBQVMsU0FBQyxPQUFPO3lCQUNqQixTQUFTLFNBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5HWF9NQVRfREFURV9GT1JNQVRTIH0gZnJvbSAnQGFuZ3VsYXItbWF0ZXJpYWwtY29tcG9uZW50cy9kYXRldGltZS1waWNrZXInO1xyXG5pbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbnRlbnRDaGlsZCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbmplY3QsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPcHRpb25hbCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Hcm91cCwgTmdGb3JtLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREYXRlcGlja2VyLCBNYXREYXRlcGlja2VySW5wdXRFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRBcHBlYXJhbmNlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IEZPUk1fQ09ORklHLCBJRm9ybUNvbmZpZ3VyYXRpb24sIFNkRm9ybUNvbnRyb2wsIFNkTGFiZWxEZWZEaXJlY3RpdmUsIFNkVmlld0RlZkRpcmVjdGl2ZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvY29tbW9uJztcclxuaW1wb3J0IG1vbWVudCwgeyBNb21lbnQgfSBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tICduZ3gtZGV2aWNlLWRldGVjdG9yJztcclxuaW1wb3J0IGhhc2ggZnJvbSAnb2JqZWN0LWhhc2gnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0ICogYXMgdXVpZCBmcm9tICd1dWlkJztcclxuXHJcbmNvbnN0IENVU1RPTV9EQVRFVElNRV9GT1JNQVRTID0ge1xyXG4gIHBhcnNlOiB7XHJcbiAgICBkYXRlSW5wdXQ6ICdERC9NTS9ZWVlZIEhIOm1tJyxcclxuICB9LFxyXG4gIGRpc3BsYXk6IHtcclxuICAgIGRhdGVJbnB1dDogJ0REL01NL1lZWVkgSEg6bW0nLFxyXG4gICAgbW9udGhZZWFyTGFiZWw6ICdNTU0gWVlZWScsXHJcbiAgICBkYXRlQTExeUxhYmVsOiAnTEwnLFxyXG4gICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJyxcclxuICB9LFxyXG59O1xyXG5jb25zdCBDVVNUT01fREFURV9GT1JNQVRTID0ge1xyXG4gIHBhcnNlOiB7XHJcbiAgICBkYXRlSW5wdXQ6ICdERC9NTS9ZWVlZJyxcclxuICB9LFxyXG4gIGRpc3BsYXk6IHtcclxuICAgIGRhdGVJbnB1dDogJ0REL01NL1lZWVknLFxyXG4gICAgbW9udGhZZWFyTGFiZWw6ICdNTU0gWVlZWScsXHJcbiAgICBkYXRlQTExeUxhYmVsOiAnTEwnLFxyXG4gICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJyxcclxuICB9LFxyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1tb250aCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21vbnRoLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tb250aC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogQ1VTVE9NX0RBVEVfRk9STUFUUyB9LFxyXG4gICAgeyBwcm92aWRlOiBOR1hfTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IENVU1RPTV9EQVRFVElNRV9GT1JNQVRTIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkTW9udGggaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgaWQgPSBgSSR7dXVpZC52NCgpfWA7XHJcbiAgaXNNb2JpbGVPclRhYmxldCA9IGZhbHNlO1xyXG4gICNkYXRlOiBhbnk7XHJcbiAgI25hbWUgPSB1dWlkLnY0KCk7XHJcbiAgQElucHV0KCkgc2V0IG5hbWUodmFsOiBzdHJpbmcpIHtcclxuICAgIGlmICh2YWwpIHtcclxuICAgICAgdGhpcy4jbmFtZSA9IHZhbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIGFwcGVhcmFuY2U6IE1hdEZvcm1GaWVsZEFwcGVhcmFuY2U7XHJcbiAgZGlzYWJsZUVycm9yTWVzc2FnZSA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoJ2Rpc2FibGVFcnJvck1lc3NhZ2UnKSBzZXQgX2Rpc2FibGVFcnJvck1lc3NhZ2UodmFsOiBib29sZWFuIHwgJycpIHtcclxuICAgIHRoaXMuZGlzYWJsZUVycm9yTWVzc2FnZSA9IHZhbCA9PT0gJycgfHwgdmFsO1xyXG4gICAgdmFsID0gdmFsID09PSAnJyB8fCB2YWw7XHJcbiAgfVxyXG5cclxuICBmb3JtQ29udHJvbCA9IG5ldyBTZEZvcm1Db250cm9sKCk7XHJcbiAgbWluOiBEYXRlO1xyXG5cclxuICBASW5wdXQoJ21pbicpIHNldCBfbWluKHZhbDogc3RyaW5nIHwgRGF0ZSB8IG51bWJlcikge1xyXG4gICAgaWYgKERhdGUuaXNEYXRlKHZhbCkpIHtcclxuICAgICAgdGhpcy5taW4gPSBuZXcgRGF0ZSh2YWwpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5taW4gPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbWF4OiBEYXRlO1xyXG5cclxuICBASW5wdXQoJ21heCcpIHNldCBfbWF4KHZhbDogc3RyaW5nIHwgRGF0ZSB8IG51bWJlcikge1xyXG4gICAgaWYgKERhdGUuaXNEYXRlKHZhbCkpIHtcclxuICAgICAgdGhpcy5tYXggPSBuZXcgRGF0ZSh2YWwpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5tYXggPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgc2l6ZTogJ3NtJyB8ICdsZyc7XHJcbiAgI2Zvcm06IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKSBzZXQgZm9ybSh2YWw6IE5nRm9ybSB8IEZvcm1Hcm91cCkge1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICBpZiAodmFsIGluc3RhbmNlb2YgTmdGb3JtKSB7XHJcbiAgICAgICAgdGhpcy4jZm9ybSA9IHZhbC5mb3JtO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuI2Zvcm0gPSB2YWw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG1heGxlbmd0aDogbnVtYmVyO1xyXG5cclxuICBASW5wdXQoKSBzZXQgZGlzYWJsZWQodmFsOiBib29sZWFuIHwgJycpIHtcclxuICAgIHZhbCA9IHZhbCA9PT0gJycgfHwgdmFsO1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmRpc2FibGUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXF1aXJlZCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoJ3JlcXVpcmVkJykgc2V0IF9yZXF1aXJlZCh2YWw6IGJvb2xlYW4gfCAnJykge1xyXG4gICAgdGhpcy5yZXF1aXJlZCA9IHZhbCA9PT0gJycgfHwgdmFsO1xyXG4gICAgaWYgKHRoaXMucmVxdWlyZWQpIHtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWxpZGF0b3JzKFtWYWxpZGF0b3JzLnJlcXVpcmVkXSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmNsZWFyVmFsaWRhdG9ycygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW5saW5lRXJyb3I6IHN0cmluZztcclxuXHJcbiAgQElucHV0KCdpbmxpbmVFcnJvcicpIHNldCBfaW5saW5lRXJyb3IodmFsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuaW5saW5lRXJyb3IgPSB2YWw7XHJcbiAgICBpZiAodGhpcy5pbmxpbmVFcnJvcikge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbGlkYXRvcnMoW3RoaXMuY3VzdG9tSW5saW5lRXJyb3JWYWxpZGF0b3IoKV0pO1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuY2xlYXJWYWxpZGF0b3JzKCk7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcWNJZDogc3RyaW5nO1xyXG4gIGxhYmVsOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgnbGFiZWwnKSBzZXQgX2xhYmVsKHZhbDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmxhYmVsID0gdmFsO1xyXG4gICAgdGhpcy5xY0lkID0gaGFzaCh7XHJcbiAgICAgIHNlbGVjdG9yOiAnc2QtbW9udGgnLFxyXG4gICAgICBsYWJlbDogdmFsLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBzZXQgbWluRGF0ZSh2YWw6IHN0cmluZyB8IERhdGUpIHtcclxuICAgIGlmIChEYXRlLmlzRGF0ZSh2YWwpKSB7XHJcbiAgICAgIHRoaXMubWluID0gbmV3IERhdGUodmFsKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubWluID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCBtYXhEYXRlKHZhbDogc3RyaW5nIHwgRGF0ZSkge1xyXG4gICAgaWYgKERhdGUuaXNEYXRlKHZhbCkpIHtcclxuICAgICAgdGhpcy5tYXggPSBuZXcgRGF0ZSh2YWwpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5tYXggPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgdmFsaWRhdG9yOiAodmFsdWU6IGFueSkgPT4gc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+O1xyXG4gIEBPdXRwdXQoKSBzZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgc2RGb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBASW5wdXQoKSBzZXQgbW9kZWwodmFsOiBhbnkpIHtcclxuICAgIGlmICghRGF0ZS5pc0RhdGUodmFsKSkge1xyXG4gICAgICB2YWwgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuI2RhdGUgIT09IHZhbCkge1xyXG4gICAgICB0aGlzLiNkYXRlID0gdmFsO1xyXG4gICAgICBjb25zdCBkYXRlID0gRGF0ZS5pc0RhdGUodGhpcy4jZGF0ZSkgPyBtb21lbnQoRGF0ZS50b0Zvcm1hdCh0aGlzLiNkYXRlLCAnTU0vZGQveXl5eSBISDptbTpzcycpLCAnTU0vREQvWVlZWSBISDptbTpzcycpIDogbnVsbDtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShkYXRlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKSBtb2RlbENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAjc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gIEBDb250ZW50Q2hpbGQoU2RWaWV3RGVmRGlyZWN0aXZlKSBzZFZpZXc6IFNkVmlld0RlZkRpcmVjdGl2ZTtcclxuICBAQ29udGVudENoaWxkKFNkTGFiZWxEZWZEaXJlY3RpdmUpIHNkTGFiZWxEZWY6IFNkTGFiZWxEZWZEaXJlY3RpdmU7XHJcbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dDogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKE1hdERhdGVwaWNrZXIpIGRhdGVQaWNrZXI6IE1hdERhdGVwaWNrZXI8TW9tZW50PjtcclxuICBpc0ZvY3VzZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBkZXZpY2VTZXJ2aWNlOiBEZXZpY2VEZXRlY3RvclNlcnZpY2UsXHJcbiAgICBASW5qZWN0KEZPUk1fQ09ORklHKSBAT3B0aW9uYWwoKSBwcml2YXRlIGZvcm1Db25maWc6IElGb3JtQ29uZmlndXJhdGlvblxyXG4gICkge1xyXG4gICAgdGhpcy5pc01vYmlsZU9yVGFibGV0ID0gIWRldmljZVNlcnZpY2UuaXNEZXNrdG9wKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuI2Zvcm0/LnJlbW92ZUNvbnRyb2wodGhpcy4jbmFtZSk7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hcHBlYXJhbmNlID0gdGhpcy5hcHBlYXJhbmNlIHx8IHRoaXMuZm9ybUNvbmZpZz8uYXBwZWFyYW5jZTtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQoXHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2RDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgLy8gdGhpcy5mb3JtQ29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gICAgdGhpcy4jZm9ybT8uYWRkQ29udHJvbCh0aGlzLiNuYW1lLCB0aGlzLmZvcm1Db250cm9sKTtcclxuICB9XHJcblxyXG4gIC8vIEjDoG0gdOG6oW8gVmFsaWRhdG9ycyB0w7l5IGNo4buJbmggY2hvIGlubGluZUVycm9yXHJcbiAgY3VzdG9tSW5saW5lRXJyb3JWYWxpZGF0b3IoKTogVmFsaWRhdG9yRm4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHwgbnVsbCA9PiB7XHJcbiAgICAgIHJldHVybiB7IGlubGluZUVycm9yOiB0cnVlIH07XHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge31cclxuXHJcbiAgb25Gb2N1cyA9ICgpID0+IHtcclxuICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcclxuICAgIHRoaXMuc2RGb2N1cy5lbWl0KCk7XHJcbiAgfTtcclxuXHJcbiAgb25CbHVyID0gKCkgPT4ge1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcclxuICB9O1xyXG5cclxuICBvbkNsaWNrID0gKCkgPT4ge1xyXG4gICAgaWYgKHRoaXMuc2RWaWV3Py50ZW1wbGF0ZVJlZikge1xyXG4gICAgICBpZiAoIXRoaXMuZm9ybUNvbnRyb2wuZGlzYWJsZWQgJiYgIXRoaXMuaXNGb2N1c2VkKSB7XHJcbiAgICAgICAgdGhpcy5mb2N1cygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgYmx1ciA9ICgpID0+IHtcclxuICAgIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQ/LmJsdXIoKTtcclxuICB9O1xyXG5cclxuICBmb2N1cyA9ICgpID0+IHtcclxuICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50Py5mb2N1cygpO1xyXG4gICAgICB0aGlzLmRhdGVQaWNrZXI/Lm9wZW4oKTtcclxuICAgICAgLy9cclxuICAgIH0sIDEwMCk7XHJcbiAgfTtcclxuXHJcbiAgZm9jdXNJbnB1dEVsZW1lbnQoKSB7XHJcbiAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50Py5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgaXNWYWxpZDogYm9vbGVhbjtcclxuICBvbktleURvd24gPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcclxuICAgIGNvbnN0IGtleSA9IGV2ZW50LmtleUNvZGUgfHwgZXZlbnQuY2hhckNvZGU7XHJcbiAgICBsZXQgaXNTaGlmdCA9IGZhbHNlO1xyXG4gICAgaWYgKGtleSA9PT0gMTYpIHtcclxuICAgICAgaXNTaGlmdCA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gY2hvIHBow6lwIGNvcHkgcGFyc2VcclxuICAgIGlmIChldmVudC5jdHJsS2V5ICYmIChrZXkgPT09IDY3IHx8IGtleSA9PT0gODYpKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdhY3Rpb24gY29weSBwYXJzZS4uLiBkYXRlcGlja2VyJyk7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEFsbG93IG9ubHkgTnVtZXJpYyBLZXlzLlxyXG4gICAgaWYgKFxyXG4gICAgICAoKGtleSA+PSA0OCAmJiBrZXkgPD0gNTcpIHx8XHJcbiAgICAgICAga2V5ID09PSA4IHx8XHJcbiAgICAgICAga2V5IDw9IDM3IHx8XHJcbiAgICAgICAga2V5IDw9IDM5IHx8XHJcbiAgICAgICAgKGtleSA+PSA5NiAmJiBrZXkgPD0gMTA1KSB8fFxyXG4gICAgICAgIGtleSA9PT0gMTkxIHx8XHJcbiAgICAgICAga2V5ID09PSAxODYgfHxcclxuICAgICAgICBrZXkgPT09IDU5KSAmJlxyXG4gICAgICBpc1NoaWZ0ID09PSBmYWxzZVxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIG9uS2V5dXAgPSBldmVudCA9PiB7XHJcbiAgICBjb25zdCBjdXJyZW50VmFsOiBzdHJpbmcgPSBldmVudC50YXJnZXQudmFsdWU7XHJcbiAgICBjb25zdCBmb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sID0gdGhpcy5mb3JtQ29udHJvbDtcclxuICAgIGxldCByZWdleCA9IC9eKFswXXswLDF9WzEtOV18MVswMTJdKVxcL1xcZFxcZFxcZFxcZCBbMDEyXXswLDF9WzAtOV06WzAtNl1bMC05XSQvZztcclxuXHJcbiAgICBpZiAoY3VycmVudFZhbCAmJiAhcmVnZXgudGVzdChjdXJyZW50VmFsKSkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmlzVmFsaWQgPSB0cnVlO1xyXG4gICAgICAgIGZvcm1Db250cm9sLm1hcmtBc0RpcnR5KCk7XHJcbiAgICAgICAgZm9ybUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xyXG4gICAgICAgIGZvcm1Db250cm9sLnNldEVycm9ycyh7IC4uLmZvcm1Db250cm9sLmVycm9ycywgZGF0ZTogYFNhaSDEkeG7i25oIGThuqFuZ2AgfSk7XHJcbiAgICAgIH0sIDApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICAgICAgZm9ybUNvbnRyb2wuc2V0RXJyb3JzKHsgLi4uZm9ybUNvbnRyb2wuZXJyb3JzLCBkYXRlOiBudWxsIH0pO1xyXG4gICAgICAgIHRoaXMuZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICB9LCAwKTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBvbkNoYW5nZSA9IChldmVudDogTWF0RGF0ZXBpY2tlcklucHV0RXZlbnQ8TW9tZW50PikgPT4ge1xyXG4gICAgY29uc3QgdmFsdWUgPSBldmVudC52YWx1ZT8udG9EYXRlKCk7XHJcbiAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50Py5mb2N1cygpO1xyXG4gICAgaWYgKCF0aGlzLmlzVmFsaWQpIHtcclxuICAgICAgaWYgKG5ldyBEYXRlKHRoaXMuI2RhdGUpICE9PSB2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5zZENoYW5nZS5lbWl0KHZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUobnVsbCk7XHJcbiAgICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdChudWxsKTtcclxuICAgICAgdGhpcy5zZENoYW5nZS5lbWl0KG51bGwpO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIGNsZWFyID0gKCRldmVudDogYW55KSA9PiB7XHJcbiAgICAkZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wudmFsdWUpIHtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShudWxsKTtcclxuICAgICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KG51bGwpO1xyXG4gICAgICB0aGlzLnNkQ2hhbmdlLmVtaXQobnVsbCk7XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgb25Nb250aFNlbGVjdGVkID0gKG5vcm1hbGl6ZWRNb250aEFuZFllYXI6IE1vbWVudCkgPT4ge1xyXG4gICAgY29uc3QgY3RybFZhbHVlID0gdGhpcy5mb3JtQ29udHJvbC52YWx1ZSB8fCBtb21lbnQoKTtcclxuICAgIGN0cmxWYWx1ZS5tb250aChub3JtYWxpemVkTW9udGhBbmRZZWFyLm1vbnRoKCkpO1xyXG4gICAgY3RybFZhbHVlLnllYXIobm9ybWFsaXplZE1vbnRoQW5kWWVhci55ZWFyKCkpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShjdHJsVmFsdWUpO1xyXG4gICAgdGhpcy5kYXRlUGlja2VyLmNsb3NlKCk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoY3RybFZhbHVlKTtcclxuICAgIHRoaXMuc2RDaGFuZ2UuZW1pdChjdHJsVmFsdWUpO1xyXG4gIH07XHJcbn1cclxuIl19
@@ -0,0 +1,40 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
+ import { MatDatepickerModule } from '@angular/material/datepicker';
5
+ import { MatFormFieldModule } from '@angular/material/form-field';
6
+ import { MatIconModule } from '@angular/material/icon';
7
+ import { MatInputModule } from '@angular/material/input';
8
+ import { SdButtonModule } from "@sd-angular/core/button";
9
+ import { SdCommonModule } from '@sd-angular/core/common';
10
+ import { SdPopoverModule } from '@sd-angular/core/popover';
11
+ import { SdTranslateModule } from '@sd-angular/core/translate';
12
+ import { SdMonth } from './month.component';
13
+ export class SdMonthModule {
14
+ }
15
+ SdMonthModule.decorators = [
16
+ { type: NgModule, args: [{
17
+ imports: [
18
+ CommonModule,
19
+ FormsModule,
20
+ ReactiveFormsModule,
21
+ MatInputModule,
22
+ MatIconModule,
23
+ MatFormFieldModule,
24
+ MatDatepickerModule,
25
+ SdTranslateModule,
26
+ SdCommonModule,
27
+ SdPopoverModule,
28
+ SdButtonModule
29
+ ],
30
+ declarations: [
31
+ SdMonth
32
+ ],
33
+ exports: [
34
+ SdCommonModule,
35
+ SdMonth
36
+ ],
37
+ providers: []
38
+ },] }
39
+ ];
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGgubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9tb250aC8iLCJzb3VyY2VzIjpbInNyYy9saWIvbW9udGgubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQTBCNUMsTUFBTSxPQUFPLGFBQWE7OztZQXhCekIsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFdBQVc7b0JBQ1gsbUJBQW1CO29CQUNuQixjQUFjO29CQUNkLGFBQWE7b0JBQ2Isa0JBQWtCO29CQUNsQixtQkFBbUI7b0JBQ25CLGlCQUFpQjtvQkFDakIsY0FBYztvQkFDZCxlQUFlO29CQUNmLGNBQWM7aUJBQ2Y7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLE9BQU87aUJBQ1I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLGNBQWM7b0JBQ2QsT0FBTztpQkFDUjtnQkFDRCxTQUFTLEVBQUUsRUFDVjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IFNkQnV0dG9uTW9kdWxlIH0gZnJvbSBcIkBzZC1hbmd1bGFyL2NvcmUvYnV0dG9uXCI7XHJcbmltcG9ydCB7IFNkQ29tbW9uTW9kdWxlIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9jb21tb24nO1xyXG5pbXBvcnQgeyBTZFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3BvcG92ZXInO1xyXG5pbXBvcnQgeyBTZFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvdHJhbnNsYXRlJztcclxuaW1wb3J0IHsgU2RNb250aCB9IGZyb20gJy4vbW9udGguY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcclxuICAgIFNkVHJhbnNsYXRlTW9kdWxlLFxyXG4gICAgU2RDb21tb25Nb2R1bGUsXHJcbiAgICBTZFBvcG92ZXJNb2R1bGUsXHJcbiAgICBTZEJ1dHRvbk1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBTZE1vbnRoXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTZENvbW1vbk1vZHVsZSxcclxuICAgIFNkTW9udGhcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNkTW9udGhNb2R1bGUge1xyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,3 @@
1
+ export { SdMonthModule } from './lib/month.module';
2
+ export { SdMonth } from './lib/month.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvbW9udGgvIiwic291cmNlcyI6WyJzcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2RNb250aE1vZHVsZSB9IGZyb20gJy4vbGliL21vbnRoLm1vZHVsZSc7XHJcbmV4cG9ydCB7IFNkTW9udGggfSBmcm9tICcuL2xpYi9tb250aC5jb21wb25lbnQnO1xyXG4iXX0=
@@ -25,6 +25,9 @@ import '@sd-angular/core/print';
25
25
  import '@sd-angular/core/zip';
26
26
  import '@sd-angular/core/export';
27
27
  import '@sd-angular/core/table';
28
+ import '@sd-angular/core/date';
29
+ import '@sd-angular/core/month';
30
+ import '@sd-angular/core/date-full';
28
31
  export { SdCoreModule } from './lib/core.module';
29
32
  export { MaterialModule } from './lib/material.module';
30
33
  export * from './lib/material.module';
@@ -53,4 +56,4 @@ export * from '@sd-angular/core/radio';
53
56
  export * from '@sd-angular/core/form';
54
57
  export * from '@sd-angular/core/service';
55
58
  export * from '@sd-angular/core/popover';
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvc3JjLyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sMkJBQTJCLENBQUM7QUFDbkMsT0FBTywyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sOEJBQThCLENBQUM7QUFDdEMsT0FBTyw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8seUJBQXlCLENBQUM7QUFDakMsT0FBTywrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLGtDQUFrQyxDQUFDO0FBQzFDLE9BQU8scUJBQXFCLENBQUM7QUFDN0IsT0FBTyx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sK0JBQStCLENBQUM7QUFDdkMsT0FBTywwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8seUJBQXlCLENBQUM7QUFDakMsT0FBTyx3QkFBd0IsQ0FBQztBQUVoQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELGNBQWMsdUJBQXVCLENBQUM7QUFFdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQXdCLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEYsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9jb21tb24nO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvbGFiZWwnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvaW5wdXQtdXBsb2FkLWZpbGUnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvY2hpcCc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS90ZXh0YXJlYSc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9jaGVja2JveCc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS90aW1lJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3NpZGUtZHJhd2VyJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3RhYi1yb3V0ZXInO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvaW5wdXQnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvc2VsZWN0JztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3F1aWNrLWFjdGlvbic7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9pbWFnZS1wcmV2aWV3JztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL2NvbW1lbnQnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvZmlsdGVyJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL21vZGFsLXJlc2l6YWJsZSc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9kYic7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9ncm91cCc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9qc29uLWVkaXRvcic7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9pbnB1dC1udW1iZXInO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvY29uZmlybSc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9wb3BvdmVyJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3BkZic7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9wcmludCc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS96aXAnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvZXhwb3J0JztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3RhYmxlJztcclxuXHJcbmV4cG9ydCB7IFNkQ29yZU1vZHVsZSB9IGZyb20gJy4vbGliL2NvcmUubW9kdWxlJztcclxuZXhwb3J0IHsgTWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuL2xpYi9tYXRlcmlhbC5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tYXRlcmlhbC5tb2R1bGUnO1xyXG5cclxuZXhwb3J0IHsgU2RBcGlNb2R1bGUsIFNkQXBpU2VydmljZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvYXBpJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9sb2FkaW5nJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9ub3RpZnknO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3NldHRpbmcnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3RyYW5zbGF0ZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvdXRpbGl0eSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvZHluYW1pYy1yZXBvcnQnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2NoYXJ0JztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS91cGxvYWQtZmlsZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvZGF0ZS1yYW5nZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvZGF0ZS10aW1lJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9idXR0b24nO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2tvbnZhJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9hdXRvY29tcGxldGUnO1xyXG5leHBvcnQgeyBTZEdyaWRNYXRlcmlhbCwgU2RHcmlkTWF0ZXJpYWxPcHRpb24gfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2dyaWQtbWF0ZXJpYWwnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3NlbGVjdC1lZGl0b3InO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2VkaXRvcic7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvbW9kYWwnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2dyaWQnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3VwbG9hZC1leGNlbCc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvc3dpdGNoJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9yYWRpbyc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvZm9ybSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvcG9wb3Zlcic7XHJcbiJdfQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvc3JjLyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sMkJBQTJCLENBQUM7QUFDbkMsT0FBTywyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sOEJBQThCLENBQUM7QUFDdEMsT0FBTyw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8seUJBQXlCLENBQUM7QUFDakMsT0FBTywrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLGtDQUFrQyxDQUFDO0FBQzFDLE9BQU8scUJBQXFCLENBQUM7QUFDN0IsT0FBTyx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sK0JBQStCLENBQUM7QUFDdkMsT0FBTywwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8seUJBQXlCLENBQUM7QUFDakMsT0FBTyx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyw0QkFBNEIsQ0FBQztBQUVwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELGNBQWMsdUJBQXVCLENBQUM7QUFFdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxjQUFjLEVBQXdCLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEYsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9jb21tb24nO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvbGFiZWwnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvaW5wdXQtdXBsb2FkLWZpbGUnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvY2hpcCc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS90ZXh0YXJlYSc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9jaGVja2JveCc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS90aW1lJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3NpZGUtZHJhd2VyJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3RhYi1yb3V0ZXInO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvaW5wdXQnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvc2VsZWN0JztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3F1aWNrLWFjdGlvbic7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9pbWFnZS1wcmV2aWV3JztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL2NvbW1lbnQnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvZmlsdGVyJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL21vZGFsLXJlc2l6YWJsZSc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9kYic7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9ncm91cCc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9qc29uLWVkaXRvcic7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9pbnB1dC1udW1iZXInO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvY29uZmlybSc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9wb3BvdmVyJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3BkZic7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9wcmludCc7XHJcbmltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS96aXAnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvZXhwb3J0JztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3RhYmxlJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL2RhdGUnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvbW9udGgnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvZGF0ZS1mdWxsJztcclxuXHJcbmV4cG9ydCB7IFNkQ29yZU1vZHVsZSB9IGZyb20gJy4vbGliL2NvcmUubW9kdWxlJztcclxuZXhwb3J0IHsgTWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuL2xpYi9tYXRlcmlhbC5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tYXRlcmlhbC5tb2R1bGUnO1xyXG5cclxuZXhwb3J0IHsgU2RBcGlNb2R1bGUsIFNkQXBpU2VydmljZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvYXBpJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9sb2FkaW5nJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9ub3RpZnknO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3NldHRpbmcnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3RyYW5zbGF0ZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvdXRpbGl0eSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvZHluYW1pYy1yZXBvcnQnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2NoYXJ0JztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS91cGxvYWQtZmlsZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvZGF0ZS1yYW5nZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvZGF0ZS10aW1lJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9idXR0b24nO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2tvbnZhJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9hdXRvY29tcGxldGUnO1xyXG5leHBvcnQgeyBTZEdyaWRNYXRlcmlhbCwgU2RHcmlkTWF0ZXJpYWxPcHRpb24gfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2dyaWQtbWF0ZXJpYWwnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3NlbGVjdC1lZGl0b3InO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2VkaXRvcic7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvbW9kYWwnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2dyaWQnO1xyXG5leHBvcnQgKiBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3VwbG9hZC1leGNlbCc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvc3dpdGNoJztcclxuZXhwb3J0ICogZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9yYWRpbyc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvZm9ybSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvcG9wb3Zlcic7XHJcbiJdfQ==
@@ -1,20 +1,19 @@
1
- import { Directive, TemplateRef, EventEmitter, Component, ChangeDetectionStrategy, ChangeDetectorRef, Inject, Optional, ViewChild, Input, ContentChild, Output, NgModule } from '@angular/core';
2
1
  import { CommonModule } from '@angular/common';
2
+ import { Directive, TemplateRef, EventEmitter, Component, ChangeDetectionStrategy, ChangeDetectorRef, Inject, Optional, ViewChild, Input, ContentChild, Output, NgModule } from '@angular/core';
3
3
  import { Validators, NgForm, FormsModule, ReactiveFormsModule } from '@angular/forms';
4
+ import { MatAutocompleteTrigger, MatAutocompleteModule } from '@angular/material/autocomplete';
4
5
  import { MatFormFieldModule } from '@angular/material/form-field';
6
+ import { MatIconModule } from '@angular/material/icon';
5
7
  import { MatInputModule } from '@angular/material/input';
8
+ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
9
+ import { MatTooltipModule } from '@angular/material/tooltip';
10
+ import { SdFormControl, FORM_CONFIG, SdLabelDefDirective, SdViewDefDirective, SdCommonModule } from '@sd-angular/core/common';
11
+ import { SdTranslateModule } from '@sd-angular/core/translate';
6
12
  import { __classPrivateFieldSet, __classPrivateFieldGet, __awaiter } from 'tslib';
7
13
  import { debounceTime, switchMap, map, catchError, finalize, startWith } from 'rxjs/operators';
8
14
  import { v4 } from 'uuid';
9
15
  import hash from 'object-hash';
10
16
  import { BehaviorSubject, Subscription, combineLatest, defer, from, of } from 'rxjs';
11
- import { MatAutocompleteTrigger, MatAutocompleteModule } from '@angular/material/autocomplete';
12
- import { SdFormControl, FORM_CONFIG, SdLabelDefDirective, SdViewDefDirective, SdCommonModule } from '@sd-angular/core/common';
13
- import { MatIconModule } from '@angular/material/icon';
14
- import { SdTranslateModule } from '@sd-angular/core/translate';
15
- import { MatTooltipModule } from '@angular/material/tooltip';
16
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
17
- import { SdPopoverModule } from '@sd-angular/core/popover';
18
17
 
19
18
  class SdAutocompleteDisplayDefDirective {
20
19
  constructor(templateRef) {
@@ -416,7 +415,7 @@ _model = new WeakMap(), _delay = new WeakMap(), _name = new WeakMap(), _form = n
416
415
  SdAutocomplete.decorators = [
417
416
  { type: Component, args: [{
418
417
  selector: 'sd-autocomplete',
419
- template: "<ng-container *ngIf=\"!appearance && sdLabelDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"sdLabelDef.templateRef\"> </ng-container>\r\n</ng-container>\r\n<label *ngIf=\"!appearance && !sdLabelDef?.templateRef && label\" class=\"d-block mb-0 T14M\"\r\n >{{ label }} <span class=\"text-danger mb-2\" *ngIf=\"isRequired\">*</span></label\r\n>\r\n<div\r\n class=\"d-flex align-items-center\"\r\n [class.sd-view]=\"sdView?.templateRef\"\r\n [class.c-focused]=\"isFocused\"\r\n [class.c-disabled]=\"formControl.disabled\"\r\n (click)=\"onClick()\">\r\n <ng-container *ngIf=\"sdView?.templateRef && !autocompleteTrigger?.panelOpen && !isFocused; else default\">\r\n <ng-container *ngTemplateOutlet=\"sdView.templateRef; context: { value: formControl.value, selectedItem: selected | async }\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #default>\r\n <mat-form-field\r\n class=\"sd-md\"\r\n [ngClass]=\"{ 'sd-sm': size === 'sm', 'no-padding-wrapper': disableErrorMessage }\"\r\n [floatLabel]=\"size === 'sm' || formControl.value ? 'always' : 'auto'\"\r\n [appearance]=\"appearance || 'outline'\">\r\n <mat-label *ngIf=\"appearance && label\">{{ label }}</mat-label>\r\n <input\r\n aria-hidden=\"true\"\r\n [id]=\"id\"\r\n #autocompleteTrigger\r\n [formControl]=\"inputControl\"\r\n [placeholder]=\"controlPlaceHolder | async\"\r\n [ngClass]=\"{ 'c-selected': formControl?.value }\"\r\n [matAutocomplete]=\"auto\"\r\n (focus)=\"onFocus()\"\r\n (blur)=\"onBlur()\"\r\n matInput\r\n [autocomplete]=\"id\"\r\n autocorrect=\"off\"\r\n [errorStateMatcher]=\"matcher\"\r\n [required]=\"isRequired\"\r\n [attr.data-qclabel]=\"label\"\r\n [attr.data-qcid]=\"qcId\"\r\n [sdPopoverTriggerFor]=\"null\"\r\n [sdPopoverDisabled]=\"!disableErrorMessage || formControl.valid\"\r\n #input />\r\n <ng-content select=\"[sdSuffixIcon]\" matSuffix></ng-content>\r\n <mat-icon\r\n *ngIf=\"!loading && formControl?.value && !inputControl.disabled\"\r\n class=\"pointer sd-suffix-icon\"\r\n (click)=\"clear($event)\"\r\n matSuffix\r\n >cancel\r\n </mat-icon>\r\n <mat-icon\r\n *ngIf=\"actionIcon && !loading && !formControl?.value && !inputControl.disabled\"\r\n class=\"pointer sd-suffix-icon\"\r\n (click)=\"onAction($event)\"\r\n matSuffix\r\n >{{ actionIcon }}\r\n </mat-icon>\r\n <svg\r\n #copyTooltip=\"matTooltip\"\r\n *ngIf=\"!loading && formControl?.value && copyable\"\r\n matSuffix\r\n [matTooltip]=\"copied ? 'Copied' : 'Copy'\"\r\n class=\"icon-copy\"\r\n focusable=\"false\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 448 512\"\r\n (click)=\"onCopyText($event)\">\r\n <path\r\n d=\"M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM266 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 0 1-6 6zm128-96H182a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 0 1-6 6zm6-256h-64V48h9.632c1.591 0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 0 1 1.757 4.243V112z\"></path>\r\n </svg>\r\n <i [ngClass]=\"{ 'd-none': !loading }\" class=\"fa fa-spinner fa-pulse c-loading-icon\"></i>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onSelect($event.option.value)\">\r\n <ng-container *ngIf=\"filteredItems | async as items\">\r\n <ng-container *ngIf=\"items.length\">\r\n <mat-option\r\n *ngFor=\"let item of items\"\r\n [value]=\"item\"\r\n matTooltipPosition=\"above\"\r\n [matTooltip]=\"displayField ? item[displayField] : item\">\r\n <ng-container *ngIf=\"autocompleteDisplayDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"autocompleteDisplayDef.templateRef; context: { item: item }\"> </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!autocompleteDisplayDef?.templateRef\">\r\n {{ displayField ? item[displayField] : item }}\r\n </ng-container>\r\n </mat-option>\r\n </ng-container>\r\n <mat-option *ngIf=\"!items.length && inputControl.value && !isTyping && !loading\" [value]=\"\" class=\"T14R text-grey\">\r\n Kh\u00F4ng c\u00F3 d\u1EEF li\u1EC7u\r\n </mat-option>\r\n <mat-option\r\n class=\"sd__option--add\"\r\n *ngIf=\"!hiddenAdd && sdAdd?.observers?.length\"\r\n (keyup.Space)=\"$event.stopPropagation()\"\r\n disabled=\"true\">\r\n <div (click)=\"onAdd($event)\">\r\n <mat-icon class=\"mr-1\">add</mat-icon>\r\n {{ 'New item' | sdTranslate }}\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"formControl?.errors?.required\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ 'This field is required' | sdTranslate }}</ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl.errors?.customValidator\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ formControl.errors?.customValidator }}</ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl.errors?.inlineError\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ inlineError }}</ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n </ng-template>\r\n</div>\r\n<!-- <sd-popover #error=\"sdPopover\" type=\"danger\" width=\"300px\">\r\n <span *ngIf=\"formControl.errors?.required\">\r\n {{ \"This field is required\" | sdTranslate }}\r\n </span>\r\n</sd-popover> -->\r\n",
418
+ template: "<ng-container *ngIf=\"!appearance && sdLabelDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"sdLabelDef.templateRef\"> </ng-container>\r\n</ng-container>\r\n<label *ngIf=\"!appearance && !sdLabelDef?.templateRef && label\" class=\"d-block mb-0 T14M\"\r\n >{{ label }} <span class=\"text-danger mb-2\" *ngIf=\"isRequired\">*</span></label\r\n>\r\n<div\r\n class=\"d-flex align-items-center\"\r\n [class.sd-view]=\"sdView?.templateRef\"\r\n [class.c-focused]=\"isFocused\"\r\n [class.c-disabled]=\"formControl.disabled\"\r\n (click)=\"onClick()\">\r\n <ng-container *ngIf=\"sdView?.templateRef && !autocompleteTrigger?.panelOpen && !isFocused; else default\">\r\n <ng-container *ngTemplateOutlet=\"sdView.templateRef; context: { value: formControl.value, selectedItem: selected | async }\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #default>\r\n <mat-form-field\r\n class=\"sd-md\"\r\n [ngClass]=\"{ 'sd-sm': size === 'sm', 'no-padding-wrapper': disableErrorMessage }\"\r\n [floatLabel]=\"size === 'sm' || formControl.value ? 'always' : 'auto'\"\r\n [appearance]=\"appearance || 'outline'\">\r\n <mat-label *ngIf=\"appearance && label\">{{ label }}</mat-label>\r\n <input\r\n aria-hidden=\"true\"\r\n [id]=\"id\"\r\n #autocompleteTrigger\r\n [formControl]=\"inputControl\"\r\n [placeholder]=\"controlPlaceHolder | async\"\r\n [ngClass]=\"{ 'c-selected': formControl?.value }\"\r\n [matAutocomplete]=\"auto\"\r\n (focus)=\"onFocus()\"\r\n (blur)=\"onBlur()\"\r\n matInput\r\n [autocomplete]=\"id\"\r\n autocorrect=\"off\"\r\n [errorStateMatcher]=\"matcher\"\r\n [required]=\"isRequired\"\r\n [attr.data-qclabel]=\"label\"\r\n [attr.data-qcid]=\"qcId\"\r\n #input />\r\n <ng-content select=\"[sdSuffixIcon]\" matSuffix></ng-content>\r\n <mat-icon\r\n *ngIf=\"!loading && formControl?.value && !inputControl.disabled\"\r\n class=\"pointer sd-suffix-icon\"\r\n (click)=\"clear($event)\"\r\n matSuffix\r\n >cancel\r\n </mat-icon>\r\n <mat-icon\r\n *ngIf=\"actionIcon && !loading && !formControl?.value && !inputControl.disabled\"\r\n class=\"pointer sd-suffix-icon\"\r\n (click)=\"onAction($event)\"\r\n matSuffix\r\n >{{ actionIcon }}\r\n </mat-icon>\r\n <svg\r\n #copyTooltip=\"matTooltip\"\r\n *ngIf=\"!loading && formControl?.value && copyable\"\r\n matSuffix\r\n [matTooltip]=\"copied ? 'Copied' : 'Copy'\"\r\n class=\"icon-copy\"\r\n focusable=\"false\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 448 512\"\r\n (click)=\"onCopyText($event)\">\r\n <path\r\n d=\"M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM266 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 0 1-6 6zm128-96H182a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 0 1-6 6zm6-256h-64V48h9.632c1.591 0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 0 1 1.757 4.243V112z\"></path>\r\n </svg>\r\n <i [ngClass]=\"{ 'd-none': !loading }\" class=\"fa fa-spinner fa-pulse c-loading-icon\"></i>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"onSelect($event.option.value)\">\r\n <ng-container *ngIf=\"filteredItems | async as items\">\r\n <ng-container *ngIf=\"items.length\">\r\n <mat-option\r\n *ngFor=\"let item of items\"\r\n [value]=\"item\"\r\n matTooltipPosition=\"above\"\r\n [matTooltip]=\"displayField ? item[displayField] : item\">\r\n <ng-container *ngIf=\"autocompleteDisplayDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"autocompleteDisplayDef.templateRef; context: { item: item }\"> </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!autocompleteDisplayDef?.templateRef\">\r\n {{ displayField ? item[displayField] : item }}\r\n </ng-container>\r\n </mat-option>\r\n </ng-container>\r\n <mat-option *ngIf=\"!items.length && inputControl.value && !isTyping && !loading\" [value]=\"\" class=\"T14R text-grey\">\r\n Kh\u00F4ng c\u00F3 d\u1EEF li\u1EC7u\r\n </mat-option>\r\n <mat-option\r\n class=\"sd__option--add\"\r\n *ngIf=\"!hiddenAdd && sdAdd?.observers?.length\"\r\n (keyup.Space)=\"$event.stopPropagation()\"\r\n disabled=\"true\">\r\n <div (click)=\"onAdd($event)\">\r\n <mat-icon class=\"mr-1\">add</mat-icon>\r\n {{ 'New item' | sdTranslate }}\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n <mat-error *ngIf=\"formControl?.errors?.required\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ 'This field is required' | sdTranslate }}</ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl.errors?.customValidator\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ formControl.errors?.customValidator }}</ng-container>\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl.errors?.inlineError\">\r\n <ng-container *ngIf=\"!disableErrorMessage\">{{ inlineError }}</ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n </ng-template>\r\n</div>\r\n<!-- <sd-popover #error=\"sdPopover\" type=\"danger\" width=\"300px\">\r\n <span *ngIf=\"formControl.errors?.required\">\r\n {{ \"This field is required\" | sdTranslate }}\r\n </span>\r\n</sd-popover> -->\r\n",
420
419
  changeDetection: ChangeDetectionStrategy.OnPush,
421
420
  styles: [":host{display:block;padding-top:5px}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field input.c-selected::-moz-placeholder{color:#000;opacity:1}:host ::ng-deep .mat-form-field input.c-selected:-ms-input-placeholder{opacity:1}:host ::ng-deep .mat-form-field input.c-selected::placeholder{color:#000;opacity:1}:host ::ng-deep .mat-form-field input.c-selected:-ms-input-placeholder{color:#000}:host ::ng-deep .mat-form-field input.c-selected::-ms-input-placeholder{color:#000}:host ::ng-deep .mat-form-field input.mat-input-element:disabled{color:#4d4d4d}:host ::ng-deep .mat-form-field input.mat-input-element:disabled.c-selected::-moz-placeholder{color:#4d4d4d}:host ::ng-deep .mat-form-field input.mat-input-element:disabled.c-selected::placeholder{color:#4d4d4d}:host ::ng-deep .mat-form-field input.mat-input-element:disabled.c-selected:-ms-input-placeholder{color:#4d4d4d}:host ::ng-deep .mat-form-field input.mat-input-element:disabled.c-selected::-ms-input-placeholder{color:#4d4d4d}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}:host ::ng-deep .mat-form-field:hover .icon-copy{opacity:1}:host ::ng-deep .mat-form-field .icon-copy{cursor:pointer;fill:rgba(0,0,0,.5);height:.9em;opacity:0;transition:opacity .2s linear;width:.9em}.sd-view:not(.c-focused):not(.c-disabled):hover{background-color:#ebecf0}.sd__option--add{background-color:#fff;bottom:0;color:rgba(0,0,0,.87);cursor:pointer!important;position:-webkit-sticky;position:sticky;z-index:10}.c-loading-icon{position:absolute;right:5px;top:5px}"]
422
421
  },] }
@@ -475,7 +474,6 @@ SdAutocompleteModule.decorators = [
475
474
  MatProgressSpinnerModule,
476
475
  SdTranslateModule,
477
476
  SdCommonModule,
478
- SdPopoverModule
479
477
  ],
480
478
  declarations: [
481
479
  SdAutocomplete,