UNPKG

carbon-components-angular

Version:
109 lines 9.18 kB
import { Component, Input, HostBinding } from "@angular/core"; import { Select } from "carbon-components-angular/select"; import { NG_VALUE_ACCESSOR } from "@angular/forms"; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; import * as i2 from "carbon-components-angular/icon"; /** * Get started with importing the module: * * ```typescript * import { TimePickerSelectModule } from 'carbon-components-angular'; * ``` * * [See demo](../../?path=/story/components-time-picker-select--simple) */ export class TimePickerSelect extends Select { constructor() { super(...arguments); this.timeSelect = true; this.timePickerSelect = true; this.id = `timepicker-select-${TimePickerSelect.selectCount++}`; /** * Set to true for a loading select. */ this.skeleton = false; /** * @deprecated since v5 - Use `cdsLayer` directive instead * `light` or `dark` select theme */ this.theme = "dark"; this.timePickerSelectSkeleton = this.skeleton; } get timePickerSelectLight() { return this.theme === "light"; } } TimePickerSelect.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TimePickerSelect, deps: null, target: i0.ɵɵFactoryTarget.Component }); TimePickerSelect.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TimePickerSelect, selector: "cds-timepicker-select, ibm-timepicker-select", inputs: { id: "id", ariaLabel: "ariaLabel", skeleton: "skeleton", theme: "theme", label: "label" }, host: { properties: { "class.cds--select": "this.timeSelect", "class.cds--time-picker__select": "this.timePickerSelect", "class.cds--skeleton": "this.timePickerSelectSkeleton", "class.cds--select--light": "this.timePickerSelectLight" } }, providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: TimePickerSelect, multi: true } ], usesInheritance: true, ngImport: i0, template: ` <label *ngIf="!skeleton && label" [attr.for]="id" class="cds--label cds--visually-hidden">{{label}}</label> <div class="cds--select-input__wrapper"> <select #select [attr.id]="id" [attr.aria-label]="ariaLabel" [disabled]="disabled" (change)="onChange($event)" class="cds--select-input"> <ng-content></ng-content> </select> <svg cdsIcon="chevron--down" size="16" *ngIf="!skeleton" class="cds--select__arrow"></svg> </div> `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.IconDirective, selector: "[cdsIcon], [ibmIcon]", inputs: ["ibmIcon", "cdsIcon", "size", "title", "ariaLabel", "ariaLabelledBy", "ariaHidden", "isFocusable"] }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TimePickerSelect, decorators: [{ type: Component, args: [{ selector: "cds-timepicker-select, ibm-timepicker-select", template: ` <label *ngIf="!skeleton && label" [attr.for]="id" class="cds--label cds--visually-hidden">{{label}}</label> <div class="cds--select-input__wrapper"> <select #select [attr.id]="id" [attr.aria-label]="ariaLabel" [disabled]="disabled" (change)="onChange($event)" class="cds--select-input"> <ng-content></ng-content> </select> <svg cdsIcon="chevron--down" size="16" *ngIf="!skeleton" class="cds--select__arrow"></svg> </div> `, providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: TimePickerSelect, multi: true } ] }] }], propDecorators: { timeSelect: [{ type: HostBinding, args: ["class.cds--select"] }], timePickerSelect: [{ type: HostBinding, args: ["class.cds--time-picker__select"] }], id: [{ type: Input }], ariaLabel: [{ type: Input }], skeleton: [{ type: Input }], theme: [{ type: Input }], label: [{ type: Input }], timePickerSelectSkeleton: [{ type: HostBinding, args: ["class.cds--skeleton"] }], timePickerSelectLight: [{ type: HostBinding, args: ["class.cds--select--light"] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXBpY2tlci1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RpbWVwaWNrZXItc2VsZWN0L3RpbWVwaWNrZXItc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ04sU0FBUyxFQUNULEtBQUssRUFHTCxXQUFXLEVBRVgsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBRW5EOzs7Ozs7OztHQVFHO0FBMEJILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxNQUFNO0lBekI1Qzs7UUEwQm1DLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFDTCxxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFFOUQsT0FBRSxHQUFHLHFCQUFxQixnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1FBSXBFOztXQUVHO1FBQ00sYUFBUSxHQUFHLEtBQUssQ0FBQztRQUUxQjs7O1dBR0c7UUFDTSxVQUFLLEdBQXFCLE1BQU0sQ0FBQztRQUlOLDZCQUF3QixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7S0FLN0U7SUFIQSxJQUE2QyxxQkFBcUI7UUFDakUsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLE9BQU8sQ0FBQztJQUMvQixDQUFDOzs2R0F6QlcsZ0JBQWdCO2lHQUFoQixnQkFBZ0IsMFpBUmpCO1FBQ1Y7WUFDQyxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxnQkFBZ0I7WUFDN0IsS0FBSyxFQUFFLElBQUk7U0FDWDtLQUNELGlEQXJCUzs7Ozs7Ozs7Ozs7Ozs7RUFjVDsyRkFTVyxnQkFBZ0I7a0JBekI1QixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSw4Q0FBOEM7b0JBQ3hELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7RUFjVDtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Y7NEJBQ0MsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxrQkFBa0I7NEJBQzdCLEtBQUssRUFBRSxJQUFJO3lCQUNYO3FCQUNEO2lCQUNEOzhCQUVrQyxVQUFVO3NCQUEzQyxXQUFXO3VCQUFDLG1CQUFtQjtnQkFDZSxnQkFBZ0I7c0JBQTlELFdBQVc7dUJBQUMsZ0NBQWdDO2dCQUVwQyxFQUFFO3NCQUFWLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQU1HLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRThCLHdCQUF3QjtzQkFBM0QsV0FBVzt1QkFBQyxxQkFBcUI7Z0JBRVcscUJBQXFCO3NCQUFqRSxXQUFXO3VCQUFDLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENvbXBvbmVudCxcblx0SW5wdXQsXG5cdE91dHB1dCxcblx0RXZlbnRFbWl0dGVyLFxuXHRIb3N0QmluZGluZyxcblx0VGVtcGxhdGVSZWZcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFNlbGVjdCB9IGZyb20gXCJjYXJib24tY29tcG9uZW50cy1hbmd1bGFyL3NlbGVjdFwiO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuLyoqXG4gKiBHZXQgc3RhcnRlZCB3aXRoIGltcG9ydGluZyB0aGUgbW9kdWxlOlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IFRpbWVQaWNrZXJTZWxlY3RNb2R1bGUgfSBmcm9tICdjYXJib24tY29tcG9uZW50cy1hbmd1bGFyJztcbiAqIGBgYFxuICpcbiAqIFtTZWUgZGVtb10oLi4vLi4vP3BhdGg9L3N0b3J5L2NvbXBvbmVudHMtdGltZS1waWNrZXItc2VsZWN0LS1zaW1wbGUpXG4gKi9cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogXCJjZHMtdGltZXBpY2tlci1zZWxlY3QsIGlibS10aW1lcGlja2VyLXNlbGVjdFwiLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxsYWJlbCAqbmdJZj1cIiFza2VsZXRvbiAmJiBsYWJlbFwiIFthdHRyLmZvcl09XCJpZFwiIGNsYXNzPVwiY2RzLS1sYWJlbCBjZHMtLXZpc3VhbGx5LWhpZGRlblwiPnt7bGFiZWx9fTwvbGFiZWw+XG5cdFx0PGRpdiBjbGFzcz1cImNkcy0tc2VsZWN0LWlucHV0X193cmFwcGVyXCI+XG5cdFx0XHQ8c2VsZWN0XG5cdFx0XHRcdCNzZWxlY3Rcblx0XHRcdFx0W2F0dHIuaWRdPVwiaWRcIlxuXHRcdFx0XHRbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG5cdFx0XHRcdFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG5cdFx0XHRcdChjaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiXG5cdFx0XHRcdGNsYXNzPVwiY2RzLS1zZWxlY3QtaW5wdXRcIj5cblx0XHRcdFx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXHRcdFx0PC9zZWxlY3Q+XG5cdFx0XHQ8c3ZnIGNkc0ljb249XCJjaGV2cm9uLS1kb3duXCIgc2l6ZT1cIjE2XCIgKm5nSWY9XCIhc2tlbGV0b25cIiBjbGFzcz1cImNkcy0tc2VsZWN0X19hcnJvd1wiPjwvc3ZnPlxuXHRcdDwvZGl2PlxuXHRgLFxuXHRwcm92aWRlcnM6IFtcblx0XHR7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdHVzZUV4aXN0aW5nOiBUaW1lUGlja2VyU2VsZWN0LFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9XG5cdF1cbn0pXG5leHBvcnQgY2xhc3MgVGltZVBpY2tlclNlbGVjdCBleHRlbmRzIFNlbGVjdCB7XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tc2VsZWN0XCIpIHRpbWVTZWxlY3QgPSB0cnVlO1xuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLXRpbWUtcGlja2VyX19zZWxlY3RcIikgdGltZVBpY2tlclNlbGVjdCA9IHRydWU7XG5cblx0QElucHV0KCkgaWQgPSBgdGltZXBpY2tlci1zZWxlY3QtJHtUaW1lUGlja2VyU2VsZWN0LnNlbGVjdENvdW50Kyt9YDtcblxuXHRASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcblxuXHQvKipcblx0ICogU2V0IHRvIHRydWUgZm9yIGEgbG9hZGluZyBzZWxlY3QuXG5cdCAqL1xuXHRASW5wdXQoKSBza2VsZXRvbiA9IGZhbHNlO1xuXG5cdC8qKlxuXHQgKiBAZGVwcmVjYXRlZCBzaW5jZSB2NSAtIFVzZSBgY2RzTGF5ZXJgIGRpcmVjdGl2ZSBpbnN0ZWFkXG5cdCAqIGBsaWdodGAgb3IgYGRhcmtgIHNlbGVjdCB0aGVtZVxuXHQgKi9cblx0QElucHV0KCkgdGhlbWU6IFwibGlnaHRcIiB8IFwiZGFya1wiID0gXCJkYXJrXCI7XG5cblx0QElucHV0KCkgbGFiZWw6IHN0cmluZztcblxuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLXNrZWxldG9uXCIpIHRpbWVQaWNrZXJTZWxlY3RTa2VsZXRvbiA9IHRoaXMuc2tlbGV0b247XG5cblx0QEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1zZWxlY3QtLWxpZ2h0XCIpIGdldCB0aW1lUGlja2VyU2VsZWN0TGlnaHQoKSB7XG5cdFx0cmV0dXJuIHRoaXMudGhlbWUgPT09IFwibGlnaHRcIjtcblx0fVxufVxuIl19