UNPKG

carbon-components-angular

Version:
1 lines 23.1 kB
{"version":3,"file":"carbon-components-angular-structured-list.mjs","sources":["../../src/structured-list/list-column.component.ts","../../src/structured-list/list-header.component.ts","../../src/structured-list/list-row.component.ts","../../src/structured-list/structured-list.component.ts","../../src/structured-list/structured-list.module.ts","../../src/structured-list/carbon-components-angular-structured-list.ts"],"sourcesContent":["import { Component, HostBinding, Input } from \"@angular/core\";\n\n/**\n * `ListColumn` represents a single column in a `StructuredList`.\n *\n * `ListColumn`s can be used in a `ListHeader` to specify the column headers, or in `ListRow`s to specify the column data.\n *\n * Example:\n * ```html\n * <cds-list-column nowrap=\"true\">Column 1</cds-list-column>\n * ```\n */\n@Component({\n\tselector: \"cds-list-column, ibm-list-column\",\n\ttemplate: `\n\t\t<span *ngIf=\"skeleton\"></span>\n\t\t<ng-content></ng-content>\n\t`\n})\nexport class ListColumn {\n\t@Input() skeleton = false;\n\n\t@HostBinding(\"attr.role\") role = \"cell\";\n\t@HostBinding(\"class.cds--structured-list-th\") isHeaderColumn = true;\n\t@HostBinding(\"class.cds--structured-list-td\") isBodyColumn = true;\n\t/**\n\t * Applies `white-space: nowrap` to the content of this `ListColumn`\n\t */\n\t@HostBinding(\"class.cds--structured-list-content--nowrap\") @Input() nowrap = false;\n}\n","import {\n\tComponent,\n\tHostBinding,\n\tContentChildren,\n\tQueryList,\n\tAfterContentInit,\n\tInput\n} from \"@angular/core\";\nimport { ListColumn } from \"./list-column.component\";\n\n/**\n * `ListHeader` provides a container for the `ListColumn`s that make up the header of a structured list.\n *\n * Example:\n * ```html\n * \t<cds-list-header>\n *\t\t<cds-list-column nowrap=\"true\">Column 1</cds-list-column>\n *\t\t<cds-list-column nowrap=\"true\">Column 2</cds-list-column>\n *\t\t<cds-list-column>Column 3</cds-list-column>\n *\t</cds-list-header>\n * ```\n */\n@Component({\n\tselector: \"cds-list-header, ibm-list-header\",\n\ttemplate: `\n\t\t<div class=\"cds--structured-list-row cds--structured-list-row--header-row\" role=\"row\">\n\t\t\t<ng-content></ng-content>\n\t\t\t<div *ngIf=\"selection\" class=\"cds--structured-list-th\"></div>\n\t\t</div>\n\t`\n})\nexport class ListHeader implements AfterContentInit {\n\t@HostBinding(\"class.cds--structured-list-thead\") wrapper = true;\n\t@HostBinding(\"attr.role\") role = \"rowgroup\";\n\n\t@Input()\n\tset skeleton(value: any) {\n\t\tthis._skeleton = value;\n\t\tthis.updateChildren();\n\t}\n\n\tget skeleton(): any {\n\t\treturn this._skeleton;\n\t}\n\n\t@ContentChildren(ListColumn) columns: QueryList<ListColumn>;\n\n\t/**\n\t * Set by the containing `StructuredList`. Adds a dummy header for the selection column when set to true.\n\t */\n\tselection = false;\n\n\tprotected _skeleton = false;\n\n\tngAfterContentInit() {\n\t\tthis.columns.forEach(column => {\n\t\t\tcolumn.isBodyColumn = false;\n\t\t\tcolumn.isHeaderColumn = true;\n\t\t});\n\t\tthis.updateChildren();\n\t}\n\n\tprotected updateChildren() {\n\t\tif (this.columns) {\n\t\t\tthis.columns.toArray().forEach(child => child.skeleton = this.skeleton);\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tHostBinding,\n\tContentChildren,\n\tQueryList,\n\tAfterContentInit,\n\tInput,\n\tHostListener,\n\tViewChild,\n\tElementRef,\n\tEventEmitter,\n\tOutput\n} from \"@angular/core\";\nimport { ListColumn } from \"./list-column.component\";\n\n/**\n * `ListRow` provides a container for the `ListColumn`s that make up the body of a structured list.\n *\n * Example:\n * ```html\n * \t<cds-list-row>\n *\t\t<cds-list-column>Row 1</cds-list-column>\n *\t\t<cds-list-column nowrap=\"true\">Row One</cds-list-column>\n *\t\t<cds-list-column>\n *\t\t\tLorem ipsum dolor sit amet,\n *\t\t\tconsectetur adipiscing elit. Nunc dui magna,\n *\t\t\tfinibus id tortor sed, aliquet bibendum augue.\n *\t\t\tAenean posuere sem vel euismod dignissim. Nulla ut cursus dolor.\n *\t\t\tPellentesque vulputate nisl a porttitor interdum.\n *\t\t</cds-list-column>\n *\t</cds-list-row>\n * ```\n */\n@Component({\n\tselector: \"cds-list-row, ibm-list-row\",\n\ttemplate: `\n\t\t<ng-content></ng-content>\n\t\t<ng-container *ngIf=\"selection\">\n\t\t\t<input\n\t\t\t\t#input\n\t\t\t\tclass=\"cds--structured-list-input cds--visually-hidden\"\n\t\t\t\ttype=\"radio\"\n\t\t\t\t[value]=\"value\"\n\t\t\t\t[name]=\"name\"\n\t\t\t\t[title]=\"label\"\n\t\t\t\t(focus)=\"handleFocus(true)\"\n\t\t\t\t(blur)=\"handleFocus(false)\"\n\t\t\t\t(change)=\"onChange($event)\"\n\t\t\t\t[checked]=\"selected\"/>\n\t\t\t<div class=\"cds--structured-list-td\">\n\t\t\t\t<svg cdsIcon=\"checkmark--filled\" size=\"16\" class=\"cds--structured-list-svg\"></svg>\n\t\t\t</div>\n\t\t</ng-container>\n\t`\n})\nexport class ListRow implements AfterContentInit {\n\t@HostBinding(\"class.cds--structured-list-row--focused-within\") get focusClass() {\n\t\treturn this.isFocused;\n\t}\n\t@Input() @HostBinding(\"class.cds--structured-list-row--selected\") selected = false;\n\t/**\n\t * Applies an accessible label to the row. Defaults to no label.\n\t */\n\t@Input() @HostBinding(\"attr.aria-label\") label;\n\t/**\n\t * The value for the row. Returned via `ngModel` or `selected` event on the containing `StructuredList`.\n\t */\n\t@Input() value;\n\t/**\n\t * Internal event used to notify the containing `StructuredList` of changes.\n\t */\n\t@Output() change: EventEmitter<Event> = new EventEmitter();\n\n\t/**\n\t * Set by the containing `StructuredList`. Enables or disables row level selection features.\n\t */\n\tselection = false;\n\t/**\n\t * Set by the containing `StructuredList`. When `selection = true`, used for the `name` property on the radio input.\n\t */\n\tname = \"list\";\n\n\t@HostBinding(\"class.cds--structured-list-row\") wrapper = true;\n\t@HostBinding(\"attr.role\") role = \"row\";\n\n\t@ContentChildren(ListColumn) columns: QueryList<ListColumn>;\n\n\t@ViewChild(\"input\") input: ElementRef;\n\n\tprivate isFocused = false;\n\n\tngAfterContentInit() {\n\t\tthis.columns.forEach(column => {\n\t\t\tcolumn.isBodyColumn = true;\n\t\t\tcolumn.isHeaderColumn = false;\n\t\t});\n\t}\n\n\t@HostListener(\"click\")\n\tonclick() {\n\t\tif (this.selection) {\n\t\t\tthis.input.nativeElement.click();\n\t\t}\n\t}\n\n\tonChange(event) {\n\t\tthis.change.emit(event);\n\t}\n\n\thandleFocus(isFocused) {\n\t\tif (this.selection) {\n\t\t\tthis.isFocused = isFocused;\n\t\t\tif (this.isFocused) {\n\t\t\t\tthis.input.nativeElement.click();\n\t\t\t}\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tInput,\n\tContentChildren,\n\tQueryList,\n\tAfterContentInit,\n\tOutput,\n\tEventEmitter\n} from \"@angular/core\";\nimport { ListRow } from \"./list-row.component\";\nimport { ListHeader } from \"./list-header.component\";\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from \"@angular/forms\";\n\n/**\n * Structured Lists represent related tabular data. For larger datasets consider a full `Table`.\n *\n * See [structured-list/usage](https://www.carbondesignsystem.com/components/structured-list/usage) for usage guidance.\n *\n * Get started with importing the module:\n *\n * ```typescript\n * import { StructuredListModule } from 'carbon-components-angular';\n * ```\n *\n * ```html\n *\t<cds-structured-list>\n *\t\t<cds-list-header>\n *\t\t\t<cds-list-column nowrap=\"true\">Column 1</cds-list-column>\n *\t\t\t<cds-list-column nowrap=\"true\">Column 2</cds-list-column>\n *\t\t\t<cds-list-column>Column 3</cds-list-column>\n *\t\t</cds-list-header>\n *\t\t<cds-list-row>\n *\t\t\t<cds-list-column>Row 1</cds-list-column>\n *\t\t\t<cds-list-column nowrap=\"true\">Row One</cds-list-column>\n *\t\t\t<cds-list-column>\n *\t\t\t\tLorem ipsum dolor sit amet,\n *\t\t\t\tconsectetur adipiscing elit. Nunc dui magna,\n *\t\t\t\tfinibus id tortor sed, aliquet bibendum augue.\n *\t\t\t\tAenean posuere sem vel euismod dignissim. Nulla ut cursus dolor.\n *\t\t\t\tPellentesque vulputate nisl a porttitor interdum.\n *\t\t\t</cds-list-column>\n *\t\t</cds-list-row>\n *\t\t<cds-list-row>\n *\t\t\t<cds-list-column>Row 2</cds-list-column>\n *\t\t\t<cds-list-column nowrap=\"true\">Row Two</cds-list-column>\n *\t\t\t<cds-list-column>\n *\t\t\t\tLorem ipsum dolor sit amet,\n *\t\t\t\tconsectetur adipiscing elit. Nunc dui magna,\n *\t\t\t\tfinibus id tortor sed, aliquet bibendum augue.\n *\t\t\t\tAenean posuere sem vel euismod dignissim. Nulla ut cursus dolor.\n *\t\t\t\tPellentesque vulputate nisl a porttitor interdum.\n *\t\t\t</cds-list-column>\n *\t\t</cds-list-row>\n *\t</cds-structured-list>\n * ```\n *\n * [See demo](../../?path=/story/components-structured-list--basic)\n */\n@Component({\n\tselector: \"cds-structured-list, ibm-structured-list\",\n\ttemplate: `\n\t\t<div\n\t\t\tclass=\"cds--structured-list\"\n\t\t\trole=\"table\"\n\t\t\t[ngClass]=\"{\n\t\t\t\t'cds--structured-list--flush': flushed,\n\t\t\t\t'cds--structured-list--selection': selection,\n\t\t\t\t'cds--structured-list--condensed': condensed,\n\t\t\t\t'cds--skeleton': skeleton\n\t\t\t}\">\n\t\t\t<ng-content select=\"cds-list-header,ibm-list-header\"></ng-content>\n\t\t\t<div class=\"cds--structured-list-tbody\" role=\"rowgroup\">\n\t\t\t\t<ng-content></ng-content>\n\t\t\t</div>\n\t\t</div>\n\t`,\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: StructuredList,\n\t\t\tmulti: true\n\t\t}\n\t]\n})\nexport class StructuredList implements AfterContentInit, ControlValueAccessor {\n\t/**\n\t * A counter to provide unique default values.\n\t */\n\tstatic listCount = 0;\n\t/**\n\t * Set to `true` to enable radio like selection of the rows.\n\t */\n\t@Input() selection = false;\n\t/**\n\t * Set to `true` to align content with margin\n\t */\n\t@Input() flushed = false;\n\t/**\n\t * Set to `true` to apply a condensed style to the headers and rows.\n\t */\n\t@Input() condensed = false;\n\t/**\n\t * Used when `selection = true` as the row radio group `name`\n\t */\n\t@Input() name = `structured-list-${StructuredList.listCount++}`;\n\n\t/**\n\t * Sets the skeleton value for all `ListHeader` to the skeleton value of `StructuredList`.\n\t */\n\t@Input()\n\tset skeleton(value: any) {\n\t\tthis._skeleton = value;\n\t\tthis.updateChildren();\n\t}\n\n\t/**\n\t * Returns the skeleton value in the `StructuredList` if there is one.\n\t */\n\tget skeleton(): any {\n\t\treturn this._skeleton;\n\t}\n\n\t/**\n\t * Emits an event when the row selection changes.\n\t *\n\t * Emits an object that looks like:\n\t * ```javascript\n\t * {\n\t * \tvalue: \"something\",\n\t * \tselected: true,\n\t * \tname: \"structured-list-1\"\n\t * }\n\t * ```\n\t */\n\t@Output() selected: EventEmitter<{value: string, selected: boolean, name: string}> = new EventEmitter();\n\n\t@ContentChildren(ListRow) rows: QueryList<ListRow>;\n\t@ContentChildren(ListHeader) headers: QueryList<ListHeader>;\n\n\tprotected _skeleton = false;\n\n\tonChange = (_: any) => { };\n\n\tonTouched = () => { };\n\n\tngAfterContentInit() {\n\t\tconst setSelection = (rowOrHeader: ListRow | ListHeader) => {\n\t\t\trowOrHeader.selection = this.selection;\n\t\t};\n\n\t\tthis.headers.forEach(setSelection);\n\t\tthis.rows.forEach(row => {\n\t\t\tsetSelection(row);\n\t\t\trow.name = this.name;\n\t\t\trow.change.subscribe(() => {\n\t\t\t\tthis.selected.emit({\n\t\t\t\t\tvalue: row.value,\n\t\t\t\t\tselected: row.selected,\n\t\t\t\t\tname: this.name\n\t\t\t\t});\n\t\t\t\tthis.onChange(row.value);\n\t\t\t\tthis.writeValue(row.value);\n\t\t\t});\n\t\t});\n\t\tthis.updateChildren();\n\t}\n\n\twriteValue(value: any) {\n\t\tif (!this.rows) { return; }\n\t\tthis.rows.forEach(row => {\n\t\t\tif (row.value === value) {\n\t\t\t\trow.selected = true;\n\t\t\t} else {\n\t\t\t\trow.selected = false;\n\t\t\t}\n\t\t});\n\t}\n\n\tregisterOnChange(fn: any) {\n\t\tthis.onChange = fn;\n\t}\n\n\tregisterOnTouched(fn: any) {\n\t\tthis.onTouched = fn;\n\t}\n\n\tprotected updateChildren() {\n\t\tif (this.headers) {\n\t\t\tthis.headers.toArray().forEach(child => child.skeleton = this.skeleton);\n\t\t}\n\t}\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { StructuredList } from \"./structured-list.component\";\nimport { ListRow } from \"./list-row.component\";\nimport { ListHeader } from \"./list-header.component\";\nimport { ListColumn } from \"./list-column.component\";\nimport { IconModule } from \"carbon-components-angular/icon\";\n\n@NgModule({\n\tdeclarations: [\n\t\tStructuredList,\n\t\tListRow,\n\t\tListHeader,\n\t\tListColumn\n\t],\n\texports: [\n\t\tStructuredList,\n\t\tListRow,\n\t\tListHeader,\n\t\tListColumn\n\t],\n\timports: [\n\t\tCommonModule,\n\t\tIconModule\n\t]\n})\nexport class StructuredListModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}