@charcuterie/ui 4.18.2 → 4.18.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -191,7 +191,7 @@ export const DataTable = ({ className, columns, emptyState, getRowKey, isLabelVi
|
|
|
191
191
|
rowKey,
|
|
192
192
|
]
|
|
193
193
|
: selection.selectedRowKeys.filter((one) => one !== rowKey));
|
|
194
|
-
}, value: rowKey }) })) : null, columns.map((column) => (_jsxs("td", { className: toClassName("flex items-baseline gap-3 py-0.5 cq-md:table-cell cq-md:align-middle", CELL_PADDING_CLASS, "cq-md:py-2", column.className), role: "cell", children: [_jsx("span", { "aria-hidden": "true", className: "w-20 shrink-0
|
|
194
|
+
}, value: rowKey }) })) : null, columns.map((column) => (_jsxs("td", { className: toClassName("flex items-baseline gap-3 py-0.5 cq-md:table-cell cq-md:align-middle", CELL_PADDING_CLASS, "cq-md:py-2", column.className), role: "cell", children: [_jsx("span", { "aria-hidden": "true", className: "w-20 shrink-0 wrap-anywhere cq-xs:w-28 text-content-secondary text-xs uppercase tracking-wide cq-md:hidden", children: column.header }), _jsx("span", { className: "min-w-0 flex-1 wrap-anywhere cq-md:wrap-normal", children: column.renderCell(row) })] }, column.key)))] }, rowKey));
|
|
195
195
|
})) })] }) }));
|
|
196
196
|
};
|
|
197
197
|
//# sourceMappingURL=DataTable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.js","sourceRoot":"","sources":["../../src/DataTable/DataTable.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"DataTable.js","sourceRoot":"","sources":["../../src/DataTable/DataTable.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -43,7 +43,8 @@ cells. This is a **table**: rows of data with the odd control in them.
|
|
|
43
43
|
<Canvas of={DataTableStories.Responsive} />
|
|
44
44
|
|
|
45
45
|
Below `--cq-md` (32rem) each row becomes a labelled block — the column name beside its
|
|
46
|
-
value — and the header row wraps into a strip of sort controls that stays reachable.
|
|
46
|
+
value — and the header row wraps into a strip of sort controls that stays reachable.
|
|
47
|
+
Long column labels wrap within their label space instead of hiding their endings. Above
|
|
47
48
|
it, an ordinary table.
|
|
48
49
|
|
|
49
50
|
The two alternatives, and why neither:
|
|
@@ -411,3 +411,33 @@ export const Interactive: Story = {
|
|
|
411
411
|
/>
|
|
412
412
|
),
|
|
413
413
|
}
|
|
414
|
+
|
|
415
|
+
/** Long labels must remain complete in a narrow container, even on a wide screen. */
|
|
416
|
+
export const LongColumnLabels: Story = {
|
|
417
|
+
render: () => (
|
|
418
|
+
<div className="max-w-xs">
|
|
419
|
+
<DataTable<Task>
|
|
420
|
+
label="Tasks with complete column labels"
|
|
421
|
+
rows={TASKS.slice(0, 2)}
|
|
422
|
+
getRowKey={(task) => task.id}
|
|
423
|
+
columns={[
|
|
424
|
+
{
|
|
425
|
+
key: "title",
|
|
426
|
+
header: "Requested task description",
|
|
427
|
+
renderCell: (task) => task.title,
|
|
428
|
+
},
|
|
429
|
+
{
|
|
430
|
+
key: "assignee",
|
|
431
|
+
header: "Responsible maintainer",
|
|
432
|
+
renderCell: (task) => task.assignee,
|
|
433
|
+
},
|
|
434
|
+
{
|
|
435
|
+
key: "updatedAt",
|
|
436
|
+
header: "Most recent update date",
|
|
437
|
+
renderCell: (task) => task.updatedAt,
|
|
438
|
+
},
|
|
439
|
+
]}
|
|
440
|
+
/>
|
|
441
|
+
</div>
|
|
442
|
+
),
|
|
443
|
+
}
|
|
@@ -11,8 +11,13 @@ import {
|
|
|
11
11
|
} from "../viewport.testHelpers.ts"
|
|
12
12
|
import * as stories from "./DataTable.stories.tsx"
|
|
13
13
|
|
|
14
|
-
const {
|
|
15
|
-
|
|
14
|
+
const {
|
|
15
|
+
AllVariants,
|
|
16
|
+
Playground,
|
|
17
|
+
Interactive,
|
|
18
|
+
Responsive,
|
|
19
|
+
LongColumnLabels,
|
|
20
|
+
} = composeStories(stories)
|
|
16
21
|
|
|
17
22
|
/**
|
|
18
23
|
* The `<caption>` is the table's accessible name. Without one a
|
|
@@ -384,3 +389,39 @@ test("an empty table keeps its headers", async () => {
|
|
|
384
389
|
?.querySelectorAll("thead th"),
|
|
385
390
|
).toHaveLength(5)
|
|
386
391
|
})
|
|
392
|
+
|
|
393
|
+
test("stacked cells show complete long column names within a narrow container", async () => {
|
|
394
|
+
const { canvas, canvasElement } = await mountStory(
|
|
395
|
+
LongColumnLabels,
|
|
396
|
+
)
|
|
397
|
+
expectAgentDrivable(canvas, {
|
|
398
|
+
role: "table",
|
|
399
|
+
name: "Tasks with complete column labels",
|
|
400
|
+
})
|
|
401
|
+
const labels = Array.from(
|
|
402
|
+
canvasElement.querySelectorAll<HTMLElement>(
|
|
403
|
+
'tbody td > span[aria-hidden="true"]',
|
|
404
|
+
),
|
|
405
|
+
)
|
|
406
|
+
await expect(labels).toHaveLength(6)
|
|
407
|
+
for (const label of labels) {
|
|
408
|
+
await expect(label).toBeVisible()
|
|
409
|
+
await expect(label.scrollWidth).toBeLessThanOrEqual(
|
|
410
|
+
label.clientWidth + 1,
|
|
411
|
+
)
|
|
412
|
+
await expect(label.scrollHeight).toBeLessThanOrEqual(
|
|
413
|
+
label.clientHeight + 1,
|
|
414
|
+
)
|
|
415
|
+
await expect(
|
|
416
|
+
getComputedStyle(label).textOverflow,
|
|
417
|
+
).not.toBe("ellipsis")
|
|
418
|
+
}
|
|
419
|
+
await expect(
|
|
420
|
+
labels[0].getBoundingClientRect().height,
|
|
421
|
+
).toBeGreaterThan(
|
|
422
|
+
Number.parseFloat(
|
|
423
|
+
getComputedStyle(labels[0]).lineHeight,
|
|
424
|
+
),
|
|
425
|
+
)
|
|
426
|
+
await expectNoAxeViolations(canvasElement)
|
|
427
|
+
})
|
|
@@ -467,7 +467,7 @@ export const DataTable = <Row,>({
|
|
|
467
467
|
out twice per cell. */}
|
|
468
468
|
<span
|
|
469
469
|
aria-hidden="true"
|
|
470
|
-
className="w-20 shrink-0
|
|
470
|
+
className="w-20 shrink-0 wrap-anywhere cq-xs:w-28 text-content-secondary text-xs uppercase tracking-wide cq-md:hidden"
|
|
471
471
|
>
|
|
472
472
|
{column.header}
|
|
473
473
|
</span>
|