@ai-matrx/design-system 0.13.0 → 0.14.1

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,5 +1,73 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.14.1
4
+
5
+ Automatic changed-only republish (docs/metadata drift since the last tag — see
6
+ `git diff npm/design-system/v0.14.0..npm/design-system/v0.14.1 -- apps/shared/design-system`).
7
+ No source changes intended and no consumer action required.
8
+
9
+ ## 0.14.0 — 2026-09-10
10
+
11
+ ### `ArchivedDisclosure` — the card-list half of the ONE archive control
12
+
13
+ 0.13.0 shipped `ArchiveFilter` and the platform still had two archive controls,
14
+ because the frontend kept the other one: `components/official/ArchivedDisclosure`,
15
+ the "Archived (N)" one-click reveal proven in Transcript Studio, invented the
16
+ same day in a different repo. Arman's ruling is that the control is the same
17
+ primitive EVERYWHERE (`common-docs/policies/archived-items.md`), so a second
18
+ home for half of it is the defect, not a convenience.
19
+
20
+ `ArchivedDisclosure` now lives here, ported VERBATIM from that file (including
21
+ its `countLabel` and `keepWhileOpen` additions): a one-click "Archived (N)"
22
+ disclosure, closed by default, rendering archived rows in place underneath —
23
+ or, with `children` omitted, the toggle alone for a host that merges archived
24
+ rows into its own table. `count` is always the true number of archived rows:
25
+ at zero the control renders NOTHING rather than an empty promise, unless
26
+ `keepWhileOpen` marks a surface whose open state IS the archive view (a server
27
+ request), where the way back must never vanish. `countLabel` covers the two
28
+ cases a bare integer cannot tell the truth about: a capped server count
29
+ (`"50+"`) and a count that has not landed (`null` prints no parenthetical).
30
+
31
+ **Two shapes, one vocabulary.** `ArchiveFilter` for table/browse surfaces whose
32
+ reader takes an archive parameter; `ArchivedDisclosure` for card lists, panels
33
+ and pickers that are not table shaped. Never a third. Both speak the single set
34
+ of words, now exported from one module: `ArchiveFilterValue`,
35
+ `ARCHIVE_FILTER_VALUES`, `DEFAULT_ARCHIVE_FILTER` (`active`),
36
+ `ARCHIVE_FILTER_LABELS`, plus two new exports — `ARCHIVE_LABEL`, the ONE noun
37
+ both controls print (`ARCHIVE_FILTER_LABELS.archived` is derived from it, so
38
+ renaming it renames both by construction), and
39
+ `archiveFilterFromDisclosure(open)`, which says a disclosure's state in the
40
+ tri-state words (`open` → `all`, because a disclosure reveals archived rows
41
+ BESIDE the live ones) for hosts whose toggle is a server request.
42
+
43
+ Icons stay inlined (C19): lucide `chevron-down` and `archive` joined
44
+ `src/icons.tsx`, so the port renders the same glyphs with no icon dependency.
45
+
46
+ ### Consumer action
47
+
48
+ **matrx-frontend must delete `components/official/ArchivedDisclosure.tsx`** and
49
+ repoint every importer to `@ai-matrx/design-system` — at the time of writing:
50
+ `features/organizations/components/OrgResourceList.tsx`,
51
+ `features/whatsapp-clone/conversation-list/ConversationListPane.tsx`,
52
+ `features/pdf/scanner/components/desktop/ScannerDesktop.tsx`,
53
+ `features/agents/agent-creators/templates/TemplatesGrid.tsx`,
54
+ `features/canvas/core/SavedCanvasItems.tsx`,
55
+ `features/page-extraction/components/SavedJobsList.tsx`,
56
+ `features/transcript-studio/components/scribe/RecordingCardList.tsx`,
57
+ `features/masterwork/browse/components/MasterworkBrowseCards.tsx`,
58
+ `features/masterwork/home/MasterworkHomePage.tsx`,
59
+ `features/masterwork/components/masterworks/MasterworksPage.tsx`,
60
+ `features/masterwork/components/detail/RulebookDetailPage.tsx`,
61
+ `features/hr/settings/fields/HrFieldsPanel.tsx`,
62
+ `features/pdf-extractor/studio/PdfStudioSidebar.tsx`,
63
+ `features/pdf-extractor/components/PdfExtractorWorkspace.tsx`.
64
+ `lib/entity-list`'s Archived radio renders `<ArchiveFilter>` (its URL and
65
+ preference plumbing is unchanged — only the control component is the package's),
66
+ and `lib/entity-list`'s `ArchivedFilter` type is now an alias of
67
+ `ArchiveFilterValue`. Every other host: a local "Archived (N)" toggle or a
68
+ local tri-state archive segmented control is a twin — delete it and import
69
+ these.
70
+
3
71
  ## 0.13.0 — 2026-09-09
4
72
 
5
73
  ### `ArchiveFilter` — THE ARCHIVED-ITEMS LAW made a control