@factor_ec/ui 2.1.3 → 3.0.1
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/esm2020/lib/io/expression-builder/expression-builder.component.mjs +1 -1
- package/esm2020/lib/io/icon/icon.component.mjs +2 -4
- package/esm2020/lib/io/image/image.component.mjs +2 -2
- package/esm2020/lib/io/io.module.mjs +1 -6
- package/esm2020/lib/io/message/message.component.mjs +3 -3
- package/esm2020/lib/layout/collapsible/collapsible.component.mjs +37 -0
- package/esm2020/lib/layout/layout.module.mjs +28 -0
- package/esm2020/lib/models/action.mjs +1 -1
- package/esm2020/lib/navigation/list/list.component.mjs +55 -25
- package/esm2020/lib/navigation/navigation.module.mjs +9 -15
- package/esm2020/lib/navigation/toolbar/toolbar.component.mjs +1 -1
- package/esm2020/lib/ui.module.mjs +8 -1
- package/esm2020/public-api.mjs +3 -5
- package/fesm2015/factor_ec-ui.mjs +120 -205
- package/fesm2015/factor_ec-ui.mjs.map +1 -1
- package/fesm2020/factor_ec-ui.mjs +119 -204
- package/fesm2020/factor_ec-ui.mjs.map +1 -1
- package/lib/io/icon/icon.component.d.ts +1 -2
- package/lib/io/io.module.d.ts +7 -8
- package/lib/layout/collapsible/collapsible.component.d.ts +10 -0
- package/lib/layout/layout.module.d.ts +9 -0
- package/lib/models/action.d.ts +0 -1
- package/lib/navigation/list/list.component.d.ts +10 -8
- package/lib/navigation/navigation.module.d.ts +8 -9
- package/lib/ui.module.d.ts +3 -2
- package/package.json +1 -1
- package/public-api.d.ts +2 -4
- package/scss/all.scss +5 -5
- package/scss/components/collapsible.scss +46 -0
- package/scss/components/dropdown.scss +56 -0
- package/scss/components/list.scss +24 -42
- package/scss/components/ph.scss +27 -0
- package/scss/components/popup.scss +7 -0
- package/scss/components.scss +8 -5
- package/scss/mixins/breakpoints.scss +123 -0
- package/scss/mixins.scss +1 -0
- package/scss/reboot.scss +20 -15
- package/scss/root.scss +34 -21
- package/scss/variables.scss +76 -1
- package/esm2020/lib/io/listview/listview.component.mjs +0 -11
- package/esm2020/lib/navigation/navbar/navbar.component.mjs +0 -72
- package/esm2020/lib/navigation/searchbox/searchbox.component.mjs +0 -96
- package/lib/io/listview/listview.component.d.ts +0 -5
- package/lib/navigation/navbar/navbar.component.d.ts +0 -19
- package/lib/navigation/searchbox/searchbox.component.d.ts +0 -34
- package/scss/components/button.scss +0 -23
- package/scss/layout.scss +0 -12
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "../../io/icon/icon.component";
|
|
5
|
-
import * as i3 from "@angular/router";
|
|
6
|
-
export class NavbarComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.iconNameField = 'iconName';
|
|
9
|
-
this.labelField = 'label';
|
|
10
|
-
this.labelPlacement = 'auto';
|
|
11
|
-
this.position = 'auto';
|
|
12
|
-
this.class = '';
|
|
13
|
-
}
|
|
14
|
-
get hostClasses() {
|
|
15
|
-
return [
|
|
16
|
-
'ft-navbar',
|
|
17
|
-
this.class,
|
|
18
|
-
this.position
|
|
19
|
-
].join(' ');
|
|
20
|
-
}
|
|
21
|
-
;
|
|
22
|
-
getComponentType(item) {
|
|
23
|
-
let type = 'text';
|
|
24
|
-
if (!item.url || item.url.match(/^(http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/)) {
|
|
25
|
-
type = 'button';
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
type = 'link';
|
|
29
|
-
}
|
|
30
|
-
return type;
|
|
31
|
-
}
|
|
32
|
-
setItem(item) {
|
|
33
|
-
if (item.url) {
|
|
34
|
-
if (item.url.match(/^(http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/)) {
|
|
35
|
-
window.location.href = item.url;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
else if (item.click) {
|
|
39
|
-
item.click();
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
toggleCollapsible(action) {
|
|
43
|
-
action.metadata.show = !action.metadata.show;
|
|
44
|
-
}
|
|
45
|
-
trackByItem(index, item) {
|
|
46
|
-
return `${item.label} ${item.url}`;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
NavbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: NavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
-
NavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: NavbarComponent, selector: "ft-navbar", inputs: { iconCollection: "iconCollection", iconNameField: "iconNameField", labelField: "labelField", labelPlacement: "labelPlacement", items: "items", position: "position", class: "class" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<ng-content select=\"[ftStart]\"></ng-content>\n<div class=\"list\" *ngIf=\"items\">\n <ng-container *ngFor=\"let item of items; trackBy: trackByItem\">\n <ng-container *ngTemplateOutlet=\"actionTemplate; context: { item: item }\"></ng-container>\n </ng-container>\n</div>\n<ng-content select=\"[ftEnd]\"></ng-content>\n<ng-template #actionTemplate let-item=\"item\">\n <ng-container [ngSwitch]=\"getComponentType(item)\">\n <button *ngSwitchCase=\"'button'\" type=\"button\" matRipple class=\"list__item\"\n [ngClass]=\"[labelPlacement, item.class || '' ]\" (click)=\"setItem(item)\">\n <ng-container *ngTemplateOutlet=\"textTemplate; context: { item: item }\"></ng-container>\n </button>\n <a *ngSwitchCase=\"'link'\" [routerLink]=\"item.url\" routerLinkActive=\"active\" matRipple class=\"list__item\"\n [ngClass]=\"[labelPlacement, item.class || '' ]\" (click)=\"setItem(item)\">\n <ng-container *ngTemplateOutlet=\"textTemplate; context: { item: item }\"></ng-container>\n </a>\n </ng-container>\n</ng-template>\n<ng-template #textTemplate let-item=\"item\">\n <div class=\"item\">\n <ft-icon class=\"item__icon\" *ngIf=\"item[iconNameField]\" [name]=\"item[iconNameField]\"\n [collection]=\"iconCollection\" [title]=\"labelPlacement === 'none' ? item[labelField] : '' \"></ft-icon>\n <div class=\"item__label\" *ngIf=\"labelPlacement !== 'none'\">{{ item[labelField] }}</div>\n </div>\n</ng-template>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.IconComponent, selector: "ft-icon", inputs: ["collection", "mode", "name", "path", "size", "src", "class"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }] });
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: NavbarComponent, decorators: [{
|
|
52
|
-
type: Component,
|
|
53
|
-
args: [{ selector: 'ft-navbar', template: "<ng-content select=\"[ftStart]\"></ng-content>\n<div class=\"list\" *ngIf=\"items\">\n <ng-container *ngFor=\"let item of items; trackBy: trackByItem\">\n <ng-container *ngTemplateOutlet=\"actionTemplate; context: { item: item }\"></ng-container>\n </ng-container>\n</div>\n<ng-content select=\"[ftEnd]\"></ng-content>\n<ng-template #actionTemplate let-item=\"item\">\n <ng-container [ngSwitch]=\"getComponentType(item)\">\n <button *ngSwitchCase=\"'button'\" type=\"button\" matRipple class=\"list__item\"\n [ngClass]=\"[labelPlacement, item.class || '' ]\" (click)=\"setItem(item)\">\n <ng-container *ngTemplateOutlet=\"textTemplate; context: { item: item }\"></ng-container>\n </button>\n <a *ngSwitchCase=\"'link'\" [routerLink]=\"item.url\" routerLinkActive=\"active\" matRipple class=\"list__item\"\n [ngClass]=\"[labelPlacement, item.class || '' ]\" (click)=\"setItem(item)\">\n <ng-container *ngTemplateOutlet=\"textTemplate; context: { item: item }\"></ng-container>\n </a>\n </ng-container>\n</ng-template>\n<ng-template #textTemplate let-item=\"item\">\n <div class=\"item\">\n <ft-icon class=\"item__icon\" *ngIf=\"item[iconNameField]\" [name]=\"item[iconNameField]\"\n [collection]=\"iconCollection\" [title]=\"labelPlacement === 'none' ? item[labelField] : '' \"></ft-icon>\n <div class=\"item__label\" *ngIf=\"labelPlacement !== 'none'\">{{ item[labelField] }}</div>\n </div>\n</ng-template>" }]
|
|
54
|
-
}], ctorParameters: function () { return []; }, propDecorators: { iconCollection: [{
|
|
55
|
-
type: Input
|
|
56
|
-
}], iconNameField: [{
|
|
57
|
-
type: Input
|
|
58
|
-
}], labelField: [{
|
|
59
|
-
type: Input
|
|
60
|
-
}], labelPlacement: [{
|
|
61
|
-
type: Input
|
|
62
|
-
}], items: [{
|
|
63
|
-
type: Input
|
|
64
|
-
}], position: [{
|
|
65
|
-
type: Input
|
|
66
|
-
}], class: [{
|
|
67
|
-
type: Input
|
|
68
|
-
}], hostClasses: [{
|
|
69
|
-
type: HostBinding,
|
|
70
|
-
args: ['class']
|
|
71
|
-
}] } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvbmF2aWdhdGlvbi9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvbmF2aWdhdGlvbi9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTOUQsTUFBTSxPQUFPLGVBQWU7SUFpQjFCO1FBZlMsa0JBQWEsR0FBVyxVQUFVLENBQUM7UUFDbkMsZUFBVSxHQUFXLE9BQU8sQ0FBQztRQUM3QixtQkFBYyxHQUEwRCxNQUFNLENBQUM7UUFFL0UsYUFBUSxHQUFpRCxNQUFNLENBQUM7UUFFaEUsVUFBSyxHQUFXLEVBQUUsQ0FBQztJQVNaLENBQUM7SUFSakIsSUFBMEIsV0FBVztRQUNuQyxPQUFPO1lBQ0wsV0FBVztZQUNYLElBQUksQ0FBQyxLQUFLO1lBQ1YsSUFBSSxDQUFDLFFBQVE7U0FDZCxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFBQSxDQUFDO0lBSUYsZ0JBQWdCLENBQUMsSUFBWTtRQUMzQixJQUFJLElBQUksR0FBVyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsZ0ZBQWdGLENBQUMsRUFBRTtZQUNqSCxJQUFJLEdBQUcsUUFBUSxDQUFDO1NBQ2pCO2FBQU07WUFDTCxJQUFJLEdBQUcsTUFBTSxDQUFDO1NBQ2Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxPQUFPLENBQUMsSUFBWTtRQUNsQixJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLGdGQUFnRixDQUFDLEVBQUU7Z0JBQ3BHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7YUFDakM7U0FDRjthQUFNLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNyQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDZDtJQUNILENBQUM7SUFDRCxpQkFBaUIsQ0FBQyxNQUFjO1FBQzlCLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFDL0MsQ0FBQztJQUNELFdBQVcsQ0FBQyxLQUFhLEVBQUUsSUFBWTtRQUNyQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDckMsQ0FBQzs7NEdBMUNVLGVBQWU7Z0dBQWYsZUFBZSx3U0NUNUIsMC9DQXlCYzsyRkRoQkQsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxXQUFXOzBFQUtaLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNvQixXQUFXO3NCQUFwQyxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvYWN0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnQtbmF2YmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25hdmJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE5hdmJhckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGljb25Db2xsZWN0aW9uITogc3RyaW5nO1xuICBASW5wdXQoKSBpY29uTmFtZUZpZWxkOiBzdHJpbmcgPSAnaWNvbk5hbWUnO1xuICBASW5wdXQoKSBsYWJlbEZpZWxkOiBzdHJpbmcgPSAnbGFiZWwnO1xuICBASW5wdXQoKSBsYWJlbFBsYWNlbWVudDogJ3RvcCcgfCAncmlnaHQnIHwgJ2JvdHRvbScgfCAnbGVmdCcgfCAnYXV0bycgfCAnbm9uZScgPSAnYXV0byc7XG4gIEBJbnB1dCgpIGl0ZW1zITogQWN0aW9uW107XG4gIEBJbnB1dCgpIHBvc2l0aW9uOiAndG9wJyB8ICdyaWdodCcgfCAnYm90dG9tJyB8ICdsZWZ0JyB8ICdhdXRvJyA9ICdhdXRvJztcblxuICBASW5wdXQoKSBjbGFzczogc3RyaW5nID0gJyc7XG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBnZXQgaG9zdENsYXNzZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gW1xuICAgICAgJ2Z0LW5hdmJhcicsXG4gICAgICB0aGlzLmNsYXNzLFxuICAgICAgdGhpcy5wb3NpdGlvblxuICAgIF0uam9pbignICcpO1xuICB9O1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgZ2V0Q29tcG9uZW50VHlwZShpdGVtOiBBY3Rpb24pOiBzdHJpbmcge1xuICAgIGxldCB0eXBlOiBzdHJpbmcgPSAndGV4dCc7XG4gICAgaWYgKCFpdGVtLnVybCB8fCBpdGVtLnVybC5tYXRjaCgvXihodHRwfGh0dHBzKTpcXC9cXC8oXFx3Kzp7MCwxfVxcdypAKT8oXFxTKykoOlswLTldKyk/KFxcL3xcXC8oW1xcdyMhOi4/Kz0mJUAhXFwtXFwvXSkpPy8pKSB7XG4gICAgICB0eXBlID0gJ2J1dHRvbic7XG4gICAgfSBlbHNlIHtcbiAgICAgIHR5cGUgPSAnbGluayc7XG4gICAgfVxuICAgIHJldHVybiB0eXBlO1xuICB9XG4gIHNldEl0ZW0oaXRlbTogQWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKGl0ZW0udXJsKSB7XG4gICAgICBpZiAoaXRlbS51cmwubWF0Y2goL14oaHR0cHxodHRwcyk6XFwvXFwvKFxcdys6ezAsMX1cXHcqQCk/KFxcUyspKDpbMC05XSspPyhcXC98XFwvKFtcXHcjITouPys9JiVAIVxcLVxcL10pKT8vKSkge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGl0ZW0udXJsO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoaXRlbS5jbGljaykge1xuICAgICAgaXRlbS5jbGljaygpO1xuICAgIH1cbiAgfVxuICB0b2dnbGVDb2xsYXBzaWJsZShhY3Rpb246IEFjdGlvbik6IHZvaWQge1xuICAgIGFjdGlvbi5tZXRhZGF0YS5zaG93ID0gIWFjdGlvbi5tZXRhZGF0YS5zaG93O1xuICB9XG4gIHRyYWNrQnlJdGVtKGluZGV4OiBudW1iZXIsIGl0ZW06IEFjdGlvbik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke2l0ZW0ubGFiZWx9ICR7aXRlbS51cmx9YDtcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Z0U3RhcnRdXCI+PC9uZy1jb250ZW50PlxuPGRpdiBjbGFzcz1cImxpc3RcIiAqbmdJZj1cIml0ZW1zXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgdHJhY2tCeTogdHJhY2tCeUl0ZW1cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFjdGlvblRlbXBsYXRlOyBjb250ZXh0OiB7IGl0ZW06IGl0ZW0gfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG48bmctY29udGVudCBzZWxlY3Q9XCJbZnRFbmRdXCI+PC9uZy1jb250ZW50PlxuPG5nLXRlbXBsYXRlICNhY3Rpb25UZW1wbGF0ZSBsZXQtaXRlbT1cIml0ZW1cIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJnZXRDb21wb25lbnRUeXBlKGl0ZW0pXCI+XG4gICAgICAgIDxidXR0b24gKm5nU3dpdGNoQ2FzZT1cIididXR0b24nXCIgdHlwZT1cImJ1dHRvblwiIG1hdFJpcHBsZSBjbGFzcz1cImxpc3RfX2l0ZW1cIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiW2xhYmVsUGxhY2VtZW50LCBpdGVtLmNsYXNzIHx8ICcnIF1cIiAoY2xpY2spPVwic2V0SXRlbShpdGVtKVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRleHRUZW1wbGF0ZTsgY29udGV4dDogeyBpdGVtOiBpdGVtIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxhICpuZ1N3aXRjaENhc2U9XCInbGluaydcIiBbcm91dGVyTGlua109XCJpdGVtLnVybFwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmVcIiBtYXRSaXBwbGUgY2xhc3M9XCJsaXN0X19pdGVtXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIltsYWJlbFBsYWNlbWVudCwgaXRlbS5jbGFzcyB8fCAnJyBdXCIgKGNsaWNrKT1cInNldEl0ZW0oaXRlbSlcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZXh0VGVtcGxhdGU7IGNvbnRleHQ6IHsgaXRlbTogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI3RleHRUZW1wbGF0ZSBsZXQtaXRlbT1cIml0ZW1cIj5cbiAgICA8ZGl2IGNsYXNzPVwiaXRlbVwiPlxuICAgICAgICA8ZnQtaWNvbiBjbGFzcz1cIml0ZW1fX2ljb25cIiAqbmdJZj1cIml0ZW1baWNvbk5hbWVGaWVsZF1cIiBbbmFtZV09XCJpdGVtW2ljb25OYW1lRmllbGRdXCJcbiAgICAgICAgICAgIFtjb2xsZWN0aW9uXT1cImljb25Db2xsZWN0aW9uXCIgW3RpdGxlXT1cImxhYmVsUGxhY2VtZW50ID09PSAnbm9uZScgPyBpdGVtW2xhYmVsRmllbGRdIDogJycgXCI+PC9mdC1pY29uPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbV9fbGFiZWxcIiAqbmdJZj1cImxhYmVsUGxhY2VtZW50ICE9PSAnbm9uZSdcIj57eyBpdGVtW2xhYmVsRmllbGRdIH19PC9kaXY+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, HostBinding, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "../../io/icon/icon.component";
|
|
5
|
-
import * as i3 from "@angular/material/button";
|
|
6
|
-
export class SearchboxComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.execute = new EventEmitter();
|
|
9
|
-
this.showChange = new EventEmitter();
|
|
10
|
-
this.class = '';
|
|
11
|
-
this.onChange = (_) => { };
|
|
12
|
-
this.onTouched = (_) => { };
|
|
13
|
-
}
|
|
14
|
-
get hostClasses() {
|
|
15
|
-
return [
|
|
16
|
-
'ft-searchbox',
|
|
17
|
-
this.class,
|
|
18
|
-
this.shown ? 'show' : ''
|
|
19
|
-
].join(' ');
|
|
20
|
-
}
|
|
21
|
-
;
|
|
22
|
-
set show(value) {
|
|
23
|
-
this.shown = value;
|
|
24
|
-
if (value) {
|
|
25
|
-
setTimeout(() => {
|
|
26
|
-
this.getNativeElement().focus();
|
|
27
|
-
}, 300);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
set value(value) {
|
|
31
|
-
this._value = value || '';
|
|
32
|
-
this.getNativeElement().value = this._value;
|
|
33
|
-
this.onChange(this._value);
|
|
34
|
-
this.onTouched(this._value);
|
|
35
|
-
}
|
|
36
|
-
get value() {
|
|
37
|
-
return this._value;
|
|
38
|
-
}
|
|
39
|
-
ngOnInit() {
|
|
40
|
-
}
|
|
41
|
-
closeSearch() {
|
|
42
|
-
this.showChange.emit(false);
|
|
43
|
-
}
|
|
44
|
-
getNativeElement() {
|
|
45
|
-
const input = this.placeholder ? this.inputPlaceholder : this.input;
|
|
46
|
-
return input.nativeElement;
|
|
47
|
-
}
|
|
48
|
-
registerOnChange(fn) {
|
|
49
|
-
this.onChange = fn;
|
|
50
|
-
}
|
|
51
|
-
registerOnTouched(fn) {
|
|
52
|
-
this.onTouched = fn;
|
|
53
|
-
}
|
|
54
|
-
setDisabledState(isDisabled) {
|
|
55
|
-
this.disabled = isDisabled;
|
|
56
|
-
}
|
|
57
|
-
onSearch(event) {
|
|
58
|
-
event.preventDefault();
|
|
59
|
-
this.getNativeElement().value = '';
|
|
60
|
-
this.execute.emit(this._value);
|
|
61
|
-
}
|
|
62
|
-
updateValue(event) {
|
|
63
|
-
this.value = event.target.value;
|
|
64
|
-
}
|
|
65
|
-
writeValue(value) {
|
|
66
|
-
this.value = value;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
SearchboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: SearchboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
70
|
-
SearchboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: SearchboxComponent, selector: "ft-searchbox", inputs: { placeholder: "placeholder", class: "class", show: "show", value: "value" }, outputs: { execute: "execute", showChange: "showChange" }, host: { properties: { "class": "this.hostClasses" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "inputPlaceholder", first: true, predicate: ["inputPlaceholder"], descendants: true }], ngImport: i0, template: "<form (submit)=\"onSearch($event)\" class=\"container p-2 p-sm-3 pb-md-3 pt-md-5 px-md-3 px-lg-5\">\n <div class=\"d-flex align-items-center\">\n <button type=\"button\" mat-icon-button class=\"p-2 mr-2\" (click)=\"closeSearch()\">\n <ft-icon name=\"arrow-left\" size=\"2\"></ft-icon>\n </button>\n <input #input type=\"search\" matInput class=\"flex-grow-1\" i18n-placeholder placeholder=\"Search criteria\"\n [disabled]=\"disabled\" (change)=\"updateValue($event)\" (keyup)=\"updateValue($event)\" *ngIf=\"!placeholder\" />\n <input #inputPlaceholder type=\"search\" matInput class=\"flex-grow-1\" [placeholder]=\"placeholder\"\n [disabled]=\"disabled\" (change)=\"updateValue($event)\" (keyup)=\"updateValue($event)\" *ngIf=\"placeholder\" />\n <button type=\"submit\" mat-icon-button class=\"p-2 ml-2\">\n <ft-icon name=\"search\" size=\"2\"></ft-icon>\n </button>\n </div>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "ft-icon", inputs: ["collection", "mode", "name", "path", "size", "src", "class"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
|
|
71
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: SearchboxComponent, decorators: [{
|
|
72
|
-
type: Component,
|
|
73
|
-
args: [{ selector: 'ft-searchbox', template: "<form (submit)=\"onSearch($event)\" class=\"container p-2 p-sm-3 pb-md-3 pt-md-5 px-md-3 px-lg-5\">\n <div class=\"d-flex align-items-center\">\n <button type=\"button\" mat-icon-button class=\"p-2 mr-2\" (click)=\"closeSearch()\">\n <ft-icon name=\"arrow-left\" size=\"2\"></ft-icon>\n </button>\n <input #input type=\"search\" matInput class=\"flex-grow-1\" i18n-placeholder placeholder=\"Search criteria\"\n [disabled]=\"disabled\" (change)=\"updateValue($event)\" (keyup)=\"updateValue($event)\" *ngIf=\"!placeholder\" />\n <input #inputPlaceholder type=\"search\" matInput class=\"flex-grow-1\" [placeholder]=\"placeholder\"\n [disabled]=\"disabled\" (change)=\"updateValue($event)\" (keyup)=\"updateValue($event)\" *ngIf=\"placeholder\" />\n <button type=\"submit\" mat-icon-button class=\"p-2 ml-2\">\n <ft-icon name=\"search\" size=\"2\"></ft-icon>\n </button>\n </div>\n</form>" }]
|
|
74
|
-
}], ctorParameters: function () { return []; }, propDecorators: { input: [{
|
|
75
|
-
type: ViewChild,
|
|
76
|
-
args: ['input', { static: false }]
|
|
77
|
-
}], inputPlaceholder: [{
|
|
78
|
-
type: ViewChild,
|
|
79
|
-
args: ['inputPlaceholder', { static: false }]
|
|
80
|
-
}], placeholder: [{
|
|
81
|
-
type: Input
|
|
82
|
-
}], execute: [{
|
|
83
|
-
type: Output
|
|
84
|
-
}], showChange: [{
|
|
85
|
-
type: Output
|
|
86
|
-
}], class: [{
|
|
87
|
-
type: Input
|
|
88
|
-
}], hostClasses: [{
|
|
89
|
-
type: HostBinding,
|
|
90
|
-
args: ['class']
|
|
91
|
-
}], show: [{
|
|
92
|
-
type: Input
|
|
93
|
-
}], value: [{
|
|
94
|
-
type: Input
|
|
95
|
-
}] } });
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvbmF2aWdhdGlvbi9zZWFyY2hib3gvc2VhcmNoYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvbmF2aWdhdGlvbi9zZWFyY2hib3gvc2VhcmNoYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFPM0csTUFBTSxPQUFPLGtCQUFrQjtJQThDN0I7UUFsQ1UsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDckMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFMUMsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQVM1QixhQUFRLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMzQixjQUFTLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQXFCWixDQUFDO0lBOUJqQixJQUEwQixXQUFXO1FBQ25DLE9BQU87WUFDTCxjQUFjO1lBQ2QsSUFBSSxDQUFDLEtBQUs7WUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDekIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDZCxDQUFDO0lBQUEsQ0FBQztJQUlGLElBQ0ksSUFBSSxDQUFDLEtBQWM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxLQUFLLEVBQUU7WUFDVCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUNUO0lBQ0gsQ0FBQztJQUNELElBQ0ksS0FBSyxDQUFDLEtBQVU7UUFDbEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzVDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFDRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUlELFFBQVE7SUFDUixDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFDRCxnQkFBZ0I7UUFDZCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDcEUsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDO0lBQzdCLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDO0lBQ0QsUUFBUSxDQUFDLEtBQWtCO1FBQ3pCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsV0FBVyxDQUFDLEtBQVU7UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBQ0QsVUFBVSxDQUFDLEtBQWE7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQzs7K0dBNUVVLGtCQUFrQjttR0FBbEIsa0JBQWtCLG1jQ1AvQixvOUJBYU87MkZETk0sa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGNBQWM7MEVBU3hCLEtBQUs7c0JBREosU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUdyQyxnQkFBZ0I7c0JBRGYsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBS3ZDLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUVFLEtBQUs7c0JBQWIsS0FBSztnQkFDb0IsV0FBVztzQkFBcEMsV0FBVzt1QkFBQyxPQUFPO2dCQVdoQixJQUFJO3NCQURQLEtBQUs7Z0JBVUYsS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnQtc2VhcmNoYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlYXJjaGJveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlYXJjaGJveC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaGJveENvbXBvbmVudCB7XG4gIC8qKlxuICAgICAqIENsYXNlIG8gY2xhc2VzIGFzaWduYWRhcyBhbCBjb21wb25lbnRlXG4gICAgICovXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIGlucHV0ITogRWxlbWVudFJlZjxhbnk+O1xuICBAVmlld0NoaWxkKCdpbnB1dFBsYWNlaG9sZGVyJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIGlucHV0UGxhY2Vob2xkZXIhOiBFbGVtZW50UmVmPGFueT47XG4gIGRpc2FibGVkITogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfdmFsdWUhOiBzdHJpbmc7XG4gIHByaXZhdGUgc2hvd24hOiBib29sZWFuO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlciE6IHN0cmluZztcbiAgQE91dHB1dCgpIGV4ZWN1dGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIHNob3dDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQElucHV0KCkgY2xhc3M6IHN0cmluZyA9ICcnO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgZ2V0IGhvc3RDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtcbiAgICAgICdmdC1zZWFyY2hib3gnLFxuICAgICAgdGhpcy5jbGFzcyxcbiAgICAgIHRoaXMuc2hvd24gPyAnc2hvdycgOiAnJ1xuICAgIF0uam9pbignICcpO1xuICB9O1xuXG4gIG9uQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xuICBvblRvdWNoZWQgPSAoXzogYW55KSA9PiB7IH07XG4gIEBJbnB1dCgpXG4gIHNldCBzaG93KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5zaG93biA9IHZhbHVlO1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuZ2V0TmF0aXZlRWxlbWVudCgpLmZvY3VzKCk7XG4gICAgICB9LCAzMDApO1xuICAgIH1cbiAgfVxuICBASW5wdXQoKVxuICBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWUgfHwgJyc7XG4gICAgdGhpcy5nZXROYXRpdmVFbGVtZW50KCkudmFsdWUgPSB0aGlzLl92YWx1ZTtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuX3ZhbHVlKTtcbiAgICB0aGlzLm9uVG91Y2hlZCh0aGlzLl92YWx1ZSk7XG4gIH1cbiAgZ2V0IHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cbiAgY2xvc2VTZWFyY2goKTogdm9pZCB7XG4gICAgdGhpcy5zaG93Q2hhbmdlLmVtaXQoZmFsc2UpO1xuICB9XG4gIGdldE5hdGl2ZUVsZW1lbnQoKSB7XG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLnBsYWNlaG9sZGVyID8gdGhpcy5pbnB1dFBsYWNlaG9sZGVyIDogdGhpcy5pbnB1dDtcbiAgICByZXR1cm4gaW5wdXQubmF0aXZlRWxlbWVudDtcbiAgfVxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cbiAgb25TZWFyY2goZXZlbnQ6IFN1Ym1pdEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLmdldE5hdGl2ZUVsZW1lbnQoKS52YWx1ZSA9ICcnO1xuICAgIHRoaXMuZXhlY3V0ZS5lbWl0KHRoaXMuX3ZhbHVlKTtcbiAgfVxuICB1cGRhdGVWYWx1ZShldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgfVxuICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cbiIsIjxmb3JtIChzdWJtaXQpPVwib25TZWFyY2goJGV2ZW50KVwiIGNsYXNzPVwiY29udGFpbmVyIHAtMiBwLXNtLTMgcGItbWQtMyBwdC1tZC01IHB4LW1kLTMgcHgtbGctNVwiPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1pY29uLWJ1dHRvbiBjbGFzcz1cInAtMiBtci0yXCIgKGNsaWNrKT1cImNsb3NlU2VhcmNoKClcIj5cbiAgICAgICAgICAgIDxmdC1pY29uIG5hbWU9XCJhcnJvdy1sZWZ0XCIgc2l6ZT1cIjJcIj48L2Z0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8aW5wdXQgI2lucHV0IHR5cGU9XCJzZWFyY2hcIiBtYXRJbnB1dCBjbGFzcz1cImZsZXgtZ3Jvdy0xXCIgaTE4bi1wbGFjZWhvbGRlciBwbGFjZWhvbGRlcj1cIlNlYXJjaCBjcml0ZXJpYVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiAoY2hhbmdlKT1cInVwZGF0ZVZhbHVlKCRldmVudClcIiAoa2V5dXApPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiICpuZ0lmPVwiIXBsYWNlaG9sZGVyXCIgLz5cbiAgICAgICAgPGlucHV0ICNpbnB1dFBsYWNlaG9sZGVyIHR5cGU9XCJzZWFyY2hcIiBtYXRJbnB1dCBjbGFzcz1cImZsZXgtZ3Jvdy0xXCIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIChjaGFuZ2UpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiIChrZXl1cCk9XCJ1cGRhdGVWYWx1ZSgkZXZlbnQpXCIgKm5nSWY9XCJwbGFjZWhvbGRlclwiIC8+XG4gICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG1hdC1pY29uLWJ1dHRvbiBjbGFzcz1cInAtMiBtbC0yXCI+XG4gICAgICAgICAgICA8ZnQtaWNvbiBuYW1lPVwic2VhcmNoXCIgc2l6ZT1cIjJcIj48L2Z0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9mb3JtPiJdfQ==
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Action } from '../../models/action';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class NavbarComponent {
|
|
4
|
-
iconCollection: string;
|
|
5
|
-
iconNameField: string;
|
|
6
|
-
labelField: string;
|
|
7
|
-
labelPlacement: 'top' | 'right' | 'bottom' | 'left' | 'auto' | 'none';
|
|
8
|
-
items: Action[];
|
|
9
|
-
position: 'top' | 'right' | 'bottom' | 'left' | 'auto';
|
|
10
|
-
class: string;
|
|
11
|
-
get hostClasses(): string;
|
|
12
|
-
constructor();
|
|
13
|
-
getComponentType(item: Action): string;
|
|
14
|
-
setItem(item: Action): void;
|
|
15
|
-
toggleCollapsible(action: Action): void;
|
|
16
|
-
trackByItem(index: number, item: Action): string;
|
|
17
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<NavbarComponent, never>;
|
|
18
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<NavbarComponent, "ft-navbar", never, { "iconCollection": "iconCollection"; "iconNameField": "iconNameField"; "labelField": "labelField"; "labelPlacement": "labelPlacement"; "items": "items"; "position": "position"; "class": "class"; }, {}, never, ["[ftStart]", "[ftEnd]"], false, never>;
|
|
19
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { ElementRef, EventEmitter } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class SearchboxComponent {
|
|
4
|
-
/**
|
|
5
|
-
* Clase o clases asignadas al componente
|
|
6
|
-
*/
|
|
7
|
-
input: ElementRef<any>;
|
|
8
|
-
inputPlaceholder: ElementRef<any>;
|
|
9
|
-
disabled: boolean;
|
|
10
|
-
private _value;
|
|
11
|
-
private shown;
|
|
12
|
-
placeholder: string;
|
|
13
|
-
execute: EventEmitter<string>;
|
|
14
|
-
showChange: EventEmitter<boolean>;
|
|
15
|
-
class: string;
|
|
16
|
-
get hostClasses(): string;
|
|
17
|
-
onChange: (_: any) => void;
|
|
18
|
-
onTouched: (_: any) => void;
|
|
19
|
-
set show(value: boolean);
|
|
20
|
-
set value(value: any);
|
|
21
|
-
get value(): any;
|
|
22
|
-
constructor();
|
|
23
|
-
ngOnInit(): void;
|
|
24
|
-
closeSearch(): void;
|
|
25
|
-
getNativeElement(): any;
|
|
26
|
-
registerOnChange(fn: any): void;
|
|
27
|
-
registerOnTouched(fn: any): void;
|
|
28
|
-
setDisabledState(isDisabled: boolean): void;
|
|
29
|
-
onSearch(event: SubmitEvent): void;
|
|
30
|
-
updateValue(event: any): void;
|
|
31
|
-
writeValue(value: string): void;
|
|
32
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SearchboxComponent, never>;
|
|
33
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SearchboxComponent, "ft-searchbox", never, { "placeholder": "placeholder"; "class": "class"; "show": "show"; "value": "value"; }, { "execute": "execute"; "showChange": "showChange"; }, never, never, false, never>;
|
|
34
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
.ft-button {
|
|
2
|
-
border-radius: var(--ft-button-border-radius);
|
|
3
|
-
background-color: var(--ft-button-bg);
|
|
4
|
-
border: 1px solid var(--ft-button-border-color);
|
|
5
|
-
color: var(--ft-button-color);
|
|
6
|
-
padding: 0.5rem;
|
|
7
|
-
transition: background-color .2s;
|
|
8
|
-
&--icon {
|
|
9
|
-
padding: 0.375rem;
|
|
10
|
-
}
|
|
11
|
-
&:hover {
|
|
12
|
-
background-color: rgba(var(--ft-button-bg-rgb), 0.1);
|
|
13
|
-
}
|
|
14
|
-
&:active {
|
|
15
|
-
background-color: rgba(var(--ft-button-bg-rgb), 0.2);
|
|
16
|
-
}
|
|
17
|
-
&--primary {
|
|
18
|
-
--ft-button-bg: var(--ft-primary-color);
|
|
19
|
-
--ft-button-bg-rgb: var(--ft-primary-color-rgb);
|
|
20
|
-
--ft-button-border-color: var(--ft-primary-color);
|
|
21
|
-
--ft-button-color: var(--ft-button-primary-color);
|
|
22
|
-
}
|
|
23
|
-
}
|