valtech-components 1.11.34 → 1.11.36
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/esm2022/lib/components/atoms/button/button.component.mjs +12 -7
- package/esm2022/lib/services/download.service.mjs +40 -0
- package/esm2022/lib/services/theme.service.mjs +46 -23
- package/esm2022/lib/valtech-components.module.mjs +14 -17
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/valtech-components.mjs +102 -41
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/atoms/button/button.component.d.ts +3 -1
- package/lib/services/download.service.d.ts +7 -0
- package/lib/services/theme.service.d.ts +3 -1
- package/lib/valtech-components.module.d.ts +1 -2
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -1,26 +1,31 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import { ComponentStates } from '../../types';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "
|
|
5
|
-
import * as i2 from "@
|
|
4
|
+
import * as i1 from "../../../services/download.service";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@ionic/angular";
|
|
6
7
|
export class ButtonComponent {
|
|
7
|
-
constructor() {
|
|
8
|
+
constructor(download) {
|
|
9
|
+
this.download = download;
|
|
8
10
|
this.states = ComponentStates;
|
|
9
11
|
this.onClick = new EventEmitter();
|
|
10
12
|
}
|
|
11
13
|
ngOnInit() { }
|
|
12
14
|
clickHandler() {
|
|
15
|
+
if (this.props.download) {
|
|
16
|
+
this.download.downloadLinkFromBrowser(this.props.download);
|
|
17
|
+
}
|
|
13
18
|
this.onClick.emit(this.props.token);
|
|
14
19
|
}
|
|
15
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ButtonComponent, selector: "val-button", inputs: { props: "props" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<ion-button\n [type]=\"props.type\"\n [color]=\"props.color\"\n [expand]=\"props.expand\"\n [fill]=\"props.fill\"\n [size]=\"props.size\"\n [href]=\"props.href\"\n [target]=\"props.target\"\n [download]=\"props.download\"\n [shape]=\"props.shape\"\n (click)=\"clickHandler()\"\n>\n <ion-icon *ngIf=\"props.icon\" [slot]=\"props.icon.slot\" [name]=\"props.icon.name\"></ion-icon>\n <ion-spinner *ngIf=\"props.state === states.WORKING\" name=\"circular\"></ion-spinner>\n <ion-text *ngIf=\"props.state !== states.WORKING\">{{ props.text }}</ion-text>\n</ion-button>\n", styles: ["ion-button{font-family:var(--ion-default-font),Arial,sans-serif}\n"], dependencies: [{ kind: "directive", type:
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ButtonComponent, deps: [{ token: i1.DownloadService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ButtonComponent, selector: "val-button", inputs: { props: "props" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<ion-button\n [type]=\"props.type\"\n [color]=\"props.color\"\n [expand]=\"props.expand\"\n [fill]=\"props.fill\"\n [size]=\"props.size\"\n [href]=\"props.href\"\n [target]=\"props.target\"\n [download]=\"props.download\"\n [shape]=\"props.shape\"\n (click)=\"clickHandler()\"\n>\n <ion-icon *ngIf=\"props.icon\" [slot]=\"props.icon.slot\" [name]=\"props.icon.name\"></ion-icon>\n <ion-spinner *ngIf=\"props.state === states.WORKING\" name=\"circular\"></ion-spinner>\n <ion-text *ngIf=\"props.state !== states.WORKING\">{{ props.text }}</ion-text>\n</ion-button>\n", styles: ["ion-button{font-family:var(--ion-default-font),Arial,sans-serif}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i3.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i3.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: i3.IonText, selector: "ion-text", inputs: ["color", "mode"] }] }); }
|
|
17
22
|
}
|
|
18
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
19
24
|
type: Component,
|
|
20
25
|
args: [{ selector: 'val-button', template: "<ion-button\n [type]=\"props.type\"\n [color]=\"props.color\"\n [expand]=\"props.expand\"\n [fill]=\"props.fill\"\n [size]=\"props.size\"\n [href]=\"props.href\"\n [target]=\"props.target\"\n [download]=\"props.download\"\n [shape]=\"props.shape\"\n (click)=\"clickHandler()\"\n>\n <ion-icon *ngIf=\"props.icon\" [slot]=\"props.icon.slot\" [name]=\"props.icon.name\"></ion-icon>\n <ion-spinner *ngIf=\"props.state === states.WORKING\" name=\"circular\"></ion-spinner>\n <ion-text *ngIf=\"props.state !== states.WORKING\">{{ props.text }}</ion-text>\n</ion-button>\n", styles: ["ion-button{font-family:var(--ion-default-font),Arial,sans-serif}\n"] }]
|
|
21
|
-
}], ctorParameters: () => [], propDecorators: { props: [{
|
|
26
|
+
}], ctorParameters: () => [{ type: i1.DownloadService }], propDecorators: { props: [{
|
|
22
27
|
type: Input
|
|
23
28
|
}], onClick: [{
|
|
24
29
|
type: Output
|
|
25
30
|
}] } });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0ZWNoLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7OztBQVE5QyxNQUFNLE9BQU8sZUFBZTtJQVMxQixZQUFvQixRQUF5QjtRQUF6QixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQVI3QyxXQUFNLEdBQUcsZUFBZSxDQUFDO1FBTXpCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBRVcsQ0FBQztJQUVqRCxRQUFRLEtBQUksQ0FBQztJQUViLFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7OEdBbEJVLGVBQWU7a0dBQWYsZUFBZSwrR0NWNUIsb2tCQWdCQTs7MkZETmEsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxZQUFZO29GQVF0QixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sT0FBTztzQkFETixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnV0dG9uTWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IENvbXBvbmVudFN0YXRlcyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IERvd25sb2FkU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Rvd25sb2FkLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2J1dHRvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzdGF0ZXMgPSBDb21wb25lbnRTdGF0ZXM7XG5cbiAgQElucHV0KClcbiAgcHJvcHMhOiBCdXR0b25NZXRhZGF0YTtcblxuICBAT3V0cHV0KClcbiAgb25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZG93bmxvYWQ6IERvd25sb2FkU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgY2xpY2tIYW5kbGVyKCkge1xuICAgIGlmICh0aGlzLnByb3BzLmRvd25sb2FkKSB7XG4gICAgICB0aGlzLmRvd25sb2FkLmRvd25sb2FkTGlua0Zyb21Ccm93c2VyKHRoaXMucHJvcHMuZG93bmxvYWQpO1xuICAgIH1cbiAgICB0aGlzLm9uQ2xpY2suZW1pdCh0aGlzLnByb3BzLnRva2VuKTtcbiAgfVxufVxuIiwiPGlvbi1idXR0b25cbiAgW3R5cGVdPVwicHJvcHMudHlwZVwiXG4gIFtjb2xvcl09XCJwcm9wcy5jb2xvclwiXG4gIFtleHBhbmRdPVwicHJvcHMuZXhwYW5kXCJcbiAgW2ZpbGxdPVwicHJvcHMuZmlsbFwiXG4gIFtzaXplXT1cInByb3BzLnNpemVcIlxuICBbaHJlZl09XCJwcm9wcy5ocmVmXCJcbiAgW3RhcmdldF09XCJwcm9wcy50YXJnZXRcIlxuICBbZG93bmxvYWRdPVwicHJvcHMuZG93bmxvYWRcIlxuICBbc2hhcGVdPVwicHJvcHMuc2hhcGVcIlxuICAoY2xpY2spPVwiY2xpY2tIYW5kbGVyKClcIlxuPlxuICA8aW9uLWljb24gKm5nSWY9XCJwcm9wcy5pY29uXCIgW3Nsb3RdPVwicHJvcHMuaWNvbi5zbG90XCIgW25hbWVdPVwicHJvcHMuaWNvbi5uYW1lXCI+PC9pb24taWNvbj5cbiAgPGlvbi1zcGlubmVyICpuZ0lmPVwicHJvcHMuc3RhdGUgPT09IHN0YXRlcy5XT1JLSU5HXCIgbmFtZT1cImNpcmN1bGFyXCI+PC9pb24tc3Bpbm5lcj5cbiAgPGlvbi10ZXh0ICpuZ0lmPVwicHJvcHMuc3RhdGUgIT09IHN0YXRlcy5XT1JLSU5HXCI+e3sgcHJvcHMudGV4dCB9fTwvaW9uLXRleHQ+XG48L2lvbi1idXR0b24+XG4iXX0=
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class DownloadService {
|
|
4
|
+
getFileNameFromUrl(url) {
|
|
5
|
+
try {
|
|
6
|
+
const pathSegments = url.split('/');
|
|
7
|
+
const lastSegment = pathSegments[pathSegments.length - 1];
|
|
8
|
+
const fileName = decodeURIComponent(lastSegment);
|
|
9
|
+
return fileName;
|
|
10
|
+
}
|
|
11
|
+
catch (error) {
|
|
12
|
+
console.error('Error al obtener nombre de archivo: ', JSON.stringify(error));
|
|
13
|
+
return 'filename';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
downloadLinkFromBrowser(url) {
|
|
17
|
+
if (url) {
|
|
18
|
+
const fileName = this.getFileNameFromUrl(url);
|
|
19
|
+
const link = document.createElement('a');
|
|
20
|
+
link.href = url;
|
|
21
|
+
link.download = `${+new Date()}-${fileName}`;
|
|
22
|
+
link.target = '_blank';
|
|
23
|
+
document.body.appendChild(link);
|
|
24
|
+
link.click();
|
|
25
|
+
document.body.removeChild(link);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
console.error('La URL no está definida');
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DownloadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
32
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DownloadService, providedIn: 'root' }); }
|
|
33
|
+
}
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DownloadService, decorators: [{
|
|
35
|
+
type: Injectable,
|
|
36
|
+
args: [{
|
|
37
|
+
providedIn: 'root',
|
|
38
|
+
}]
|
|
39
|
+
}] });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2Rvd25sb2FkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLGVBQWU7SUFDMUIsa0JBQWtCLENBQUMsR0FBVztRQUM1QixJQUFJLENBQUM7WUFDSCxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzFELE1BQU0sUUFBUSxHQUFHLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2pELE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxzQ0FBc0MsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDN0UsT0FBTyxVQUFVLENBQUM7UUFDcEIsQ0FBQztJQUNILENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxHQUFXO1FBQ2pDLElBQUksR0FBRyxFQUFFLENBQUM7WUFDUixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDOUMsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztZQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzdDLElBQUksQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDO1lBQ3ZCLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQzNDLENBQUM7SUFDSCxDQUFDOzhHQTFCVSxlQUFlO2tIQUFmLGVBQWUsY0FGZCxNQUFNOzsyRkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERvd25sb2FkU2VydmljZSB7XG4gIGdldEZpbGVOYW1lRnJvbVVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHBhdGhTZWdtZW50cyA9IHVybC5zcGxpdCgnLycpO1xuICAgICAgY29uc3QgbGFzdFNlZ21lbnQgPSBwYXRoU2VnbWVudHNbcGF0aFNlZ21lbnRzLmxlbmd0aCAtIDFdO1xuICAgICAgY29uc3QgZmlsZU5hbWUgPSBkZWNvZGVVUklDb21wb25lbnQobGFzdFNlZ21lbnQpO1xuICAgICAgcmV0dXJuIGZpbGVOYW1lO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBhbCBvYnRlbmVyIG5vbWJyZSBkZSBhcmNoaXZvOiAnLCBKU09OLnN0cmluZ2lmeShlcnJvcikpO1xuICAgICAgcmV0dXJuICdmaWxlbmFtZSc7XG4gICAgfVxuICB9XG5cbiAgZG93bmxvYWRMaW5rRnJvbUJyb3dzZXIodXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAodXJsKSB7XG4gICAgICBjb25zdCBmaWxlTmFtZSA9IHRoaXMuZ2V0RmlsZU5hbWVGcm9tVXJsKHVybCk7XG4gICAgICBjb25zdCBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgbGluay5ocmVmID0gdXJsO1xuICAgICAgbGluay5kb3dubG9hZCA9IGAkeytuZXcgRGF0ZSgpfS0ke2ZpbGVOYW1lfWA7XG4gICAgICBsaW5rLnRhcmdldCA9ICdfYmxhbmsnO1xuICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcbiAgICAgIGxpbmsuY2xpY2soKTtcbiAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQobGluayk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0xhIFVSTCBubyBlc3TDoSBkZWZpbmlkYScpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -19,23 +19,38 @@ export class ThemeService {
|
|
|
19
19
|
this.prefersDark = false;
|
|
20
20
|
this.default = ThemeOption.AUTO;
|
|
21
21
|
const current = LocalStorageService.get(THEME);
|
|
22
|
+
console.log('💡 ThemeConfig current::: ', current);
|
|
22
23
|
this.theme = new BehaviorSubject(current || this.default);
|
|
23
|
-
// Use matchMedia to check the user preference
|
|
24
|
-
const prefersDark = window.matchMedia('(prefers-color-scheme: dark)');
|
|
25
|
-
console.log('💡 ThemeConfig prefersDark::: ', prefersDark);
|
|
26
|
-
// value of the prefers-color-scheme media query
|
|
27
|
-
this.prefersDark = prefersDark.matches;
|
|
28
|
-
// get the current persisted preference
|
|
29
24
|
this.currentOption = this.Theme;
|
|
30
25
|
console.log('💡 ThemeConfig this.currentOption::: ', this.currentOption);
|
|
31
26
|
this.toggleUserPreference(this.currentOption);
|
|
32
|
-
|
|
33
|
-
prefersDark
|
|
27
|
+
const prefersDarkQuery = window.matchMedia('(prefers-color-scheme: dark)');
|
|
28
|
+
this.prefersDark = prefersDarkQuery.matches;
|
|
29
|
+
this.handleAutoConfiguration();
|
|
30
|
+
prefersDarkQuery.addEventListener('change', (mediaQuery) => {
|
|
34
31
|
console.log('💡 ThemeConfig addEventListener change::: ', mediaQuery);
|
|
35
32
|
this.prefersDark = mediaQuery.matches;
|
|
36
|
-
this.
|
|
33
|
+
this.handleAutoConfiguration();
|
|
37
34
|
});
|
|
38
35
|
}
|
|
36
|
+
handleAutoConfiguration() {
|
|
37
|
+
if (this.prefersDark && this.currentOption === ThemeOption.AUTO) {
|
|
38
|
+
console.log('💡 ThemeConfig prefersDark::: ', this.prefersDark);
|
|
39
|
+
this.toggleUserPreference(ThemeOption.AUTO);
|
|
40
|
+
}
|
|
41
|
+
if (!this.prefersDark && this.currentOption === ThemeOption.AUTO) {
|
|
42
|
+
console.log('💡 ThemeConfig prefersDark::: ', this.prefersDark);
|
|
43
|
+
this.toggleUserPreference(ThemeOption.AUTO);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
handleDarkPreference() {
|
|
47
|
+
this.toggleTheme(ThemeOption.DARK, true);
|
|
48
|
+
this.toggleTheme(ThemeOption.LIGHT, false);
|
|
49
|
+
}
|
|
50
|
+
handleLightPreference() {
|
|
51
|
+
this.toggleTheme(ThemeOption.LIGHT, true);
|
|
52
|
+
this.toggleTheme(ThemeOption.DARK, false);
|
|
53
|
+
}
|
|
39
54
|
get Theme() {
|
|
40
55
|
return this.theme.value;
|
|
41
56
|
}
|
|
@@ -43,24 +58,32 @@ export class ThemeService {
|
|
|
43
58
|
this.theme.next(theme);
|
|
44
59
|
LocalStorageService.set(THEME, theme);
|
|
45
60
|
}
|
|
46
|
-
toggleChange(ev) {
|
|
47
|
-
console.log('💡 ThemeConfig toggleChange ev::: ', ev);
|
|
48
|
-
this.toggleTheme('dark', ev.detail.checked);
|
|
49
|
-
}
|
|
50
|
-
// Add or remove the class on the document body
|
|
51
61
|
toggleTheme(name, shouldAdd) {
|
|
62
|
+
console.log('toggleTheme::: ', name, shouldAdd);
|
|
52
63
|
document.body.classList.toggle(name, shouldAdd);
|
|
53
64
|
}
|
|
54
65
|
toggleUserPreference(option) {
|
|
55
|
-
console.log('💡 ThemeConfig toggleUserPreference option::: ', option);
|
|
56
|
-
this.lightToggle = option == ThemeOption.LIGHT;
|
|
57
|
-
this.toggleTheme(ThemeOption.LIGHT, this.lightToggle);
|
|
58
|
-
this.darkToggle = option == ThemeOption.DARK;
|
|
59
|
-
this.toggleTheme(ThemeOption.DARK, this.darkToggle);
|
|
60
|
-
this.autoToggle = option == ThemeOption.AUTO;
|
|
61
|
-
this.toggleTheme(this.autoToggle ? (this.prefersDark ? ThemeOption.DARK : ThemeOption.LIGHT) : this.currentOption, this.autoToggle);
|
|
62
|
-
this.Theme = option;
|
|
63
66
|
this.currentOption = option;
|
|
67
|
+
this.Theme = option;
|
|
68
|
+
this.lightToggle = option === ThemeOption.LIGHT;
|
|
69
|
+
this.darkToggle = option === ThemeOption.DARK;
|
|
70
|
+
this.autoToggle = option === ThemeOption.AUTO;
|
|
71
|
+
switch (option) {
|
|
72
|
+
case ThemeOption.LIGHT:
|
|
73
|
+
this.handleLightPreference();
|
|
74
|
+
break;
|
|
75
|
+
case ThemeOption.DARK:
|
|
76
|
+
this.handleDarkPreference();
|
|
77
|
+
break;
|
|
78
|
+
case ThemeOption.AUTO:
|
|
79
|
+
if (this.prefersDark) {
|
|
80
|
+
this.handleDarkPreference();
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
this.handleLightPreference();
|
|
84
|
+
}
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
64
87
|
}
|
|
65
88
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
66
89
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ThemeService, providedIn: 'root' }); }
|
|
@@ -71,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
71
94
|
providedIn: 'root',
|
|
72
95
|
}]
|
|
73
96
|
}], ctorParameters: () => [] });
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFbkQsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQiw4QkFBZSxDQUFBO0lBQ2YsNEJBQWEsQ0FBQTtJQUNiLDRCQUFhLENBQUE7QUFDZixDQUFDLEVBSlcsV0FBVyxLQUFYLFdBQVcsUUFJdEI7QUFLRCxNQUFNLE9BQU8sWUFBWTtJQVV2QjtRQVRBLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixrQkFBYSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDakMsaUJBQVksR0FBRyxXQUFXLENBQUM7UUFDM0IsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsWUFBTyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFJekIsTUFBTSxPQUFPLEdBQUcsbUJBQW1CLENBQUMsR0FBRyxDQUFjLEtBQUssQ0FBQyxDQUFDO1FBQzVELE9BQU8sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLGVBQWUsQ0FBYyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxh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LFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDOUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLEtBQUssV0FBVyxDQUFDLElBQUksQ0FBQztRQUU5QyxRQUFRLE1BQU0sRUFBRSxDQUFDO1lBQ2YsS0FBSyxXQUFXLENBQUMsS0FBSztnQkFDcEIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQzdCLE1BQU07WUFDUixLQUFLLFdBQVcsQ0FBQyxJQUFJO2dCQUNuQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztnQkFDNUIsTUFBTTtZQUNSLEtBQUssV0FBVyxDQUFDLElBQUk7Z0JBQ25CLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUNyQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztnQkFDOUIsQ0FBQztxQkFBTSxDQUFDO29CQUNOLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2dCQUMvQixDQUFDO2dCQUNELE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQzs4R0F0RlUsWUFBWTtrSEFBWixZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBUSEVNRSB9IGZyb20gJy4uL3NoYXJlZC9jb250YW50cy9zdG9yYWdlJztcblxuZXhwb3J0IGVudW0gVGhlbWVPcHRpb24ge1xuICBMSUdIVCA9ICdsaWdodCcsXG4gIERBUksgPSAnZGFyaycsXG4gIEFVVE8gPSAnYXV0bycsXG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZVNlcnZpY2Uge1xuICBsaWdodFRvZ2dsZSA9IGZhbHNlO1xuICBkYXJrVG9nZ2xlID0gZmFsc2U7XG4gIGF1dG9Ub2dnbGUgPSBmYWxzZTtcbiAgY3VycmVudE9wdGlvbiA9IFRoZW1lT3B0aW9uLkFVVE87XG4gIHRoZW1lT3B0aW9ucyA9IFRoZW1lT3B0aW9uO1xuICBwcmVmZXJzRGFyayA9IGZhbHNlO1xuICBkZWZhdWx0ID0gVGhlbWVPcHRpb24uQVVUTztcbiAgdGhlbWU6IEJlaGF2aW9yU3ViamVjdDxUaGVtZU9wdGlvbj47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgY3VycmVudCA9IExvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0PFRoZW1lT3B0aW9uPihUSEVNRSk7XG4gICAgY29uc29sZS5sb2coJ/CfkqEgVGhlbWVDb25maWcgY3VycmVudDo6OiAnLCBjdXJyZW50KTtcbiAgICB0aGlzLnRoZW1lID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUaGVtZU9wdGlvbj4oY3VycmVudCB8fCB0aGlzLmRlZmF1bHQpO1xuICAgIHRoaXMuY3VycmVudE9wdGlvbiA9IHRoaXMuVGhlbWU7XG4gICAgY29uc29sZS5sb2coJ/CfkqEgVGhlbWVDb25maWcgdGhpcy5jdXJyZW50T3B0aW9uOjo6ICcsIHRoaXMuY3VycmVudE9wdGlvbik7XG4gICAgdGhpcy50b2dnbGVVc2VyUHJlZmVyZW5jZSh0aGlzLmN1cnJlbnRPcHRpb24pO1xuXG4gICAgY29uc3QgcHJlZmVyc0RhcmtRdWVyeSA9IHdpbmRvdy5tYXRjaE1lZGlhKCcocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspJyk7XG4gICAgdGhpcy5wcmVmZXJzRGFyayA9IHByZWZlcnNEYXJrUXVlcnkubWF0Y2hlcztcbiAgICB0aGlzLmhhbmRsZUF1dG9Db25maWd1cmF0aW9uKCk7XG5cbiAgICBwcmVmZXJzRGFya1F1ZXJ5LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChtZWRpYVF1ZXJ5KSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygn8J+SoSBUaGVtZUNvbmZpZyBhZGRFdmVudExpc3RlbmVyIGNoYW5nZTo6OiAnLCBtZWRpYVF1ZXJ5KTtcbiAgICAgIHRoaXMucHJlZmVyc0RhcmsgPSBtZWRpYVF1ZXJ5Lm1hdGNoZXM7XG4gICAgICB0aGlzLmhhbmRsZUF1dG9Db25maWd1cmF0aW9uKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUF1dG9Db25maWd1cmF0aW9uKCkge1xuICAgIGlmICh0aGlzLnByZWZlcnNEYXJrICYmIHRoaXMuY3VycmVudE9wdGlvbiA9PT0gVGhlbWVPcHRpb24uQVVUTykge1xuICAgICAgY29uc29sZS5sb2coJ/CfkqEgVGhlbWVDb25maWcgcHJlZmVyc0Rhcms6OjogJywgdGhpcy5wcmVmZXJzRGFyayk7XG4gICAgICB0aGlzLnRvZ2dsZVVzZXJQcmVmZXJlbmNlKFRoZW1lT3B0aW9uLkFVVE8pO1xuICAgIH1cbiAgICBpZiAoIXRoaXMucHJlZmVyc0RhcmsgJiYgdGhpcy5jdXJyZW50T3B0aW9uID09PSBUaGVtZU9wdGlvbi5BVVRPKSB7XG4gICAgICBjb25zb2xlLmxvZygn8J+SoSBUaGVtZUNvbmZpZyBwcmVmZXJzRGFyazo6OiAnLCB0aGlzLnByZWZlcnNEYXJrKTtcbiAgICAgIHRoaXMudG9nZ2xlVXNlclByZWZlcmVuY2UoVGhlbWVPcHRpb24uQVVUTyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVEYXJrUHJlZmVyZW5jZSgpIHtcbiAgICB0aGlzLnRvZ2dsZVRoZW1lKFRoZW1lT3B0aW9uLkRBUkssIHRydWUpO1xuICAgIHRoaXMudG9nZ2xlVGhlbWUoVGhlbWVPcHRpb24uTElHSFQsIGZhbHNlKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlTGlnaHRQcmVmZXJlbmNlKCkge1xuICAgIHRoaXMudG9nZ2xlVGhlbWUoVGhlbWVPcHRpb24uTElHSFQsIHRydWUpO1xuICAgIHRoaXMudG9nZ2xlVGhlbWUoVGhlbWVPcHRpb24uREFSSywgZmFsc2UpO1xuICB9XG5cbiAgZ2V0IFRoZW1lKCk6IFRoZW1lT3B0aW9uIHtcbiAgICByZXR1cm4gdGhpcy50aGVtZS52YWx1ZTtcbiAgfVxuXG4gIHNldCBUaGVtZSh0aGVtZTogVGhlbWVPcHRpb24pIHtcbiAgICB0aGlzLnRoZW1lLm5leHQodGhlbWUpO1xuICAgIExvY2FsU3RvcmFnZVNlcnZpY2Uuc2V0PFRoZW1lT3B0aW9uPihUSEVNRSwgdGhlbWUpO1xuICB9XG5cbiAgdG9nZ2xlVGhlbWUobmFtZTogc3RyaW5nLCBzaG91bGRBZGQ6IGJvb2xlYW4pIHtcbiAgICBjb25zb2xlLmxvZygndG9nZ2xlVGhlbWU6OjogJywgbmFtZSwgc2hvdWxkQWRkKTtcbiAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC50b2dnbGUobmFtZSwgc2hvdWxkQWRkKTtcbiAgfVxuXG4gIHRvZ2dsZVVzZXJQcmVmZXJlbmNlKG9wdGlvbjogVGhlbWVPcHRpb24pIHtcbiAgICB0aGlzLmN1cnJlbnRPcHRpb24gPSBvcHRpb247XG4gICAgdGhpcy5UaGVtZSA9IG9wdGlvbjtcbiAgICB0aGlzLmxpZ2h0VG9nZ2xlID0gb3B0aW9uID09PSBUaGVtZU9wdGlvbi5MSUdIVDtcbiAgICB0aGlzLmRhcmtUb2dnbGUgPSBvcHRpb24gPT09IFRoZW1lT3B0aW9uLkRBUks7XG4gICAgdGhpcy5hdXRvVG9nZ2xlID0gb3B0aW9uID09PSBUaGVtZU9wdGlvbi5BVVRPO1xuXG4gICAgc3dpdGNoIChvcHRpb24pIHtcbiAgICAgIGNhc2UgVGhlbWVPcHRpb24uTElHSFQ6XG4gICAgICAgIHRoaXMuaGFuZGxlTGlnaHRQcmVmZXJlbmNlKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUaGVtZU9wdGlvbi5EQVJLOlxuICAgICAgICB0aGlzLmhhbmRsZURhcmtQcmVmZXJlbmNlKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBUaGVtZU9wdGlvbi5BVVRPOlxuICAgICAgICBpZiAodGhpcy5wcmVmZXJzRGFyaykge1xuICAgICAgICAgIHRoaXMuaGFuZGxlRGFya1ByZWZlcmVuY2UoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmhhbmRsZUxpZ2h0UHJlZmVyZW5jZSgpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -12,8 +12,6 @@ import { ContentLoaderComponent } from './components/molecules/content-loader/co
|
|
|
12
12
|
import { LinkComponent } from './components/molecules/link/link.component';
|
|
13
13
|
import { SearchbarComponent } from './components/molecules/searchbar/searchbar.component';
|
|
14
14
|
import { ToolbarComponent } from './components/organisms/toolbar/toolbar.component';
|
|
15
|
-
import { LangService } from './services/lang-provider/lang-provider.service';
|
|
16
|
-
import { ThemeService } from './services/theme.service';
|
|
17
15
|
import { BoxComponent } from './components/atoms/box/box.component';
|
|
18
16
|
import { IconComponent } from './components/atoms/icon/icon.component';
|
|
19
17
|
import { AlertBoxComponent } from './components/molecules/alert-box/alert-box.component';
|
|
@@ -21,22 +19,12 @@ import { ButtonGroupComponent } from './components/molecules/button-group/button
|
|
|
21
19
|
import { TitleBlockComponent } from './components/molecules/title-block/title-block.component';
|
|
22
20
|
import { BannerComponent } from './components/organisms/banner/banner.component';
|
|
23
21
|
import { NotesBoxComponent } from './components/molecules/notes-box/notes-box.component';
|
|
22
|
+
import { DownloadService } from './services/download.service';
|
|
23
|
+
import { LangService } from './services/lang-provider/lang-provider.service';
|
|
24
|
+
import { ThemeService } from './services/theme.service';
|
|
24
25
|
import * as i0 from "@angular/core";
|
|
25
26
|
export const ValtechConfigService = new InjectionToken('ValtechConfig');
|
|
26
27
|
export class ValtechComponentsModule {
|
|
27
|
-
static forRoot(config) {
|
|
28
|
-
return {
|
|
29
|
-
ngModule: ValtechComponentsModule,
|
|
30
|
-
providers: [
|
|
31
|
-
LangService,
|
|
32
|
-
ThemeService,
|
|
33
|
-
{
|
|
34
|
-
provide: ValtechConfigService,
|
|
35
|
-
useValue: config,
|
|
36
|
-
},
|
|
37
|
-
],
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
28
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
41
29
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule, declarations: [ButtonComponent,
|
|
42
30
|
BoxComponent,
|
|
@@ -71,7 +59,11 @@ export class ValtechComponentsModule {
|
|
|
71
59
|
AlertBoxComponent,
|
|
72
60
|
BannerComponent,
|
|
73
61
|
NotesBoxComponent] }); }
|
|
74
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule,
|
|
62
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule, providers: [
|
|
63
|
+
DownloadService,
|
|
64
|
+
LangService,
|
|
65
|
+
ThemeService,
|
|
66
|
+
], imports: [CommonModule, HttpClientModule, IonicModule] }); }
|
|
75
67
|
}
|
|
76
68
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule, decorators: [{
|
|
77
69
|
type: NgModule,
|
|
@@ -115,6 +107,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
115
107
|
BannerComponent,
|
|
116
108
|
NotesBoxComponent,
|
|
117
109
|
],
|
|
110
|
+
providers: [
|
|
111
|
+
DownloadService,
|
|
112
|
+
LangService,
|
|
113
|
+
ThemeService,
|
|
114
|
+
],
|
|
118
115
|
}]
|
|
119
116
|
}] });
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdGVjaC1jb21wb25lbnRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvbGliL3ZhbHRlY2gtY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUVwRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNqRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFNeEQsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxjQUFjLENBQWdCLGVBQWUsQ0FBQyxDQUFDO0FBZ0R2RixNQUFNLE9BQU8sdUJBQXVCOzhHQUF2Qix1QkFBdUI7K0dBQXZCLHVCQUF1QixpQkE1Q2hDLGVBQWU7WUFDZixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixjQUFjO1lBQ2QsZUFBZTtZQUNmLGdCQUFnQjtZQUNoQixzQkFBc0I7WUFDdEIsYUFBYTtZQUNiLGtCQUFrQjtZQUNsQixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLG9CQUFvQjtZQUNwQixtQkFBbUI7WUFDbkIsaUJBQWlCO1lBQ2pCLGVBQWU7WUFDZixpQkFBaUIsYUFFVCxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxhQUVuRCxlQUFlO1lBQ2YsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2IsY0FBYztZQUNkLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsc0JBQXNCO1lBQ3RCLGFBQWE7WUFDYixrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLGlCQUFpQjtZQUNqQixlQUFlO1lBQ2YsaUJBQWlCOytHQVFSLHVCQUF1QixhQU52QjtZQUNULGVBQWU7WUFDZixXQUFXO1lBQ1gsWUFBWTtTQUNiLFlBeEJTLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxXQUFXOzsyRkEwQjFDLHVCQUF1QjtrQkE5Q25DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGVBQWU7d0JBQ2YsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsc0JBQXNCO3dCQUN0QixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YsaUJBQWlCO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxDQUFDO29CQUN0RCxPQUFPLEVBQUU7d0JBQ1AsZUFBZTt3QkFDZixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixzQkFBc0I7d0JBQ3RCLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixpQkFBaUI7cUJBQ2xCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsWUFBWTtxQkFDYjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25pY01vZHVsZSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hdG9tcy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2F0b21zL2Rpc3BsYXkvZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hdG9tcy90ZXh0L3RleHQuY29tcG9uZW50JztcbmltcG9ydCB7IFRpdGxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2F0b21zL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXRvbXMvYXZhdGFyL2F2YXRhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hdG9tcy9kaXZpZGVyL2RpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbnRlbnRMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbW9sZWN1bGVzL2NvbnRlbnQtbG9hZGVyL2NvbnRlbnQtbG9hZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMaW5rQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vbGVjdWxlcy9saW5rL2xpbmsuY29tcG9uZW50JztcbmltcG9ydCB7IFNlYXJjaGJhckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tb2xlY3VsZXMvc2VhcmNoYmFyL3NlYXJjaGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcmdhbmlzbXMvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm92aWRlciB9IGZyb20gJy4vc2VydmljZXMvbGFuZy1wcm92aWRlci9jb250ZW50JztcbmltcG9ydCB7IEJveENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hdG9tcy9ib3gvYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2F0b21zL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWxlcnRCb3hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FsZXJ0LWJveC9hbGVydC1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vbGVjdWxlcy9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaXRsZUJsb2NrQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vbGVjdWxlcy90aXRsZS1ibG9jay90aXRsZS1ibG9jay5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFubmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZ2FuaXNtcy9iYW5uZXIvYmFubmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOb3Rlc0JveENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tb2xlY3VsZXMvbm90ZXMtYm94L25vdGVzLWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG93bmxvYWRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kb3dubG9hZC5zZXJ2aWNlJztcbmltcG9ydCB7IExhbmdTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9sYW5nLXByb3ZpZGVyL2xhbmctcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUaGVtZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3RoZW1lLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZhbHRlY2hDb25maWcge1xuICBjb250ZW50OiBQcm92aWRlcjtcbn1cblxuZXhwb3J0IGNvbnN0IFZhbHRlY2hDb25maWdTZXJ2aWNlID0gbmV3IEluamVjdGlvblRva2VuPFZhbHRlY2hDb25maWc+KCdWYWx0ZWNoQ29uZmlnJyk7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBCb3hDb21wb25lbnQsXG4gICAgRGlzcGxheUNvbXBvbmVudCxcbiAgICBUZXh0Q29tcG9uZW50LFxuICAgIFRpdGxlQ29tcG9uZW50LFxuICAgIEF2YXRhckNvbXBvbmVudCxcbiAgICBEaXZpZGVyQ29tcG9uZW50LFxuICAgIENvbnRlbnRMb2FkZXJDb21wb25lbnQsXG4gICAgTGlua0NvbXBvbmVudCxcbiAgICBTZWFyY2hiYXJDb21wb25lbnQsXG4gICAgVG9vbGJhckNvbXBvbmVudCxcbiAgICBJY29uQ29tcG9uZW50LFxuICAgIEJ1dHRvbkdyb3VwQ29tcG9uZW50LFxuICAgIFRpdGxlQmxvY2tDb21wb25lbnQsXG4gICAgQWxlcnRCb3hDb21wb25lbnQsXG4gICAgQmFubmVyQ29tcG9uZW50LFxuICAgIE5vdGVzQm94Q29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBIdHRwQ2xpZW50TW9kdWxlLCBJb25pY01vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgQm94Q29tcG9uZW50LFxuICAgIERpc3BsYXlDb21wb25lbnQsXG4gICAgVGV4dENvbXBvbmVudCxcbiAgICBUaXRsZUNvbXBvbmVudCxcbiAgICBBdmF0YXJDb21wb25lbnQsXG4gICAgRGl2aWRlckNvbXBvbmVudCxcbiAgICBDb250ZW50TG9hZGVyQ29tcG9uZW50LFxuICAgIExpbmtDb21wb25lbnQsXG4gICAgU2VhcmNoYmFyQ29tcG9uZW50LFxuICAgIFRvb2xiYXJDb21wb25lbnQsXG4gICAgSWNvbkNvbXBvbmVudCxcbiAgICBCdXR0b25Hcm91cENvbXBvbmVudCxcbiAgICBUaXRsZUJsb2NrQ29tcG9uZW50LFxuICAgIEFsZXJ0Qm94Q29tcG9uZW50LFxuICAgIEJhbm5lckNvbXBvbmVudCxcbiAgICBOb3Rlc0JveENvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRG93bmxvYWRTZXJ2aWNlLFxuICAgIExhbmdTZXJ2aWNlLFxuICAgIFRoZW1lU2VydmljZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVmFsdGVjaENvbXBvbmVudHNNb2R1bGUge31cbiJdfQ==
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -24,6 +24,7 @@ export * from './lib/services/lang-provider/lang-provider.service';
|
|
|
24
24
|
export * from './lib/services/lang-provider/types';
|
|
25
25
|
export * from './lib/services/local-storage.service';
|
|
26
26
|
export * from './lib/services/theme.service';
|
|
27
|
+
export * from './lib/services/download.service';
|
|
27
28
|
export * from './lib/components/types';
|
|
28
29
|
export * from './lib/valtech-components.module';
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZhbHRlY2gtY29tcG9uZW50cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsNENBQTRDLENBQUM7QUFFM0QsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYywwREFBMEQsQ0FBQztBQUV6RSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsb0RBQW9ELENBQUM7QUFFbkUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgdmFsdGVjaC1jb21wb25lbnRzXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2J1dHRvbi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2J1dHRvbi9mYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXRvbXMvdGV4dC90ZXh0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL3RpdGxlL3RpdGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2Rpc3BsYXkvZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hdG9tcy9ib3gvYm94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F0b21zL2ljb24vaWNvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9jb250ZW50LWxvYWRlci9jb250ZW50LWxvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbGluay9saW5rLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWFyY2hiYXIvc2VhcmNoYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90aXRsZS1ibG9jay90aXRsZS1ibG9jay5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvbm90ZXMtYm94L25vdGVzLWJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2xlY3VsZXMvYWxlcnQtYm94L2FsZXJ0LWJveC5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2Jhbm5lci9iYW5uZXIuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbGFuZy1wcm92aWRlci9sYW5nLXByb3ZpZGVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvbGFuZy1wcm92aWRlci90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdGhlbWUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9kb3dubG9hZC5zZXJ2aWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92YWx0ZWNoLWNvbXBvbmVudHMubW9kdWxlJztcbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, Component, Input, Output,
|
|
2
|
+
import { Injectable, EventEmitter, Component, Input, Output, InjectionToken, NgModule, Inject } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i1$1 from '@ionic/angular';
|
|
@@ -12,22 +12,64 @@ const DISABLED = 'DISABLED';
|
|
|
12
12
|
const WORKING = 'WORKING';
|
|
13
13
|
const ComponentStates = { ENABLED, DISABLED, WORKING };
|
|
14
14
|
|
|
15
|
+
class DownloadService {
|
|
16
|
+
getFileNameFromUrl(url) {
|
|
17
|
+
try {
|
|
18
|
+
const pathSegments = url.split('/');
|
|
19
|
+
const lastSegment = pathSegments[pathSegments.length - 1];
|
|
20
|
+
const fileName = decodeURIComponent(lastSegment);
|
|
21
|
+
return fileName;
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
console.error('Error al obtener nombre de archivo: ', JSON.stringify(error));
|
|
25
|
+
return 'filename';
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
downloadLinkFromBrowser(url) {
|
|
29
|
+
if (url) {
|
|
30
|
+
const fileName = this.getFileNameFromUrl(url);
|
|
31
|
+
const link = document.createElement('a');
|
|
32
|
+
link.href = url;
|
|
33
|
+
link.download = `${+new Date()}-${fileName}`;
|
|
34
|
+
link.target = '_blank';
|
|
35
|
+
document.body.appendChild(link);
|
|
36
|
+
link.click();
|
|
37
|
+
document.body.removeChild(link);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
console.error('La URL no está definida');
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DownloadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
44
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DownloadService, providedIn: 'root' }); }
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DownloadService, decorators: [{
|
|
47
|
+
type: Injectable,
|
|
48
|
+
args: [{
|
|
49
|
+
providedIn: 'root',
|
|
50
|
+
}]
|
|
51
|
+
}] });
|
|
52
|
+
|
|
15
53
|
class ButtonComponent {
|
|
16
|
-
constructor() {
|
|
54
|
+
constructor(download) {
|
|
55
|
+
this.download = download;
|
|
17
56
|
this.states = ComponentStates;
|
|
18
57
|
this.onClick = new EventEmitter();
|
|
19
58
|
}
|
|
20
59
|
ngOnInit() { }
|
|
21
60
|
clickHandler() {
|
|
61
|
+
if (this.props.download) {
|
|
62
|
+
this.download.downloadLinkFromBrowser(this.props.download);
|
|
63
|
+
}
|
|
22
64
|
this.onClick.emit(this.props.token);
|
|
23
65
|
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ButtonComponent, deps: [{ token: DownloadService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
67
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ButtonComponent, selector: "val-button", inputs: { props: "props" }, outputs: { onClick: "onClick" }, ngImport: i0, template: "<ion-button\n [type]=\"props.type\"\n [color]=\"props.color\"\n [expand]=\"props.expand\"\n [fill]=\"props.fill\"\n [size]=\"props.size\"\n [href]=\"props.href\"\n [target]=\"props.target\"\n [download]=\"props.download\"\n [shape]=\"props.shape\"\n (click)=\"clickHandler()\"\n>\n <ion-icon *ngIf=\"props.icon\" [slot]=\"props.icon.slot\" [name]=\"props.icon.name\"></ion-icon>\n <ion-spinner *ngIf=\"props.state === states.WORKING\" name=\"circular\"></ion-spinner>\n <ion-text *ngIf=\"props.state !== states.WORKING\">{{ props.text }}</ion-text>\n</ion-button>\n", styles: ["ion-button{font-family:var(--ion-default-font),Arial,sans-serif}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1$1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i1$1.IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: i1$1.IonText, selector: "ion-text", inputs: ["color", "mode"] }] }); }
|
|
26
68
|
}
|
|
27
69
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
28
70
|
type: Component,
|
|
29
71
|
args: [{ selector: 'val-button', template: "<ion-button\n [type]=\"props.type\"\n [color]=\"props.color\"\n [expand]=\"props.expand\"\n [fill]=\"props.fill\"\n [size]=\"props.size\"\n [href]=\"props.href\"\n [target]=\"props.target\"\n [download]=\"props.download\"\n [shape]=\"props.shape\"\n (click)=\"clickHandler()\"\n>\n <ion-icon *ngIf=\"props.icon\" [slot]=\"props.icon.slot\" [name]=\"props.icon.name\"></ion-icon>\n <ion-spinner *ngIf=\"props.state === states.WORKING\" name=\"circular\"></ion-spinner>\n <ion-text *ngIf=\"props.state !== states.WORKING\">{{ props.text }}</ion-text>\n</ion-button>\n", styles: ["ion-button{font-family:var(--ion-default-font),Arial,sans-serif}\n"] }]
|
|
30
|
-
}], ctorParameters: () => [], propDecorators: { props: [{
|
|
72
|
+
}], ctorParameters: () => [{ type: DownloadService }], propDecorators: { props: [{
|
|
31
73
|
type: Input
|
|
32
74
|
}], onClick: [{
|
|
33
75
|
type: Output
|
|
@@ -683,23 +725,38 @@ class ThemeService {
|
|
|
683
725
|
this.prefersDark = false;
|
|
684
726
|
this.default = ThemeOption.AUTO;
|
|
685
727
|
const current = LocalStorageService.get(THEME);
|
|
728
|
+
console.log('💡 ThemeConfig current::: ', current);
|
|
686
729
|
this.theme = new BehaviorSubject(current || this.default);
|
|
687
|
-
// Use matchMedia to check the user preference
|
|
688
|
-
const prefersDark = window.matchMedia('(prefers-color-scheme: dark)');
|
|
689
|
-
console.log('💡 ThemeConfig prefersDark::: ', prefersDark);
|
|
690
|
-
// value of the prefers-color-scheme media query
|
|
691
|
-
this.prefersDark = prefersDark.matches;
|
|
692
|
-
// get the current persisted preference
|
|
693
730
|
this.currentOption = this.Theme;
|
|
694
731
|
console.log('💡 ThemeConfig this.currentOption::: ', this.currentOption);
|
|
695
732
|
this.toggleUserPreference(this.currentOption);
|
|
696
|
-
|
|
697
|
-
prefersDark
|
|
733
|
+
const prefersDarkQuery = window.matchMedia('(prefers-color-scheme: dark)');
|
|
734
|
+
this.prefersDark = prefersDarkQuery.matches;
|
|
735
|
+
this.handleAutoConfiguration();
|
|
736
|
+
prefersDarkQuery.addEventListener('change', (mediaQuery) => {
|
|
698
737
|
console.log('💡 ThemeConfig addEventListener change::: ', mediaQuery);
|
|
699
738
|
this.prefersDark = mediaQuery.matches;
|
|
700
|
-
this.
|
|
739
|
+
this.handleAutoConfiguration();
|
|
701
740
|
});
|
|
702
741
|
}
|
|
742
|
+
handleAutoConfiguration() {
|
|
743
|
+
if (this.prefersDark && this.currentOption === ThemeOption.AUTO) {
|
|
744
|
+
console.log('💡 ThemeConfig prefersDark::: ', this.prefersDark);
|
|
745
|
+
this.toggleUserPreference(ThemeOption.AUTO);
|
|
746
|
+
}
|
|
747
|
+
if (!this.prefersDark && this.currentOption === ThemeOption.AUTO) {
|
|
748
|
+
console.log('💡 ThemeConfig prefersDark::: ', this.prefersDark);
|
|
749
|
+
this.toggleUserPreference(ThemeOption.AUTO);
|
|
750
|
+
}
|
|
751
|
+
}
|
|
752
|
+
handleDarkPreference() {
|
|
753
|
+
this.toggleTheme(ThemeOption.DARK, true);
|
|
754
|
+
this.toggleTheme(ThemeOption.LIGHT, false);
|
|
755
|
+
}
|
|
756
|
+
handleLightPreference() {
|
|
757
|
+
this.toggleTheme(ThemeOption.LIGHT, true);
|
|
758
|
+
this.toggleTheme(ThemeOption.DARK, false);
|
|
759
|
+
}
|
|
703
760
|
get Theme() {
|
|
704
761
|
return this.theme.value;
|
|
705
762
|
}
|
|
@@ -707,24 +764,32 @@ class ThemeService {
|
|
|
707
764
|
this.theme.next(theme);
|
|
708
765
|
LocalStorageService.set(THEME, theme);
|
|
709
766
|
}
|
|
710
|
-
toggleChange(ev) {
|
|
711
|
-
console.log('💡 ThemeConfig toggleChange ev::: ', ev);
|
|
712
|
-
this.toggleTheme('dark', ev.detail.checked);
|
|
713
|
-
}
|
|
714
|
-
// Add or remove the class on the document body
|
|
715
767
|
toggleTheme(name, shouldAdd) {
|
|
768
|
+
console.log('toggleTheme::: ', name, shouldAdd);
|
|
716
769
|
document.body.classList.toggle(name, shouldAdd);
|
|
717
770
|
}
|
|
718
771
|
toggleUserPreference(option) {
|
|
719
|
-
console.log('💡 ThemeConfig toggleUserPreference option::: ', option);
|
|
720
|
-
this.lightToggle = option == ThemeOption.LIGHT;
|
|
721
|
-
this.toggleTheme(ThemeOption.LIGHT, this.lightToggle);
|
|
722
|
-
this.darkToggle = option == ThemeOption.DARK;
|
|
723
|
-
this.toggleTheme(ThemeOption.DARK, this.darkToggle);
|
|
724
|
-
this.autoToggle = option == ThemeOption.AUTO;
|
|
725
|
-
this.toggleTheme(this.autoToggle ? (this.prefersDark ? ThemeOption.DARK : ThemeOption.LIGHT) : this.currentOption, this.autoToggle);
|
|
726
|
-
this.Theme = option;
|
|
727
772
|
this.currentOption = option;
|
|
773
|
+
this.Theme = option;
|
|
774
|
+
this.lightToggle = option === ThemeOption.LIGHT;
|
|
775
|
+
this.darkToggle = option === ThemeOption.DARK;
|
|
776
|
+
this.autoToggle = option === ThemeOption.AUTO;
|
|
777
|
+
switch (option) {
|
|
778
|
+
case ThemeOption.LIGHT:
|
|
779
|
+
this.handleLightPreference();
|
|
780
|
+
break;
|
|
781
|
+
case ThemeOption.DARK:
|
|
782
|
+
this.handleDarkPreference();
|
|
783
|
+
break;
|
|
784
|
+
case ThemeOption.AUTO:
|
|
785
|
+
if (this.prefersDark) {
|
|
786
|
+
this.handleDarkPreference();
|
|
787
|
+
}
|
|
788
|
+
else {
|
|
789
|
+
this.handleLightPreference();
|
|
790
|
+
}
|
|
791
|
+
break;
|
|
792
|
+
}
|
|
728
793
|
}
|
|
729
794
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
730
795
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ThemeService, providedIn: 'root' }); }
|
|
@@ -738,19 +803,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
738
803
|
|
|
739
804
|
const ValtechConfigService = new InjectionToken('ValtechConfig');
|
|
740
805
|
class ValtechComponentsModule {
|
|
741
|
-
static forRoot(config) {
|
|
742
|
-
return {
|
|
743
|
-
ngModule: ValtechComponentsModule,
|
|
744
|
-
providers: [
|
|
745
|
-
LangService,
|
|
746
|
-
ThemeService,
|
|
747
|
-
{
|
|
748
|
-
provide: ValtechConfigService,
|
|
749
|
-
useValue: config,
|
|
750
|
-
},
|
|
751
|
-
],
|
|
752
|
-
};
|
|
753
|
-
}
|
|
754
806
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
755
807
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule, declarations: [ButtonComponent,
|
|
756
808
|
BoxComponent,
|
|
@@ -785,7 +837,11 @@ class ValtechComponentsModule {
|
|
|
785
837
|
AlertBoxComponent,
|
|
786
838
|
BannerComponent,
|
|
787
839
|
NotesBoxComponent] }); }
|
|
788
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule,
|
|
840
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule, providers: [
|
|
841
|
+
DownloadService,
|
|
842
|
+
LangService,
|
|
843
|
+
ThemeService,
|
|
844
|
+
], imports: [CommonModule, HttpClientModule, IonicModule] }); }
|
|
789
845
|
}
|
|
790
846
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ValtechComponentsModule, decorators: [{
|
|
791
847
|
type: NgModule,
|
|
@@ -829,6 +885,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
829
885
|
BannerComponent,
|
|
830
886
|
NotesBoxComponent,
|
|
831
887
|
],
|
|
888
|
+
providers: [
|
|
889
|
+
DownloadService,
|
|
890
|
+
LangService,
|
|
891
|
+
ThemeService,
|
|
892
|
+
],
|
|
832
893
|
}]
|
|
833
894
|
}] });
|
|
834
895
|
|
|
@@ -872,5 +933,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
872
933
|
* Generated bundle index. Do not edit.
|
|
873
934
|
*/
|
|
874
935
|
|
|
875
|
-
export { AlertBoxComponent, AvatarComponent, BannerComponent, BaseDefault, BoxComponent, ButtonComponent, ButtonGroupComponent, ClearDefault, ClearDefaultBlock, ClearDefaultFull, ClearDefaultRound, ClearDefaultRoundBlock, ClearDefaultRoundFull, ComponentStates, ContentLoaderComponent, DisplayComponent, DividerComponent, Icon, IconComponent, LangOption, LangService, LinkComponent, LocalStorageService, NotesBoxComponent, OutlineDefault, OutlineDefaultBlock, OutlineDefaultFull, OutlineDefaultRound, OutlineDefaultRoundBlock, OutlineDefaultRoundFull, PrimarySolidBlockButton, PrimarySolidBlockHrefButton, PrimarySolidBlockIconButton, PrimarySolidBlockIconHrefButton, PrimarySolidDefaultRoundButton, PrimarySolidDefaultRoundHrefButton, PrimarySolidDefaultRoundIconButton, PrimarySolidDefaultRoundIconHrefButton, PrimarySolidFullButton, PrimarySolidFullHrefButton, PrimarySolidFullIconButton, PrimarySolidFullIconHrefButton, PrimarySolidLargeRoundButton, PrimarySolidLargeRoundHrefButton, PrimarySolidLargeRoundIconButton, PrimarySolidLargeRoundIconHrefButton, PrimarySolidSmallRoundButton, PrimarySolidSmallRoundHrefButton, PrimarySolidSmallRoundIconButton, PrimarySolidSmallRoundIconHrefButton, SearchbarComponent, SecondarySolidBlockButton, SecondarySolidBlockHrefButton, SecondarySolidBlockIconButton, SecondarySolidBlockIconHrefButton, SecondarySolidDefaultRoundButton, SecondarySolidDefaultRoundHrefButton, SecondarySolidDefaultRoundIconButton, SecondarySolidDefaultRoundIconHrefButton, SecondarySolidFullButton, SecondarySolidFullHrefButton, SecondarySolidFullIconButton, SecondarySolidFullIconHrefButton, SecondarySolidLargeRoundButton, SecondarySolidLargeRoundHrefButton, SecondarySolidLargeRoundIconButton, SecondarySolidLargeRoundIconHrefButton, SecondarySolidSmallRoundButton, SecondarySolidSmallRoundHrefButton, SecondarySolidSmallRoundIconButton, SecondarySolidSmallRoundIconHrefButton, SolidBlockButton, SolidDefault, SolidDefaultBlock, SolidDefaultButton, SolidDefaultFull, SolidDefaultRound, SolidDefaultRoundBlock, SolidDefaultRoundButton, SolidDefaultRoundFull, SolidFullButton, SolidLargeButton, SolidLargeRoundButton, SolidSmallButton, SolidSmallRoundButton, TextComponent, TextContent, ThemeOption, ThemeService, TitleBlockComponent, TitleComponent, ToolbarComponent, ValtechComponentsModule, ValtechConfigService };
|
|
936
|
+
export { AlertBoxComponent, AvatarComponent, BannerComponent, BaseDefault, BoxComponent, ButtonComponent, ButtonGroupComponent, ClearDefault, ClearDefaultBlock, ClearDefaultFull, ClearDefaultRound, ClearDefaultRoundBlock, ClearDefaultRoundFull, ComponentStates, ContentLoaderComponent, DisplayComponent, DividerComponent, DownloadService, Icon, IconComponent, LangOption, LangService, LinkComponent, LocalStorageService, NotesBoxComponent, OutlineDefault, OutlineDefaultBlock, OutlineDefaultFull, OutlineDefaultRound, OutlineDefaultRoundBlock, OutlineDefaultRoundFull, PrimarySolidBlockButton, PrimarySolidBlockHrefButton, PrimarySolidBlockIconButton, PrimarySolidBlockIconHrefButton, PrimarySolidDefaultRoundButton, PrimarySolidDefaultRoundHrefButton, PrimarySolidDefaultRoundIconButton, PrimarySolidDefaultRoundIconHrefButton, PrimarySolidFullButton, PrimarySolidFullHrefButton, PrimarySolidFullIconButton, PrimarySolidFullIconHrefButton, PrimarySolidLargeRoundButton, PrimarySolidLargeRoundHrefButton, PrimarySolidLargeRoundIconButton, PrimarySolidLargeRoundIconHrefButton, PrimarySolidSmallRoundButton, PrimarySolidSmallRoundHrefButton, PrimarySolidSmallRoundIconButton, PrimarySolidSmallRoundIconHrefButton, SearchbarComponent, SecondarySolidBlockButton, SecondarySolidBlockHrefButton, SecondarySolidBlockIconButton, SecondarySolidBlockIconHrefButton, SecondarySolidDefaultRoundButton, SecondarySolidDefaultRoundHrefButton, SecondarySolidDefaultRoundIconButton, SecondarySolidDefaultRoundIconHrefButton, SecondarySolidFullButton, SecondarySolidFullHrefButton, SecondarySolidFullIconButton, SecondarySolidFullIconHrefButton, SecondarySolidLargeRoundButton, SecondarySolidLargeRoundHrefButton, SecondarySolidLargeRoundIconButton, SecondarySolidLargeRoundIconHrefButton, SecondarySolidSmallRoundButton, SecondarySolidSmallRoundHrefButton, SecondarySolidSmallRoundIconButton, SecondarySolidSmallRoundIconHrefButton, SolidBlockButton, SolidDefault, SolidDefaultBlock, SolidDefaultButton, SolidDefaultFull, SolidDefaultRound, SolidDefaultRoundBlock, SolidDefaultRoundButton, SolidDefaultRoundFull, SolidFullButton, SolidLargeButton, SolidLargeRoundButton, SolidSmallButton, SolidSmallRoundButton, TextComponent, TextContent, ThemeOption, ThemeService, TitleBlockComponent, TitleComponent, ToolbarComponent, ValtechComponentsModule, ValtechConfigService };
|
|
876
937
|
//# sourceMappingURL=valtech-components.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"valtech-components.mjs","sources":["../../../projects/valtech-components/src/lib/components/types.ts","../../../projects/valtech-components/src/lib/components/atoms/button/button.component.ts","../../../projects/valtech-components/src/lib/components/atoms/button/button.component.html","../../../projects/valtech-components/src/lib/components/atoms/button/factory.ts","../../../projects/valtech-components/src/lib/components/atoms/text/text.component.ts","../../../projects/valtech-components/src/lib/components/atoms/text/text.component.html","../../../projects/valtech-components/src/lib/components/atoms/title/title.component.ts","../../../projects/valtech-components/src/lib/components/atoms/title/title.component.html","../../../projects/valtech-components/src/lib/components/atoms/display/display.component.ts","../../../projects/valtech-components/src/lib/components/atoms/display/display.component.html","../../../projects/valtech-components/src/lib/components/atoms/avatar/avatar.component.ts","../../../projects/valtech-components/src/lib/components/atoms/avatar/avatar.component.html","../../../projects/valtech-components/src/lib/components/atoms/divider/divider.component.ts","../../../projects/valtech-components/src/lib/components/atoms/divider/divider.component.html","../../../projects/valtech-components/src/lib/components/atoms/box/box.component.ts","../../../projects/valtech-components/src/lib/components/atoms/box/box.component.html","../../../projects/valtech-components/src/lib/components/atoms/icon/icon.component.ts","../../../projects/valtech-components/src/lib/components/atoms/icon/icon.component.html","../../../projects/valtech-components/src/lib/components/molecules/content-loader/content-loader.component.ts","../../../projects/valtech-components/src/lib/components/molecules/content-loader/content-loader.component.html","../../../projects/valtech-components/src/lib/components/molecules/link/link.component.ts","../../../projects/valtech-components/src/lib/components/molecules/link/link.component.html","../../../projects/valtech-components/src/lib/components/molecules/searchbar/searchbar.component.ts","../../../projects/valtech-components/src/lib/components/molecules/searchbar/searchbar.component.html","../../../projects/valtech-components/src/lib/components/molecules/button-group/button-group.component.ts","../../../projects/valtech-components/src/lib/components/molecules/button-group/button-group.component.html","../../../projects/valtech-components/src/lib/components/molecules/title-block/title-block.component.ts","../../../projects/valtech-components/src/lib/components/molecules/title-block/title-block.component.html","../../../projects/valtech-components/src/lib/components/molecules/notes-box/notes-box.component.ts","../../../projects/valtech-components/src/lib/components/molecules/notes-box/notes-box.component.html","../../../projects/valtech-components/src/lib/components/molecules/alert-box/alert-box.component.ts","../../../projects/valtech-components/src/lib/components/molecules/alert-box/alert-box.component.html","../../../projects/valtech-components/src/lib/components/organisms/toolbar/toolbar.component.ts","../../../projects/valtech-components/src/lib/components/organisms/toolbar/toolbar.component.html","../../../projects/valtech-components/src/lib/components/organisms/banner/banner.component.ts","../../../projects/valtech-components/src/lib/components/organisms/banner/banner.component.html","../../../projects/valtech-components/src/lib/services/lang-provider/types.ts","../../../projects/valtech-components/src/lib/services/local-storage.service.ts","../../../projects/valtech-components/src/lib/shared/contants/storage.ts","../../../projects/valtech-components/src/lib/services/theme.service.ts","../../../projects/valtech-components/src/lib/valtech-components.module.ts","../../../projects/valtech-components/src/lib/services/lang-provider/lang-provider.service.ts","../../../projects/valtech-components/src/public-api.ts","../../../projects/valtech-components/src/valtech-components.ts"],"sourcesContent":["export type ComponentState = 'ENABLED' | 'DISABLED' | 'WORKING';\nconst ENABLED: ComponentState = 'ENABLED';\nconst DISABLED: ComponentState = 'DISABLED';\nconst WORKING: ComponentState = 'WORKING';\nexport const ComponentStates = { ENABLED, DISABLED, WORKING };\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { ButtonMetadata } from './types';\nimport { ComponentStates } from '../../types';\n\n@Component({\n selector: 'val-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n})\nexport class ButtonComponent implements OnInit {\n states = ComponentStates;\n\n @Input()\n props!: ButtonMetadata;\n\n @Output()\n onClick = new EventEmitter<string>();\n\n constructor() {}\n\n ngOnInit() {}\n\n clickHandler() {\n this.onClick.emit(this.props.token);\n }\n}\n","<ion-button\n [type]=\"props.type\"\n [color]=\"props.color\"\n [expand]=\"props.expand\"\n [fill]=\"props.fill\"\n [size]=\"props.size\"\n [href]=\"props.href\"\n [target]=\"props.target\"\n [download]=\"props.download\"\n [shape]=\"props.shape\"\n (click)=\"clickHandler()\"\n>\n <ion-icon *ngIf=\"props.icon\" [slot]=\"props.icon.slot\" [name]=\"props.icon.name\"></ion-icon>\n <ion-spinner *ngIf=\"props.state === states.WORKING\" name=\"circular\"></ion-spinner>\n <ion-text *ngIf=\"props.state !== states.WORKING\">{{ props.text }}</ion-text>\n</ion-button>\n","import { ButtonMetadata, IconMetada } from './types';\n\nexport const Icon = (name: string, slot: 'start' | 'end'): IconMetada => {\n return {\n name,\n slot,\n };\n};\n\n/* name convention: COLOR FILL SIZE [optionals: SHAPE EXPAND ICON HREF/DOWNLOAD] TYPE */\n\nexport const BaseDefault = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return {\n color: 'primary',\n state: 'ENABLED',\n text,\n size: 'default',\n type,\n };\n};\n\nexport const ClearDefault = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...BaseDefault(text, type), fill: 'clear' };\n};\n\nexport const ClearDefaultRound = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefault(text, type), shape: 'round' };\n};\n\nexport const SolidDefault = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...BaseDefault(text, type), fill: 'solid' };\n};\n\nexport const SolidDefaultRound = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefault(text, type), shape: 'round' };\n};\n\nexport const OutlineDefault = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...BaseDefault(text, type), fill: 'outline' };\n};\n\nexport const OutlineDefaultRound = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefault(text, type), shape: 'round' };\n};\n\nexport const ClearDefaultFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefault(text, type), expand: 'full' };\n};\n\nexport const ClearDefaultRoundFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefaultRound(text, type), expand: 'full' };\n};\n\nexport const ClearDefaultBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefault(text, type), expand: 'block' };\n};\n\nexport const ClearDefaultRoundBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefaultRound(text, type), expand: 'block' };\n};\n\nexport const SolidDefaultFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefault(text, type), expand: 'full' };\n};\n\nexport const SolidDefaultRoundFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefaultRound(text, type), expand: 'full' };\n};\n\nexport const SolidDefaultBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefault(text, type), expand: 'block' };\n};\n\nexport const SolidDefaultRoundBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefaultRound(text, type), expand: 'block' };\n};\n\nexport const OutlineDefaultFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefault(text, type), expand: 'full' };\n};\n\nexport const OutlineDefaultRoundFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefaultRound(text, type), expand: 'full' };\n};\n\nexport const OutlineDefaultBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefault(text, type), expand: 'block' };\n};\n\nexport const OutlineDefaultRoundBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefaultRound(text, type), expand: 'block' };\n};\n\nexport const SolidDefaultButton = (text: string): ButtonMetadata => {\n return SolidDefault(text, 'button');\n};\n\nexport const SolidSmallButton = (text: string): ButtonMetadata => {\n return { ...SolidDefault(text, 'button'), size: 'small' };\n};\n\nexport const SolidLargeButton = (text: string): ButtonMetadata => {\n return { ...SolidDefault(text, 'button'), size: 'large' };\n};\n\nexport const SolidDefaultRoundButton = (text: string): ButtonMetadata => {\n return SolidDefaultRound(text, 'button');\n};\n\nexport const SolidSmallRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidDefaultRound(text, 'button'), size: 'small' };\n};\n\nexport const SolidLargeRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidDefaultRound(text, 'button'), size: 'large' };\n};\n\nexport const SolidFullButton = (text: string): ButtonMetadata => {\n return SolidDefaultFull(text, 'button');\n};\n\nexport const SolidBlockButton = (text: string): ButtonMetadata => {\n return SolidDefaultBlock(text, 'button');\n};\n\n/** PRIMARY */\n\nexport const PrimarySolidDefaultRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidDefaultRoundButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidDefaultRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidDefaultRoundButton(text), icon };\n};\n\nexport const PrimarySolidDefaultRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidDefaultRoundButton(text), href, target };\n};\n\nexport const PrimarySolidDefaultRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidDefaultRoundIconButton(text, icon), href, target };\n};\n\nexport const PrimarySolidSmallRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidSmallRoundButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidSmallRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidSmallRoundButton(text), icon };\n};\n\nexport const PrimarySolidSmallRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidSmallRoundButton(text), href, target };\n};\n\nexport const PrimarySolidSmallRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidSmallRoundIconButton(text, icon), href, target };\n};\n\nexport const PrimarySolidLargeRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidLargeRoundButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidLargeRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidLargeRoundButton(text), icon };\n};\n\nexport const PrimarySolidLargeRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidLargeRoundButton(text), href, target };\n};\n\nexport const PrimarySolidLargeRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidLargeRoundIconButton(text, icon), href, target };\n};\n\nexport const PrimarySolidBlockButton = (text: string): ButtonMetadata => {\n return { ...SolidBlockButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidBlockIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidBlockButton(text), icon };\n};\n\nexport const PrimarySolidBlockHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidBlockButton(text), href, target };\n};\n\nexport const PrimarySolidBlockIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidBlockIconButton(text, icon), href, target };\n};\n\nexport const PrimarySolidFullButton = (text: string): ButtonMetadata => {\n return { ...SolidFullButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidFullIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidFullButton(text), icon };\n};\n\nexport const PrimarySolidFullHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidFullButton(text), href, target };\n};\n\nexport const PrimarySolidFullIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidFullIconButton(text, icon), href, target };\n};\n\n/** SECONDARY */\n\nexport const SecondarySolidDefaultRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidDefaultRoundButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidDefaultRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidDefaultRoundButton(text), icon };\n};\n\nexport const SecondarySolidDefaultRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidDefaultRoundButton(text), href, target };\n};\n\nexport const SecondarySolidDefaultRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidDefaultRoundIconButton(text, icon), href, target };\n};\n\nexport const SecondarySolidSmallRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidSmallRoundButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidSmallRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidSmallRoundButton(text), icon };\n};\n\nexport const SecondarySolidSmallRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidSmallRoundButton(text), href, target };\n};\n\nexport const SecondarySolidSmallRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidSmallRoundIconButton(text, icon), href, target };\n};\n\nexport const SecondarySolidLargeRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidLargeRoundButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidLargeRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidLargeRoundButton(text), icon };\n};\n\nexport const SecondarySolidLargeRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidLargeRoundButton(text), href, target };\n};\n\nexport const SecondarySolidLargeRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidLargeRoundIconButton(text, icon), href, target };\n};\n\nexport const SecondarySolidFullButton = (text: string): ButtonMetadata => {\n return { ...SolidFullButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidFullIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidFullButton(text), icon };\n};\n\nexport const SecondarySolidFullHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidFullButton(text), href, target };\n};\n\nexport const SecondarySolidFullIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidFullIconButton(text, icon), href, target };\n};\n\nexport const SecondarySolidBlockButton = (text: string): ButtonMetadata => {\n return { ...SolidBlockButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidBlockIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidBlockButton(text), icon };\n};\n\nexport const SecondarySolidBlockHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidBlockButton(text), href, target };\n};\n\nexport const SecondarySolidBlockIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidBlockIconButton(text, icon), href, target };\n};\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-text',\n templateUrl: './text.component.html',\n styleUrls: ['./text.component.scss'],\n})\nexport class TextComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge';\n @Input()\n color: Color;\n @Input()\n content: string;\n @Input()\n bold: boolean = false;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<ion-text [color]=\"color\">\n <p [class]=\"size\" [class.bold]=\"bold\">\n {{ content }}\n </p>\n</ion-text>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-title',\n templateUrl: './title.component.html',\n styleUrls: ['./title.component.scss'],\n})\nexport class TitleComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge';\n @Input()\n color: Color;\n @Input()\n content: string;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<ion-text [color]=\"color\">\n <p [class]=\"size\">\n {{ content }}\n </p>\n</ion-text>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-display',\n templateUrl: './display.component.html',\n styleUrls: ['./display.component.scss'],\n})\nexport class DisplayComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge';\n @Input()\n color: Color;\n @Input()\n content: string;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<ion-text [color]=\"color\">\n <p [class]=\"size\">\n {{ content }}\n </p>\n</ion-text>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'val-avatar',\n templateUrl: './avatar.component.html',\n styleUrls: ['./avatar.component.scss'],\n})\nexport class AvatarComponent implements OnInit {\n @Input()\n image: string;\n @Input()\n default: string;\n @Input()\n size: 'small' | 'medium' | 'large' = 'medium';\n @Input()\n box: boolean = false;\n\n @Output()\n onClick = new EventEmitter();\n\n constructor() {}\n\n ngOnInit() {}\n\n onClickHandler() {\n this.onClick.emit();\n }\n}\n","<ion-avatar [class]=\"size\" [class.box]=\"box\" (click)=\"onClickHandler()\">\n <img alt=\"profile image\" [src]=\"image || default\" />\n</ion-avatar>\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'val-divider',\n templateUrl: './divider.component.html',\n styleUrls: ['./divider.component.scss'],\n})\nexport class DividerComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' = 'small';\n @Input()\n color: 'primary' | 'secondary' | 'dark' | 'light' | 'medium' = 'dark';\n @Input()\n fill: 'solid' | 'gradient' = 'solid';\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<div [ngClass]=\"['divider', size, color, fill]\"></div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-box',\n templateUrl: './box.component.html',\n styleUrls: ['./box.component.scss'],\n})\nexport class BoxComponent implements OnInit {\n @Input()\n color: Color = 'dark';\n @Input()\n icon: string;\n @Input()\n bordered: boolean = false;\n @Input()\n leftBorder: boolean = false;\n \n @Output()\n onClick = new EventEmitter();\n \n constructor() { }\n\n ngOnInit() {}\n\n clickHandler() {\n this.onClick.emit();\n }\n}\n","<ion-card class=\"box\" [color]=\"color\" [class.bordered]=\"bordered\" [class.left-border]=\"leftBorder\">\n <ion-icon *ngIf=\"!!icon\" class=\"icon\" [name]=\"icon\" (click)=\"clickHandler()\"></ion-icon>\n <ng-content select=\"[body]\"></ng-content>\n</ion-card>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-icon',\n templateUrl: './icon.component.html',\n styleUrls: ['./icon.component.scss'],\n})\nexport class IconComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge' = 'small';\n @Input()\n color: Color;\n @Input()\n name: string;\n\n constructor() {}\n\n ngOnInit() {}\n}","<ion-icon [ngClass]=\"[size]\" [name]=\"name\" [color]=\"color\"></ion-icon>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-content-loader',\n templateUrl: './content-loader.component.html',\n styleUrls: ['./content-loader.component.scss'],\n})\nexport class ContentLoaderComponent implements OnInit {\n @Input()\n color: Color = 'primary';\n @Input()\n size: 'small' | 'medium' | 'large' = 'small';\n @Input()\n name: 'circular' | 'crescent' | 'dots' | 'lines-sharp' = 'circular';\n @Input()\n text: string;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<div [ngClass]=\"['spinner-wrapper', size]\">\n <ion-spinner [ngClass]=\"[size]\" [name]=\"name\" [color]=\"color\"></ion-spinner>\n <ion-text [color]=\"color\">\n <p>{{ text }}</p>\n </ion-text>\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-link',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n})\nexport class LinkComponent implements OnInit {\n @Input()\n text: string;\n @Input()\n size: 'small' | 'default' | 'large';\n @Input()\n color: Color;\n\n @Output()\n onClick = new EventEmitter();\n\n constructor() {}\n\n ngOnInit() {}\n\n onClickHandler() {\n this.onClick.emit();\n }\n}\n","<div>\n <ion-button type=\"button\" [color]=\"color\" fill=\"clear\" [size]=\"size\" (click)=\"onClickHandler()\">\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n <ion-text>{{ text }}</ion-text>\n </ion-button>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'app-searchbar',\n templateUrl: './searchbar.component.html',\n styleUrls: ['./searchbar.component.scss'],\n})\nexport class SearchbarComponent {\n @Input() disabled: boolean;\n\n @Output() focusEvent = new EventEmitter<void>();\n\n @Output() blurEvent = new EventEmitter<void>();\n\n @Output() filterEvent = new EventEmitter<string>();\n\n constructor() {}\n\n onSearch($event: any) {\n const searchTerm = $event.detail.value\n this.filterEvent.emit(searchTerm);\n }\n\n onFocus() {\n this.focusEvent.emit();\n }\n\n onBlur() {\n this.blurEvent.emit();\n }\n}\n","<ion-searchbar mode=\"ios\" debounce=\"500\" placeholder=\"Búsqueda\" [disabled]=\"disabled\"\n showCancelButton=\"focus\" cancelButtonText=\"Cancelar\" (ionInput)=\"onSearch($event)\" \n (ionBlur)=\"onBlur()\" (ionFocus)=\"onFocus()\">\n</ion-searchbar>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { ButtonMetadata } from '../../atoms/button/types';\n\n@Component({\n selector: 'val-button-group',\n templateUrl: './button-group.component.html',\n styleUrls: ['./button-group.component.scss'],\n})\nexport class ButtonGroupComponent implements OnInit {\n @Input()\n buttons: ButtonMetadata[];\n @Input()\n position: 'center' | 'left' | 'right' = 'left';\n\n @Output()\n onClick = new EventEmitter<string>();\n\n constructor() {}\n\n ngOnInit() {}\n\n clickHandler(token?: string) {\n this.onClick.emit(token);\n }\n}\n","<div [ngClass]=\"['group-container', position]\">\n <val-button *ngFor=\"let b of buttons\" [props]=\"b\" (click)=\"clickHandler(b?.token)\"></val-button>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { TitleMetada } from './types';\n\n@Component({\n selector: 'val-title-block',\n templateUrl: './title-block.component.html',\n styleUrls: ['./title-block.component.scss'],\n})\nexport class TitleBlockComponent implements OnInit {\n @Input()\n position: 'center' | 'left' | 'right' = 'left';\n @Input()\n title: TitleMetada;\n @Input()\n aboveTitle: TitleMetada;\n @Input()\n bellowTitle: TitleMetada;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<div [ngClass]=\"['titles-container', position]\">\n <val-title\n *ngIf=\"aboveTitle\"\n [size]=\"aboveTitle.size\"\n [color]=\"aboveTitle.color\"\n content=\"{{ aboveTitle.text | uppercase }}\"\n ></val-title>\n <val-display\n *ngIf=\"title\"\n [size]=\"title.size\"\n [color]=\"title.color\"\n [content]=\"title.text\"\n ></val-display>\n <val-title\n *ngIf=\"bellowTitle\"\n [size]=\"bellowTitle.size\"\n [color]=\"bellowTitle.color\"\n [content]=\"bellowTitle.text\"\n ></val-title>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-notes-box',\n templateUrl: './notes-box.component.html',\n styleUrls: ['./notes-box.component.scss'],\n})\nexport class NotesBoxComponent implements OnInit {\n @Input()\n color: Color = 'light';\n @Input()\n textColor: Color;\n @Input()\n prefix: string;\n @Input()\n text: string;\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge' = 'small';\n\n constructor() { }\n\n ngOnInit() {}\n\n}\n","<val-box [color]=\"color\" icon=\"\" [bordered]=\"false\" [leftBorder]=\"true\">\n <div [ngClass]=\"['content-container', size]\" body>\n <val-text [content]=\"prefix\" [size]=\"size\" [bold]=\"true\" [color]=\"textColor\"></val-text>\n <val-text [content]=\"text\" [size]=\"size\" [bold]=\"false\" [color]=\"textColor\"></val-text>\n </div>\n</val-box>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-alert-box',\n templateUrl: './alert-box.component.html',\n styleUrls: ['./alert-box.component.scss'],\n})\nexport class AlertBoxComponent implements OnInit {\n @Input()\n color: Color = 'warning';\n @Input()\n icon: string = 'alert-circle-outline';\n @Input()\n text: string;\n @Input()\n bold: boolean = false;\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge' = 'small';\n\n constructor() { }\n\n ngOnInit() {}\n\n}\n","<val-box [color]=\"color\" icon=\"\" [bordered]=\"false\">\n <div class=\"content-container\" body>\n <val-icon [name]=\"icon\" [size]=\"size\"></val-icon>\n <val-text class=\"text\" [content]=\"text\" [size]=\"size\" [bold]=\"bold\"></val-text>\n </div>\n</val-box>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { NavController } from '@ionic/angular';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-toolbar',\n templateUrl: './toolbar.component.html',\n styleUrls: ['./toolbar.component.scss'],\n})\nexport class ToolbarComponent implements OnInit {\n @Input()\n withBack: boolean = false;\n @Input()\n backText: string = '';\n @Input()\n withActions: boolean = false;\n @Input()\n color: Color = '';\n @Input()\n textColor: Color = '';\n @Input()\n title: string;\n\n constructor(private navCtrl: NavController) { }\n\n ngOnInit() {}\n\n goBack(): void {\n this.navCtrl.back();\n }\n}\n","<ion-toolbar [color]=\"color\">\n <ion-buttons class=\"left-buttons\" slot=\"start\" *ngIf=\"withBack\">\n <ion-button fill=\"clear\" (click)=\"goBack()\" [color]=\"textColor\">\n <ion-icon name=\"chevron-back-outline\" [slot]=\"backText ? 'start' : 'icon-only'\"></ion-icon>\n <ion-text *ngIf=\"backText\">{{ backText }}</ion-text>\n </ion-button>\n </ion-buttons>\n <ion-buttons slot=\"end\" *ngIf=\"withActions\">\n <ng-content select=\"[toolbar-right-side]\"></ng-content>\n </ion-buttons>\n <ion-title [color]=\"textColor\">{{ title }}</ion-title>\n</ion-toolbar>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { BannerMetadata } from './types';\n\n@Component({\n selector: 'val-banner',\n templateUrl: './banner.component.html',\n styleUrls: ['./banner.component.scss'],\n})\nexport class BannerComponent implements OnInit {\n @Input()\n props: BannerMetadata;\n\n @Output()\n onClick = new EventEmitter<string>();\n\n @Output()\n onClose = new EventEmitter();\n\n constructor() {}\n\n ngOnInit() {}\n\n clickHandler(token?: string) {\n this.onClick.emit(token);\n }\n\n closeHandler() {\n this.onClose.emit();\n }\n}\n","<val-box\n color=\"light\"\n [icon]=\"props.closable ? 'close-outline' : ''\"\n [bordered]=\"props.bordered\"\n (onClick)=\"closeHandler()\"\n>\n <div [ngClass]=\"['content-container', props.mode]\" body>\n <val-title-block\n [position]=\"props.mode === 'center' ? 'center' : 'left'\"\n [aboveTitle]=\"props.content.aboveTitle\"\n [title]=\"props.content.title\"\n [bellowTitle]=\"props.content.bellowTitle\"\n ></val-title-block>\n <val-button-group\n [position]=\"props.mode === 'center' ? 'center' : 'left'\"\n class=\"buttons-container\"\n [buttons]=\"props.actions\"\n (onClick)=\"clickHandler($event)\"\n ></val-button-group>\n </div>\n</val-box>\n","export type LanguageText = {\n [key: string]: string;\n};\n\nexport type LanguagesContent = {\n [key: string]: LanguageText;\n};\n\nexport type ContentProvider = {\n [x: string]: TextContent;\n};\n\nexport class TextContent {\n text: LanguagesContent;\n constructor(text: LanguagesContent) {\n this.text = text;\n }\n\n get Content(): LanguagesContent {\n return this.text;\n }\n}\n\nexport enum LangOption {\n ES = 'es',\n EN = 'en',\n}\n","export class LocalStorageService {\n static set<T>(reference: string, value: T): void {\n localStorage.setItem(reference, JSON.stringify(value));\n }\n\n static get<T>(reference: string): T {\n const value = localStorage.getItem(reference);\n return JSON.parse(value) as T;\n }\n\n static remove(reference: string): void {\n localStorage.removeItem(reference);\n }\n\n static clear() {\n localStorage.clear();\n }\n}\n","export const LANG = 'LANG';\nexport const THEME = 'THEME';","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { LocalStorageService } from './local-storage.service';\nimport { THEME } from '../shared/contants/storage';\n\nexport enum ThemeOption {\n LIGHT = 'light',\n DARK = 'dark',\n AUTO = 'auto',\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ThemeService {\n lightToggle = false;\n darkToggle = false;\n autoToggle = false;\n currentOption = ThemeOption.AUTO;\n themeOptions = ThemeOption;\n prefersDark = false;\n default = ThemeOption.AUTO;\n theme: BehaviorSubject<ThemeOption>;\n\n constructor() {\n const current = LocalStorageService.get<ThemeOption>(THEME);\n this.theme = new BehaviorSubject<ThemeOption>(current || this.default);\n\n // Use matchMedia to check the user preference\n const prefersDark = window.matchMedia('(prefers-color-scheme: dark)');\n console.log('💡 ThemeConfig prefersDark::: ', prefersDark);\n // value of the prefers-color-scheme media query\n this.prefersDark = prefersDark.matches;\n // get the current persisted preference\n this.currentOption = this.Theme;\n console.log('💡 ThemeConfig this.currentOption::: ', this.currentOption);\n this.toggleUserPreference(this.currentOption);\n // Listen for changes to the prefers-color-scheme media query\n prefersDark.addEventListener('change', (mediaQuery) => {\n console.log('💡 ThemeConfig addEventListener change::: ', mediaQuery);\n this.prefersDark = mediaQuery.matches;\n this.toggleUserPreference(this.currentOption);\n });\n }\n\n get Theme(): ThemeOption {\n return this.theme.value;\n }\n\n set Theme(theme: ThemeOption) {\n this.theme.next(theme);\n LocalStorageService.set<ThemeOption>(THEME, theme);\n }\n\n toggleChange(ev) {\n console.log('💡 ThemeConfig toggleChange ev::: ', ev);\n this.toggleTheme('dark', ev.detail.checked);\n }\n\n // Add or remove the class on the document body\n toggleTheme(name: string, shouldAdd: boolean) {\n document.body.classList.toggle(name, shouldAdd);\n }\n\n toggleUserPreference(option: ThemeOption) {\n console.log('💡 ThemeConfig toggleUserPreference option::: ', option);\n\n this.lightToggle = option == ThemeOption.LIGHT;\n this.toggleTheme(ThemeOption.LIGHT, this.lightToggle);\n this.darkToggle = option == ThemeOption.DARK;\n this.toggleTheme(ThemeOption.DARK, this.darkToggle);\n this.autoToggle = option == ThemeOption.AUTO;\n\n this.toggleTheme(\n this.autoToggle ? (this.prefersDark ? ThemeOption.DARK : ThemeOption.LIGHT) : this.currentOption,\n this.autoToggle,\n );\n\n this.Theme = option;\n this.currentOption = option;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule } from '@angular/common/http';\nimport { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core';\nimport { IonicModule } from '@ionic/angular';\nimport { ButtonComponent } from './components/atoms/button/button.component';\nimport { DisplayComponent } from './components/atoms/display/display.component';\nimport { TextComponent } from './components/atoms/text/text.component';\nimport { TitleComponent } from './components/atoms/title/title.component';\nimport { AvatarComponent } from './components/atoms/avatar/avatar.component';\nimport { DividerComponent } from './components/atoms/divider/divider.component';\nimport { ContentLoaderComponent } from './components/molecules/content-loader/content-loader.component';\nimport { LinkComponent } from './components/molecules/link/link.component';\nimport { SearchbarComponent } from './components/molecules/searchbar/searchbar.component';\nimport { ToolbarComponent } from './components/organisms/toolbar/toolbar.component';\nimport { Provider } from './services/lang-provider/content';\nimport { LangService } from './services/lang-provider/lang-provider.service';\nimport { ThemeService } from './services/theme.service';\nimport { BoxComponent } from './components/atoms/box/box.component';\nimport { IconComponent } from './components/atoms/icon/icon.component';\nimport { AlertBoxComponent } from './components/molecules/alert-box/alert-box.component';\nimport { ButtonGroupComponent } from './components/molecules/button-group/button-group.component';\nimport { TitleBlockComponent } from './components/molecules/title-block/title-block.component';\nimport { BannerComponent } from './components/organisms/banner/banner.component';\nimport { NotesBoxComponent } from './components/molecules/notes-box/notes-box.component';\n\nexport interface ValtechConfig {\n content: Provider;\n}\n\nexport const ValtechConfigService = new InjectionToken<ValtechConfig>('ValtechConfig');\n\n@NgModule({\n declarations: [\n ButtonComponent,\n BoxComponent,\n DisplayComponent,\n TextComponent,\n TitleComponent,\n AvatarComponent,\n DividerComponent,\n ContentLoaderComponent,\n LinkComponent,\n SearchbarComponent,\n ToolbarComponent,\n IconComponent,\n ButtonGroupComponent,\n TitleBlockComponent,\n AlertBoxComponent,\n BannerComponent,\n NotesBoxComponent,\n ],\n imports: [CommonModule, HttpClientModule, IonicModule],\n exports: [\n ButtonComponent,\n BoxComponent,\n DisplayComponent,\n TextComponent,\n TitleComponent,\n AvatarComponent,\n DividerComponent,\n ContentLoaderComponent,\n LinkComponent,\n SearchbarComponent,\n ToolbarComponent,\n IconComponent,\n ButtonGroupComponent,\n TitleBlockComponent,\n AlertBoxComponent,\n BannerComponent,\n NotesBoxComponent,\n ],\n})\nexport class ValtechComponentsModule {\n static forRoot(config: ValtechConfig): ModuleWithProviders<ValtechComponentsModule> {\n return {\n ngModule: ValtechComponentsModule,\n providers: [\n LangService,\n ThemeService,\n {\n provide: ValtechConfigService,\n useValue: config,\n },\n ],\n };\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport content from './content';\nimport { LangOption, LanguageText, ContentProvider } from './types';\nimport { LocalStorageService } from '../local-storage.service';\nimport { LANG } from '../../shared/contants/storage';\nimport { ValtechConfig, ValtechConfigService } from '../../valtech-components.module';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LangService {\n content: ContentProvider;\n default = LangOption.ES;\n selectedLang: BehaviorSubject<LangOption>;\n config: ValtechConfig;\n\n constructor(@Inject(ValtechConfigService) config: ValtechConfig) {\n console.log('injected config: ', config);\n this.content = config.content;\n this.config = config;\n const current = LocalStorageService.get<LangOption>(LANG);\n this.selectedLang = new BehaviorSubject<LangOption>(current || this.default);\n }\n\n Text(className: string): LanguageText {\n return this.content[className].Content[this.selectedLang.value];\n }\n\n get Lang(): LangOption {\n return this.selectedLang.value;\n }\n\n set Lang(lang: LangOption) {\n this.selectedLang.next(lang);\n LocalStorageService.set<LangOption>(LANG, lang);\n }\n}\n","/*\n * Public API Surface of valtech-components\n */\n\nexport * from './lib/components/atoms/button/button.component';\nexport * from './lib/components/atoms/button/types';\nexport * from './lib/components/atoms/button/factory';\nexport * from './lib/components/atoms/text/text.component';\nexport * from './lib/components/atoms/title/title.component';\nexport * from './lib/components/atoms/display/display.component';\nexport * from './lib/components/atoms/avatar/avatar.component';\nexport * from './lib/components/atoms/divider/divider.component';\nexport * from './lib/components/atoms/box/box.component';\nexport * from './lib/components/atoms/icon/icon.component';\n\nexport * from './lib/components/molecules/content-loader/content-loader.component';\nexport * from './lib/components/molecules/link/link.component';\nexport * from './lib/components/molecules/searchbar/searchbar.component';\nexport * from './lib/components/molecules/button-group/button-group.component';\nexport * from './lib/components/molecules/title-block/title-block.component';\nexport * from './lib/components/molecules/notes-box/notes-box.component';\nexport * from './lib/components/molecules/alert-box/alert-box.component';\n\nexport * from './lib/components/organisms/toolbar/toolbar.component';\nexport * from './lib/components/organisms/banner/banner.component';\n\nexport * from './lib/services/lang-provider/lang-provider.service';\nexport * from './lib/services/lang-provider/types';\nexport * from './lib/services/local-storage.service';\nexport * from './lib/services/theme.service';\n\nexport * from './lib/components/types';\nexport * from './lib/valtech-components.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1","i2.ButtonComponent","i2.DisplayComponent","i3.TitleComponent","i2.BoxComponent","i3.TextComponent","i1.BoxComponent","i2.TextComponent","i3.IconComponent","i3.ButtonGroupComponent","i4.TitleBlockComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"valtech-components.mjs","sources":["../../../projects/valtech-components/src/lib/components/types.ts","../../../projects/valtech-components/src/lib/services/download.service.ts","../../../projects/valtech-components/src/lib/components/atoms/button/button.component.ts","../../../projects/valtech-components/src/lib/components/atoms/button/button.component.html","../../../projects/valtech-components/src/lib/components/atoms/button/factory.ts","../../../projects/valtech-components/src/lib/components/atoms/text/text.component.ts","../../../projects/valtech-components/src/lib/components/atoms/text/text.component.html","../../../projects/valtech-components/src/lib/components/atoms/title/title.component.ts","../../../projects/valtech-components/src/lib/components/atoms/title/title.component.html","../../../projects/valtech-components/src/lib/components/atoms/display/display.component.ts","../../../projects/valtech-components/src/lib/components/atoms/display/display.component.html","../../../projects/valtech-components/src/lib/components/atoms/avatar/avatar.component.ts","../../../projects/valtech-components/src/lib/components/atoms/avatar/avatar.component.html","../../../projects/valtech-components/src/lib/components/atoms/divider/divider.component.ts","../../../projects/valtech-components/src/lib/components/atoms/divider/divider.component.html","../../../projects/valtech-components/src/lib/components/atoms/box/box.component.ts","../../../projects/valtech-components/src/lib/components/atoms/box/box.component.html","../../../projects/valtech-components/src/lib/components/atoms/icon/icon.component.ts","../../../projects/valtech-components/src/lib/components/atoms/icon/icon.component.html","../../../projects/valtech-components/src/lib/components/molecules/content-loader/content-loader.component.ts","../../../projects/valtech-components/src/lib/components/molecules/content-loader/content-loader.component.html","../../../projects/valtech-components/src/lib/components/molecules/link/link.component.ts","../../../projects/valtech-components/src/lib/components/molecules/link/link.component.html","../../../projects/valtech-components/src/lib/components/molecules/searchbar/searchbar.component.ts","../../../projects/valtech-components/src/lib/components/molecules/searchbar/searchbar.component.html","../../../projects/valtech-components/src/lib/components/molecules/button-group/button-group.component.ts","../../../projects/valtech-components/src/lib/components/molecules/button-group/button-group.component.html","../../../projects/valtech-components/src/lib/components/molecules/title-block/title-block.component.ts","../../../projects/valtech-components/src/lib/components/molecules/title-block/title-block.component.html","../../../projects/valtech-components/src/lib/components/molecules/notes-box/notes-box.component.ts","../../../projects/valtech-components/src/lib/components/molecules/notes-box/notes-box.component.html","../../../projects/valtech-components/src/lib/components/molecules/alert-box/alert-box.component.ts","../../../projects/valtech-components/src/lib/components/molecules/alert-box/alert-box.component.html","../../../projects/valtech-components/src/lib/components/organisms/toolbar/toolbar.component.ts","../../../projects/valtech-components/src/lib/components/organisms/toolbar/toolbar.component.html","../../../projects/valtech-components/src/lib/components/organisms/banner/banner.component.ts","../../../projects/valtech-components/src/lib/components/organisms/banner/banner.component.html","../../../projects/valtech-components/src/lib/services/lang-provider/types.ts","../../../projects/valtech-components/src/lib/services/local-storage.service.ts","../../../projects/valtech-components/src/lib/shared/contants/storage.ts","../../../projects/valtech-components/src/lib/services/theme.service.ts","../../../projects/valtech-components/src/lib/valtech-components.module.ts","../../../projects/valtech-components/src/lib/services/lang-provider/lang-provider.service.ts","../../../projects/valtech-components/src/public-api.ts","../../../projects/valtech-components/src/valtech-components.ts"],"sourcesContent":["export type ComponentState = 'ENABLED' | 'DISABLED' | 'WORKING';\nconst ENABLED: ComponentState = 'ENABLED';\nconst DISABLED: ComponentState = 'DISABLED';\nconst WORKING: ComponentState = 'WORKING';\nexport const ComponentStates = { ENABLED, DISABLED, WORKING };\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class DownloadService {\n getFileNameFromUrl(url: string): string {\n try {\n const pathSegments = url.split('/');\n const lastSegment = pathSegments[pathSegments.length - 1];\n const fileName = decodeURIComponent(lastSegment);\n return fileName;\n } catch (error) {\n console.error('Error al obtener nombre de archivo: ', JSON.stringify(error));\n return 'filename';\n }\n }\n\n downloadLinkFromBrowser(url: string): void {\n if (url) {\n const fileName = this.getFileNameFromUrl(url);\n const link = document.createElement('a');\n link.href = url;\n link.download = `${+new Date()}-${fileName}`;\n link.target = '_blank';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } else {\n console.error('La URL no está definida');\n }\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { ButtonMetadata } from './types';\nimport { ComponentStates } from '../../types';\nimport { DownloadService } from '../../../services/download.service';\n\n@Component({\n selector: 'val-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n})\nexport class ButtonComponent implements OnInit {\n states = ComponentStates;\n\n @Input()\n props!: ButtonMetadata;\n\n @Output()\n onClick = new EventEmitter<string>();\n\n constructor(private download: DownloadService) {}\n\n ngOnInit() {}\n\n clickHandler() {\n if (this.props.download) {\n this.download.downloadLinkFromBrowser(this.props.download);\n }\n this.onClick.emit(this.props.token);\n }\n}\n","<ion-button\n [type]=\"props.type\"\n [color]=\"props.color\"\n [expand]=\"props.expand\"\n [fill]=\"props.fill\"\n [size]=\"props.size\"\n [href]=\"props.href\"\n [target]=\"props.target\"\n [download]=\"props.download\"\n [shape]=\"props.shape\"\n (click)=\"clickHandler()\"\n>\n <ion-icon *ngIf=\"props.icon\" [slot]=\"props.icon.slot\" [name]=\"props.icon.name\"></ion-icon>\n <ion-spinner *ngIf=\"props.state === states.WORKING\" name=\"circular\"></ion-spinner>\n <ion-text *ngIf=\"props.state !== states.WORKING\">{{ props.text }}</ion-text>\n</ion-button>\n","import { ButtonMetadata, IconMetada } from './types';\n\nexport const Icon = (name: string, slot: 'start' | 'end'): IconMetada => {\n return {\n name,\n slot,\n };\n};\n\n/* name convention: COLOR FILL SIZE [optionals: SHAPE EXPAND ICON HREF/DOWNLOAD] TYPE */\n\nexport const BaseDefault = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return {\n color: 'primary',\n state: 'ENABLED',\n text,\n size: 'default',\n type,\n };\n};\n\nexport const ClearDefault = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...BaseDefault(text, type), fill: 'clear' };\n};\n\nexport const ClearDefaultRound = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefault(text, type), shape: 'round' };\n};\n\nexport const SolidDefault = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...BaseDefault(text, type), fill: 'solid' };\n};\n\nexport const SolidDefaultRound = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefault(text, type), shape: 'round' };\n};\n\nexport const OutlineDefault = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...BaseDefault(text, type), fill: 'outline' };\n};\n\nexport const OutlineDefaultRound = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefault(text, type), shape: 'round' };\n};\n\nexport const ClearDefaultFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefault(text, type), expand: 'full' };\n};\n\nexport const ClearDefaultRoundFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefaultRound(text, type), expand: 'full' };\n};\n\nexport const ClearDefaultBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefault(text, type), expand: 'block' };\n};\n\nexport const ClearDefaultRoundBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...ClearDefaultRound(text, type), expand: 'block' };\n};\n\nexport const SolidDefaultFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefault(text, type), expand: 'full' };\n};\n\nexport const SolidDefaultRoundFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefaultRound(text, type), expand: 'full' };\n};\n\nexport const SolidDefaultBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefault(text, type), expand: 'block' };\n};\n\nexport const SolidDefaultRoundBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...SolidDefaultRound(text, type), expand: 'block' };\n};\n\nexport const OutlineDefaultFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefault(text, type), expand: 'full' };\n};\n\nexport const OutlineDefaultRoundFull = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefaultRound(text, type), expand: 'full' };\n};\n\nexport const OutlineDefaultBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefault(text, type), expand: 'block' };\n};\n\nexport const OutlineDefaultRoundBlock = (text: string, type: 'button' | 'submit' | 'reset'): ButtonMetadata => {\n return { ...OutlineDefaultRound(text, type), expand: 'block' };\n};\n\nexport const SolidDefaultButton = (text: string): ButtonMetadata => {\n return SolidDefault(text, 'button');\n};\n\nexport const SolidSmallButton = (text: string): ButtonMetadata => {\n return { ...SolidDefault(text, 'button'), size: 'small' };\n};\n\nexport const SolidLargeButton = (text: string): ButtonMetadata => {\n return { ...SolidDefault(text, 'button'), size: 'large' };\n};\n\nexport const SolidDefaultRoundButton = (text: string): ButtonMetadata => {\n return SolidDefaultRound(text, 'button');\n};\n\nexport const SolidSmallRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidDefaultRound(text, 'button'), size: 'small' };\n};\n\nexport const SolidLargeRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidDefaultRound(text, 'button'), size: 'large' };\n};\n\nexport const SolidFullButton = (text: string): ButtonMetadata => {\n return SolidDefaultFull(text, 'button');\n};\n\nexport const SolidBlockButton = (text: string): ButtonMetadata => {\n return SolidDefaultBlock(text, 'button');\n};\n\n/** PRIMARY */\n\nexport const PrimarySolidDefaultRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidDefaultRoundButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidDefaultRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidDefaultRoundButton(text), icon };\n};\n\nexport const PrimarySolidDefaultRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidDefaultRoundButton(text), href, target };\n};\n\nexport const PrimarySolidDefaultRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidDefaultRoundIconButton(text, icon), href, target };\n};\n\nexport const PrimarySolidSmallRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidSmallRoundButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidSmallRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidSmallRoundButton(text), icon };\n};\n\nexport const PrimarySolidSmallRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidSmallRoundButton(text), href, target };\n};\n\nexport const PrimarySolidSmallRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidSmallRoundIconButton(text, icon), href, target };\n};\n\nexport const PrimarySolidLargeRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidLargeRoundButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidLargeRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidLargeRoundButton(text), icon };\n};\n\nexport const PrimarySolidLargeRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidLargeRoundButton(text), href, target };\n};\n\nexport const PrimarySolidLargeRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidLargeRoundIconButton(text, icon), href, target };\n};\n\nexport const PrimarySolidBlockButton = (text: string): ButtonMetadata => {\n return { ...SolidBlockButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidBlockIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidBlockButton(text), icon };\n};\n\nexport const PrimarySolidBlockHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidBlockButton(text), href, target };\n};\n\nexport const PrimarySolidBlockIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidBlockIconButton(text, icon), href, target };\n};\n\nexport const PrimarySolidFullButton = (text: string): ButtonMetadata => {\n return { ...SolidFullButton(text), color: 'primary' };\n};\n\nexport const PrimarySolidFullIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...PrimarySolidFullButton(text), icon };\n};\n\nexport const PrimarySolidFullHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidFullButton(text), href, target };\n};\n\nexport const PrimarySolidFullIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...PrimarySolidFullIconButton(text, icon), href, target };\n};\n\n/** SECONDARY */\n\nexport const SecondarySolidDefaultRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidDefaultRoundButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidDefaultRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidDefaultRoundButton(text), icon };\n};\n\nexport const SecondarySolidDefaultRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidDefaultRoundButton(text), href, target };\n};\n\nexport const SecondarySolidDefaultRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidDefaultRoundIconButton(text, icon), href, target };\n};\n\nexport const SecondarySolidSmallRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidSmallRoundButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidSmallRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidSmallRoundButton(text), icon };\n};\n\nexport const SecondarySolidSmallRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidSmallRoundButton(text), href, target };\n};\n\nexport const SecondarySolidSmallRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidSmallRoundIconButton(text, icon), href, target };\n};\n\nexport const SecondarySolidLargeRoundButton = (text: string): ButtonMetadata => {\n return { ...SolidLargeRoundButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidLargeRoundIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidLargeRoundButton(text), icon };\n};\n\nexport const SecondarySolidLargeRoundHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidLargeRoundButton(text), href, target };\n};\n\nexport const SecondarySolidLargeRoundIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidLargeRoundIconButton(text, icon), href, target };\n};\n\nexport const SecondarySolidFullButton = (text: string): ButtonMetadata => {\n return { ...SolidFullButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidFullIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidFullButton(text), icon };\n};\n\nexport const SecondarySolidFullHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidFullButton(text), href, target };\n};\n\nexport const SecondarySolidFullIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidFullIconButton(text, icon), href, target };\n};\n\nexport const SecondarySolidBlockButton = (text: string): ButtonMetadata => {\n return { ...SolidBlockButton(text), color: 'secondary' };\n};\n\nexport const SecondarySolidBlockIconButton = (text: string, icon: IconMetada): ButtonMetadata => {\n return { ...SecondarySolidBlockButton(text), icon };\n};\n\nexport const SecondarySolidBlockHrefButton = (\n text: string,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidBlockButton(text), href, target };\n};\n\nexport const SecondarySolidBlockIconHrefButton = (\n text: string,\n icon: IconMetada,\n href: string,\n target: '_blank' | '_self' | '_parent' | '_top',\n): ButtonMetadata => {\n return { ...SecondarySolidBlockIconButton(text, icon), href, target };\n};\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-text',\n templateUrl: './text.component.html',\n styleUrls: ['./text.component.scss'],\n})\nexport class TextComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge';\n @Input()\n color: Color;\n @Input()\n content: string;\n @Input()\n bold: boolean = false;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<ion-text [color]=\"color\">\n <p [class]=\"size\" [class.bold]=\"bold\">\n {{ content }}\n </p>\n</ion-text>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-title',\n templateUrl: './title.component.html',\n styleUrls: ['./title.component.scss'],\n})\nexport class TitleComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge';\n @Input()\n color: Color;\n @Input()\n content: string;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<ion-text [color]=\"color\">\n <p [class]=\"size\">\n {{ content }}\n </p>\n</ion-text>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-display',\n templateUrl: './display.component.html',\n styleUrls: ['./display.component.scss'],\n})\nexport class DisplayComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge';\n @Input()\n color: Color;\n @Input()\n content: string;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<ion-text [color]=\"color\">\n <p [class]=\"size\">\n {{ content }}\n </p>\n</ion-text>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'val-avatar',\n templateUrl: './avatar.component.html',\n styleUrls: ['./avatar.component.scss'],\n})\nexport class AvatarComponent implements OnInit {\n @Input()\n image: string;\n @Input()\n default: string;\n @Input()\n size: 'small' | 'medium' | 'large' = 'medium';\n @Input()\n box: boolean = false;\n\n @Output()\n onClick = new EventEmitter();\n\n constructor() {}\n\n ngOnInit() {}\n\n onClickHandler() {\n this.onClick.emit();\n }\n}\n","<ion-avatar [class]=\"size\" [class.box]=\"box\" (click)=\"onClickHandler()\">\n <img alt=\"profile image\" [src]=\"image || default\" />\n</ion-avatar>\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'val-divider',\n templateUrl: './divider.component.html',\n styleUrls: ['./divider.component.scss'],\n})\nexport class DividerComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' = 'small';\n @Input()\n color: 'primary' | 'secondary' | 'dark' | 'light' | 'medium' = 'dark';\n @Input()\n fill: 'solid' | 'gradient' = 'solid';\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<div [ngClass]=\"['divider', size, color, fill]\"></div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-box',\n templateUrl: './box.component.html',\n styleUrls: ['./box.component.scss'],\n})\nexport class BoxComponent implements OnInit {\n @Input()\n color: Color = 'dark';\n @Input()\n icon: string;\n @Input()\n bordered: boolean = false;\n @Input()\n leftBorder: boolean = false;\n \n @Output()\n onClick = new EventEmitter();\n \n constructor() { }\n\n ngOnInit() {}\n\n clickHandler() {\n this.onClick.emit();\n }\n}\n","<ion-card class=\"box\" [color]=\"color\" [class.bordered]=\"bordered\" [class.left-border]=\"leftBorder\">\n <ion-icon *ngIf=\"!!icon\" class=\"icon\" [name]=\"icon\" (click)=\"clickHandler()\"></ion-icon>\n <ng-content select=\"[body]\"></ng-content>\n</ion-card>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-icon',\n templateUrl: './icon.component.html',\n styleUrls: ['./icon.component.scss'],\n})\nexport class IconComponent implements OnInit {\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge' = 'small';\n @Input()\n color: Color;\n @Input()\n name: string;\n\n constructor() {}\n\n ngOnInit() {}\n}","<ion-icon [ngClass]=\"[size]\" [name]=\"name\" [color]=\"color\"></ion-icon>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-content-loader',\n templateUrl: './content-loader.component.html',\n styleUrls: ['./content-loader.component.scss'],\n})\nexport class ContentLoaderComponent implements OnInit {\n @Input()\n color: Color = 'primary';\n @Input()\n size: 'small' | 'medium' | 'large' = 'small';\n @Input()\n name: 'circular' | 'crescent' | 'dots' | 'lines-sharp' = 'circular';\n @Input()\n text: string;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<div [ngClass]=\"['spinner-wrapper', size]\">\n <ion-spinner [ngClass]=\"[size]\" [name]=\"name\" [color]=\"color\"></ion-spinner>\n <ion-text [color]=\"color\">\n <p>{{ text }}</p>\n </ion-text>\n</div>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-link',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n})\nexport class LinkComponent implements OnInit {\n @Input()\n text: string;\n @Input()\n size: 'small' | 'default' | 'large';\n @Input()\n color: Color;\n\n @Output()\n onClick = new EventEmitter();\n\n constructor() {}\n\n ngOnInit() {}\n\n onClickHandler() {\n this.onClick.emit();\n }\n}\n","<div>\n <ion-button type=\"button\" [color]=\"color\" fill=\"clear\" [size]=\"size\" (click)=\"onClickHandler()\">\n <ion-icon slot=\"end\" name=\"chevron-forward-outline\"></ion-icon>\n <ion-text>{{ text }}</ion-text>\n </ion-button>\n</div>\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'app-searchbar',\n templateUrl: './searchbar.component.html',\n styleUrls: ['./searchbar.component.scss'],\n})\nexport class SearchbarComponent {\n @Input() disabled: boolean;\n\n @Output() focusEvent = new EventEmitter<void>();\n\n @Output() blurEvent = new EventEmitter<void>();\n\n @Output() filterEvent = new EventEmitter<string>();\n\n constructor() {}\n\n onSearch($event: any) {\n const searchTerm = $event.detail.value\n this.filterEvent.emit(searchTerm);\n }\n\n onFocus() {\n this.focusEvent.emit();\n }\n\n onBlur() {\n this.blurEvent.emit();\n }\n}\n","<ion-searchbar mode=\"ios\" debounce=\"500\" placeholder=\"Búsqueda\" [disabled]=\"disabled\"\n showCancelButton=\"focus\" cancelButtonText=\"Cancelar\" (ionInput)=\"onSearch($event)\" \n (ionBlur)=\"onBlur()\" (ionFocus)=\"onFocus()\">\n</ion-searchbar>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { ButtonMetadata } from '../../atoms/button/types';\n\n@Component({\n selector: 'val-button-group',\n templateUrl: './button-group.component.html',\n styleUrls: ['./button-group.component.scss'],\n})\nexport class ButtonGroupComponent implements OnInit {\n @Input()\n buttons: ButtonMetadata[];\n @Input()\n position: 'center' | 'left' | 'right' = 'left';\n\n @Output()\n onClick = new EventEmitter<string>();\n\n constructor() {}\n\n ngOnInit() {}\n\n clickHandler(token?: string) {\n this.onClick.emit(token);\n }\n}\n","<div [ngClass]=\"['group-container', position]\">\n <val-button *ngFor=\"let b of buttons\" [props]=\"b\" (click)=\"clickHandler(b?.token)\"></val-button>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { TitleMetada } from './types';\n\n@Component({\n selector: 'val-title-block',\n templateUrl: './title-block.component.html',\n styleUrls: ['./title-block.component.scss'],\n})\nexport class TitleBlockComponent implements OnInit {\n @Input()\n position: 'center' | 'left' | 'right' = 'left';\n @Input()\n title: TitleMetada;\n @Input()\n aboveTitle: TitleMetada;\n @Input()\n bellowTitle: TitleMetada;\n\n constructor() {}\n\n ngOnInit() {}\n}\n","<div [ngClass]=\"['titles-container', position]\">\n <val-title\n *ngIf=\"aboveTitle\"\n [size]=\"aboveTitle.size\"\n [color]=\"aboveTitle.color\"\n content=\"{{ aboveTitle.text | uppercase }}\"\n ></val-title>\n <val-display\n *ngIf=\"title\"\n [size]=\"title.size\"\n [color]=\"title.color\"\n [content]=\"title.text\"\n ></val-display>\n <val-title\n *ngIf=\"bellowTitle\"\n [size]=\"bellowTitle.size\"\n [color]=\"bellowTitle.color\"\n [content]=\"bellowTitle.text\"\n ></val-title>\n</div>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-notes-box',\n templateUrl: './notes-box.component.html',\n styleUrls: ['./notes-box.component.scss'],\n})\nexport class NotesBoxComponent implements OnInit {\n @Input()\n color: Color = 'light';\n @Input()\n textColor: Color;\n @Input()\n prefix: string;\n @Input()\n text: string;\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge' = 'small';\n\n constructor() { }\n\n ngOnInit() {}\n\n}\n","<val-box [color]=\"color\" icon=\"\" [bordered]=\"false\" [leftBorder]=\"true\">\n <div [ngClass]=\"['content-container', size]\" body>\n <val-text [content]=\"prefix\" [size]=\"size\" [bold]=\"true\" [color]=\"textColor\"></val-text>\n <val-text [content]=\"text\" [size]=\"size\" [bold]=\"false\" [color]=\"textColor\"></val-text>\n </div>\n</val-box>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-alert-box',\n templateUrl: './alert-box.component.html',\n styleUrls: ['./alert-box.component.scss'],\n})\nexport class AlertBoxComponent implements OnInit {\n @Input()\n color: Color = 'warning';\n @Input()\n icon: string = 'alert-circle-outline';\n @Input()\n text: string;\n @Input()\n bold: boolean = false;\n @Input()\n size: 'small' | 'medium' | 'large' | 'xlarge' = 'small';\n\n constructor() { }\n\n ngOnInit() {}\n\n}\n","<val-box [color]=\"color\" icon=\"\" [bordered]=\"false\">\n <div class=\"content-container\" body>\n <val-icon [name]=\"icon\" [size]=\"size\"></val-icon>\n <val-text class=\"text\" [content]=\"text\" [size]=\"size\" [bold]=\"bold\"></val-text>\n </div>\n</val-box>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { NavController } from '@ionic/angular';\nimport { Color } from '@ionic/core';\n\n@Component({\n selector: 'val-toolbar',\n templateUrl: './toolbar.component.html',\n styleUrls: ['./toolbar.component.scss'],\n})\nexport class ToolbarComponent implements OnInit {\n @Input()\n withBack: boolean = false;\n @Input()\n backText: string = '';\n @Input()\n withActions: boolean = false;\n @Input()\n color: Color = '';\n @Input()\n textColor: Color = '';\n @Input()\n title: string;\n\n constructor(private navCtrl: NavController) { }\n\n ngOnInit() {}\n\n goBack(): void {\n this.navCtrl.back();\n }\n}\n","<ion-toolbar [color]=\"color\">\n <ion-buttons class=\"left-buttons\" slot=\"start\" *ngIf=\"withBack\">\n <ion-button fill=\"clear\" (click)=\"goBack()\" [color]=\"textColor\">\n <ion-icon name=\"chevron-back-outline\" [slot]=\"backText ? 'start' : 'icon-only'\"></ion-icon>\n <ion-text *ngIf=\"backText\">{{ backText }}</ion-text>\n </ion-button>\n </ion-buttons>\n <ion-buttons slot=\"end\" *ngIf=\"withActions\">\n <ng-content select=\"[toolbar-right-side]\"></ng-content>\n </ion-buttons>\n <ion-title [color]=\"textColor\">{{ title }}</ion-title>\n</ion-toolbar>\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { BannerMetadata } from './types';\n\n@Component({\n selector: 'val-banner',\n templateUrl: './banner.component.html',\n styleUrls: ['./banner.component.scss'],\n})\nexport class BannerComponent implements OnInit {\n @Input()\n props: BannerMetadata;\n\n @Output()\n onClick = new EventEmitter<string>();\n\n @Output()\n onClose = new EventEmitter();\n\n constructor() {}\n\n ngOnInit() {}\n\n clickHandler(token?: string) {\n this.onClick.emit(token);\n }\n\n closeHandler() {\n this.onClose.emit();\n }\n}\n","<val-box\n color=\"light\"\n [icon]=\"props.closable ? 'close-outline' : ''\"\n [bordered]=\"props.bordered\"\n (onClick)=\"closeHandler()\"\n>\n <div [ngClass]=\"['content-container', props.mode]\" body>\n <val-title-block\n [position]=\"props.mode === 'center' ? 'center' : 'left'\"\n [aboveTitle]=\"props.content.aboveTitle\"\n [title]=\"props.content.title\"\n [bellowTitle]=\"props.content.bellowTitle\"\n ></val-title-block>\n <val-button-group\n [position]=\"props.mode === 'center' ? 'center' : 'left'\"\n class=\"buttons-container\"\n [buttons]=\"props.actions\"\n (onClick)=\"clickHandler($event)\"\n ></val-button-group>\n </div>\n</val-box>\n","export type LanguageText = {\n [key: string]: string;\n};\n\nexport type LanguagesContent = {\n [key: string]: LanguageText;\n};\n\nexport type ContentProvider = {\n [x: string]: TextContent;\n};\n\nexport class TextContent {\n text: LanguagesContent;\n constructor(text: LanguagesContent) {\n this.text = text;\n }\n\n get Content(): LanguagesContent {\n return this.text;\n }\n}\n\nexport enum LangOption {\n ES = 'es',\n EN = 'en',\n}\n","export class LocalStorageService {\n static set<T>(reference: string, value: T): void {\n localStorage.setItem(reference, JSON.stringify(value));\n }\n\n static get<T>(reference: string): T {\n const value = localStorage.getItem(reference);\n return JSON.parse(value) as T;\n }\n\n static remove(reference: string): void {\n localStorage.removeItem(reference);\n }\n\n static clear() {\n localStorage.clear();\n }\n}\n","export const LANG = 'LANG';\nexport const THEME = 'THEME';","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { LocalStorageService } from './local-storage.service';\nimport { THEME } from '../shared/contants/storage';\n\nexport enum ThemeOption {\n LIGHT = 'light',\n DARK = 'dark',\n AUTO = 'auto',\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ThemeService {\n lightToggle = false;\n darkToggle = false;\n autoToggle = false;\n currentOption = ThemeOption.AUTO;\n themeOptions = ThemeOption;\n prefersDark = false;\n default = ThemeOption.AUTO;\n theme: BehaviorSubject<ThemeOption>;\n\n constructor() {\n const current = LocalStorageService.get<ThemeOption>(THEME);\n console.log('💡 ThemeConfig current::: ', current);\n this.theme = new BehaviorSubject<ThemeOption>(current || this.default);\n this.currentOption = this.Theme;\n console.log('💡 ThemeConfig this.currentOption::: ', this.currentOption);\n this.toggleUserPreference(this.currentOption);\n\n const prefersDarkQuery = window.matchMedia('(prefers-color-scheme: dark)');\n this.prefersDark = prefersDarkQuery.matches;\n this.handleAutoConfiguration();\n\n prefersDarkQuery.addEventListener('change', (mediaQuery) => {\n console.log('💡 ThemeConfig addEventListener change::: ', mediaQuery);\n this.prefersDark = mediaQuery.matches;\n this.handleAutoConfiguration();\n });\n }\n\n private handleAutoConfiguration() {\n if (this.prefersDark && this.currentOption === ThemeOption.AUTO) {\n console.log('💡 ThemeConfig prefersDark::: ', this.prefersDark);\n this.toggleUserPreference(ThemeOption.AUTO);\n }\n if (!this.prefersDark && this.currentOption === ThemeOption.AUTO) {\n console.log('💡 ThemeConfig prefersDark::: ', this.prefersDark);\n this.toggleUserPreference(ThemeOption.AUTO);\n }\n }\n\n private handleDarkPreference() {\n this.toggleTheme(ThemeOption.DARK, true);\n this.toggleTheme(ThemeOption.LIGHT, false);\n }\n\n private handleLightPreference() {\n this.toggleTheme(ThemeOption.LIGHT, true);\n this.toggleTheme(ThemeOption.DARK, false);\n }\n\n get Theme(): ThemeOption {\n return this.theme.value;\n }\n\n set Theme(theme: ThemeOption) {\n this.theme.next(theme);\n LocalStorageService.set<ThemeOption>(THEME, theme);\n }\n\n toggleTheme(name: string, shouldAdd: boolean) {\n console.log('toggleTheme::: ', name, shouldAdd);\n document.body.classList.toggle(name, shouldAdd);\n }\n\n toggleUserPreference(option: ThemeOption) {\n this.currentOption = option;\n this.Theme = option;\n this.lightToggle = option === ThemeOption.LIGHT;\n this.darkToggle = option === ThemeOption.DARK;\n this.autoToggle = option === ThemeOption.AUTO;\n\n switch (option) {\n case ThemeOption.LIGHT:\n this.handleLightPreference();\n break;\n case ThemeOption.DARK:\n this.handleDarkPreference();\n break;\n case ThemeOption.AUTO:\n if (this.prefersDark) {\n this.handleDarkPreference();\n } else {\n this.handleLightPreference();\n }\n break;\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule } from '@angular/common/http';\nimport { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core';\nimport { IonicModule } from '@ionic/angular';\nimport { ButtonComponent } from './components/atoms/button/button.component';\nimport { DisplayComponent } from './components/atoms/display/display.component';\nimport { TextComponent } from './components/atoms/text/text.component';\nimport { TitleComponent } from './components/atoms/title/title.component';\nimport { AvatarComponent } from './components/atoms/avatar/avatar.component';\nimport { DividerComponent } from './components/atoms/divider/divider.component';\nimport { ContentLoaderComponent } from './components/molecules/content-loader/content-loader.component';\nimport { LinkComponent } from './components/molecules/link/link.component';\nimport { SearchbarComponent } from './components/molecules/searchbar/searchbar.component';\nimport { ToolbarComponent } from './components/organisms/toolbar/toolbar.component';\nimport { Provider } from './services/lang-provider/content';\nimport { BoxComponent } from './components/atoms/box/box.component';\nimport { IconComponent } from './components/atoms/icon/icon.component';\nimport { AlertBoxComponent } from './components/molecules/alert-box/alert-box.component';\nimport { ButtonGroupComponent } from './components/molecules/button-group/button-group.component';\nimport { TitleBlockComponent } from './components/molecules/title-block/title-block.component';\nimport { BannerComponent } from './components/organisms/banner/banner.component';\nimport { NotesBoxComponent } from './components/molecules/notes-box/notes-box.component';\nimport { DownloadService } from './services/download.service';\nimport { LangService } from './services/lang-provider/lang-provider.service';\nimport { ThemeService } from './services/theme.service';\n\nexport interface ValtechConfig {\n content: Provider;\n}\n\nexport const ValtechConfigService = new InjectionToken<ValtechConfig>('ValtechConfig');\n\n@NgModule({\n declarations: [\n ButtonComponent,\n BoxComponent,\n DisplayComponent,\n TextComponent,\n TitleComponent,\n AvatarComponent,\n DividerComponent,\n ContentLoaderComponent,\n LinkComponent,\n SearchbarComponent,\n ToolbarComponent,\n IconComponent,\n ButtonGroupComponent,\n TitleBlockComponent,\n AlertBoxComponent,\n BannerComponent,\n NotesBoxComponent,\n ],\n imports: [CommonModule, HttpClientModule, IonicModule],\n exports: [\n ButtonComponent,\n BoxComponent,\n DisplayComponent,\n TextComponent,\n TitleComponent,\n AvatarComponent,\n DividerComponent,\n ContentLoaderComponent,\n LinkComponent,\n SearchbarComponent,\n ToolbarComponent,\n IconComponent,\n ButtonGroupComponent,\n TitleBlockComponent,\n AlertBoxComponent,\n BannerComponent,\n NotesBoxComponent,\n ],\n providers: [\n DownloadService,\n LangService,\n ThemeService,\n ],\n})\nexport class ValtechComponentsModule {}\n","import { Inject, Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport content from './content';\nimport { LangOption, LanguageText, ContentProvider } from './types';\nimport { LocalStorageService } from '../local-storage.service';\nimport { LANG } from '../../shared/contants/storage';\nimport { ValtechConfig, ValtechConfigService } from '../../valtech-components.module';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LangService {\n content: ContentProvider;\n default = LangOption.ES;\n selectedLang: BehaviorSubject<LangOption>;\n config: ValtechConfig;\n\n constructor(@Inject(ValtechConfigService) config: ValtechConfig) {\n console.log('injected config: ', config);\n this.content = config.content;\n this.config = config;\n const current = LocalStorageService.get<LangOption>(LANG);\n this.selectedLang = new BehaviorSubject<LangOption>(current || this.default);\n }\n\n Text(className: string): LanguageText {\n return this.content[className].Content[this.selectedLang.value];\n }\n\n get Lang(): LangOption {\n return this.selectedLang.value;\n }\n\n set Lang(lang: LangOption) {\n this.selectedLang.next(lang);\n LocalStorageService.set<LangOption>(LANG, lang);\n }\n}\n","/*\n * Public API Surface of valtech-components\n */\n\nexport * from './lib/components/atoms/button/button.component';\nexport * from './lib/components/atoms/button/types';\nexport * from './lib/components/atoms/button/factory';\nexport * from './lib/components/atoms/text/text.component';\nexport * from './lib/components/atoms/title/title.component';\nexport * from './lib/components/atoms/display/display.component';\nexport * from './lib/components/atoms/avatar/avatar.component';\nexport * from './lib/components/atoms/divider/divider.component';\nexport * from './lib/components/atoms/box/box.component';\nexport * from './lib/components/atoms/icon/icon.component';\n\nexport * from './lib/components/molecules/content-loader/content-loader.component';\nexport * from './lib/components/molecules/link/link.component';\nexport * from './lib/components/molecules/searchbar/searchbar.component';\nexport * from './lib/components/molecules/button-group/button-group.component';\nexport * from './lib/components/molecules/title-block/title-block.component';\nexport * from './lib/components/molecules/notes-box/notes-box.component';\nexport * from './lib/components/molecules/alert-box/alert-box.component';\n\nexport * from './lib/components/organisms/toolbar/toolbar.component';\nexport * from './lib/components/organisms/banner/banner.component';\n\nexport * from './lib/services/lang-provider/lang-provider.service';\nexport * from './lib/services/lang-provider/types';\nexport * from './lib/services/local-storage.service';\nexport * from './lib/services/theme.service';\nexport * from './lib/services/download.service';\n\nexport * from './lib/components/types';\nexport * from './lib/valtech-components.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.DownloadService","i2","i3","i1","i2.ButtonComponent","i2.DisplayComponent","i3.TitleComponent","i2.BoxComponent","i3.TextComponent","i1.BoxComponent","i2.TextComponent","i3.IconComponent","i3.ButtonGroupComponent","i4.TitleBlockComponent"],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { EventEmitter, OnInit } from '@angular/core';
|
|
2
2
|
import { ButtonMetadata } from './types';
|
|
3
|
+
import { DownloadService } from '../../../services/download.service';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
export declare class ButtonComponent implements OnInit {
|
|
6
|
+
private download;
|
|
5
7
|
states: {
|
|
6
8
|
ENABLED: "ENABLED";
|
|
7
9
|
DISABLED: "DISABLED";
|
|
@@ -9,7 +11,7 @@ export declare class ButtonComponent implements OnInit {
|
|
|
9
11
|
};
|
|
10
12
|
props: ButtonMetadata;
|
|
11
13
|
onClick: EventEmitter<string>;
|
|
12
|
-
constructor();
|
|
14
|
+
constructor(download: DownloadService);
|
|
13
15
|
ngOnInit(): void;
|
|
14
16
|
clickHandler(): void;
|
|
15
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<ButtonComponent, never>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class DownloadService {
|
|
3
|
+
getFileNameFromUrl(url: string): string;
|
|
4
|
+
downloadLinkFromBrowser(url: string): void;
|
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DownloadService, never>;
|
|
6
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<DownloadService>;
|
|
7
|
+
}
|
|
@@ -15,9 +15,11 @@ export declare class ThemeService {
|
|
|
15
15
|
default: ThemeOption;
|
|
16
16
|
theme: BehaviorSubject<ThemeOption>;
|
|
17
17
|
constructor();
|
|
18
|
+
private handleAutoConfiguration;
|
|
19
|
+
private handleDarkPreference;
|
|
20
|
+
private handleLightPreference;
|
|
18
21
|
get Theme(): ThemeOption;
|
|
19
22
|
set Theme(theme: ThemeOption);
|
|
20
|
-
toggleChange(ev: any): void;
|
|
21
23
|
toggleTheme(name: string, shouldAdd: boolean): void;
|
|
22
24
|
toggleUserPreference(option: ThemeOption): void;
|
|
23
25
|
static ɵfac: i0.ɵɵFactoryDeclaration<ThemeService, never>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { InjectionToken
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
2
|
import { Provider } from './services/lang-provider/content';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "./components/atoms/button/button.component";
|
|
@@ -26,7 +26,6 @@ export interface ValtechConfig {
|
|
|
26
26
|
}
|
|
27
27
|
export declare const ValtechConfigService: InjectionToken<ValtechConfig>;
|
|
28
28
|
export declare class ValtechComponentsModule {
|
|
29
|
-
static forRoot(config: ValtechConfig): ModuleWithProviders<ValtechComponentsModule>;
|
|
30
29
|
static ɵfac: i0.ɵɵFactoryDeclaration<ValtechComponentsModule, never>;
|
|
31
30
|
static ɵmod: i0.ɵɵNgModuleDeclaration<ValtechComponentsModule, [typeof i1.ButtonComponent, typeof i2.BoxComponent, typeof i3.DisplayComponent, typeof i4.TextComponent, typeof i5.TitleComponent, typeof i6.AvatarComponent, typeof i7.DividerComponent, typeof i8.ContentLoaderComponent, typeof i9.LinkComponent, typeof i10.SearchbarComponent, typeof i11.ToolbarComponent, typeof i12.IconComponent, typeof i13.ButtonGroupComponent, typeof i14.TitleBlockComponent, typeof i15.AlertBoxComponent, typeof i16.BannerComponent, typeof i17.NotesBoxComponent], [typeof i18.CommonModule, typeof i19.HttpClientModule, typeof i20.IonicModule], [typeof i1.ButtonComponent, typeof i2.BoxComponent, typeof i3.DisplayComponent, typeof i4.TextComponent, typeof i5.TitleComponent, typeof i6.AvatarComponent, typeof i7.DividerComponent, typeof i8.ContentLoaderComponent, typeof i9.LinkComponent, typeof i10.SearchbarComponent, typeof i11.ToolbarComponent, typeof i12.IconComponent, typeof i13.ButtonGroupComponent, typeof i14.TitleBlockComponent, typeof i15.AlertBoxComponent, typeof i16.BannerComponent, typeof i17.NotesBoxComponent]>;
|
|
32
31
|
static ɵinj: i0.ɵɵInjectorDeclaration<ValtechComponentsModule>;
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -21,5 +21,6 @@ export * from './lib/services/lang-provider/lang-provider.service';
|
|
|
21
21
|
export * from './lib/services/lang-provider/types';
|
|
22
22
|
export * from './lib/services/local-storage.service';
|
|
23
23
|
export * from './lib/services/theme.service';
|
|
24
|
+
export * from './lib/services/download.service';
|
|
24
25
|
export * from './lib/components/types';
|
|
25
26
|
export * from './lib/valtech-components.module';
|