Skip to content

Commit f7aab5e

Browse files
Table checkbox/icon alignment (#19615)
* Table checkboxes slotted whitespace Fixes #19563 * Table markup tidy-up Resolved the `style` attribute error * localize texts --------- Co-authored-by: Mads Rasmussen <madsr@hey.com>
1 parent 75ee1e6 commit f7aab5e

File tree

1 file changed

+14
-17
lines changed

1 file changed

+14
-17
lines changed

src/Umbraco.Web.UI.Client/src/packages/core/components/table/table.element.ts

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -235,13 +235,10 @@ export class UmbTableElement extends UmbLitElement {
235235
}
236236

237237
override render() {
238+
const style = !(this.config.allowSelection === false && this.config.hideIcon === true) ? 'width: 60px' : undefined;
238239
return html`
239240
<uui-table class="uui-text">
240-
<uui-table-column
241-
.style=${when(
242-
!(this.config.allowSelection === false && this.config.hideIcon === true),
243-
() => 'width: 60px',
244-
)}></uui-table-column>
241+
<uui-table-column style=${ifDefined(style)}></uui-table-column>
245242
<uui-table-head>
246243
${this._renderHeaderCheckboxCell()} ${this.columns.map((column) => this._renderHeaderCell(column))}
247244
</uui-table-head>
@@ -274,18 +271,17 @@ export class UmbTableElement extends UmbLitElement {
274271

275272
private _renderHeaderCheckboxCell() {
276273
if (this.config.hideIcon && !this.config.allowSelection) return;
277-
278274
return html`
279275
<uui-table-head-cell style="--uui-table-cell-padding: 0; text-align: center;">
280276
${when(
281277
this.config.allowSelection,
282-
() =>
283-
html` <uui-checkbox
284-
label="Select All"
278+
() => html`
279+
<uui-checkbox
280+
aria-label=${this.localize.term('general_selectAll')}
285281
style="padding: var(--uui-size-4) var(--uui-size-5);"
286282
@change="${this._handleAllRowsCheckboxChange}"
287-
?checked="${this.selection.length === this.items.length}">
288-
</uui-checkbox>`,
283+
?checked=${this.selection.length === this.items.length}></uui-checkbox>
284+
`,
289285
)}
290286
</uui-table-head-cell>
291287
`;
@@ -307,9 +303,11 @@ export class UmbTableElement extends UmbLitElement {
307303

308304
private _renderRowCheckboxCell(item: UmbTableItem) {
309305
if (this.sortable === true) {
310-
return html`<uui-table-cell style="text-align: center;">
311-
<uui-icon name="icon-grip"></uui-icon>
312-
</uui-table-cell>`;
306+
return html`
307+
<uui-table-cell style="text-align: center;">
308+
<uui-icon name="icon-grip"></uui-icon>
309+
</uui-table-cell>
310+
`;
313311
}
314312

315313
if (this.config.hideIcon && !this.config.allowSelection) return;
@@ -321,11 +319,10 @@ export class UmbTableElement extends UmbLitElement {
321319
this.config.allowSelection,
322320
() => html`
323321
<uui-checkbox
324-
label="Select Row"
322+
aria-label=${this.localize.term('buttons_select')}
325323
@click=${(e: PointerEvent) => e.stopPropagation()}
326324
@change=${(event: Event) => this._handleRowCheckboxChange(event, item)}
327-
?checked="${this._isSelected(item.id)}">
328-
</uui-checkbox>
325+
?checked=${this._isSelected(item.id)}></uui-checkbox>
329326
`,
330327
)}
331328
</uui-table-cell>

0 commit comments

Comments
 (0)