@ai-matrx/detail 0.1.175 → 0.1.176

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 CHANGED
@@ -1,10 +1,19 @@
1
1
  # Changelog — @ai-matrx/detail
2
2
 
3
- ## 0.1.175
3
+ ## 0.1.176
4
4
 
5
5
  UNVERIFIED: this release has no Unreleased entry and the source comparison could not be made (the caller supplied no source comparison). Whether source changed is unknown; consumer action is unknown.
6
6
  Check the package's gitHead on npm against this version's gitHead: `git diff <previous gitHead> <this gitHead> -- apps/shared/detail/src`.
7
7
 
8
+ ## 0.1.175
9
+
10
+ SOURCE CHANGED WITH NO RELEASE NOTE. This release shipped source changes that nobody described in an Unreleased entry,
11
+ so they may include breaking API changes. Consumer action is UNKNOWN: read the diff before upgrading.
12
+ Diff: `git diff f75d04e431 0a2b8c9356 -- apps/shared/detail/src`
13
+
14
+ Changed shipped source files (1):
15
+ - `apps/shared/detail/src/react/index.ts`
16
+
8
17
  ## 0.1.174
9
18
 
10
19
  Automatic changed-only republish (docs/metadata drift since the last published version; verified: `git diff a7b983d25f f75d04e431 -- apps/shared/detail/src`
@@ -557,4 +557,5 @@ declare function requireResolveType(host: DetailHostPorts): NonNullable<DetailHo
557
557
  /** A presentation's shell, or an error naming which entry forgot to bind it. */
558
558
  declare function requireShell<K extends keyof DetailShells>(shells: DetailShells, which: K): NonNullable<DetailShells[K]>;
559
559
 
560
- export { type DetailRef as D, type DetailInstanceData as a, type DetailPresentation as b, type DetailRecordType as c, type DetailStatus as d, type DetailRow as e, type DetailField as f, type DetailSourceHealth as g, type DetailFrameContext as h, type DetailListContext as i, type DetailLoadState as j, type DetailOpenRequest as k, type DetailMenuAction as l, type DetailDockedShellProps as m, type DetailEffectivePresentation as n, type DetailHostPorts as o, DetailHostProvider as p, type DetailPageShellProps as q, type DetailPresentationSetting as r, type DetailShellSlots as s, type DetailShells as t, type DetailWindowShellProps as u, requireResolveType as v, requireShell as w, useDetailHost as x };
560
+ export { DetailHostProvider as p, requireResolveType as v, requireShell as w, useDetailHost as x };
561
+ export type { DetailRef as D, DetailInstanceData as a, DetailPresentation as b, DetailRecordType as c, DetailStatus as d, DetailRow as e, DetailField as f, DetailSourceHealth as g, DetailFrameContext as h, DetailListContext as i, DetailLoadState as j, DetailOpenRequest as k, DetailMenuAction as l, DetailDockedShellProps as m, DetailEffectivePresentation as n, DetailHostPorts as o, DetailPageShellProps as q, DetailPresentationSetting as r, DetailShellSlots as s, DetailShells as t, DetailWindowShellProps as u };
@@ -557,4 +557,5 @@ declare function requireResolveType(host: DetailHostPorts): NonNullable<DetailHo
557
557
  /** A presentation's shell, or an error naming which entry forgot to bind it. */
558
558
  declare function requireShell<K extends keyof DetailShells>(shells: DetailShells, which: K): NonNullable<DetailShells[K]>;
559
559
 
560
- export { type DetailRef as D, type DetailInstanceData as a, type DetailPresentation as b, type DetailRecordType as c, type DetailStatus as d, type DetailRow as e, type DetailField as f, type DetailSourceHealth as g, type DetailFrameContext as h, type DetailListContext as i, type DetailLoadState as j, type DetailOpenRequest as k, type DetailMenuAction as l, type DetailDockedShellProps as m, type DetailEffectivePresentation as n, type DetailHostPorts as o, DetailHostProvider as p, type DetailPageShellProps as q, type DetailPresentationSetting as r, type DetailShellSlots as s, type DetailShells as t, type DetailWindowShellProps as u, requireResolveType as v, requireShell as w, useDetailHost as x };
560
+ export { DetailHostProvider as p, requireResolveType as v, requireShell as w, useDetailHost as x };
561
+ export type { DetailRef as D, DetailInstanceData as a, DetailPresentation as b, DetailRecordType as c, DetailStatus as d, DetailRow as e, DetailField as f, DetailSourceHealth as g, DetailFrameContext as h, DetailListContext as i, DetailLoadState as j, DetailOpenRequest as k, DetailMenuAction as l, DetailDockedShellProps as m, DetailEffectivePresentation as n, DetailHostPorts as o, DetailPageShellProps as q, DetailPresentationSetting as r, DetailShellSlots as s, DetailShells as t, DetailWindowShellProps as u };
package/dist/index.d.cts CHANGED
@@ -507,4 +507,5 @@ declare function fieldsFromRow(row: Record<string, unknown>, doors: {
507
507
  }): DetailField[];
508
508
  declare function formatWhen(iso: string): string;
509
509
 
510
- export { DEFAULT_DETAIL_LIST_CONTEXT_MAX, DETAIL_LIST_CONTEXT_MAX_IDS_CEILING, DETAIL_LIST_CONTEXT_MAX_KNOB, DETAIL_PRESENTATIONS, DETAIL_PRESENTATION_BY_TYPE_KNOB, DETAIL_PRESENTATION_KNOB, DETAIL_URL_AS_ARG, DETAIL_URL_BUDGET_BYTES, DETAIL_URL_INDEX_ARG, DETAIL_URL_LIST_ARG, DETAIL_URL_LIST_TOTAL_ARG, DETAIL_URL_TYPE_KEY, type DetailField, type DetailFrameContext, type DetailHealthContext, type DetailHealthProducer, type DetailHistoryEntry, type DetailInstanceData, type DetailListContext, type DetailLoadResult, type DetailLoadState, type DetailOpenRequest, type DetailPresentation, type DetailRecordType, type DetailRef, type DetailRow, type DetailSection, type DetailSeed, type DetailSourceHealth, type DetailStatus, HIDDEN_FIELDS, type TrimListContextOptions, decodeListItems, decodeListQuery, decodePanelArgValue, decodeRefPart, detailInstanceKey, detailListContextMax, detailListFromUrlArgs, detailListToUrlArgs, encodeListItems, encodeListQuery, encodePanelArgValue, encodeRefPart, fieldsFromRow, finalPanelUrlLength, formatValue, formatWhen, isDetailPresentation, listQueryBytes, panelListValueBytes, panelUrlReserveBytes, parseDetailInstanceKey, presentationForTypeFromMap, presentationFromUrlArg, trimListContext };
510
+ export { DEFAULT_DETAIL_LIST_CONTEXT_MAX, DETAIL_LIST_CONTEXT_MAX_IDS_CEILING, DETAIL_LIST_CONTEXT_MAX_KNOB, DETAIL_PRESENTATIONS, DETAIL_PRESENTATION_BY_TYPE_KNOB, DETAIL_PRESENTATION_KNOB, DETAIL_URL_AS_ARG, DETAIL_URL_BUDGET_BYTES, DETAIL_URL_INDEX_ARG, DETAIL_URL_LIST_ARG, DETAIL_URL_LIST_TOTAL_ARG, DETAIL_URL_TYPE_KEY, HIDDEN_FIELDS, decodeListItems, decodeListQuery, decodePanelArgValue, decodeRefPart, detailInstanceKey, detailListContextMax, detailListFromUrlArgs, detailListToUrlArgs, encodeListItems, encodeListQuery, encodePanelArgValue, encodeRefPart, fieldsFromRow, finalPanelUrlLength, formatValue, formatWhen, isDetailPresentation, listQueryBytes, panelListValueBytes, panelUrlReserveBytes, parseDetailInstanceKey, presentationForTypeFromMap, presentationFromUrlArg, trimListContext };
511
+ export type { DetailField, DetailFrameContext, DetailHealthContext, DetailHealthProducer, DetailHistoryEntry, DetailInstanceData, DetailListContext, DetailLoadResult, DetailLoadState, DetailOpenRequest, DetailPresentation, DetailRecordType, DetailRef, DetailRow, DetailSection, DetailSeed, DetailSourceHealth, DetailStatus, TrimListContextOptions };
package/dist/index.d.ts CHANGED
@@ -507,4 +507,5 @@ declare function fieldsFromRow(row: Record<string, unknown>, doors: {
507
507
  }): DetailField[];
508
508
  declare function formatWhen(iso: string): string;
509
509
 
510
- export { DEFAULT_DETAIL_LIST_CONTEXT_MAX, DETAIL_LIST_CONTEXT_MAX_IDS_CEILING, DETAIL_LIST_CONTEXT_MAX_KNOB, DETAIL_PRESENTATIONS, DETAIL_PRESENTATION_BY_TYPE_KNOB, DETAIL_PRESENTATION_KNOB, DETAIL_URL_AS_ARG, DETAIL_URL_BUDGET_BYTES, DETAIL_URL_INDEX_ARG, DETAIL_URL_LIST_ARG, DETAIL_URL_LIST_TOTAL_ARG, DETAIL_URL_TYPE_KEY, type DetailField, type DetailFrameContext, type DetailHealthContext, type DetailHealthProducer, type DetailHistoryEntry, type DetailInstanceData, type DetailListContext, type DetailLoadResult, type DetailLoadState, type DetailOpenRequest, type DetailPresentation, type DetailRecordType, type DetailRef, type DetailRow, type DetailSection, type DetailSeed, type DetailSourceHealth, type DetailStatus, HIDDEN_FIELDS, type TrimListContextOptions, decodeListItems, decodeListQuery, decodePanelArgValue, decodeRefPart, detailInstanceKey, detailListContextMax, detailListFromUrlArgs, detailListToUrlArgs, encodeListItems, encodeListQuery, encodePanelArgValue, encodeRefPart, fieldsFromRow, finalPanelUrlLength, formatValue, formatWhen, isDetailPresentation, listQueryBytes, panelListValueBytes, panelUrlReserveBytes, parseDetailInstanceKey, presentationForTypeFromMap, presentationFromUrlArg, trimListContext };
510
+ export { DEFAULT_DETAIL_LIST_CONTEXT_MAX, DETAIL_LIST_CONTEXT_MAX_IDS_CEILING, DETAIL_LIST_CONTEXT_MAX_KNOB, DETAIL_PRESENTATIONS, DETAIL_PRESENTATION_BY_TYPE_KNOB, DETAIL_PRESENTATION_KNOB, DETAIL_URL_AS_ARG, DETAIL_URL_BUDGET_BYTES, DETAIL_URL_INDEX_ARG, DETAIL_URL_LIST_ARG, DETAIL_URL_LIST_TOTAL_ARG, DETAIL_URL_TYPE_KEY, HIDDEN_FIELDS, decodeListItems, decodeListQuery, decodePanelArgValue, decodeRefPart, detailInstanceKey, detailListContextMax, detailListFromUrlArgs, detailListToUrlArgs, encodeListItems, encodeListQuery, encodePanelArgValue, encodeRefPart, fieldsFromRow, finalPanelUrlLength, formatValue, formatWhen, isDetailPresentation, listQueryBytes, panelListValueBytes, panelUrlReserveBytes, parseDetailInstanceKey, presentationForTypeFromMap, presentationFromUrlArg, trimListContext };
511
+ export type { DetailField, DetailFrameContext, DetailHealthContext, DetailHealthProducer, DetailHistoryEntry, DetailInstanceData, DetailListContext, DetailLoadResult, DetailLoadState, DetailOpenRequest, DetailPresentation, DetailRecordType, DetailRef, DetailRow, DetailSection, DetailSeed, DetailSourceHealth, DetailStatus, TrimListContextOptions };
package/dist/react.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { D as DetailRef, a as DetailInstanceData, b as DetailPresentation, c as DetailRecordType, d as DetailStatus, e as DetailRow, f as DetailField, g as DetailSourceHealth, h as DetailFrameContext, i as DetailListContext, j as DetailLoadState, k as DetailOpenRequest, l as DetailMenuAction } from './host-BIPjYgZZ.cjs';
2
- export { m as DetailDockedShellProps, n as DetailEffectivePresentation, o as DetailHostPorts, p as DetailHostProvider, q as DetailPageShellProps, r as DetailPresentationSetting, s as DetailShellSlots, t as DetailShells, u as DetailWindowShellProps, v as requireResolveType, w as requireShell, x as useDetailHost } from './host-BIPjYgZZ.cjs';
1
+ import { D as DetailRef, a as DetailInstanceData, b as DetailPresentation, c as DetailRecordType, d as DetailStatus, e as DetailRow, f as DetailField, g as DetailSourceHealth, h as DetailFrameContext, i as DetailListContext, j as DetailLoadState, k as DetailOpenRequest, l as DetailMenuAction } from './host-DTqudYIw.cjs';
2
+ export { m as DetailDockedShellProps, n as DetailEffectivePresentation, o as DetailHostPorts, p as DetailHostProvider, q as DetailPageShellProps, r as DetailPresentationSetting, s as DetailShellSlots, t as DetailShells, u as DetailWindowShellProps, v as requireResolveType, w as requireShell, x as useDetailHost } from './host-DTqudYIw.cjs';
3
3
  import * as react from 'react';
4
4
  import { KeyboardEvent } from 'react';
5
5
 
@@ -199,4 +199,5 @@ declare const DETAIL_HEADER_COMPACT_BELOW = "@max-[26rem]/window-header";
199
199
  /** The floor under the record's name: ~96px, enough for a readable fragment. */
200
200
  declare const DETAIL_TITLE_MIN_WIDTH_CLASS = "min-w-[6rem]";
201
201
 
202
- export { DETAIL_HEADER_COMPACT_BELOW, DETAIL_HEADER_CONTAINER, DETAIL_TITLE_MIN_WIDTH_CLASS, DetailActions, DetailBody, type DetailCore, DetailDockedPresentation, type DetailKeyboard, type DetailKeyboardHandlers, DetailMenuAction, DetailPagePresentation, DetailPresentationPane, type DetailPresentationProps, DetailRecordMeta, DetailTitle, DetailWindowPresentation, type OpenDetail, type UseDetailHealthArgs, reconnectFor, useDetailCore, useDetailHealth, useDetailKeyboard, useDetailMenuActions, useDetailRecord, useOpenDetail };
202
+ export { DETAIL_HEADER_COMPACT_BELOW, DETAIL_HEADER_CONTAINER, DETAIL_TITLE_MIN_WIDTH_CLASS, DetailActions, DetailBody, DetailDockedPresentation, DetailMenuAction, DetailPagePresentation, DetailPresentationPane, DetailRecordMeta, DetailTitle, DetailWindowPresentation, reconnectFor, useDetailCore, useDetailHealth, useDetailKeyboard, useDetailMenuActions, useDetailRecord, useOpenDetail };
203
+ export type { DetailCore, DetailKeyboard, DetailKeyboardHandlers, DetailPresentationProps, OpenDetail, UseDetailHealthArgs };
package/dist/react.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { D as DetailRef, a as DetailInstanceData, b as DetailPresentation, c as DetailRecordType, d as DetailStatus, e as DetailRow, f as DetailField, g as DetailSourceHealth, h as DetailFrameContext, i as DetailListContext, j as DetailLoadState, k as DetailOpenRequest, l as DetailMenuAction } from './host-BIPjYgZZ.js';
2
- export { m as DetailDockedShellProps, n as DetailEffectivePresentation, o as DetailHostPorts, p as DetailHostProvider, q as DetailPageShellProps, r as DetailPresentationSetting, s as DetailShellSlots, t as DetailShells, u as DetailWindowShellProps, v as requireResolveType, w as requireShell, x as useDetailHost } from './host-BIPjYgZZ.js';
1
+ import { D as DetailRef, a as DetailInstanceData, b as DetailPresentation, c as DetailRecordType, d as DetailStatus, e as DetailRow, f as DetailField, g as DetailSourceHealth, h as DetailFrameContext, i as DetailListContext, j as DetailLoadState, k as DetailOpenRequest, l as DetailMenuAction } from './host-DTqudYIw.js';
2
+ export { m as DetailDockedShellProps, n as DetailEffectivePresentation, o as DetailHostPorts, p as DetailHostProvider, q as DetailPageShellProps, r as DetailPresentationSetting, s as DetailShellSlots, t as DetailShells, u as DetailWindowShellProps, v as requireResolveType, w as requireShell, x as useDetailHost } from './host-DTqudYIw.js';
3
3
  import * as react from 'react';
4
4
  import { KeyboardEvent } from 'react';
5
5
 
@@ -199,4 +199,5 @@ declare const DETAIL_HEADER_COMPACT_BELOW = "@max-[26rem]/window-header";
199
199
  /** The floor under the record's name: ~96px, enough for a readable fragment. */
200
200
  declare const DETAIL_TITLE_MIN_WIDTH_CLASS = "min-w-[6rem]";
201
201
 
202
- export { DETAIL_HEADER_COMPACT_BELOW, DETAIL_HEADER_CONTAINER, DETAIL_TITLE_MIN_WIDTH_CLASS, DetailActions, DetailBody, type DetailCore, DetailDockedPresentation, type DetailKeyboard, type DetailKeyboardHandlers, DetailMenuAction, DetailPagePresentation, DetailPresentationPane, type DetailPresentationProps, DetailRecordMeta, DetailTitle, DetailWindowPresentation, type OpenDetail, type UseDetailHealthArgs, reconnectFor, useDetailCore, useDetailHealth, useDetailKeyboard, useDetailMenuActions, useDetailRecord, useOpenDetail };
202
+ export { DETAIL_HEADER_COMPACT_BELOW, DETAIL_HEADER_CONTAINER, DETAIL_TITLE_MIN_WIDTH_CLASS, DetailActions, DetailBody, DetailDockedPresentation, DetailMenuAction, DetailPagePresentation, DetailPresentationPane, DetailRecordMeta, DetailTitle, DetailWindowPresentation, reconnectFor, useDetailCore, useDetailHealth, useDetailKeyboard, useDetailMenuActions, useDetailRecord, useOpenDetail };
203
+ export type { DetailCore, DetailKeyboard, DetailKeyboardHandlers, DetailPresentationProps, OpenDetail, UseDetailHealthArgs };
@@ -1,6 +1,7 @@
1
1
  import * as react from 'react';
2
2
  import { Root } from 'react-dom/client';
3
- import { c as DetailRecordType, m as DetailDockedShellProps, q as DetailPageShellProps, o as DetailHostPorts, u as DetailWindowShellProps, a as DetailInstanceData } from './host-BIPjYgZZ.cjs';
3
+ import { c as DetailRecordType, a as DetailInstanceData } from './host-DTqudYIw.cjs';
4
+ import { DetailDockedShellProps, DetailPageShellProps, DetailHostPorts, DetailWindowShellProps } from './react.cjs';
4
5
 
5
6
  type AnyFunction = (...args: any[]) => any;
6
7
  /** What every runner's mock exposes and these tests read. */
@@ -51,4 +52,5 @@ declare function mount(ui: react.ReactElement, ports: DetailHostPorts): Mounted;
51
52
  /** Click a control by its accessible name. Throws (loudly) when it is absent. */
52
53
  declare function clickByLabel(container: HTMLElement, label: string): void;
53
54
 
54
- export { FILE_TYPE, type MockControls, type MockFactory, type MockFn, type Mounted, StubDockedShell, StubPageShell, type StubPorts, StubWindowShell, clickByLabel, instance, makePortsWith, mount };
55
+ export { FILE_TYPE, StubDockedShell, StubPageShell, StubWindowShell, clickByLabel, instance, makePortsWith, mount };
56
+ export type { MockControls, MockFactory, MockFn, Mounted, StubPorts };
package/dist/testing.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import * as react from 'react';
2
2
  import { Root } from 'react-dom/client';
3
- import { c as DetailRecordType, m as DetailDockedShellProps, q as DetailPageShellProps, o as DetailHostPorts, u as DetailWindowShellProps, a as DetailInstanceData } from './host-BIPjYgZZ.js';
3
+ import { c as DetailRecordType, a as DetailInstanceData } from './host-DTqudYIw.js';
4
+ import { DetailDockedShellProps, DetailPageShellProps, DetailHostPorts, DetailWindowShellProps } from './react.js';
4
5
 
5
6
  type AnyFunction = (...args: any[]) => any;
6
7
  /** What every runner's mock exposes and these tests read. */
@@ -51,4 +52,5 @@ declare function mount(ui: react.ReactElement, ports: DetailHostPorts): Mounted;
51
52
  /** Click a control by its accessible name. Throws (loudly) when it is absent. */
52
53
  declare function clickByLabel(container: HTMLElement, label: string): void;
53
54
 
54
- export { FILE_TYPE, type MockControls, type MockFactory, type MockFn, type Mounted, StubDockedShell, StubPageShell, type StubPorts, StubWindowShell, clickByLabel, instance, makePortsWith, mount };
55
+ export { FILE_TYPE, StubDockedShell, StubPageShell, StubWindowShell, clickByLabel, instance, makePortsWith, mount };
56
+ export type { MockControls, MockFactory, MockFn, Mounted, StubPorts };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-matrx/detail",
3
- "version": "0.1.175",
3
+ "version": "0.1.176",
4
4
  "description": "THE Detail primitive: ONE registration per record type — header, source health strip, fields, associations, history — wrapped once so it shows as a window (the default), a docked side panel, or a page, with the same content in all three. Owns the presentation setting shape and its per-type override, the keyboard model (Escape / arrows / Cmd+Enter), the deep-link spelling with its final-URL byte budget, and the honest absent states. A host binds shells, doors, navigation, settings and notifications through typed ports.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -83,20 +83,6 @@
83
83
  "@ai-matrx/design-system": "latest",
84
84
  "@ai-matrx/kit": "latest"
85
85
  },
