design-angular-kit 1.0.0-2 → 1.0.0-21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +102 -26
- package/assets/i18n/en.json +122 -0
- package/assets/i18n/it.json +52 -11
- package/esm2022/lib/abstracts/abstract-form.component.mjs +186 -0
- package/esm2022/lib/abstracts/abstract.component.mjs +45 -0
- package/esm2022/lib/components/components.module.mjs +188 -0
- package/esm2022/lib/components/core/accordion/accordion.component.mjs +38 -0
- package/esm2022/lib/components/core/alert/alert.component.mjs +74 -0
- package/esm2022/lib/components/core/badge/badge.directive.mjs +38 -0
- package/esm2022/lib/components/core/button/button.directive.mjs +85 -0
- package/esm2022/lib/components/core/callout/callout.component.mjs +57 -0
- package/esm2022/lib/components/core/card/card.component.mjs +64 -0
- package/esm2022/lib/components/core/carousel/carousel/carousel.component.mjs +89 -0
- package/esm2022/lib/components/core/carousel/carousel-item/carousel-item.component.mjs +19 -0
- package/esm2022/lib/components/core/carousel/carousel.module.mjs +23 -0
- package/esm2022/lib/components/core/chip/chip.component.mjs +96 -0
- package/esm2022/lib/components/core/collapse/collapse.component.mjs +101 -0
- package/esm2022/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.mjs +24 -0
- package/esm2022/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.mjs +11 -0
- package/esm2022/lib/components/core/dimmer/dimmer.component.mjs +59 -0
- package/esm2022/lib/components/core/dimmer/dimmer.module.mjs +27 -0
- package/esm2022/lib/components/core/dropdown/dropdown/dropdown.component.mjs +143 -0
- package/esm2022/lib/components/core/dropdown/dropdown-item/dropdown-item.component.mjs +68 -0
- package/esm2022/lib/components/core/dropdown/dropdown.module.mjs +18 -0
- package/esm2022/lib/components/core/forward/forward.directive.mjs +53 -0
- package/esm2022/lib/components/core/link/link.component.mjs +46 -0
- package/esm2022/lib/components/core/list/list/list.component.mjs +17 -0
- package/esm2022/lib/components/core/list/list-item/list-item.component.mjs +40 -0
- package/esm2022/lib/components/core/list/list.module.mjs +23 -0
- package/esm2022/lib/components/core/modal/modal.component.mjs +192 -0
- package/esm2022/lib/components/core/notifications/notifications.component.mjs +111 -0
- package/esm2022/lib/components/core/pagination/pagination.component.mjs +133 -0
- package/esm2022/lib/components/core/popover/popover.directive.mjs +175 -0
- package/esm2022/lib/components/core/progress-bar/progress-bar.component.mjs +35 -0
- package/esm2022/lib/components/core/progress-button/progress-button.component.mjs +27 -0
- package/esm2022/lib/components/core/spinner/spinner.component.mjs +36 -0
- package/esm2022/lib/components/core/steppers/steppers-container/steppers-container.component.mjs +138 -0
- package/esm2022/lib/components/core/steppers/steppers-item/steppers-item.component.mjs +19 -0
- package/esm2022/lib/components/core/steppers/steppers.module.mjs +23 -0
- package/esm2022/lib/components/core/tab/tab-container/tab-container.component.mjs +60 -0
- package/esm2022/lib/components/core/tab/tab-item/tab-item.component.mjs +36 -0
- package/esm2022/lib/components/core/tab/tab.module.mjs +23 -0
- package/esm2022/lib/components/core/table/table.component.mjs +57 -0
- package/esm2022/lib/components/core/tooltip/tooltip.directive.mjs +142 -0
- package/esm2022/lib/components/form/checkbox/checkbox.component.mjs +49 -0
- package/esm2022/lib/components/form/form.module.mjs +55 -0
- package/esm2022/lib/components/form/input/input.component.mjs +239 -0
- package/esm2022/lib/components/form/password-input/password-input.component.mjs +155 -0
- package/esm2022/lib/components/form/radio-button/radio-button.component.mjs +69 -0
- package/esm2022/lib/components/form/range/range.component.mjs +64 -0
- package/esm2022/lib/components/form/rating/rating.component.mjs +51 -0
- package/esm2022/lib/components/form/select/select.component.mjs +70 -0
- package/esm2022/lib/components/form/textarea/textarea.component.mjs +47 -0
- package/esm2022/lib/components/form/upload-drag-drop/upload-drag-drop.component.mjs +140 -0
- package/esm2022/lib/components/form/upload-file-list/upload-file-list.component.mjs +112 -0
- package/esm2022/lib/components/navigation/back-button/back-button.component.mjs +71 -0
- package/esm2022/lib/components/navigation/back-to-top/back-to-top.component.mjs +64 -0
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.mjs +57 -0
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +23 -0
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumbs.module.mjs +18 -0
- package/esm2022/lib/components/navigation/header/header.component.mjs +58 -0
- package/esm2022/lib/components/utils/error-page/error-page.component.mjs +81 -0
- package/esm2022/lib/components/utils/icon/icon.component.mjs +55 -0
- package/esm2022/lib/components/utils/language-switcher/language-switcher.component.mjs +47 -0
- package/esm2022/lib/design-angular-kit-config.mjs +15 -0
- package/esm2022/lib/design-angular-kit.module.mjs +68 -0
- package/esm2022/lib/interfaces/core.mjs +16 -0
- package/esm2022/lib/interfaces/design-angular-kit-init.mjs +2 -0
- package/esm2022/lib/interfaces/form.mjs +2 -0
- package/esm2022/lib/interfaces/icon.mjs +165 -0
- package/esm2022/lib/interfaces/utils.mjs +2 -0
- package/esm2022/lib/pipes/mark-matching-text.pipe.mjs +37 -0
- package/esm2022/lib/services/notification/notification.service.mjs +120 -0
- package/esm2022/lib/utils/file-utils.mjs +73 -0
- package/esm2022/lib/utils/regex.mjs +31 -0
- package/esm2022/lib/validators/it-validators.mjs +153 -0
- package/esm2022/public_api.mjs +85 -0
- package/fesm2022/design-angular-kit.mjs +4649 -0
- package/fesm2022/design-angular-kit.mjs.map +1 -0
- package/lib/abstracts/{abstract-form-component.d.ts → abstract-form.component.d.ts} +12 -10
- package/lib/abstracts/abstract.component.d.ts +24 -8
- package/lib/components/components.module.d.ts +40 -0
- package/lib/components/core/accordion/accordion.component.d.ts +11 -9
- package/lib/components/core/alert/alert.component.d.ts +32 -5
- package/lib/components/core/badge/badge.directive.d.ts +12 -6
- package/lib/components/core/button/button.directive.d.ts +24 -17
- package/lib/components/core/callout/callout.component.d.ts +26 -17
- package/lib/components/core/card/card.component.d.ts +23 -13
- package/lib/components/core/carousel/carousel/carousel.component.d.ts +34 -15
- package/lib/components/core/carousel/carousel-item/carousel-item.component.d.ts +8 -3
- package/lib/components/core/carousel/carousel.module.d.ts +8 -0
- package/lib/components/core/chip/chip.component.d.ts +8 -5
- package/lib/components/core/collapse/collapse.component.d.ts +16 -15
- package/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.d.ts +3 -3
- package/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.d.ts +3 -3
- package/lib/components/core/dimmer/dimmer.component.d.ts +4 -4
- package/lib/components/core/dimmer/dimmer.module.d.ts +9 -0
- package/lib/components/core/dropdown/dropdown/dropdown.component.d.ts +53 -10
- package/lib/components/core/dropdown/dropdown-item/dropdown-item.component.d.ts +8 -13
- package/lib/components/core/dropdown/dropdown.module.d.ts +8 -0
- package/lib/components/core/forward/forward.directive.d.ts +3 -3
- package/lib/components/core/link/link.component.d.ts +9 -10
- package/lib/components/core/list/list/list.component.d.ts +6 -5
- package/lib/components/core/list/list-item/list-item.component.d.ts +12 -8
- package/lib/components/core/list/list.module.d.ts +8 -0
- package/lib/components/core/modal/modal.component.d.ts +83 -14
- package/lib/components/core/notifications/notifications.component.d.ts +25 -11
- package/lib/components/core/pagination/pagination.component.d.ts +71 -10
- package/lib/components/core/popover/popover.directive.d.ts +15 -14
- package/lib/components/core/progress-bar/progress-bar.component.d.ts +6 -6
- package/lib/components/core/progress-button/progress-button.component.d.ts +5 -5
- package/lib/components/core/spinner/spinner.component.d.ts +6 -6
- package/lib/components/core/steppers/steppers-container/steppers-container.component.d.ts +128 -0
- package/lib/components/core/steppers/steppers-item/steppers-item.component.d.ts +20 -0
- package/lib/components/core/steppers/steppers.module.d.ts +8 -0
- package/lib/components/core/tab/tab-container/tab-container.component.d.ts +14 -12
- package/lib/components/core/tab/tab-item/tab-item.component.d.ts +11 -11
- package/lib/components/core/tab/tab.module.d.ts +8 -0
- package/lib/components/core/table/table.component.d.ts +14 -14
- package/lib/components/core/tooltip/tooltip.directive.d.ts +12 -11
- package/lib/components/form/checkbox/checkbox.component.d.ts +13 -10
- package/lib/components/form/form.module.d.ts +16 -0
- package/lib/components/form/input/input.component.d.ts +59 -13
- package/lib/components/form/password-input/password-input.component.d.ts +33 -8
- package/lib/components/form/radio-button/radio-button.component.d.ts +7 -6
- package/lib/components/form/range/range.component.d.ts +42 -0
- package/lib/components/form/rating/rating.component.d.ts +24 -0
- package/lib/components/form/select/select.component.d.ts +12 -6
- package/lib/components/form/textarea/textarea.component.d.ts +5 -5
- package/lib/components/form/upload-drag-drop/upload-drag-drop.component.d.ts +8 -7
- package/lib/components/form/upload-file-list/upload-file-list.component.d.ts +11 -9
- package/lib/components/navigation/back-button/back-button.component.d.ts +4 -4
- package/lib/components/navigation/back-to-top/back-to-top.component.d.ts +28 -13
- package/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.d.ts +11 -9
- package/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.d.ts +6 -6
- package/lib/components/navigation/breadcrumbs/breadcrumbs.module.d.ts +8 -0
- package/lib/components/navigation/header/header.component.d.ts +9 -13
- package/lib/components/utils/error-page/error-page.component.d.ts +44 -0
- package/lib/components/utils/icon/icon.component.d.ts +14 -16
- package/lib/components/utils/language-switcher/language-switcher.component.d.ts +27 -0
- package/lib/design-angular-kit-config.d.ts +16 -0
- package/lib/design-angular-kit.module.d.ts +9 -4
- package/lib/interfaces/core.d.ts +40 -16
- package/lib/interfaces/design-angular-kit-init.d.ts +7 -0
- package/lib/interfaces/form.d.ts +32 -8
- package/lib/interfaces/icon.d.ts +4 -3
- package/lib/interfaces/utils.d.ts +10 -0
- package/lib/pipes/mark-matching-text.pipe.d.ts +10 -0
- package/lib/services/{notifications/notifications.service.d.ts → notification/notification.service.d.ts} +20 -20
- package/lib/utils/boolean-input.d.ts +1 -1
- package/lib/utils/file-utils.d.ts +5 -0
- package/lib/utils/regex.d.ts +5 -0
- package/lib/validators/it-validators.d.ts +16 -9
- package/package.json +13 -17
- package/public_api.d.ts +21 -4
- package/esm2020/lib/abstracts/abstract-form-component.mjs +0 -165
- package/esm2020/lib/abstracts/abstract.component.mjs +0 -20
- package/esm2020/lib/components/core/accordion/accordion.component.mjs +0 -20
- package/esm2020/lib/components/core/alert/alert.component.mjs +0 -29
- package/esm2020/lib/components/core/badge/badge.directive.mjs +0 -34
- package/esm2020/lib/components/core/button/button.directive.mjs +0 -78
- package/esm2020/lib/components/core/callout/callout.component.mjs +0 -59
- package/esm2020/lib/components/core/card/card.component.mjs +0 -58
- package/esm2020/lib/components/core/carousel/carousel/carousel.component.mjs +0 -66
- package/esm2020/lib/components/core/carousel/carousel-item/carousel-item.component.mjs +0 -14
- package/esm2020/lib/components/core/chip/chip.component.mjs +0 -89
- package/esm2020/lib/components/core/collapse/collapse.component.mjs +0 -96
- package/esm2020/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.mjs +0 -24
- package/esm2020/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.mjs +0 -11
- package/esm2020/lib/components/core/dimmer/dimmer.component.mjs +0 -59
- package/esm2020/lib/components/core/dropdown/dropdown/dropdown.component.mjs +0 -60
- package/esm2020/lib/components/core/dropdown/dropdown-item/dropdown-item.component.mjs +0 -71
- package/esm2020/lib/components/core/forward/forward.directive.mjs +0 -51
- package/esm2020/lib/components/core/link/link.component.mjs +0 -39
- package/esm2020/lib/components/core/list/list/list.component.mjs +0 -13
- package/esm2020/lib/components/core/list/list-item/list-item.component.mjs +0 -36
- package/esm2020/lib/components/core/modal/modal.component.mjs +0 -98
- package/esm2020/lib/components/core/notifications/notifications.component.mjs +0 -66
- package/esm2020/lib/components/core/pagination/pagination.component.mjs +0 -51
- package/esm2020/lib/components/core/popover/popover.directive.mjs +0 -176
- package/esm2020/lib/components/core/progress-bar/progress-bar.component.mjs +0 -34
- package/esm2020/lib/components/core/progress-button/progress-button.component.mjs +0 -27
- package/esm2020/lib/components/core/spinner/spinner.component.mjs +0 -35
- package/esm2020/lib/components/core/tab/tab-container/tab-container.component.mjs +0 -33
- package/esm2020/lib/components/core/tab/tab-item/tab-item.component.mjs +0 -36
- package/esm2020/lib/components/core/table/table.component.mjs +0 -57
- package/esm2020/lib/components/core/tooltip/tooltip.directive.mjs +0 -140
- package/esm2020/lib/components/form/checkbox/checkbox.component.mjs +0 -40
- package/esm2020/lib/components/form/input/input.component.mjs +0 -159
- package/esm2020/lib/components/form/password-input/password-input.component.mjs +0 -112
- package/esm2020/lib/components/form/radio-button/radio-button.component.mjs +0 -53
- package/esm2020/lib/components/form/select/select.component.mjs +0 -62
- package/esm2020/lib/components/form/textarea/textarea.component.mjs +0 -46
- package/esm2020/lib/components/form/upload-drag-drop/upload-drag-drop.component.mjs +0 -134
- package/esm2020/lib/components/form/upload-file-list/upload-file-list.component.mjs +0 -99
- package/esm2020/lib/components/navigation/back-button/back-button.component.mjs +0 -69
- package/esm2020/lib/components/navigation/back-to-top/back-to-top.component.mjs +0 -39
- package/esm2020/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.mjs +0 -45
- package/esm2020/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +0 -23
- package/esm2020/lib/components/navigation/header/header.component.mjs +0 -61
- package/esm2020/lib/components/utils/icon/icon.component.mjs +0 -54
- package/esm2020/lib/components/utils/not-found-page/not-found-page.component.mjs +0 -13
- package/esm2020/lib/design-angular-kit.module.mjs +0 -42
- package/esm2020/lib/interfaces/core.mjs +0 -16
- package/esm2020/lib/interfaces/form.mjs +0 -2
- package/esm2020/lib/interfaces/icon.mjs +0 -2
- package/esm2020/lib/modules/components.module.mjs +0 -241
- package/esm2020/lib/services/notifications/notifications.service.mjs +0 -122
- package/esm2020/lib/utils/file-utils.mjs +0 -65
- package/esm2020/lib/utils/regex.mjs +0 -26
- package/esm2020/lib/validators/it-validators.mjs +0 -131
- package/esm2020/public_api.mjs +0 -64
- package/fesm2015/design-angular-kit.mjs +0 -3271
- package/fesm2015/design-angular-kit.mjs.map +0 -1
- package/fesm2020/design-angular-kit.mjs +0 -3231
- package/fesm2020/design-angular-kit.mjs.map +0 -1
- package/lib/components/utils/not-found-page/not-found-page.component.d.ts +0 -5
- package/lib/modules/components.module.d.ts +0 -57
- /package/{esm2020 → esm2022}/design-angular-kit.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/utils/boolean-input.mjs +0 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ContentChildren, Input, ViewChildren } from '@angular/core';
|
|
2
|
+
import { isTrueBooleanInput } from '../../../../utils/boolean-input';
|
|
3
|
+
import { ItTabItemComponent } from '../tab-item/tab-item.component';
|
|
4
|
+
import { of, startWith, switchMap, tap } from 'rxjs';
|
|
5
|
+
import { Tab } from 'bootstrap-italia';
|
|
6
|
+
import { ItAbstractComponent } from '../../../../abstracts/abstract.component';
|
|
7
|
+
import { NgForOf, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
8
|
+
import { ItIconComponent } from '../../../utils/icon/icon.component';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export class ItTabContainerComponent extends ItAbstractComponent {
|
|
11
|
+
isTrueBooleanInput(booleanInput) {
|
|
12
|
+
return isTrueBooleanInput(booleanInput);
|
|
13
|
+
}
|
|
14
|
+
ngAfterViewInit() {
|
|
15
|
+
super.ngAfterViewInit();
|
|
16
|
+
this.tabs?.changes.pipe(// When tabs changes (dynamic add/remove)
|
|
17
|
+
startWith(undefined), tap(() => {
|
|
18
|
+
this.tabSubscriptions?.forEach(sub => sub.unsubscribe()); // Remove old subscriptions
|
|
19
|
+
this.tabSubscriptions = this.tabs?.map(tab => tab.valueChanges.subscribe(() => {
|
|
20
|
+
this._changeDetectorRef.detectChanges(); // DetectChanges when tab-item attributes changes
|
|
21
|
+
}));
|
|
22
|
+
this._changeDetectorRef.detectChanges(); // Force update html render
|
|
23
|
+
}), switchMap(() => this.tabNavLinks?.changes.pipe(startWith(undefined)) || of(undefined))).subscribe(() => {
|
|
24
|
+
// Init tabs from bootstrap-italia
|
|
25
|
+
this.tabNavLinks?.forEach(tabNavLink => {
|
|
26
|
+
const triggerEl = tabNavLink.nativeElement, tabTrigger = Tab.getOrCreateInstance(triggerEl);
|
|
27
|
+
if (triggerEl.getAttribute('tab-listener') !== 'true') {
|
|
28
|
+
triggerEl.addEventListener('click', event => {
|
|
29
|
+
event.preventDefault();
|
|
30
|
+
tabTrigger.show();
|
|
31
|
+
this._changeDetectorRef.detectChanges();
|
|
32
|
+
});
|
|
33
|
+
triggerEl.setAttribute('tab-listener', 'true'); // Prevents multiple insertion of the listener
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
ngOnDestroy() {
|
|
39
|
+
this.tabSubscriptions?.forEach(sub => sub.unsubscribe());
|
|
40
|
+
}
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTabContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItTabContainerComponent, isStandalone: true, selector: "it-tab-container", inputs: { auto: "auto", iconText: "iconText", dark: "dark" }, queries: [{ propertyName: "tabs", predicate: ItTabItemComponent }], viewQueries: [{ propertyName: "tabNavLinks", predicate: ["tabNavLinks"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ul *ngIf=\"tabs\"\n class=\"nav nav-tabs\"\n [class.auto]=\"isTrueBooleanInput(auto)\"\n [class.nav-tabs-icon-text]=\"isTrueBooleanInput(iconText)\"\n [class.nav-dark]=\"isTrueBooleanInput(dark)\"\n role=\"tablist\">\n\n <li class=\"nav-item\" *ngFor=\"let tab of tabs\">\n <a #tabNavLinks [id]=\"tab.id+'-tab-link'\"\n role=\"tab\"\n class=\"nav-link\"\n [class.active]=\"isTrueBooleanInput(tab.active)\"\n [class.disabled]=\"isTrueBooleanInput(tab.disabled)\"\n [attr.href]=\"'#'+tab.id+'-tab'\"\n [attr.aria-controls]=\"tab.id+'-tab'\">\n <it-icon *ngIf=\"tab.icon\" [name]=\"tab.icon\" class=\"me-2\"></it-icon>\n {{tab.label}}\n </a>\n </li>\n</ul>\n\n<div *ngIf=\"tabs\" class=\"tab-content\">\n <div *ngFor=\"let tab of tabs\"\n [id]=\"tab.id+'-tab'\"\n class=\"tab-pane p-4 fade {{tab.class ?? ''}}\"\n [class.active]=\"isTrueBooleanInput(tab.active)\"\n [class.show]=\"isTrueBooleanInput(tab.active)\"\n role=\"tabpanel\"\n [attr.aria-labelledby]=\"tab.id+'-tab-link'\">\n <ng-container *ngTemplateOutlet=\"tab.htmlContent\"></ng-container>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ItIconComponent, selector: "it-icon[name]", inputs: ["name", "size", "color", "padded", "svgClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTabContainerComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ standalone: true, selector: 'it-tab-container', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgForOf, NgIf, ItIconComponent, NgTemplateOutlet], template: "<ul *ngIf=\"tabs\"\n class=\"nav nav-tabs\"\n [class.auto]=\"isTrueBooleanInput(auto)\"\n [class.nav-tabs-icon-text]=\"isTrueBooleanInput(iconText)\"\n [class.nav-dark]=\"isTrueBooleanInput(dark)\"\n role=\"tablist\">\n\n <li class=\"nav-item\" *ngFor=\"let tab of tabs\">\n <a #tabNavLinks [id]=\"tab.id+'-tab-link'\"\n role=\"tab\"\n class=\"nav-link\"\n [class.active]=\"isTrueBooleanInput(tab.active)\"\n [class.disabled]=\"isTrueBooleanInput(tab.disabled)\"\n [attr.href]=\"'#'+tab.id+'-tab'\"\n [attr.aria-controls]=\"tab.id+'-tab'\">\n <it-icon *ngIf=\"tab.icon\" [name]=\"tab.icon\" class=\"me-2\"></it-icon>\n {{tab.label}}\n </a>\n </li>\n</ul>\n\n<div *ngIf=\"tabs\" class=\"tab-content\">\n <div *ngFor=\"let tab of tabs\"\n [id]=\"tab.id+'-tab'\"\n class=\"tab-pane p-4 fade {{tab.class ?? ''}}\"\n [class.active]=\"isTrueBooleanInput(tab.active)\"\n [class.show]=\"isTrueBooleanInput(tab.active)\"\n role=\"tabpanel\"\n [attr.aria-labelledby]=\"tab.id+'-tab-link'\">\n <ng-container *ngTemplateOutlet=\"tab.htmlContent\"></ng-container>\n </div>\n</div>\n" }]
|
|
47
|
+
}], propDecorators: { auto: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], iconText: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], dark: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], tabs: [{
|
|
54
|
+
type: ContentChildren,
|
|
55
|
+
args: [ItTabItemComponent]
|
|
56
|
+
}], tabNavLinks: [{
|
|
57
|
+
type: ViewChildren,
|
|
58
|
+
args: ['tabNavLinks']
|
|
59
|
+
}] } });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdGFiL3RhYi1jb250YWluZXIvdGFiLWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdGFiL3RhYi1jb250YWluZXIvdGFiLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBRWYsS0FBSyxFQUdMLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWdCLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQWdCLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOztBQVNyRSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsbUJBQW1CO0lBMEI5RCxrQkFBa0IsQ0FBQyxZQUEyQjtRQUM1QyxPQUFPLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFUSxlQUFlO1FBQ3RCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUUseUNBQXlDO1FBQ2hFLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFDcEIsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLDJCQUEyQjtZQUNyRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQzVFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLGlEQUFpRDtZQUM1RixDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ0osSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsMkJBQTJCO1FBQ3RFLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQ3ZGLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNmLGtDQUFrQztZQUNsQyxJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDckMsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLGFBQWEsRUFDeEMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFFbEQsSUFBSSxTQUFTLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxLQUFLLE1BQU0sRUFBRTtvQkFDckQsU0FBUyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRTt3QkFDMUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO3dCQUN2QixVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7d0JBQ2xCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDMUMsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsU0FBUyxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyw4Q0FBOEM7aUJBQy9GO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzNELENBQUM7OEdBL0RVLHVCQUF1QjtrR0FBdkIsdUJBQXVCLCtKQW9CakIsa0JBQWtCLG1KQzlDckMsNnBDQWdDQSw0Q0RSWSxPQUFPLG1IQUFFLElBQUksNkZBQUUsZUFBZSxtSEFBRSxnQkFBZ0I7OzJGQUUvQyx1QkFBdUI7a0JBUG5DLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLGtCQUFrQixtQkFFWCx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLENBQUM7OEJBT2xELElBQUk7c0JBQVosS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLElBQUk7c0JBQVosS0FBSztnQkFLK0IsSUFBSTtzQkFBeEMsZUFBZTt1QkFBQyxrQkFBa0I7Z0JBRUUsV0FBVztzQkFBL0MsWUFBWTt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBRdWVyeUxpc3QsXG4gIFZpZXdDaGlsZHJlblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgaXNUcnVlQm9vbGVhbklucHV0IH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMvYm9vbGVhbi1pbnB1dCc7XG5pbXBvcnQgeyBJdFRhYkl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi90YWItaXRlbS90YWItaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgb2YsIHN0YXJ0V2l0aCwgU3Vic2NyaXB0aW9uLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGFiIH0gZnJvbSAnYm9vdHN0cmFwLWl0YWxpYSc7XG5pbXBvcnQgeyBJdEFic3RyYWN0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vYWJzdHJhY3RzL2Fic3RyYWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ0Zvck9mLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEl0SWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2ljb24vaWNvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdpdC10YWItY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYi1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW05nRm9yT2YsIE5nSWYsIEl0SWNvbkNvbXBvbmVudCwgTmdUZW1wbGF0ZU91dGxldF1cbn0pXG5leHBvcnQgY2xhc3MgSXRUYWJDb250YWluZXJDb21wb25lbnQgZXh0ZW5kcyBJdEFic3RyYWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcblxuICAvKipcbiAgICogVGFicyBhdXRvbWF0aWNhbGx5IG9jY3VweSB0aGUgZW50aXJlIGF2YWlsYWJsZSB3aWR0aFxuICAgKi9cbiAgQElucHV0KCkgYXV0bzogQm9vbGVhbklucHV0IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUbyBvYnRhaW4gdGhlIGNvcnJlY3QgbWFyZ2luIGJldHdlZW4gdGV4dCBhbmQgaWNvbiBpbiB0aGUgaG9yaXpvbnRhbGx5IGRldmVsb3BlZCB0YWJcbiAgICovXG4gIEBJbnB1dCgpIGljb25UZXh0OiBCb29sZWFuSW5wdXQgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIERhcmsgc3R5bGVcbiAgICovXG4gIEBJbnB1dCgpIGRhcms6IEJvb2xlYW5JbnB1dCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIHRhYiBpdGVtc1xuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihJdFRhYkl0ZW1Db21wb25lbnQpIHRhYnM/OiBRdWVyeUxpc3Q8SXRUYWJJdGVtQ29tcG9uZW50PjtcblxuICBAVmlld0NoaWxkcmVuKCd0YWJOYXZMaW5rcycpIHByaXZhdGUgdGFiTmF2TGlua3M/OiBRdWVyeUxpc3Q8RWxlbWVudFJlZjxIVE1MQW5jaG9yRWxlbWVudD4+O1xuXG4gIHByaXZhdGUgdGFiU3Vic2NyaXB0aW9ucz86IEFycmF5PFN1YnNjcmlwdGlvbj47XG5cbiAgaXNUcnVlQm9vbGVhbklucHV0KGJvb2xlYW5JbnB1dD86IEJvb2xlYW5JbnB1dCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1RydWVCb29sZWFuSW5wdXQoYm9vbGVhbklucHV0KTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcblxuICAgIHRoaXMudGFicz8uY2hhbmdlcy5waXBlKCAvLyBXaGVuIHRhYnMgY2hhbmdlcyAoZHluYW1pYyBhZGQvcmVtb3ZlKVxuICAgICAgc3RhcnRXaXRoKHVuZGVmaW5lZCksXG4gICAgICB0YXAoKCkgPT4ge1xuICAgICAgICB0aGlzLnRhYlN1YnNjcmlwdGlvbnM/LmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTsgLy8gUmVtb3ZlIG9sZCBzdWJzY3JpcHRpb25zXG4gICAgICAgIHRoaXMudGFiU3Vic2NyaXB0aW9ucyA9IHRoaXMudGFicz8ubWFwKHRhYiA9PiB0YWIudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpOyAvLyBEZXRlY3RDaGFuZ2VzIHdoZW4gdGFiLWl0ZW0gYXR0cmlidXRlcyBjaGFuZ2VzXG4gICAgICAgIH0pKTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpOyAvLyBGb3JjZSB1cGRhdGUgaHRtbCByZW5kZXJcbiAgICAgIH0pLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMudGFiTmF2TGlua3M/LmNoYW5nZXMucGlwZShzdGFydFdpdGgodW5kZWZpbmVkKSkgfHwgb2YodW5kZWZpbmVkKSlcbiAgICApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAvLyBJbml0IHRhYnMgZnJvbSBib290c3RyYXAtaXRhbGlhXG4gICAgICB0aGlzLnRhYk5hdkxpbmtzPy5mb3JFYWNoKHRhYk5hdkxpbmsgPT4ge1xuICAgICAgICBjb25zdCB0cmlnZ2VyRWwgPSB0YWJOYXZMaW5rLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgdGFiVHJpZ2dlciA9IFRhYi5nZXRPckNyZWF0ZUluc3RhbmNlKHRyaWdnZXJFbCk7XG5cbiAgICAgICAgaWYgKHRyaWdnZXJFbC5nZXRBdHRyaWJ1dGUoJ3RhYi1saXN0ZW5lcicpICE9PSAndHJ1ZScpIHtcbiAgICAgICAgICB0cmlnZ2VyRWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBldmVudCA9PiB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGFiVHJpZ2dlci5zaG93KCk7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdHJpZ2dlckVsLnNldEF0dHJpYnV0ZSgndGFiLWxpc3RlbmVyJywgJ3RydWUnKTsgLy8gUHJldmVudHMgbXVsdGlwbGUgaW5zZXJ0aW9uIG9mIHRoZSBsaXN0ZW5lclxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMudGFiU3Vic2NyaXB0aW9ucz8uZm9yRWFjaChzdWIgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xuICB9XG59XG4iLCI8dWwgKm5nSWY9XCJ0YWJzXCJcbiAgICBjbGFzcz1cIm5hdiBuYXYtdGFic1wiXG4gICAgW2NsYXNzLmF1dG9dPVwiaXNUcnVlQm9vbGVhbklucHV0KGF1dG8pXCJcbiAgICBbY2xhc3MubmF2LXRhYnMtaWNvbi10ZXh0XT1cImlzVHJ1ZUJvb2xlYW5JbnB1dChpY29uVGV4dClcIlxuICAgIFtjbGFzcy5uYXYtZGFya109XCJpc1RydWVCb29sZWFuSW5wdXQoZGFyaylcIlxuICAgIHJvbGU9XCJ0YWJsaXN0XCI+XG5cbiAgPGxpIGNsYXNzPVwibmF2LWl0ZW1cIiAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYnNcIj5cbiAgICA8YSAjdGFiTmF2TGlua3MgW2lkXT1cInRhYi5pZCsnLXRhYi1saW5rJ1wiXG4gICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgY2xhc3M9XCJuYXYtbGlua1wiXG4gICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpc1RydWVCb29sZWFuSW5wdXQodGFiLmFjdGl2ZSlcIlxuICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJpc1RydWVCb29sZWFuSW5wdXQodGFiLmRpc2FibGVkKVwiXG4gICAgICAgW2F0dHIuaHJlZl09XCInIycrdGFiLmlkKyctdGFiJ1wiXG4gICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJ0YWIuaWQrJy10YWInXCI+XG4gICAgICA8aXQtaWNvbiAqbmdJZj1cInRhYi5pY29uXCIgW25hbWVdPVwidGFiLmljb25cIiBjbGFzcz1cIm1lLTJcIj48L2l0LWljb24+XG4gICAgICB7e3RhYi5sYWJlbH19XG4gICAgPC9hPlxuICA8L2xpPlxuPC91bD5cblxuPGRpdiAqbmdJZj1cInRhYnNcIiBjbGFzcz1cInRhYi1jb250ZW50XCI+XG4gIDxkaXYgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzXCJcbiAgICAgICBbaWRdPVwidGFiLmlkKyctdGFiJ1wiXG4gICAgICAgY2xhc3M9XCJ0YWItcGFuZSBwLTQgZmFkZSB7e3RhYi5jbGFzcyA/PyAnJ319XCJcbiAgICAgICBbY2xhc3MuYWN0aXZlXT1cImlzVHJ1ZUJvb2xlYW5JbnB1dCh0YWIuYWN0aXZlKVwiXG4gICAgICAgW2NsYXNzLnNob3ddPVwiaXNUcnVlQm9vbGVhbklucHV0KHRhYi5hY3RpdmUpXCJcbiAgICAgICByb2xlPVwidGFicGFuZWxcIlxuICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJ0YWIuaWQrJy10YWItbGluaydcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGFiLmh0bWxDb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewChild } from '@angular/core';
|
|
2
|
+
import { ItAbstractComponent } from '../../../../abstracts/abstract.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ItTabItemComponent extends ItAbstractComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
super(...arguments);
|
|
7
|
+
/**
|
|
8
|
+
* Custom class
|
|
9
|
+
*/
|
|
10
|
+
this.class = '';
|
|
11
|
+
}
|
|
12
|
+
ngAfterViewInit() {
|
|
13
|
+
super.ngAfterViewInit();
|
|
14
|
+
this._renderer.removeAttribute(this._elementRef.nativeElement, 'class');
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTabItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItTabItemComponent, isStandalone: true, selector: "it-tab-item", inputs: { label: "label", icon: "icon", active: "active", disabled: "disabled", class: "class" }, viewQueries: [{ propertyName: "htmlContent", first: true, predicate: TemplateRef, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template>\n <ng-content></ng-content>\n</ng-template>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTabItemComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{ standalone: true, selector: 'it-tab-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "<ng-template>\n <ng-content></ng-content>\n</ng-template>\n" }]
|
|
22
|
+
}], propDecorators: { label: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}], icon: [{
|
|
25
|
+
type: Input
|
|
26
|
+
}], active: [{
|
|
27
|
+
type: Input
|
|
28
|
+
}], disabled: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}], class: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}], htmlContent: [{
|
|
33
|
+
type: ViewChild,
|
|
34
|
+
args: [TemplateRef]
|
|
35
|
+
}] } });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL3RhYi90YWItaXRlbS90YWItaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdGFiL3RhYi1pdGVtL3RhYi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOztBQVcvRSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsbUJBQW1CO0lBUDNEOztRQTZCRTs7V0FFRztRQUNNLFVBQUssR0FBVyxFQUFFLENBQUM7S0FXN0I7SUFKVSxlQUFlO1FBQ3RCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMxRSxDQUFDOzhHQW5DVSxrQkFBa0I7a0dBQWxCLGtCQUFrQixzTkE4QmxCLFdBQVcsdUVDMUN4Qiw4REFHQTs7MkZEU2Esa0JBQWtCO2tCQVA5QixTQUFTO2lDQUNJLElBQUksWUFDTixhQUFhLG1CQUVOLHVCQUF1QixDQUFDLE1BQU0sV0FDdEMsRUFBRTs4QkFPRixLQUFLO3NCQUFiLEtBQUs7Z0JBS0csSUFBSTtzQkFBWixLQUFLO2dCQUtHLE1BQU07c0JBQWQsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLeUIsV0FBVztzQkFBekMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEl0QWJzdHJhY3RDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9hYnN0cmFjdHMvYWJzdHJhY3QuY29tcG9uZW50JztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzL2Jvb2xlYW4taW5wdXQnO1xuaW1wb3J0IHsgSWNvbk5hbWUgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzL2ljb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdpdC10YWItaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBJdFRhYkl0ZW1Db21wb25lbnQgZXh0ZW5kcyBJdEFic3RyYWN0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWIgbGFiZWxcbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBpY29uIG5hbWVcbiAgICovXG4gIEBJbnB1dCgpIGljb246IEljb25OYW1lIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IGFjdGl2ZSB0YWJcbiAgICovXG4gIEBJbnB1dCgpIGFjdGl2ZTogQm9vbGVhbklucHV0IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IGRpc2FibGVkIHRhYlxuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQ3VzdG9tIGNsYXNzXG4gICAqL1xuICBASW5wdXQoKSBjbGFzczogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb250ZW50IG9mIHRhYlxuICAgKi9cbiAgQFZpZXdDaGlsZChUZW1wbGF0ZVJlZikgcHVibGljIGh0bWxDb250ZW50ITogVGVtcGxhdGVSZWY8YW55PjtcblxuICBvdmVycmlkZSBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgdGhpcy5fcmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2NsYXNzJyk7XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZT5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { ItTabContainerComponent } from './tab-container/tab-container.component';
|
|
3
|
+
import { ItTabItemComponent } from './tab-item/tab-item.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
const tabComponents = [
|
|
6
|
+
ItTabContainerComponent,
|
|
7
|
+
ItTabItemComponent
|
|
8
|
+
];
|
|
9
|
+
export class ItTabModule {
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTabModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.7", ngImport: i0, type: ItTabModule, imports: [ItTabContainerComponent,
|
|
12
|
+
ItTabItemComponent], exports: [ItTabContainerComponent,
|
|
13
|
+
ItTabItemComponent] }); }
|
|
14
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTabModule }); }
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTabModule, decorators: [{
|
|
17
|
+
type: NgModule,
|
|
18
|
+
args: [{
|
|
19
|
+
imports: tabComponents,
|
|
20
|
+
exports: tabComponents
|
|
21
|
+
}]
|
|
22
|
+
}] });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS90YWIvdGFiLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQUVuRSxNQUFNLGFBQWEsR0FBRztJQUNwQix1QkFBdUI7SUFDdkIsa0JBQWtCO0NBQ25CLENBQUM7QUFNRixNQUFNLE9BQU8sV0FBVzs4R0FBWCxXQUFXOytHQUFYLFdBQVcsWUFSdEIsdUJBQXVCO1lBQ3ZCLGtCQUFrQixhQURsQix1QkFBdUI7WUFDdkIsa0JBQWtCOytHQU9QLFdBQVc7OzJGQUFYLFdBQVc7a0JBSnZCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLGFBQWE7b0JBQ3RCLE9BQU8sRUFBRSxhQUFhO2lCQUN2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJdFRhYkNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vdGFiLWNvbnRhaW5lci90YWItY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdFRhYkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3RhYi1pdGVtL3RhYi1pdGVtLmNvbXBvbmVudCc7XG5cbmNvbnN0IHRhYkNvbXBvbmVudHMgPSBbXG4gIEl0VGFiQ29udGFpbmVyQ29tcG9uZW50LFxuICBJdFRhYkl0ZW1Db21wb25lbnRcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IHRhYkNvbXBvbmVudHMsXG4gIGV4cG9ydHM6IHRhYkNvbXBvbmVudHNcbn0pXG5leHBvcnQgY2xhc3MgSXRUYWJNb2R1bGUge1xufVxuIl19
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { isTrueBooleanInput } from '../../../utils/boolean-input';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ItTableComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
/**
|
|
7
|
+
* Responsive tables allow you to scroll tables horizontally with ease.
|
|
8
|
+
* @default responsive
|
|
9
|
+
*/
|
|
10
|
+
this.responsive = 'responsive';
|
|
11
|
+
}
|
|
12
|
+
get isStriped() {
|
|
13
|
+
return isTrueBooleanInput(this.striped);
|
|
14
|
+
}
|
|
15
|
+
get isHover() {
|
|
16
|
+
return isTrueBooleanInput(this.hover);
|
|
17
|
+
}
|
|
18
|
+
get isBordered() {
|
|
19
|
+
return isTrueBooleanInput(this.bordered);
|
|
20
|
+
}
|
|
21
|
+
get isBorderless() {
|
|
22
|
+
return isTrueBooleanInput(this.borderless);
|
|
23
|
+
}
|
|
24
|
+
get isCompact() {
|
|
25
|
+
return isTrueBooleanInput(this.compact);
|
|
26
|
+
}
|
|
27
|
+
get isCaptionTop() {
|
|
28
|
+
return isTrueBooleanInput(this.captionTop);
|
|
29
|
+
}
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItTableComponent, isStandalone: true, selector: "it-table", inputs: { color: "color", headColor: "headColor", alignment: "alignment", striped: "striped", hover: "hover", bordered: "bordered", borderless: "borderless", compact: "compact", captionTop: "captionTop", responsive: "responsive" }, ngImport: i0, template: "<div [class]=\"responsive ? 'table-' + responsive : undefined\">\n <table class=\"table{{color ? ' table-' + color : '' }}{{alignment ? ' ' + alignment : '' }}\"\n [class.table-striped]=\"isStriped\"\n [class.table-hover]=\"isHover\"\n [class.table-bordered]=\"isBordered\"\n [class.table-borderless]=\"isBorderless\"\n [class.table-sm]=\"isCompact\"\n [class.caption-top]=\"isCaptionTop\">\n <caption>\n <ng-content select=\"[caption]\"></ng-content>\n </caption>\n <thead [class]=\"headColor ? 'table-' + headColor : undefined\">\n <ng-content select=\"[thead]\"></ng-content>\n </thead>\n <tbody>\n <ng-content select=\"[tbody]\"></ng-content>\n </tbody>\n <tfoot>\n <ng-content select=\"[tfoot]\"></ng-content>\n </tfoot>\n </table>\n</div>\n", styles: ["caption:empty{display:none}caption:empty~thead{border-top:none!important}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
32
|
+
}
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTableComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{ standalone: true, selector: 'it-table', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "<div [class]=\"responsive ? 'table-' + responsive : undefined\">\n <table class=\"table{{color ? ' table-' + color : '' }}{{alignment ? ' ' + alignment : '' }}\"\n [class.table-striped]=\"isStriped\"\n [class.table-hover]=\"isHover\"\n [class.table-bordered]=\"isBordered\"\n [class.table-borderless]=\"isBorderless\"\n [class.table-sm]=\"isCompact\"\n [class.caption-top]=\"isCaptionTop\">\n <caption>\n <ng-content select=\"[caption]\"></ng-content>\n </caption>\n <thead [class]=\"headColor ? 'table-' + headColor : undefined\">\n <ng-content select=\"[thead]\"></ng-content>\n </thead>\n <tbody>\n <ng-content select=\"[tbody]\"></ng-content>\n </tbody>\n <tfoot>\n <ng-content select=\"[tfoot]\"></ng-content>\n </tfoot>\n </table>\n</div>\n", styles: ["caption:empty{display:none}caption:empty~thead{border-top:none!important}\n"] }]
|
|
36
|
+
}], propDecorators: { color: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], headColor: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], alignment: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], striped: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], hover: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], bordered: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], borderless: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], compact: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], captionTop: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], responsive: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQWdCLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBVWhGLE1BQU0sT0FBTyxnQkFBZ0I7SUFSN0I7UUF1REU7OztXQUdHO1FBQ00sZUFBVSxHQUFvQixZQUFZLENBQUM7S0EwQnJEO0lBdkJDLElBQUksU0FBUztRQUNYLE9BQU8sa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0MsQ0FBQzs4R0E1RVUsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsNFNDWjdCLG8wQkFzQkE7OzJGRFZhLGdCQUFnQjtrQkFSNUIsU0FBUztpQ0FDSSxJQUFJLFlBQ04sVUFBVSxtQkFHSCx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLEVBQUU7OEJBT0YsS0FBSztzQkFBYixLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csS0FBSztzQkFBYixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS0csVUFBVTtzQkFBbEIsS0FBSztnQkFLRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csVUFBVTtzQkFBbEIsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRhYmxlQ29sb3IsIFRhYmxlSGVhZENvbG9yLCBUYWJsZVJlc3BvbnNpdmUsIFZlcnRpY2FsQWxpZ25tZW50IH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9jb3JlJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgaXNUcnVlQm9vbGVhbklucHV0IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYm9vbGVhbi1pbnB1dCc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ2l0LXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEl0VGFibGVDb21wb25lbnQge1xuXG4gIC8qKlxuICAgKiBUYWJsZSBjb2xvclxuICAgKi9cbiAgQElucHV0KCkgY29sb3I6IFRhYmxlQ29sb3IgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEhlYWQgdGFibGUgY29sb3JcbiAgICovXG4gIEBJbnB1dCgpIGhlYWRDb2xvcjogVGFibGVIZWFkQ29sb3IgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFVzZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgY2xhc3NlcyB0byByZWFsaWduIHdoZXJlIG5lZWRlZC5cbiAgICovXG4gIEBJbnB1dCgpIGFsaWdubWVudDogVmVydGljYWxBbGlnbm1lbnQgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFVzZSAudGFibGUtc3RyaXBlZCB0byBhZGQgemVicmEgc3RyaXBlcyB0byBlYWNoIHRhYmxlIHJvdyBjb250YWluZWQgaW4gPHRib2R5Pi5cbiAgICovXG4gIEBJbnB1dCgpIHN0cmlwZWQ6IEJvb2xlYW5JbnB1dCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQWRkIC50YWJsZS1ob3ZlciB0byBlbmFibGUgaG92ZXIgc3RhdGUgb24gdGFibGUgcm93cyBjb250YWluZWQgaW4gPHRib2R5Pi5cbiAgICovXG4gIEBJbnB1dCgpIGhvdmVyOiBCb29sZWFuSW5wdXQgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEFkZCAudGFibGUtYm9yZGVyZWQgdG8gaGF2ZSBib3JkZXJzIG9uIGFsbCBzaWRlcyBvZiB0aGUgdGFibGUgYW5kIG9uIGFsbCBjZWxscy5cbiAgICovXG4gIEBJbnB1dCgpIGJvcmRlcmVkOiBCb29sZWFuSW5wdXQgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEFkZCB0aGUgLnRhYmxlLWJvcmRlcmxlc3MgY2xhc3MgZm9yIGEgYm9yZGVybGVzcyB0YWJsZS5cbiAgICovXG4gIEBJbnB1dCgpIGJvcmRlcmxlc3M6IEJvb2xlYW5JbnB1dCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQWRkIC50YWJsZS1zbSB0byBtYWtlIHRhYmxlcyBtb3JlIGNvbXBhY3QgYnkgaGFsdmluZyB0aGUgY2VsbCBwYWRkaW5nLlxuICAgKi9cbiAgQElucHV0KCkgY29tcGFjdDogQm9vbGVhbklucHV0IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUbyByZW5kZXIgdGhlIDxjYXB0aW9uPiBvbiB0b3Agb2YgdGhlIHRhYmxlXG4gICAqL1xuICBASW5wdXQoKSBjYXB0aW9uVG9wOiBCb29sZWFuSW5wdXQgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFJlc3BvbnNpdmUgdGFibGVzIGFsbG93IHlvdSB0byBzY3JvbGwgdGFibGVzIGhvcml6b250YWxseSB3aXRoIGVhc2UuXG4gICAqIEBkZWZhdWx0IHJlc3BvbnNpdmVcbiAgICovXG4gIEBJbnB1dCgpIHJlc3BvbnNpdmU6IFRhYmxlUmVzcG9uc2l2ZSA9ICdyZXNwb25zaXZlJztcblxuXG4gIGdldCBpc1N0cmlwZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzVHJ1ZUJvb2xlYW5JbnB1dCh0aGlzLnN0cmlwZWQpO1xuICB9XG5cbiAgZ2V0IGlzSG92ZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzVHJ1ZUJvb2xlYW5JbnB1dCh0aGlzLmhvdmVyKTtcbiAgfVxuXG4gIGdldCBpc0JvcmRlcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1RydWVCb29sZWFuSW5wdXQodGhpcy5ib3JkZXJlZCk7XG4gIH1cblxuICBnZXQgaXNCb3JkZXJsZXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1RydWVCb29sZWFuSW5wdXQodGhpcy5ib3JkZXJsZXNzKTtcbiAgfVxuXG4gIGdldCBpc0NvbXBhY3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzVHJ1ZUJvb2xlYW5JbnB1dCh0aGlzLmNvbXBhY3QpO1xuICB9XG5cbiAgZ2V0IGlzQ2FwdGlvblRvcCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNUcnVlQm9vbGVhbklucHV0KHRoaXMuY2FwdGlvblRvcCk7XG4gIH1cbn1cbiIsIjxkaXYgW2NsYXNzXT1cInJlc3BvbnNpdmUgPyAndGFibGUtJyArIHJlc3BvbnNpdmUgOiB1bmRlZmluZWRcIj5cbiAgPHRhYmxlIGNsYXNzPVwidGFibGV7e2NvbG9yID8gJyB0YWJsZS0nICsgY29sb3IgOiAnJyB9fXt7YWxpZ25tZW50ID8gJyAnICsgYWxpZ25tZW50IDogJycgfX1cIlxuICAgICAgICAgW2NsYXNzLnRhYmxlLXN0cmlwZWRdPVwiaXNTdHJpcGVkXCJcbiAgICAgICAgIFtjbGFzcy50YWJsZS1ob3Zlcl09XCJpc0hvdmVyXCJcbiAgICAgICAgIFtjbGFzcy50YWJsZS1ib3JkZXJlZF09XCJpc0JvcmRlcmVkXCJcbiAgICAgICAgIFtjbGFzcy50YWJsZS1ib3JkZXJsZXNzXT1cImlzQm9yZGVybGVzc1wiXG4gICAgICAgICBbY2xhc3MudGFibGUtc21dPVwiaXNDb21wYWN0XCJcbiAgICAgICAgIFtjbGFzcy5jYXB0aW9uLXRvcF09XCJpc0NhcHRpb25Ub3BcIj5cbiAgICA8Y2FwdGlvbj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltjYXB0aW9uXVwiPjwvbmctY29udGVudD5cbiAgICA8L2NhcHRpb24+XG4gICAgPHRoZWFkIFtjbGFzc109XCJoZWFkQ29sb3IgPyAndGFibGUtJyArIGhlYWRDb2xvciA6IHVuZGVmaW5lZFwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt0aGVhZF1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC90aGVhZD5cbiAgICA8dGJvZHk+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Rib2R5XVwiPjwvbmctY29udGVudD5cbiAgICA8L3Rib2R5PlxuICAgIDx0Zm9vdD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbdGZvb3RdXCI+PC9uZy1jb250ZW50PlxuICAgIDwvdGZvb3Q+XG4gIDwvdGFibGU+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { Directive, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { isTrueBooleanInput } from '../../../utils/boolean-input';
|
|
3
|
+
import { Tooltip } from 'bootstrap-italia';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class ItTooltipDirective {
|
|
6
|
+
/**
|
|
7
|
+
* Define the tooltip title
|
|
8
|
+
* @param title the tooltip title
|
|
9
|
+
*/
|
|
10
|
+
set title(title) {
|
|
11
|
+
if (title) {
|
|
12
|
+
// this.element.setAttribute("title", title);
|
|
13
|
+
this.element.setAttribute('data-bs-original-title', title);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Define the tooltip placement
|
|
18
|
+
* @param placement
|
|
19
|
+
*/
|
|
20
|
+
set tooltipPlacement(placement) {
|
|
21
|
+
this.element.setAttribute('data-bs-placement', placement);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Indicates whether the title contains html
|
|
25
|
+
* @param html true if contain html
|
|
26
|
+
*/
|
|
27
|
+
set tooltipHtml(html) {
|
|
28
|
+
this.element.setAttribute('data-bs-html', isTrueBooleanInput(html) ? 'true' : 'false');
|
|
29
|
+
}
|
|
30
|
+
constructor(_elementRef) {
|
|
31
|
+
this._elementRef = _elementRef;
|
|
32
|
+
/**
|
|
33
|
+
* This event fires immediately when the show method is called.
|
|
34
|
+
*/
|
|
35
|
+
this.showEvent = new EventEmitter();
|
|
36
|
+
/**
|
|
37
|
+
* This event is triggered when the tooltip has been made visible to the user (it will wait for the CSS transitions to complete).
|
|
38
|
+
*/
|
|
39
|
+
this.shownEvent = new EventEmitter();
|
|
40
|
+
/**
|
|
41
|
+
* This event fires immediately when the hide method is called.
|
|
42
|
+
*/
|
|
43
|
+
this.hideEvent = new EventEmitter();
|
|
44
|
+
/**
|
|
45
|
+
* This event is raised when the tooltip has finished being hidden from the user (it will wait for the CSS transitions to complete).
|
|
46
|
+
*/
|
|
47
|
+
this.hiddenEvent = new EventEmitter();
|
|
48
|
+
/**
|
|
49
|
+
* This event fires after the show event when the tooltip template has been added to the DOM.
|
|
50
|
+
*/
|
|
51
|
+
this.insertedEvent = new EventEmitter();
|
|
52
|
+
this.element = this._elementRef.nativeElement;
|
|
53
|
+
}
|
|
54
|
+
ngAfterViewInit() {
|
|
55
|
+
this.element.setAttribute('data-bs-toggle', 'tooltip');
|
|
56
|
+
this.tooltip = Tooltip.getOrCreateInstance(this.element);
|
|
57
|
+
this.element.addEventListener('show.bs.tooltip', event => this.showEvent.emit(event));
|
|
58
|
+
this.element.addEventListener('shown.bs.tooltip', event => this.shownEvent.emit(event));
|
|
59
|
+
this.element.addEventListener('hide.bs.tooltip', event => this.hideEvent.emit(event));
|
|
60
|
+
this.element.addEventListener('hidden.bs.tooltip', event => this.hiddenEvent.emit(event));
|
|
61
|
+
this.element.addEventListener('inserted.bs.tooltip', event => this.insertedEvent.emit(event));
|
|
62
|
+
}
|
|
63
|
+
ngOnDestroy() {
|
|
64
|
+
this.dispose();
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Shows the tooltip of an item.
|
|
68
|
+
*/
|
|
69
|
+
show() {
|
|
70
|
+
this.tooltip?.show();
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Hide the tooltip of an element.
|
|
74
|
+
*/
|
|
75
|
+
hide() {
|
|
76
|
+
this.tooltip?.hide();
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Activate / Deactivate the tooltip of an element
|
|
80
|
+
*/
|
|
81
|
+
toggle() {
|
|
82
|
+
this.tooltip?.toggle();
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Hides and destroys the tooltip of an element.
|
|
86
|
+
*/
|
|
87
|
+
dispose() {
|
|
88
|
+
this.tooltip?.dispose();
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Gives the tooltip of an element a chance to be shown.
|
|
92
|
+
*/
|
|
93
|
+
enable() {
|
|
94
|
+
this.tooltip?.enable();
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Removes the ability to show the tooltip of an element.
|
|
98
|
+
*/
|
|
99
|
+
disable() {
|
|
100
|
+
this.tooltip?.disable();
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Toggles the possibility that the tooltip of an element is shown or hidden.
|
|
104
|
+
*/
|
|
105
|
+
toggleEnabled() {
|
|
106
|
+
this.tooltip?.disable();
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Updates the position of an element's tooltip.
|
|
110
|
+
*/
|
|
111
|
+
update() {
|
|
112
|
+
this.tooltip?.disable();
|
|
113
|
+
}
|
|
114
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTooltipDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
115
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.7", type: ItTooltipDirective, isStandalone: true, selector: "[itTooltip]", inputs: { title: ["itTooltip", "title"], tooltipPlacement: "tooltipPlacement", tooltipHtml: "tooltipHtml" }, outputs: { showEvent: "showEvent", shownEvent: "shownEvent", hideEvent: "hideEvent", hiddenEvent: "hiddenEvent", insertedEvent: "insertedEvent" }, exportAs: ["itTooltip"], ngImport: i0 }); }
|
|
116
|
+
}
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItTooltipDirective, decorators: [{
|
|
118
|
+
type: Directive,
|
|
119
|
+
args: [{
|
|
120
|
+
standalone: true,
|
|
121
|
+
selector: '[itTooltip]',
|
|
122
|
+
exportAs: 'itTooltip'
|
|
123
|
+
}]
|
|
124
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { title: [{
|
|
125
|
+
type: Input,
|
|
126
|
+
args: ['itTooltip']
|
|
127
|
+
}], tooltipPlacement: [{
|
|
128
|
+
type: Input
|
|
129
|
+
}], tooltipHtml: [{
|
|
130
|
+
type: Input
|
|
131
|
+
}], showEvent: [{
|
|
132
|
+
type: Output
|
|
133
|
+
}], shownEvent: [{
|
|
134
|
+
type: Output
|
|
135
|
+
}], hideEvent: [{
|
|
136
|
+
type: Output
|
|
137
|
+
}], hiddenEvent: [{
|
|
138
|
+
type: Output
|
|
139
|
+
}], insertedEvent: [{
|
|
140
|
+
type: Output
|
|
141
|
+
}] } });
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdG9vbHRpcC90b29sdGlwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RyxPQUFPLEVBQWdCLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQU8zQyxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCOzs7T0FHRztJQUNILElBQXdCLEtBQUssQ0FBQyxLQUF5QjtRQUNyRCxJQUFJLEtBQUssRUFBRTtZQUNULDZDQUE2QztZQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyx3QkFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFhLGdCQUFnQixDQUFDLFNBQTJCO1FBQ3ZELElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFhLFdBQVcsQ0FBQyxJQUFrQjtRQUN6QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQThCRCxZQUNtQixXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQTdCMUM7O1dBRUc7UUFDTyxjQUFTLEdBQXdCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFOUQ7O1dBRUc7UUFDTyxlQUFVLEdBQXdCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFL0Q7O1dBRUc7UUFDTyxjQUFTLEdBQXdCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFOUQ7O1dBRUc7UUFDTyxnQkFBVyxHQUF3QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWhFOztXQUVHO1FBQ08sa0JBQWEsR0FBd0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVFoRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ2hELENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpELElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3hGLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzFGLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7T0FFRztJQUNJLElBQUk7UUFDVCxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7T0FFRztJQUNJLElBQUk7UUFDVCxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU07UUFDWCxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNJLE9BQU87UUFDWixJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU07UUFDWCxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNJLE9BQU87UUFDWixJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUNJLGFBQWE7UUFDbEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNO1FBQ1gsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUMxQixDQUFDOzhHQXBJVSxrQkFBa0I7a0dBQWxCLGtCQUFrQjs7MkZBQWxCLGtCQUFrQjtrQkFMOUIsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFFBQVEsRUFBRSxXQUFXO2lCQUN0QjtpR0FPeUIsS0FBSztzQkFBNUIsS0FBSzt1QkFBQyxXQUFXO2dCQVdMLGdCQUFnQjtzQkFBNUIsS0FBSztnQkFRTyxXQUFXO3NCQUF2QixLQUFLO2dCQU9JLFNBQVM7c0JBQWxCLE1BQU07Z0JBS0csVUFBVTtzQkFBbkIsTUFBTTtnQkFLRyxTQUFTO3NCQUFsQixNQUFNO2dCQUtHLFdBQVc7c0JBQXBCLE1BQU07Z0JBS0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVsZW1lbnRQbGFjZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2NvcmUnO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBpc1RydWVCb29sZWFuSW5wdXQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9ib29sZWFuLWlucHV0JztcbmltcG9ydCB7IFRvb2x0aXAgfSBmcm9tICdib290c3RyYXAtaXRhbGlhJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW2l0VG9vbHRpcF0nLFxuICBleHBvcnRBczogJ2l0VG9vbHRpcCdcbn0pXG5leHBvcnQgY2xhc3MgSXRUb29sdGlwRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICAvKipcbiAgICogRGVmaW5lIHRoZSB0b29sdGlwIHRpdGxlXG4gICAqIEBwYXJhbSB0aXRsZSB0aGUgdG9vbHRpcCB0aXRsZVxuICAgKi9cbiAgQElucHV0KCdpdFRvb2x0aXAnKSBzZXQgdGl0bGUodGl0bGU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIGlmICh0aXRsZSkge1xuICAgICAgLy8gdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZShcInRpdGxlXCIsIHRpdGxlKTtcbiAgICAgIHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2RhdGEtYnMtb3JpZ2luYWwtdGl0bGUnLCB0aXRsZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlZmluZSB0aGUgdG9vbHRpcCBwbGFjZW1lbnRcbiAgICogQHBhcmFtIHBsYWNlbWVudFxuICAgKi9cbiAgQElucHV0KCkgc2V0IHRvb2x0aXBQbGFjZW1lbnQocGxhY2VtZW50OiBFbGVtZW50UGxhY2VtZW50KSB7XG4gICAgdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSgnZGF0YS1icy1wbGFjZW1lbnQnLCBwbGFjZW1lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSB0aXRsZSBjb250YWlucyBodG1sXG4gICAqIEBwYXJhbSBodG1sIHRydWUgaWYgY29udGFpbiBodG1sXG4gICAqL1xuICBASW5wdXQoKSBzZXQgdG9vbHRpcEh0bWwoaHRtbDogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSgnZGF0YS1icy1odG1sJywgaXNUcnVlQm9vbGVhbklucHV0KGh0bWwpID8gJ3RydWUnIDogJ2ZhbHNlJyk7XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBldmVudCBmaXJlcyBpbW1lZGlhdGVseSB3aGVuIHRoZSBzaG93IG1ldGhvZCBpcyBjYWxsZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgc2hvd0V2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBUaGlzIGV2ZW50IGlzIHRyaWdnZXJlZCB3aGVuIHRoZSB0b29sdGlwIGhhcyBiZWVuIG1hZGUgdmlzaWJsZSB0byB0aGUgdXNlciAoaXQgd2lsbCB3YWl0IGZvciB0aGUgQ1NTIHRyYW5zaXRpb25zIHRvIGNvbXBsZXRlKS5cbiAgICovXG4gIEBPdXRwdXQoKSBzaG93bkV2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBUaGlzIGV2ZW50IGZpcmVzIGltbWVkaWF0ZWx5IHdoZW4gdGhlIGhpZGUgbWV0aG9kIGlzIGNhbGxlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBoaWRlRXZlbnQ6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIFRoaXMgZXZlbnQgaXMgcmFpc2VkIHdoZW4gdGhlIHRvb2x0aXAgaGFzIGZpbmlzaGVkIGJlaW5nIGhpZGRlbiBmcm9tIHRoZSB1c2VyIChpdCB3aWxsIHdhaXQgZm9yIHRoZSBDU1MgdHJhbnNpdGlvbnMgdG8gY29tcGxldGUpLlxuICAgKi9cbiAgQE91dHB1dCgpIGhpZGRlbkV2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBUaGlzIGV2ZW50IGZpcmVzIGFmdGVyIHRoZSBzaG93IGV2ZW50IHdoZW4gdGhlIHRvb2x0aXAgdGVtcGxhdGUgaGFzIGJlZW4gYWRkZWQgdG8gdGhlIERPTS5cbiAgICovXG4gIEBPdXRwdXQoKSBpbnNlcnRlZEV2ZW50OiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgdG9vbHRpcD86IFRvb2x0aXA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICApIHtcbiAgICB0aGlzLmVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSgnZGF0YS1icy10b2dnbGUnLCAndG9vbHRpcCcpO1xuICAgIHRoaXMudG9vbHRpcCA9IFRvb2x0aXAuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0aGlzLmVsZW1lbnQpO1xuXG4gICAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Nob3cuYnMudG9vbHRpcCcsIGV2ZW50ID0+IHRoaXMuc2hvd0V2ZW50LmVtaXQoZXZlbnQpKTtcbiAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignc2hvd24uYnMudG9vbHRpcCcsIGV2ZW50ID0+IHRoaXMuc2hvd25FdmVudC5lbWl0KGV2ZW50KSk7XG4gICAgdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2hpZGUuYnMudG9vbHRpcCcsIGV2ZW50ID0+IHRoaXMuaGlkZUV2ZW50LmVtaXQoZXZlbnQpKTtcbiAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignaGlkZGVuLmJzLnRvb2x0aXAnLCBldmVudCA9PiB0aGlzLmhpZGRlbkV2ZW50LmVtaXQoZXZlbnQpKTtcbiAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignaW5zZXJ0ZWQuYnMudG9vbHRpcCcsIGV2ZW50ID0+IHRoaXMuaW5zZXJ0ZWRFdmVudC5lbWl0KGV2ZW50KSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaG93cyB0aGUgdG9vbHRpcCBvZiBhbiBpdGVtLlxuICAgKi9cbiAgcHVibGljIHNob3coKTogdm9pZCB7XG4gICAgdGhpcy50b29sdGlwPy5zaG93KCk7XG4gIH1cblxuICAvKipcbiAgICogSGlkZSB0aGUgdG9vbHRpcCBvZiBhbiBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGhpZGUoKTogdm9pZCB7XG4gICAgdGhpcy50b29sdGlwPy5oaWRlKCk7XG4gIH1cblxuICAvKipcbiAgICogQWN0aXZhdGUgLyBEZWFjdGl2YXRlIHRoZSB0b29sdGlwIG9mIGFuIGVsZW1lbnRcbiAgICovXG4gIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy50b29sdGlwPy50b2dnbGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIaWRlcyBhbmQgZGVzdHJveXMgdGhlIHRvb2x0aXAgb2YgYW4gZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBkaXNwb3NlKCk6IHZvaWQge1xuICAgIHRoaXMudG9vbHRpcD8uZGlzcG9zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdpdmVzIHRoZSB0b29sdGlwIG9mIGFuIGVsZW1lbnQgYSBjaGFuY2UgdG8gYmUgc2hvd24uXG4gICAqL1xuICBwdWJsaWMgZW5hYmxlKCk6IHZvaWQge1xuICAgIHRoaXMudG9vbHRpcD8uZW5hYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyB0aGUgYWJpbGl0eSB0byBzaG93IHRoZSB0b29sdGlwIG9mIGFuIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZGlzYWJsZSgpOiB2b2lkIHtcbiAgICB0aGlzLnRvb2x0aXA/LmRpc2FibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUb2dnbGVzIHRoZSBwb3NzaWJpbGl0eSB0aGF0IHRoZSB0b29sdGlwIG9mIGFuIGVsZW1lbnQgaXMgc2hvd24gb3IgaGlkZGVuLlxuICAgKi9cbiAgcHVibGljIHRvZ2dsZUVuYWJsZWQoKTogdm9pZCB7XG4gICAgdGhpcy50b29sdGlwPy5kaXNhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgcG9zaXRpb24gb2YgYW4gZWxlbWVudCdzIHRvb2x0aXAuXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlKCk6IHZvaWQge1xuICAgIHRoaXMudG9vbHRpcD8uZGlzYWJsZSgpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { ItAbstractFormComponent } from '../../../abstracts/abstract-form.component';
|
|
3
|
+
import { isTrueBooleanInput } from '../../../utils/boolean-input';
|
|
4
|
+
import { AsyncPipe, NgIf, NgTemplateOutlet } from '@angular/common';
|
|
5
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/forms";
|
|
8
|
+
export class ItCheckboxComponent extends ItAbstractFormComponent {
|
|
9
|
+
get isIndeterminate() {
|
|
10
|
+
return isTrueBooleanInput(this.indeterminate);
|
|
11
|
+
}
|
|
12
|
+
get isGroup() {
|
|
13
|
+
return isTrueBooleanInput(this.group);
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
super.ngOnInit();
|
|
17
|
+
this.markAsChecked();
|
|
18
|
+
}
|
|
19
|
+
ngOnChanges(changes) {
|
|
20
|
+
if (changes['checked']) {
|
|
21
|
+
this.markAsChecked();
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
markAsChecked() {
|
|
25
|
+
if (this.control.value || this.checked === undefined) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const value = isTrueBooleanInput(this.checked);
|
|
29
|
+
this.writeValue(value);
|
|
30
|
+
return this.onChange(value);
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItCheckboxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.7", type: ItCheckboxComponent, isStandalone: true, selector: "it-checkbox", inputs: { toggle: "toggle", inline: "inline", group: "group", checked: "checked", indeterminate: "indeterminate" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <div class=\"form-check\"\n [class.form-check-group]=\"isGroup\"\n [class.form-check-inline]=\"inline\">\n\n <div *ngIf=\"toggle; else defaultStyle\" class=\"toggles\">\n <label [for]=\"id\">\n <ng-container *ngTemplateOutlet=\"htmlLabel\"></ng-container>\n <input [id]=\"id\"\n type=\"checkbox\"\n [formControl]=\"control\"\n [attr.aria-describedby]=\"id + '-help'\">\n <span class=\"lever\"></span>\n </label>\n </div>\n\n <ng-template #defaultStyle>\n <input [id]=\"id\"\n type=\"checkbox\"\n class=\"form-check-input\"\n [class.is-invalid]=\"isInvalid\"\n [class.is-valid]=\"isValid\"\n [class.semi-checked]=\"isIndeterminate\"\n [formControl]=\"control\"\n [attr.aria-describedby]=\"id + '-help'\">\n <label class=\"form-check-label\" [for]=\"id\">\n <ng-container *ngTemplateOutlet=\"htmlLabel\"></ng-container>\n </label>\n </ng-template>\n\n <small *ngIf=\"isGroup\" [id]=\"id + '-help'\" class=\"form-text\">\n <ng-content></ng-content>\n </small>\n\n <div *ngIf=\"isInvalid && isGroup\" class=\"form-feedback just-validate-error-label\" [id]=\"id + '-error'\">\n <ng-container *ngTemplateOutlet=\"error\"></ng-container>\n </div>\n </div>\n\n <div *ngIf=\"isInvalid && !isGroup\" class=\"form-feedback just-validate-error-label\" [id]=\"id + '-error'\">\n <ng-container *ngTemplateOutlet=\"error\"></ng-container>\n </div>\n</ng-container>\n\n<ng-template #error>\n <div #customError>\n <ng-content select=\"[error]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customError.hasChildNodes()\">{{invalidMessage | async}}</ng-container>\n</ng-template>\n\n<ng-template #htmlLabel>\n <div #customLabel>\n <ng-content select=\"[label]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customLabel.hasChildNodes()\">{{label}}</ng-container>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItCheckboxComponent, decorators: [{
|
|
36
|
+
type: Component,
|
|
37
|
+
args: [{ standalone: true, selector: 'it-checkbox', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, NgTemplateOutlet, ReactiveFormsModule, AsyncPipe], template: "<ng-container>\n <div class=\"form-check\"\n [class.form-check-group]=\"isGroup\"\n [class.form-check-inline]=\"inline\">\n\n <div *ngIf=\"toggle; else defaultStyle\" class=\"toggles\">\n <label [for]=\"id\">\n <ng-container *ngTemplateOutlet=\"htmlLabel\"></ng-container>\n <input [id]=\"id\"\n type=\"checkbox\"\n [formControl]=\"control\"\n [attr.aria-describedby]=\"id + '-help'\">\n <span class=\"lever\"></span>\n </label>\n </div>\n\n <ng-template #defaultStyle>\n <input [id]=\"id\"\n type=\"checkbox\"\n class=\"form-check-input\"\n [class.is-invalid]=\"isInvalid\"\n [class.is-valid]=\"isValid\"\n [class.semi-checked]=\"isIndeterminate\"\n [formControl]=\"control\"\n [attr.aria-describedby]=\"id + '-help'\">\n <label class=\"form-check-label\" [for]=\"id\">\n <ng-container *ngTemplateOutlet=\"htmlLabel\"></ng-container>\n </label>\n </ng-template>\n\n <small *ngIf=\"isGroup\" [id]=\"id + '-help'\" class=\"form-text\">\n <ng-content></ng-content>\n </small>\n\n <div *ngIf=\"isInvalid && isGroup\" class=\"form-feedback just-validate-error-label\" [id]=\"id + '-error'\">\n <ng-container *ngTemplateOutlet=\"error\"></ng-container>\n </div>\n </div>\n\n <div *ngIf=\"isInvalid && !isGroup\" class=\"form-feedback just-validate-error-label\" [id]=\"id + '-error'\">\n <ng-container *ngTemplateOutlet=\"error\"></ng-container>\n </div>\n</ng-container>\n\n<ng-template #error>\n <div #customError>\n <ng-content select=\"[error]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customError.hasChildNodes()\">{{invalidMessage | async}}</ng-container>\n</ng-template>\n\n<ng-template #htmlLabel>\n <div #customLabel>\n <ng-content select=\"[label]\"></ng-content>\n </div>\n <ng-container *ngIf=\"!customLabel.hasChildNodes()\">{{label}}</ng-container>\n</ng-template>\n" }]
|
|
38
|
+
}], propDecorators: { toggle: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], inline: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], group: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], checked: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], indeterminate: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}] } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDckYsT0FBTyxFQUFnQixrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVNyRCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsdUJBQW1EO0lBMkIxRixJQUFJLGVBQWU7UUFDakIsT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFUSxRQUFRO1FBQ2YsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRVEsV0FBVyxDQUFDLE9BQXNCO1FBQ3pDLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0QjtJQUNILENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUU7WUFDcEQsT0FBTztTQUNSO1FBRUQsTUFBTSxLQUFLLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7OEdBdERVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLHVPQ2JoQyw2K0RBeURBLDRDRDlDWSxJQUFJLDZGQUFFLGdCQUFnQixtSkFBRSxtQkFBbUIsc2VBQUUsU0FBUzs7MkZBRXJELG1CQUFtQjtrQkFQL0IsU0FBUztpQ0FDSSxJQUFJLFlBQ04sYUFBYSxtQkFFTix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLFNBQVMsQ0FBQzs4QkFPeEQsTUFBTTtzQkFBZCxLQUFLO2dCQUtHLE1BQU07c0JBQWQsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csT0FBTztzQkFBZixLQUFLO2dCQUtHLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEl0QWJzdHJhY3RGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vYWJzdHJhY3RzL2Fic3RyYWN0LWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgaXNUcnVlQm9vbGVhbklucHV0IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYm9vbGVhbi1pbnB1dCc7XG5pbXBvcnQgeyBBc3luY1BpcGUsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnaXQtY2hlY2tib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW05nSWYsIE5nVGVtcGxhdGVPdXRsZXQsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEFzeW5jUGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgSXRDaGVja2JveENvbXBvbmVudCBleHRlbmRzIEl0QWJzdHJhY3RGb3JtQ29tcG9uZW50PGJvb2xlYW4gfCBudWxsIHwgdW5kZWZpbmVkPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuICAvKipcbiAgICogSWYgc2hvdyBjaGVja2JveCBhcyB0b2dnbGVcbiAgICovXG4gIEBJbnB1dCgpIHRvZ2dsZTogQm9vbGVhbklucHV0IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJZiBzaG93IGNoZWNrYm94IGlubGluZVxuICAgKi9cbiAgQElucHV0KCkgaW5saW5lOiBCb29sZWFuSW5wdXQgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIElmIGlzIGNoZWNrYm94IGdyb3VwXG4gICAqL1xuICBASW5wdXQoKSBncm91cDogQm9vbGVhbklucHV0IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJZiBjaGVja2JveCBpcyBjaGVja2VkXG4gICAqL1xuICBASW5wdXQoKSBjaGVja2VkOiBCb29sZWFuSW5wdXQgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIElmIGNoZWNrYm94IGlzIGluZGV0ZXJtaW5hdGVcbiAgICovXG4gIEBJbnB1dCgpIGluZGV0ZXJtaW5hdGU6IEJvb2xlYW5JbnB1dCB8IHVuZGVmaW5lZDtcblxuICBnZXQgaXNJbmRldGVybWluYXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1RydWVCb29sZWFuSW5wdXQodGhpcy5pbmRldGVybWluYXRlKTtcbiAgfVxuXG4gIGdldCBpc0dyb3VwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1RydWVCb29sZWFuSW5wdXQodGhpcy5ncm91cCk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMubWFya0FzQ2hlY2tlZCgpO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydjaGVja2VkJ10pIHtcbiAgICAgIHRoaXMubWFya0FzQ2hlY2tlZCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbWFya0FzQ2hlY2tlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb250cm9sLnZhbHVlIHx8IHRoaXMuY2hlY2tlZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBpc1RydWVCb29sZWFuSW5wdXQodGhpcy5jaGVja2VkKTtcbiAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHJldHVybiB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2tcIlxuICAgICAgIFtjbGFzcy5mb3JtLWNoZWNrLWdyb3VwXT1cImlzR3JvdXBcIlxuICAgICAgIFtjbGFzcy5mb3JtLWNoZWNrLWlubGluZV09XCJpbmxpbmVcIj5cblxuICAgIDxkaXYgKm5nSWY9XCJ0b2dnbGU7IGVsc2UgZGVmYXVsdFN0eWxlXCIgY2xhc3M9XCJ0b2dnbGVzXCI+XG4gICAgICA8bGFiZWwgW2Zvcl09XCJpZFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaHRtbExhYmVsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDxpbnB1dCBbaWRdPVwiaWRcIlxuICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiaWQgKyAnLWhlbHAnXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibGV2ZXJcIj48L3NwYW4+XG4gICAgICA8L2xhYmVsPlxuICAgIDwvZGl2PlxuXG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0U3R5bGU+XG4gICAgICA8aW5wdXQgW2lkXT1cImlkXCJcbiAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiXG4gICAgICAgICAgICAgW2NsYXNzLmlzLWludmFsaWRdPVwiaXNJbnZhbGlkXCJcbiAgICAgICAgICAgICBbY2xhc3MuaXMtdmFsaWRdPVwiaXNWYWxpZFwiXG4gICAgICAgICAgICAgW2NsYXNzLnNlbWktY2hlY2tlZF09XCJpc0luZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICAgICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImlkICsgJy1oZWxwJ1wiPlxuICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbFwiIFtmb3JdPVwiaWRcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImh0bWxMYWJlbFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9sYWJlbD5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPHNtYWxsICpuZ0lmPVwiaXNHcm91cFwiIFtpZF09XCJpZCArICctaGVscCdcIiBjbGFzcz1cImZvcm0tdGV4dFwiPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvc21hbGw+XG5cbiAgICA8ZGl2ICpuZ0lmPVwiaXNJbnZhbGlkICYmIGlzR3JvdXBcIiBjbGFzcz1cImZvcm0tZmVlZGJhY2sganVzdC12YWxpZGF0ZS1lcnJvci1sYWJlbFwiIFtpZF09XCJpZCArICctZXJyb3InXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZXJyb3JcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiAqbmdJZj1cImlzSW52YWxpZCAmJiAhaXNHcm91cFwiIGNsYXNzPVwiZm9ybS1mZWVkYmFjayBqdXN0LXZhbGlkYXRlLWVycm9yLWxhYmVsXCIgW2lkXT1cImlkICsgJy1lcnJvcidcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZXJyb3JcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNlcnJvcj5cbiAgPGRpdiAjY3VzdG9tRXJyb3I+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Vycm9yXVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY3VzdG9tRXJyb3IuaGFzQ2hpbGROb2RlcygpXCI+e3tpbnZhbGlkTWVzc2FnZSB8IGFzeW5jfX08L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjaHRtbExhYmVsPlxuICA8ZGl2ICNjdXN0b21MYWJlbD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbbGFiZWxdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjdXN0b21MYWJlbC5oYXNDaGlsZE5vZGVzKClcIj57e2xhYmVsfX08L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { ItCheckboxComponent } from './checkbox/checkbox.component';
|
|
3
|
+
import { ItInputComponent } from './input/input.component';
|
|
4
|
+
import { ItPasswordInputComponent } from './password-input/password-input.component';
|
|
5
|
+
import { ItRadioButtonComponent } from './radio-button/radio-button.component';
|
|
6
|
+
import { ItRangeComponent } from './range/range.component';
|
|
7
|
+
import { ItRatingComponent } from './rating/rating.component';
|
|
8
|
+
import { ItSelectComponent } from './select/select.component';
|
|
9
|
+
import { ItTextareaComponent } from './textarea/textarea.component';
|
|
10
|
+
import { ItUploadDragDropComponent } from './upload-drag-drop/upload-drag-drop.component';
|
|
11
|
+
import { ItUploadFileListComponent } from './upload-file-list/upload-file-list.component';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
const formComponents = [
|
|
14
|
+
ItCheckboxComponent,
|
|
15
|
+
ItInputComponent,
|
|
16
|
+
ItPasswordInputComponent,
|
|
17
|
+
ItRadioButtonComponent,
|
|
18
|
+
ItRangeComponent,
|
|
19
|
+
ItRatingComponent,
|
|
20
|
+
ItSelectComponent,
|
|
21
|
+
ItTextareaComponent,
|
|
22
|
+
ItUploadDragDropComponent,
|
|
23
|
+
ItUploadFileListComponent
|
|
24
|
+
];
|
|
25
|
+
export class ItFormModule {
|
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
27
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.7", ngImport: i0, type: ItFormModule, imports: [ItCheckboxComponent,
|
|
28
|
+
ItInputComponent,
|
|
29
|
+
ItPasswordInputComponent,
|
|
30
|
+
ItRadioButtonComponent,
|
|
31
|
+
ItRangeComponent,
|
|
32
|
+
ItRatingComponent,
|
|
33
|
+
ItSelectComponent,
|
|
34
|
+
ItTextareaComponent,
|
|
35
|
+
ItUploadDragDropComponent,
|
|
36
|
+
ItUploadFileListComponent], exports: [ItCheckboxComponent,
|
|
37
|
+
ItInputComponent,
|
|
38
|
+
ItPasswordInputComponent,
|
|
39
|
+
ItRadioButtonComponent,
|
|
40
|
+
ItRangeComponent,
|
|
41
|
+
ItRatingComponent,
|
|
42
|
+
ItSelectComponent,
|
|
43
|
+
ItTextareaComponent,
|
|
44
|
+
ItUploadDragDropComponent,
|
|
45
|
+
ItUploadFileListComponent] }); }
|
|
46
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItFormModule, imports: [formComponents] }); }
|
|
47
|
+
}
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.7", ngImport: i0, type: ItFormModule, decorators: [{
|
|
49
|
+
type: NgModule,
|
|
50
|
+
args: [{
|
|
51
|
+
imports: formComponents,
|
|
52
|
+
exports: formComponents
|
|
53
|
+
}]
|
|
54
|
+
}] });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUMxRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQzs7QUFHMUYsTUFBTSxjQUFjLEdBQUc7SUFDckIsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQix3QkFBd0I7SUFDeEIsc0JBQXNCO0lBQ3RCLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQix5QkFBeUI7SUFDekIseUJBQXlCO0NBQzFCLENBQUM7QUFNRixNQUFNLE9BQU8sWUFBWTs4R0FBWixZQUFZOytHQUFaLFlBQVksWUFoQnZCLG1CQUFtQjtZQUNuQixnQkFBZ0I7WUFDaEIsd0JBQXdCO1lBQ3hCLHNCQUFzQjtZQUN0QixnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIseUJBQXlCO1lBQ3pCLHlCQUF5QixhQVR6QixtQkFBbUI7WUFDbkIsZ0JBQWdCO1lBQ2hCLHdCQUF3QjtZQUN4QixzQkFBc0I7WUFDdEIsZ0JBQWdCO1lBQ2hCLGlCQUFpQjtZQUNqQixpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLHlCQUF5QjtZQUN6Qix5QkFBeUI7K0dBT2QsWUFBWSxZQUhkLGNBQWM7OzJGQUdaLFlBQVk7a0JBSnhCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLGNBQWM7b0JBQ3ZCLE9BQU8sRUFBRSxjQUFjO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJdENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSXRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQvaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEl0UGFzc3dvcmRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vcGFzc3dvcmQtaW5wdXQvcGFzc3dvcmQtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEl0UmFkaW9CdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IEl0UmFuZ2VDb21wb25lbnQgfSBmcm9tICcuL3JhbmdlL3JhbmdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdFJhdGluZ0NvbXBvbmVudCB9IGZyb20gJy4vcmF0aW5nL3JhdGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgSXRTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IEl0VGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuL3RleHRhcmVhL3RleHRhcmVhLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJdFVwbG9hZERyYWdEcm9wQ29tcG9uZW50IH0gZnJvbSAnLi91cGxvYWQtZHJhZy1kcm9wL3VwbG9hZC1kcmFnLWRyb3AuY29tcG9uZW50JztcbmltcG9ydCB7IEl0VXBsb2FkRmlsZUxpc3RDb21wb25lbnQgfSBmcm9tICcuL3VwbG9hZC1maWxlLWxpc3QvdXBsb2FkLWZpbGUtbGlzdC5jb21wb25lbnQnO1xuXG5cbmNvbnN0IGZvcm1Db21wb25lbnRzID0gW1xuICBJdENoZWNrYm94Q29tcG9uZW50LFxuICBJdElucHV0Q29tcG9uZW50LFxuICBJdFBhc3N3b3JkSW5wdXRDb21wb25lbnQsXG4gIEl0UmFkaW9CdXR0b25Db21wb25lbnQsXG4gIEl0UmFuZ2VDb21wb25lbnQsXG4gIEl0UmF0aW5nQ29tcG9uZW50LFxuICBJdFNlbGVjdENvbXBvbmVudCxcbiAgSXRUZXh0YXJlYUNvbXBvbmVudCxcbiAgSXRVcGxvYWREcmFnRHJvcENvbXBvbmVudCxcbiAgSXRVcGxvYWRGaWxlTGlzdENvbXBvbmVudFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogZm9ybUNvbXBvbmVudHMsXG4gIGV4cG9ydHM6IGZvcm1Db21wb25lbnRzXG59KVxuZXhwb3J0IGNsYXNzIEl0Rm9ybU1vZHVsZSB7IH1cbiJdfQ==
|