@ai-matrx/records-ui 0.93.73 → 0.93.74
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 +14 -0
- package/dist/index.cjs +10 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +62 -4
- package/dist/index.d.ts +62 -4
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog — @ai-matrx/records-ui
|
|
2
2
|
|
|
3
|
+
## 0.93.74
|
|
4
|
+
|
|
5
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
6
|
+
`git diff npm/records-ui/v0.93.73..npm/records-ui/v0.93.74 -- apps/shared/records-ui`).
|
|
7
|
+
No source changes intended and no consumer action required.
|
|
8
|
+
|
|
3
9
|
## 0.93.73
|
|
4
10
|
|
|
5
11
|
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
@@ -9,6 +15,7 @@ No source changes intended and no consumer action required.
|
|
|
9
15
|
## 0.93.72
|
|
10
16
|
### Unreleased
|
|
11
17
|
|
|
18
|
+
- **Rows that are not a file read as rows after the write** (lane SAVE-AS-TABLE-EVERYWHERE, walked 2026-09-29): after rows from a chat answer landed, the wizard said "the rows above has been sent to this table … To import another file, choose it above" under a line still promising "Nothing is written until you press Import". With a `source`, it now says "These rows have been sent to this table" and the pre-write line is gone.
|
|
12
19
|
- **An import no longer calls every row of a choice column refused** (lane SAVE-AS-TABLE-EVERYWHERE, found walking Cedar Ridge 2026-09-29): the pre-write rule check judged a choice column without its options and said "3 of 3 rows would be refused … its options have not been read yet" over words that WERE choices, and held Import behind "Import the rest anyway". `checkImportRules` now takes the options the wizard reads for the enum ask; a choice column is judged only once they are in hand, and a word it does not know is the enum ask's to raise. The wizard's source line for rows with no title reads "From the rows above".
|
|
13
20
|
- **Changing a booking page never sends the store's own columns back** (lane HANDOVER, 2026-09-29): with the page's stored questions loaded, "Change it" also sent the store's hidden `slot`, `status` and `booked_with`, and the save was refused ("A booking page never asks for \"slot\""). Hidden questions and `STORE_ANSWERS_THESE` are left out on load. Proof: `a-booking-page-that-exists-can-be-changed.test.tsx` (the stored list as the store keeps it), red on the old builder.
|
|
14
21
|
|
|
@@ -45,6 +52,13 @@ No source changes intended and no consumer action required.
|
|
|
45
52
|
beside `field`/`then`), so Save keeps the exploration as a Saved view; the drill trail also
|
|
46
53
|
narrows the page the grid reads ("See these records"). Proof:
|
|
47
54
|
`a-grid-drills-through-the-store.test.tsx`, red 4/5 on the HEAD grid.
|
|
55
|
+
- **The drill reads the one read door** (lane DRILL-TABLE-PRIMITIVE, after D1/D2): Dimensions, Measures and
|
|
56
|
+
drill paths come from `platform.drill_describe` (a custom Table's from `custom.table_dimensions`, with its
|
|
57
|
+
overrides) and every grouping from `platform.drill_ask` — nothing is inferred in the browser any more.
|
|
58
|
+
`useDrill({ source })` is the port for ANY source: a custom Table `{kind: "table", id}` or a standard table
|
|
59
|
+
`{kind: "entity", token}`, drawn by the same table; relation groups read by the names the door read as the
|
|
60
|
+
person. A view whose question is nested (a Rule filter, which the contract's flat `where` does not carry
|
|
61
|
+
yet) is answered by the store's aggregate door `drill_ask` itself delegates to, with the same rule.
|
|
48
62
|
|
|
49
63
|
## 0.93.67
|
|
50
64
|
|
package/dist/index.cjs
CHANGED
|
@@ -269,6 +269,10 @@ __export(src_exports, {
|
|
|
269
269
|
declareView: () => declareView,
|
|
270
270
|
defaultViewOf: () => defaultViewOf,
|
|
271
271
|
designatedLayoutOf: () => designatedLayoutOf,
|
|
272
|
+
drillDimensionsOf: () => drillDimensionsOf,
|
|
273
|
+
drillMeasuresOf: () => drillMeasuresOf,
|
|
274
|
+
drillPathsOf: () => drillPathsOf,
|
|
275
|
+
drillWhere: () => drillWhere,
|
|
272
276
|
editorKindFor: () => editorKindFor,
|
|
273
277
|
ensureSystemTable: () => ensureSystemTable,
|
|
274
278
|
entityReferenceSpec: () => entityReferenceSpec,
|
|
@@ -378,6 +382,9 @@ __export(src_exports, {
|
|
|
378
382
|
unknownViewLine: () => unknownViewLine,
|
|
379
383
|
useCanShare: () => useCanShare,
|
|
380
384
|
useChoiceNudge: () => useChoiceNudge,
|
|
385
|
+
useDrill: () => useDrill,
|
|
386
|
+
useDrillAnswers: () => useDrillAnswers,
|
|
387
|
+
useDrillDefinition: () => useDrillDefinition,
|
|
381
388
|
useEmbedHandshake: () => useEmbedHandshake,
|
|
382
389
|
useEnrichCells: () => useEnrichCells,
|
|
383
390
|
useGridEditing: () => useGridEditing,
|
|
@@ -11449,7 +11456,7 @@ function ImportWizard({ tableId, source, onDone, onWrote, className }) {
|
|
|
11449
11456
|
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "text-muted-foreground", children: table.data?.name }),
|
|
11450
11457
|
fields.data && table.data ? null : /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "ml-auto text-muted-foreground", children: fields.data ? "Reading this table\u2026" : "Reading this table's fields\u2026" })
|
|
11451
11458
|
] }),
|
|
11452
|
-
source ? /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("p", { className: "text-muted-foreground", "data-import-source": "", children: [
|
|
11459
|
+
source && !afterWrite ? /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("p", { className: "text-muted-foreground", "data-import-source": "", children: [
|
|
11453
11460
|
"From ",
|
|
11454
11461
|
source.name,
|
|
11455
11462
|
" \u2014 ",
|
|
@@ -11483,8 +11490,8 @@ function ImportWizard({ tableId, source, onDone, onWrote, className }) {
|
|
|
11483
11490
|
phase === "reading" ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "text-muted-foreground", children: "Reading the file\u2026" }) : null,
|
|
11484
11491
|
phase === "planning" ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "text-muted-foreground", children: "Working out what each column is\u2026" }) : null,
|
|
11485
11492
|
plan && parsed && afterWrite ? /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("p", { className: "text-muted-foreground", "data-import-after-write": "", children: [
|
|
11486
|
-
fileName ? `${fileName} has been sent to this table` : "This file has been sent to this table",
|
|
11487
|
-
ledger && !ledger.final ? ", but the run stopped part-way. Importing it again would write the rows that already landed a second time, so fix the file (or keep only the rows below the ones that landed) and choose it again." : ". What landed and what was refused is below. To import another file, choose it above."
|
|
11493
|
+
source ? `These rows have been sent to this table${ledger && !ledger.final ? ", but the run stopped part-way." : ". What landed and what was refused is below."}` : fileName ? `${fileName} has been sent to this table` : "This file has been sent to this table",
|
|
11494
|
+
source ? null : ledger && !ledger.final ? ", but the run stopped part-way. Importing it again would write the rows that already landed a second time, so fix the file (or keep only the rows below the ones that landed) and choose it again." : ". What landed and what was refused is below. To import another file, choose it above."
|
|
11488
11495
|
] }) : null,
|
|
11489
11496
|
plan && parsed && !afterWrite ? /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
|
|
11490
11497
|
titleKey ? /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex flex-wrap items-center gap-2 rounded border bg-muted/40 px-2 py-1.5", children: [
|