86
- "devDependencies": {
87
- "@arethetypeswrong/cli": "^0.18.5",
88
- "@testing-library/react": "^16.3.3",
89
- "@types/node": "^26.6.2",
90
- "@types/react": "19.3.0",
91
- "@types/react-dom": "19.3.0",
92
- "jsdom": "^30.1.1",
93
- "publint": "^0.3.24",
94
- "react": "^19.3.0",
95
- "react-dom": "^19.3.0",
96
- "tsup": "^8.5.1",
97
- "typescript": "^6.0.3",
98
- "vitest": "^5.0.1"
99
- },
100
86
  "publishConfig": {
101
87
  "access": "public",
102
88
  "registry": "https://registry.npmjs.org/"
@@ -118,14 +104,5 @@
118
104
  ],
119
105
  "layer": 4
120
106
  },
121
- "scripts": {
122
- "build": "node ../scripts/guard-exit.mjs ../scripts/knob-declaration.mjs --write . && pnpm clean && tsup && node ./scripts/stamp-client-boundary.mjs && node ../scripts/check-ships-once.mjs && node ../scripts/check-reexport-order.mjs . && node ../scripts/guard-exit.mjs ../scripts/check-node-env-not-inlined.mjs",
123
- "clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
124
- "check:package": "pnpm build && node ../scripts/check-exports-agreement.mjs && publint && pnpm verify:tarball && node ../scripts/check-tarball-relative-imports.mjs --self-test && node ../scripts/check-tarball-relative-imports.mjs --pack . && node ../scripts/check-package-rules.mjs --self-test && node ../scripts/check-package-rules.mjs .",
125
- "typecheck": "tsc -p tsconfig.json --noEmit",
126
- "test": "vitest run",
127
- "test:watch": "vitest",
128
- "verify:tarball": "node ./scripts/verify-tarball.mjs"
129
- },
130
- "gitHead": "0a2b8c9356bcba5cf0338a6c2c63b1c6058374ef"
107
+ "gitHead": "f1984cb2e29ccc6881c41c2383f365fd68ea49f7"
131
108
  }