@coreui/angular
Version:
CoreUI Components Library for Angular
52 lines • 6.25 kB
JavaScript
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