@ai-matrx/design-system 0.86.366 → 0.86.367
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 +13 -2
- package/dist/content-transfer.css +3 -1
- package/dist/controls.css +7 -2
- package/dist/data-table/index.cjs +6 -1
- package/dist/data-table/index.cjs.map +1 -1
- package/dist/data-table/index.d.cts +7 -0
- package/dist/data-table/index.d.ts +7 -0
- package/dist/data-table/index.js +6 -1
- package/dist/data-table/index.js.map +1 -1
- package/dist/data-table/types.cjs.map +1 -1
- package/dist/data-table/types.d.cts +7 -0
- package/dist/data-table/types.d.ts +7 -0
- package/dist/index.cjs +53 -29
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +19 -4
- package/dist/index.d.ts +19 -4
- package/dist/index.js +53 -29
- package/dist/index.js.map +1 -1
- package/dist/swipe-deck.cjs +1 -1
- package/dist/swipe-deck.cjs.map +1 -1
- package/dist/swipe-deck.css +9 -0
- package/dist/swipe-deck.js +1 -1
- package/dist/swipe-deck.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,23 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.86.367
|
|
4
|
+
|
|
5
|
+
- `SwipeDeck`: the answered list's "Show me how" is its own quiet button (`matrx-sd-review-help`, 40px, one line, 16px icon) beside "Back to cards"; it borrowed the legend-chip style, which sizes no icon, so the icon drew full size and the words wrapped. No consumer action required.
|
|
6
|
+
- **Contact values: "Search the web" runs in the host's own search, prefetched.** `ContactValuesHost` takes `searchWeb(query)` (open the host's search in place instead of an outbound Google link) and `prefetchWebSearch(query)` → `WebSearchPrefetch` (`get` / `subscribe`; `get` returns the same object until the status changes). The peek starts the prefetch when it opens and the row shows "Searching…", then "N results" / "No results"; the row always sits last in Actions, built by the shell from each value's `webSearch` words, and closes the peek when pressed. Phones search as `949-404-4444`. Peek rows (`PeekRow`, `PeekCardRowsItem`) gain `onSelect`, an in-place action drawn like a link that wins over `href`. Guards: `contact-values.test.tsx` "searches the web in the host's own search", "starts the host's search when the peek opens". Consumer action: pass `searchWeb` (and optionally `prefetchWebSearch`) to keep searches in-app; without them the row stays an outbound link.
|
|
7
|
+
|
|
3
8
|
## 0.86.366
|
|
4
9
|
|
|
5
|
-
|
|
6
|
-
|
|
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 19ee9cd304 5fa3da8c6c -- apps/shared/design-system/src`
|
|
13
|
+
|
|
14
|
+
Changed shipped source files (2):
|
|
15
|
+
- `apps/shared/design-system/src/desktop/errors.ts`
|
|
16
|
+
- `apps/shared/design-system/src/error-sentence.ts`
|
|
7
17
|
|
|
8
18
|
## 0.86.365
|
|
9
19
|
|
|
20
|
+
- Icon tile labels (`Tile layout="icon"`) wrap only at spaces — never inside a word — and a word wider than its tile ends in an ellipsis; the Alchemy copy palette widens 15.5rem → 16.5rem so "Markdown" and "Formatted" fit on one line. No consumer action required.
|
|
10
21
|
- `SwipeDeck` gains `titleSize` (`"fit"` default | `"page"`: the card text at a page-title size in a 760px reading column, top-aligned; the stage still scrolls when the card is taller) and `moreOnCard` (default `true`; `false` drops the deck's own row of off-edge answers so the host draws every answer through `context.answer` — their shortcuts still answer). No consumer action required.
|
|
11
22
|
|
|
12
23
|
## 0.86.364
|
|
@@ -55,7 +55,9 @@ button[data-alchemy-trigger="icon"] > svg { width: 0.875rem; height: 0.875rem; s
|
|
|
55
55
|
/* THE PALETTE (Arman, 2026-10-14): one surface — no bordered box inside it — small rows, no hint
|
|
56
56
|
text on screen (a row's hint is its tooltip), one row of at most four copy tiles. */
|
|
57
57
|
.matrx-alchemy-menu.matrx-alchemy-palette {
|
|
58
|
-
|
|
58
|
+
/* 16.5rem: each of the four tiles leaves ~58px for its 11px label — "Markdown" and "Formatted" are
|
|
59
|
+
55px, and at 15.5rem (54px) they broke mid-word (2026-10-24). */
|
|
60
|
+
width: min(16.5rem, calc(100vw - 2rem));
|
|
59
61
|
min-width: 0;
|
|
60
62
|
padding: 0.25rem;
|
|
61
63
|
max-height: var(--radix-popover-content-available-height, 80dvh);
|
package/dist/controls.css
CHANGED
|
@@ -1741,8 +1741,13 @@
|
|
|
1741
1741
|
-webkit-box-orient: vertical;
|
|
1742
1742
|
-webkit-line-clamp: 2;
|
|
1743
1743
|
overflow: hidden;
|
|
1744
|
-
|
|
1745
|
-
|
|
1744
|
+
/* Whole words only: a label never breaks inside a word ("Markdow / n", 2026-10-24) — it wraps at a
|
|
1745
|
+
space, and a word wider than the tile ends in an ellipsis. !important beats the host's mobile
|
|
1746
|
+
`span { word-break: break-word }`. */
|
|
1747
|
+
overflow-wrap: normal !important;
|
|
1748
|
+
word-break: normal !important;
|
|
1749
|
+
hyphens: manual;
|
|
1750
|
+
text-overflow: ellipsis;
|
|
1746
1751
|
white-space: normal;
|
|
1747
1752
|
font-size: 0.6875rem !important;
|
|
1748
1753
|
font-weight: 400 !important;
|
|
@@ -23763,9 +23763,14 @@ function MatrxDataTableCore(coreProps) {
|
|
|
23763
23763
|
};
|
|
23764
23764
|
const selectionNoun = selection?.noun ?? "row";
|
|
23765
23765
|
const selectionCount = allMatching && selectionMatchingTotal !== void 0 ? selectionMatchingTotal : selectedIdSet.size;
|
|
23766
|
-
const offerSelectAllMatching = Boolean(selection) && !allMatching && allOnPageSelected && selectionMatchingTotal !== void 0 && selectionMatchingTotal > selectedIdSet.size;
|
|
23766
|
+
const offerSelectAllMatching = Boolean(selection) && selection?.selectAllMatching !== false && !allMatching && allOnPageSelected && selectionMatchingTotal !== void 0 && selectionMatchingTotal > selectedIdSet.size;
|
|
23767
23767
|
const selectAllMatching = () => {
|
|
23768
23768
|
if (!selection || selectionMatchingTotal === void 0) return;
|
|
23769
|
+
if (typeof selection.selectAllMatching === "function") {
|
|
23770
|
+
lastToggledIndex.current = null;
|
|
23771
|
+
selection.selectAllMatching();
|
|
23772
|
+
return;
|
|
23773
|
+
}
|
|
23769
23774
|
lastToggledIndex.current = null;
|
|
23770
23775
|
if (selectionMatchingTotal <= orderedRows.length) {
|
|
23771
23776
|
const next = new Set(selectedIdSet);
|