@carefirst/library 1.3.9 → 1.3.10
Sign up to get free protection for your applications and to get access to all the features.
- package/.eslintrc.json +31 -0
- package/ng-package.json +8 -0
- package/package.json +11 -14
- package/src/lib/components/alert/alert.component.html +0 -0
- package/src/lib/components/alert/alert.component.scss +63 -0
- package/src/lib/components/alert/alert.component.spec.ts +23 -0
- package/src/lib/components/alert/alert.component.ts +73 -0
- package/src/lib/components/badge/badge.component.html +5 -0
- package/src/lib/components/badge/badge.component.scss +96 -0
- package/src/lib/components/badge/badge.component.spec.ts +23 -0
- package/src/lib/components/badge/badge.component.ts +61 -0
- package/src/lib/components/button/button.component.html +20 -0
- package/src/lib/components/button/button.component.scss +153 -0
- package/src/lib/components/button/button.component.spec.ts +21 -0
- package/src/lib/components/button/button.component.ts +94 -0
- package/src/lib/components/calendar/calendar.component.html +9 -0
- package/src/lib/components/calendar/calendar.component.scss +34 -0
- package/src/lib/components/calendar/calendar.component.spec.ts +23 -0
- package/src/lib/components/calendar/calendar.component.ts +53 -0
- package/src/lib/components/chat-bubble/chat-bubble.component.html +9 -0
- package/src/lib/components/chat-bubble/chat-bubble.component.scss +31 -0
- package/src/lib/components/chat-bubble/chat-bubble.component.spec.ts +23 -0
- package/src/lib/components/chat-bubble/chat-bubble.component.ts +43 -0
- package/src/lib/components/form-input/form-input.component.html +37 -0
- package/src/lib/components/form-input/form-input.component.scss +23 -0
- package/src/lib/components/form-input/form-input.component.spec.ts +23 -0
- package/src/lib/components/form-input/form-input.component.ts +95 -0
- package/src/lib/components/form-input-select/form-input-select.component.html +27 -0
- package/src/lib/components/form-input-select/form-input-select.component.scss +40 -0
- package/src/lib/components/form-input-select/form-input-select.component.spec.ts +23 -0
- package/src/lib/components/form-input-select/form-input-select.component.ts +61 -0
- package/src/lib/components/form-input-text-area/form-input-text-area.component.html +29 -0
- package/src/lib/components/form-input-text-area/form-input-text-area.component.scss +19 -0
- package/src/lib/components/form-input-text-area/form-input-text-area.component.spec.ts +23 -0
- package/src/lib/components/form-input-text-area/form-input-text-area.component.ts +76 -0
- package/src/lib/components/form-validation/form-validation.component.html +8 -0
- package/src/lib/components/form-validation/form-validation.component.scss +8 -0
- package/src/lib/components/form-validation/form-validation.component.spec.ts +23 -0
- package/src/lib/components/form-validation/form-validation.component.ts +34 -0
- package/src/lib/components/icon/icon.component.html +529 -0
- package/src/lib/components/icon/icon.component.scss +61 -0
- package/src/lib/components/icon/icon.component.spec.ts +21 -0
- package/src/lib/components/icon/icon.component.ts +40 -0
- package/src/lib/components/logo/logo.component.html +10 -0
- package/src/lib/components/logo/logo.component.scss +5 -0
- package/src/lib/components/logo/logo.component.spec.ts +23 -0
- package/src/lib/components/logo/logo.component.ts +21 -0
- package/src/lib/components/notification/notification.component.html +39 -0
- package/src/lib/components/notification/notification.component.scss +20 -0
- package/src/lib/components/notification/notification.component.spec.ts +21 -0
- package/src/lib/components/notification/notification.component.ts +23 -0
- package/src/lib/components/page/page.component.html +5 -0
- package/src/lib/components/page/page.component.scss +35 -0
- package/src/lib/components/page/page.component.spec.ts +21 -0
- package/src/lib/components/page/page.component.ts +42 -0
- package/src/lib/components/spacer/spacer.component.html +4 -0
- package/src/lib/components/spacer/spacer.component.scss +27 -0
- package/src/lib/components/spacer/spacer.component.spec.ts +21 -0
- package/src/lib/components/spacer/spacer.component.ts +43 -0
- package/src/lib/components/spinner/spinner.component.html +1 -0
- package/src/lib/components/spinner/spinner.component.scss +14 -0
- package/src/lib/components/spinner/spinner.component.spec.ts +23 -0
- package/src/lib/components/spinner/spinner.component.ts +33 -0
- package/src/lib/directives/button-loader.directive.spec.ts +8 -0
- package/src/lib/directives/button-loader.directive.ts +77 -0
- package/src/lib/interfaces/alert.interface.ts +20 -0
- package/src/lib/interfaces/icon.interface.ts +62 -0
- package/src/lib/interfaces/input.interface.ts +8 -0
- package/src/lib/interfaces/notification.interface.ts +15 -0
- package/src/lib/interfaces/spacer.interface.ts +6 -0
- package/src/lib/library.module.ts +66 -0
- package/src/lib/utils/attribute.util.ts +66 -0
- package/src/lib/utils/form-validators-utility.ts +186 -0
- package/{public-api.d.ts → src/public-api.ts} +18 -0
- package/tsconfig.lib.json +12 -0
- package/tsconfig.lib.prod.json +10 -0
- package/tsconfig.spec.json +14 -0
- package/esm2022/carefirst-library.mjs +0 -2
- package/esm2022/lib/components/alert/alert.component.mjs +0 -56
- package/esm2022/lib/components/badge/badge.component.mjs +0 -39
- package/esm2022/lib/components/button/button.component.mjs +0 -87
- package/esm2022/lib/components/calendar/calendar.component.mjs +0 -39
- package/esm2022/lib/components/chat-bubble/chat-bubble.component.mjs +0 -31
- package/esm2022/lib/components/form-input/form-input.component.mjs +0 -87
- package/esm2022/lib/components/form-input-select/form-input-select.component.mjs +0 -46
- package/esm2022/lib/components/form-input-text-area/form-input-text-area.component.mjs +0 -61
- package/esm2022/lib/components/form-validation/form-validation.component.mjs +0 -20
- package/esm2022/lib/components/icon/icon.component.mjs +0 -29
- package/esm2022/lib/components/logo/logo.component.mjs +0 -18
- package/esm2022/lib/components/notification/notification.component.mjs +0 -22
- package/esm2022/lib/components/page/page.component.mjs +0 -31
- package/esm2022/lib/components/spacer/spacer.component.mjs +0 -30
- package/esm2022/lib/components/spinner/spinner.component.mjs +0 -19
- package/esm2022/lib/directives/button-loader.directive.mjs +0 -41
- package/esm2022/lib/interfaces/alert.interface.mjs +0 -2
- package/esm2022/lib/interfaces/icon.interface.mjs +0 -52
- package/esm2022/lib/interfaces/input.interface.mjs +0 -2
- package/esm2022/lib/interfaces/notification.interface.mjs +0 -2
- package/esm2022/lib/interfaces/spacer.interface.mjs +0 -2
- package/esm2022/lib/library.module.mjs +0 -100
- package/esm2022/lib/utils/attribute.util.mjs +0 -34
- package/esm2022/lib/utils/form-validators-utility.mjs +0 -113
- package/esm2022/public-api.mjs +0 -24
- package/fesm2022/carefirst-library.mjs +0 -885
- package/fesm2022/carefirst-library.mjs.map +0 -1
- package/index.d.ts +0 -2
- package/lib/components/alert/alert.component.d.ts +0 -14
- package/lib/components/badge/badge.component.d.ts +0 -15
- package/lib/components/button/button.component.d.ts +0 -30
- package/lib/components/calendar/calendar.component.d.ts +0 -15
- package/lib/components/chat-bubble/chat-bubble.component.d.ts +0 -13
- package/lib/components/form-input/form-input.component.d.ts +0 -37
- package/lib/components/form-input-select/form-input-select.component.d.ts +0 -21
- package/lib/components/form-input-text-area/form-input-text-area.component.d.ts +0 -27
- package/lib/components/form-validation/form-validation.component.d.ts +0 -9
- package/lib/components/icon/icon.component.d.ts +0 -13
- package/lib/components/logo/logo.component.d.ts +0 -7
- package/lib/components/notification/notification.component.d.ts +0 -9
- package/lib/components/page/page.component.d.ts +0 -13
- package/lib/components/spacer/spacer.component.d.ts +0 -14
- package/lib/components/spinner/spinner.component.d.ts +0 -9
- package/lib/directives/button-loader.directive.d.ts +0 -12
- package/lib/interfaces/alert.interface.d.ts +0 -11
- package/lib/interfaces/icon.interface.d.ts +0 -4
- package/lib/interfaces/input.interface.d.ts +0 -4
- package/lib/interfaces/notification.interface.d.ts +0 -11
- package/lib/interfaces/spacer.interface.d.ts +0 -3
- package/lib/library.module.d.ts +0 -25
- package/lib/utils/attribute.util.d.ts +0 -4
- package/lib/utils/form-validators-utility.d.ts +0 -8
@@ -0,0 +1,186 @@
|
|
1
|
+
/**
|
2
|
+
* Form validators
|
3
|
+
*
|
4
|
+
* @file form-validators
|
5
|
+
* @description Various form validators
|
6
|
+
* @author Jacques Coetzee
|
7
|
+
* @since 2022 - 01 - 20
|
8
|
+
* @usage Display "errorMessage" key value as validator response message
|
9
|
+
*/
|
10
|
+
|
11
|
+
import { AbstractControl } from '@angular/forms';
|
12
|
+
import passwordValidator from 'password-validator';
|
13
|
+
import dayjs from 'dayjs';
|
14
|
+
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
15
|
+
dayjs.extend(customParseFormat);
|
16
|
+
//--- Interfaces
|
17
|
+
import type { ValidationErrors, ValidatorFn } from '@angular/forms';
|
18
|
+
|
19
|
+
export class CFPFormValidators {
|
20
|
+
/**----------------------------------------------------------------
|
21
|
+
* @name checkPSWRetype
|
22
|
+
* @description Check if passwords match
|
23
|
+
* @param {string} controlNameToCheckAgainst
|
24
|
+
* @returns {ValidatorFn}
|
25
|
+
* @usage FormValidators.compareTo('password')
|
26
|
+
*/
|
27
|
+
static compareTo(controlNameToCheckAgainst: string): ValidatorFn {
|
28
|
+
return (control: AbstractControl): ValidationErrors | null => {
|
29
|
+
//--- Compare controls
|
30
|
+
const controlToCheckTo: AbstractControl | null = control?.parent?.get(controlNameToCheckAgainst) || null;
|
31
|
+
|
32
|
+
//--- Check primary control value
|
33
|
+
if (!controlToCheckTo?.value) return { errorMessage: `Password Required` };
|
34
|
+
//--- Check secondary control value
|
35
|
+
else if (!control.value) return { errorMessage: `Password confirmation required` };
|
36
|
+
//--- Compare controls
|
37
|
+
else if (control.value && control?.value !== controlToCheckTo?.value) return { errorMessage: `Passwords do not match` };
|
38
|
+
|
39
|
+
return null;
|
40
|
+
};
|
41
|
+
}
|
42
|
+
|
43
|
+
/**----------------------------------------------------------------
|
44
|
+
* @name asPassword
|
45
|
+
* @description Validate control as password
|
46
|
+
* @returns {ValidatorFn}
|
47
|
+
* @usage FormValidators.asPassword()
|
48
|
+
*/
|
49
|
+
static asPassword(): ValidatorFn {
|
50
|
+
return (control: AbstractControl): ValidationErrors | null => {
|
51
|
+
const schema = new passwordValidator();
|
52
|
+
|
53
|
+
//--- Setup password requirements
|
54
|
+
schema
|
55
|
+
//--- Minimum length 8
|
56
|
+
.is()
|
57
|
+
.min(8, 'Minimum of 8 characters')
|
58
|
+
//--- Maximum length 50
|
59
|
+
.is()
|
60
|
+
.max(30, 'Maximum of 30 characters')
|
61
|
+
//--- Must have uppercase letters
|
62
|
+
.has()
|
63
|
+
.uppercase(undefined, 'At least one UPPERCASE character')
|
64
|
+
//--- Must have lowercase letters
|
65
|
+
.has()
|
66
|
+
.lowercase(undefined, 'At least one lowercase character')
|
67
|
+
//--- Must have at least 1 digits
|
68
|
+
.has()
|
69
|
+
.digits(undefined, 'At least one digit')
|
70
|
+
//--- Special characters
|
71
|
+
.has()
|
72
|
+
.symbols(undefined, 'At least one special character');
|
73
|
+
|
74
|
+
//--- Validate string
|
75
|
+
const inValid = schema.validate(control.value, { details: true }) as {
|
76
|
+
validation: string;
|
77
|
+
message: string;
|
78
|
+
arguments?: number;
|
79
|
+
}[];
|
80
|
+
|
81
|
+
const returnResponse: { [key: string]: unknown } = {};
|
82
|
+
inValid.forEach((error) => {
|
83
|
+
returnResponse['password-' + error.validation] = error.message;
|
84
|
+
});
|
85
|
+
return inValid.length ? returnResponse : null;
|
86
|
+
};
|
87
|
+
}
|
88
|
+
|
89
|
+
/**----------------------------------------------------------------
|
90
|
+
* @name asEmail
|
91
|
+
* @description Validate control as email
|
92
|
+
* @param {true} canBeEmpty
|
93
|
+
* @returns {ValidatorFn}
|
94
|
+
* @usage FormValidators.asEmail(true?)
|
95
|
+
*/
|
96
|
+
static asEmail(canBeEmpty?: true): ValidatorFn {
|
97
|
+
return (control: AbstractControl): ValidationErrors | null => {
|
98
|
+
let setErrors = null;
|
99
|
+
const emailRegEx = new RegExp('^[\\w-.]+@[\\w]+\\.[\\w]+');
|
100
|
+
|
101
|
+
//--- Check if email can be empty
|
102
|
+
if (canBeEmpty && (control.value === null || control.value === '')) {
|
103
|
+
return null;
|
104
|
+
}
|
105
|
+
|
106
|
+
//--- Test RegExp
|
107
|
+
if (!(control.value && emailRegEx.test(control.value))) {
|
108
|
+
setErrors = { errorMessage: `Not a valid email address` };
|
109
|
+
}
|
110
|
+
|
111
|
+
return setErrors;
|
112
|
+
};
|
113
|
+
}
|
114
|
+
|
115
|
+
/**----------------------------------------------------------------
|
116
|
+
* @name isIn
|
117
|
+
* @description Validate control value is part of a given list
|
118
|
+
* @param {string | number[]} list
|
119
|
+
* @returns {ValidatorFn}
|
120
|
+
* @usage FormValidators.isIn()
|
121
|
+
*/
|
122
|
+
static isIn(list: (string | number)[]): ValidatorFn {
|
123
|
+
return (control: AbstractControl): ValidationErrors | null => {
|
124
|
+
if (!list.includes(control.value)) return { errorMessage: 'Control value not part of eligible values' };
|
125
|
+
return null;
|
126
|
+
};
|
127
|
+
}
|
128
|
+
|
129
|
+
/**----------------------------------------------------------------
|
130
|
+
* @name isSAIDNumber
|
131
|
+
* @description Validate control value is a valid RSA ID Number
|
132
|
+
* @param {true} canBeEmpty
|
133
|
+
* @returns {ValidatorFn}
|
134
|
+
* @usage FormValidators.isSAIDNumber(true?)
|
135
|
+
*/
|
136
|
+
static isSAIDNumber(canBeEmpty?: true): ValidatorFn {
|
137
|
+
return (control: AbstractControl): ValidationErrors | null => {
|
138
|
+
const validateDate = (): boolean => {
|
139
|
+
if (typeof control.value !== 'string' || control.value.length < 6) return false;
|
140
|
+
const month = control.value.slice(2, 4);
|
141
|
+
const day = control.value.slice(4, 6);
|
142
|
+
if (+month < 0 && +month > 13) return false;
|
143
|
+
if (+day < 0 && +day > 31) return false;
|
144
|
+
if (!dayjs(control.value.slice(0, 6), 'YYMMDD', true).isValid()) return false;
|
145
|
+
return true;
|
146
|
+
};
|
147
|
+
|
148
|
+
const checksum = (): boolean => {
|
149
|
+
if (typeof control.value !== 'string' || control.value.length !== 13) return false;
|
150
|
+
let nSum = 0; //--- Total sum of all the values
|
151
|
+
let isSecond = false; //--- To double every other value
|
152
|
+
//--- Start from the end
|
153
|
+
for (let i = control.value.length - 1; i >= 0; i--) {
|
154
|
+
const val: string | undefined = control.value[i];
|
155
|
+
if (!val) return false;
|
156
|
+
//--- Get numerical value from ascii string
|
157
|
+
let d: number = val.charCodeAt(0) - '0'.charCodeAt(0);
|
158
|
+
//--- Double every other value
|
159
|
+
if (isSecond == true) d = d * 2;
|
160
|
+
//--- Sum the total of the doubled values if available
|
161
|
+
nSum += Math.floor(d / 10);
|
162
|
+
nSum += d % 10;
|
163
|
+
//--- Inverse second to determine every other index value
|
164
|
+
isSecond = !isSecond;
|
165
|
+
}
|
166
|
+
//--- Return the modulus 10 of the summation
|
167
|
+
return nSum % 10 == 0;
|
168
|
+
};
|
169
|
+
|
170
|
+
let error: string | null = null;
|
171
|
+
if (canBeEmpty && (!control.value || control.value?.length === 0)) return null;
|
172
|
+
//--- string
|
173
|
+
else if (typeof control.value !== 'string') error = 'Invalid RSA ID Number';
|
174
|
+
//--- Length = 13
|
175
|
+
else if (control.value.length !== 13) error = `Length required: ${13 - control.value.length}`;
|
176
|
+
//--- Validate date
|
177
|
+
else if (!validateDate()) error = `Invalid date of birth`;
|
178
|
+
//--- Citizenship
|
179
|
+
else if (!['0', '1'].includes(control.value.slice(10, 11))) error = `Invalid citizenship value`;
|
180
|
+
//--- Checksum
|
181
|
+
else if (!checksum()) error = `Invalid RSA ID number checksum`;
|
182
|
+
|
183
|
+
return error ? { errorMessage: error } : null;
|
184
|
+
};
|
185
|
+
}
|
186
|
+
}
|
@@ -1,6 +1,23 @@
|
|
1
|
+
/*
|
2
|
+
* Public API Surface of library
|
3
|
+
*/
|
4
|
+
|
5
|
+
/*===============================================
|
6
|
+
===================== USAGE =====================
|
7
|
+
Include in global.scss:
|
8
|
+
- @import '../node_modules/@carefirst/library/public/styles/index.scss';
|
9
|
+
Add to app module:
|
10
|
+
- import { CareFirstLibraryModule } from '@carefirst/library';
|
11
|
+
- Add "CareFirstLibraryModule" to imports
|
12
|
+
===============================================*/
|
13
|
+
|
14
|
+
//--- Modules
|
1
15
|
export * from './lib/library.module';
|
16
|
+
//--- Directives
|
2
17
|
export * from './lib/directives/button-loader.directive';
|
18
|
+
// --- Utilities
|
3
19
|
export * from './lib/utils/form-validators-utility';
|
20
|
+
//--- Components
|
4
21
|
export * from './lib/components/alert/alert.component';
|
5
22
|
export * from './lib/components/page/page.component';
|
6
23
|
export * from './lib/components/button/button.component';
|
@@ -16,6 +33,7 @@ export * from './lib/components/form-input-text-area/form-input-text-area.compon
|
|
16
33
|
export * from './lib/components/chat-bubble/chat-bubble.component';
|
17
34
|
export * from './lib/components/badge/badge.component';
|
18
35
|
export * from './lib/components/spinner/spinner.component';
|
36
|
+
//--- Interfaces
|
19
37
|
export * as CFAlertI from './lib/interfaces/alert.interface';
|
20
38
|
export * as CFIconI from './lib/interfaces/icon.interface';
|
21
39
|
export * as CFSpacerI from './lib/interfaces/spacer.interface';
|
@@ -0,0 +1,12 @@
|
|
1
|
+
/* To learn more about this file see: https://angular.io/config/tsconfig. */
|
2
|
+
{
|
3
|
+
"extends": "../../../tsconfig.json",
|
4
|
+
"compilerOptions": {
|
5
|
+
"outDir": "../../../out-tsc/lib",
|
6
|
+
"declaration": true,
|
7
|
+
"declarationMap": true,
|
8
|
+
"inlineSources": true,
|
9
|
+
"types": []
|
10
|
+
},
|
11
|
+
"exclude": ["**/*.spec.ts"]
|
12
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
/* To learn more about this file see: https://angular.io/config/tsconfig. */
|
2
|
+
{
|
3
|
+
"extends": "../../../tsconfig.json",
|
4
|
+
"compilerOptions": {
|
5
|
+
"outDir": "../../../out-tsc/spec",
|
6
|
+
"types": [
|
7
|
+
"jasmine"
|
8
|
+
]
|
9
|
+
},
|
10
|
+
"include": [
|
11
|
+
"**/*.spec.ts",
|
12
|
+
"**/*.d.ts"
|
13
|
+
]
|
14
|
+
}
|
@@ -1,2 +0,0 @@
|
|
1
|
-
export * from './public-api';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZWZpcnN0LWxpYnJhcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jYXJlZmlyc3QvbGlicmFyeS9zcmMvY2FyZWZpcnN0LWxpYnJhcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
@@ -1,56 +0,0 @@
|
|
1
|
-
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
2
|
-
import { AlertController } from '@ionic/angular';
|
3
|
-
import * as i0 from "@angular/core";
|
4
|
-
import * as i1 from "@ionic/angular";
|
5
|
-
export class AlertComponent {
|
6
|
-
alertController;
|
7
|
-
data = undefined;
|
8
|
-
alertEvent = new EventEmitter();
|
9
|
-
constructor(alertController) {
|
10
|
-
this.alertController = alertController;
|
11
|
-
}
|
12
|
-
ngOnChanges(changes) {
|
13
|
-
const val = changes['data']?.currentValue;
|
14
|
-
if (val)
|
15
|
-
this.showAlert(val);
|
16
|
-
}
|
17
|
-
async showAlert(data) {
|
18
|
-
const alert = await this.alertController.create({
|
19
|
-
header: data.heading,
|
20
|
-
message: data.message,
|
21
|
-
cssClass: 'care-first-alert',
|
22
|
-
mode: 'md',
|
23
|
-
backdropDismiss: false,
|
24
|
-
buttons: [
|
25
|
-
{
|
26
|
-
text: data.buttonFalse || 'Cancel',
|
27
|
-
handler: () => {
|
28
|
-
this.alertEvent.emit({ identifier: data.alertIdentifier, status: false });
|
29
|
-
alert.dismiss();
|
30
|
-
},
|
31
|
-
cssClass: 'alert-button-cancel',
|
32
|
-
},
|
33
|
-
{
|
34
|
-
text: data.buttonTrue || 'OK',
|
35
|
-
handler: () => {
|
36
|
-
this.alertEvent.emit({ identifier: data.alertIdentifier, status: true });
|
37
|
-
alert.dismiss();
|
38
|
-
},
|
39
|
-
cssClass: 'alert-button-confirm',
|
40
|
-
},
|
41
|
-
],
|
42
|
-
});
|
43
|
-
alert.present();
|
44
|
-
}
|
45
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: AlertComponent, deps: [{ token: i1.AlertController }], target: i0.ɵɵFactoryTarget.Component });
|
46
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: AlertComponent, selector: "cf-alert", inputs: { data: "data" }, outputs: { alertEvent: "alertEvent" }, usesOnChanges: true, ngImport: i0, template: "", styles: ["::ng-deep .care-first-alert .alert-wrapper{padding:1.6rem;border-radius:1.6rem;background-color:var(--cf-app-background-light)}::ng-deep .care-first-alert .alert-wrapper>*{text-align:center;padding:0}::ng-deep .care-first-alert .alert-wrapper .alert-title{font-weight:900;font-size:1.8rem;color:var(--cf-app-text-color-default)}::ng-deep .care-first-alert .alert-wrapper .alert-message{font-size:1.4rem;margin-top:1.2rem;color:var(--cf-app-text-color-default)}@media (min-width: 768px){::ng-deep .care-first-alert .alert-wrapper .alert-title{font-size:2.8rem}::ng-deep .care-first-alert .alert-wrapper .alert-message{font-size:1.8rem}}::ng-deep .care-first-alert .alert-wrapper .alert-button-group{margin-top:1.6rem;display:flex;justify-content:center;gap:4rem}@media (min-width: 768px){::ng-deep .care-first-alert .alert-wrapper .alert-button-group{gap:2rem}}::ng-deep .care-first-alert .alert-wrapper button.alert-button{font-size:1.6rem;padding:.6rem 2rem;margin:0}::ng-deep .care-first-alert .alert-wrapper button.alert-button.alert-button-cancel{color:var(--cf-app-system-color-error)}::ng-deep .care-first-alert .alert-wrapper button.alert-button.alert-button-confirm{border-radius:.6rem;background-color:var(--cf-app-color-primary);color:var(--cf-app-text-color-light)}\n"] });
|
47
|
-
}
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: AlertComponent, decorators: [{
|
49
|
-
type: Component,
|
50
|
-
args: [{ selector: 'cf-alert', template: "", styles: ["::ng-deep .care-first-alert .alert-wrapper{padding:1.6rem;border-radius:1.6rem;background-color:var(--cf-app-background-light)}::ng-deep .care-first-alert .alert-wrapper>*{text-align:center;padding:0}::ng-deep .care-first-alert .alert-wrapper .alert-title{font-weight:900;font-size:1.8rem;color:var(--cf-app-text-color-default)}::ng-deep .care-first-alert .alert-wrapper .alert-message{font-size:1.4rem;margin-top:1.2rem;color:var(--cf-app-text-color-default)}@media (min-width: 768px){::ng-deep .care-first-alert .alert-wrapper .alert-title{font-size:2.8rem}::ng-deep .care-first-alert .alert-wrapper .alert-message{font-size:1.8rem}}::ng-deep .care-first-alert .alert-wrapper .alert-button-group{margin-top:1.6rem;display:flex;justify-content:center;gap:4rem}@media (min-width: 768px){::ng-deep .care-first-alert .alert-wrapper .alert-button-group{gap:2rem}}::ng-deep .care-first-alert .alert-wrapper button.alert-button{font-size:1.6rem;padding:.6rem 2rem;margin:0}::ng-deep .care-first-alert .alert-wrapper button.alert-button.alert-button-cancel{color:var(--cf-app-system-color-error)}::ng-deep .care-first-alert .alert-wrapper button.alert-button.alert-button-confirm{border-radius:.6rem;background-color:var(--cf-app-color-primary);color:var(--cf-app-text-color-light)}\n"] }]
|
51
|
-
}], ctorParameters: () => [{ type: i1.AlertController }], propDecorators: { data: [{
|
52
|
-
type: Input
|
53
|
-
}], alertEvent: [{
|
54
|
-
type: Output
|
55
|
-
}] } });
|
56
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZWZpcnN0L2xpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9hbGVydC9hbGVydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQXNDLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVFqRCxNQUFNLE9BQU8sY0FBYztJQU9JO0lBTnBCLElBQUksR0FBMkIsU0FBUyxDQUFDO0lBQ3hDLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO0lBS3ZELFlBQTZCLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtJQUFHLENBQUM7SUFPakUsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFnQyxDQUFDO1FBQzlELElBQUksR0FBRztZQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQVFELEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBZ0I7UUFDOUIsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztZQUM5QyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDcEIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFFBQVEsRUFBRSxrQkFBa0I7WUFDNUIsSUFBSSxFQUFFLElBQUk7WUFDVixlQUFlLEVBQUUsS0FBSztZQUN0QixPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLElBQUksUUFBUTtvQkFDbEMsT0FBTyxFQUFFLEdBQUcsRUFBRTt3QkFDWixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO3dCQUMxRSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ2xCLENBQUM7b0JBQ0QsUUFBUSxFQUFFLHFCQUFxQjtpQkFDaEM7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSTtvQkFDN0IsT0FBTyxFQUFFLEdBQUcsRUFBRTt3QkFDWixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO3dCQUN6RSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ2xCLENBQUM7b0JBQ0QsUUFBUSxFQUFFLHNCQUFzQjtpQkFDakM7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUNILEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNsQixDQUFDO3VHQXBEVSxjQUFjOzJGQUFkLGNBQWMsc0lDbkIzQixFQUFBOzsyRkRtQmEsY0FBYztrQkFMMUIsU0FBUzsrQkFDRSxVQUFVO29GQUtYLElBQUk7c0JBQVosS0FBSztnQkFDSSxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDYXJlRmlyc3QgTGlicmFyeSBBbGVydFxuICpcbiAqIEBmaWxlICAgICAgICAgIGFsZXJ0LmNvbXBvbmVudFxuICogQGRlc2NyaXB0aW9uICAgQ29udGFpbnMgYWxsIHRoZSBsb2dpYyBmb3IgZ2VuZXJhdGluZyBhIENhcmVGaXJzdCBBbGVydFxuICogQGF1dGhvciAgICAgICAgQXJubyBKYW5zZW4gdmFuIFZ1dXJlblxuICogQHNpbmNlICAgICAgICAgMjAyMyAtIDExIC0gMzBcbiAqIEB1c2FnZSAgICAgICAgIDxjZi1hbGVydCBkYXRhPVwie2hlYWRpbmcsIG1lc3NhZ2UsIGJ1dHRvblRydWUsIGJ1dHRvbkZhbHNlfVwiIChhbGVydEV2ZW50KT48L2NmLWFsZXJ0PlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgdHlwZSBPbkNoYW5nZXMsIHR5cGUgU2ltcGxlQ2hhbmdlcywgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbGVydENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgdHlwZSB7IEFsZXJ0RGF0YUksIEFsZXJ0RXZlbnRJIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hbGVydC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjZi1hbGVydCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbGVydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9hbGVydC5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEFsZXJ0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgZGF0YTogQWxlcnREYXRhSSB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgQE91dHB1dCgpIGFsZXJ0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPEFsZXJ0RXZlbnRJPigpO1xuXG4gIC8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogQG5hbWUgIGNvbnN0cnVjdG9yXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGFsZXJ0Q29udHJvbGxlcjogQWxlcnRDb250cm9sbGVyKSB7fVxuXG4gIC8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogQG5hbWUgICAgICAgICAgbmdPbmNoYW5nZVxuICAgKiBAZGVzY3JpcHRpb24gICBVcGRhdGUgdmFyaW91cyB2YWx1ZXMgb24gY29tcG9uZW50IGlucHV0IGNoYW5nZXNcbiAgICogQHJldHVybnMgICAgICAge3ZvaWR9XG4gICAqL1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgdmFsID0gY2hhbmdlc1snZGF0YSddPy5jdXJyZW50VmFsdWUgYXMgdHlwZW9mIHRoaXMuZGF0YTtcbiAgICBpZiAodmFsKSB0aGlzLnNob3dBbGVydCh2YWwpO1xuICB9XG5cbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBAbmFtZSAgICAgICAgICBzaG93QWxlcnRcbiAgICogQGRlc2NyaXB0aW9uICAgU2hvd1xuICAgKiBAcGFyYW0gICAgICAgICB7QWxlcnREYXRhSX0gZGF0YVxuICAgKiBAcmV0dXJucyAgICAgICB7UHJvbWlzZTx2b2lkPn1cbiAgICovXG4gIGFzeW5jIHNob3dBbGVydChkYXRhOiBBbGVydERhdGFJKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgYWxlcnQgPSBhd2FpdCB0aGlzLmFsZXJ0Q29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgaGVhZGVyOiBkYXRhLmhlYWRpbmcsXG4gICAgICBtZXNzYWdlOiBkYXRhLm1lc3NhZ2UsXG4gICAgICBjc3NDbGFzczogJ2NhcmUtZmlyc3QtYWxlcnQnLFxuICAgICAgbW9kZTogJ21kJyxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogZmFsc2UsXG4gICAgICBidXR0b25zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0ZXh0OiBkYXRhLmJ1dHRvbkZhbHNlIHx8ICdDYW5jZWwnLFxuICAgICAgICAgIGhhbmRsZXI6ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWxlcnRFdmVudC5lbWl0KHsgaWRlbnRpZmllcjogZGF0YS5hbGVydElkZW50aWZpZXIsIHN0YXR1czogZmFsc2UgfSk7XG4gICAgICAgICAgICBhbGVydC5kaXNtaXNzKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBjc3NDbGFzczogJ2FsZXJ0LWJ1dHRvbi1jYW5jZWwnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdGV4dDogZGF0YS5idXR0b25UcnVlIHx8ICdPSycsXG4gICAgICAgICAgaGFuZGxlcjogKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hbGVydEV2ZW50LmVtaXQoeyBpZGVudGlmaWVyOiBkYXRhLmFsZXJ0SWRlbnRpZmllciwgc3RhdHVzOiB0cnVlIH0pO1xuICAgICAgICAgICAgYWxlcnQuZGlzbWlzcygpO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgY3NzQ2xhc3M6ICdhbGVydC1idXR0b24tY29uZmlybScsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICAgIGFsZXJ0LnByZXNlbnQoKTtcbiAgfVxufVxuIiwiIl19
|
@@ -1,39 +0,0 @@
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
2
|
-
import { validateStringValue } from '../../utils/attribute.util';
|
3
|
-
import { iconsC } from '../../interfaces/icon.interface';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
import * as i1 from "@ionic/angular";
|
6
|
-
import * as i2 from "@angular/common";
|
7
|
-
import * as i3 from "../icon/icon.component";
|
8
|
-
const badgeTypeC = [
|
9
|
-
'primary',
|
10
|
-
'alert',
|
11
|
-
'accent',
|
12
|
-
'warning',
|
13
|
-
'disabled',
|
14
|
-
'feedback-success',
|
15
|
-
'feedback-error',
|
16
|
-
'feedback-warning',
|
17
|
-
'feedback-busy',
|
18
|
-
];
|
19
|
-
export class BadgeComponent {
|
20
|
-
type = 'primary';
|
21
|
-
icon;
|
22
|
-
inputType = 'primary';
|
23
|
-
inputIcon = undefined;
|
24
|
-
ngOnChanges(changes) {
|
25
|
-
this.inputType = validateStringValue(changes, 'type', badgeTypeC.slice(), this.inputType) || 'primary';
|
26
|
-
this.inputIcon = validateStringValue(changes, 'icon', iconsC.slice(), this.inputIcon);
|
27
|
-
}
|
28
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: BadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
29
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: BadgeComponent, selector: "cf-badge", inputs: { type: "type", icon: "icon" }, usesOnChanges: true, ngImport: i0, template: "<div [className]=\"'cf-badge-' + inputType\">\n <cf-icon *ngIf=\"inputIcon && inputType !== 'feedback-busy'\" [icon]=\"inputIcon\" [height]=\"12\"></cf-icon>\n <ion-spinner *ngIf=\"inputType === 'feedback-busy'\"></ion-spinner>\n <p><ng-content></ng-content></p>\n</div>\n", styles: ["div[class^=cf-badge-]{--cf-badge-background: var(--cf-app-color-primary);--cf-badge-text-color: var(--cf-app-text-color-light);--cf-badge-border-color: var(--cf-badge-background);--cf-svg-overwrite-stroke-color: var(--cf-badge-text-color);display:flex;flex-direction:row;gap:8px;justify-content:center;align-items:center;padding:8px 16px;border-radius:6px;width:-moz-fit-content;width:fit-content;background:var(--cf-badge-background);border:.2rem solid var(--cf-badge-border-color)}div[class^=cf-badge-]>p{width:-moz-fit-content;width:fit-content;font-size:1.2rem;font-weight:500;font-style:normal;line-height:auto;color:var(--cf-badge-text-color)}div.cf-badge-feedback-primary{--cf-badge-background: var(--cf-app-color-primary);--cf-badge-text-color: var(--cf-app-text-color-light);--cf-badge-border-color: var(--cf-badge-background)}div.cf-badge-alert{--cf-badge-background: var(--cf-app-system-color-error);--cf-badge-text-color: var(--cf-app-text-color-light);--cf-badge-border-color: var(--cf-app-system-color-error)}div.cf-badge-accent{--cf-badge-background: var(--cf-app-color-accent);--cf-badge-text-color: var(--cf-app-text-color-light);--cf-badge-border-color: var(--cf-app-color-accent)}div.cf-badge-warning{--cf-badge-background: var(--cf-app-system-color-warning);--cf-badge-text-color: var(--cf-app-text-color-grey);--cf-badge-border-color: var(--cf-app-system-color-warning)}div.cf-badge-disabled{--cf-badge-background: var(--cf-app-system-color-disabled);--cf-badge-text-color: var(--cf-app-text-color-grey);--cf-badge-border-color: var(--cf-app-system-color-disabled)}div.cf-badge-feedback-success{--cf-badge-background: var(--cf-app-system-color-light-success);--cf-badge-text-color: var(--cf-app-system-color-success);--cf-badge-border-color: var(--cf-app-system-color-success)}div.cf-badge-feedback-error{--cf-badge-background: var(--cf-app-system-color-light-error);--cf-badge-text-color: var(--cf-app-system-color-error);--cf-badge-border-color: var(--cf-app-system-color-error)}div.cf-badge-feedback-warning,div.cf-badge-feedback-busy{--cf-badge-background: var(--cf-app-system-color-light-warning);--cf-badge-text-color: var(--cf-app-system-color-warning);--cf-badge-border-color: var(--cf-app-system-color-warning)}div.cf-badge-feedback-busy ion-spinner{color:var(--cf-app-system-color-warning);height:1.2rem;width:1.2rem}\n"], dependencies: [{ kind: "component", type: i1.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IconComponent, selector: "cf-icon", inputs: ["icon", "height", "iconColor"] }] });
|
30
|
-
}
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: BadgeComponent, decorators: [{
|
32
|
-
type: Component,
|
33
|
-
args: [{ selector: 'cf-badge', template: "<div [className]=\"'cf-badge-' + inputType\">\n <cf-icon *ngIf=\"inputIcon && inputType !== 'feedback-busy'\" [icon]=\"inputIcon\" [height]=\"12\"></cf-icon>\n <ion-spinner *ngIf=\"inputType === 'feedback-busy'\"></ion-spinner>\n <p><ng-content></ng-content></p>\n</div>\n", styles: ["div[class^=cf-badge-]{--cf-badge-background: var(--cf-app-color-primary);--cf-badge-text-color: var(--cf-app-text-color-light);--cf-badge-border-color: var(--cf-badge-background);--cf-svg-overwrite-stroke-color: var(--cf-badge-text-color);display:flex;flex-direction:row;gap:8px;justify-content:center;align-items:center;padding:8px 16px;border-radius:6px;width:-moz-fit-content;width:fit-content;background:var(--cf-badge-background);border:.2rem solid var(--cf-badge-border-color)}div[class^=cf-badge-]>p{width:-moz-fit-content;width:fit-content;font-size:1.2rem;font-weight:500;font-style:normal;line-height:auto;color:var(--cf-badge-text-color)}div.cf-badge-feedback-primary{--cf-badge-background: var(--cf-app-color-primary);--cf-badge-text-color: var(--cf-app-text-color-light);--cf-badge-border-color: var(--cf-badge-background)}div.cf-badge-alert{--cf-badge-background: var(--cf-app-system-color-error);--cf-badge-text-color: var(--cf-app-text-color-light);--cf-badge-border-color: var(--cf-app-system-color-error)}div.cf-badge-accent{--cf-badge-background: var(--cf-app-color-accent);--cf-badge-text-color: var(--cf-app-text-color-light);--cf-badge-border-color: var(--cf-app-color-accent)}div.cf-badge-warning{--cf-badge-background: var(--cf-app-system-color-warning);--cf-badge-text-color: var(--cf-app-text-color-grey);--cf-badge-border-color: var(--cf-app-system-color-warning)}div.cf-badge-disabled{--cf-badge-background: var(--cf-app-system-color-disabled);--cf-badge-text-color: var(--cf-app-text-color-grey);--cf-badge-border-color: var(--cf-app-system-color-disabled)}div.cf-badge-feedback-success{--cf-badge-background: var(--cf-app-system-color-light-success);--cf-badge-text-color: var(--cf-app-system-color-success);--cf-badge-border-color: var(--cf-app-system-color-success)}div.cf-badge-feedback-error{--cf-badge-background: var(--cf-app-system-color-light-error);--cf-badge-text-color: var(--cf-app-system-color-error);--cf-badge-border-color: var(--cf-app-system-color-error)}div.cf-badge-feedback-warning,div.cf-badge-feedback-busy{--cf-badge-background: var(--cf-app-system-color-light-warning);--cf-badge-text-color: var(--cf-app-system-color-warning);--cf-badge-border-color: var(--cf-app-system-color-warning)}div.cf-badge-feedback-busy ion-spinner{color:var(--cf-app-system-color-warning);height:1.2rem;width:1.2rem}\n"] }]
|
34
|
-
}], propDecorators: { type: [{
|
35
|
-
type: Input
|
36
|
-
}], icon: [{
|
37
|
-
type: Input
|
38
|
-
}] } });
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZWZpcnN0L2xpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2JhZGdlL2JhZGdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9iYWRnZS9iYWRnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBc0MsTUFBTSxlQUFlLENBQUM7QUFFckYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFakUsT0FBTyxFQUFFLE1BQU0sRUFBZSxNQUFNLGlDQUFpQyxDQUFDOzs7OztBQU10RSxNQUFNLFVBQVUsR0FBRztJQUNqQixTQUFTO0lBQ1QsT0FBTztJQUNQLFFBQVE7SUFDUixTQUFTO0lBQ1QsVUFBVTtJQUNWLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLGVBQWU7Q0FDUCxDQUFDO0FBV1gsTUFBTSxPQUFPLGNBQWM7SUFDaEIsSUFBSSxHQUFlLFNBQVMsQ0FBQztJQUM3QixJQUFJLENBQXNCO0lBR25DLFNBQVMsR0FBcUIsU0FBUyxDQUFDO0lBQ3hDLFNBQVMsR0FBaUMsU0FBUyxDQUFDO0lBT3BELFdBQVcsQ0FBQyxPQUFzQjtRQUVoQyxJQUFJLENBQUMsU0FBUyxHQUFHLG1CQUFtQixDQUFhLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLENBQUM7UUFFbkgsSUFBSSxDQUFDLFNBQVMsR0FBRyxtQkFBbUIsQ0FBUyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDaEcsQ0FBQzt1R0FsQlUsY0FBYzsyRkFBZCxjQUFjLDZHQ3pDM0IscVJBS0E7OzJGRG9DYSxjQUFjO2tCQUwxQixTQUFTOytCQUNFLFVBQVU7OEJBS1gsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ2FyZUZpcnN0IENoYXQgQmFkZ2VcbiAqXG4gKiBAZmlsZSAgICAgICAgICBiYWRnZS5jb21wb25lbnRcbiAqIEBkZXNjcmlwdGlvbiAgIENvbnRhaW5zIGFsbCB0aGUgbG9naWMgZm9yIGdlbmVyYXRpbmcgYSBDYXJlRmlyc3QgQ2hhdCBCYWRnZVxuICogQGF1dGhvciAgICAgICAgSmFjcXVlcyBDb2V0emVlXG4gKiBAc2luY2UgICAgICAgICAyMDI0IC0gMDIgLSAyMlxuICogQHVzYWdlICAgICAgICAgPGNmLWJhZGdlIHR5cGU9XCJCYWRnZVR5cGVUXCIgJWljb24lPVwiSWNvbnNUXCI+PC9jZi1iYWRnZT5cbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCB0eXBlIE9uQ2hhbmdlcywgdHlwZSBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4vLy0tLSBVdGlsc1xuaW1wb3J0IHsgdmFsaWRhdGVTdHJpbmdWYWx1ZSB9IGZyb20gJy4uLy4uL3V0aWxzL2F0dHJpYnV0ZS51dGlsJztcbi8vLS0tIEludGVyZmFjZXNcbmltcG9ydCB7IGljb25zQywgdHlwZSBJY29uc1QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ljb24uaW50ZXJmYWNlJztcblxuLyoqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQGludGVyZmFjZSAgICAgQmFkZ2VUeXBlVFxuICogQGRlc2NyaXB0aW9uICAgVHlwZXMgb2YgYmFkZ2VzIGF2YWlsYWJsZVxuICovXG5jb25zdCBiYWRnZVR5cGVDID0gW1xuICAncHJpbWFyeScsXG4gICdhbGVydCcsXG4gICdhY2NlbnQnLFxuICAnd2FybmluZycsXG4gICdkaXNhYmxlZCcsXG4gICdmZWVkYmFjay1zdWNjZXNzJyxcbiAgJ2ZlZWRiYWNrLWVycm9yJyxcbiAgJ2ZlZWRiYWNrLXdhcm5pbmcnLFxuICAnZmVlZGJhY2stYnVzeScsXG5dIGFzIGNvbnN0O1xudHlwZSBCYWRnZVR5cGVUID0gKHR5cGVvZiBiYWRnZVR5cGVDKVtudW1iZXJdO1xuXG4vKio9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBAbmFtZSAgICAgQmFkZ2VDb21wb25lbnRcbiAqICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjZi1iYWRnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9iYWRnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9iYWRnZS5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEJhZGdlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgdHlwZTogQmFkZ2VUeXBlVCA9ICdwcmltYXJ5JztcbiAgQElucHV0KCkgaWNvbj86IEljb25zVCB8IHVuZGVmaW5lZDtcblxuICAvLy0tLSBMb2NhbCB2YXJpYWJsZXNcbiAgaW5wdXRUeXBlOiB0eXBlb2YgdGhpcy50eXBlID0gJ3ByaW1hcnknO1xuICBpbnB1dEljb246IHR5cGVvZiB0aGlzLmljb24gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBAbmFtZSAgICAgICAgICBuZ09uQ2hhbmdlc1xuICAgKiBAZGVzY3JpcHRpb24gICBVcGRhdGUgdmFyaW91cyB2YWx1ZXMgb24gaW5wdXQgY2hhbmdlc1xuICAgKiBAcmV0dXJucyAgICAgICB7dm9pZH1cbiAgICovXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAvLy0tLSBUeXBlXG4gICAgdGhpcy5pbnB1dFR5cGUgPSB2YWxpZGF0ZVN0cmluZ1ZhbHVlPEJhZGdlVHlwZVQ+KGNoYW5nZXMsICd0eXBlJywgYmFkZ2VUeXBlQy5zbGljZSgpLCB0aGlzLmlucHV0VHlwZSkgfHwgJ3ByaW1hcnknO1xuICAgIC8vLS0tIEljb24gU3RhcnRcbiAgICB0aGlzLmlucHV0SWNvbiA9IHZhbGlkYXRlU3RyaW5nVmFsdWU8SWNvbnNUPihjaGFuZ2VzLCAnaWNvbicsIGljb25zQy5zbGljZSgpLCB0aGlzLmlucHV0SWNvbik7XG4gIH1cbn1cbiIsIjxkaXYgW2NsYXNzTmFtZV09XCInY2YtYmFkZ2UtJyArIGlucHV0VHlwZVwiPlxuICA8Y2YtaWNvbiAqbmdJZj1cImlucHV0SWNvbiAmJiBpbnB1dFR5cGUgIT09ICdmZWVkYmFjay1idXN5J1wiIFtpY29uXT1cImlucHV0SWNvblwiIFtoZWlnaHRdPVwiMTJcIj48L2NmLWljb24+XG4gIDxpb24tc3Bpbm5lciAqbmdJZj1cImlucHV0VHlwZSA9PT0gJ2ZlZWRiYWNrLWJ1c3knXCI+PC9pb24tc3Bpbm5lcj5cbiAgPHA+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvcD5cbjwvZGl2PlxuIl19
|
@@ -1,87 +0,0 @@
|
|
1
|
-
import { Component, Input, HostBinding } from '@angular/core';
|
2
|
-
import { checkTruthAttribute, validateStringValue } from '../../utils/attribute.util';
|
3
|
-
import { iconsC } from '../../interfaces/icon.interface';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
import * as i1 from "@ionic/angular";
|
6
|
-
import * as i2 from "@angular/common";
|
7
|
-
import * as i3 from "../icon/icon.component";
|
8
|
-
import * as i4 from "../../directives/button-loader.directive";
|
9
|
-
export class ButtonComponent {
|
10
|
-
type = 'primary';
|
11
|
-
disabled;
|
12
|
-
alert;
|
13
|
-
action;
|
14
|
-
snug;
|
15
|
-
fontSize;
|
16
|
-
iconStart;
|
17
|
-
iconEnd;
|
18
|
-
loading;
|
19
|
-
customColor;
|
20
|
-
get parentEvents() {
|
21
|
-
if (this.disabled) {
|
22
|
-
return 'none';
|
23
|
-
}
|
24
|
-
return 'auto';
|
25
|
-
}
|
26
|
-
inputType = 'primary';
|
27
|
-
inputFontSize = undefined;
|
28
|
-
inputDisabled = false;
|
29
|
-
inputAlert = false;
|
30
|
-
inputAction = false;
|
31
|
-
inputSnug = false;
|
32
|
-
inputIconStart = undefined;
|
33
|
-
inputIconEnd = undefined;
|
34
|
-
inputLoading = false;
|
35
|
-
inputCustomColor = '';
|
36
|
-
ngOnChanges(changes) {
|
37
|
-
this.inputType =
|
38
|
-
validateStringValue(changes, 'type', ['primary', 'secondary', 'tertiary'], this.inputType) || 'primary';
|
39
|
-
this.inputFontSize = validateStringValue(changes, 'fontSize', ['small', 'large'], this.inputFontSize);
|
40
|
-
this.inputDisabled = checkTruthAttribute(changes, 'disabled', this.inputDisabled);
|
41
|
-
this.inputAlert = checkTruthAttribute(changes, 'alert', this.inputAlert);
|
42
|
-
this.inputAction = checkTruthAttribute(changes, 'action', this.inputAction);
|
43
|
-
this.inputSnug = checkTruthAttribute(changes, 'snug', this.inputSnug);
|
44
|
-
this.inputIconStart = validateStringValue(changes, 'iconStart', iconsC.slice(), this.inputIconStart);
|
45
|
-
this.inputIconEnd = validateStringValue(changes, 'iconEnd', iconsC.slice(), this.inputIconEnd);
|
46
|
-
this.inputLoading = checkTruthAttribute(changes, 'loading', this.inputLoading);
|
47
|
-
if (changes['customColor']?.currentValue)
|
48
|
-
this.inputCustomColor = this.checkCustomColor(changes['customColor'].currentValue);
|
49
|
-
}
|
50
|
-
checkCustomColor(color) {
|
51
|
-
if (color.startsWith('var'))
|
52
|
-
return color;
|
53
|
-
if (color.startsWith('#') && (color.length === 4 || color.length === 7) && color.split('').every((char) => char.match(/[#0-9a-fA-F]+/)))
|
54
|
-
return color;
|
55
|
-
return '';
|
56
|
-
}
|
57
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
58
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: ButtonComponent, selector: "cf-btn", inputs: { type: "type", disabled: "disabled", alert: "alert", action: "action", snug: "snug", fontSize: "fontSize", iconStart: "iconStart", iconEnd: "iconEnd", loading: "loading", customColor: "customColor" }, host: { properties: { "style.pointer-events": "this.parentEvents" } }, usesOnChanges: true, ngImport: i0, template: "<ion-button\n [style]=\"'--custom-color: ' + inputCustomColor\"\n [ngClass]=\"{\n 'cf-button-primary': inputType === 'primary',\n 'cf-button-secondary': inputType === 'secondary',\n 'cf-button-tertiary': inputType === 'tertiary',\n 'text-large': inputFontSize === 'large',\n 'text-small': inputFontSize === 'small',\n alert: inputAlert,\n action: inputAction,\n snug: inputSnug\n }\"\n mode=\"md\"\n [disabled]=\"inputDisabled\">\n <cf-icon *ngIf=\"inputIconStart\" [icon]=\"inputIconStart\" style=\"--cf-svg-overwrite-stroke-color: var(--button-text-color)\"></cf-icon>\n <p *cfButtonLoader=\"inputLoading\">\n <ng-content></ng-content>\n </p>\n <cf-icon *ngIf=\"inputIconEnd\" [icon]=\"inputIconEnd\" style=\"--cf-svg-overwrite-stroke-color: var(--button-text-color)\"></cf-icon>\n</ion-button>\n", styles: ["ion-button[class^=cf-button-]{--custom-color: var(--cf-app-color-primary);--core: var(--custom-color, var(--cf-app-color-primary));width:100%;min-height:5.6rem;border-radius:1rem .4rem 1rem 1rem;text-transform:capitalize;overflow:hidden;margin:0;--padding-top: 1.6rem;--padding-bottom: 1.6rem;--padding-start: 2.4rem;--padding-end: 2.4rem;font-size:1.2rem}ion-button[class^=cf-button-]>p{width:-moz-fit-content;width:fit-content;font-weight:500;font-style:normal;line-height:auto}ion-button[class^=cf-button-]>:not(:first-child){margin-left:2rem}ion-button[class^=cf-button-]::part(native){border-radius:1rem .4rem 1rem 1rem;box-shadow:none}ion-button[class^=cf-button-].action{border-radius:.6rem;min-height:3.6rem;--padding-top: .6rem;--padding-bottom: .6rem;--padding-start: 2rem;--padding-end: 2rem}ion-button[class^=cf-button-].action::part(native){border-radius:.6rem}ion-button[class^=cf-button-].snug{width:-moz-fit-content;width:fit-content;min-height:-moz-fit-content;min-height:fit-content}ion-button[class^=cf-button-].text-large{font-size:1.6rem}ion-button[class^=cf-button-].text-small{font-size:1rem}.cf-button-primary{--background: var(--core);--button-text-color: var(--cf-app-text-color-light)}.cf-button-primary p{color:var(--button-text-color)}.cf-button-primary[class*=disabled]{opacity:100%;--background: var(--cf-app-system-color-disabled);--button-text-color: #9d9d9d}.cf-button-primary[class*=disabled] p{color:var(--button-text-color)}.cf-button-primary.alert:not([class*=disabled]){--background: var(--cf-app-system-color-error);--button-text-color: var(--cf-app-text-color-light)}.cf-button-primary.alert:not([class*=disabled]) p{color:var(--button-text-color)}.cf-button-secondary{--background: transparent;--button-text-color: var(--core)}.cf-button-secondary p{color:var(--button-text-color)}.cf-button-secondary::part(native){border:.2rem solid var(--core)}.cf-button-secondary[class*=disabled]{opacity:100%;--button-text-color: var(--cf-app-system-color-disabled)}.cf-button-secondary[class*=disabled] p{color:var(--button-text-color)}.cf-button-secondary[class*=disabled]::part(native){border:.2rem solid var(--cf-app-system-color-disabled)}.cf-button-secondary.alert:not([class*=disabled]){--button-text-color: var(--cf-app-system-color-error)}.cf-button-secondary.alert:not([class*=disabled]) p{color:var(--button-text-color)}.cf-button-secondary.alert:not([class*=disabled])::part(native){border:.2rem solid var(--cf-app-system-color-error)}.cf-button-tertiary{--background: transparent;--button-text-color: var(--core)}.cf-button-tertiary p{color:var(--button-text-color)}.cf-button-tertiary[class*=disabled]{opacity:100%;--button-text-color: var(--cf-app-system-color-disabled)}.cf-button-tertiary[class*=disabled] p{color:var(--button-text-color)}.cf-button-tertiary.alert:not([class*=disabled]){--button-text-color: var(--cf-app-system-color-error)}.cf-button-tertiary.alert:not([class*=disabled]) p{color:var(--button-text-color)}\n"], dependencies: [{ kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IconComponent, selector: "cf-icon", inputs: ["icon", "height", "iconColor"] }, { kind: "directive", type: i4.ButtonLoaderDirective, selector: "[cfButtonLoader]", inputs: ["cfButtonLoader"] }] });
|
59
|
-
}
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: ButtonComponent, decorators: [{
|
61
|
-
type: Component,
|
62
|
-
args: [{ selector: 'cf-btn', template: "<ion-button\n [style]=\"'--custom-color: ' + inputCustomColor\"\n [ngClass]=\"{\n 'cf-button-primary': inputType === 'primary',\n 'cf-button-secondary': inputType === 'secondary',\n 'cf-button-tertiary': inputType === 'tertiary',\n 'text-large': inputFontSize === 'large',\n 'text-small': inputFontSize === 'small',\n alert: inputAlert,\n action: inputAction,\n snug: inputSnug\n }\"\n mode=\"md\"\n [disabled]=\"inputDisabled\">\n <cf-icon *ngIf=\"inputIconStart\" [icon]=\"inputIconStart\" style=\"--cf-svg-overwrite-stroke-color: var(--button-text-color)\"></cf-icon>\n <p *cfButtonLoader=\"inputLoading\">\n <ng-content></ng-content>\n </p>\n <cf-icon *ngIf=\"inputIconEnd\" [icon]=\"inputIconEnd\" style=\"--cf-svg-overwrite-stroke-color: var(--button-text-color)\"></cf-icon>\n</ion-button>\n", styles: ["ion-button[class^=cf-button-]{--custom-color: var(--cf-app-color-primary);--core: var(--custom-color, var(--cf-app-color-primary));width:100%;min-height:5.6rem;border-radius:1rem .4rem 1rem 1rem;text-transform:capitalize;overflow:hidden;margin:0;--padding-top: 1.6rem;--padding-bottom: 1.6rem;--padding-start: 2.4rem;--padding-end: 2.4rem;font-size:1.2rem}ion-button[class^=cf-button-]>p{width:-moz-fit-content;width:fit-content;font-weight:500;font-style:normal;line-height:auto}ion-button[class^=cf-button-]>:not(:first-child){margin-left:2rem}ion-button[class^=cf-button-]::part(native){border-radius:1rem .4rem 1rem 1rem;box-shadow:none}ion-button[class^=cf-button-].action{border-radius:.6rem;min-height:3.6rem;--padding-top: .6rem;--padding-bottom: .6rem;--padding-start: 2rem;--padding-end: 2rem}ion-button[class^=cf-button-].action::part(native){border-radius:.6rem}ion-button[class^=cf-button-].snug{width:-moz-fit-content;width:fit-content;min-height:-moz-fit-content;min-height:fit-content}ion-button[class^=cf-button-].text-large{font-size:1.6rem}ion-button[class^=cf-button-].text-small{font-size:1rem}.cf-button-primary{--background: var(--core);--button-text-color: var(--cf-app-text-color-light)}.cf-button-primary p{color:var(--button-text-color)}.cf-button-primary[class*=disabled]{opacity:100%;--background: var(--cf-app-system-color-disabled);--button-text-color: #9d9d9d}.cf-button-primary[class*=disabled] p{color:var(--button-text-color)}.cf-button-primary.alert:not([class*=disabled]){--background: var(--cf-app-system-color-error);--button-text-color: var(--cf-app-text-color-light)}.cf-button-primary.alert:not([class*=disabled]) p{color:var(--button-text-color)}.cf-button-secondary{--background: transparent;--button-text-color: var(--core)}.cf-button-secondary p{color:var(--button-text-color)}.cf-button-secondary::part(native){border:.2rem solid var(--core)}.cf-button-secondary[class*=disabled]{opacity:100%;--button-text-color: var(--cf-app-system-color-disabled)}.cf-button-secondary[class*=disabled] p{color:var(--button-text-color)}.cf-button-secondary[class*=disabled]::part(native){border:.2rem solid var(--cf-app-system-color-disabled)}.cf-button-secondary.alert:not([class*=disabled]){--button-text-color: var(--cf-app-system-color-error)}.cf-button-secondary.alert:not([class*=disabled]) p{color:var(--button-text-color)}.cf-button-secondary.alert:not([class*=disabled])::part(native){border:.2rem solid var(--cf-app-system-color-error)}.cf-button-tertiary{--background: transparent;--button-text-color: var(--core)}.cf-button-tertiary p{color:var(--button-text-color)}.cf-button-tertiary[class*=disabled]{opacity:100%;--button-text-color: var(--cf-app-system-color-disabled)}.cf-button-tertiary[class*=disabled] p{color:var(--button-text-color)}.cf-button-tertiary.alert:not([class*=disabled]){--button-text-color: var(--cf-app-system-color-error)}.cf-button-tertiary.alert:not([class*=disabled]) p{color:var(--button-text-color)}\n"] }]
|
63
|
-
}], propDecorators: { type: [{
|
64
|
-
type: Input
|
65
|
-
}], disabled: [{
|
66
|
-
type: Input
|
67
|
-
}], alert: [{
|
68
|
-
type: Input
|
69
|
-
}], action: [{
|
70
|
-
type: Input
|
71
|
-
}], snug: [{
|
72
|
-
type: Input
|
73
|
-
}], fontSize: [{
|
74
|
-
type: Input
|
75
|
-
}], iconStart: [{
|
76
|
-
type: Input
|
77
|
-
}], iconEnd: [{
|
78
|
-
type: Input
|
79
|
-
}], loading: [{
|
80
|
-
type: Input
|
81
|
-
}], customColor: [{
|
82
|
-
type: Input
|
83
|
-
}], parentEvents: [{
|
84
|
-
type: HostBinding,
|
85
|
-
args: ['style.pointer-events']
|
86
|
-
}] } });
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFzQyxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEYsT0FBTyxFQUFFLE1BQU0sRUFBZSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7QUFPdEUsTUFBTSxPQUFPLGVBQWU7SUFDakIsSUFBSSxHQUF5QyxTQUFTLENBQUM7SUFDdkQsUUFBUSxDQUFnQztJQUN4QyxLQUFLLENBQWdDO0lBQ3JDLE1BQU0sQ0FBZ0M7SUFDdEMsSUFBSSxDQUFnQztJQUNwQyxRQUFRLENBQXFCO0lBQzdCLFNBQVMsQ0FBc0I7SUFDL0IsT0FBTyxDQUFzQjtJQUM3QixPQUFPLENBQWdDO0lBQ3ZDLFdBQVcsQ0FBc0I7SUFFMUMsSUFBeUMsWUFBWTtRQUNuRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsT0FBTyxNQUFNLENBQUM7U0FDZjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFHRCxTQUFTLEdBQXFCLFNBQVMsQ0FBQztJQUN4QyxhQUFhLEdBQXFDLFNBQVMsQ0FBQztJQUM1RCxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDbkIsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNwQixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLGNBQWMsR0FBc0MsU0FBUyxDQUFDO0lBQzlELFlBQVksR0FBb0MsU0FBUyxDQUFDO0lBQzFELFlBQVksR0FBRyxLQUFLLENBQUM7SUFDckIsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0lBT3RCLFdBQVcsQ0FBQyxPQUFzQjtRQUVoQyxJQUFJLENBQUMsU0FBUztZQUNaLG1CQUFtQixDQUF1QyxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxDQUFDO1FBRWhKLElBQUksQ0FBQyxhQUFhLEdBQUcsbUJBQW1CLENBQW9CLE9BQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXpILElBQUksQ0FBQyxhQUFhLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFbEYsSUFBSSxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV6RSxJQUFJLENBQUMsV0FBVyxHQUFHLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRTVFLElBQUksQ0FBQyxTQUFTLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFdEUsSUFBSSxDQUFDLGNBQWMsR0FBRyxtQkFBbUIsQ0FBUyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFN0csSUFBSSxDQUFDLFlBQVksR0FBRyxtQkFBbUIsQ0FBUyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFdkcsSUFBSSxDQUFDLFlBQVksR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUUvRSxJQUFJLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxZQUFZO1lBQUUsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDL0gsQ0FBQztJQVFELGdCQUFnQixDQUFDLEtBQWE7UUFFNUIsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBRTFDLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDckksT0FBTyxLQUFLLENBQUM7UUFDZixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7dUdBekVVLGVBQWU7MkZBQWYsZUFBZSw0VkNuQjVCLG8wQkFvQkE7OzJGRERhLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsUUFBUTs4QkFLVCxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVtQyxZQUFZO3NCQUFwRCxXQUFXO3VCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ2FyZUZpcnN0IExpYnJhcnkgLSBCdXR0b25cbiAqXG4gKiBAZmlsZSAgICAgICAgICBidXR0b24uY29tcG9uZW50XG4gKiBAZGVzY3JpcHRpb24gICBDb250YWlucyBhbGwgdGhlIGxvZ2ljIGZvciBnZW5lcmF0aW5nIGEgQ2FyZUZpcnN0IEJ1dHRvblxuICogQGF1dGhvciAgICAgICAgSmFjcXVlcyBDb2V0emVlXG4gKiBAc2luY2UgICAgICAgICAyMDIzIC0gMTEgLSAwN1xuICogQHVzYWdlICAgICAgICAgPGNmLWJ0biB0eXBlPVwiJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAndGVydGlhcnknXCIgZm9udFNpemU9XCInc21hbGwnIHwgJ2xhcmdlJ1wiICAlY3VzdG9tQ29sb3I9XCJ2YXIoKSB8IGhleFwiJSAlZGlzYWJsZWQlICVhbGVydCUgJWFjdGlvbiUgJXNudWclPlRFWFQ8L2NmLWJ0bj5cbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCB0eXBlIFNpbXBsZUNoYW5nZXMsIHR5cGUgT25DaGFuZ2VzLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2hlY2tUcnV0aEF0dHJpYnV0ZSwgdmFsaWRhdGVTdHJpbmdWYWx1ZSB9IGZyb20gJy4uLy4uL3V0aWxzL2F0dHJpYnV0ZS51dGlsJztcbmltcG9ydCB7IGljb25zQywgdHlwZSBJY29uc1QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ljb24uaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2YtYnRuJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2J1dHRvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSB0eXBlOiAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICd0ZXJ0aWFyeScgPSAncHJpbWFyeSc7XG4gIEBJbnB1dCgpIGRpc2FibGVkPzogYm9vbGVhbiB8IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgYWxlcnQ/OiBib29sZWFuIHwgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBhY3Rpb24/OiBib29sZWFuIHwgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBzbnVnPzogYm9vbGVhbiB8IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgZm9udFNpemU/OiAnc21hbGwnIHwgJ2xhcmdlJztcbiAgQElucHV0KCkgaWNvblN0YXJ0PzogSWNvbnNUIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBpY29uRW5kPzogSWNvbnNUIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBsb2FkaW5nPzogYm9vbGVhbiB8IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgY3VzdG9tQ29sb3I/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5wb2ludGVyLWV2ZW50cycpIGdldCBwYXJlbnRFdmVudHMoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuICdub25lJztcbiAgICB9XG4gICAgcmV0dXJuICdhdXRvJztcbiAgfVxuXG4gIC8vLS0tIExvY2FsIHZhcmlhYmxlc1xuICBpbnB1dFR5cGU6IHR5cGVvZiB0aGlzLnR5cGUgPSAncHJpbWFyeSc7XG4gIGlucHV0Rm9udFNpemU6IHR5cGVvZiB0aGlzLmZvbnRTaXplIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICBpbnB1dERpc2FibGVkID0gZmFsc2U7XG4gIGlucHV0QWxlcnQgPSBmYWxzZTtcbiAgaW5wdXRBY3Rpb24gPSBmYWxzZTtcbiAgaW5wdXRTbnVnID0gZmFsc2U7XG4gIGlucHV0SWNvblN0YXJ0OiB0eXBlb2YgdGhpcy5pY29uU3RhcnQgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gIGlucHV0SWNvbkVuZDogdHlwZW9mIHRoaXMuaWNvbkVuZCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgaW5wdXRMb2FkaW5nID0gZmFsc2U7XG4gIGlucHV0Q3VzdG9tQ29sb3IgPSAnJztcblxuICAvKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqIEBuYW1lICAgICAgICAgIG5nT25DaGFuZ2VzXG4gICAqIEBkZXNjcmlwdGlvbiAgIFVwZGF0ZSB2YXJpb3VzIHZhbHVlcyBvbiBpbnB1dCBjaGFuZ2VzXG4gICAqIEByZXR1cm5zICAgICAgIHt2b2lkfVxuICAgKi9cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIC8vLS0tIFR5cGVcbiAgICB0aGlzLmlucHV0VHlwZSA9XG4gICAgICB2YWxpZGF0ZVN0cmluZ1ZhbHVlPCdwcmltYXJ5JyB8ICdzZWNvbmRhcnknIHwgJ3RlcnRpYXJ5Jz4oY2hhbmdlcywgJ3R5cGUnLCBbJ3ByaW1hcnknLCAnc2Vjb25kYXJ5JywgJ3RlcnRpYXJ5J10sIHRoaXMuaW5wdXRUeXBlKSB8fCAncHJpbWFyeSc7XG4gICAgLy8tLS0gRm9udCBTaXplXG4gICAgdGhpcy5pbnB1dEZvbnRTaXplID0gdmFsaWRhdGVTdHJpbmdWYWx1ZTwnc21hbGwnIHwgJ2xhcmdlJz4oY2hhbmdlcywgJ2ZvbnRTaXplJywgWydzbWFsbCcsICdsYXJnZSddLCB0aGlzLmlucHV0Rm9udFNpemUpO1xuICAgIC8vLS0tIERpc2FibGVkXG4gICAgdGhpcy5pbnB1dERpc2FibGVkID0gY2hlY2tUcnV0aEF0dHJpYnV0ZShjaGFuZ2VzLCAnZGlzYWJsZWQnLCB0aGlzLmlucHV0RGlzYWJsZWQpO1xuICAgIC8vLS0tIEFsZXJ0XG4gICAgdGhpcy5pbnB1dEFsZXJ0ID0gY2hlY2tUcnV0aEF0dHJpYnV0ZShjaGFuZ2VzLCAnYWxlcnQnLCB0aGlzLmlucHV0QWxlcnQpO1xuICAgIC8vLS0tIEFjdGlvblxuICAgIHRoaXMuaW5wdXRBY3Rpb24gPSBjaGVja1RydXRoQXR0cmlidXRlKGNoYW5nZXMsICdhY3Rpb24nLCB0aGlzLmlucHV0QWN0aW9uKTtcbiAgICAvLy0tLSBTbnVnXG4gICAgdGhpcy5pbnB1dFNudWcgPSBjaGVja1RydXRoQXR0cmlidXRlKGNoYW5nZXMsICdzbnVnJywgdGhpcy5pbnB1dFNudWcpO1xuICAgIC8vLS0tIEljb24gU3RhcnRcbiAgICB0aGlzLmlucHV0SWNvblN0YXJ0ID0gdmFsaWRhdGVTdHJpbmdWYWx1ZTxJY29uc1Q+KGNoYW5nZXMsICdpY29uU3RhcnQnLCBpY29uc0Muc2xpY2UoKSwgdGhpcy5pbnB1dEljb25TdGFydCk7XG4gICAgLy8tLS0gSWNvbiBTdGFydFxuICAgIHRoaXMuaW5wdXRJY29uRW5kID0gdmFsaWRhdGVTdHJpbmdWYWx1ZTxJY29uc1Q+KGNoYW5nZXMsICdpY29uRW5kJywgaWNvbnNDLnNsaWNlKCksIHRoaXMuaW5wdXRJY29uRW5kKTtcbiAgICAvLy0tLSBMb2FkaW5nXG4gICAgdGhpcy5pbnB1dExvYWRpbmcgPSBjaGVja1RydXRoQXR0cmlidXRlKGNoYW5nZXMsICdsb2FkaW5nJywgdGhpcy5pbnB1dExvYWRpbmcpO1xuICAgIC8vLS0tIEN1c3RvbSBjb2xvclxuICAgIGlmIChjaGFuZ2VzWydjdXN0b21Db2xvciddPy5jdXJyZW50VmFsdWUpIHRoaXMuaW5wdXRDdXN0b21Db2xvciA9IHRoaXMuY2hlY2tDdXN0b21Db2xvcihjaGFuZ2VzWydjdXN0b21Db2xvciddLmN1cnJlbnRWYWx1ZSk7XG4gIH1cblxuICAvKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqIEBuYW1lICAgICAgICAgIGNoZWNrQ3VzdG9tQ29sb3JcbiAgICogQGRlc2NyaXB0aW9uICAgQ2hlY2sgaWYgdGhlIGN1c3RvbSBjb2xvciBpcyB2YWxpZFxuICAgKiBAcGFyYW0gICAgICAgICB7c3RyaW5nfSBjb2xvclxuICAgKiBAcmV0dXJucyAgICAgICB7c3RyaW5nfVxuICAgKi9cbiAgY2hlY2tDdXN0b21Db2xvcihjb2xvcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAvLy0tLSBDaGVjayBmb3IgYSBjc3MgdmFyaWFibGVcbiAgICBpZiAoY29sb3Iuc3RhcnRzV2l0aCgndmFyJykpIHJldHVybiBjb2xvcjtcbiAgICAvLy0tLSBDaGVjayBoZXhcbiAgICBpZiAoY29sb3Iuc3RhcnRzV2l0aCgnIycpICYmIChjb2xvci5sZW5ndGggPT09IDQgfHwgY29sb3IubGVuZ3RoID09PSA3KSAmJiBjb2xvci5zcGxpdCgnJykuZXZlcnkoKGNoYXIpID0+IGNoYXIubWF0Y2goL1sjMC05YS1mQS1GXSsvKSkpXG4gICAgICByZXR1cm4gY29sb3I7XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iLCI8aW9uLWJ1dHRvblxuICBbc3R5bGVdPVwiJy0tY3VzdG9tLWNvbG9yOiAnICsgaW5wdXRDdXN0b21Db2xvclwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnY2YtYnV0dG9uLXByaW1hcnknOiBpbnB1dFR5cGUgPT09ICdwcmltYXJ5JyxcbiAgICAnY2YtYnV0dG9uLXNlY29uZGFyeSc6IGlucHV0VHlwZSA9PT0gJ3NlY29uZGFyeScsXG4gICAgJ2NmLWJ1dHRvbi10ZXJ0aWFyeSc6IGlucHV0VHlwZSA9PT0gJ3RlcnRpYXJ5JyxcbiAgICAndGV4dC1sYXJnZSc6IGlucHV0Rm9udFNpemUgPT09ICdsYXJnZScsXG4gICAgJ3RleHQtc21hbGwnOiBpbnB1dEZvbnRTaXplID09PSAnc21hbGwnLFxuICAgIGFsZXJ0OiBpbnB1dEFsZXJ0LFxuICAgIGFjdGlvbjogaW5wdXRBY3Rpb24sXG4gICAgc251ZzogaW5wdXRTbnVnXG4gIH1cIlxuICBtb2RlPVwibWRcIlxuICBbZGlzYWJsZWRdPVwiaW5wdXREaXNhYmxlZFwiPlxuICA8Y2YtaWNvbiAqbmdJZj1cImlucHV0SWNvblN0YXJ0XCIgW2ljb25dPVwiaW5wdXRJY29uU3RhcnRcIiBzdHlsZT1cIi0tY2Ytc3ZnLW92ZXJ3cml0ZS1zdHJva2UtY29sb3I6IHZhcigtLWJ1dHRvbi10ZXh0LWNvbG9yKVwiPjwvY2YtaWNvbj5cbiAgPHAgKmNmQnV0dG9uTG9hZGVyPVwiaW5wdXRMb2FkaW5nXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L3A+XG4gIDxjZi1pY29uICpuZ0lmPVwiaW5wdXRJY29uRW5kXCIgW2ljb25dPVwiaW5wdXRJY29uRW5kXCIgc3R5bGU9XCItLWNmLXN2Zy1vdmVyd3JpdGUtc3Ryb2tlLWNvbG9yOiB2YXIoLS1idXR0b24tdGV4dC1jb2xvcilcIj48L2NmLWljb24+XG48L2lvbi1idXR0b24+XG4iXX0=
|
@@ -1,39 +0,0 @@
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
2
|
-
import dayjs from 'dayjs';
|
3
|
-
import { checkTruthAttribute, validateStringValue } from '../../utils/attribute.util';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
import * as i1 from "@ionic/angular";
|
6
|
-
export class CalendarComponent {
|
7
|
-
displayTime;
|
8
|
-
color;
|
9
|
-
min = undefined;
|
10
|
-
max = undefined;
|
11
|
-
value = new EventEmitter();
|
12
|
-
inputTime = false;
|
13
|
-
inputColor = 'accent';
|
14
|
-
ngOnChanges(changes) {
|
15
|
-
this.inputTime = checkTruthAttribute(changes, 'displayTime', this.inputTime);
|
16
|
-
this.inputColor = validateStringValue(changes, 'color', ['success', 'accent'], this.inputColor) || 'accent';
|
17
|
-
}
|
18
|
-
setValue(value) {
|
19
|
-
if (typeof value === 'string')
|
20
|
-
this.value.emit(dayjs(value).format('YYYY-MM-DD' + (this.inputTime ? ' HH:mm' : '')));
|
21
|
-
}
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: CalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
23
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: CalendarComponent, selector: "cf-calendar", inputs: { displayTime: "displayTime", color: "color", min: "min", max: "max" }, outputs: { value: "value" }, usesOnChanges: true, ngImport: i0, template: "<ion-datetime\n [class]=\"inputColor\"\n mode=\"ios\"\n firstDayOfWeek=\"1\"\n [min]=\"min\"\n [max]=\"max\"\n [presentation]=\"inputTime ? 'date-time' : 'date'\"\n (ionChange)=\"setValue($event.detail.value)\">\n</ion-datetime>\n", styles: ["ion-datetime{--background: var(--cf-app-background-light);color:var(--cf-app-text-color-default)}ion-datetime::part(calendar-day){font-size:1.6rem}ion-datetime::part(month-year-button){font-size:1.8rem;font-weight:900;color:var(--cf-app-text-color-default)}ion-datetime.accent::part(today){border:1px solid var(--cf-app-color-accent);color:var(--cf-app-color-accent)}ion-datetime.accent::part(active){background-color:var(--cf-app-color-accent);color:var(--cf-app-text-color-light)}ion-datetime.success::part(today){border:1px solid var(--cf-app-color-primary);color:var(--cf-app-text-color-default)}ion-datetime.success::part(active){background-color:var(--cf-app-system-color-success);color:var(--cf-app-text-color-light)}\n"], dependencies: [{ kind: "component", type: i1.IonDatetime, selector: "ion-datetime", inputs: ["cancelText", "clearText", "color", "dayValues", "disabled", "doneText", "firstDayOfWeek", "highlightedDates", "hourCycle", "hourValues", "isDateEnabled", "locale", "max", "min", "minuteValues", "mode", "monthValues", "multiple", "name", "preferWheel", "presentation", "readonly", "showClearButton", "showDefaultButtons", "showDefaultTimeLabel", "showDefaultTitle", "size", "titleSelectedDatesFormatter", "value", "yearValues"] }, { kind: "directive", type: i1.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }] });
|
24
|
-
}
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: CalendarComponent, decorators: [{
|
26
|
-
type: Component,
|
27
|
-
args: [{ selector: 'cf-calendar', template: "<ion-datetime\n [class]=\"inputColor\"\n mode=\"ios\"\n firstDayOfWeek=\"1\"\n [min]=\"min\"\n [max]=\"max\"\n [presentation]=\"inputTime ? 'date-time' : 'date'\"\n (ionChange)=\"setValue($event.detail.value)\">\n</ion-datetime>\n", styles: ["ion-datetime{--background: var(--cf-app-background-light);color:var(--cf-app-text-color-default)}ion-datetime::part(calendar-day){font-size:1.6rem}ion-datetime::part(month-year-button){font-size:1.8rem;font-weight:900;color:var(--cf-app-text-color-default)}ion-datetime.accent::part(today){border:1px solid var(--cf-app-color-accent);color:var(--cf-app-color-accent)}ion-datetime.accent::part(active){background-color:var(--cf-app-color-accent);color:var(--cf-app-text-color-light)}ion-datetime.success::part(today){border:1px solid var(--cf-app-color-primary);color:var(--cf-app-text-color-default)}ion-datetime.success::part(active){background-color:var(--cf-app-system-color-success);color:var(--cf-app-text-color-light)}\n"] }]
|
28
|
-
}], propDecorators: { displayTime: [{
|
29
|
-
type: Input
|
30
|
-
}], color: [{
|
31
|
-
type: Input
|
32
|
-
}], min: [{
|
33
|
-
type: Input
|
34
|
-
}], max: [{
|
35
|
-
type: Input
|
36
|
-
}], value: [{
|
37
|
-
type: Output
|
38
|
-
}] } });
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZWZpcnN0L2xpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFzQyxNQUFNLGVBQWUsQ0FBQztBQUMzRyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFFMUIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7OztBQU90RixNQUFNLE9BQU8saUJBQWlCO0lBQ25CLFdBQVcsQ0FBZ0M7SUFDM0MsS0FBSyxDQUF3QjtJQUM3QixHQUFHLEdBQXdCLFNBQVMsQ0FBQztJQUNyQyxHQUFHLEdBQXdCLFNBQVMsQ0FBQztJQUNwQyxLQUFLLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUc3QyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLFVBQVUsR0FBc0IsUUFBUSxDQUFDO0lBT3pDLFdBQVcsQ0FBQyxPQUFzQjtRQUVoQyxJQUFJLENBQUMsU0FBUyxHQUFHLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTdFLElBQUksQ0FBQyxVQUFVLEdBQUcsbUJBQW1CLENBQXVCLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFFBQVEsQ0FBQztJQUNwSSxDQUFDO0lBUUQsUUFBUSxDQUFDLEtBQTJDO1FBQ2xELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTtZQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkgsQ0FBQzt1R0EvQlUsaUJBQWlCOzJGQUFqQixpQkFBaUIscUxDcEI5QiwrT0FTQTs7MkZEV2EsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNFLGFBQWE7OEJBS2QsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDSSxLQUFLO3NCQUFkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENhcmVGaXJzdCBMaWJyYXJ5IENhbGVuZGFyXG4gKlxuICogQGZpbGUgICAgICAgICAgY2FsZW5kYXIuY29tcG9uZW50XG4gKiBAZGVzY3JpcHRpb24gICBDb250YWlucyBhbGwgdGhlIGxvZ2ljIGZvciBnZW5lcmF0aW5nIGEgQ2FyZUZpcnN0IENhbGVuZGFyXG4gKiBAYXV0aG9yICAgICAgICBBcm5vIEphbnNlbiB2YW4gVnV1cmVuXG4gKiBAc2luY2UgICAgICAgICAyMDIzIC0gMTIgLSAwMVxuICogQHVzYWdlICAgICAgICAgPGNmLWNhbGVuZGFyICVkaXNwbGF5VGltZSUgJWNvbG9yJT1cInN1Y2Nlc3MgfCBhY2NlbnRcIiAlbWluJSAlbWF4JT48L2NmLWNhbGVuZGFyPlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCB0eXBlIE9uQ2hhbmdlcywgdHlwZSBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xuLy8tLS0gVXRpbHNcbmltcG9ydCB7IGNoZWNrVHJ1dGhBdHRyaWJ1dGUsIHZhbGlkYXRlU3RyaW5nVmFsdWUgfSBmcm9tICcuLi8uLi91dGlscy9hdHRyaWJ1dGUudXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NmLWNhbGVuZGFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NhbGVuZGFyLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBkaXNwbGF5VGltZT86IGJvb2xlYW4gfCBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGNvbG9yPzogJ3N1Y2Nlc3MnIHwgJ2FjY2VudCc7XG4gIEBJbnB1dCgpIG1pbj86IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgbWF4Pzogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICBAT3V0cHV0KCkgdmFsdWUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAvLy0tLSBMb2NhbCB2YXJpYWJsZXNcbiAgaW5wdXRUaW1lID0gZmFsc2U7XG4gIGlucHV0Q29sb3I6IHR5cGVvZiB0aGlzLmNvbG9yID0gJ2FjY2VudCc7XG5cbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBAbmFtZSAgICAgICAgICBuZ09uQ2hhbmdlc1xuICAgKiBAZGVzY3JpcHRpb24gICBVcGRhdGUgdmFyaW91cyB2YWx1ZXMgb24gY29tcG9uZW50IGlucHV0IGNoYW5nZXNcbiAgICogQHJldHVybnMgICAgICAge3ZvaWR9XG4gICAqL1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgLy8tLS0gRGlzcGxheSBUaW1lXG4gICAgdGhpcy5pbnB1dFRpbWUgPSBjaGVja1RydXRoQXR0cmlidXRlKGNoYW5nZXMsICdkaXNwbGF5VGltZScsIHRoaXMuaW5wdXRUaW1lKTtcbiAgICAvLy0tLSBDb2xvclxuICAgIHRoaXMuaW5wdXRDb2xvciA9IHZhbGlkYXRlU3RyaW5nVmFsdWU8J3N1Y2Nlc3MnIHwgJ2FjY2VudCc+KGNoYW5nZXMsICdjb2xvcicsIFsnc3VjY2VzcycsICdhY2NlbnQnXSwgdGhpcy5pbnB1dENvbG9yKSB8fCAnYWNjZW50JztcbiAgfVxuXG4gIC8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogQG5hbWUgICAgICAgICAgc2V0VmFsdWVcbiAgICogQGRlc2NyaXB0aW9uICAgRW1pdCB0aGUgc2VsZWN0ZWQgZGF0ZSB2YWx1ZVxuICAgKiBAcGFyYW0gICAgICAgICB7c3RyaW5nIHwgc3RyaW5nW10gfCBudWxsIHwgdW5kZWZpbmVkfSB2YWx1ZVxuICAgKiBAcmV0dXJucyAgICAgICB7dm9pZH1cbiAgICovXG4gIHNldFZhbHVlKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykgdGhpcy52YWx1ZS5lbWl0KGRheWpzKHZhbHVlKS5mb3JtYXQoJ1lZWVktTU0tREQnICsgKHRoaXMuaW5wdXRUaW1lID8gJyBISDptbScgOiAnJykpKTtcbiAgfVxufVxuIiwiPGlvbi1kYXRldGltZVxuICBbY2xhc3NdPVwiaW5wdXRDb2xvclwiXG4gIG1vZGU9XCJpb3NcIlxuICBmaXJzdERheU9mV2Vlaz1cIjFcIlxuICBbbWluXT1cIm1pblwiXG4gIFttYXhdPVwibWF4XCJcbiAgW3ByZXNlbnRhdGlvbl09XCJpbnB1dFRpbWUgPyAnZGF0ZS10aW1lJyA6ICdkYXRlJ1wiXG4gIChpb25DaGFuZ2UpPVwic2V0VmFsdWUoJGV2ZW50LmRldGFpbC52YWx1ZSlcIj5cbjwvaW9uLWRhdGV0aW1lPlxuIl19
|
@@ -1,31 +0,0 @@
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
2
|
-
import { validateStringValue } from '../../utils/attribute.util';
|
3
|
-
import * as i0 from "@angular/core";
|
4
|
-
import * as i1 from "@angular/common";
|
5
|
-
import * as i2 from "../spacer/spacer.component";
|
6
|
-
export class ChatBubbleComponent {
|
7
|
-
type = 'outgoing';
|
8
|
-
date = '';
|
9
|
-
message = '';
|
10
|
-
inputType = 'incoming';
|
11
|
-
inputDate = '';
|
12
|
-
inputMessage = '';
|
13
|
-
ngOnChanges(changes) {
|
14
|
-
this.inputType = validateStringValue(changes, 'type', ['incoming', 'outgoing'], this.inputType) || 'outgoing';
|
15
|
-
this.inputDate = changes['date']?.currentValue || '';
|
16
|
-
this.inputMessage = changes['message']?.currentValue || '';
|
17
|
-
}
|
18
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: ChatBubbleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
19
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: ChatBubbleComponent, selector: "cf-chat-bubble", inputs: { type: "type", date: "date", message: "message" }, usesOnChanges: true, ngImport: i0, template: "<div id=\"container\" [ngClass]=\"inputType\">\n <div id=\"message\">\n <p class=\"body-extra-small\">{{ inputDate }}</p>\n <cf-spacer default=\"4\"></cf-spacer>\n <div id=\"bubble\">\n <p class=\"body-extra-small\">{{ inputMessage }}</p>\n </div>\n </div>\n</div>\n", styles: ["#container{display:flex}#container #message p{color:var(--cf-app-text-color-default)}#container #message #bubble{background:var(--message-background-color);border-radius:var(--border-radius);padding:12px 16px}#container #message #bubble p{color:var(--cf-app-text-color-light)}#container.outgoing{justify-content:end;text-align:end;--border-radius: 16px 4px 16px 16px;--message-background-color: var(--cf-app-color-primary)}#container.incoming{justify-content:start;text-align:start;--border-radius: 4px 16px 16px 16px;--message-background-color: var(--cf-app-color-secondary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SpacerComponent, selector: "cf-spacer", inputs: ["default", "mobile", "desktop"] }] });
|
20
|
-
}
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: ChatBubbleComponent, decorators: [{
|
22
|
-
type: Component,
|
23
|
-
args: [{ selector: 'cf-chat-bubble', template: "<div id=\"container\" [ngClass]=\"inputType\">\n <div id=\"message\">\n <p class=\"body-extra-small\">{{ inputDate }}</p>\n <cf-spacer default=\"4\"></cf-spacer>\n <div id=\"bubble\">\n <p class=\"body-extra-small\">{{ inputMessage }}</p>\n </div>\n </div>\n</div>\n", styles: ["#container{display:flex}#container #message p{color:var(--cf-app-text-color-default)}#container #message #bubble{background:var(--message-background-color);border-radius:var(--border-radius);padding:12px 16px}#container #message #bubble p{color:var(--cf-app-text-color-light)}#container.outgoing{justify-content:end;text-align:end;--border-radius: 16px 4px 16px 16px;--message-background-color: var(--cf-app-color-primary)}#container.incoming{justify-content:start;text-align:start;--border-radius: 4px 16px 16px 16px;--message-background-color: var(--cf-app-color-secondary)}\n"] }]
|
24
|
-
}], propDecorators: { type: [{
|
25
|
-
type: Input
|
26
|
-
}], date: [{
|
27
|
-
type: Input
|
28
|
-
}], message: [{
|
29
|
-
type: Input
|
30
|
-
}] } });
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1idWJibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZWZpcnN0L2xpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2NoYXQtYnViYmxlL2NoYXQtYnViYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9jaGF0LWJ1YmJsZS9jaGF0LWJ1YmJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBc0MsTUFBTSxlQUFlLENBQUM7QUFFckYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFPakUsTUFBTSxPQUFPLG1CQUFtQjtJQUNyQixJQUFJLEdBQTRCLFVBQVUsQ0FBQztJQUMzQyxJQUFJLEdBQVcsRUFBRSxDQUFDO0lBQ2xCLE9BQU8sR0FBVyxFQUFFLENBQUM7SUFHOUIsU0FBUyxHQUFxQixVQUFVLENBQUM7SUFDekMsU0FBUyxHQUFxQixFQUFFLENBQUM7SUFDakMsWUFBWSxHQUF3QixFQUFFLENBQUM7SUFPdkMsV0FBVyxDQUFDLE9BQXNCO1FBRWhDLElBQUksQ0FBQyxTQUFTLEdBQUcsbUJBQW1CLENBQW1CLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLFVBQVUsQ0FBQztRQUVoSSxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxZQUFZLElBQUksRUFBRSxDQUFDO1FBRXJELElBQUksQ0FBQyxZQUFZLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLFlBQVksSUFBSSxFQUFFLENBQUM7SUFDN0QsQ0FBQzt1R0F0QlUsbUJBQW1COzJGQUFuQixtQkFBbUIsdUlDbkJoQywrUkFTQTs7MkZEVWEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGdCQUFnQjs4QkFLakIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENhcmVGaXJzdCBDaGF0IEJ1YmJsZVxuICpcbiAqIEBmaWxlICAgICAgICAgIGNoYXQtYnViYmxlLmNvbXBvbmVudFxuICogQGRlc2NyaXB0aW9uICAgQ29udGFpbnMgYWxsIHRoZSBsb2dpYyBmb3IgZ2VuZXJhdGluZyBhIENhcmVGaXJzdCBDaGF0IEJ1YmJsZVxuICogQGF1dGhvciAgICAgICAgSmFjcXVlcyBDb2V0emVlXG4gKiBAc2luY2UgICAgICAgICAyMDI0IC0gMDIgLSAyMlxuICogQHVzYWdlICAgICAgICAgPGNmLWNoYXQtYnViYmxlIHR5cGU9XCJvdXRnb2luZyB8IGluY29taW5nXCIgZGF0ZT1cInN0cmluZ1wiIG1lc3NhZ2U9XCJzdHJpbmdcIj48L2NmLWNoYXQtYnViYmxlPlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIHR5cGUgT25DaGFuZ2VzLCB0eXBlIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbi8vLS0tIFV0aWxzXG5pbXBvcnQgeyB2YWxpZGF0ZVN0cmluZ1ZhbHVlIH0gZnJvbSAnLi4vLi4vdXRpbHMvYXR0cmlidXRlLnV0aWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjZi1jaGF0LWJ1YmJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGF0LWJ1YmJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jaGF0LWJ1YmJsZS5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIENoYXRCdWJibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSB0eXBlOiAnb3V0Z29pbmcnIHwgJ2luY29taW5nJyA9ICdvdXRnb2luZyc7XG4gIEBJbnB1dCgpIGRhdGU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBtZXNzYWdlOiBzdHJpbmcgPSAnJztcblxuICAvLy0tLSBMb2NhbCB2YXJpYWJsZXNcbiAgaW5wdXRUeXBlOiB0eXBlb2YgdGhpcy50eXBlID0gJ2luY29taW5nJztcbiAgaW5wdXREYXRlOiB0eXBlb2YgdGhpcy5kYXRlID0gJyc7XG4gIGlucHV0TWVzc2FnZTogdHlwZW9mIHRoaXMubWVzc2FnZSA9ICcnO1xuXG4gIC8qKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogQG5hbWUgICAgICAgICAgbmdPbkNoYW5nZXNcbiAgICogQGRlc2NyaXB0aW9uICAgVXBkYXRlIHZhcmlvdXMgdmFsdWVzIG9uIGlucHV0IGNoYW5nZXNcbiAgICogQHJldHVybnMgICAgICAge3ZvaWR9XG4gICAqL1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgLy8tLS0gVHlwZVxuICAgIHRoaXMuaW5wdXRUeXBlID0gdmFsaWRhdGVTdHJpbmdWYWx1ZTx0eXBlb2YgdGhpcy50eXBlPihjaGFuZ2VzLCAndHlwZScsIFsnaW5jb21pbmcnLCAnb3V0Z29pbmcnXSwgdGhpcy5pbnB1dFR5cGUpIHx8ICdvdXRnb2luZyc7XG4gICAgLy8tLS0gRGF0ZVxuICAgIHRoaXMuaW5wdXREYXRlID0gY2hhbmdlc1snZGF0ZSddPy5jdXJyZW50VmFsdWUgfHwgJyc7XG4gICAgLy8tLS0gTWVzc2FnZVxuICAgIHRoaXMuaW5wdXRNZXNzYWdlID0gY2hhbmdlc1snbWVzc2FnZSddPy5jdXJyZW50VmFsdWUgfHwgJyc7XG4gIH1cbn1cbiIsIjxkaXYgaWQ9XCJjb250YWluZXJcIiBbbmdDbGFzc109XCJpbnB1dFR5cGVcIj5cbiAgPGRpdiBpZD1cIm1lc3NhZ2VcIj5cbiAgICA8cCBjbGFzcz1cImJvZHktZXh0cmEtc21hbGxcIj57eyBpbnB1dERhdGUgfX08L3A+XG4gICAgPGNmLXNwYWNlciBkZWZhdWx0PVwiNFwiPjwvY2Ytc3BhY2VyPlxuICAgIDxkaXYgaWQ9XCJidWJibGVcIj5cbiAgICAgIDxwIGNsYXNzPVwiYm9keS1leHRyYS1zbWFsbFwiPnt7IGlucHV0TWVzc2FnZSB9fTwvcD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|