UNPKG

carbon-components-angular

Version:
87 lines 8.71 kB
import { Component, Input, Output, EventEmitter } from "@angular/core"; import * as i0 from "@angular/core"; import * as i1 from "carbon-components-angular/i18n"; import * as i2 from "@angular/common"; import * as i3 from "carbon-components-angular/checkbox"; export class TableCheckbox { constructor(i18n) { this.i18n = i18n; this.selected = false; this.name = ""; /** * Size of the table rows. */ this.size = "md"; this.skeleton = false; /** * Emits if a single row is selected. */ this.selectedChange = new EventEmitter(); this._label = this.i18n.getOverridable("TABLE.CHECKBOX_ROW"); } get disabled() { return this.row ? !!this.row.disabled : false; } set label(value) { this._label.override(value); } get label() { return this._label.value; } getSelectionLabelValue(row) { if (!this.selectionLabelColumn) { return { value: this.i18n.get().TABLE.ROW }; } return { value: row[this.selectionLabelColumn].data }; } getLabel() { return this._label.subject; } } TableCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TableCheckbox, deps: [{ token: i1.I18n }], target: i0.ɵɵFactoryTarget.Component }); TableCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TableCheckbox, selector: "[cdsTableCheckbox], [ibmTableCheckbox]", inputs: { row: "row", selected: "selected", name: "name", size: "size", label: "label", selectionLabelColumn: "selectionLabelColumn", skeleton: "skeleton" }, outputs: { selectedChange: "selectedChange" }, ngImport: i0, template: ` <cds-checkbox *ngIf="!skeleton" inline="true" [name]="name" [ariaLabel]="getLabel() | i18nReplace:getSelectionLabelValue(row) | async" [checked]="selected" [disabled]="disabled" (checkedChange)="selectedChange.emit()"> </cds-checkbox> `, isInline: true, dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.Checkbox, selector: "cds-checkbox, ibm-checkbox", inputs: ["disabled", "skeleton", "hideLabel", "name", "id", "required", "value", "ariaLabel", "ariaLabelledby", "indeterminate", "checked"], outputs: ["click", "checkedChange", "indeterminateChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.ReplacePipe, name: "i18nReplace" }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TableCheckbox, decorators: [{ type: Component, args: [{ // tslint:disable-next-line: component-selector selector: "[cdsTableCheckbox], [ibmTableCheckbox]", template: ` <cds-checkbox *ngIf="!skeleton" inline="true" [name]="name" [ariaLabel]="getLabel() | i18nReplace:getSelectionLabelValue(row) | async" [checked]="selected" [disabled]="disabled" (checkedChange)="selectedChange.emit()"> </cds-checkbox> ` }] }], ctorParameters: function () { return [{ type: i1.I18n }]; }, propDecorators: { row: [{ type: Input }], selected: [{ type: Input }], name: [{ type: Input }], size: [{ type: Input }], label: [{ type: Input }], selectionLabelColumn: [{ type: Input }], skeleton: [{ type: Input }], selectedChange: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RhYmxlL2NlbGwvdGFibGUtY2hlY2tib3guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osTUFBTSxlQUFlLENBQUM7Ozs7O0FBc0J2QixNQUFNLE9BQU8sYUFBYTtJQThDekIsWUFBc0IsSUFBVTtRQUFWLFNBQUksR0FBSixJQUFJLENBQU07UUEzQ3ZCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFakIsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQU1uQjs7V0FFRztRQUNNLFNBQUksR0FBaUIsSUFBSSxDQUFDO1FBdUIxQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRTFCOztXQUVHO1FBQ08sbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXBDLFdBQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRTlCLENBQUM7SUF2Q3JDLElBQUksUUFBUTtRQUNYLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxHQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzdELENBQUM7SUFPRCxJQUNJLEtBQUssQ0FBQyxLQUFrQztRQUMzQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBeUJELHNCQUFzQixDQUFDLEdBQWdCO1FBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDL0IsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztTQUM1QztRQUNELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxRQUFRO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztJQUM1QixDQUFDOzswR0F6RFcsYUFBYTs4RkFBYixhQUFhLDJSQVpmOzs7Ozs7Ozs7O0VBVVQ7MkZBRVcsYUFBYTtrQkFmekIsU0FBUzttQkFBQztvQkFDViwrQ0FBK0M7b0JBQy9DLFFBQVEsRUFBRSx3Q0FBd0M7b0JBQ2xELFFBQVEsRUFBRTs7Ozs7Ozs7OztFQVVUO2lCQUNEOzJGQUVTLEdBQUc7c0JBQVgsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFTRyxJQUFJO3NCQUFaLEtBQUs7Z0JBR0YsS0FBSztzQkFEUixLQUFLO2dCQW1CRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFLSSxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0Q29tcG9uZW50LFxuXHRJbnB1dCxcblx0T3V0cHV0LFxuXHRFdmVudEVtaXR0ZXJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEkxOG4sIE92ZXJyaWRhYmxlIH0gZnJvbSBcImNhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXIvaTE4blwiO1xuaW1wb3J0IHsgVGFibGVJdGVtIH0gZnJvbSBcIi4uL3RhYmxlLWl0ZW0uY2xhc3NcIjtcbmltcG9ydCB7IFRhYmxlUm93IH0gZnJvbSBcIi4uL3RhYmxlLXJvdy5jbGFzc1wiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBUYWJsZVJvd1NpemUgfSBmcm9tIFwiLi4vdGFibGUudHlwZXNcIjtcblxuQENvbXBvbmVudCh7XG5cdC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogY29tcG9uZW50LXNlbGVjdG9yXG5cdHNlbGVjdG9yOiBcIltjZHNUYWJsZUNoZWNrYm94XSwgW2libVRhYmxlQ2hlY2tib3hdXCIsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PGNkcy1jaGVja2JveFxuXHRcdFx0Km5nSWY9XCIhc2tlbGV0b25cIlxuXHRcdFx0aW5saW5lPVwidHJ1ZVwiXG5cdFx0XHRbbmFtZV09XCJuYW1lXCJcblx0XHRcdFthcmlhTGFiZWxdPVwiZ2V0TGFiZWwoKSB8IGkxOG5SZXBsYWNlOmdldFNlbGVjdGlvbkxhYmVsVmFsdWUocm93KSB8IGFzeW5jXCJcblx0XHRcdFtjaGVja2VkXT1cInNlbGVjdGVkXCJcblx0XHRcdFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG5cdFx0XHQoY2hlY2tlZENoYW5nZSk9XCJzZWxlY3RlZENoYW5nZS5lbWl0KClcIj5cblx0XHQ8L2Nkcy1jaGVja2JveD5cblx0YFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNoZWNrYm94IHtcblx0QElucHV0KCkgcm93OiBUYWJsZUl0ZW1bXTtcblxuXHRASW5wdXQoKSBzZWxlY3RlZCA9IGZhbHNlO1xuXG5cdEBJbnB1dCgpIG5hbWUgPSBcIlwiO1xuXG5cdGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcblx0XHRyZXR1cm4gdGhpcy5yb3cgPyAhISh0aGlzLnJvdyBhcyBUYWJsZVJvdykuZGlzYWJsZWQgOiBmYWxzZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBTaXplIG9mIHRoZSB0YWJsZSByb3dzLlxuXHQgKi9cblx0QElucHV0KCkgc2l6ZTogVGFibGVSb3dTaXplID0gXCJtZFwiO1xuXG5cdEBJbnB1dCgpXG5cdHNldCBsYWJlbCh2YWx1ZTogc3RyaW5nIHwgT2JzZXJ2YWJsZTxzdHJpbmc+KSB7XG5cdFx0dGhpcy5fbGFiZWwub3ZlcnJpZGUodmFsdWUpO1xuXHR9XG5cblx0Z2V0IGxhYmVsKCkge1xuXHRcdHJldHVybiB0aGlzLl9sYWJlbC52YWx1ZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBVc2VkIHRvIHBvcHVsYXRlIHRoZSByb3cgc2VsZWN0aW9uIGNoZWNrYm94IGxhYmVsIHdpdGggYSB1c2VmdWwgdmFsdWUgaWYgc2V0LlxuXHQgKlxuXHQgKiBFeGFtcGxlOlxuXHQgKiBgYGBcblx0ICogPGNkcy10YWJsZSBbc2VsZWN0aW9uTGFiZWxDb2x1bW5dPVwiMFwiPjwvY2RzLXRhYmxlPlxuXHQgKiA8IS0tIHJlc3VsdHMgaW4gYXJpYS1sYWJlbD1cIlNlbGVjdCBmaXJzdCBjb2x1bW4gdmFsdWVcIlxuXHQgKiAod2hlcmUgXCJmaXJzdCBjb2x1bW4gdmFsdWVcIiBpcyB0aGUgdmFsdWUgb2YgdGhlIGZpcnN0IGNvbHVtbiBpbiB0aGUgcm93IC0tPlxuXHQgKiBgYGBcblx0ICovXG5cdEBJbnB1dCgpIHNlbGVjdGlvbkxhYmVsQ29sdW1uOiBudW1iZXI7XG5cblx0QElucHV0KCkgc2tlbGV0b24gPSBmYWxzZTtcblxuXHQvKipcblx0ICogRW1pdHMgaWYgYSBzaW5nbGUgcm93IGlzIHNlbGVjdGVkLlxuXHQgKi9cblx0QE91dHB1dCgpIHNlbGVjdGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG5cdHByb3RlY3RlZCBfbGFiZWwgPSB0aGlzLmkxOG4uZ2V0T3ZlcnJpZGFibGUoXCJUQUJMRS5DSEVDS0JPWF9ST1dcIik7XG5cblx0Y29uc3RydWN0b3IocHJvdGVjdGVkIGkxOG46IEkxOG4pIHsgfVxuXG5cdGdldFNlbGVjdGlvbkxhYmVsVmFsdWUocm93OiBUYWJsZUl0ZW1bXSkge1xuXHRcdGlmICghdGhpcy5zZWxlY3Rpb25MYWJlbENvbHVtbikge1xuXHRcdFx0cmV0dXJuIHsgdmFsdWU6IHRoaXMuaTE4bi5nZXQoKS5UQUJMRS5ST1cgfTtcblx0XHR9XG5cdFx0cmV0dXJuIHsgdmFsdWU6IHJvd1t0aGlzLnNlbGVjdGlvbkxhYmVsQ29sdW1uXS5kYXRhIH07XG5cdH1cblxuXHRnZXRMYWJlbCgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuXHRcdHJldHVybiB0aGlzLl9sYWJlbC5zdWJqZWN0O1xuXHR9XG59XG4iXX0=