@xui/components
Version:
xUI Components for Angular
34 lines • 6.48 kB
JavaScript
import { booleanAttribute, ChangeDetectionStrategy, Component, EventEmitter, Inject, input, Optional, Output } from '@angular/core';
import { XUI_BANNER_DEFAULT_OPTIONS } from './banner.types';
import { CommonModule } from '@angular/common';
import { XuiIcon } from '../icon';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
export class XuiBanner {
constructor(options) {
this.options = options;
this.type = input(this.options?.type ?? 'info');
this.stamp = input();
this.dismissible = input(this.options?.dismissible ?? false, { transform: booleanAttribute });
this.bannerClose = new EventEmitter();
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: XuiBanner, deps: [{ token: XUI_BANNER_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.1", type: XuiBanner, isStandalone: true, selector: "xui-banner", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, stamp: { classPropertyName: "stamp", publicName: "stamp", isSignal: true, isRequired: false, transformFunction: null }, dismissible: { classPropertyName: "dismissible", publicName: "dismissible", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { bannerClose: "bannerClose" }, host: { listeners: { "click": "bannerClose.emit()" }, properties: { "class": "\"x-banner-\" + type()", "class.x-banner-dismissible": "dismissible()" }, classAttribute: "x-banner" }, ngImport: i0, template: "<div *ngIf=\"stamp()\" class=\"x-banner-stamp\">{{ stamp() }}</div>\n<ng-content />\n<xui-icon *ngIf=\"dismissible()\" class=\"x-banner-close\" icon=\"close\"></xui-icon>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: XuiIcon, selector: "xui-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "icon"], exportAs: ["xuiIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: XuiBanner, decorators: [{
type: Component,
args: [{ standalone: true, imports: [CommonModule, XuiIcon], selector: 'xui-banner', changeDetection: ChangeDetectionStrategy.OnPush, host: {
class: 'x-banner',
'[class]': '"x-banner-" + type()',
'[class.x-banner-dismissible]': 'dismissible()',
'(click)': 'bannerClose.emit()'
}, template: "<div *ngIf=\"stamp()\" class=\"x-banner-stamp\">{{ stamp() }}</div>\n<ng-content />\n<xui-icon *ngIf=\"dismissible()\" class=\"x-banner-close\" icon=\"close\"></xui-icon>\n" }]
}], ctorParameters: () => [{ type: undefined, decorators: [{
type: Optional
}, {
type: Inject,
args: [XUI_BANNER_DEFAULT_OPTIONS]
}] }], propDecorators: { bannerClose: [{
type: Output
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy94dWkvc3JjL2Jhbm5lci9iYW5uZXIudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL3h1aS9zcmMvYmFubmVyL2Jhbm5lci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBYywwQkFBMEIsRUFBb0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFNBQVMsQ0FBQzs7O0FBZWxDLE1BQU0sT0FBTyxTQUFTO0lBT3BCLFlBQW9FLE9BQTBCO1FBQTFCLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBTjlGLFNBQUksR0FBRyxLQUFLLENBQWEsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLElBQUksTUFBTSxDQUFDLENBQUM7UUFDdkQsVUFBSyxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQ3hCLGdCQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsV0FBVyxJQUFJLEtBQUssRUFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFFL0UsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRXNELENBQUM7OEdBUHZGLFNBQVMsa0JBT1ksMEJBQTBCO2tHQVAvQyxTQUFTLHdxQkMzQnRCLDhLQUdBLDJDRGFZLFlBQVksbUlBQUUsT0FBTzs7MkZBV3BCLFNBQVM7a0JBYnJCLFNBQVM7aUNBQ0ksSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUN0QixZQUFZLG1CQUNMLHVCQUF1QixDQUFDLE1BQU0sUUFFekM7d0JBQ0osS0FBSyxFQUFFLFVBQVU7d0JBQ2pCLFNBQVMsRUFBRSxzQkFBc0I7d0JBQ2pDLDhCQUE4QixFQUFFLGVBQWU7d0JBQy9DLFNBQVMsRUFBRSxvQkFBb0I7cUJBQ2hDOzswQkFTWSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLDBCQUEwQjt5Q0FGaEQsV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0LFxuICBpbnB1dCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhbm5lclR5cGUsIFhVSV9CQU5ORVJfREVGQVVMVF9PUFRJT05TLCBYdWlCYW5uZXJPcHRpb25zIH0gZnJvbSAnLi9iYW5uZXIudHlwZXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFh1aUljb24gfSBmcm9tICcuLi9pY29uJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFh1aUljb25dLFxuICBzZWxlY3RvcjogJ3h1aS1iYW5uZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGVVcmw6ICdiYW5uZXIuaHRtbCcsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ3gtYmFubmVyJyxcbiAgICAnW2NsYXNzXSc6ICdcIngtYmFubmVyLVwiICsgdHlwZSgpJyxcbiAgICAnW2NsYXNzLngtYmFubmVyLWRpc21pc3NpYmxlXSc6ICdkaXNtaXNzaWJsZSgpJyxcbiAgICAnKGNsaWNrKSc6ICdiYW5uZXJDbG9zZS5lbWl0KCknXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgWHVpQmFubmVyIHtcbiAgdHlwZSA9IGlucHV0PEJhbm5lclR5cGU+KHRoaXMub3B0aW9ucz8udHlwZSA/PyAnaW5mbycpO1xuICBzdGFtcCA9IGlucHV0PHN0cmluZz4oKTtcbiAgZGlzbWlzc2libGUgPSBpbnB1dCh0aGlzLm9wdGlvbnM/LmRpc21pc3NpYmxlID8/IGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICBAT3V0cHV0KCkgYmFubmVyQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdChYVUlfQkFOTkVSX0RFRkFVTFRfT1BUSU9OUykgcHJpdmF0ZSBvcHRpb25zPzogWHVpQmFubmVyT3B0aW9ucykge31cbn1cbiIsIjxkaXYgKm5nSWY9XCJzdGFtcCgpXCIgY2xhc3M9XCJ4LWJhbm5lci1zdGFtcFwiPnt7IHN0YW1wKCkgfX08L2Rpdj5cbjxuZy1jb250ZW50IC8+XG48eHVpLWljb24gKm5nSWY9XCJkaXNtaXNzaWJsZSgpXCIgY2xhc3M9XCJ4LWJhbm5lci1jbG9zZVwiIGljb249XCJjbG9zZVwiPjwveHVpLWljb24+XG4iXX0=