@coreui/angular
Version:
CoreUI Components Library for Angular
37 lines • 5.47 kB
JavaScript
import { Component, effect, inject, input, model } from '@angular/core';
import { TabsService } from './tabs.service';
import * as i0 from "@angular/core";
let nextId = 0;
export class TabsComponent {
constructor() {
this.tabsService = inject(TabsService);
/**
* The active item key.
* @type <string | number | undefined>
*/
this.activeItemKey = model();
/**
* The id attribute
* @type string
*/
this.tabsId = `tabs-${nextId++}`;
this.id = input(this.tabsId);
this.activeItemEffect = effect(() => {
this.tabsService.id.set(this.id());
this.tabsService.activeItemKey.set(this.activeItemKey());
}, { allowSignalWrites: true });
this.tabsServiceEffect = effect(() => {
this.activeItemKey.set(this.tabsService.activeItemKey());
}, { allowSignalWrites: true });
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.12", type: TabsComponent, isStandalone: true, selector: "c-tabs", inputs: { activeItemKey: { classPropertyName: "activeItemKey", publicName: "activeItemKey", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { activeItemKey: "activeItemKeyChange" }, host: { properties: { "id": "id()" }, classAttribute: "tabs" }, providers: [TabsService], exportAs: ["cTabs"], ngImport: i0, template: '<ng-content />', isInline: true, styles: [":host{display:block}\n"] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TabsComponent, decorators: [{
type: Component,
args: [{ exportAs: 'cTabs', selector: 'c-tabs', standalone: true, imports: [], template: '<ng-content />', providers: [TabsService], host: {
'[id]': 'id()',
class: 'tabs'
}, styles: [":host{display:block}\n"] }]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RhYnMtMi90YWJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTdDLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQztBQWVmLE1BQU0sT0FBTyxhQUFhO0lBYjFCO1FBY1csZ0JBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFM0M7OztXQUdHO1FBQ00sa0JBQWEsR0FBNkMsS0FBSyxFQUFtQixDQUFDO1FBRTVGOzs7V0FHRztRQUNILFdBQU0sR0FBRyxRQUFRLE1BQU0sRUFBRSxFQUFFLENBQUM7UUFDbkIsT0FBRSxHQUFHLEtBQUssQ0FBUyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFaEMscUJBQWdCLEdBQUcsTUFBTSxDQUNoQyxHQUFHLEVBQUU7WUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQzNELENBQUMsRUFDRCxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUM1QixDQUFDO1FBRU8sc0JBQWlCLEdBQUcsTUFBTSxDQUNqQyxHQUFHLEVBQUU7WUFDSCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxFQUNELEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQzVCLENBQUM7S0FDSDsrR0E5QlksYUFBYTttR0FBYixhQUFhLG1iQU5iLENBQUMsV0FBVyxDQUFDLCtDQUZkLGdCQUFnQjs7NEZBUWYsYUFBYTtrQkFiekIsU0FBUzsrQkFDRSxPQUFPLFlBQ1AsUUFBUSxjQUNOLElBQUksV0FDUCxFQUFFLFlBQ0QsZ0JBQWdCLGFBRWYsQ0FBQyxXQUFXLENBQUMsUUFDbEI7d0JBQ0osTUFBTSxFQUFFLE1BQU07d0JBQ2QsS0FBSyxFQUFFLE1BQU07cUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgbW9kZWwsIE1vZGVsU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUYWJzU2VydmljZSB9IGZyb20gJy4vdGFicy5zZXJ2aWNlJztcblxubGV0IG5leHRJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBleHBvcnRBczogJ2NUYWJzJyxcbiAgc2VsZWN0b3I6ICdjLXRhYnMnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXSxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudCAvPicsXG4gIHN0eWxlVXJsOiAnLi90YWJzLmNvbXBvbmVudC5zY3NzJyxcbiAgcHJvdmlkZXJzOiBbVGFic1NlcnZpY2VdLFxuICBob3N0OiB7XG4gICAgJ1tpZF0nOiAnaWQoKScsXG4gICAgY2xhc3M6ICd0YWJzJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIFRhYnNDb21wb25lbnQge1xuICByZWFkb25seSB0YWJzU2VydmljZSA9IGluamVjdChUYWJzU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIFRoZSBhY3RpdmUgaXRlbSBrZXkuXG4gICAqIEB0eXBlIDxzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQ+XG4gICAqL1xuICByZWFkb25seSBhY3RpdmVJdGVtS2V5OiBNb2RlbFNpZ25hbDxzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQ+ID0gbW9kZWw8bnVtYmVyIHwgc3RyaW5nPigpO1xuXG4gIC8qKlxuICAgKiBUaGUgaWQgYXR0cmlidXRlXG4gICAqIEB0eXBlIHN0cmluZ1xuICAgKi9cbiAgdGFic0lkID0gYHRhYnMtJHtuZXh0SWQrK31gO1xuICByZWFkb25seSBpZCA9IGlucHV0PHN0cmluZz4odGhpcy50YWJzSWQpO1xuXG4gIHJlYWRvbmx5IGFjdGl2ZUl0ZW1FZmZlY3QgPSBlZmZlY3QoXG4gICAgKCkgPT4ge1xuICAgICAgdGhpcy50YWJzU2VydmljZS5pZC5zZXQodGhpcy5pZCgpKTtcbiAgICAgIHRoaXMudGFic1NlcnZpY2UuYWN0aXZlSXRlbUtleS5zZXQodGhpcy5hY3RpdmVJdGVtS2V5KCkpO1xuICAgIH0sXG4gICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XG4gICk7XG5cbiAgcmVhZG9ubHkgdGFic1NlcnZpY2VFZmZlY3QgPSBlZmZlY3QoXG4gICAgKCkgPT4ge1xuICAgICAgdGhpcy5hY3RpdmVJdGVtS2V5LnNldCh0aGlzLnRhYnNTZXJ2aWNlLmFjdGl2ZUl0ZW1LZXkoKSk7XG4gICAgfSxcbiAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgKTtcbn1cbiJdfQ==