@ai-matrx/design-system 0.57.0 → 0.59.0
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.
- package/CHANGELOG.md +33 -0
- package/dist/data-table/index.cjs +611 -445
- package/dist/data-table/index.cjs.map +1 -1
- package/dist/data-table/index.js +200 -34
- package/dist/data-table/index.js.map +1 -1
- package/dist/field-formats/index.cjs +15 -0
- package/dist/field-formats/index.cjs.map +1 -1
- package/dist/field-formats/index.d.cts +10 -1
- package/dist/field-formats/index.d.ts +10 -1
- package/dist/field-formats/index.js +15 -0
- package/dist/field-formats/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,38 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.59.0
|
|
4
|
+
|
|
5
|
+
- **A host's inline functions never redraw the table.** A host that writes `cell`,
|
|
6
|
+
`customActions`, `getRowId`, `rowClassName` or its handlers inline handed the table new
|
|
7
|
+
functions on every render, and every row redrew: /artifacts (560 rows) spent ~2.6 s redrawing
|
|
8
|
+
1,120 rows to open one artifact. Now only a VALUE the rows draw (a width, a flag) redraws every
|
|
9
|
+
row; a new function or object makes each row compare the elements it would draw with the ones
|
|
10
|
+
it drew (`row-drawing.ts`). Equal → React skips the row; different → only that row redraws.
|
|
11
|
+
Every `on[A-Z]` handler inside a row is a stable trampoline to the host's latest function, so a
|
|
12
|
+
row that was not redrawn never calls an old closure. Render props and component types still
|
|
13
|
+
compare by identity, so a row never shows what an old closure drew. The default row copy reads
|
|
14
|
+
its columns when a person copies (`TableRowCopyControl`'s `defaultColumns` is now a getter).
|
|
15
|
+
Guard: `MatrxDataTable.inline-callbacks.test.tsx` (red on 0.58.0).
|
|
16
|
+
|
|
17
|
+
### Consumer action
|
|
18
|
+
|
|
19
|
+
- None required. A host that stabilised its callbacks only to stop row redraws may drop the
|
|
20
|
+
`useMemo`/ref plumbing; a host whose cell reads state outside the record keeps working without
|
|
21
|
+
`rowVersion` (the comparison sees what the cell draws).
|
|
22
|
+
|
|
23
|
+
## 0.58.0
|
|
24
|
+
|
|
25
|
+
- **`formatPhone` is exported from `./field-formats`** — the Phone format's one look, moved here
|
|
26
|
+
from records-ui so every surface shows a phone number the same way: ten North-American digits
|
|
27
|
+
read `(805) 555-1234`, `+1`/eleven digits with the leading 1 read `+1 (805) 555-1234`, anything
|
|
28
|
+
else (another country's number, an extension, words) is shown as typed. Display only; the
|
|
29
|
+
stored value is never rewritten. Guard: `src/field-formats/phone-format.test.ts` (red on 0.57.0).
|
|
30
|
+
|
|
31
|
+
### Consumer action
|
|
32
|
+
|
|
33
|
+
- None required. A surface that renders a phone value calls `formatPhone(text)` from
|
|
34
|
+
`@ai-matrx/design-system/field-formats` instead of keeping its own copy.
|
|
35
|
+
|
|
3
36
|
## 0.57.0
|
|
4
37
|
|
|
5
38
|
- **One actions column.** A table that declares its own `customActions` column no longer also
|