carbon-components-angular
Version:
Next generation components
48 lines • 5.85 kB
JavaScript
import { Component, ContentChild, HostBinding, Input } from "@angular/core";
import { TableHeaderDescription } from "./header/table-header-description.directive";
import { TableHeaderTitle } from "./header/table-header-title.directive";
import { Table } from "./table.component";
import * as i0 from "@angular/core";
export class TableContainer {
constructor() {
this.containerClass = true;
/**
* When true, the table container gets full-table AI presentation (Carbon `cds--data-table-container--ai-enabled`).
*/
this.aiEnabled = false;
}
ngAfterContentInit() {
// Set aria properties if values exist otherwise keep undefined
if (this.table) {
this.table.ariaLabelledby = this.headerTitle?.id;
this.table.ariaDescribedby = this.headerDescription?.id;
}
}
}
TableContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TableContainer, deps: [], target: i0.ɵɵFactoryTarget.Component });
TableContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TableContainer, selector: "cds-table-container, ibm-table-container", inputs: { aiEnabled: "aiEnabled" }, host: { properties: { "class.cds--data-table-container": "this.containerClass", "class.cds--data-table-container--ai-enabled": "this.aiEnabled" } }, queries: [{ propertyName: "headerTitle", first: true, predicate: TableHeaderTitle, descendants: true }, { propertyName: "headerDescription", first: true, predicate: TableHeaderDescription, descendants: true }, { propertyName: "table", first: true, predicate: Table, descendants: true }], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TableContainer, decorators: [{
type: Component,
args: [{
selector: "cds-table-container, ibm-table-container",
template: `<ng-content></ng-content>`
}]
}], propDecorators: { containerClass: [{
type: HostBinding,
args: ["class.cds--data-table-container"]
}], aiEnabled: [{
type: Input
}, {
type: HostBinding,
args: ["class.cds--data-table-container--ai-enabled"]
}], headerTitle: [{
type: ContentChild,
args: [TableHeaderTitle]
}], headerDescription: [{
type: ContentChild,
args: [TableHeaderDescription]
}], table: [{
type: ContentChild,
args: [Table]
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90YWJsZS90YWJsZS1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQU0xQyxNQUFNLE9BQU8sY0FBYztJQUozQjtRQUtpRCxtQkFBYyxHQUFHLElBQUksQ0FBQztRQUV0RTs7V0FFRztRQUNrRSxjQUFTLEdBQUcsS0FBSyxDQUFDO0tBYXZGO0lBUEEsa0JBQWtCO1FBQ2pCLCtEQUErRDtRQUMvRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDO1NBQ3hEO0lBQ0YsQ0FBQzs7MkdBbEJXLGNBQWM7K0ZBQWQsY0FBYyxrVEFRWixnQkFBZ0Isb0ZBQ2hCLHNCQUFzQix3RUFDdEIsS0FBSyxnREFaVCwyQkFBMkI7MkZBRXpCLGNBQWM7a0JBSjFCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLDBDQUEwQztvQkFDcEQsUUFBUSxFQUFFLDJCQUEyQjtpQkFDckM7OEJBRWdELGNBQWM7c0JBQTdELFdBQVc7dUJBQUMsaUNBQWlDO2dCQUt1QixTQUFTO3NCQUE3RSxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLDZDQUE2QztnQkFFbkMsV0FBVztzQkFBMUMsWUFBWTt1QkFBQyxnQkFBZ0I7Z0JBQ1EsaUJBQWlCO3NCQUF0RCxZQUFZO3VCQUFDLHNCQUFzQjtnQkFDZixLQUFLO3NCQUF6QixZQUFZO3VCQUFDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRBZnRlckNvbnRlbnRJbml0LFxuXHRDb21wb25lbnQsXG5cdENvbnRlbnRDaGlsZCxcblx0SG9zdEJpbmRpbmcsXG5cdElucHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBUYWJsZUhlYWRlckRlc2NyaXB0aW9uIH0gZnJvbSBcIi4vaGVhZGVyL3RhYmxlLWhlYWRlci1kZXNjcmlwdGlvbi5kaXJlY3RpdmVcIjtcbmltcG9ydCB7IFRhYmxlSGVhZGVyVGl0bGUgfSBmcm9tIFwiLi9oZWFkZXIvdGFibGUtaGVhZGVyLXRpdGxlLmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHsgVGFibGUgfSBmcm9tIFwiLi90YWJsZS5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiBcImNkcy10YWJsZS1jb250YWluZXIsIGlibS10YWJsZS1jb250YWluZXJcIixcblx0dGVtcGxhdGU6IGA8bmctY29udGVudD48L25nLWNvbnRlbnQ+YFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbnRhaW5lciBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLWRhdGEtdGFibGUtY29udGFpbmVyXCIpIGNvbnRhaW5lckNsYXNzID0gdHJ1ZTtcblxuXHQvKipcblx0ICogV2hlbiB0cnVlLCB0aGUgdGFibGUgY29udGFpbmVyIGdldHMgZnVsbC10YWJsZSBBSSBwcmVzZW50YXRpb24gKENhcmJvbiBgY2RzLS1kYXRhLXRhYmxlLWNvbnRhaW5lci0tYWktZW5hYmxlZGApLlxuXHQgKi9cblx0QElucHV0KCkgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY2RzLS1kYXRhLXRhYmxlLWNvbnRhaW5lci0tYWktZW5hYmxlZFwiKSBhaUVuYWJsZWQgPSBmYWxzZTtcblxuXHRAQ29udGVudENoaWxkKFRhYmxlSGVhZGVyVGl0bGUpIGhlYWRlclRpdGxlOiBUYWJsZUhlYWRlclRpdGxlO1xuXHRAQ29udGVudENoaWxkKFRhYmxlSGVhZGVyRGVzY3JpcHRpb24pIGhlYWRlckRlc2NyaXB0aW9uOiBUYWJsZUhlYWRlckRlc2NyaXB0aW9uO1xuXHRAQ29udGVudENoaWxkKFRhYmxlKSB0YWJsZTogVGFibGU7XG5cblx0bmdBZnRlckNvbnRlbnRJbml0KCkge1xuXHRcdC8vIFNldCBhcmlhIHByb3BlcnRpZXMgaWYgdmFsdWVzIGV4aXN0IG90aGVyd2lzZSBrZWVwIHVuZGVmaW5lZFxuXHRcdGlmICh0aGlzLnRhYmxlKSB7XG5cdFx0XHR0aGlzLnRhYmxlLmFyaWFMYWJlbGxlZGJ5ID0gdGhpcy5oZWFkZXJUaXRsZT8uaWQ7XG5cdFx0XHR0aGlzLnRhYmxlLmFyaWFEZXNjcmliZWRieSA9IHRoaXMuaGVhZGVyRGVzY3JpcHRpb24/LmlkO1xuXHRcdH1cblx0fVxufVxuIl19