keevo-components 1.7.4 → 1.7.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/esm2022/keevo-components.mjs +4 -4
- package/esm2022/lib/api/base-components/base-component-button.mjs +36 -36
- package/esm2022/lib/api/base-components/base-component-chart.mjs +92 -92
- package/esm2022/lib/api/base-components/base-component-crud-form.mjs +282 -282
- package/esm2022/lib/api/base-components/base-component-crud-list.mjs +74 -74
- package/esm2022/lib/api/base-components/base-component-crud.mjs +65 -65
- package/esm2022/lib/api/base-components/base-component-dropdown-external.mjs +31 -31
- package/esm2022/lib/api/base-components/base-component-dropdown.mjs +161 -161
- package/esm2022/lib/api/base-components/base-component-input.mjs +94 -94
- package/esm2022/lib/api/base-components/base-component-multi-select.mjs +130 -130
- package/esm2022/lib/api/base-components/base-component.mjs +49 -49
- package/esm2022/lib/api/components/chart/chart.config.mjs +2 -2
- package/esm2022/lib/api/components/chart/chart.model.mjs +2 -2
- package/esm2022/lib/api/components/chart/orchart.config.mjs +2 -2
- package/esm2022/lib/api/components/chart/orchart.item.mjs +2 -2
- package/esm2022/lib/api/components/dropdown/filtro.combo.mjs +2 -2
- package/esm2022/lib/api/components/error/error.component.mjs +26 -26
- package/esm2022/lib/api/components/error/kverror.module.mjs +35 -35
- package/esm2022/lib/api/components/table/action-item.mjs +2 -2
- package/esm2022/lib/api/components/table/kv-menuitem.mjs +3 -3
- package/esm2022/lib/api/components/table/table.config.column.mjs +2 -2
- package/esm2022/lib/api/components/table/table.config.mjs +2 -2
- package/esm2022/lib/api/components/table/table.paginate.mjs +9 -9
- package/esm2022/lib/api/helpers/component-providers.mjs +16 -16
- package/esm2022/lib/api/helpers/keevo-validators.mjs +64 -64
- package/esm2022/lib/api/helpers/translate-primeng.mjs +23 -23
- package/esm2022/lib/api/models/menu/menu.model.mjs +2 -2
- package/esm2022/lib/api/models/menu/menucompleto.model.mjs +2 -2
- package/esm2022/lib/api/models/menu/sistemamenu.model.mjs +2 -2
- package/esm2022/lib/api/modules/primeng.module.mjs +251 -251
- package/esm2022/lib/api/services/base.api.service.mjs +74 -74
- package/esm2022/lib/api/services/breadcrumbs.service.mjs +57 -57
- package/esm2022/lib/api/services/component.service.mjs +27 -27
- package/esm2022/lib/api/services/form.service.mjs +84 -84
- package/esm2022/lib/api/services/imagens.service.mjs +28 -28
- package/esm2022/lib/api/services/notification.service.mjs +67 -67
- package/esm2022/lib/api/services/object.service.mjs +26 -26
- package/esm2022/lib/avatar/avatar.component.mjs +64 -64
- package/esm2022/lib/avatar/kv-avatar.module.mjs +24 -24
- package/esm2022/lib/buttons/button-personalize/button-personalize.component.mjs +17 -17
- package/esm2022/lib/buttons/button-popup/button-popup.component.mjs +31 -31
- package/esm2022/lib/buttons/button-secondary/button-secondary.component.mjs +17 -17
- package/esm2022/lib/buttons/button-success/button-success.component.mjs +17 -17
- package/esm2022/lib/buttons/kvbutton.module.mjs +39 -39
- package/esm2022/lib/chart/chart.component.mjs +145 -145
- package/esm2022/lib/chart/kvchart.module.mjs +32 -32
- package/esm2022/lib/directives/template.directive.mjs +24 -24
- package/esm2022/lib/inputs/check/check.component.mjs +26 -26
- package/esm2022/lib/inputs/dropdown/dropdown.component.mjs +37 -37
- package/esm2022/lib/inputs/editor/editor.component.mjs +88 -88
- package/esm2022/lib/inputs/input-calendar/input-calendar.component.mjs +89 -89
- package/esm2022/lib/inputs/input-mask/input-mask.component.mjs +29 -29
- package/esm2022/lib/inputs/input-number/input-number.component.mjs +59 -59
- package/esm2022/lib/inputs/input-password/input-password.component.mjs +33 -33
- package/esm2022/lib/inputs/input-text/input-text.component.mjs +21 -21
- package/esm2022/lib/inputs/input-text-checkbox/input-text-checkbox.component.mjs +41 -41
- package/esm2022/lib/inputs/input-textarea/input-textarea.component.mjs +43 -43
- package/esm2022/lib/inputs/input-time/input-time.component.mjs +24 -24
- package/esm2022/lib/inputs/kvinputs.module.mjs +108 -108
- package/esm2022/lib/inputs/multi-select/multi-select.component.mjs +41 -41
- package/esm2022/lib/inputs/radio-group/radio-group.component.mjs +53 -53
- package/esm2022/lib/inputs/switch/switch.component.mjs +32 -32
- package/esm2022/lib/keevo-components.module.mjs +112 -112
- package/esm2022/lib/label/label.component.mjs +14 -14
- package/esm2022/lib/label/label.module.mjs +23 -23
- package/esm2022/lib/loader/kvloader.module.mjs +28 -28
- package/esm2022/lib/loader/loader.component.mjs +17 -17
- package/esm2022/lib/loader/loader.service.mjs +29 -29
- package/esm2022/lib/login/kvlogin.module.mjs +47 -47
- package/esm2022/lib/login/login.component.mjs +52 -52
- package/esm2022/lib/menu/kvmenu.module.mjs +43 -43
- package/esm2022/lib/menu/menu.component.mjs +215 -215
- package/esm2022/lib/orgchart/orgchart.component.mjs +100 -100
- package/esm2022/lib/orgchart/orgchart.module.mjs +24 -24
- package/esm2022/lib/page-form/kv-page-form.module.mjs +38 -38
- package/esm2022/lib/page-form/page-form.component.mjs +147 -147
- package/esm2022/lib/picklist/kvpicklist.module.mjs +32 -32
- package/esm2022/lib/picklist/picklist.component.mjs +48 -48
- package/esm2022/lib/pipes/codigofile.pipe.mjs +19 -19
- package/esm2022/lib/pipes/cpfcnpj.pipe.mjs +25 -25
- package/esm2022/lib/pipes/pipes.module.mjs +34 -34
- package/esm2022/lib/pipes/telefone.pipe.mjs +45 -45
- package/esm2022/lib/table/kvtable.module.mjs +32 -32
- package/esm2022/lib/table/table.component.mjs +513 -513
- package/esm2022/lib/tree-table/kv-treetable.component.mjs +371 -371
- package/esm2022/lib/tree-table/kv-treetable.module.mjs +32 -32
- package/esm2022/lib/tree-view/kvtree-view.module.mjs +28 -28
- package/esm2022/lib/tree-view/tree-view.component.mjs +30 -30
- package/esm2022/lib/workspace/kvworkspace.module.mjs +51 -51
- package/esm2022/lib/workspace/workspace.component.mjs +183 -183
- package/esm2022/public-api.mjs +144 -144
- package/fesm2022/keevo-components.mjs +4569 -4569
- package/fesm2022/keevo-components.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/api/base-components/base-component-button.d.ts +14 -14
- package/lib/api/base-components/base-component-chart.d.ts +40 -40
- package/lib/api/base-components/base-component-crud-form.d.ts +141 -141
- package/lib/api/base-components/base-component-crud-list.d.ts +63 -63
- package/lib/api/base-components/base-component-crud.d.ts +36 -36
- package/lib/api/base-components/base-component-dropdown-external.d.ts +15 -15
- package/lib/api/base-components/base-component-dropdown.d.ts +42 -42
- package/lib/api/base-components/base-component-input.d.ts +31 -31
- package/lib/api/base-components/base-component-multi-select.d.ts +35 -35
- package/lib/api/base-components/base-component.d.ts +21 -21
- package/lib/api/components/chart/chart.config.d.ts +11 -11
- package/lib/api/components/chart/chart.model.d.ts +9 -9
- package/lib/api/components/chart/orchart.config.d.ts +35 -35
- package/lib/api/components/chart/orchart.item.d.ts +26 -26
- package/lib/api/components/dropdown/filtro.combo.d.ts +4 -4
- package/lib/api/components/error/error.component.d.ts +12 -12
- package/lib/api/components/error/kverror.module.d.ts +10 -10
- package/lib/api/components/table/action-item.d.ts +5 -5
- package/lib/api/components/table/kv-menuitem.d.ts +9 -9
- package/lib/api/components/table/table.config.column.d.ts +21 -21
- package/lib/api/components/table/table.config.d.ts +17 -17
- package/lib/api/components/table/table.paginate.d.ts +6 -6
- package/lib/api/helpers/component-providers.d.ts +2 -2
- package/lib/api/helpers/keevo-validators.d.ts +10 -10
- package/lib/api/helpers/translate-primeng.d.ts +4 -4
- package/lib/api/models/menu/menu.model.d.ts +10 -10
- package/lib/api/models/menu/menucompleto.model.d.ts +6 -6
- package/lib/api/models/menu/sistemamenu.model.d.ts +8 -8
- package/lib/api/modules/primeng.module.d.ts +61 -61
- package/lib/api/services/base.api.service.d.ts +25 -25
- package/lib/api/services/breadcrumbs.service.d.ts +16 -16
- package/lib/api/services/component.service.d.ts +11 -11
- package/lib/api/services/form.service.d.ts +27 -27
- package/lib/api/services/imagens.service.d.ts +10 -10
- package/lib/api/services/notification.service.d.ts +25 -25
- package/lib/api/services/object.service.d.ts +8 -8
- package/lib/avatar/avatar.component.d.ts +19 -19
- package/lib/avatar/kv-avatar.module.d.ts +8 -8
- package/lib/buttons/button-personalize/button-personalize.component.d.ts +7 -7
- package/lib/buttons/button-popup/button-popup.component.d.ts +13 -13
- package/lib/buttons/button-secondary/button-secondary.component.d.ts +7 -7
- package/lib/buttons/button-success/button-success.component.d.ts +7 -7
- package/lib/buttons/kvbutton.module.d.ts +11 -11
- package/lib/chart/chart.component.d.ts +56 -56
- package/lib/chart/kvchart.module.d.ts +10 -10
- package/lib/directives/template.directive.d.ts +11 -11
- package/lib/inputs/check/check.component.d.ts +11 -11
- package/lib/inputs/dropdown/dropdown.component.d.ts +14 -14
- package/lib/inputs/editor/editor.component.d.ts +36 -36
- package/lib/inputs/input-calendar/input-calendar.component.d.ts +27 -27
- package/lib/inputs/input-mask/input-mask.component.d.ts +12 -12
- package/lib/inputs/input-number/input-number.component.d.ts +19 -19
- package/lib/inputs/input-password/input-password.component.d.ts +13 -13
- package/lib/inputs/input-text/input-text.component.d.ts +9 -9
- package/lib/inputs/input-text-checkbox/input-text-checkbox.component.d.ts +16 -16
- package/lib/inputs/input-textarea/input-textarea.component.d.ts +16 -16
- package/lib/inputs/input-time/input-time.component.d.ts +10 -10
- package/lib/inputs/kvinputs.module.d.ts +25 -25
- package/lib/inputs/multi-select/multi-select.component.d.ts +14 -14
- package/lib/inputs/radio-group/radio-group.component.d.ts +18 -18
- package/lib/inputs/switch/switch.component.d.ts +13 -13
- package/lib/keevo-components.module.d.ts +20 -20
- package/lib/label/label.component.d.ts +7 -7
- package/lib/label/label.module.d.ts +8 -8
- package/lib/loader/kvloader.module.d.ts +9 -9
- package/lib/loader/loader.component.d.ts +8 -8
- package/lib/loader/loader.service.d.ts +10 -10
- package/lib/login/kvlogin.module.d.ts +13 -13
- package/lib/login/login.component.d.ts +30 -30
- package/lib/menu/kvmenu.module.d.ts +12 -12
- package/lib/menu/menu.component.d.ts +73 -73
- package/lib/orgchart/orgchart.component.d.ts +27 -27
- package/lib/orgchart/orgchart.module.d.ts +9 -9
- package/lib/page-form/kv-page-form.module.d.ts +11 -11
- package/lib/page-form/page-form.component.d.ts +70 -70
- package/lib/picklist/kvpicklist.module.d.ts +10 -10
- package/lib/picklist/picklist.component.d.ts +20 -20
- package/lib/pipes/codigofile.pipe.d.ts +7 -7
- package/lib/pipes/cpfcnpj.pipe.d.ts +7 -7
- package/lib/pipes/pipes.module.d.ts +10 -10
- package/lib/pipes/telefone.pipe.d.ts +7 -7
- package/lib/table/kvtable.module.d.ts +10 -10
- package/lib/table/table.component.d.ts +107 -107
- package/lib/tree-table/kv-treetable.component.d.ts +85 -85
- package/lib/tree-table/kv-treetable.module.d.ts +11 -11
- package/lib/tree-view/kvtree-view.module.d.ts +9 -9
- package/lib/tree-view/tree-view.component.d.ts +14 -14
- package/lib/workspace/kvworkspace.module.d.ts +14 -14
- package/lib/workspace/workspace.component.d.ts +46 -46
- package/package.json +1 -1
- package/public-api.d.ts +140 -140
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "primeng/api";
|
|
4
|
-
export class NotificationService {
|
|
5
|
-
constructor(confirmationService, messageService) {
|
|
6
|
-
this.confirmationService = confirmationService;
|
|
7
|
-
this.messageService = messageService;
|
|
8
|
-
}
|
|
9
|
-
question(config) {
|
|
10
|
-
this.confirmationService.confirm({
|
|
11
|
-
header: config.type === 'alert' ? 'Atenção' : 'Confirmação',
|
|
12
|
-
icon: `pi ${config.type === 'alert' ? 'pi-exclamation-triangle' : 'pi-question-circle'}`,
|
|
13
|
-
acceptLabel: 'Sim',
|
|
14
|
-
acceptButtonStyleClass: 'p-button-success',
|
|
15
|
-
rejectLabel: 'Não',
|
|
16
|
-
rejectButtonStyleClass: 'p-button-secondary',
|
|
17
|
-
...config,
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
dialog(config) {
|
|
21
|
-
let dialogHeader;
|
|
22
|
-
let dialogIcon;
|
|
23
|
-
switch (config.type) {
|
|
24
|
-
case 'alert':
|
|
25
|
-
dialogHeader = 'Atenção';
|
|
26
|
-
dialogIcon = 'pi pi-exclamation-triangle';
|
|
27
|
-
break;
|
|
28
|
-
case 'info':
|
|
29
|
-
dialogHeader = 'Info';
|
|
30
|
-
dialogIcon = 'pi pi-info-circle';
|
|
31
|
-
break;
|
|
32
|
-
case 'error':
|
|
33
|
-
dialogHeader = 'Erro';
|
|
34
|
-
dialogIcon = 'pi pi-times-circle';
|
|
35
|
-
break;
|
|
36
|
-
}
|
|
37
|
-
this.confirmationService.confirm({
|
|
38
|
-
header: dialogHeader,
|
|
39
|
-
icon: dialogIcon,
|
|
40
|
-
acceptLabel: 'Ok',
|
|
41
|
-
acceptButtonStyleClass: 'p-button-success',
|
|
42
|
-
rejectVisible: false,
|
|
43
|
-
message: config.message,
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
toastSuccess(message) {
|
|
47
|
-
this.messageService.add({ severity: 'success', summary: 'Sucesso', detail: message });
|
|
48
|
-
}
|
|
49
|
-
toastInfo(message) {
|
|
50
|
-
this.messageService.add({ severity: 'info', summary: 'Info', detail: message });
|
|
51
|
-
}
|
|
52
|
-
toastWarn(message) {
|
|
53
|
-
this.messageService.add({ severity: 'warn', summary: 'Aviso', detail: message });
|
|
54
|
-
}
|
|
55
|
-
toastError(message) {
|
|
56
|
-
this.messageService.add({ severity: 'error', summary: 'Erro', detail: message });
|
|
57
|
-
}
|
|
58
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationService, deps: [{ token: i1.ConfirmationService }, { token: i1.MessageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
59
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationService, providedIn: 'root' }); }
|
|
60
|
-
}
|
|
61
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationService, decorators: [{
|
|
62
|
-
type: Injectable,
|
|
63
|
-
args: [{
|
|
64
|
-
providedIn: 'root',
|
|
65
|
-
}]
|
|
66
|
-
}], ctorParameters: function () { return [{ type: i1.ConfirmationService }, { type: i1.MessageService }]; } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "primeng/api";
|
|
4
|
+
export class NotificationService {
|
|
5
|
+
constructor(confirmationService, messageService) {
|
|
6
|
+
this.confirmationService = confirmationService;
|
|
7
|
+
this.messageService = messageService;
|
|
8
|
+
}
|
|
9
|
+
question(config) {
|
|
10
|
+
this.confirmationService.confirm({
|
|
11
|
+
header: config.type === 'alert' ? 'Atenção' : 'Confirmação',
|
|
12
|
+
icon: `pi ${config.type === 'alert' ? 'pi-exclamation-triangle' : 'pi-question-circle'}`,
|
|
13
|
+
acceptLabel: 'Sim',
|
|
14
|
+
acceptButtonStyleClass: 'p-button-success',
|
|
15
|
+
rejectLabel: 'Não',
|
|
16
|
+
rejectButtonStyleClass: 'p-button-secondary',
|
|
17
|
+
...config,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
dialog(config) {
|
|
21
|
+
let dialogHeader;
|
|
22
|
+
let dialogIcon;
|
|
23
|
+
switch (config.type) {
|
|
24
|
+
case 'alert':
|
|
25
|
+
dialogHeader = 'Atenção';
|
|
26
|
+
dialogIcon = 'pi pi-exclamation-triangle';
|
|
27
|
+
break;
|
|
28
|
+
case 'info':
|
|
29
|
+
dialogHeader = 'Info';
|
|
30
|
+
dialogIcon = 'pi pi-info-circle';
|
|
31
|
+
break;
|
|
32
|
+
case 'error':
|
|
33
|
+
dialogHeader = 'Erro';
|
|
34
|
+
dialogIcon = 'pi pi-times-circle';
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
this.confirmationService.confirm({
|
|
38
|
+
header: dialogHeader,
|
|
39
|
+
icon: dialogIcon,
|
|
40
|
+
acceptLabel: 'Ok',
|
|
41
|
+
acceptButtonStyleClass: 'p-button-success',
|
|
42
|
+
rejectVisible: false,
|
|
43
|
+
message: config.message,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
toastSuccess(message) {
|
|
47
|
+
this.messageService.add({ severity: 'success', summary: 'Sucesso', detail: message });
|
|
48
|
+
}
|
|
49
|
+
toastInfo(message) {
|
|
50
|
+
this.messageService.add({ severity: 'info', summary: 'Info', detail: message });
|
|
51
|
+
}
|
|
52
|
+
toastWarn(message) {
|
|
53
|
+
this.messageService.add({ severity: 'warn', summary: 'Aviso', detail: message });
|
|
54
|
+
}
|
|
55
|
+
toastError(message) {
|
|
56
|
+
this.messageService.add({ severity: 'error', summary: 'Erro', detail: message });
|
|
57
|
+
}
|
|
58
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationService, deps: [{ token: i1.ConfirmationService }, { token: i1.MessageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
59
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationService, providedIn: 'root' }); }
|
|
60
|
+
}
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NotificationService, decorators: [{
|
|
62
|
+
type: Injectable,
|
|
63
|
+
args: [{
|
|
64
|
+
providedIn: 'root',
|
|
65
|
+
}]
|
|
66
|
+
}], ctorParameters: function () { return [{ type: i1.ConfirmationService }, { type: i1.MessageService }]; } });
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvYXBpL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQW1CM0MsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixZQUNtQixtQkFBd0MsRUFDeEMsY0FBOEI7UUFEOUIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFDN0MsQ0FBQztJQUVMLFFBQVEsQ0FBQyxNQUFzQjtRQUM3QixJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDO1lBQy9CLE1BQU0sRUFBRSxNQUFNLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxhQUFhO1lBQzNELElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLEVBQUU7WUFDeEYsV0FBVyxFQUFFLEtBQUs7WUFDbEIsc0JBQXNCLEVBQUUsa0JBQWtCO1lBQzFDLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLHNCQUFzQixFQUFFLG9CQUFvQjtZQUM1QyxHQUFHLE1BQU07U0FDVixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQW9CO1FBQ3pCLElBQUksWUFBb0IsQ0FBQztRQUN6QixJQUFJLFVBQWtCLENBQUM7UUFFdkIsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFO1lBQ25CLEtBQUssT0FBTztnQkFDVixZQUFZLEdBQUcsU0FBUyxDQUFDO2dCQUN6QixVQUFVLEdBQUcsNEJBQTRCLENBQUM7Z0JBQzFDLE1BQU07WUFDUixLQUFLLE1BQU07Z0JBQ1QsWUFBWSxHQUFHLE1BQU0sQ0FBQztnQkFDdEIsVUFBVSxHQUFHLG1CQUFtQixDQUFDO2dCQUNqQyxNQUFNO1lBQ1IsS0FBSyxPQUFPO2dCQUNWLFlBQVksR0FBRyxNQUFNLENBQUM7Z0JBQ3RCLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQztnQkFDbEMsTUFBTTtTQUNUO1FBRUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQztZQUMvQixNQUFNLEVBQUUsWUFBWTtZQUNwQixJQUFJLEVBQUUsVUFBVTtZQUNoQixXQUFXLEVBQUUsSUFBSTtZQUNqQixzQkFBc0IsRUFBRSxrQkFBa0I7WUFDMUMsYUFBYSxFQUFFLEtBQUs7WUFDcEIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO1NBQ3hCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZLENBQUMsT0FBZTtRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQWU7UUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUFlO1FBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZTtRQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNuRixDQUFDOytHQTdEVSxtQkFBbUI7bUhBQW5CLG1CQUFtQixjQUZsQixNQUFNOzs0RkFFUCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcInByaW1lbmcvYXBpXCI7XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBRdWVzdGlvbkNvbmZpZyB7XHJcbiAgdHlwZT86ICdxdWVzdGlvbicgfCAnYWxlcnQnO1xyXG4gIG1lc3NhZ2U6IHN0cmluZztcclxuICBhY2NlcHQ/OiBGdW5jdGlvbjtcclxuICByZWplY3Q/OiBGdW5jdGlvbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEaWFsb2dDb25maWcge1xyXG4gIHR5cGU6ICdpbmZvJyB8ICdhbGVydCcgfCAnZXJyb3InO1xyXG4gIG1lc3NhZ2U6IHN0cmluZztcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvblNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgKSB7IH1cclxuXHJcbiAgcXVlc3Rpb24oY29uZmlnOiBRdWVzdGlvbkNvbmZpZykge1xyXG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xyXG4gICAgICBoZWFkZXI6IGNvbmZpZy50eXBlID09PSAnYWxlcnQnID8gJ0F0ZW7Dp8OjbycgOiAnQ29uZmlybWHDp8OjbycsXHJcbiAgICAgIGljb246IGBwaSAke2NvbmZpZy50eXBlID09PSAnYWxlcnQnID8gJ3BpLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlJyA6ICdwaS1xdWVzdGlvbi1jaXJjbGUnfWAsXHJcbiAgICAgIGFjY2VwdExhYmVsOiAnU2ltJyxcclxuICAgICAgYWNjZXB0QnV0dG9uU3R5bGVDbGFzczogJ3AtYnV0dG9uLXN1Y2Nlc3MnLFxyXG4gICAgICByZWplY3RMYWJlbDogJ07Do28nLFxyXG4gICAgICByZWplY3RCdXR0b25TdHlsZUNsYXNzOiAncC1idXR0b24tc2Vjb25kYXJ5JyxcclxuICAgICAgLi4uY29uZmlnLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkaWFsb2coY29uZmlnOiBEaWFsb2dDb25maWcpIHtcclxuICAgIGxldCBkaWFsb2dIZWFkZXI6IHN0cmluZztcclxuICAgIGxldCBkaWFsb2dJY29uOiBzdHJpbmc7XHJcblxyXG4gICAgc3dpdGNoIChjb25maWcudHlwZSkge1xyXG4gICAgICBjYXNlICdhbGVydCc6XHJcbiAgICAgICAgZGlhbG9nSGVhZGVyID0gJ0F0ZW7Dp8Ojbyc7XHJcbiAgICAgICAgZGlhbG9nSWNvbiA9ICdwaSBwaS1leGNsYW1hdGlvbi10cmlhbmdsZSc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2luZm8nOlxyXG4gICAgICAgIGRpYWxvZ0hlYWRlciA9ICdJbmZvJztcclxuICAgICAgICBkaWFsb2dJY29uID0gJ3BpIHBpLWluZm8tY2lyY2xlJztcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnZXJyb3InOlxyXG4gICAgICAgIGRpYWxvZ0hlYWRlciA9ICdFcnJvJztcclxuICAgICAgICBkaWFsb2dJY29uID0gJ3BpIHBpLXRpbWVzLWNpcmNsZSc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xyXG4gICAgICBoZWFkZXI6IGRpYWxvZ0hlYWRlcixcclxuICAgICAgaWNvbjogZGlhbG9nSWNvbixcclxuICAgICAgYWNjZXB0TGFiZWw6ICdPaycsXHJcbiAgICAgIGFjY2VwdEJ1dHRvblN0eWxlQ2xhc3M6ICdwLWJ1dHRvbi1zdWNjZXNzJyxcclxuICAgICAgcmVqZWN0VmlzaWJsZTogZmFsc2UsXHJcbiAgICAgIG1lc3NhZ2U6IGNvbmZpZy5tZXNzYWdlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB0b2FzdFN1Y2Nlc3MobWVzc2FnZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7IHNldmVyaXR5OiAnc3VjY2VzcycsIHN1bW1hcnk6ICdTdWNlc3NvJywgZGV0YWlsOiBtZXNzYWdlIH0pO1xyXG4gIH1cclxuXHJcbiAgdG9hc3RJbmZvKG1lc3NhZ2U6IHN0cmluZykge1xyXG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoeyBzZXZlcml0eTogJ2luZm8nLCBzdW1tYXJ5OiAnSW5mbycsIGRldGFpbDogbWVzc2FnZSB9KTtcclxuICB9XHJcblxyXG4gIHRvYXN0V2FybihtZXNzYWdlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHsgc2V2ZXJpdHk6ICd3YXJuJywgc3VtbWFyeTogJ0F2aXNvJywgZGV0YWlsOiBtZXNzYWdlIH0pO1xyXG4gIH1cclxuXHJcbiAgdG9hc3RFcnJvcihtZXNzYWdlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHsgc2V2ZXJpdHk6ICdlcnJvcicsIHN1bW1hcnk6ICdFcnJvJywgZGV0YWlsOiBtZXNzYWdlIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class ObjectService {
|
|
4
|
-
static filterObject(array, propertyName, value) {
|
|
5
|
-
return array.filter((e) => {
|
|
6
|
-
return e[propertyName] === value;
|
|
7
|
-
});
|
|
8
|
-
}
|
|
9
|
-
static findObject(array, propertyName, value) {
|
|
10
|
-
return array.find((e) => {
|
|
11
|
-
return e[propertyName] === value;
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
static getProperty(obj, propertyName) {
|
|
15
|
-
return obj[propertyName];
|
|
16
|
-
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ObjectService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ObjectService, providedIn: 'root' }); }
|
|
19
|
-
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ObjectService, decorators: [{
|
|
21
|
-
type: Injectable,
|
|
22
|
-
args: [{
|
|
23
|
-
providedIn: 'root'
|
|
24
|
-
}]
|
|
25
|
-
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class ObjectService {
|
|
4
|
+
static filterObject(array, propertyName, value) {
|
|
5
|
+
return array.filter((e) => {
|
|
6
|
+
return e[propertyName] === value;
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
static findObject(array, propertyName, value) {
|
|
10
|
+
return array.find((e) => {
|
|
11
|
+
return e[propertyName] === value;
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
static getProperty(obj, propertyName) {
|
|
15
|
+
return obj[propertyName];
|
|
16
|
+
}
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ObjectService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ObjectService, providedIn: 'root' }); }
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ObjectService, decorators: [{
|
|
21
|
+
type: Injectable,
|
|
22
|
+
args: [{
|
|
23
|
+
providedIn: 'root'
|
|
24
|
+
}]
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvYXBpL3NlcnZpY2VzL29iamVjdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBVSxFQUFFLFlBQW9CLEVBQUUsS0FBVTtRQUM5RCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRTtZQUM3QixPQUFPLENBQUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxLQUFLLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFVLEVBQUUsWUFBb0IsRUFBRSxLQUFVO1FBQzVELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFO1lBQzNCLE9BQU8sQ0FBQyxDQUFDLFlBQVksQ0FBQyxLQUFLLEtBQUssQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxNQUFNLENBQUMsV0FBVyxDQUFJLEdBQU0sRUFBRSxZQUFvQjtRQUNoRCxPQUFPLEdBQUcsQ0FBRSxZQUFpQyxDQUFDLENBQUM7SUFDakQsQ0FBQzsrR0FiVSxhQUFhO21IQUFiLGFBQWEsY0FGWixNQUFNOzs0RkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE9iamVjdFNlcnZpY2Uge1xyXG4gIHN0YXRpYyBmaWx0ZXJPYmplY3QoYXJyYXk6IGFueSwgcHJvcGVydHlOYW1lOiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcclxuICAgIHJldHVybiBhcnJheS5maWx0ZXIoKGU6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gZVtwcm9wZXJ0eU5hbWVdID09PSB2YWx1ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBzdGF0aWMgZmluZE9iamVjdChhcnJheTogYW55LCBwcm9wZXJ0eU5hbWU6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgcmV0dXJuIGFycmF5LmZpbmQoKGU6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gZVtwcm9wZXJ0eU5hbWVdID09PSB2YWx1ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBzdGF0aWMgZ2V0UHJvcGVydHk8VD4ob2JqOiBULCBwcm9wZXJ0eU5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIG9ialsocHJvcGVydHlOYW1lIGFzIGtleW9mIHR5cGVvZiBvYmopXTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../api/services/imagens.service";
|
|
4
|
-
import * as i2 from "@angular/common";
|
|
5
|
-
export class AvatarComponent {
|
|
6
|
-
constructor(imageService) {
|
|
7
|
-
this.imageService = imageService;
|
|
8
|
-
this.borderColor = '#5289B4';
|
|
9
|
-
this.width = 135;
|
|
10
|
-
this.height = 135;
|
|
11
|
-
this.imageUrlChange = new EventEmitter();
|
|
12
|
-
this.btnAlterarFoto = false;
|
|
13
|
-
}
|
|
14
|
-
getImageSrc() {
|
|
15
|
-
if (this.imageUrl && this.imageUrl.startsWith('data:image') || this.imageUrl.startsWith('http') || this.imageUrl.startsWith('https')) {
|
|
16
|
-
return this.imageUrl;
|
|
17
|
-
}
|
|
18
|
-
else if (this.imageUrl) {
|
|
19
|
-
return 'data:image/jpg;base64,' + this.imageUrl;
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
return this.imageService.userDefaultImage();
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
openFile() {
|
|
26
|
-
const inputElement = document.getElementById('fotoEscolhida');
|
|
27
|
-
if (inputElement) {
|
|
28
|
-
inputElement.click();
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
selectFotoSelecionada(event) {
|
|
32
|
-
const file = event.target.files[0];
|
|
33
|
-
if (file) {
|
|
34
|
-
const reader = new FileReader();
|
|
35
|
-
reader.readAsDataURL(file);
|
|
36
|
-
reader.onload = () => {
|
|
37
|
-
this.imageUrl = reader.result;
|
|
38
|
-
this.imageUrlChange.emit(this.imageUrl);
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
handleImageError(event) {
|
|
43
|
-
event.target.src = this.imageService.userDefaultImage();
|
|
44
|
-
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AvatarComponent, deps: [{ token: i1.ImagensService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AvatarComponent, selector: "kv-avatar", inputs: { imageUrl: "imageUrl", borderColor: "borderColor", width: "width", height: "height", btnAlterarFoto: "btnAlterarFoto" }, outputs: { imageUrlChange: "imageUrlChange" }, ngImport: i0, template: "<div class=\"image-container\">\n <img [src]=\"getImageSrc() || imageService.userDefaultImage()\" alt=\"Foto\" class=\"container-foto\" [style.border-color]=\"borderColor\" [style.width.px]=\"width\" [style.height.px]=\"height\" (error)=\"handleImageError($event)\" >\n <div class=\"flex flex-column\">\n <input *ngIf=\"btnAlterarFoto\" id=\"fotoEscolhida\" type=\"file\" accept=\"image/*\" style=\"display:none\" (change)=\"selectFotoSelecionada($event)\">\n <button *ngIf=\"btnAlterarFoto\" class=\"botao-alterar-foto\" (click)=\"openFile()\">Alterar Foto</button>\n </div>\n</div>\n", styles: ["img{border-style:solid;border-width:4px;border-radius:50%}.botao-alterar-foto{border-style:none;width:max-content;background-color:#f3f3f3;color:#000;font-weight:700;cursor:pointer;border-radius:6px;padding:6px 12px;box-shadow:0 3px 5px #0003,0 3px 5px #00000030;margin-top:10px;margin-left:1.1rem}.image-container{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
47
|
-
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AvatarComponent, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{ selector: 'kv-avatar', template: "<div class=\"image-container\">\n <img [src]=\"getImageSrc() || imageService.userDefaultImage()\" alt=\"Foto\" class=\"container-foto\" [style.border-color]=\"borderColor\" [style.width.px]=\"width\" [style.height.px]=\"height\" (error)=\"handleImageError($event)\" >\n <div class=\"flex flex-column\">\n <input *ngIf=\"btnAlterarFoto\" id=\"fotoEscolhida\" type=\"file\" accept=\"image/*\" style=\"display:none\" (change)=\"selectFotoSelecionada($event)\">\n <button *ngIf=\"btnAlterarFoto\" class=\"botao-alterar-foto\" (click)=\"openFile()\">Alterar Foto</button>\n </div>\n</div>\n", styles: ["img{border-style:solid;border-width:4px;border-radius:50%}.botao-alterar-foto{border-style:none;width:max-content;background-color:#f3f3f3;color:#000;font-weight:700;cursor:pointer;border-radius:6px;padding:6px 12px;box-shadow:0 3px 5px #0003,0 3px 5px #00000030;margin-top:10px;margin-left:1.1rem}.image-container{display:inline-block}\n"] }]
|
|
51
|
-
}], ctorParameters: function () { return [{ type: i1.ImagensService }]; }, propDecorators: { imageUrl: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}], borderColor: [{
|
|
54
|
-
type: Input
|
|
55
|
-
}], width: [{
|
|
56
|
-
type: Input
|
|
57
|
-
}], height: [{
|
|
58
|
-
type: Input
|
|
59
|
-
}], imageUrlChange: [{
|
|
60
|
-
type: Output
|
|
61
|
-
}], btnAlterarFoto: [{
|
|
62
|
-
type: Input
|
|
63
|
-
}] } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../api/services/imagens.service";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
export class AvatarComponent {
|
|
6
|
+
constructor(imageService) {
|
|
7
|
+
this.imageService = imageService;
|
|
8
|
+
this.borderColor = '#5289B4';
|
|
9
|
+
this.width = 135;
|
|
10
|
+
this.height = 135;
|
|
11
|
+
this.imageUrlChange = new EventEmitter();
|
|
12
|
+
this.btnAlterarFoto = false;
|
|
13
|
+
}
|
|
14
|
+
getImageSrc() {
|
|
15
|
+
if (this.imageUrl && this.imageUrl.startsWith('data:image') || this.imageUrl.startsWith('http') || this.imageUrl.startsWith('https')) {
|
|
16
|
+
return this.imageUrl;
|
|
17
|
+
}
|
|
18
|
+
else if (this.imageUrl) {
|
|
19
|
+
return 'data:image/jpg;base64,' + this.imageUrl;
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
return this.imageService.userDefaultImage();
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
openFile() {
|
|
26
|
+
const inputElement = document.getElementById('fotoEscolhida');
|
|
27
|
+
if (inputElement) {
|
|
28
|
+
inputElement.click();
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
selectFotoSelecionada(event) {
|
|
32
|
+
const file = event.target.files[0];
|
|
33
|
+
if (file) {
|
|
34
|
+
const reader = new FileReader();
|
|
35
|
+
reader.readAsDataURL(file);
|
|
36
|
+
reader.onload = () => {
|
|
37
|
+
this.imageUrl = reader.result;
|
|
38
|
+
this.imageUrlChange.emit(this.imageUrl);
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
handleImageError(event) {
|
|
43
|
+
event.target.src = this.imageService.userDefaultImage();
|
|
44
|
+
}
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AvatarComponent, deps: [{ token: i1.ImagensService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AvatarComponent, selector: "kv-avatar", inputs: { imageUrl: "imageUrl", borderColor: "borderColor", width: "width", height: "height", btnAlterarFoto: "btnAlterarFoto" }, outputs: { imageUrlChange: "imageUrlChange" }, ngImport: i0, template: "<div class=\"image-container\">\r\n <img [src]=\"getImageSrc() || imageService.userDefaultImage()\" alt=\"Foto\" class=\"container-foto\" [style.border-color]=\"borderColor\" [style.width.px]=\"width\" [style.height.px]=\"height\" (error)=\"handleImageError($event)\" >\r\n <div class=\"flex flex-column\">\r\n <input *ngIf=\"btnAlterarFoto\" id=\"fotoEscolhida\" type=\"file\" accept=\"image/*\" style=\"display:none\" (change)=\"selectFotoSelecionada($event)\">\r\n <button *ngIf=\"btnAlterarFoto\" class=\"botao-alterar-foto\" (click)=\"openFile()\">Alterar Foto</button>\r\n </div>\r\n</div>\r\n", styles: ["img{border-style:solid;border-width:4px;border-radius:50%}.botao-alterar-foto{border-style:none;width:max-content;background-color:#f3f3f3;color:#000;font-weight:700;cursor:pointer;border-radius:6px;padding:6px 12px;box-shadow:0 3px 5px #0003,0 3px 5px #00000030;margin-top:10px;margin-left:1.1rem}.image-container{display:inline-block}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
47
|
+
}
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AvatarComponent, decorators: [{
|
|
49
|
+
type: Component,
|
|
50
|
+
args: [{ selector: 'kv-avatar', template: "<div class=\"image-container\">\r\n <img [src]=\"getImageSrc() || imageService.userDefaultImage()\" alt=\"Foto\" class=\"container-foto\" [style.border-color]=\"borderColor\" [style.width.px]=\"width\" [style.height.px]=\"height\" (error)=\"handleImageError($event)\" >\r\n <div class=\"flex flex-column\">\r\n <input *ngIf=\"btnAlterarFoto\" id=\"fotoEscolhida\" type=\"file\" accept=\"image/*\" style=\"display:none\" (change)=\"selectFotoSelecionada($event)\">\r\n <button *ngIf=\"btnAlterarFoto\" class=\"botao-alterar-foto\" (click)=\"openFile()\">Alterar Foto</button>\r\n </div>\r\n</div>\r\n", styles: ["img{border-style:solid;border-width:4px;border-radius:50%}.botao-alterar-foto{border-style:none;width:max-content;background-color:#f3f3f3;color:#000;font-weight:700;cursor:pointer;border-radius:6px;padding:6px 12px;box-shadow:0 3px 5px #0003,0 3px 5px #00000030;margin-top:10px;margin-left:1.1rem}.image-container{display:inline-block}\n"] }]
|
|
51
|
+
}], ctorParameters: function () { return [{ type: i1.ImagensService }]; }, propDecorators: { imageUrl: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], borderColor: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], width: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], height: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], imageUrlChange: [{
|
|
60
|
+
type: Output
|
|
61
|
+
}], btnAlterarFoto: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}] } });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFRdkUsTUFBTSxPQUFPLGVBQWU7SUFTMUIsWUFBbUIsWUFBNEI7UUFBNUIsaUJBQVksR0FBWixZQUFZLENBQWdCO1FBUHRDLGdCQUFXLEdBQVcsU0FBUyxDQUFDO1FBQ2hDLFVBQUssR0FBVyxHQUFHLENBQUM7UUFDcEIsV0FBTSxHQUFXLEdBQUcsQ0FBQztRQUNwQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFN0MsbUJBQWMsR0FBWSxLQUFLLENBQUM7SUFFVSxDQUFDO0lBRXBELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDcEksT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO1NBQ3RCO2FBQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3hCLE9BQU8sd0JBQXdCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztTQUNqRDthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUM7U0FDN0M7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sWUFBWSxHQUE0QixRQUFRLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBcUIsQ0FBQztRQUMzRyxJQUFJLFlBQVksRUFBRTtZQUNoQixZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDdEI7SUFDTCxDQUFDO0lBRUQscUJBQXFCLENBQUMsS0FBVTtRQUM5QixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuQyxJQUFJLElBQUksRUFBRTtZQUNSLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7WUFDaEMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMzQixNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBZ0IsQ0FBQztnQkFDeEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzFDLENBQUMsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUdDLGdCQUFnQixDQUFDLEtBQVU7UUFDekIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFELENBQUM7K0dBM0NVLGVBQWU7bUdBQWYsZUFBZSxrT0NSNUIsa21CQU9BOzs0RkRDYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFdBQVc7cUdBS1osUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0ksY0FBYztzQkFBdkIsTUFBTTtnQkFFRSxjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSW1hZ2Vuc1NlcnZpY2UgfSBmcm9tICcuLi9hcGkvc2VydmljZXMvaW1hZ2Vucy5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtYXZhdGFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYXZhdGFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hdmF0YXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXZhdGFyQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBpbWFnZVVybCE6IHN0cmluZztcclxuICBASW5wdXQoKSBib3JkZXJDb2xvcjogc3RyaW5nID0gJyM1Mjg5QjQnO1xyXG4gIEBJbnB1dCgpIHdpZHRoOiBudW1iZXIgPSAxMzU7XHJcbiAgQElucHV0KCkgaGVpZ2h0OiBudW1iZXIgPSAxMzU7XHJcbiAgQE91dHB1dCgpIGltYWdlVXJsQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIEBJbnB1dCgpIGJ0bkFsdGVyYXJGb3RvOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpbWFnZVNlcnZpY2U6IEltYWdlbnNTZXJ2aWNlKSB7IH1cclxuXHJcbiAgZ2V0SW1hZ2VTcmMoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLmltYWdlVXJsICYmIHRoaXMuaW1hZ2VVcmwuc3RhcnRzV2l0aCgnZGF0YTppbWFnZScpIHx8IHRoaXMuaW1hZ2VVcmwuc3RhcnRzV2l0aCgnaHR0cCcpIHx8IHRoaXMuaW1hZ2VVcmwuc3RhcnRzV2l0aCgnaHR0cHMnKSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pbWFnZVVybDtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pbWFnZVVybCkge1xyXG4gICAgICByZXR1cm4gJ2RhdGE6aW1hZ2UvanBnO2Jhc2U2NCwnICsgdGhpcy5pbWFnZVVybDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmltYWdlU2VydmljZS51c2VyRGVmYXVsdEltYWdlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIG9wZW5GaWxlKCkge1xyXG4gICAgY29uc3QgaW5wdXRFbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmb3RvRXNjb2xoaWRhJykgYXMgSFRNTElucHV0RWxlbWVudDtcclxuICAgIGlmIChpbnB1dEVsZW1lbnQpIHtcclxuICAgICAgaW5wdXRFbGVtZW50LmNsaWNrKCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbnNlbGVjdEZvdG9TZWxlY2lvbmFkYShldmVudDogYW55KSB7XHJcbiAgY29uc3QgZmlsZSA9IGV2ZW50LnRhcmdldC5maWxlc1swXTtcclxuICBpZiAoZmlsZSkge1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xyXG4gICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgdGhpcy5pbWFnZVVybCA9IHJlYWRlci5yZXN1bHQgYXMgc3RyaW5nO1xyXG4gICAgICB0aGlzLmltYWdlVXJsQ2hhbmdlLmVtaXQodGhpcy5pbWFnZVVybCk7XHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbiAgaGFuZGxlSW1hZ2VFcnJvcihldmVudDogYW55KSB7XHJcbiAgICBldmVudC50YXJnZXQuc3JjID0gdGhpcy5pbWFnZVNlcnZpY2UudXNlckRlZmF1bHRJbWFnZSgpO1xyXG4gIH1cclxuICBcclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiaW1hZ2UtY29udGFpbmVyXCI+XHJcbiAgPGltZyBbc3JjXT1cImdldEltYWdlU3JjKCkgfHwgaW1hZ2VTZXJ2aWNlLnVzZXJEZWZhdWx0SW1hZ2UoKVwiIGFsdD1cIkZvdG9cIiBjbGFzcz1cImNvbnRhaW5lci1mb3RvXCIgW3N0eWxlLmJvcmRlci1jb2xvcl09XCJib3JkZXJDb2xvclwiIFtzdHlsZS53aWR0aC5weF09XCJ3aWR0aFwiIFtzdHlsZS5oZWlnaHQucHhdPVwiaGVpZ2h0XCIgKGVycm9yKT1cImhhbmRsZUltYWdlRXJyb3IoJGV2ZW50KVwiID5cclxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gICAgPGlucHV0ICpuZ0lmPVwiYnRuQWx0ZXJhckZvdG9cIiBpZD1cImZvdG9Fc2NvbGhpZGFcIiB0eXBlPVwiZmlsZVwiIGFjY2VwdD1cImltYWdlLypcIiBzdHlsZT1cImRpc3BsYXk6bm9uZVwiIChjaGFuZ2UpPVwic2VsZWN0Rm90b1NlbGVjaW9uYWRhKCRldmVudClcIj5cclxuICAgIDxidXR0b24gKm5nSWY9XCJidG5BbHRlcmFyRm90b1wiIGNsYXNzPVwiYm90YW8tYWx0ZXJhci1mb3RvXCIgKGNsaWNrKT1cIm9wZW5GaWxlKClcIj5BbHRlcmFyIEZvdG88L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { NgModule } from "@angular/core";
|
|
2
|
-
import { AvatarComponent } from "./avatar.component";
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class KvAvatarModule {
|
|
6
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: KvAvatarModule, declarations: [AvatarComponent], imports: [CommonModule], exports: [AvatarComponent] }); }
|
|
8
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvAvatarModule, imports: [CommonModule] }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvAvatarModule, decorators: [{
|
|
11
|
-
type: NgModule,
|
|
12
|
-
args: [{
|
|
13
|
-
declarations: [
|
|
14
|
-
AvatarComponent
|
|
15
|
-
],
|
|
16
|
-
imports: [
|
|
17
|
-
CommonModule
|
|
18
|
-
],
|
|
19
|
-
exports: [
|
|
20
|
-
AvatarComponent
|
|
21
|
-
]
|
|
22
|
-
}]
|
|
23
|
-
}] });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { AvatarComponent } from "./avatar.component";
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class KvAvatarModule {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: KvAvatarModule, declarations: [AvatarComponent], imports: [CommonModule], exports: [AvatarComponent] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvAvatarModule, imports: [CommonModule] }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: KvAvatarModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
declarations: [
|
|
14
|
+
AvatarComponent
|
|
15
|
+
],
|
|
16
|
+
imports: [
|
|
17
|
+
CommonModule
|
|
18
|
+
],
|
|
19
|
+
exports: [
|
|
20
|
+
AvatarComponent
|
|
21
|
+
]
|
|
22
|
+
}]
|
|
23
|
+
}] });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3YtYXZhdGFyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9hdmF0YXIva3YtYXZhdGFyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBYy9DLE1BQU0sT0FBTyxjQUFjOytHQUFkLGNBQWM7Z0hBQWQsY0FBYyxpQkFUdkIsZUFBZSxhQUdmLFlBQVksYUFHWixlQUFlO2dIQUdOLGNBQWMsWUFOdkIsWUFBWTs7NEZBTUgsY0FBYztrQkFYMUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGVBQWU7cUJBQ2hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBdmF0YXJDb21wb25lbnQgfSBmcm9tIFwiLi9hdmF0YXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIEF2YXRhckNvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlIFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgQXZhdGFyQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgS3ZBdmF0YXJNb2R1bGUgeyB9XHJcbiJdfQ==
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { BaseComponentButton } from '../../api/base-components/base-component-button';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "primeng/button";
|
|
5
|
-
import * as i2 from "primeng/ripple";
|
|
6
|
-
export class ButtonPersonalizeComponent extends BaseComponentButton {
|
|
7
|
-
constructor() {
|
|
8
|
-
super();
|
|
9
|
-
}
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonPersonalizeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ButtonPersonalizeComponent, selector: "kv-button-personalize", usesInheritance: true, ngImport: i0, template: "<button\n pButton\n pRipple\n [class]=\"color\"\n [icon]=\"icon\"\n [label]=\"label\"\n [loading]=\"loading\"\n (click)=\"click($event)\"\n [disabled]=\"disabled\"\n class=\"btn-personalize\"\n></button>\n", styles: [".btn-personalize{height:35px}\n"], dependencies: [{ kind: "directive", type: i1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i2.Ripple, selector: "[pRipple]" }] }); }
|
|
12
|
-
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonPersonalizeComponent, decorators: [{
|
|
14
|
-
type: Component,
|
|
15
|
-
args: [{ selector: 'kv-button-personalize', template: "<button\n pButton\n pRipple\n [class]=\"color\"\n [icon]=\"icon\"\n [label]=\"label\"\n [loading]=\"loading\"\n (click)=\"click($event)\"\n [disabled]=\"disabled\"\n class=\"btn-personalize\"\n></button>\n", styles: [".btn-personalize{height:35px}\n"] }]
|
|
16
|
-
}], ctorParameters: function () { return []; } });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { BaseComponentButton } from '../../api/base-components/base-component-button';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "primeng/button";
|
|
5
|
+
import * as i2 from "primeng/ripple";
|
|
6
|
+
export class ButtonPersonalizeComponent extends BaseComponentButton {
|
|
7
|
+
constructor() {
|
|
8
|
+
super();
|
|
9
|
+
}
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonPersonalizeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ButtonPersonalizeComponent, selector: "kv-button-personalize", usesInheritance: true, ngImport: i0, template: "<button\r\n pButton\r\n pRipple\r\n [class]=\"color\"\r\n [icon]=\"icon\"\r\n [label]=\"label\"\r\n [loading]=\"loading\"\r\n (click)=\"click($event)\"\r\n [disabled]=\"disabled\"\r\n class=\"btn-personalize\"\r\n></button>\r\n", styles: [".btn-personalize{height:35px}\n"], dependencies: [{ kind: "directive", type: i1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i2.Ripple, selector: "[pRipple]" }] }); }
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonPersonalizeComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'kv-button-personalize', template: "<button\r\n pButton\r\n pRipple\r\n [class]=\"color\"\r\n [icon]=\"icon\"\r\n [label]=\"label\"\r\n [loading]=\"loading\"\r\n (click)=\"click($event)\"\r\n [disabled]=\"disabled\"\r\n class=\"btn-personalize\"\r\n></button>\r\n", styles: [".btn-personalize{height:35px}\n"] }]
|
|
16
|
+
}], ctorParameters: function () { return []; } });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXBlcnNvbmFsaXplLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9idXR0b25zL2J1dHRvbi1wZXJzb25hbGl6ZS9idXR0b24tcGVyc29uYWxpemUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2J1dHRvbnMvYnV0dG9uLXBlcnNvbmFsaXplL2J1dHRvbi1wZXJzb25hbGl6ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDOzs7O0FBT3RGLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxtQkFBbUI7SUFDakU7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7K0dBSFUsMEJBQTBCO21HQUExQiwwQkFBMEIsb0ZDUnZDLDhPQVdBOzs0RkRIYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnRCdXR0b24gfSBmcm9tICcuLi8uLi9hcGkvYmFzZS1jb21wb25lbnRzL2Jhc2UtY29tcG9uZW50LWJ1dHRvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LWJ1dHRvbi1wZXJzb25hbGl6ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi1wZXJzb25hbGl6ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLXBlcnNvbmFsaXplLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1dHRvblBlcnNvbmFsaXplQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudEJ1dHRvbiB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxufVxyXG4iLCI8YnV0dG9uXHJcbiAgcEJ1dHRvblxyXG4gIHBSaXBwbGVcclxuICBbY2xhc3NdPVwiY29sb3JcIlxyXG4gIFtpY29uXT1cImljb25cIlxyXG4gIFtsYWJlbF09XCJsYWJlbFwiXHJcbiAgW2xvYWRpbmddPVwibG9hZGluZ1wiXHJcbiAgKGNsaWNrKT1cImNsaWNrKCRldmVudClcIlxyXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgY2xhc3M9XCJidG4tcGVyc29uYWxpemVcIlxyXG4+PC9idXR0b24+XHJcbiJdfQ==
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { BaseComponentButton } from '../../api/base-components/base-component-button';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "primeng/button";
|
|
5
|
-
import * as i2 from "primeng/menu";
|
|
6
|
-
import * as i3 from "primeng/ripple";
|
|
7
|
-
export class ButtonPopupComponent extends BaseComponentButton {
|
|
8
|
-
constructor() {
|
|
9
|
-
super();
|
|
10
|
-
this.items = [];
|
|
11
|
-
this.icon = 'pi pi-chevron-down';
|
|
12
|
-
}
|
|
13
|
-
handleShow() {
|
|
14
|
-
this.rotate();
|
|
15
|
-
}
|
|
16
|
-
handleHide() {
|
|
17
|
-
this.rotate();
|
|
18
|
-
}
|
|
19
|
-
rotate() {
|
|
20
|
-
this.icon = this.icon === 'pi pi-chevron-down' ? 'pi pi-chevron-up' : 'pi pi-chevron-down';
|
|
21
|
-
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonPopupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ButtonPopupComponent, selector: "kv-button-popup", inputs: { items: "items" }, usesInheritance: true, ngImport: i0, template: "<p-menu #menu [model]=\"items\" appendTo=\"body\" [popup]=\"true\" (onShow)=\"handleShow()\" (onHide)=\"handleHide()\"></p-menu>\n<button\n pButton\n pRipple\n class=\"btn-success border-green-500\"\n [icon]=\"icon\"\n iconPos=\"right\"\n [label]=\"label\"\n [loading]=\"loading\"\n [disabled]=\"disabled\"\n (click)=\"menu.toggle($event)\">\n</button>\n", styles: [".btn-success{background-color:#29b92d!important;color:#fff!important;height:35px}.btn-success:hover{background-color:#229925!important}.btn-success:disabled{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i2.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaLabel", "ariaLabelledBy", "id", "tabindex"], outputs: ["onShow", "onHide", "onBlur", "onFocus"] }, { kind: "directive", type: i3.Ripple, selector: "[pRipple]" }] }); }
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonPopupComponent, decorators: [{
|
|
26
|
-
type: Component,
|
|
27
|
-
args: [{ selector: 'kv-button-popup', template: "<p-menu #menu [model]=\"items\" appendTo=\"body\" [popup]=\"true\" (onShow)=\"handleShow()\" (onHide)=\"handleHide()\"></p-menu>\n<button\n pButton\n pRipple\n class=\"btn-success border-green-500\"\n [icon]=\"icon\"\n iconPos=\"right\"\n [label]=\"label\"\n [loading]=\"loading\"\n [disabled]=\"disabled\"\n (click)=\"menu.toggle($event)\">\n</button>\n", styles: [".btn-success{background-color:#29b92d!important;color:#fff!important;height:35px}.btn-success:hover{background-color:#229925!important}.btn-success:disabled{pointer-events:none}\n"] }]
|
|
28
|
-
}], ctorParameters: function () { return []; }, propDecorators: { items: [{
|
|
29
|
-
type: Input
|
|
30
|
-
}] } });
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { BaseComponentButton } from '../../api/base-components/base-component-button';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "primeng/button";
|
|
5
|
+
import * as i2 from "primeng/menu";
|
|
6
|
+
import * as i3 from "primeng/ripple";
|
|
7
|
+
export class ButtonPopupComponent extends BaseComponentButton {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.items = [];
|
|
11
|
+
this.icon = 'pi pi-chevron-down';
|
|
12
|
+
}
|
|
13
|
+
handleShow() {
|
|
14
|
+
this.rotate();
|
|
15
|
+
}
|
|
16
|
+
handleHide() {
|
|
17
|
+
this.rotate();
|
|
18
|
+
}
|
|
19
|
+
rotate() {
|
|
20
|
+
this.icon = this.icon === 'pi pi-chevron-down' ? 'pi pi-chevron-up' : 'pi pi-chevron-down';
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonPopupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ButtonPopupComponent, selector: "kv-button-popup", inputs: { items: "items" }, usesInheritance: true, ngImport: i0, template: "<p-menu #menu [model]=\"items\" appendTo=\"body\" [popup]=\"true\" (onShow)=\"handleShow()\" (onHide)=\"handleHide()\"></p-menu>\r\n<button\r\n pButton\r\n pRipple\r\n class=\"btn-success border-green-500\"\r\n [icon]=\"icon\"\r\n iconPos=\"right\"\r\n [label]=\"label\"\r\n [loading]=\"loading\"\r\n [disabled]=\"disabled\"\r\n (click)=\"menu.toggle($event)\">\r\n</button>\r\n", styles: [".btn-success{background-color:#29b92d!important;color:#fff!important;height:35px}.btn-success:hover{background-color:#229925!important}.btn-success:disabled{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i2.Menu, selector: "p-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaLabel", "ariaLabelledBy", "id", "tabindex"], outputs: ["onShow", "onHide", "onBlur", "onFocus"] }, { kind: "directive", type: i3.Ripple, selector: "[pRipple]" }] }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ButtonPopupComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{ selector: 'kv-button-popup', template: "<p-menu #menu [model]=\"items\" appendTo=\"body\" [popup]=\"true\" (onShow)=\"handleShow()\" (onHide)=\"handleHide()\"></p-menu>\r\n<button\r\n pButton\r\n pRipple\r\n class=\"btn-success border-green-500\"\r\n [icon]=\"icon\"\r\n iconPos=\"right\"\r\n [label]=\"label\"\r\n [loading]=\"loading\"\r\n [disabled]=\"disabled\"\r\n (click)=\"menu.toggle($event)\">\r\n</button>\r\n", styles: [".btn-success{background-color:#29b92d!important;color:#fff!important;height:35px}.btn-success:hover{background-color:#229925!important}.btn-success:disabled{pointer-events:none}\n"] }]
|
|
28
|
+
}], ctorParameters: function () { return []; }, propDecorators: { items: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}] } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9idXR0b25zL2J1dHRvbi1wb3B1cC9idXR0b24tcG9wdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL2J1dHRvbnMvYnV0dG9uLXBvcHVwL2J1dHRvbi1wb3B1cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7Ozs7QUFRdEYsTUFBTSxPQUFPLG9CQUFxQixTQUFRLG1CQUFtQjtJQU0zRDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBTEQsVUFBSyxHQUFlLEVBQUUsQ0FBQztRQUV2QixTQUFJLEdBQVcsb0JBQW9CLENBQUM7SUFJN0MsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUNELFVBQVU7UUFDUixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUNELE1BQU07UUFDSixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEtBQUssb0JBQW9CLENBQUEsQ0FBQyxDQUFDLGtCQUFrQixDQUFBLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQztJQUMzRixDQUFDOytHQWxCVSxvQkFBb0I7bUdBQXBCLG9CQUFvQiwwR0NUakMsdVpBWUE7OzRGREhhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxpQkFBaUI7MEVBTWxCLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudEJ1dHRvbiB9IGZyb20gJy4uLy4uL2FwaS9iYXNlLWNvbXBvbmVudHMvYmFzZS1jb21wb25lbnQtYnV0dG9uJztcclxuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LWJ1dHRvbi1wb3B1cCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi1wb3B1cC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLXBvcHVwLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1dHRvblBvcHVwQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudEJ1dHRvbiB7XHJcblxyXG4gIEBJbnB1dCgpIGl0ZW1zOiBNZW51SXRlbVtdID0gW107XHJcblxyXG4gIG92ZXJyaWRlIGljb246IHN0cmluZyA9ICdwaSBwaS1jaGV2cm9uLWRvd24nO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVTaG93KCkge1xyXG4gICAgdGhpcy5yb3RhdGUoKTtcclxuICB9XHJcbiAgaGFuZGxlSGlkZSgpIHtcclxuICAgIHRoaXMucm90YXRlKCk7XHJcbiAgfVxyXG4gIHJvdGF0ZSgpIHtcclxuICAgIHRoaXMuaWNvbiA9IHRoaXMuaWNvbiA9PT0gJ3BpIHBpLWNoZXZyb24tZG93bic/ICdwaSBwaS1jaGV2cm9uLXVwJzogJ3BpIHBpLWNoZXZyb24tZG93bic7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8cC1tZW51ICNtZW51IFttb2RlbF09XCJpdGVtc1wiIGFwcGVuZFRvPVwiYm9keVwiIFtwb3B1cF09XCJ0cnVlXCIgKG9uU2hvdyk9XCJoYW5kbGVTaG93KClcIiAob25IaWRlKT1cImhhbmRsZUhpZGUoKVwiPjwvcC1tZW51PlxyXG48YnV0dG9uXHJcbiAgICBwQnV0dG9uXHJcbiAgICBwUmlwcGxlXHJcbiAgICBjbGFzcz1cImJ0bi1zdWNjZXNzIGJvcmRlci1ncmVlbi01MDBcIlxyXG4gICAgW2ljb25dPVwiaWNvblwiXHJcbiAgICBpY29uUG9zPVwicmlnaHRcIlxyXG4gICAgW2xhYmVsXT1cImxhYmVsXCJcclxuICAgIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxyXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIChjbGljayk9XCJtZW51LnRvZ2dsZSgkZXZlbnQpXCI+XHJcbjwvYnV0dG9uPlxyXG4iXX0=
|