UNPKG

@coreui/angular

Version:

CoreUI Components Library for Angular

52 lines 6.25 kB
import { Component, computed, input } from '@angular/core'; import * as i0 from "@angular/core"; export class SpinnerComponent { constructor() { /** * Sets the color context of the component to one of CoreUI’s themed colors. * @type Colors */ this.color = input(); /** * Label for accessibility. * @type string * @default 'Loading...' */ this.label = input('Loading...'); /** * Size the component small. * @type string * @values 'sm' */ this.size = input(); /** * Set the button variant to an outlined button or a ghost button. * @values 'border' | 'grow' * @default 'border' */ this.variant = input('border'); /** * Default role attr for Spinner. [docs] * @type string * @default 'status' */ this.role = input('status'); this.hostClasses = computed(() => { return { [`spinner-${this.variant()}`]: true, [`text-${this.color()}`]: !!this.color(), [`spinner-${this.variant()}-${this.size()}`]: !!this.size() }; }); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: SpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.12", type: SpinnerComponent, isStandalone: true, selector: "c-spinner", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, role: { classPropertyName: "role", publicName: "role", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "role()", "class": "hostClasses()" } }, ngImport: i0, template: "<ng-content>\n <span class=\"visually-hidden\">{{ label() }}</span>\n</ng-content>\n" }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: SpinnerComponent, decorators: [{ type: Component, args: [{ selector: 'c-spinner', standalone: true, host: { '[attr.role]': 'role()', '[class]': 'hostClasses()' }, template: "<ng-content>\n <span class=\"visually-hidden\">{{ label() }}</span>\n</ng-content>\n" }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBYTNELE1BQU0sT0FBTyxnQkFBZ0I7SUFUN0I7UUFVRTs7O1dBR0c7UUFDTSxVQUFLLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFFakM7Ozs7V0FJRztRQUNNLFVBQUssR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFckM7Ozs7V0FJRztRQUNNLFNBQUksR0FBRyxLQUFLLEVBQVEsQ0FBQztRQUU5Qjs7OztXQUlHO1FBQ00sWUFBTyxHQUFHLEtBQUssQ0FBb0IsUUFBUSxDQUFDLENBQUM7UUFDdEQ7Ozs7V0FJRztRQUNNLFNBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFdkIsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ25DLE9BQU87Z0JBQ0wsQ0FBQyxXQUFXLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSTtnQkFDbkMsQ0FBQyxRQUFRLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ3hDLENBQUMsV0FBVyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTthQUM1RCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7S0FDSjsrR0F6Q1ksZ0JBQWdCO21HQUFoQixnQkFBZ0Isb3ZCQ2I3Qix1RkFHQTs7NEZEVWEsZ0JBQWdCO2tCQVQ1QixTQUFTOytCQUNFLFdBQVcsY0FFVCxJQUFJLFFBQ1Y7d0JBQ0osYUFBYSxFQUFFLFFBQVE7d0JBQ3ZCLFNBQVMsRUFBRSxlQUFlO3FCQUMzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENvbG9ycyB9IGZyb20gJy4uL2NvcmV1aS50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Mtc3Bpbm5lcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zcGlubmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgICdbYXR0ci5yb2xlXSc6ICdyb2xlKCknLFxuICAgICdbY2xhc3NdJzogJ2hvc3RDbGFzc2VzKCknXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgU3Bpbm5lckNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb2xvciBjb250ZXh0IG9mIHRoZSBjb21wb25lbnQgdG8gb25lIG9mIENvcmVVSeKAmXMgdGhlbWVkIGNvbG9ycy5cbiAgICogQHR5cGUgQ29sb3JzXG4gICAqL1xuICByZWFkb25seSBjb2xvciA9IGlucHV0PENvbG9ycz4oKTtcblxuICAvKipcbiAgICogTGFiZWwgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAqIEB0eXBlIHN0cmluZ1xuICAgKiBAZGVmYXVsdCAnTG9hZGluZy4uLidcbiAgICovXG4gIHJlYWRvbmx5IGxhYmVsID0gaW5wdXQoJ0xvYWRpbmcuLi4nKTtcblxuICAvKipcbiAgICogU2l6ZSB0aGUgY29tcG9uZW50IHNtYWxsLlxuICAgKiBAdHlwZSBzdHJpbmdcbiAgICogQHZhbHVlcyAnc20nXG4gICAqL1xuICByZWFkb25seSBzaXplID0gaW5wdXQ8J3NtJz4oKTtcblxuICAvKipcbiAgICogU2V0IHRoZSBidXR0b24gdmFyaWFudCB0byBhbiBvdXRsaW5lZCBidXR0b24gb3IgYSBnaG9zdCBidXR0b24uXG4gICAqIEB2YWx1ZXMgJ2JvcmRlcicgfCAnZ3JvdydcbiAgICogQGRlZmF1bHQgJ2JvcmRlcidcbiAgICovXG4gIHJlYWRvbmx5IHZhcmlhbnQgPSBpbnB1dDwnYm9yZGVyJyB8ICdncm93Jz4oJ2JvcmRlcicpO1xuICAvKipcbiAgICogRGVmYXVsdCByb2xlIGF0dHIgZm9yIFNwaW5uZXIuIFtkb2NzXVxuICAgKiBAdHlwZSBzdHJpbmdcbiAgICogQGRlZmF1bHQgJ3N0YXR1cydcbiAgICovXG4gIHJlYWRvbmx5IHJvbGUgPSBpbnB1dCgnc3RhdHVzJyk7XG5cbiAgcmVhZG9ubHkgaG9zdENsYXNzZXMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFtgc3Bpbm5lci0ke3RoaXMudmFyaWFudCgpfWBdOiB0cnVlLFxuICAgICAgW2B0ZXh0LSR7dGhpcy5jb2xvcigpfWBdOiAhIXRoaXMuY29sb3IoKSxcbiAgICAgIFtgc3Bpbm5lci0ke3RoaXMudmFyaWFudCgpfS0ke3RoaXMuc2l6ZSgpfWBdOiAhIXRoaXMuc2l6ZSgpXG4gICAgfTtcbiAgfSk7XG59XG4iLCI8bmctY29udGVudD5cbiAgPHNwYW4gY2xhc3M9XCJ2aXN1YWxseS1oaWRkZW5cIj57eyBsYWJlbCgpIH19PC9zcGFuPlxuPC9uZy1jb250ZW50PlxuIl19