@ai-matrx/records-ui 0.93.37 → 0.93.62
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 +158 -0
- package/dist/index.cjs +10108 -9359
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +145 -12
- package/dist/index.d.ts +145 -12
- package/dist/index.js +9233 -8484
- package/dist/index.js.map +1 -1
- package/package.json +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,163 @@
|
|
|
1
1
|
# Changelog — @ai-matrx/records-ui
|
|
2
2
|
|
|
3
|
+
## 0.93.62
|
|
4
|
+
|
|
5
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
6
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.62 -- apps/shared/records-ui`).
|
|
7
|
+
No source changes intended and no consumer action required.
|
|
8
|
+
|
|
9
|
+
## 0.93.61
|
|
10
|
+
|
|
11
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
12
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.61 -- apps/shared/records-ui`).
|
|
13
|
+
No source changes intended and no consumer action required.
|
|
14
|
+
|
|
15
|
+
## 0.93.60
|
|
16
|
+
|
|
17
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
18
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.60 -- apps/shared/records-ui`).
|
|
19
|
+
No source changes intended and no consumer action required.
|
|
20
|
+
|
|
21
|
+
## 0.93.59
|
|
22
|
+
|
|
23
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
24
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.59 -- apps/shared/records-ui`).
|
|
25
|
+
No source changes intended and no consumer action required.
|
|
26
|
+
|
|
27
|
+
## 0.93.58
|
|
28
|
+
|
|
29
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
30
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.58 -- apps/shared/records-ui`).
|
|
31
|
+
No source changes intended and no consumer action required.
|
|
32
|
+
|
|
33
|
+
## 0.93.57
|
|
34
|
+
|
|
35
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
36
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.57 -- apps/shared/records-ui`).
|
|
37
|
+
No source changes intended and no consumer action required.
|
|
38
|
+
|
|
39
|
+
## 0.93.56
|
|
40
|
+
|
|
41
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
42
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.56 -- apps/shared/records-ui`).
|
|
43
|
+
No source changes intended and no consumer action required.
|
|
44
|
+
|
|
45
|
+
## 0.93.55
|
|
46
|
+
|
|
47
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
48
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.55 -- apps/shared/records-ui`).
|
|
49
|
+
No source changes intended and no consumer action required.
|
|
50
|
+
|
|
51
|
+
## 0.93.54
|
|
52
|
+
|
|
53
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
54
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.54 -- apps/shared/records-ui`).
|
|
55
|
+
No source changes intended and no consumer action required.
|
|
56
|
+
|
|
57
|
+
## 0.93.53
|
|
58
|
+
### Unreleased
|
|
59
|
+
|
|
60
|
+
- **A summary says which clock it keeps** (lane HANDOVER, 2026-09-28): "Schedule a summary" said "It goes at the time you picked" and sent no zone, so the store read "monday 08:00" as UTC — 1 AM in California — and quiet hours were UTC too. The builder now shows "In the time zone" (the viewer's own to start), names it in the sentence ("It goes at 08:00 (America/Los_Angeles time), every week"), and sends it; the name nobody typed is "Weekly Patients summary", never "Monday donor summary". New shared primitive `TimeZoneInput` + `ownTimeZone` (the booking builder now uses it too). The subscription lists show quiet hours only when a block names a night (`hasQuietHours`). Proof: `a-summary-says-which-clock-it-keeps.test.tsx`, red on the old builder.
|
|
61
|
+
- **A checklist step says who, and can be given to someone** (lane HANDOVER, 2026-09-28): a run's step showed the role's key ("front_desk"), said its wait twice ("Waiting for Verify insurance benefits." and "…is waiting on Verify insurance benefits. Finish that step first."), the start sentence repeated "Nobody is named for" as a list, and a step nobody held offered no way to hand it to anyone. The badge is now the role in words, the wait is said once (the store's own sentence; the screen's "Waiting for …" only when the store gave none), the start says the store's one sentence, and an unassigned step offers "Give it to" with the organization's members (host `members` port), assigning through `workAssign`. `StepRow` takes `onAssign`. Proof: `a-checklist-step-says-who-and-can-be-given.test.tsx`, red on the old runner (2 of 3).
|
|
62
|
+
|
|
63
|
+
## 0.93.52
|
|
64
|
+
|
|
65
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
66
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.52 -- apps/shared/records-ui`).
|
|
67
|
+
No source changes intended and no consumer action required.
|
|
68
|
+
|
|
69
|
+
## 0.93.51
|
|
70
|
+
|
|
71
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
72
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.51 -- apps/shared/records-ui`).
|
|
73
|
+
No source changes intended and no consumer action required.
|
|
74
|
+
|
|
75
|
+
## 0.93.50
|
|
76
|
+
|
|
77
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
78
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.50 -- apps/shared/records-ui`).
|
|
79
|
+
No source changes intended and no consumer action required.
|
|
80
|
+
|
|
81
|
+
## 0.93.49
|
|
82
|
+
|
|
83
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
84
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.49 -- apps/shared/records-ui`).
|
|
85
|
+
No source changes intended and no consumer action required.
|
|
86
|
+
|
|
87
|
+
## 0.93.48
|
|
88
|
+
|
|
89
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
90
|
+
`git diff npm/records-ui/v0.93.46..npm/records-ui/v0.93.48 -- apps/shared/records-ui`).
|
|
91
|
+
No source changes intended and no consumer action required.
|
|
92
|
+
|
|
93
|
+
## 0.93.47
|
|
94
|
+
### Unreleased
|
|
95
|
+
|
|
96
|
+
- **A portal built from a table of people makes them the clients** (lane HANDOVER, 2026-09-28): opened from Patients (a table with an email a sign-in link can go to), the builder left "Which table holds your clients" empty and pre-ticked Patients as a table to show them; it now takes that table as the client table. The picker no longer offers the app's own tables (choice lists, booking slots, checklist steps). Proof: `a-portal-from-patients-makes-patients-the-clients.test.tsx`, red on the old builder.
|
|
97
|
+
- **A booking page asks who is booking** (lane HANDOVER, 2026-09-28): on a table with no email or phone column a stranger could ask (Cedar Ridge's Visits names its patient by a link), the page asked nobody who they were. The builder now says so and offers "Ask their name and email", which adds a Name and an Email column and ticks both. Proof: `a-booking-page-opens-in-its-owners-clock.test.tsx` second clause, red on the old builder.
|
|
98
|
+
- **A stranger picks a choice on a public page** (lane HANDOVER, 2026-09-28): a choice question on a public form or booking page was a text box ("type your answer and whoever receives it will match it up") because the choices live in the owner's own list. The public doors now hand each choice question its choices' labels as `public_choices`, and the question is a real picker (a list, or toggles for a multi-choice) answering with the choice's key. `publicChoicesOf(field)` is exported. Proof: `a-stranger-picks-a-choice-on-a-public-page.test.tsx`, red on the old control.
|
|
99
|
+
- **A booking page's hours are in its owner's clock** (lane HANDOVER, 2026-09-28): the store defaults a page with no time zone to UTC, so a clinic's 9-to-5 opened at 2 AM its own time. A new page now starts in the owner's own zone (Calendly's default), a saved one keeps its zone, and "Time zone the hours are in" is on the builder to change (type to find one). Proof: `a-booking-page-opens-in-its-owners-clock.test.tsx`, red on the old builder.
|
|
100
|
+
- **A reference is a chip that opens what it names; a value that names its shape draws through the kind system; an entity reference is edited with a picker** (lane REFERENCE-CARRY, 2026-09-28). Arman's copied Department table read raw ```matrx {"matrx_version":1,"kind":"reference","type":"scope",…}``` fences in Team Leader and Team members, and a relation cell drew grey text badges that opened nothing (a many-relation read "2 of them" in words). Now: every relation and entity-reference value draws `ReferenceChips` through the new optional host port `renderReference({token, id, label, tableId})` (`token: "record"` for a relation's value); a cell whose value is `__kind` JSON or a Matrx directive — the retired 4-key shell included, recognised ONLY by `@ai-matrx/content-ir/directives` `tryDecodeDirective` (`kindValues.ts`, new dependency `@ai-matrx/content-ir`) — draws through the new optional port `renderKind({value, kind, where, title})`, and unbound names its items (never the fence); `scalarText` reads a kind value and a many-relation as words. `EntityReferenceControl` gains **Pick**: a kind choice (pills when ≤4 kinds, a select otherwise), a search over the store's new `custom.entity_reference_search` door, pick adds (many) or replaces (one); `allowedKindsOf(field)` exported beside it; `ENTITY_REFERENCE_EMPTY` now reads only "Nothing is pointed at yet." (shown only where nothing can be added). Consumer action: bind `renderReference` (a door per kind) and `renderKind` (the host's kind renderer) — matrx-frontend binds both in `recordsUiHost.tsx`. Proof: `a-reference-is-a-chip-and-a-kind-draws-through-the-kind-system.test.tsx`, 5/6 red on 0.93.33 (the sixth is the new detector itself), 6/6 green.
|
|
101
|
+
- **A just-attached file never asks the record door about itself** (merged-grid review 2, fix lane F item 4, 2026-09-28): right after "Attach files…" or an upload, an attachment cell briefly holds the host's own file ids (the store makes each File record at the write door), and every chip asked `read_record` about them — a 403 "You do not have access to this record" per attach. Ids the host hands back are remembered (`rememberHostFileIds`) and open as the host's own files; only ids the cell held as records are read. Proof: `a-file-cell-attaches-from-the-hosts-window-and-notes-read-formatted.test.tsx` "the chips of just-picked films…", red on 0.93.33.
|
|
102
|
+
- **A count never ticks a fraction** (lane HANDOVER, 2026-09-28): a chart whose values are all whole numbers draws whole-number ticks (a one-room bar chart ticked 0, 0.3, 0.5, 0.8, 1). Proof: `a-count-never-ticks-a-fraction.test.tsx`.
|
|
103
|
+
- **The classic grid pins "New record"** (lane HANDOVER, 2026-09-28): with a rail open (Forms, Share…) the classic grid's primary action read "New reco", faded under the toolbar slot's edge; it now rides the toolbar's pinned slot like the merged grid's, so it is always whole. Proof: `the-toolbar-row-never-overlaps.test.tsx` "the classic grid pins New record too", red on the old grid.
|
|
104
|
+
- **A first dashboard is worth looking at** (lane HANDOVER, 2026-09-28): "New dashboard" on a table with no Choice column grouped by the first text column (the Title — one bar per record); it now groups by a yes/no column, or starts with the count alone. The count reads "from 1 record". The "describe a change" box is absent when no agent is bound, instead of a disabled box with an apology. Proof: `a-first-dashboard-groups-by-what-a-person-groups-by.test.tsx`, red on the old canvas.
|
|
105
|
+
- **A layout that needs a column makes it** (lane DATA-V2-VIEWS-1, 2026-09-28): a plain table opened as a Kanban, a Calendar or a Gallery no longer prints "Add column, then Select — and it appears here". One empty state, `ViewNeeds`, used by every layout that needs something the table lacks (census `VIEW_NEEDS`: kanban = a choice column, calendar = a date column, gallery = a file column for the card's picture, non-blocking), says in one sentence what is missing and what the press will do, offers **Make it work** (the column through `custom.field_declare` — key minted by the store, name and starter choices editable first — then the view drawn by it) and **Ask AI** (`onAskForOne` with the new `kind: "column"`; the agent's column is held for approval). A viewer is told why and offered neither. The gallery draws a File column's first file as the card's picture through the new optional host port `fileImage`; unbound, the cover says so in words (it used to put a File record id into `<img src>`). `BuildOrAsk` takes `askLabel`, `editor`, `building` and `noAgentSentence`. Removed: `LAYOUT_NEEDS`, `LAYOUT_NO_FIELD` (replaced by `VIEW_NEEDS`). Consumer action: bind `fileImage` to the platform's media element to draw gallery pictures. Proof: `a-layout-that-needs-a-column-makes-it.test.tsx`, 5/5 red on 0.93.33, green now.
|
|
106
|
+
- **"Build the form" makes the form** (lane HANDOVER, 2026-09-28): on a table with no forms, the press creates one named for the table instead of opening an empty builder that needed a second press on "New form"; a new form asks every field a stranger may answer (it used to ask only the first); the builder no longer prints each field's machine key beside its name. Proof: `build-the-form-makes-the-form.test.tsx`, red on the old panel.
|
|
107
|
+
## 0.93.46
|
|
108
|
+
|
|
109
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
110
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.46 -- apps/shared/records-ui`).
|
|
111
|
+
No source changes intended and no consumer action required.
|
|
112
|
+
|
|
113
|
+
## 0.93.45
|
|
114
|
+
|
|
115
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
116
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.45 -- apps/shared/records-ui`).
|
|
117
|
+
No source changes intended and no consumer action required.
|
|
118
|
+
|
|
119
|
+
## 0.93.44
|
|
120
|
+
|
|
121
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
122
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.44 -- apps/shared/records-ui`).
|
|
123
|
+
No source changes intended and no consumer action required.
|
|
124
|
+
|
|
125
|
+
## 0.93.43
|
|
126
|
+
|
|
127
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
128
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.43 -- apps/shared/records-ui`).
|
|
129
|
+
No source changes intended and no consumer action required.
|
|
130
|
+
|
|
131
|
+
## 0.93.42
|
|
132
|
+
|
|
133
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
134
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.42 -- apps/shared/records-ui`).
|
|
135
|
+
No source changes intended and no consumer action required.
|
|
136
|
+
|
|
137
|
+
## 0.93.41
|
|
138
|
+
|
|
139
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
140
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.41 -- apps/shared/records-ui`).
|
|
141
|
+
No source changes intended and no consumer action required.
|
|
142
|
+
|
|
143
|
+
## 0.93.40
|
|
144
|
+
|
|
145
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
146
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.40 -- apps/shared/records-ui`).
|
|
147
|
+
No source changes intended and no consumer action required.
|
|
148
|
+
|
|
149
|
+
## 0.93.39
|
|
150
|
+
|
|
151
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
152
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.39 -- apps/shared/records-ui`).
|
|
153
|
+
No source changes intended and no consumer action required.
|
|
154
|
+
|
|
155
|
+
## 0.93.38
|
|
156
|
+
|
|
157
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
158
|
+
`git diff npm/records-ui/v0.93.33..npm/records-ui/v0.93.38 -- apps/shared/records-ui`).
|
|
159
|
+
No source changes intended and no consumer action required.
|
|
160
|
+
|
|
3
161
|
## 0.93.37
|
|
4
162
|
|
|
5
163
|
Automatic changed-only republish (docs/metadata drift since the last tag — see
|