design-angular-kit 1.3.2 → 1.5.0
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/fesm2022/design-angular-kit.mjs +621 -418
- package/fesm2022/design-angular-kit.mjs.map +1 -1
- package/lib/components/core/avatar/avatar-extra-text.directive.d.ts +6 -0
- package/lib/components/core/avatar/avatar-group/avatar-group.component.d.ts +5 -0
- package/lib/components/core/avatar/avatar-presence.directive.d.ts +17 -0
- package/lib/components/core/avatar/avatar-status.directive.d.ts +17 -0
- package/lib/components/core/avatar/avatar-wrapper.directive.d.ts +9 -0
- package/lib/components/core/avatar/avatar.module.d.ts +5 -1
- package/lib/components/core/list/list-item/list-item.component.d.ts +4 -1
- package/lib/components/core/video-player/video-player.config.d.ts +18 -18
- package/lib/components/form/transfer/store/transfer.reducers.d.ts +35 -35
- package/lib/components/navigation/footer/footer.component.d.ts +6 -0
- package/lib/design-angular-kit.module.d.ts +13 -12
- package/package.json +11 -10
- package/public_api.d.ts +7 -2
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/rules/setup-project/add-animations.js +1 -2
- package/schematics/ng-add/rules/setup-project/add-animations.js.map +1 -1
- package/schematics/ng-add/rules/setup-project/add-assets.js +1 -2
- package/schematics/ng-add/rules/setup-project/add-assets.js.map +1 -1
- package/schematics/ng-add/rules/setup-project/add-design-angular-kit.js +1 -2
- package/schematics/ng-add/rules/setup-project/add-design-angular-kit.js.map +1 -1
- package/schematics/ng-add/rules/setup-project/add-http-client.js +1 -2
- package/schematics/ng-add/rules/setup-project/add-http-client.js.map +1 -1
- package/schematics/ng-add/rules/setup-project/add-import-to-style-file.js +1 -2
- package/schematics/ng-add/rules/setup-project/add-import-to-style-file.js.map +1 -1
- package/schematics/ng-add/rules/setup-project/add-localisation.js +1 -2
- package/schematics/ng-add/rules/setup-project/add-localisation.js.map +1 -1
- package/schematics/ng-add/rules/setup-project/angular-json-helper.js +1 -2
- package/schematics/ng-add/rules/setup-project/angular-json-helper.js.map +1 -1
- package/schematics/ng-add/setup-project.js +2 -2
- package/schematics/ng-add/setup-project.js.map +1 -1
- package/schematics/ng-add/utils.js +13 -6
- package/schematics/ng-add/utils.js.map +1 -1
- package/schematics/ng-add/utils.spec.d.ts +1 -0
- package/schematics/ng-add/utils.spec.js +48 -0
- package/schematics/ng-add/utils.spec.js.map +1 -0
- package/schematics/ng-add/versions-helper.js +11 -19
- package/schematics/ng-add/versions-helper.js.map +1 -1
- package/schematics/ng-add/versions-helper.spec.d.ts +1 -0
- package/schematics/ng-add/versions-helper.spec.js +46 -0
- package/schematics/ng-add/versions-helper.spec.js.map +1 -0
- package/esm2022/design-angular-kit.mjs +0 -5
- package/esm2022/lib/abstracts/abstract-form.component.mjs +0 -199
- package/esm2022/lib/abstracts/abstract.component.mjs +0 -46
- package/esm2022/lib/components/core/accordion/accordion.component.mjs +0 -39
- package/esm2022/lib/components/core/alert/alert.component.mjs +0 -71
- package/esm2022/lib/components/core/avatar/avatar-dropdown/avatar-dropdown.component.mjs +0 -43
- package/esm2022/lib/components/core/avatar/avatar-group/avatar-group.component.mjs +0 -40
- package/esm2022/lib/components/core/avatar/avatar.directive.mjs +0 -78
- package/esm2022/lib/components/core/avatar/avatar.module.mjs +0 -33
- package/esm2022/lib/components/core/badge/badge.directive.mjs +0 -39
- package/esm2022/lib/components/core/button/button.directive.mjs +0 -80
- package/esm2022/lib/components/core/callout/callout.component.mjs +0 -64
- package/esm2022/lib/components/core/card/card.component.mjs +0 -59
- package/esm2022/lib/components/core/carousel/carousel/carousel.component.mjs +0 -86
- package/esm2022/lib/components/core/carousel/carousel-item/carousel-item.component.mjs +0 -19
- package/esm2022/lib/components/core/carousel/carousel.module.mjs +0 -18
- package/esm2022/lib/components/core/chip/chip.component.mjs +0 -136
- package/esm2022/lib/components/core/collapse/collapse.component.mjs +0 -116
- package/esm2022/lib/components/core/dimmer/dimmer-buttons/dimmer-buttons.component.mjs +0 -27
- package/esm2022/lib/components/core/dimmer/dimmer-icon/dimmer-icon.component.mjs +0 -11
- package/esm2022/lib/components/core/dimmer/dimmer.component.mjs +0 -55
- package/esm2022/lib/components/core/dimmer/dimmer.module.mjs +0 -19
- package/esm2022/lib/components/core/dropdown/dropdown/dropdown.component.mjs +0 -147
- package/esm2022/lib/components/core/dropdown/dropdown-item/dropdown-item.component.mjs +0 -70
- package/esm2022/lib/components/core/dropdown/dropdown.module.mjs +0 -18
- package/esm2022/lib/components/core/forward/forward.directive.mjs +0 -57
- package/esm2022/lib/components/core/link/link.component.mjs +0 -42
- package/esm2022/lib/components/core/list/list/list.component.mjs +0 -22
- package/esm2022/lib/components/core/list/list-item/list-item.component.mjs +0 -56
- package/esm2022/lib/components/core/list/list.module.mjs +0 -18
- package/esm2022/lib/components/core/modal/modal.component.mjs +0 -194
- package/esm2022/lib/components/core/notifications/notifications.component.mjs +0 -111
- package/esm2022/lib/components/core/pagination/pagination.component.mjs +0 -130
- package/esm2022/lib/components/core/popover/popover.directive.mjs +0 -176
- package/esm2022/lib/components/core/progress-bar/progress-bar.component.mjs +0 -34
- package/esm2022/lib/components/core/progress-button/progress-button.component.mjs +0 -25
- package/esm2022/lib/components/core/spinner/spinner.component.mjs +0 -30
- package/esm2022/lib/components/core/steppers/steppers-container/steppers-container.component.mjs +0 -116
- package/esm2022/lib/components/core/steppers/steppers-item/steppers-item.component.mjs +0 -22
- package/esm2022/lib/components/core/steppers/steppers.module.mjs +0 -18
- package/esm2022/lib/components/core/tab/tab-container/tab-container.component.mjs +0 -97
- package/esm2022/lib/components/core/tab/tab-item/tab-item.component.mjs +0 -39
- package/esm2022/lib/components/core/tab/tab.module.mjs +0 -18
- package/esm2022/lib/components/core/table/sort/sort-header/sort-header.component.mjs +0 -134
- package/esm2022/lib/components/core/table/sort/sort.directive.mjs +0 -123
- package/esm2022/lib/components/core/table/table.component.mjs +0 -45
- package/esm2022/lib/components/core/table/table.module.mjs +0 -19
- package/esm2022/lib/components/core/timeline/timeline-item/timeline-item.component.mjs +0 -90
- package/esm2022/lib/components/core/timeline/timeline.component.mjs +0 -36
- package/esm2022/lib/components/core/timeline/timeline.module.mjs +0 -18
- package/esm2022/lib/components/core/tooltip/tooltip.directive.mjs +0 -143
- package/esm2022/lib/components/core/video-player/video-player-i18n.model.mjs +0 -2
- package/esm2022/lib/components/core/video-player/video-player-i18n.service.mjs +0 -130
- package/esm2022/lib/components/core/video-player/video-player.component.mjs +0 -301
- package/esm2022/lib/components/core/video-player/video-player.config.mjs +0 -43
- package/esm2022/lib/components/core/video-player/video-player.cookie.mjs +0 -25
- package/esm2022/lib/components/core/video-player/video-player.model.mjs +0 -3
- package/esm2022/lib/components/core/video-player/video-player.module.mjs +0 -16
- package/esm2022/lib/components/form/autocomplete/autocomplete.component.mjs +0 -178
- package/esm2022/lib/components/form/checkbox/checkbox.component.mjs +0 -48
- package/esm2022/lib/components/form/form.module.mjs +0 -67
- package/esm2022/lib/components/form/input/input.component.mjs +0 -190
- package/esm2022/lib/components/form/password-input/password-input.component.mjs +0 -149
- package/esm2022/lib/components/form/radio-button/radio-button.component.mjs +0 -60
- package/esm2022/lib/components/form/range/range.component.mjs +0 -64
- package/esm2022/lib/components/form/rating/rating.component.mjs +0 -50
- package/esm2022/lib/components/form/search/search.component.mjs +0 -112
- package/esm2022/lib/components/form/select/select.component.mjs +0 -70
- package/esm2022/lib/components/form/textarea/textarea.component.mjs +0 -55
- package/esm2022/lib/components/form/transfer/store/transfer.reducers.mjs +0 -191
- package/esm2022/lib/components/form/transfer/store/transfer.state.mjs +0 -2
- package/esm2022/lib/components/form/transfer/store/transfer.store.mjs +0 -70
- package/esm2022/lib/components/form/transfer/transfer-list/transfer-list.component.mjs +0 -72
- package/esm2022/lib/components/form/transfer/transfer.component.mjs +0 -149
- package/esm2022/lib/components/form/transfer/transfer.model.mjs +0 -6
- package/esm2022/lib/components/form/upload-drag-drop/upload-drag-drop.component.mjs +0 -142
- package/esm2022/lib/components/form/upload-file-list/upload-file-list.component.mjs +0 -107
- package/esm2022/lib/components/navigation/back-button/back-button.component.mjs +0 -67
- package/esm2022/lib/components/navigation/back-to-top/back-to-top.component.mjs +0 -68
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumb/breadcrumb.component.mjs +0 -51
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +0 -21
- package/esm2022/lib/components/navigation/breadcrumbs/breadcrumbs.module.mjs +0 -18
- package/esm2022/lib/components/navigation/header/header.component.mjs +0 -103
- package/esm2022/lib/components/navigation/megamenu/megamenu.component.mjs +0 -27
- package/esm2022/lib/components/navigation/navbar/navbar/navbar.component.mjs +0 -49
- package/esm2022/lib/components/navigation/navbar/navbar-item/navbar-item.component.mjs +0 -11
- package/esm2022/lib/components/navigation/navbar/navbar.module.mjs +0 -18
- package/esm2022/lib/components/navigation/navscroll/navscroll-list-item.component.mjs +0 -97
- package/esm2022/lib/components/navigation/navscroll/navscroll-list-items.component.mjs +0 -44
- package/esm2022/lib/components/navigation/navscroll/navscroll.component.mjs +0 -116
- package/esm2022/lib/components/navigation/navscroll/navscroll.model.mjs +0 -2
- package/esm2022/lib/components/navigation/navscroll/navscroll.store.mjs +0 -68
- package/esm2022/lib/components/navigation/navscroll/navscroll.utils.mjs +0 -23
- package/esm2022/lib/components/navigation/sidebar/sidebar.component.mjs +0 -50
- package/esm2022/lib/components/navigation/skiplink/skiplink/skiplink.component.mjs +0 -27
- package/esm2022/lib/components/navigation/skiplink/skiplink-item/skiplink-item.component.mjs +0 -26
- package/esm2022/lib/components/navigation/skiplink/skiplink.module.mjs +0 -18
- package/esm2022/lib/components/utils/error-page/error-page.component.mjs +0 -74
- package/esm2022/lib/components/utils/icon/icon.component.mjs +0 -63
- package/esm2022/lib/components/utils/language-switcher/language-switcher.component.mjs +0 -50
- package/esm2022/lib/design-angular-kit.module.mjs +0 -237
- package/esm2022/lib/enums/colors.enums.mjs +0 -12
- package/esm2022/lib/enums/sizes.enum.mjs +0 -9
- package/esm2022/lib/interfaces/core.mjs +0 -16
- package/esm2022/lib/interfaces/design-angular-kit-config.mjs +0 -7
- package/esm2022/lib/interfaces/form.mjs +0 -2
- package/esm2022/lib/interfaces/icon.mjs +0 -181
- package/esm2022/lib/interfaces/sortable-table.mjs +0 -6
- package/esm2022/lib/interfaces/utils.mjs +0 -2
- package/esm2022/lib/pipes/date-ago.pipe.mjs +0 -56
- package/esm2022/lib/pipes/duration.pipe.mjs +0 -115
- package/esm2022/lib/pipes/mark-matching-text.pipe.mjs +0 -48
- package/esm2022/lib/provide-design-angular-kit.mjs +0 -64
- package/esm2022/lib/services/notification/notification.service.mjs +0 -120
- package/esm2022/lib/utils/coercion.mjs +0 -18
- package/esm2022/lib/utils/date-utils.mjs +0 -162
- package/esm2022/lib/utils/file-utils.mjs +0 -73
- package/esm2022/lib/utils/regex.mjs +0 -35
- package/esm2022/lib/validators/it-validators.mjs +0 -161
- package/esm2022/public_api.mjs +0 -114
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Input, Output, ViewChildren, } from '@angular/core';
|
|
2
|
-
import { ItTabItemComponent } from '../tab-item/tab-item.component';
|
|
3
|
-
import { of, startWith, switchMap, tap } from 'rxjs';
|
|
4
|
-
import { Tab } from 'bootstrap-italia';
|
|
5
|
-
import { ItAbstractComponent } from '../../../../abstracts/abstract.component';
|
|
6
|
-
import { NgTemplateOutlet } from '@angular/common';
|
|
7
|
-
import { ItIconComponent } from '../../../utils/icon/icon.component';
|
|
8
|
-
import { inputToBoolean } from '../../../../utils/coercion';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class ItTabContainerComponent extends ItAbstractComponent {
|
|
11
|
-
constructor() {
|
|
12
|
-
super();
|
|
13
|
-
this.tabSelected = new EventEmitter();
|
|
14
|
-
this.tabClosed = new EventEmitter();
|
|
15
|
-
this.tabAdded = new EventEmitter();
|
|
16
|
-
}
|
|
17
|
-
ngAfterViewInit() {
|
|
18
|
-
super.ngAfterViewInit();
|
|
19
|
-
this.tabs?.changes
|
|
20
|
-
.pipe(
|
|
21
|
-
// When tabs changes (dynamic add/remove)
|
|
22
|
-
startWith(undefined), tap(() => {
|
|
23
|
-
this.tabSubscriptions?.forEach(sub => sub.unsubscribe()); // Remove old subscriptions
|
|
24
|
-
this.tabSubscriptions = this.tabs?.map(tab => tab.valueChanges.subscribe(() => {
|
|
25
|
-
this._changeDetectorRef.detectChanges(); // DetectChanges when tab-item attributes changes
|
|
26
|
-
}));
|
|
27
|
-
this._changeDetectorRef.detectChanges(); // Force update html render
|
|
28
|
-
}), switchMap(() => this.tabNavLinks?.changes.pipe(startWith(undefined)) || of(undefined)))
|
|
29
|
-
.subscribe(() => {
|
|
30
|
-
// Init tabs from bootstrap-italia
|
|
31
|
-
this.tabNavLinks?.forEach(tabNavLink => {
|
|
32
|
-
const triggerEl = tabNavLink.nativeElement, tabTrigger = Tab.getOrCreateInstance(triggerEl);
|
|
33
|
-
if (triggerEl.getAttribute('tab-listener') !== 'true') {
|
|
34
|
-
triggerEl.addEventListener('click', event => {
|
|
35
|
-
event.preventDefault();
|
|
36
|
-
tabTrigger.show();
|
|
37
|
-
this._changeDetectorRef.detectChanges();
|
|
38
|
-
});
|
|
39
|
-
triggerEl.setAttribute('tab-listener', 'true'); // Prevents multiple insertion of the listener
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
ngOnDestroy() {
|
|
45
|
-
this.tabSubscriptions?.forEach(sub => sub.unsubscribe());
|
|
46
|
-
}
|
|
47
|
-
onTab(tab) {
|
|
48
|
-
this.tabSelected.emit(tab);
|
|
49
|
-
}
|
|
50
|
-
clickToClose(index) {
|
|
51
|
-
this.tabClosed.emit(index);
|
|
52
|
-
}
|
|
53
|
-
clickToAdd($event) {
|
|
54
|
-
$event.preventDefault();
|
|
55
|
-
this.tabAdded.emit();
|
|
56
|
-
}
|
|
57
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTabContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
58
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.6", type: ItTabContainerComponent, isStandalone: true, selector: "it-tab-container", inputs: { auto: ["auto", "auto", inputToBoolean], iconText: ["iconText", "iconText", inputToBoolean], dark: ["dark", "dark", inputToBoolean], cards: ["cards", "cards", inputToBoolean], vertical: ["vertical", "vertical", inputToBoolean], inverted: ["inverted", "inverted", inputToBoolean], editable: ["editable", "editable", inputToBoolean] }, outputs: { tabSelected: "tabSelected", tabClosed: "tabClosed", tabAdded: "tabAdded" }, queries: [{ propertyName: "tabs", predicate: ItTabItemComponent }], viewQueries: [{ propertyName: "tabNavLinks", predicate: ["tabNavLinks"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n [class.row]=\"vertical\"\n [class.flex-row-reverse]=\"inverted && vertical\"\n [class.d-flex]=\"inverted && !vertical\"\n [class.flex-column-reverse]=\"inverted && !vertical\">\n <div\n [class.col-5]=\"inverted && vertical\"\n [class.col-md-4]=\"inverted && vertical\"\n [class.col-lg-3]=\"inverted && vertical\"\n [class.col-4]=\"!inverted && vertical\"\n [class.col-md-3]=\"!inverted && vertical\">\n @if (tabs) {\n <ul\n class=\"nav nav-tabs\"\n [class.nav-tabs-editable]=\"editable\"\n [class.nav-tabs-cards]=\"cards\"\n [class.nav-tabs-vertical]=\"vertical\"\n [class.auto]=\"auto\"\n [class.nav-tabs-icon-text]=\"iconText\"\n [class.nav-dark]=\"dark\"\n role=\"tablist\">\n @for (tab of tabs; track tab.id; let i = $index) {\n <li class=\"nav-item\">\n <a\n #tabNavLinks\n [id]=\"tab.id + '-tab-link'\"\n role=\"tab\"\n class=\"nav-link\"\n [class.active]=\"tab.active\"\n [class.disabled]=\"tab.disabled\"\n [attr.href]=\"'#' + tab.id + '-tab'\"\n [attr.aria-controls]=\"tab.id + '-tab'\"\n (click)=\"onTab(tab)\">\n @if (tab.icon) {\n <it-icon [name]=\"tab.icon\" class=\"me-2\"></it-icon>\n }\n {{ tab.label }}\n </a>\n @if (editable) {\n <a class=\"nav-link-close\" (click)=\"clickToClose(i)\" (keypress)=\"clickToClose(i)\" [attr.disabled]=\"tab.disabled\">\n <it-icon name=\"close\"></it-icon>\n </a>\n }\n </li>\n }\n @if (editable) {\n <li class=\"nav-item\">\n <a href=\"#\" class=\"nav-tab-add\" (click)=\"clickToAdd($event)\" (keypress)=\"clickToAdd($event)\"\n ><span class=\"visually-hidden\"> Aggiungi un tab</span></a\n >\n </li>\n }\n </ul>\n }\n </div>\n <div\n [class.col-7]=\"inverted && vertical\"\n [class.col-md-8]=\"inverted && vertical\"\n [class.col-lg-9]=\"inverted && vertical\"\n [class.col-8]=\"!inverted && vertical\"\n [class.col-md-9]=\"!inverted && vertical\">\n @if (tabs) {\n <div class=\"tab-content\">\n @for (tab of tabs; track tab.id) {\n <div\n [id]=\"tab.id + '-tab'\"\n class=\"tab-pane p-4 fade {{ tab.class ?? '' }}\"\n [class.active]=\"tab.active\"\n [class.show]=\"tab.active\"\n role=\"tabpanel\"\n [attr.aria-labelledby]=\"tab.id + '-tab-link'\">\n <ng-container *ngTemplateOutlet=\"tab.htmlContent\"></ng-container>\n </div>\n }\n </div>\n }\n </div>\n</div>\n", dependencies: [{ kind: "component", type: ItIconComponent, selector: "it-icon", inputs: ["name", "size", "color", "padded", "svgClass", "title", "labelWaria"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
59
|
-
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTabContainerComponent, decorators: [{
|
|
61
|
-
type: Component,
|
|
62
|
-
args: [{ standalone: true, selector: 'it-tab-container', changeDetection: ChangeDetectionStrategy.OnPush, imports: [ItIconComponent, NgTemplateOutlet], template: "<div\n [class.row]=\"vertical\"\n [class.flex-row-reverse]=\"inverted && vertical\"\n [class.d-flex]=\"inverted && !vertical\"\n [class.flex-column-reverse]=\"inverted && !vertical\">\n <div\n [class.col-5]=\"inverted && vertical\"\n [class.col-md-4]=\"inverted && vertical\"\n [class.col-lg-3]=\"inverted && vertical\"\n [class.col-4]=\"!inverted && vertical\"\n [class.col-md-3]=\"!inverted && vertical\">\n @if (tabs) {\n <ul\n class=\"nav nav-tabs\"\n [class.nav-tabs-editable]=\"editable\"\n [class.nav-tabs-cards]=\"cards\"\n [class.nav-tabs-vertical]=\"vertical\"\n [class.auto]=\"auto\"\n [class.nav-tabs-icon-text]=\"iconText\"\n [class.nav-dark]=\"dark\"\n role=\"tablist\">\n @for (tab of tabs; track tab.id; let i = $index) {\n <li class=\"nav-item\">\n <a\n #tabNavLinks\n [id]=\"tab.id + '-tab-link'\"\n role=\"tab\"\n class=\"nav-link\"\n [class.active]=\"tab.active\"\n [class.disabled]=\"tab.disabled\"\n [attr.href]=\"'#' + tab.id + '-tab'\"\n [attr.aria-controls]=\"tab.id + '-tab'\"\n (click)=\"onTab(tab)\">\n @if (tab.icon) {\n <it-icon [name]=\"tab.icon\" class=\"me-2\"></it-icon>\n }\n {{ tab.label }}\n </a>\n @if (editable) {\n <a class=\"nav-link-close\" (click)=\"clickToClose(i)\" (keypress)=\"clickToClose(i)\" [attr.disabled]=\"tab.disabled\">\n <it-icon name=\"close\"></it-icon>\n </a>\n }\n </li>\n }\n @if (editable) {\n <li class=\"nav-item\">\n <a href=\"#\" class=\"nav-tab-add\" (click)=\"clickToAdd($event)\" (keypress)=\"clickToAdd($event)\"\n ><span class=\"visually-hidden\"> Aggiungi un tab</span></a\n >\n </li>\n }\n </ul>\n }\n </div>\n <div\n [class.col-7]=\"inverted && vertical\"\n [class.col-md-8]=\"inverted && vertical\"\n [class.col-lg-9]=\"inverted && vertical\"\n [class.col-8]=\"!inverted && vertical\"\n [class.col-md-9]=\"!inverted && vertical\">\n @if (tabs) {\n <div class=\"tab-content\">\n @for (tab of tabs; track tab.id) {\n <div\n [id]=\"tab.id + '-tab'\"\n class=\"tab-pane p-4 fade {{ tab.class ?? '' }}\"\n [class.active]=\"tab.active\"\n [class.show]=\"tab.active\"\n role=\"tabpanel\"\n [attr.aria-labelledby]=\"tab.id + '-tab-link'\">\n <ng-container *ngTemplateOutlet=\"tab.htmlContent\"></ng-container>\n </div>\n }\n </div>\n }\n </div>\n</div>\n" }]
|
|
63
|
-
}], ctorParameters: () => [], propDecorators: { auto: [{
|
|
64
|
-
type: Input,
|
|
65
|
-
args: [{ transform: inputToBoolean }]
|
|
66
|
-
}], iconText: [{
|
|
67
|
-
type: Input,
|
|
68
|
-
args: [{ transform: inputToBoolean }]
|
|
69
|
-
}], dark: [{
|
|
70
|
-
type: Input,
|
|
71
|
-
args: [{ transform: inputToBoolean }]
|
|
72
|
-
}], cards: [{
|
|
73
|
-
type: Input,
|
|
74
|
-
args: [{ transform: inputToBoolean }]
|
|
75
|
-
}], vertical: [{
|
|
76
|
-
type: Input,
|
|
77
|
-
args: [{ transform: inputToBoolean }]
|
|
78
|
-
}], inverted: [{
|
|
79
|
-
type: Input,
|
|
80
|
-
args: [{ transform: inputToBoolean }]
|
|
81
|
-
}], editable: [{
|
|
82
|
-
type: Input,
|
|
83
|
-
args: [{ transform: inputToBoolean }]
|
|
84
|
-
}], tabs: [{
|
|
85
|
-
type: ContentChildren,
|
|
86
|
-
args: [ItTabItemComponent]
|
|
87
|
-
}], tabNavLinks: [{
|
|
88
|
-
type: ViewChildren,
|
|
89
|
-
args: ['tabNavLinks']
|
|
90
|
-
}], tabSelected: [{
|
|
91
|
-
type: Output
|
|
92
|
-
}], tabClosed: [{
|
|
93
|
-
type: Output
|
|
94
|
-
}], tabAdded: [{
|
|
95
|
-
type: Output
|
|
96
|
-
}] } });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdGFiL3RhYi1jb250YWluZXIvdGFiLWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdGFiL3RhYi1jb250YWluZXIvdGFiLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBRU4sWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFnQixTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDckUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQVM1RCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsbUJBQW1CO0lBb0Q5RDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBVEEsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUVyRCxjQUFTLEdB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Qjs7MkZBRWhDLHVCQUF1QjtrQkFQbkMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sa0JBQWtCLG1CQUVYLHVCQUF1QixDQUFDLE1BQU0sV0FDdEMsQ0FBQyxlQUFlLEVBQUUsZ0JBQWdCLENBQUM7d0RBT04sSUFBSTtzQkFBekMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBS0UsUUFBUTtzQkFBN0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBS0UsSUFBSTtzQkFBekMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBS0UsS0FBSztzQkFBMUMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBS0UsUUFBUTtzQkFBN0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBS0UsUUFBUTtzQkFBN0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBS0UsUUFBUTtzQkFBN0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBS0MsSUFBSTtzQkFBeEMsZUFBZTt1QkFBQyxrQkFBa0I7Z0JBRUUsV0FBVztzQkFBL0MsWUFBWTt1QkFBQyxhQUFhO2dCQUVqQixXQUFXO3NCQUFwQixNQUFNO2dCQUVHLFNBQVM7c0JBQWxCLE1BQU07Z0JBRUcsUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEl0VGFiSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL3RhYi1pdGVtL3RhYi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBvZiwgc3RhcnRXaXRoLCBTdWJzY3JpcHRpb24sIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUYWIgfSBmcm9tICdib290c3RyYXAtaXRhbGlhJztcbmltcG9ydCB7IEl0QWJzdHJhY3RDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9hYnN0cmFjdHMvYWJzdHJhY3QuY29tcG9uZW50JztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSXRJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvaWNvbi9pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBpbnB1dFRvQm9vbGVhbiB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzL2NvZXJjaW9uJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnaXQtdGFiLWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtJdEljb25Db21wb25lbnQsIE5nVGVtcGxhdGVPdXRsZXRdLFxufSlcbmV4cG9ydCBjbGFzcyBJdFRhYkNvbnRhaW5lckNvbXBvbmVudCBleHRlbmRzIEl0QWJzdHJhY3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuICAvKipcbiAgICogVGFicyBhdXRvbWF0aWNhbGx5IG9jY3VweSB0aGUgZW50aXJlIGF2YWlsYWJsZSB3aWR0aFxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSBhdXRvPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVG8gb2J0YWluIHRoZSBjb3JyZWN0IG1hcmdpbiBiZXR3ZWVuIHRleHQgYW5kIGljb24gaW4gdGhlIGhvcml6b250YWxseSBkZXZlbG9wZWQgdGFiXG4gICAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGlucHV0VG9Cb29sZWFuIH0pIGljb25UZXh0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGFyayBzdHlsZVxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSBkYXJrPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2hvdyBpdGVtcyBhcyBjYXJkc1xuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSBjYXJkcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFNob3cgdmVydGljYWwgbmF2aWdhdGlvblxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSB2ZXJ0aWNhbD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSB0YWIgcG9zaXRpb25cbiAgICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogaW5wdXRUb0Jvb2xlYW4gfSkgaW52ZXJ0ZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiB0YWJzIGFyZSBlZGl0YWJsZVxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSBlZGl0YWJsZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSB0YWIgaXRlbXNcbiAgICovXG4gIEBDb250ZW50Q2hpbGRyZW4oSXRUYWJJdGVtQ29tcG9uZW50KSB0YWJzPzogUXVlcnlMaXN0PEl0VGFiSXRlbUNvbXBvbmVudD47XG5cbiAgQFZpZXdDaGlsZHJlbigndGFiTmF2TGlua3MnKSBwcml2YXRlIHRhYk5hdkxpbmtzPzogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEFuY2hvckVsZW1lbnQ+PjtcblxuICBAT3V0cHV0KCkgdGFiU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEl0VGFiSXRlbUNvbXBvbmVudD4oKTtcblxuICBAT3V0cHV0KCkgdGFiQ2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKSB0YWJBZGRlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwcml2YXRlIHRhYlN1YnNjcmlwdGlvbnM/OiBBcnJheTxTdWJzY3JpcHRpb24+O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBvdmVycmlkZSBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG5cbiAgICB0aGlzLnRhYnM/LmNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICAvLyBXaGVuIHRhYnMgY2hhbmdlcyAoZHluYW1pYyBhZGQvcmVtb3ZlKVxuICAgICAgICBzdGFydFdpdGgodW5kZWZpbmVkKSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnRhYlN1YnNjcmlwdGlvbnM/LmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTsgLy8gUmVtb3ZlIG9sZCBzdWJzY3JpcHRpb25zXG4gICAgICAgICAgdGhpcy50YWJTdWJzY3JpcHRpb25zID0gdGhpcy50YWJzPy5tYXAodGFiID0+XG4gICAgICAgICAgICB0YWIudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTsgLy8gRGV0ZWN0Q2hhbmdlcyB3aGVuIHRhYi1pdGVtIGF0dHJpYnV0ZXMgY2hhbmdlc1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTsgLy8gRm9yY2UgdXBkYXRlIGh0bWwgcmVuZGVyXG4gICAgICAgIH0pLFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy50YWJOYXZMaW5rcz8uY2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh1bmRlZmluZWQpKSB8fCBvZih1bmRlZmluZWQpKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIC8vIEluaXQgdGFicyBmcm9tIGJvb3RzdHJhcC1pdGFsaWFcbiAgICAgICAgdGhpcy50YWJOYXZMaW5rcz8uZm9yRWFjaCh0YWJOYXZMaW5rID0+IHtcbiAgICAgICAgICBjb25zdCB0cmlnZ2VyRWwgPSB0YWJOYXZMaW5rLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICB0YWJUcmlnZ2VyID0gVGFiLmdldE9yQ3JlYXRlSW5zdGFuY2UodHJpZ2dlckVsKTtcblxuICAgICAgICAgIGlmICh0cmlnZ2VyRWwuZ2V0QXR0cmlidXRlKCd0YWItbGlzdGVuZXInKSAhPT0gJ3RydWUnKSB7XG4gICAgICAgICAgICB0cmlnZ2VyRWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBldmVudCA9PiB7XG4gICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgIHRhYlRyaWdnZXIuc2hvdygpO1xuICAgICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRyaWdnZXJFbC5zZXRBdHRyaWJ1dGUoJ3RhYi1saXN0ZW5lcicsICd0cnVlJyk7IC8vIFByZXZlbnRzIG11bHRpcGxlIGluc2VydGlvbiBvZiB0aGUgbGlzdGVuZXJcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnRhYlN1YnNjcmlwdGlvbnM/LmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxuXG4gIG9uVGFiKHRhYjogSXRUYWJJdGVtQ29tcG9uZW50KSB7XG4gICAgdGhpcy50YWJTZWxlY3RlZC5lbWl0KHRhYik7XG4gIH1cblxuICBjbGlja1RvQ2xvc2UoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMudGFiQ2xvc2VkLmVtaXQoaW5kZXgpO1xuICB9XG5cbiAgY2xpY2tUb0FkZCgkZXZlbnQ6IEV2ZW50KSB7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy50YWJBZGRlZC5lbWl0KCk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgW2NsYXNzLnJvd109XCJ2ZXJ0aWNhbFwiXG4gIFtjbGFzcy5mbGV4LXJvdy1yZXZlcnNlXT1cImludmVydGVkICYmIHZlcnRpY2FsXCJcbiAgW2NsYXNzLmQtZmxleF09XCJpbnZlcnRlZCAmJiAhdmVydGljYWxcIlxuICBbY2xhc3MuZmxleC1jb2x1bW4tcmV2ZXJzZV09XCJpbnZlcnRlZCAmJiAhdmVydGljYWxcIj5cbiAgPGRpdlxuICAgIFtjbGFzcy5jb2wtNV09XCJpbnZlcnRlZCAmJiB2ZXJ0aWNhbFwiXG4gICAgW2NsYXNzLmNvbC1tZC00XT1cImludmVydGVkICYmIHZlcnRpY2FsXCJcbiAgICBbY2xhc3MuY29sLWxnLTNdPVwiaW52ZXJ0ZWQgJiYgdmVydGljYWxcIlxuICAgIFtjbGFzcy5jb2wtNF09XCIhaW52ZXJ0ZWQgJiYgdmVydGljYWxcIlxuICAgIFtjbGFzcy5jb2wtbWQtM109XCIhaW52ZXJ0ZWQgJiYgdmVydGljYWxcIj5cbiAgICBAaWYgKHRhYnMpIHtcbiAgICAgIDx1bFxuICAgICAgICBjbGFzcz1cIm5hdiBuYXYtdGFic1wiXG4gICAgICAgIFtjbGFzcy5uYXYtdGFicy1lZGl0YWJsZV09XCJlZGl0YWJsZVwiXG4gICAgICAgIFtjbGFzcy5uYXYtdGFicy1jYXJkc109XCJjYXJkc1wiXG4gICAgICAgIFtjbGFzcy5uYXYtdGFicy12ZXJ0aWNhbF09XCJ2ZXJ0aWNhbFwiXG4gICAgICAgIFtjbGFzcy5hdXRvXT1cImF1dG9cIlxuICAgICAgICBbY2xhc3MubmF2LXRhYnMtaWNvbi10ZXh0XT1cImljb25UZXh0XCJcbiAgICAgICAgW2NsYXNzLm5hdi1kYXJrXT1cImRhcmtcIlxuICAgICAgICByb2xlPVwidGFibGlzdFwiPlxuICAgICAgICBAZm9yICh0YWIgb2YgdGFiczsgdHJhY2sgdGFiLmlkOyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtXCI+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAjdGFiTmF2TGlua3NcbiAgICAgICAgICAgICAgW2lkXT1cInRhYi5pZCArICctdGFiLWxpbmsnXCJcbiAgICAgICAgICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmtcIlxuICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cInRhYi5hY3RpdmVcIlxuICAgICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwidGFiLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgW2F0dHIuaHJlZl09XCInIycgKyB0YWIuaWQgKyAnLXRhYidcIlxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cInRhYi5pZCArICctdGFiJ1wiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvblRhYih0YWIpXCI+XG4gICAgICAgICAgICAgIEBpZiAodGFiLmljb24pIHtcbiAgICAgICAgICAgICAgICA8aXQtaWNvbiBbbmFtZV09XCJ0YWIuaWNvblwiIGNsYXNzPVwibWUtMlwiPjwvaXQtaWNvbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB7eyB0YWIubGFiZWwgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIEBpZiAoZWRpdGFibGUpIHtcbiAgICAgICAgICAgICAgPGEgY2xhc3M9XCJuYXYtbGluay1jbG9zZVwiIChjbGljayk9XCJjbGlja1RvQ2xvc2UoaSlcIiAoa2V5cHJlc3MpPVwiY2xpY2tUb0Nsb3NlKGkpXCIgW2F0dHIuZGlzYWJsZWRdPVwidGFiLmRpc2FibGVkXCI+XG4gICAgICAgICAgICAgICAgPGl0LWljb24gbmFtZT1cImNsb3NlXCI+PC9pdC1pY29uPlxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKGVkaXRhYmxlKSB7XG4gICAgICAgICAgPGxpIGNsYXNzPVwibmF2LWl0ZW1cIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJuYXYtdGFiLWFkZFwiIChjbGljayk9XCJjbGlja1RvQWRkKCRldmVudClcIiAoa2V5cHJlc3MpPVwiY2xpY2tUb0FkZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgPjxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+IEFnZ2l1bmdpIHVuIHRhYjwvc3Bhbj48L2FcbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICB9XG4gICAgICA8L3VsPlxuICAgIH1cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBbY2xhc3MuY29sLTddPVwiaW52ZXJ0ZWQgJiYgdmVydGljYWxcIlxuICAgIFtjbGFzcy5jb2wtbWQtOF09XCJpbnZlcnRlZCAmJiB2ZXJ0aWNhbFwiXG4gICAgW2NsYXNzLmNvbC1sZy05XT1cImludmVydGVkICYmIHZlcnRpY2FsXCJcbiAgICBbY2xhc3MuY29sLThdPVwiIWludmVydGVkICYmIHZlcnRpY2FsXCJcbiAgICBbY2xhc3MuY29sLW1kLTldPVwiIWludmVydGVkICYmIHZlcnRpY2FsXCI+XG4gICAgQGlmICh0YWJzKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwidGFiLWNvbnRlbnRcIj5cbiAgICAgICAgQGZvciAodGFiIG9mIHRhYnM7IHRyYWNrIHRhYi5pZCkge1xuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIFtpZF09XCJ0YWIuaWQgKyAnLXRhYidcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0YWItcGFuZSBwLTQgZmFkZSB7eyB0YWIuY2xhc3MgPz8gJycgfX1cIlxuICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJ0YWIuYWN0aXZlXCJcbiAgICAgICAgICAgIFtjbGFzcy5zaG93XT1cInRhYi5hY3RpdmVcIlxuICAgICAgICAgICAgcm9sZT1cInRhYnBhbmVsXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJ0YWIuaWQgKyAnLXRhYi1saW5rJ1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRhYi5odG1sQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, TemplateRef, ViewChild } from '@angular/core';
|
|
2
|
-
import { ItAbstractComponent } from '../../../../abstracts/abstract.component';
|
|
3
|
-
import { inputToBoolean } from '../../../../utils/coercion';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class ItTabItemComponent extends ItAbstractComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(...arguments);
|
|
8
|
-
/**
|
|
9
|
-
* Custom class
|
|
10
|
-
*/
|
|
11
|
-
this.class = '';
|
|
12
|
-
}
|
|
13
|
-
ngAfterViewInit() {
|
|
14
|
-
super.ngAfterViewInit();
|
|
15
|
-
this._renderer.removeAttribute(this._elementRef.nativeElement, 'class');
|
|
16
|
-
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTabItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.6", type: ItTabItemComponent, isStandalone: true, selector: "it-tab-item", inputs: { label: "label", icon: "icon", active: ["active", "active", inputToBoolean], disabled: ["disabled", "disabled", inputToBoolean], 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 }); }
|
|
19
|
-
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTabItemComponent, decorators: [{
|
|
21
|
-
type: Component,
|
|
22
|
-
args: [{ standalone: true, selector: 'it-tab-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "<ng-template>\n <ng-content></ng-content>\n</ng-template>\n" }]
|
|
23
|
-
}], propDecorators: { label: [{
|
|
24
|
-
type: Input
|
|
25
|
-
}], icon: [{
|
|
26
|
-
type: Input
|
|
27
|
-
}], active: [{
|
|
28
|
-
type: Input,
|
|
29
|
-
args: [{ transform: inputToBoolean }]
|
|
30
|
-
}], disabled: [{
|
|
31
|
-
type: Input,
|
|
32
|
-
args: [{ transform: inputToBoolean }]
|
|
33
|
-
}], class: [{
|
|
34
|
-
type: Input
|
|
35
|
-
}], htmlContent: [{
|
|
36
|
-
type: ViewChild,
|
|
37
|
-
args: [TemplateRef]
|
|
38
|
-
}] } });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL3RhYi90YWItaXRlbS90YWItaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdGFiL3RhYi1pdGVtL3RhYi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFTNUQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLG1CQUFtQjtJQVAzRDs7UUE4QkU7O1dBRUc7UUFDTSxVQUFLLEdBQVcsRUFBRSxDQUFDO0tBVzdCO0lBSlUsZUFBZTtRQUN0QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDMUUsQ0FBQzs4R0FwQ1Usa0JBQWtCO2tHQUFsQixrQkFBa0Isb0hBZVQsY0FBYyxzQ0FNZCxjQUFjLDBGQVV2QixXQUFXLHVFQzNDeEIsOERBR0E7OzJGRFNhLGtCQUFrQjtrQkFQOUIsU0FBUztpQ0FDSSxJQUFJLFlBQ04sYUFBYSxtQkFFTix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLEVBQUU7OEJBTUYsS0FBSztzQkFBYixLQUFLO2dCQUtHLElBQUk7c0JBQVosS0FBSztnQkFNZ0MsTUFBTTtzQkFBM0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBTUUsUUFBUTtzQkFBN0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBSzNCLEtBQUs7c0JBQWIsS0FBSztnQkFLeUIsV0FBVztzQkFBekMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEl0QWJzdHJhY3RDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9hYnN0cmFjdHMvYWJzdHJhY3QuY29tcG9uZW50JztcbmltcG9ydCB7IEljb25OYW1lIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcy9pY29uJztcbmltcG9ydCB7IGlucHV0VG9Cb29sZWFuIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMvY29lcmNpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdpdC10YWItaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgSXRUYWJJdGVtQ29tcG9uZW50IGV4dGVuZHMgSXRBYnN0cmFjdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAvKipcbiAgICogVGhlIHRhYiBsYWJlbFxuICAgKi9cbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIGljb24gbmFtZVxuICAgKi9cbiAgQElucHV0KCkgaWNvbjogSWNvbk5hbWUgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgYWN0aXZlIHRhYlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSBhY3RpdmU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IGRpc2FibGVkIHRhYlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSBkaXNhYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBjbGFzc1xuICAgKi9cbiAgQElucHV0KCkgY2xhc3M6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgY29udGVudCBvZiB0YWJcbiAgICovXG4gIEBWaWV3Q2hpbGQoVGVtcGxhdGVSZWYpIHB1YmxpYyBodG1sQ29udGVudCE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgb3ZlcnJpZGUgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdjbGFzcycpO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGU+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -1,18 +0,0 @@
|
|
|
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 = [ItTabContainerComponent, ItTabItemComponent];
|
|
6
|
-
export class ItTabModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTabModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.6", ngImport: i0, type: ItTabModule, imports: [ItTabContainerComponent, ItTabItemComponent], exports: [ItTabContainerComponent, ItTabItemComponent] }); }
|
|
9
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTabModule }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTabModule, decorators: [{
|
|
12
|
-
type: NgModule,
|
|
13
|
-
args: [{
|
|
14
|
-
imports: tabComponents,
|
|
15
|
-
exports: tabComponents,
|
|
16
|
-
}]
|
|
17
|
-
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS90YWIvdGFiLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQUVuRSxNQUFNLGFBQWEsR0FBRyxDQUFDLHVCQUF1QixFQUFFLGtCQUFrQixDQUFDLENBQUM7QUFNcEUsTUFBTSxPQUFPLFdBQVc7OEdBQVgsV0FBVzsrR0FBWCxXQUFXLFlBTkQsdUJBQXVCLEVBQUUsa0JBQWtCLGFBQTNDLHVCQUF1QixFQUFFLGtCQUFrQjsrR0FNckQsV0FBVzs7MkZBQVgsV0FBVztrQkFKdkIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsYUFBYTtvQkFDdEIsT0FBTyxFQUFFLGFBQWE7aUJBQ3ZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEl0VGFiQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi90YWItY29udGFpbmVyL3RhYi1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEl0VGFiSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdGFiLWl0ZW0vdGFiLWl0ZW0uY29tcG9uZW50JztcblxuY29uc3QgdGFiQ29tcG9uZW50cyA9IFtJdFRhYkNvbnRhaW5lckNvbXBvbmVudCwgSXRUYWJJdGVtQ29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogdGFiQ29tcG9uZW50cyxcbiAgZXhwb3J0czogdGFiQ29tcG9uZW50cyxcbn0pXG5leHBvcnQgY2xhc3MgSXRUYWJNb2R1bGUge31cbiJdfQ==
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
import { booleanAttribute, ChangeDetectionStrategy, Component, HostBinding, HostListener, Inject, Input, Optional, ViewEncapsulation, } from '@angular/core';
|
|
2
|
-
import { merge } from 'rxjs';
|
|
3
|
-
import { ItIconComponent } from '../../../../utils/icon/icon.component';
|
|
4
|
-
import { IT_SORT_DEFAULT_OPTIONS, } from '../../../../../interfaces/sortable-table';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../sort.directive";
|
|
7
|
-
/**
|
|
8
|
-
* Applies sorting behavior (click to change sort) and styles to an element, including an
|
|
9
|
-
* arrow to display the current sort direction.
|
|
10
|
-
*
|
|
11
|
-
* Must be provided with an id and contained within a parent ItSort directive.
|
|
12
|
-
*
|
|
13
|
-
* If used on header cells in a CdkTable, it will automatically default its id from its containing
|
|
14
|
-
* column definition.
|
|
15
|
-
*/
|
|
16
|
-
export class ItSortHeaderComponent {
|
|
17
|
-
constructor(_changeDetectorRef,
|
|
18
|
-
// `SortDirective` is not optionally injected, but just asserted manually w/ better error.
|
|
19
|
-
_sort, defaultOptions) {
|
|
20
|
-
this._changeDetectorRef = _changeDetectorRef;
|
|
21
|
-
this._sort = _sort;
|
|
22
|
-
/** Sets the position of the arrow that displays when sorted. */
|
|
23
|
-
this.arrowPosition = 'after';
|
|
24
|
-
/** whether the sort header is disabled. */
|
|
25
|
-
this.sortDisabled = false;
|
|
26
|
-
this.sortHeaderClass = 'it-sort-header';
|
|
27
|
-
if (defaultOptions?.arrowPosition) {
|
|
28
|
-
this.arrowPosition = defaultOptions?.arrowPosition;
|
|
29
|
-
}
|
|
30
|
-
this._handleStateChanges();
|
|
31
|
-
}
|
|
32
|
-
ngOnInit() {
|
|
33
|
-
// Initialize the direction of the arrow and set the view state to be immediately that state.
|
|
34
|
-
this.updateArrowDirection();
|
|
35
|
-
this._sort.register(this);
|
|
36
|
-
}
|
|
37
|
-
ngOnDestroy() {
|
|
38
|
-
this._sort.deregister(this);
|
|
39
|
-
this._rerenderSubscription?.unsubscribe();
|
|
40
|
-
}
|
|
41
|
-
_handleClick() {
|
|
42
|
-
if (!this.isDisabled) {
|
|
43
|
-
this._sort.sort(this);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Whether this MatSortHeader is currently sorted in either ascending or descending order.
|
|
48
|
-
*/
|
|
49
|
-
get isSorted() {
|
|
50
|
-
return this._sort.active == this.id && (this._sort.direction === 'asc' || this._sort.direction === 'desc');
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Returns the icon class by the arrow direction
|
|
54
|
-
*/
|
|
55
|
-
get arrowIconClass() {
|
|
56
|
-
return `${this._arrowDirection == 'asc' ? 'arrow-up' : 'arrow-down'}`;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Updates the direction the arrow should be pointing. If it is not sorted, the arrow should be
|
|
60
|
-
* facing the start direction. Otherwise if it is sorted, the arrow should point in the currently
|
|
61
|
-
* active sorted direction. The reason this is updated through a function is because the direction
|
|
62
|
-
* should only be changed at specific times - when deactivated but the hint is displayed and when
|
|
63
|
-
* the sort is active and the direction changes. Otherwise the arrow's direction should linger
|
|
64
|
-
* in cases such as the sort becoming deactivated but we want to animate the arrow away while
|
|
65
|
-
* preserving its direction, even though the next sort direction is actually different and should
|
|
66
|
-
* only be changed once the arrow displays again (hint or activation).
|
|
67
|
-
*/
|
|
68
|
-
updateArrowDirection() {
|
|
69
|
-
this._arrowDirection = this.isSorted ? this._sort.direction : this.start || this._sort.start;
|
|
70
|
-
}
|
|
71
|
-
get isDisabled() {
|
|
72
|
-
return this._sort.sortDisabled || this.sortDisabled;
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Gets the aria-sort attribute that should be applied to this sort header. If this header
|
|
76
|
-
* is not sorted, returns null so that the attribute is removed from the host element. Aria spec
|
|
77
|
-
* says that the aria-sort property should only be present on one header at a time, so removing
|
|
78
|
-
* ensures this is true.
|
|
79
|
-
*/
|
|
80
|
-
get ariaSortAttribute() {
|
|
81
|
-
if (!this.isSorted) {
|
|
82
|
-
return 'none';
|
|
83
|
-
}
|
|
84
|
-
return this._sort.direction == 'asc' ? 'ascending' : 'descending';
|
|
85
|
-
}
|
|
86
|
-
/** Handles changes in the sorting state. */
|
|
87
|
-
_handleStateChanges() {
|
|
88
|
-
this._rerenderSubscription = merge(this._sort.sortChange, this._sort._stateChanges).subscribe(() => {
|
|
89
|
-
if (this.isSorted) {
|
|
90
|
-
this.updateArrowDirection();
|
|
91
|
-
}
|
|
92
|
-
this._changeDetectorRef.markForCheck();
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItSortHeaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.ItSortDirective, optional: true }, { token: IT_SORT_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
96
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.6", type: ItSortHeaderComponent, isStandalone: true, selector: "[it-sort-header]", inputs: { id: ["it-sort-header", "id"], arrowPosition: "arrowPosition", start: "start", sortDisabled: ["sortDisabled", "sortDisabled", booleanAttribute], disableSortClear: ["disableSortClear", "disableSortClear", booleanAttribute] }, host: { listeners: { "click": "_handleClick()" }, properties: { "class": "this.sortHeaderClass", "class.it-sort-header-disabled": "this.isDisabled", "attr.aria-sort": "this.ariaSortAttribute" } }, exportAs: ["itSortHeader"], ngImport: i0, template: "<!--\n We set the `tabindex` on an element inside the table header, rather than the header itself,\n because of a bug in NVDA where having a `tabindex` on a `th` breaks keyboard navigation in the\n table (see https://github.com/nvaccess/nvda/issues/7718). This allows for the header to both\n be focusable, and have screen readers read out its `aria-sort` state. We prefer this approach\n over having a button with an `aria-label` inside the header, because the button's `aria-label`\n will be read out as the user is navigating the table's cell (see #13012).\n\n The approach is based off of: https://dequeuniversity.com/library/aria/tables/sf-sortable-grid\n-->\n<div\n class=\"it-sort-header-container it-focus-indicator\"\n [class.it-sort-header-sorted]=\"isSorted\"\n [class.it-sort-header-position-before]=\"arrowPosition === 'before'\"\n [attr.tabindex]=\"isDisabled ? null : 0\"\n [attr.role]=\"isDisabled ? null : 'button'\">\n <!--\n We have to keep it due to a large number of screenshot diff failures. It should be removed eventually.\n Note that the difference isn't visible with a shorter header, but once it breaks up into multiple lines, this element\n causes it to be center-aligned, whereas removing it will keep the text to the left.\n -->\n <div class=\"it-sort-header-content\">\n <ng-content></ng-content>\n </div>\n\n <it-icon class=\"it-sort-arrow\" size=\"sm\" [name]=\"arrowIconClass\" />\n</div>\n", styles: [".it-sort-header-container{display:flex;cursor:pointer;align-items:center;justify-content:space-between;letter-spacing:normal;outline:0}.it-sort-header-disabled .it-sort-header-container{cursor:default}.it-sort-header-disabled .it-sort-header-container .it-sort-arrow{opacity:0!important;fill-opacity:0!important}.it-sort-header-container:before{margin:-5px}.it-sort-header-container.it-sort-header-position-before{flex-direction:row-reverse;justify-content:left;gap:.5rem}.it-sort-header-container .it-sort-arrow{opacity:0;fill-opacity:0;transition:fill-opacity .3s ease-out,opacity .3s ease-out;-moz-transition:fill-opacity .3s ease-out,opacity .3s ease-out;-webkit-transition:fill-opacity .3s ease-out,opacity .3s ease-out;-o-transition:fill-opacity .3s ease-out,opacity .3s ease-out}.it-sort-header-container:hover .it-sort-arrow{opacity:.5;fill-opacity:.5}.it-sort-header-container.it-sort-header-sorted .it-sort-arrow{opacity:1!important;fill-opacity:1!important}\n"], dependencies: [{ kind: "component", type: ItIconComponent, selector: "it-icon", inputs: ["name", "size", "color", "padded", "svgClass", "title", "labelWaria"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
97
|
-
}
|
|
98
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItSortHeaderComponent, decorators: [{
|
|
99
|
-
type: Component,
|
|
100
|
-
args: [{ selector: '[it-sort-header]', exportAs: 'itSortHeader', standalone: true, imports: [ItIconComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<!--\n We set the `tabindex` on an element inside the table header, rather than the header itself,\n because of a bug in NVDA where having a `tabindex` on a `th` breaks keyboard navigation in the\n table (see https://github.com/nvaccess/nvda/issues/7718). This allows for the header to both\n be focusable, and have screen readers read out its `aria-sort` state. We prefer this approach\n over having a button with an `aria-label` inside the header, because the button's `aria-label`\n will be read out as the user is navigating the table's cell (see #13012).\n\n The approach is based off of: https://dequeuniversity.com/library/aria/tables/sf-sortable-grid\n-->\n<div\n class=\"it-sort-header-container it-focus-indicator\"\n [class.it-sort-header-sorted]=\"isSorted\"\n [class.it-sort-header-position-before]=\"arrowPosition === 'before'\"\n [attr.tabindex]=\"isDisabled ? null : 0\"\n [attr.role]=\"isDisabled ? null : 'button'\">\n <!--\n We have to keep it due to a large number of screenshot diff failures. It should be removed eventually.\n Note that the difference isn't visible with a shorter header, but once it breaks up into multiple lines, this element\n causes it to be center-aligned, whereas removing it will keep the text to the left.\n -->\n <div class=\"it-sort-header-content\">\n <ng-content></ng-content>\n </div>\n\n <it-icon class=\"it-sort-arrow\" size=\"sm\" [name]=\"arrowIconClass\" />\n</div>\n", styles: [".it-sort-header-container{display:flex;cursor:pointer;align-items:center;justify-content:space-between;letter-spacing:normal;outline:0}.it-sort-header-disabled .it-sort-header-container{cursor:default}.it-sort-header-disabled .it-sort-header-container .it-sort-arrow{opacity:0!important;fill-opacity:0!important}.it-sort-header-container:before{margin:-5px}.it-sort-header-container.it-sort-header-position-before{flex-direction:row-reverse;justify-content:left;gap:.5rem}.it-sort-header-container .it-sort-arrow{opacity:0;fill-opacity:0;transition:fill-opacity .3s ease-out,opacity .3s ease-out;-moz-transition:fill-opacity .3s ease-out,opacity .3s ease-out;-webkit-transition:fill-opacity .3s ease-out,opacity .3s ease-out;-o-transition:fill-opacity .3s ease-out,opacity .3s ease-out}.it-sort-header-container:hover .it-sort-arrow{opacity:.5;fill-opacity:.5}.it-sort-header-container.it-sort-header-sorted .it-sort-arrow{opacity:1!important;fill-opacity:1!important}\n"] }]
|
|
101
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.ItSortDirective, decorators: [{
|
|
102
|
-
type: Optional
|
|
103
|
-
}] }, { type: undefined, decorators: [{
|
|
104
|
-
type: Optional
|
|
105
|
-
}, {
|
|
106
|
-
type: Inject,
|
|
107
|
-
args: [IT_SORT_DEFAULT_OPTIONS]
|
|
108
|
-
}] }], propDecorators: { id: [{
|
|
109
|
-
type: Input,
|
|
110
|
-
args: ['it-sort-header']
|
|
111
|
-
}], arrowPosition: [{
|
|
112
|
-
type: Input
|
|
113
|
-
}], start: [{
|
|
114
|
-
type: Input
|
|
115
|
-
}], sortDisabled: [{
|
|
116
|
-
type: Input,
|
|
117
|
-
args: [{ transform: booleanAttribute }]
|
|
118
|
-
}], disableSortClear: [{
|
|
119
|
-
type: Input,
|
|
120
|
-
args: [{ transform: booleanAttribute }]
|
|
121
|
-
}], sortHeaderClass: [{
|
|
122
|
-
type: HostBinding,
|
|
123
|
-
args: ['class']
|
|
124
|
-
}], _handleClick: [{
|
|
125
|
-
type: HostListener,
|
|
126
|
-
args: ['click']
|
|
127
|
-
}], isDisabled: [{
|
|
128
|
-
type: HostBinding,
|
|
129
|
-
args: ['class.it-sort-header-disabled']
|
|
130
|
-
}], ariaSortAttribute: [{
|
|
131
|
-
type: HostBinding,
|
|
132
|
-
args: ['attr.aria-sort']
|
|
133
|
-
}] } });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1oZWFkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL3RhYmxlL3NvcnQvc29ydC1oZWFkZXIvc29ydC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL3RhYmxlL3NvcnQvc29ydC1oZWFkZXIvc29ydC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGdCQUFnQixFQUNoQix1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxLQUFLLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUV4RSxPQUFPLEVBQ0wsdUJBQXVCLEdBS3hCLE1BQU0sMENBQTBDLENBQUM7OztBQUVsRDs7Ozs7Ozs7R0FRRztBQVlILE1BQU0sT0FBTyxxQkFBcUI7SUE2QmhDLFlBQ21CLGtCQUFxQztJQUN0RCwwRkFBMEY7SUFDOUQsS0FBc0IsRUFDTCxjQUFxQztRQUhqRSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBRTFCLFVBQUssR0FBTCxLQUFLLENBQWlCO1FBekJwRCxnRUFBZ0U7UUFDdkQsa0JBQWEsR0FBNEIsT0FBTyxDQUFDO1FBSzFELDJDQUEyQztRQUUzQyxpQkFBWSxHQUFZLEtBQUssQ0FBQztRQU9kLG9CQUFlLEdBQUcsZ0JBQWdCLENBQUM7UUFhakQsSUFBSSxjQUFj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a0M1QyxRQUFROzswQkFDUixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHVCQUF1Qjt5Q0E1QnBCLEVBQUU7c0JBQTFCLEtBQUs7dUJBQUMsZ0JBQWdCO2dCQUdkLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0csS0FBSztzQkFBYixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFLdEMsZ0JBQWdCO3NCQURmLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBSXRCLGVBQWU7c0JBRDlCLFdBQVc7dUJBQUMsT0FBTztnQkFpQ3BCLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxPQUFPO2dCQW9DVixVQUFVO3NCQURwQixXQUFXO3VCQUFDLCtCQUErQjtnQkFZakMsaUJBQWlCO3NCQUQzQixXQUFXO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEl0U29ydERpcmVjdGl2ZSB9IGZyb20gJy4uL3NvcnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IG1lcmdlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEl0SWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSWNvbk5hbWUgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9pbnRlcmZhY2VzL2ljb24nO1xuaW1wb3J0IHtcbiAgSVRfU09SVF9ERUZBVUxUX09QVElPTlMsXG4gIEl0U29ydGFibGUsXG4gIEl0U29ydERlZmF1bHRPcHRpb25zLFxuICBTb3J0RGlyZWN0aW9uLFxuICBTb3J0SGVhZGVyQXJyb3dQb3NpdGlvbixcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vaW50ZXJmYWNlcy9zb3J0YWJsZS10YWJsZSc7XG5cbi8qKlxuICogQXBwbGllcyBzb3J0aW5nIGJlaGF2aW9yIChjbGljayB0byBjaGFuZ2Ugc29ydCkgYW5kIHN0eWxlcyB0byBhbiBlbGVtZW50LCBpbmNsdWRpbmcgYW5cbiAqIGFycm93IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnQgc29ydCBkaXJlY3Rpb24uXG4gKlxuICogTXVzdCBiZSBwcm92aWRlZCB3aXRoIGFuIGlkIGFuZCBjb250YWluZWQgd2l0aGluIGEgcGFyZW50IEl0U29ydCBkaXJlY3RpdmUuXG4gKlxuICogSWYgdXNlZCBvbiBoZWFkZXIgY2VsbHMgaW4gYSBDZGtUYWJsZSwgaXQgd2lsbCBhdXRvbWF0aWNhbGx5IGRlZmF1bHQgaXRzIGlkIGZyb20gaXRzIGNvbnRhaW5pbmdcbiAqIGNvbHVtbiBkZWZpbml0aW9uLlxuICovXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdbaXQtc29ydC1oZWFkZXJdJyxcbiAgZXhwb3J0QXM6ICdpdFNvcnRIZWFkZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbSXRJY29uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL3NvcnQtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc29ydC1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEl0U29ydEhlYWRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEl0U29ydGFibGUsIE9uRGVzdHJveSwgT25Jbml0IHtcbiAgLyoqXG4gICAqIElEIG9mIHRoaXMgc29ydCBoZWFkZXIuIElmIHVzZWQgd2l0aGluIHRoZSBjb250ZXh0IG9mIGEgQ2RrQ29sdW1uRGVmLCB0aGlzIHdpbGwgZGVmYXVsdCB0b1xuICAgKiB0aGUgY29sdW1uJ3MgbmFtZS5cbiAgICovXG4gIEBJbnB1dCgnaXQtc29ydC1oZWFkZXInKSBpZCE6IHN0cmluZztcblxuICAvKiogU2V0cyB0aGUgcG9zaXRpb24gb2YgdGhlIGFycm93IHRoYXQgZGlzcGxheXMgd2hlbiBzb3J0ZWQuICovXG4gIEBJbnB1dCgpIGFycm93UG9zaXRpb246IFNvcnRIZWFkZXJBcnJvd1Bvc2l0aW9uID0gJ2FmdGVyJztcblxuICAvKiogT3ZlcnJpZGVzIHRoZSBzb3J0IHN0YXJ0IHZhbHVlIG9mIHRoZSBjb250YWluaW5nIE1hdFNvcnQgZm9yIHRoaXMgU29ydEhlYWRlckNvbXBvbmVudC4gKi9cbiAgQElucHV0KCkgc3RhcnQ/OiBTb3J0RGlyZWN0aW9uO1xuXG4gIC8qKiB3aGV0aGVyIHRoZSBzb3J0IGhlYWRlciBpcyBkaXNhYmxlZC4gKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHNvcnREaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBPdmVycmlkZXMgdGhlIGRpc2FibGUgY2xlYXIgdmFsdWUgb2YgdGhlIGNvbnRhaW5pbmcgU29ydERpcmVjdGl2ZSBmb3IgdGhpcyBNYXRTb3J0YWJsZS4gKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIGRpc2FibGVTb3J0Q2xlYXI/OiBib29sZWFuO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwdWJsaWMgcmVhZG9ubHkgc29ydEhlYWRlckNsYXNzID0gJ2l0LXNvcnQtaGVhZGVyJztcblxuICBwcml2YXRlIF9yZXJlbmRlclN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICAvKiogVGhlIGRpcmVjdGlvbiB0aGUgYXJyb3cgc2hvdWxkIGJlIGZhY2luZyBhY2NvcmRpbmcgdG8gdGhlIGN1cnJlbnQgc3RhdGUuICovXG4gIHByaXZhdGUgX2Fycm93RGlyZWN0aW9uPzogU29ydERpcmVjdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgLy8gYFNvcnREaXJlY3RpdmVgIGlzIG5vdCBvcHRpb25hbGx5IGluamVjdGVkLCBidXQganVzdCBhc3NlcnRlZCBtYW51YWxseSB3LyBiZXR0ZXIgZXJyb3IuXG4gICAgQE9wdGlvbmFsKCkgcHVibGljIHJlYWRvbmx5IF9zb3J0OiBJdFNvcnREaXJlY3RpdmUsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChJVF9TT1JUX0RFRkFVTFRfT1BUSU9OUykgZGVmYXVsdE9wdGlvbnM/OiBJdFNvcnREZWZhdWx0T3B0aW9uc1xuICApIHtcbiAgICBpZiAoZGVmYXVsdE9wdGlvbnM/LmFycm93UG9zaXRpb24pIHtcbiAgICAgIHRoaXMuYXJyb3dQb3NpdGlvbiA9IGRlZmF1bHRPcHRpb25zPy5hcnJvd1Bvc2l0aW9uO1xuICAgIH1cblxuICAgIHRoaXMuX2hhbmRsZVN0YXRlQ2hhbmdlcygpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gSW5pdGlhbGl6ZSB0aGUgZGlyZWN0aW9uIG9mIHRoZSBhcnJvdyBhbmQgc2V0IHRoZSB2aWV3IHN0YXRlIHRvIGJlIGltbWVkaWF0ZWx5IHRoYXQgc3RhdGUuXG4gICAgdGhpcy51cGRhdGVBcnJvd0RpcmVjdGlvbigpO1xuICAgIHRoaXMuX3NvcnQucmVnaXN0ZXIodGhpcyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zb3J0LmRlcmVnaXN0ZXIodGhpcyk7XG4gICAgdGhpcy5fcmVyZW5kZXJTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gIF9oYW5kbGVDbGljaygpIHtcbiAgICBpZiAoIXRoaXMuaXNEaXNhYmxlZCkge1xuICAgICAgdGhpcy5fc29ydC5zb3J0KHRoaXMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoaXMgTWF0U29ydEhlYWRlciBpcyBjdXJyZW50bHkgc29ydGVkIGluIGVpdGhlciBhc2NlbmRpbmcgb3IgZGVzY2VuZGluZyBvcmRlci5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgaXNTb3J0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NvcnQuYWN0aXZlID09IHRoaXMuaWQgJiYgKHRoaXMuX3NvcnQuZGlyZWN0aW9uID09PSAnYXNjJyB8fCB0aGlzLl9zb3J0LmRpcmVjdGlvbiA9PT0gJ2Rlc2MnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBpY29uIGNsYXNzIGJ5IHRoZSBhcnJvdyBkaXJlY3Rpb25cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgYXJyb3dJY29uQ2xhc3MoKTogSWNvbk5hbWUge1xuICAgIHJldHVybiBgJHt0aGlzLl9hcnJvd0RpcmVjdGlvbiA9PSAnYXNjJyA/ICdhcnJvdy11cCcgOiAnYXJyb3ctZG93bid9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBkaXJlY3Rpb24gdGhlIGFycm93IHNob3VsZCBiZSBwb2ludGluZy4gSWYgaXQgaXMgbm90IHNvcnRlZCwgdGhlIGFycm93IHNob3VsZCBiZVxuICAgKiBmYWNpbmcgdGhlIHN0YXJ0IGRpcmVjdGlvbi4gT3RoZXJ3aXNlIGlmIGl0IGlzIHNvcnRlZCwgdGhlIGFycm93IHNob3VsZCBwb2ludCBpbiB0aGUgY3VycmVudGx5XG4gICAqIGFjdGl2ZSBzb3J0ZWQgZGlyZWN0aW9uLiBUaGUgcmVhc29uIHRoaXMgaXMgdXBkYXRlZCB0aHJvdWdoIGEgZnVuY3Rpb24gaXMgYmVjYXVzZSB0aGUgZGlyZWN0aW9uXG4gICAqIHNob3VsZCBvbmx5IGJlIGNoYW5nZWQgYXQgc3BlY2lmaWMgdGltZXMgLSB3aGVuIGRlYWN0aXZhdGVkIGJ1dCB0aGUgaGludCBpcyBkaXNwbGF5ZWQgYW5kIHdoZW5cbiAgICogdGhlIHNvcnQgaXMgYWN0aXZlIGFuZCB0aGUgZGlyZWN0aW9uIGNoYW5nZXMuIE90aGVyd2lzZSB0aGUgYXJyb3cncyBkaXJlY3Rpb24gc2hvdWxkIGxpbmdlclxuICAgKiBpbiBjYXNlcyBzdWNoIGFzIHRoZSBzb3J0IGJlY29taW5nIGRlYWN0aXZhdGVkIGJ1dCB3ZSB3YW50IHRvIGFuaW1hdGUgdGhlIGFycm93IGF3YXkgd2hpbGVcbiAgICogcHJlc2VydmluZyBpdHMgZGlyZWN0aW9uLCBldmVuIHRob3VnaCB0aGUgbmV4dCBzb3J0IGRpcmVjdGlvbiBpcyBhY3R1YWxseSBkaWZmZXJlbnQgYW5kIHNob3VsZFxuICAgKiBvbmx5IGJlIGNoYW5nZWQgb25jZSB0aGUgYXJyb3cgZGlzcGxheXMgYWdhaW4gKGhpbnQgb3IgYWN0aXZhdGlvbikuXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZUFycm93RGlyZWN0aW9uKCkge1xuICAgIHRoaXMuX2Fycm93RGlyZWN0aW9uID0gdGhpcy5pc1NvcnRlZCA/IHRoaXMuX3NvcnQuZGlyZWN0aW9uIDogdGhpcy5zdGFydCB8fCB0aGlzLl9zb3J0LnN0YXJ0O1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pdC1zb3J0LWhlYWRlci1kaXNhYmxlZCcpXG4gIHB1YmxpYyBnZXQgaXNEaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fc29ydC5zb3J0RGlzYWJsZWQgfHwgdGhpcy5zb3J0RGlzYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgYXJpYS1zb3J0IGF0dHJpYnV0ZSB0aGF0IHNob3VsZCBiZSBhcHBsaWVkIHRvIHRoaXMgc29ydCBoZWFkZXIuIElmIHRoaXMgaGVhZGVyXG4gICAqIGlzIG5vdCBzb3J0ZWQsIHJldHVybnMgbnVsbCBzbyB0aGF0IHRoZSBhdHRyaWJ1dGUgaXMgcmVtb3ZlZCBmcm9tIHRoZSBob3N0IGVsZW1lbnQuIEFyaWEgc3BlY1xuICAgKiBzYXlzIHRoYXQgdGhlIGFyaWEtc29ydCBwcm9wZXJ0eSBzaG91bGQgb25seSBiZSBwcmVzZW50IG9uIG9uZSBoZWFkZXIgYXQgYSB0aW1lLCBzbyByZW1vdmluZ1xuICAgKiBlbnN1cmVzIHRoaXMgaXMgdHJ1ZS5cbiAgICovXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLXNvcnQnKVxuICBwdWJsaWMgZ2V0IGFyaWFTb3J0QXR0cmlidXRlKCkge1xuICAgIGlmICghdGhpcy5pc1NvcnRlZCkge1xuICAgICAgcmV0dXJuICdub25lJztcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fc29ydC5kaXJlY3Rpb24gPT0gJ2FzYycgPyAnYXNjZW5kaW5nJyA6ICdkZXNjZW5kaW5nJztcbiAgfVxuXG4gIC8qKiBIYW5kbGVzIGNoYW5nZXMgaW4gdGhlIHNvcnRpbmcgc3RhdGUuICovXG4gIHByaXZhdGUgX2hhbmRsZVN0YXRlQ2hhbmdlcygpIHtcbiAgICB0aGlzLl9yZXJlbmRlclN1YnNjcmlwdGlvbiA9IG1lcmdlKHRoaXMuX3NvcnQuc29ydENoYW5nZSwgdGhpcy5fc29ydC5fc3RhdGVDaGFuZ2VzKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuaXNTb3J0ZWQpIHtcbiAgICAgICAgdGhpcy51cGRhdGVBcnJvd0RpcmVjdGlvbigpO1xuICAgICAgfVxuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgV2Ugc2V0IHRoZSBgdGFiaW5kZXhgIG9uIGFuIGVsZW1lbnQgaW5zaWRlIHRoZSB0YWJsZSBoZWFkZXIsIHJhdGhlciB0aGFuIHRoZSBoZWFkZXIgaXRzZWxmLFxuICBiZWNhdXNlIG9mIGEgYnVnIGluIE5WREEgd2hlcmUgaGF2aW5nIGEgYHRhYmluZGV4YCBvbiBhIGB0aGAgYnJlYWtzIGtleWJvYXJkIG5hdmlnYXRpb24gaW4gdGhlXG4gIHRhYmxlIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL252YWNjZXNzL252ZGEvaXNzdWVzLzc3MTgpLiBUaGlzIGFsbG93cyBmb3IgdGhlIGhlYWRlciB0byBib3RoXG4gIGJlIGZvY3VzYWJsZSwgYW5kIGhhdmUgc2NyZWVuIHJlYWRlcnMgcmVhZCBvdXQgaXRzIGBhcmlhLXNvcnRgIHN0YXRlLiBXZSBwcmVmZXIgdGhpcyBhcHByb2FjaFxuICBvdmVyIGhhdmluZyBhIGJ1dHRvbiB3aXRoIGFuIGBhcmlhLWxhYmVsYCBpbnNpZGUgdGhlIGhlYWRlciwgYmVjYXVzZSB0aGUgYnV0dG9uJ3MgYGFyaWEtbGFiZWxgXG4gIHdpbGwgYmUgcmVhZCBvdXQgYXMgdGhlIHVzZXIgaXMgbmF2aWdhdGluZyB0aGUgdGFibGUncyBjZWxsIChzZWUgIzEzMDEyKS5cblxuICBUaGUgYXBwcm9hY2ggaXMgYmFzZWQgb2ZmIG9mOiBodHRwczovL2RlcXVldW5pdmVyc2l0eS5jb20vbGlicmFyeS9hcmlhL3RhYmxlcy9zZi1zb3J0YWJsZS1ncmlkXG4tLT5cbjxkaXZcbiAgY2xhc3M9XCJpdC1zb3J0LWhlYWRlci1jb250YWluZXIgaXQtZm9jdXMtaW5kaWNhdG9yXCJcbiAgW2NsYXNzLml0LXNvcnQtaGVhZGVyLXNvcnRlZF09XCJpc1NvcnRlZFwiXG4gIFtjbGFzcy5pdC1zb3J0LWhlYWRlci1wb3NpdGlvbi1iZWZvcmVdPVwiYXJyb3dQb3NpdGlvbiA9PT0gJ2JlZm9yZSdcIlxuICBbYXR0ci50YWJpbmRleF09XCJpc0Rpc2FibGVkID8gbnVsbCA6IDBcIlxuICBbYXR0ci5yb2xlXT1cImlzRGlzYWJsZWQgPyBudWxsIDogJ2J1dHRvbidcIj5cbiAgPCEtLVxuICAgIFdlIGhhdmUgdG8ga2VlcCBpdCBkdWUgdG8gYSBsYXJnZSBudW1iZXIgb2Ygc2NyZWVuc2hvdCBkaWZmIGZhaWx1cmVzLiBJdCBzaG91bGQgYmUgcmVtb3ZlZCBldmVudHVhbGx5LlxuICAgIE5vdGUgdGhhdCB0aGUgZGlmZmVyZW5jZSBpc24ndCB2aXNpYmxlIHdpdGggYSBzaG9ydGVyIGhlYWRlciwgYnV0IG9uY2UgaXQgYnJlYWtzIHVwIGludG8gbXVsdGlwbGUgbGluZXMsIHRoaXMgZWxlbWVudFxuICAgIGNhdXNlcyBpdCB0byBiZSBjZW50ZXItYWxpZ25lZCwgd2hlcmVhcyByZW1vdmluZyBpdCB3aWxsIGtlZXAgdGhlIHRleHQgdG8gdGhlIGxlZnQuXG4gIC0tPlxuICA8ZGl2IGNsYXNzPVwiaXQtc29ydC1oZWFkZXItY29udGVudFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG5cbiAgPGl0LWljb24gY2xhc3M9XCJpdC1zb3J0LWFycm93XCIgc2l6ZT1cInNtXCIgW25hbWVdPVwiYXJyb3dJY29uQ2xhc3NcIiAvPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import { Directive, EventEmitter, Inject, Input, Optional, Output, booleanAttribute, HostBinding, } from '@angular/core';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
|
-
import { IT_SORT_DEFAULT_OPTIONS, } from '../../../../interfaces/sortable-table';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class ItSortDirective {
|
|
6
|
-
/** The sort direction of the currently active ItSortable. */
|
|
7
|
-
get direction() {
|
|
8
|
-
return this._direction;
|
|
9
|
-
}
|
|
10
|
-
set direction(direction) {
|
|
11
|
-
this._direction = direction;
|
|
12
|
-
}
|
|
13
|
-
constructor(_defaultOptions) {
|
|
14
|
-
this._defaultOptions = _defaultOptions;
|
|
15
|
-
/**
|
|
16
|
-
* The direction to set when an MatSortable is initially sorted.
|
|
17
|
-
* May be overridden by the MatSortable's sort start.
|
|
18
|
-
*/
|
|
19
|
-
this.start = 'asc';
|
|
20
|
-
/** Whether the sortable is disabled. */
|
|
21
|
-
this.sortDisabled = false;
|
|
22
|
-
/** Event emitted when the user changes either the active sort or sort direction. */
|
|
23
|
-
this.sortChange = new EventEmitter();
|
|
24
|
-
this.sortDirectiveClass = 'it-sort';
|
|
25
|
-
/** Collection of all registered sortables that this directive manages. */
|
|
26
|
-
this.sortables = new Map();
|
|
27
|
-
/** Used to notify any child components listening to state changes. */
|
|
28
|
-
this._stateChanges = new Subject();
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Register function to be used by the contained ItSortables. Adds the ItSortable to the
|
|
32
|
-
* collection of ItSortables.
|
|
33
|
-
*/
|
|
34
|
-
register(sortable) {
|
|
35
|
-
this.sortables.set(sortable.id, sortable);
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Unregister function to be used by the contained ItSortables. Removes the ItSortable from the
|
|
39
|
-
* collection of contained ItSortables.
|
|
40
|
-
*/
|
|
41
|
-
deregister(sortable) {
|
|
42
|
-
this.sortables.delete(sortable.id);
|
|
43
|
-
}
|
|
44
|
-
/** Sets the active sort id and determines the new sort direction. */
|
|
45
|
-
sort(sortable) {
|
|
46
|
-
if (this.active != sortable.id) {
|
|
47
|
-
this.active = sortable.id;
|
|
48
|
-
this.direction = sortable.start ? sortable.start : this.start;
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
this.direction = this.getNextSortDirection(sortable);
|
|
52
|
-
}
|
|
53
|
-
this.sortChange.emit({ active: this.active, direction: this.direction });
|
|
54
|
-
}
|
|
55
|
-
/** Returns the next sort direction of the active sortable, checking for potential overrides. */
|
|
56
|
-
getNextSortDirection(sortable) {
|
|
57
|
-
if (!sortable) {
|
|
58
|
-
return undefined;
|
|
59
|
-
}
|
|
60
|
-
// Get the sort direction cycle with the potential sortable overrides.
|
|
61
|
-
const disableClear = sortable?.disableSortClear ?? this.disableSortClear ?? !!this._defaultOptions?.disableClear;
|
|
62
|
-
const sortDirectionCycle = getSortDirectionCycle(sortable.start || this.start, disableClear);
|
|
63
|
-
// Get and return the next direction in the cycle
|
|
64
|
-
let nextDirectionIndex = sortDirectionCycle.indexOf(this.direction) + 1;
|
|
65
|
-
if (nextDirectionIndex >= sortDirectionCycle.length) {
|
|
66
|
-
nextDirectionIndex = 0;
|
|
67
|
-
}
|
|
68
|
-
return sortDirectionCycle[nextDirectionIndex];
|
|
69
|
-
}
|
|
70
|
-
ngOnChanges() {
|
|
71
|
-
this._stateChanges.next();
|
|
72
|
-
}
|
|
73
|
-
ngOnDestroy() {
|
|
74
|
-
this._stateChanges.complete();
|
|
75
|
-
}
|
|
76
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItSortDirective, deps: [{ token: IT_SORT_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
77
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.6", type: ItSortDirective, isStandalone: true, selector: "[itSort]", inputs: { active: ["itSortActive", "active"], start: ["itSortStart", "start"], direction: ["itSortDirection", "direction"], disableSortClear: ["disableSortClear", "disableSortClear", booleanAttribute], sortDisabled: ["sortDisabled", "sortDisabled", booleanAttribute] }, outputs: { sortChange: "sortChange" }, host: { properties: { "class": "this.sortDirectiveClass" } }, exportAs: ["itSort"], usesOnChanges: true, ngImport: i0 }); }
|
|
78
|
-
}
|
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItSortDirective, decorators: [{
|
|
80
|
-
type: Directive,
|
|
81
|
-
args: [{
|
|
82
|
-
standalone: true,
|
|
83
|
-
selector: '[itSort]',
|
|
84
|
-
exportAs: 'itSort',
|
|
85
|
-
}]
|
|
86
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
87
|
-
type: Optional
|
|
88
|
-
}, {
|
|
89
|
-
type: Inject,
|
|
90
|
-
args: [IT_SORT_DEFAULT_OPTIONS]
|
|
91
|
-
}] }], propDecorators: { active: [{
|
|
92
|
-
type: Input,
|
|
93
|
-
args: ['itSortActive']
|
|
94
|
-
}], start: [{
|
|
95
|
-
type: Input,
|
|
96
|
-
args: ['itSortStart']
|
|
97
|
-
}], direction: [{
|
|
98
|
-
type: Input,
|
|
99
|
-
args: ['itSortDirection']
|
|
100
|
-
}], disableSortClear: [{
|
|
101
|
-
type: Input,
|
|
102
|
-
args: [{ transform: booleanAttribute }]
|
|
103
|
-
}], sortDisabled: [{
|
|
104
|
-
type: Input,
|
|
105
|
-
args: [{ transform: booleanAttribute }]
|
|
106
|
-
}], sortChange: [{
|
|
107
|
-
type: Output
|
|
108
|
-
}], sortDirectiveClass: [{
|
|
109
|
-
type: HostBinding,
|
|
110
|
-
args: ['class']
|
|
111
|
-
}] } });
|
|
112
|
-
/** Returns the sort direction cycle to use given the provided parameters of order and clear. */
|
|
113
|
-
function getSortDirectionCycle(start, disableClear) {
|
|
114
|
-
const sortOrder = ['asc', 'desc'];
|
|
115
|
-
if (start == 'desc') {
|
|
116
|
-
sortOrder.reverse();
|
|
117
|
-
}
|
|
118
|
-
if (!disableClear) {
|
|
119
|
-
sortOrder.push(undefined);
|
|
120
|
-
}
|
|
121
|
-
return sortOrder;
|
|
122
|
-
}
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tYW5ndWxhci1raXQvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdGFibGUvc29ydC9zb3J0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sZ0JBQWdCLEVBQ2hCLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFDTCx1QkFBdUIsR0FLeEIsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFPL0MsTUFBTSxPQUFPLGVBQWU7SUFVMUIsNkRBQTZEO0lBQzdELElBQ0ksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBSSxTQUFTLENBQUMsU0FBd0I7UUFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7SUFDOUIsQ0FBQztJQTBCRCxZQUdVLGVBQXNDO1FBQXRDLG9CQUFlLEdBQWYsZUFBZSxDQUF1QjtRQTFDaEQ7OztXQUdHO1FBQ21CLFVBQUssR0FBa0IsS0FBSyxDQUFDO1FBbUJuRCx3Q0FBd0M7UUFFeEMsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFFOUIsb0ZBQW9GO1FBQ2pFLGVBQVUsR0FBOEIsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUczRSx1QkFBa0IsR0FBRyxTQUFTLENBQUM7UUFFL0MsMEVBQTBFO1FBQ2hFLGNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBc0IsQ0FBQztRQUVwRCxzRUFBc0U7UUFDN0Qsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBTTFDLENBQUM7SUFFSjs7O09BR0c7SUFDSCxRQUFR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QUFPOztBQXNFdEIsZ0dBQWdHO0FBQ2hHLFNBQVMscUJBQXFCLENBQUMsS0FBb0IsRUFBRSxZQUFxQjtJQUN4RSxNQUFNLFNBQVMsR0FBeUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDeEQsSUFBSSxLQUFLLElBQUksTUFBTSxFQUFFLENBQUM7UUFDcEIsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFDRCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbEIsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgSG9zdEJpbmRpbmcsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgSVRfU09SVF9ERUZBVUxUX09QVElPTlMsXG4gIEl0U29ydGFibGUsXG4gIEl0U29ydERlZmF1bHRPcHRpb25zLFxuICBJdFNvcnRFdmVudCxcbiAgU29ydERpcmVjdGlvbixcbn0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcy9zb3J0YWJsZS10YWJsZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1tpdFNvcnRdJyxcbiAgZXhwb3J0QXM6ICdpdFNvcnQnLFxufSlcbmV4cG9ydCBjbGFzcyBJdFNvcnREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKiBUaGUgaWQgb2YgdGhlIG1vc3QgcmVjZW50bHkgc29ydGVkIEl0U29ydGFibGUuICovXG4gIEBJbnB1dCgnaXRTb3J0QWN0aXZlJykgYWN0aXZlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGlyZWN0aW9uIHRvIHNldCB3aGVuIGFuIE1hdFNvcnRhYmxlIGlzIGluaXRpYWxseSBzb3J0ZWQuXG4gICAqIE1heSBiZSBvdmVycmlkZGVuIGJ5IHRoZSBNYXRTb3J0YWJsZSdzIHNvcnQgc3RhcnQuXG4gICAqL1xuICBASW5wdXQoJ2l0U29ydFN0YXJ0Jykgc3RhcnQ6IFNvcnREaXJlY3Rpb24gPSAnYXNjJztcblxuICAvKiogVGhlIHNvcnQgZGlyZWN0aW9uIG9mIHRoZSBjdXJyZW50bHkgYWN0aXZlIEl0U29ydGFibGUuICovXG4gIEBJbnB1dCgnaXRTb3J0RGlyZWN0aW9uJylcbiAgZ2V0IGRpcmVjdGlvbigpOiBTb3J0RGlyZWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fZGlyZWN0aW9uO1xuICB9XG4gIHNldCBkaXJlY3Rpb24oZGlyZWN0aW9uOiBTb3J0RGlyZWN0aW9uKSB7XG4gICAgdGhpcy5fZGlyZWN0aW9uID0gZGlyZWN0aW9uO1xuICB9XG4gIHByaXZhdGUgX2RpcmVjdGlvbjogU29ydERpcmVjdGlvbjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBkaXNhYmxlIHRoZSB1c2VyIGZyb20gY2xlYXJpbmcgdGhlIHNvcnQgYnkgZmluaXNoaW5nIHRoZSBzb3J0IGRpcmVjdGlvbiBjeWNsZS5cbiAgICogTWF5IGJlIG92ZXJyaWRkZW4gYnkgdGhlIEl0U29ydGFibGUncyBkaXNhYmxlIGNsZWFyIGlucHV0LlxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIGRpc2FibGVTb3J0Q2xlYXI/OiBib29sZWFuO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBzb3J0YWJsZSBpcyBkaXNhYmxlZC4gKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHNvcnREaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHVzZXIgY2hhbmdlcyBlaXRoZXIgdGhlIGFjdGl2ZSBzb3J0IG9yIHNvcnQgZGlyZWN0aW9uLiAqL1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgc29ydENoYW5nZTogRXZlbnRFbWl0dGVyPEl0U29ydEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8SXRTb3J0RXZlbnQ+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHB1YmxpYyByZWFkb25seSBzb3J0RGlyZWN0aXZlQ2xhc3MgPSAnaXQtc29ydCc7XG5cbiAgLyoqIENvbGxlY3Rpb24gb2YgYWxsIHJlZ2lzdGVyZWQgc29ydGFibGVzIHRoYXQgdGhpcyBkaXJlY3RpdmUgbWFuYWdlcy4gKi9cbiAgcHJvdGVjdGVkIHNvcnRhYmxlcyA9IG5ldyBNYXA8c3RyaW5nLCBJdFNvcnRhYmxlPigpO1xuXG4gIC8qKiBVc2VkIHRvIG5vdGlmeSBhbnkgY2hpbGQgY29tcG9uZW50cyBsaXN0ZW5pbmcgdG8gc3RhdGUgY2hhbmdlcy4gKi9cbiAgcmVhZG9ubHkgX3N0YXRlQ2hhbmdlcyA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KElUX1NPUlRfREVGQVVMVF9PUFRJT05TKVxuICAgIHByaXZhdGUgX2RlZmF1bHRPcHRpb25zPzogSXRTb3J0RGVmYXVsdE9wdGlvbnNcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciBmdW5jdGlvbiB0byBiZSB1c2VkIGJ5IHRoZSBjb250YWluZWQgSXRTb3J0YWJsZXMuIEFkZHMgdGhlIEl0U29ydGFibGUgdG8gdGhlXG4gICAqIGNvbGxlY3Rpb24gb2YgSXRTb3J0YWJsZXMuXG4gICAqL1xuICByZWdpc3Rlcihzb3J0YWJsZTogSXRTb3J0YWJsZSk6IHZvaWQge1xuICAgIHRoaXMuc29ydGFibGVzLnNldChzb3J0YWJsZS5pZCwgc29ydGFibGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVucmVnaXN0ZXIgZnVuY3Rpb24gdG8gYmUgdXNlZCBieSB0aGUgY29udGFpbmVkIEl0U29ydGFibGVzLiBSZW1vdmVzIHRoZSBJdFNvcnRhYmxlIGZyb20gdGhlXG4gICAqIGNvbGxlY3Rpb24gb2YgY29udGFpbmVkIEl0U29ydGFibGVzLlxuICAgKi9cbiAgZGVyZWdpc3Rlcihzb3J0YWJsZTogSXRTb3J0YWJsZSk6IHZvaWQge1xuICAgIHRoaXMuc29ydGFibGVzLmRlbGV0ZShzb3J0YWJsZS5pZCk7XG4gIH1cblxuICAvKiogU2V0cyB0aGUgYWN0aXZlIHNvcnQgaWQgYW5kIGRldGVybWluZXMgdGhlIG5ldyBzb3J0IGRpcmVjdGlvbi4gKi9cbiAgc29ydChzb3J0YWJsZTogSXRTb3J0YWJsZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFjdGl2ZSAhPSBzb3J0YWJsZS5pZCkge1xuICAgICAgdGhpcy5hY3RpdmUgPSBzb3J0YWJsZS5pZDtcbiAgICAgIHRoaXMuZGlyZWN0aW9uID0gc29ydGFibGUuc3RhcnQgPyBzb3J0YWJsZS5zdGFydCA6IHRoaXMuc3RhcnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlyZWN0aW9uID0gdGhpcy5nZXROZXh0U29ydERpcmVjdGlvbihzb3J0YWJsZSk7XG4gICAgfVxuXG4gICAgdGhpcy5zb3J0Q2hhbmdlLmVtaXQoeyBhY3RpdmU6IHRoaXMuYWN0aXZlLCBkaXJlY3Rpb246IHRoaXMuZGlyZWN0aW9uIH0pO1xuICB9XG5cbiAgLyoqIFJldHVybnMgdGhlIG5leHQgc29ydCBkaXJlY3Rpb24gb2YgdGhlIGFjdGl2ZSBzb3J0YWJsZSwgY2hlY2tpbmcgZm9yIHBvdGVudGlhbCBvdmVycmlkZXMuICovXG4gIGdldE5leHRTb3J0RGlyZWN0aW9uKHNvcnRhYmxlOiBJdFNvcnRhYmxlKTogU29ydERpcmVjdGlvbiB7XG4gICAgaWYgKCFzb3J0YWJsZSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICAvLyBHZXQgdGhlIHNvcnQgZGlyZWN0aW9uIGN5Y2xlIHdpdGggdGhlIHBvdGVudGlhbCBzb3J0YWJsZSBvdmVycmlkZXMuXG4gICAgY29uc3QgZGlzYWJsZUNsZWFyID0gc29ydGFibGU/LmRpc2FibGVTb3J0Q2xlYXIgPz8gdGhpcy5kaXNhYmxlU29ydENsZWFyID8/ICEhdGhpcy5fZGVmYXVsdE9wdGlvbnM/LmRpc2FibGVDbGVhcjtcbiAgICBjb25zdCBzb3J0RGlyZWN0aW9uQ3ljbGUgPSBnZXRTb3J0RGlyZWN0aW9uQ3ljbGUoc29ydGFibGUuc3RhcnQgfHwgdGhpcy5zdGFydCwgZGlzYWJsZUNsZWFyKTtcblxuICAgIC8vIEdldCBhbmQgcmV0dXJuIHRoZSBuZXh0IGRpcmVjdGlvbiBpbiB0aGUgY3ljbGVcbiAgICBsZXQgbmV4dERpcmVjdGlvbkluZGV4ID0gc29ydERpcmVjdGlvbkN5Y2xlLmluZGV4T2YodGhpcy5kaXJlY3Rpb24pICsgMTtcbiAgICBpZiAobmV4dERpcmVjdGlvbkluZGV4ID49IHNvcnREaXJlY3Rpb25DeWNsZS5sZW5ndGgpIHtcbiAgICAgIG5leHREaXJlY3Rpb25JbmRleCA9IDA7XG4gICAgfVxuICAgIHJldHVybiBzb3J0RGlyZWN0aW9uQ3ljbGVbbmV4dERpcmVjdGlvbkluZGV4XTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMuX3N0YXRlQ2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdGF0ZUNoYW5nZXMuY29tcGxldGUoKTtcbiAgfVxufVxuXG4vKiogUmV0dXJucyB0aGUgc29ydCBkaXJlY3Rpb24gY3ljbGUgdG8gdXNlIGdpdmVuIHRoZSBwcm92aWRlZCBwYXJhbWV0ZXJzIG9mIG9yZGVyIGFuZCBjbGVhci4gKi9cbmZ1bmN0aW9uIGdldFNvcnREaXJlY3Rpb25DeWNsZShzdGFydDogU29ydERpcmVjdGlvbiwgZGlzYWJsZUNsZWFyOiBib29sZWFuKTogQXJyYXk8U29ydERpcmVjdGlvbiB8IHVuZGVmaW5lZD4ge1xuICBjb25zdCBzb3J0T3JkZXI6IEFycmF5PFNvcnREaXJlY3Rpb24+ID0gWydhc2MnLCAnZGVzYyddO1xuICBpZiAoc3RhcnQgPT0gJ2Rlc2MnKSB7XG4gICAgc29ydE9yZGVyLnJldmVyc2UoKTtcbiAgfVxuICBpZiAoIWRpc2FibGVDbGVhcikge1xuICAgIHNvcnRPcmRlci5wdXNoKHVuZGVmaW5lZCk7XG4gIH1cblxuICByZXR1cm4gc29ydE9yZGVyO1xufVxuIl19
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
-
import { inputToBoolean } from '../../../utils/coercion';
|
|
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
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
13
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.6", type: ItTableComponent, isStandalone: true, selector: "it-table", inputs: { color: "color", headColor: "headColor", alignment: "alignment", striped: ["striped", "striped", inputToBoolean], hover: ["hover", "hover", inputToBoolean], bordered: ["bordered", "bordered", inputToBoolean], borderless: ["borderless", "borderless", inputToBoolean], compact: ["compact", "compact", inputToBoolean], captionTop: ["captionTop", "captionTop", inputToBoolean], responsive: "responsive" }, ngImport: i0, template: "<div [class]=\"responsive ? 'table-' + responsive : undefined\">\n <table\n class=\"table{{ color ? ' table-' + color : '' }}{{ alignment ? ' ' + alignment : '' }}\"\n [class.table-striped]=\"striped\"\n [class.table-hover]=\"hover\"\n [class.table-bordered]=\"bordered\"\n [class.table-borderless]=\"borderless\"\n [class.table-sm]=\"compact\"\n [class.caption-top]=\"captionTop\">\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 }); }
|
|
14
|
-
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTableComponent, decorators: [{
|
|
16
|
-
type: Component,
|
|
17
|
-
args: [{ standalone: true, selector: 'it-table', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "<div [class]=\"responsive ? 'table-' + responsive : undefined\">\n <table\n class=\"table{{ color ? ' table-' + color : '' }}{{ alignment ? ' ' + alignment : '' }}\"\n [class.table-striped]=\"striped\"\n [class.table-hover]=\"hover\"\n [class.table-bordered]=\"bordered\"\n [class.table-borderless]=\"borderless\"\n [class.table-sm]=\"compact\"\n [class.caption-top]=\"captionTop\">\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"] }]
|
|
18
|
-
}], propDecorators: { color: [{
|
|
19
|
-
type: Input
|
|
20
|
-
}], headColor: [{
|
|
21
|
-
type: Input
|
|
22
|
-
}], alignment: [{
|
|
23
|
-
type: Input
|
|
24
|
-
}], striped: [{
|
|
25
|
-
type: Input,
|
|
26
|
-
args: [{ transform: inputToBoolean }]
|
|
27
|
-
}], hover: [{
|
|
28
|
-
type: Input,
|
|
29
|
-
args: [{ transform: inputToBoolean }]
|
|
30
|
-
}], bordered: [{
|
|
31
|
-
type: Input,
|
|
32
|
-
args: [{ transform: inputToBoolean }]
|
|
33
|
-
}], borderless: [{
|
|
34
|
-
type: Input,
|
|
35
|
-
args: [{ transform: inputToBoolean }]
|
|
36
|
-
}], compact: [{
|
|
37
|
-
type: Input,
|
|
38
|
-
args: [{ transform: inputToBoolean }]
|
|
39
|
-
}], captionTop: [{
|
|
40
|
-
type: Input,
|
|
41
|
-
args: [{ transform: inputToBoolean }]
|
|
42
|
-
}], responsive: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL3RhYmxlL3RhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1hbmd1bGFyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvY29yZS90YWJsZS90YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBVXpELE1BQU0sT0FBTyxnQkFBZ0I7SUFSN0I7UUE0REU7OztXQUdHO1FBQ00sZUFBVSxHQUFvQixZQUFZLENBQUM7S0FDckQ7OEdBekRZLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHNKQW9CUCxjQUFjLDZCQU1kLGNBQWMsc0NBTWQsY0FBYyw0Q0FNZCxjQUFjLG1DQU1kLGNBQWMsNENBTWQsY0FBYyx1REM5RHBDLHV5QkF1QkE7OzJGRFhhLGdCQUFnQjtrQkFSNUIsU0FBUztpQ0FDSSxJQUFJLFlBQ04sVUFBVSxtQkFHSCx1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLEVBQUU7OEJBTUYsS0FBSztzQkFBYixLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFNZ0MsT0FBTztzQkFBNUMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBTUUsS0FBSztzQkFBMUMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBTUUsUUFBUTtzQkFBN0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBTUUsVUFBVTtzQkFBL0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBTUUsT0FBTztzQkFBNUMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBTUUsVUFBVTtzQkFBL0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7Z0JBTTNCLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGFibGVDb2xvciwgVGFibGVIZWFkQ29sb3IsIFRhYmxlUmVzcG9uc2l2ZSwgVmVydGljYWxBbGlnbm1lbnQgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2NvcmUnO1xuaW1wb3J0IHsgaW5wdXRUb0Jvb2xlYW4gfSBmcm9tICcuLi8uLi8uLi91dGlscy9jb2VyY2lvbic7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ2l0LXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFibGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBJdFRhYmxlQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIFRhYmxlIGNvbG9yXG4gICAqL1xuICBASW5wdXQoKSBjb2xvcjogVGFibGVDb2xvciB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogSGVhZCB0YWJsZSBjb2xvclxuICAgKi9cbiAgQElucHV0KCkgaGVhZENvbG9yOiBUYWJsZUhlYWRDb2xvciB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVXNlIHZlcnRpY2FsIGFsaWdubWVudCBjbGFzc2VzIHRvIHJlYWxpZ24gd2hlcmUgbmVlZGVkLlxuICAgKi9cbiAgQElucHV0KCkgYWxpZ25tZW50OiBWZXJ0aWNhbEFsaWdubWVudCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVXNlIC50YWJsZS1zdHJpcGVkIHRvIGFkZCB6ZWJyYSBzdHJpcGVzIHRvIGVhY2ggdGFibGUgcm93IGNvbnRhaW5lZCBpbiA8dGJvZHk+LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSBzdHJpcGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkIC50YWJsZS1ob3ZlciB0byBlbmFibGUgaG92ZXIgc3RhdGUgb24gdGFibGUgcm93cyBjb250YWluZWQgaW4gPHRib2R5Pi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogaW5wdXRUb0Jvb2xlYW4gfSkgaG92ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBZGQgLnRhYmxlLWJvcmRlcmVkIHRvIGhhdmUgYm9yZGVycyBvbiBhbGwgc2lkZXMgb2YgdGhlIHRhYmxlIGFuZCBvbiBhbGwgY2VsbHMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGlucHV0VG9Cb29sZWFuIH0pIGJvcmRlcmVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkIHRoZSAudGFibGUtYm9yZGVybGVzcyBjbGFzcyBmb3IgYSBib3JkZXJsZXNzIHRhYmxlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBpbnB1dFRvQm9vbGVhbiB9KSBib3JkZXJsZXNzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkIC50YWJsZS1zbSB0byBtYWtlIHRhYmxlcyBtb3JlIGNvbXBhY3QgYnkgaGFsdmluZyB0aGUgY2VsbCBwYWRkaW5nLlxuICAgKiBAZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGlucHV0VG9Cb29sZWFuIH0pIGNvbXBhY3Q/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUbyByZW5kZXIgdGhlIDxjYXB0aW9uPiBvbiB0b3Agb2YgdGhlIHRhYmxlXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGlucHV0VG9Cb29sZWFuIH0pIGNhcHRpb25Ub3A/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBSZXNwb25zaXZlIHRhYmxlcyBhbGxvdyB5b3UgdG8gc2Nyb2xsIHRhYmxlcyBob3Jpem9udGFsbHkgd2l0aCBlYXNlLlxuICAgKiBAZGVmYXVsdCByZXNwb25zaXZlXG4gICAqL1xuICBASW5wdXQoKSByZXNwb25zaXZlOiBUYWJsZVJlc3BvbnNpdmUgPSAncmVzcG9uc2l2ZSc7XG59XG4iLCI8ZGl2IFtjbGFzc109XCJyZXNwb25zaXZlID8gJ3RhYmxlLScgKyByZXNwb25zaXZlIDogdW5kZWZpbmVkXCI+XG4gIDx0YWJsZVxuICAgIGNsYXNzPVwidGFibGV7eyBjb2xvciA/ICcgdGFibGUtJyArIGNvbG9yIDogJycgfX17eyBhbGlnbm1lbnQgPyAnICcgKyBhbGlnbm1lbnQgOiAnJyB9fVwiXG4gICAgW2NsYXNzLnRhYmxlLXN0cmlwZWRdPVwic3RyaXBlZFwiXG4gICAgW2NsYXNzLnRhYmxlLWhvdmVyXT1cImhvdmVyXCJcbiAgICBbY2xhc3MudGFibGUtYm9yZGVyZWRdPVwiYm9yZGVyZWRcIlxuICAgIFtjbGFzcy50YWJsZS1ib3JkZXJsZXNzXT1cImJvcmRlcmxlc3NcIlxuICAgIFtjbGFzcy50YWJsZS1zbV09XCJjb21wYWN0XCJcbiAgICBbY2xhc3MuY2FwdGlvbi10b3BdPVwiY2FwdGlvblRvcFwiPlxuICAgIDxjYXB0aW9uPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2NhcHRpb25dXCI+PC9uZy1jb250ZW50PlxuICAgIDwvY2FwdGlvbj5cbiAgICA8dGhlYWQgW2NsYXNzXT1cImhlYWRDb2xvciA/ICd0YWJsZS0nICsgaGVhZENvbG9yIDogdW5kZWZpbmVkXCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbdGhlYWRdXCI+PC9uZy1jb250ZW50PlxuICAgIDwvdGhlYWQ+XG4gICAgPHRib2R5PlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Rib2R5XVwiPjwvbmctY29udGVudD5cbiAgICA8L3Rib2R5PlxuICAgIDx0Zm9vdD5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt0Zm9vdF1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC90Zm9vdD5cbiAgPC90YWJsZT5cbjwvZGl2PlxuIl19
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { ItTableComponent } from './table.component';
|
|
3
|
-
import { ItSortDirective } from './sort/sort.directive';
|
|
4
|
-
import { ItSortHeaderComponent } from './sort/sort-header/sort-header.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
const tableComponents = [ItTableComponent, ItSortDirective, ItSortHeaderComponent];
|
|
7
|
-
export class ItTableModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.6", ngImport: i0, type: ItTableModule, imports: [ItTableComponent, ItSortDirective, ItSortHeaderComponent], exports: [ItTableComponent, ItSortDirective, ItSortHeaderComponent] }); }
|
|
10
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTableModule }); }
|
|
11
|
-
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: ItTableModule, decorators: [{
|
|
13
|
-
type: NgModule,
|
|
14
|
-
args: [{
|
|
15
|
-
imports: tableComponents,
|
|
16
|
-
exports: tableComponents,
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWFuZ3VsYXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9jb3JlL3RhYmxlL3RhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7QUFFakYsTUFBTSxlQUFlLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUscUJBQXFCLENBQUMsQ0FBQztBQU1uRixNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsWUFORCxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUscUJBQXFCLGFBQXhELGdCQUFnQixFQUFFLGVBQWUsRUFBRSxxQkFBcUI7K0dBTXBFLGFBQWE7OzJGQUFiLGFBQWE7a0JBSnpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLE9BQU8sRUFBRSxlQUFlO2lCQUN6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJdFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSXRTb3J0RGlyZWN0aXZlIH0gZnJvbSAnLi9zb3J0L3NvcnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IEl0U29ydEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vc29ydC9zb3J0LWhlYWRlci9zb3J0LWhlYWRlci5jb21wb25lbnQnO1xuXG5jb25zdCB0YWJsZUNvbXBvbmVudHMgPSBbSXRUYWJsZUNvbXBvbmVudCwgSXRTb3J0RGlyZWN0aXZlLCBJdFNvcnRIZWFkZXJDb21wb25lbnRdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiB0YWJsZUNvbXBvbmVudHMsXG4gIGV4cG9ydHM6IHRhYmxlQ29tcG9uZW50cyxcbn0pXG5leHBvcnQgY2xhc3MgSXRUYWJsZU1vZHVsZSB7fVxuIl19
|