@nanisoft/prism-ui 0.16.0 → 1.0.0
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/dist/.tsbuildinfo +1 -1
- package/dist/blocks/activity-feed-01/activity-feed-01.d.ts +120 -190
- package/dist/blocks/activity-feed-01/activity-feed-01.d.ts.map +1 -1
- package/dist/blocks/activity-feed-01/activity-feed-01.js +107 -97
- package/dist/blocks/activity-feed-01/index.d.ts +1 -1
- package/dist/blocks/activity-feed-01/index.d.ts.map +1 -1
- package/dist/blocks/auth-form-01/auth-form.d.ts +86 -53
- package/dist/blocks/auth-form-01/auth-form.d.ts.map +1 -1
- package/dist/blocks/auth-form-01/auth-form.js +95 -31
- package/dist/blocks/auth-form-01/index.d.ts +1 -1
- package/dist/blocks/auth-form-01/index.d.ts.map +1 -1
- package/dist/blocks/calendar-01/calendar.d.ts +28 -0
- package/dist/blocks/calendar-01/calendar.d.ts.map +1 -1
- package/dist/blocks/calendar-01/calendar.js +15 -1
- package/dist/blocks/card-index-01/card-index.d.ts +225 -0
- package/dist/blocks/card-index-01/card-index.d.ts.map +1 -0
- package/dist/blocks/card-index-01/card-index.js +154 -0
- package/dist/blocks/card-index-01/index.d.ts +3 -0
- package/dist/blocks/card-index-01/index.d.ts.map +1 -0
- package/dist/blocks/card-index-01/index.js +1 -0
- package/dist/blocks/chart-card-01/chart-card-01.d.ts +23 -21
- package/dist/blocks/chart-card-01/chart-card-01.d.ts.map +1 -1
- package/dist/blocks/chart-card-01/chart-card-01.js +46 -1
- package/dist/blocks/chart-card-01/index.d.ts +1 -1
- package/dist/blocks/chart-card-01/index.d.ts.map +1 -1
- package/dist/blocks/chart-group-01/chart-group-01.d.ts +3 -3
- package/dist/blocks/chart-group-01/chart-group-01.d.ts.map +1 -1
- package/dist/blocks/contact-01/contact.d.ts +30 -82
- package/dist/blocks/contact-01/contact.d.ts.map +1 -1
- package/dist/blocks/contact-01/contact.js +59 -30
- package/dist/blocks/contact-01/index.d.ts +1 -1
- package/dist/blocks/contact-01/index.d.ts.map +1 -1
- package/dist/blocks/dashboard-01/dashboard-01.d.ts +26 -71
- package/dist/blocks/dashboard-01/dashboard-01.d.ts.map +1 -1
- package/dist/blocks/dashboard-01/dashboard-01.js +34 -23
- package/dist/blocks/dashboard-01/index.d.ts +1 -1
- package/dist/blocks/dashboard-01/index.d.ts.map +1 -1
- package/dist/blocks/data-table-01/data-table.d.ts +276 -59
- package/dist/blocks/data-table-01/data-table.d.ts.map +1 -1
- package/dist/blocks/data-table-01/data-table.js +217 -35
- package/dist/blocks/data-table-01/index.d.ts +1 -1
- package/dist/blocks/data-table-01/index.d.ts.map +1 -1
- package/dist/blocks/directory-01/directory-01.d.ts +23 -2
- package/dist/blocks/directory-01/directory-01.d.ts.map +1 -1
- package/dist/blocks/directory-01/directory-01.js +3 -3
- package/dist/blocks/empty-state-01/empty-state.d.ts +60 -21
- package/dist/blocks/empty-state-01/empty-state.d.ts.map +1 -1
- package/dist/blocks/empty-state-01/empty-state.js +52 -17
- package/dist/blocks/index-detail-01/index-detail.d.ts +85 -0
- package/dist/blocks/index-detail-01/index-detail.d.ts.map +1 -0
- package/dist/blocks/index-detail-01/index-detail.js +58 -0
- package/dist/blocks/index-detail-01/index.d.ts +3 -0
- package/dist/blocks/index-detail-01/index.d.ts.map +1 -0
- package/dist/blocks/index-detail-01/index.js +1 -0
- package/dist/blocks/index.d.ts +20 -8
- package/dist/blocks/index.d.ts.map +1 -1
- package/dist/blocks/index.js +7 -0
- package/dist/blocks/issue-detail-01/issue-detail.d.ts +18 -0
- package/dist/blocks/issue-detail-01/issue-detail.d.ts.map +1 -1
- package/dist/blocks/issue-detail-01/issue-detail.js +18 -0
- package/dist/blocks/nothing-chosen-01/index.d.ts +3 -0
- package/dist/blocks/nothing-chosen-01/index.d.ts.map +1 -0
- package/dist/blocks/nothing-chosen-01/index.js +1 -0
- package/dist/blocks/nothing-chosen-01/nothing-chosen.d.ts +119 -0
- package/dist/blocks/nothing-chosen-01/nothing-chosen.d.ts.map +1 -0
- package/dist/blocks/nothing-chosen-01/nothing-chosen.js +79 -0
- package/dist/blocks/project-dashboard-01/index.d.ts +1 -1
- package/dist/blocks/project-dashboard-01/index.d.ts.map +1 -1
- package/dist/blocks/project-dashboard-01/project-dashboard.d.ts +21 -27
- package/dist/blocks/project-dashboard-01/project-dashboard.d.ts.map +1 -1
- package/dist/blocks/project-dashboard-01/project-dashboard.js +45 -5
- package/dist/blocks/provisioning-01/index.d.ts +1 -1
- package/dist/blocks/provisioning-01/index.d.ts.map +1 -1
- package/dist/blocks/provisioning-01/provisioning.d.ts +9 -97
- package/dist/blocks/provisioning-01/provisioning.d.ts.map +1 -1
- package/dist/blocks/provisioning-01/provisioning.js +26 -13
- package/dist/blocks/record-detail-01/index.d.ts +3 -0
- package/dist/blocks/record-detail-01/index.d.ts.map +1 -0
- package/dist/blocks/record-detail-01/index.js +1 -0
- package/dist/blocks/record-detail-01/record-detail.d.ts +239 -0
- package/dist/blocks/record-detail-01/record-detail.d.ts.map +1 -0
- package/dist/blocks/record-detail-01/record-detail.js +150 -0
- package/dist/blocks/record-form-01/index.d.ts +3 -0
- package/dist/blocks/record-form-01/index.d.ts.map +1 -0
- package/dist/blocks/record-form-01/index.js +1 -0
- package/dist/blocks/record-form-01/record-form.d.ts +148 -0
- package/dist/blocks/record-form-01/record-form.d.ts.map +1 -0
- package/dist/blocks/record-form-01/record-form.js +107 -0
- package/dist/blocks/record-grid-01/index.d.ts +3 -0
- package/dist/blocks/record-grid-01/index.d.ts.map +1 -0
- package/dist/blocks/record-grid-01/index.js +1 -0
- package/dist/blocks/record-grid-01/record-grid.d.ts +145 -0
- package/dist/blocks/record-grid-01/record-grid.d.ts.map +1 -0
- package/dist/blocks/record-grid-01/record-grid.js +114 -0
- package/dist/blocks/record-wizard-01/index.d.ts +3 -0
- package/dist/blocks/record-wizard-01/index.d.ts.map +1 -0
- package/dist/blocks/record-wizard-01/index.js +1 -0
- package/dist/blocks/record-wizard-01/record-wizard.d.ts +152 -0
- package/dist/blocks/record-wizard-01/record-wizard.d.ts.map +1 -0
- package/dist/blocks/record-wizard-01/record-wizard.js +144 -0
- package/dist/blocks/settings-members-01/settings-members.d.ts +2 -1
- package/dist/blocks/settings-members-01/settings-members.d.ts.map +1 -1
- package/dist/blocks/settings-panel-01/index.d.ts +1 -1
- package/dist/blocks/settings-panel-01/index.d.ts.map +1 -1
- package/dist/blocks/settings-panel-01/settings-panel.d.ts +165 -67
- package/dist/blocks/settings-panel-01/settings-panel.d.ts.map +1 -1
- package/dist/blocks/settings-panel-01/settings-panel.js +92 -33
- package/dist/blocks/signup-01/index.d.ts +1 -1
- package/dist/blocks/signup-01/index.d.ts.map +1 -1
- package/dist/blocks/signup-01/signup-01.d.ts +10 -84
- package/dist/blocks/signup-01/signup-01.d.ts.map +1 -1
- package/dist/blocks/signup-01/signup-01.js +41 -23
- package/dist/blocks/stats-01/index.d.ts +5 -5
- package/dist/blocks/stats-01/index.d.ts.map +1 -1
- package/dist/blocks/stats-01/index.js +4 -4
- package/dist/blocks/stats-01/stats.d.ts +49 -14
- package/dist/blocks/stats-01/stats.d.ts.map +1 -1
- package/dist/blocks/stats-01/stats.js +65 -15
- package/dist/blocks/trend-01/index.d.ts +1 -1
- package/dist/blocks/trend-01/index.d.ts.map +1 -1
- package/dist/blocks/trend-01/trend.d.ts +26 -73
- package/dist/blocks/trend-01/trend.d.ts.map +1 -1
- package/dist/blocks/trend-01/trend.js +47 -30
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.js +93 -3
- package/dist/components/ui/metric.d.ts +4 -2
- package/dist/components/ui/metric.d.ts.map +1 -1
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/lib/field-render.d.ts +107 -0
- package/dist/lib/field-render.d.ts.map +1 -0
- package/dist/lib/field-render.js +251 -0
- package/dist/lib/spec.d.ts +609 -0
- package/dist/lib/spec.d.ts.map +1 -0
- package/dist/lib/spec.js +1 -0
- package/dist/live/index.d.ts +2 -0
- package/dist/live/index.d.ts.map +1 -1
- package/dist/live/index.js +6 -0
- package/dist/live/message-thread-01/index.d.ts +3 -0
- package/dist/live/message-thread-01/index.d.ts.map +1 -0
- package/dist/live/message-thread-01/index.js +1 -0
- package/dist/live/message-thread-01/message-thread.d.ts +282 -0
- package/dist/live/message-thread-01/message-thread.d.ts.map +1 -0
- package/dist/live/message-thread-01/message-thread.js +221 -0
- package/dist/live/run-stream-01/run-stream.d.ts +2 -1
- package/dist/live/run-stream-01/run-stream.d.ts.map +1 -1
- package/dist/live/run-stream-01/run-stream.js +1 -7
- package/dist/live/status.d.ts +27 -0
- package/dist/live/status.d.ts.map +1 -0
- package/dist/live/status.js +15 -0
- package/dist/live/tool-call-row.d.ts +26 -0
- package/dist/live/tool-call-row.d.ts.map +1 -0
- package/dist/live/tool-call-row.js +60 -0
- package/dist/live/tool-ledger-01/tool-ledger.d.ts.map +1 -1
- package/dist/live/tool-ledger-01/tool-ledger.js +2 -42
- package/dist/pages/contact-page/index.d.ts +7 -7
- package/dist/pages/contact-page/index.d.ts.map +1 -1
- package/dist/pages/contact-page/index.js +17 -5
- package/dist/pages/docs-shell/docs-shell.d.ts +42 -30
- package/dist/pages/docs-shell/docs-shell.d.ts.map +1 -1
- package/dist/pages/docs-shell/docs-shell.js +70 -48
- package/dist/pages/document-page/document-page.d.ts +146 -0
- package/dist/pages/document-page/document-page.d.ts.map +1 -0
- package/dist/pages/document-page/document-page.js +80 -0
- package/dist/pages/document-page/index.d.ts +3 -0
- package/dist/pages/document-page/index.d.ts.map +1 -0
- package/dist/pages/document-page/index.js +1 -0
- package/dist/pages/index.d.ts +2 -0
- package/dist/pages/index.d.ts.map +1 -1
- package/dist/pages/index.js +6 -0
- package/dist/styles.css +59 -3
- package/package.json +7 -2
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { type ComponentProps, type ReactNode } from 'react';
|
|
2
|
+
import { ActivityFeed01 } from '../../blocks/activity-feed-01/index.js';
|
|
3
|
+
import { Compare01 } from '../../blocks/compare-01/index.js';
|
|
4
|
+
import { DataTable01 } from '../../blocks/data-table-01/index.js';
|
|
5
|
+
import { MemberList01 } from '../../blocks/member-list-01/index.js';
|
|
6
|
+
import { RecordDetail01 } from '../../blocks/record-detail-01/index.js';
|
|
7
|
+
/**
|
|
8
|
+
* A props type with the heading level removed, distributed over a union.
|
|
9
|
+
*
|
|
10
|
+
* `Omit` does not distribute over a union: `Omit<A | B, K>` keeps only the keys
|
|
11
|
+
* the two arms share, so `Omit<DataTable01Props, 'headingLevel'>` would drop the
|
|
12
|
+
* selection arm's own members and a caller could no longer pass `selectable`. The
|
|
13
|
+
* conditional distributes, so each arm loses only its heading level.
|
|
14
|
+
*/
|
|
15
|
+
type WithoutHeading<T> = T extends unknown ? Omit<T, 'headingLevel'> : never;
|
|
16
|
+
/**
|
|
17
|
+
* The document read in full, plus its body.
|
|
18
|
+
*
|
|
19
|
+
* It is the props of `RecordDetail01` minus the two the Page decides for it. The
|
|
20
|
+
* `title`, `eyebrow`, `description`, `fields`, `actions` and `relations` are the
|
|
21
|
+
* record's own, unchanged, so the Page mints no document type: a document is a
|
|
22
|
+
* record, and the record detail is the Block that draws one. `headingLevel` is
|
|
23
|
+
* removed because the Page owns the document's `h1`, and `children` is replaced by
|
|
24
|
+
* `body` so the Page can hold the body to the reading measure rather than pass it
|
|
25
|
+
* through untouched.
|
|
26
|
+
*/
|
|
27
|
+
export type DocumentPageDocument = Omit<ComponentProps<typeof RecordDetail01>, 'headingLevel' | 'children'> & {
|
|
28
|
+
/**
|
|
29
|
+
* The document's body: the authored copy between the document's facts and its
|
|
30
|
+
* regions.
|
|
31
|
+
*
|
|
32
|
+
* The Page wraps it in `Prose`, so the measure and the block rhythm are the
|
|
33
|
+
* system's and the words are the caller's. Omit it for a document that is only
|
|
34
|
+
* its facts and its regions.
|
|
35
|
+
*/
|
|
36
|
+
body?: ReactNode;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* One region beside the document body, as the caller's own content.
|
|
40
|
+
*
|
|
41
|
+
* **The union is by arrangement and not by subject matter, and that is the whole
|
|
42
|
+
* of what keeps the Page from minting a document type.** A `version`, a `comment`
|
|
43
|
+
* and a `source` are each a product's word for its own record, and a member naming
|
|
44
|
+
* one of them on a Prism type would promise that every consumer's document holds
|
|
45
|
+
* those things. What the Page knows is which settled Block draws a region: an
|
|
46
|
+
* `activity` is `ActivityFeed01`, a `table` is `DataTable01`, `members` is
|
|
47
|
+
* `MemberList01` and `comparison` is `Compare01`. A version list and a source list
|
|
48
|
+
* are both a `table` with the caller's own columns; a comment thread is `members`
|
|
49
|
+
* or a `table`; the evidence matrix is `comparison`. So the six document variants
|
|
50
|
+
* and the research workspace are one Page under different content, exactly as the
|
|
51
|
+
* decision recorded, and the difference between them is which region the caller
|
|
52
|
+
* put in the list.
|
|
53
|
+
*
|
|
54
|
+
* `key` is the caller's stable key for the region, because a region list is an
|
|
55
|
+
* ordered list and React needs an identity per entry that survives a reorder.
|
|
56
|
+
*/
|
|
57
|
+
export type DocumentPageRegion = {
|
|
58
|
+
key: string;
|
|
59
|
+
block: 'activity';
|
|
60
|
+
props: WithoutHeading<ComponentProps<typeof ActivityFeed01>>;
|
|
61
|
+
} | {
|
|
62
|
+
key: string;
|
|
63
|
+
block: 'table';
|
|
64
|
+
props: WithoutHeading<ComponentProps<typeof DataTable01>>;
|
|
65
|
+
} | {
|
|
66
|
+
key: string;
|
|
67
|
+
block: 'members';
|
|
68
|
+
props: WithoutHeading<ComponentProps<typeof MemberList01>>;
|
|
69
|
+
} | {
|
|
70
|
+
key: string;
|
|
71
|
+
block: 'comparison';
|
|
72
|
+
props: WithoutHeading<ComponentProps<typeof Compare01>>;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* The props a DocumentPage takes.
|
|
76
|
+
*
|
|
77
|
+
* The document is one prop and the regions are another, because the document read
|
|
78
|
+
* in full is the whole of the page and the regions are what the caller opens
|
|
79
|
+
* beside its body. Every word, value, column, member and arm is the caller's: the
|
|
80
|
+
* Page ships no sentence, holds no document, fetches nothing and owns no editor,
|
|
81
|
+
* no share, no export and no permission.
|
|
82
|
+
*/
|
|
83
|
+
export type DocumentPageProps = {
|
|
84
|
+
/** The document read in full, with its body. The Page gives it the page's `h1`. */
|
|
85
|
+
document: DocumentPageDocument;
|
|
86
|
+
/**
|
|
87
|
+
* The regions beside the body, in the order a reader should meet them. Omit the
|
|
88
|
+
* prop for a document that is only its body, which is the deliverable case.
|
|
89
|
+
*/
|
|
90
|
+
regions?: readonly DocumentPageRegion[];
|
|
91
|
+
/**
|
|
92
|
+
* Layout only, exactly as on every Component. Changing a Prism-owned visual
|
|
93
|
+
* property from here is prohibited.
|
|
94
|
+
*/
|
|
95
|
+
className?: string;
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* A whole document screen: the document read in full with its body, and one or
|
|
99
|
+
* more regions beside it.
|
|
100
|
+
*
|
|
101
|
+
* **This is a Page authored beside `DocsShell`, and neither of that Page's two
|
|
102
|
+
* rules is relaxed.** `DocsShell` states that a section is a label and not a
|
|
103
|
+
* control, and that a group with no index is a label and not a route. Both are
|
|
104
|
+
* statements about a documentation site's navigation tree, where a section is a
|
|
105
|
+
* topic a reader may reach in any order. This workspace never asks that question:
|
|
106
|
+
* its status is a state of a region of one document and belongs to the Block that
|
|
107
|
+
* draws the region, and its route is the document's own contents. So the two are
|
|
108
|
+
* separate Items, no consumer of `DocsShell` is affected, and this Page owns the
|
|
109
|
+
* document's `h1` because a route renders it for a document and nothing frames it.
|
|
110
|
+
*
|
|
111
|
+
* **One Page draws all seven screens, because the difference between the six
|
|
112
|
+
* document variants and the research workspace is content rather than
|
|
113
|
+
* structure.** The record is the same thing in every one of them: an authored
|
|
114
|
+
* document with a title, a body and a set of things attached to it. What separates
|
|
115
|
+
* them is which region is open beside the body, which is the caller's content, so
|
|
116
|
+
* a version list, a comment thread, a source list, an output list and an evidence
|
|
117
|
+
* matrix are regions of one Page rather than six Items. The Page is the
|
|
118
|
+
* arrangement that places the document and one or more of those regions, and it
|
|
119
|
+
* ships none of their words.
|
|
120
|
+
*
|
|
121
|
+
* **It composes settled Items and mints no document, version, comment or source
|
|
122
|
+
* type.** The document read in full is `RecordDetail01`, and the body is `Prose`.
|
|
123
|
+
* A version list is `ActivityFeed01` or a `table` region; a comment thread is a
|
|
124
|
+
* `members` region or a `table`; a source list and an output list are `table`
|
|
125
|
+
* regions with the caller's per-row destination; the evidence comparison matrix is
|
|
126
|
+
* `Compare01` as a `comparison` region. Nothing here declares a shape named after
|
|
127
|
+
* a product's record, because a document is a record and every attached thing is
|
|
128
|
+
* the caller's own rows.
|
|
129
|
+
*
|
|
130
|
+
* **The editor, the fetch, the retention, the share, the export and the permission
|
|
131
|
+
* are the consumer's.** The Page owns no editor, so an annotation anchored to a
|
|
132
|
+
* passage, a version created, a comment resolved and a document sent are all
|
|
133
|
+
* behaviour and all the caller's. It fetches nothing, so it holds no document, no
|
|
134
|
+
* version history and no source; it owns no retention, no archive and no recovery,
|
|
135
|
+
* which are properties of the caller's store; and it owns no permission, because
|
|
136
|
+
* who may read or comment is the caller's store. Every figure, word and node is a
|
|
137
|
+
* prop.
|
|
138
|
+
*
|
|
139
|
+
* It is a client Component because the Blocks it composes hold state: a table
|
|
140
|
+
* holds its selection and a member list attaches a handler. That is a property of
|
|
141
|
+
* this composition and not of the data, and the caller still owns every row, every
|
|
142
|
+
* callback and every word.
|
|
143
|
+
*/
|
|
144
|
+
export declare function DocumentPage({ document, regions, className }: DocumentPageProps): import("react").JSX.Element;
|
|
145
|
+
export default DocumentPage;
|
|
146
|
+
//# sourceMappingURL=document-page.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document-page.d.ts","sourceRoot":"","sources":["../../../src/pages/document-page/document-page.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAErE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAK9D;;;;;;;GAOG;AACH,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,IAAI,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,KAAK,CAAA;AAE5E;;;;;;;;;;GAUG;AACH,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,cAAc,CAAC,OAAO,cAAc,CAAC,EACrC,cAAc,GAAG,UAAU,CAC5B,GAAG;IACF;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IACE,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,UAAU,CAAA;IACjB,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,CAAC,CAAA;CAC7D,GACD;IACE,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,OAAO,CAAA;IACd,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,OAAO,WAAW,CAAC,CAAC,CAAA;CAC1D,GACD;IACE,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,SAAS,CAAA;IAChB,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC,CAAA;CAC3D,GACD;IACE,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,YAAY,CAAA;IACnB,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC,CAAA;CACxD,CAAA;AAEL;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,mFAAmF;IACnF,QAAQ,EAAE,oBAAoB,CAAA;IAC9B;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAA;IACvC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,iBAAiB,+BA2B/E;AAED,eAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Fragment } from 'react';
|
|
4
|
+
import { ActivityFeed01 } from '../../blocks/activity-feed-01/index.js';
|
|
5
|
+
import { Compare01 } from '../../blocks/compare-01/index.js';
|
|
6
|
+
import { DataTable01 } from '../../blocks/data-table-01/index.js';
|
|
7
|
+
import { MemberList01 } from '../../blocks/member-list-01/index.js';
|
|
8
|
+
import { RecordDetail01 } from '../../blocks/record-detail-01/index.js';
|
|
9
|
+
import { Prose } from '../../components/ui/prose.js';
|
|
10
|
+
import { Section } from '../../components/ui/section.js';
|
|
11
|
+
import { cn } from '../../lib/utils.js';
|
|
12
|
+
/**
|
|
13
|
+
* One region, drawn by the Block its arrangement names.
|
|
14
|
+
*
|
|
15
|
+
* The heading level is set here rather than taken from the caller, so every region
|
|
16
|
+
* is a section one level under the document's `h1` and the outline cannot be
|
|
17
|
+
* flattened by a caller who passed the wrong level to a Block.
|
|
18
|
+
*/
|
|
19
|
+
function renderRegion(region) {
|
|
20
|
+
if (region.block === 'activity')
|
|
21
|
+
return _jsx(ActivityFeed01, { ...region.props, headingLevel: "h2" });
|
|
22
|
+
if (region.block === 'table')
|
|
23
|
+
return _jsx(DataTable01, { ...region.props, headingLevel: "h2" });
|
|
24
|
+
if (region.block === 'members')
|
|
25
|
+
return _jsx(MemberList01, { ...region.props, headingLevel: "h2" });
|
|
26
|
+
return _jsx(Compare01, { ...region.props, headingLevel: "h2" });
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* A whole document screen: the document read in full with its body, and one or
|
|
30
|
+
* more regions beside it.
|
|
31
|
+
*
|
|
32
|
+
* **This is a Page authored beside `DocsShell`, and neither of that Page's two
|
|
33
|
+
* rules is relaxed.** `DocsShell` states that a section is a label and not a
|
|
34
|
+
* control, and that a group with no index is a label and not a route. Both are
|
|
35
|
+
* statements about a documentation site's navigation tree, where a section is a
|
|
36
|
+
* topic a reader may reach in any order. This workspace never asks that question:
|
|
37
|
+
* its status is a state of a region of one document and belongs to the Block that
|
|
38
|
+
* draws the region, and its route is the document's own contents. So the two are
|
|
39
|
+
* separate Items, no consumer of `DocsShell` is affected, and this Page owns the
|
|
40
|
+
* document's `h1` because a route renders it for a document and nothing frames it.
|
|
41
|
+
*
|
|
42
|
+
* **One Page draws all seven screens, because the difference between the six
|
|
43
|
+
* document variants and the research workspace is content rather than
|
|
44
|
+
* structure.** The record is the same thing in every one of them: an authored
|
|
45
|
+
* document with a title, a body and a set of things attached to it. What separates
|
|
46
|
+
* them is which region is open beside the body, which is the caller's content, so
|
|
47
|
+
* a version list, a comment thread, a source list, an output list and an evidence
|
|
48
|
+
* matrix are regions of one Page rather than six Items. The Page is the
|
|
49
|
+
* arrangement that places the document and one or more of those regions, and it
|
|
50
|
+
* ships none of their words.
|
|
51
|
+
*
|
|
52
|
+
* **It composes settled Items and mints no document, version, comment or source
|
|
53
|
+
* type.** The document read in full is `RecordDetail01`, and the body is `Prose`.
|
|
54
|
+
* A version list is `ActivityFeed01` or a `table` region; a comment thread is a
|
|
55
|
+
* `members` region or a `table`; a source list and an output list are `table`
|
|
56
|
+
* regions with the caller's per-row destination; the evidence comparison matrix is
|
|
57
|
+
* `Compare01` as a `comparison` region. Nothing here declares a shape named after
|
|
58
|
+
* a product's record, because a document is a record and every attached thing is
|
|
59
|
+
* the caller's own rows.
|
|
60
|
+
*
|
|
61
|
+
* **The editor, the fetch, the retention, the share, the export and the permission
|
|
62
|
+
* are the consumer's.** The Page owns no editor, so an annotation anchored to a
|
|
63
|
+
* passage, a version created, a comment resolved and a document sent are all
|
|
64
|
+
* behaviour and all the caller's. It fetches nothing, so it holds no document, no
|
|
65
|
+
* version history and no source; it owns no retention, no archive and no recovery,
|
|
66
|
+
* which are properties of the caller's store; and it owns no permission, because
|
|
67
|
+
* who may read or comment is the caller's store. Every figure, word and node is a
|
|
68
|
+
* prop.
|
|
69
|
+
*
|
|
70
|
+
* It is a client Component because the Blocks it composes hold state: a table
|
|
71
|
+
* holds its selection and a member list attaches a handler. That is a property of
|
|
72
|
+
* this composition and not of the data, and the caller still owns every row, every
|
|
73
|
+
* callback and every word.
|
|
74
|
+
*/
|
|
75
|
+
export function DocumentPage({ document, regions, className }) {
|
|
76
|
+
const { body, ...record } = document;
|
|
77
|
+
const list = regions ?? [];
|
|
78
|
+
return (_jsx(Section, { "data-slot": "document-page", className: cn(className), children: _jsxs("article", { "data-slot": "document-page-article", className: "flex flex-col gap-12", children: [_jsx(RecordDetail01, { ...record, headingLevel: "h1", children: body === undefined ? null : _jsx(Prose, { children: body }) }), list.length === 0 ? null : (_jsx("div", { "data-slot": "document-page-regions", className: "flex flex-col gap-12", children: list.map((region) => (_jsx(Fragment, { children: renderRegion(region) }, region.key))) }))] }) }));
|
|
79
|
+
}
|
|
80
|
+
export default DocumentPage;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/document-page/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACvD,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,iBAAiB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DocumentPage, default } from './document-page.js';
|
package/dist/pages/index.d.ts
CHANGED
|
@@ -25,6 +25,8 @@ export { BlogPostPage } from './blog-post-page/index.js';
|
|
|
25
25
|
export type { BlogPostPageProps, BlogPostTag, BlogPostNeighbour, BlogPostTrailLabels } from './blog-post-page/index.js';
|
|
26
26
|
export { DocsShell } from './docs-shell/index.js';
|
|
27
27
|
export type { DocsShellProps, DocsNavEntry, DocsNavPage, DocsNavGroup, DocsNavDivider, DocsPagerLabels, } from './docs-shell/index.js';
|
|
28
|
+
export { DocumentPage } from './document-page/index.js';
|
|
29
|
+
export type { DocumentPageProps, DocumentPageDocument, DocumentPageRegion, } from './document-page/index.js';
|
|
28
30
|
export { AboutPage } from './about-page/index.js';
|
|
29
31
|
export { CareersPage } from './careers-page/index.js';
|
|
30
32
|
export { ChangelogPage } from './changelog-page/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pages/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC9G,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,YAAY,EACV,cAAc,EACd,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,cAAc,EACd,eAAe,GAChB,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pages/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC9G,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,YAAY,EACV,cAAc,EACd,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,cAAc,EACd,eAAe,GAChB,MAAM,cAAc,CAAA;AAQrB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,iBAAiB,CAAA;AAOxB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/pages/index.js
CHANGED
|
@@ -18,6 +18,12 @@ export { AuthPage } from './auth-page/index.js';
|
|
|
18
18
|
export { NotFoundPage } from './not-found-page/index.js';
|
|
19
19
|
export { BlogPostPage } from './blog-post-page/index.js';
|
|
20
20
|
export { DocsShell } from './docs-shell/index.js';
|
|
21
|
+
/*
|
|
22
|
+
* The document and research workspace. A Page authored beside `DocsShell`, so
|
|
23
|
+
* neither of that Page's two rules is relaxed: a section stays a label and not a
|
|
24
|
+
* control, and a group with no index stays a label and not a route. It composes
|
|
25
|
+
* settled Items and mints no document, version, comment or source type. */
|
|
26
|
+
export { DocumentPage } from './document-page/index.js';
|
|
21
27
|
/*
|
|
22
28
|
* the ten screens the 2026-09 expansion added.
|
|
23
29
|
* Derived by the maintainer rather than authored: each entry is read out of the Item own
|
package/dist/styles.css
CHANGED
|
@@ -428,9 +428,6 @@
|
|
|
428
428
|
.my-1 {
|
|
429
429
|
margin-block: var(--spacing-1);
|
|
430
430
|
}
|
|
431
|
-
.my-6 {
|
|
432
|
-
margin-block: var(--spacing-6);
|
|
433
|
-
}
|
|
434
431
|
.-ms-px {
|
|
435
432
|
margin-inline-start: -1px;
|
|
436
433
|
}
|
|
@@ -482,6 +479,9 @@
|
|
|
482
479
|
.mt-auto {
|
|
483
480
|
margin-top: auto;
|
|
484
481
|
}
|
|
482
|
+
.mb-0 {
|
|
483
|
+
margin-bottom: var(--spacing-0);
|
|
484
|
+
}
|
|
485
485
|
.mb-1 {
|
|
486
486
|
margin-bottom: var(--spacing-1);
|
|
487
487
|
}
|
|
@@ -1121,6 +1121,9 @@
|
|
|
1121
1121
|
.grid-cols-\[minmax\(0\,1fr\)_auto\] {
|
|
1122
1122
|
grid-template-columns: minmax(0,1fr) auto;
|
|
1123
1123
|
}
|
|
1124
|
+
.grid-cols-\[minmax\(0\,2fr\)_minmax\(0\,3fr\)\] {
|
|
1125
|
+
grid-template-columns: minmax(0,2fr) minmax(0,3fr);
|
|
1126
|
+
}
|
|
1124
1127
|
.flex-col {
|
|
1125
1128
|
flex-direction: column;
|
|
1126
1129
|
}
|
|
@@ -1253,6 +1256,16 @@
|
|
|
1253
1256
|
.gap-y-8 {
|
|
1254
1257
|
row-gap: var(--spacing-8);
|
|
1255
1258
|
}
|
|
1259
|
+
:where(.divide-y > :not(:last-child)) {
|
|
1260
|
+
--tw-divide-y-reverse: 0;
|
|
1261
|
+
border-bottom-style: var(--tw-border-style);
|
|
1262
|
+
border-top-style: var(--tw-border-style);
|
|
1263
|
+
border-top-width: calc(1px * var(--tw-divide-y-reverse));
|
|
1264
|
+
border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
|
|
1265
|
+
}
|
|
1266
|
+
:where(.divide-border > :not(:last-child)) {
|
|
1267
|
+
border-color: var(--border);
|
|
1268
|
+
}
|
|
1256
1269
|
.self-center {
|
|
1257
1270
|
align-self: center;
|
|
1258
1271
|
}
|
|
@@ -1872,6 +1885,9 @@
|
|
|
1872
1885
|
.px-8 {
|
|
1873
1886
|
padding-inline: var(--spacing-8);
|
|
1874
1887
|
}
|
|
1888
|
+
.py-0 {
|
|
1889
|
+
padding-block: var(--spacing-0);
|
|
1890
|
+
}
|
|
1875
1891
|
.py-0\.5 {
|
|
1876
1892
|
padding-block: var(--spacing-0\.5);
|
|
1877
1893
|
}
|
|
@@ -2004,12 +2020,18 @@
|
|
|
2004
2020
|
.text-center {
|
|
2005
2021
|
text-align: center;
|
|
2006
2022
|
}
|
|
2023
|
+
.text-end {
|
|
2024
|
+
text-align: end;
|
|
2025
|
+
}
|
|
2007
2026
|
.text-left {
|
|
2008
2027
|
text-align: left;
|
|
2009
2028
|
}
|
|
2010
2029
|
.text-right {
|
|
2011
2030
|
text-align: right;
|
|
2012
2031
|
}
|
|
2032
|
+
.text-start {
|
|
2033
|
+
text-align: start;
|
|
2034
|
+
}
|
|
2013
2035
|
.align-bottom {
|
|
2014
2036
|
vertical-align: bottom;
|
|
2015
2037
|
}
|
|
@@ -3324,12 +3346,21 @@
|
|
|
3324
3346
|
}
|
|
3325
3347
|
}
|
|
3326
3348
|
@media (width >= 64rem) {
|
|
3349
|
+
.lg\:absolute {
|
|
3350
|
+
position: absolute;
|
|
3351
|
+
}
|
|
3327
3352
|
.lg\:sticky {
|
|
3328
3353
|
position: sticky;
|
|
3329
3354
|
}
|
|
3355
|
+
.lg\:inset-x-0 {
|
|
3356
|
+
inset-inline: var(--spacing-0);
|
|
3357
|
+
}
|
|
3330
3358
|
.lg\:top-20 {
|
|
3331
3359
|
top: var(--spacing-20);
|
|
3332
3360
|
}
|
|
3361
|
+
.lg\:bottom-0 {
|
|
3362
|
+
bottom: var(--spacing-0);
|
|
3363
|
+
}
|
|
3333
3364
|
.lg\:order-1 {
|
|
3334
3365
|
order: 1;
|
|
3335
3366
|
}
|
|
@@ -3372,6 +3403,9 @@
|
|
|
3372
3403
|
.lg\:hidden {
|
|
3373
3404
|
display: none;
|
|
3374
3405
|
}
|
|
3406
|
+
.lg\:h-8 {
|
|
3407
|
+
height: var(--spacing-8);
|
|
3408
|
+
}
|
|
3375
3409
|
.lg\:max-h-\[calc\(100svh-7rem\)\] {
|
|
3376
3410
|
max-height: calc(100svh - 7rem);
|
|
3377
3411
|
}
|
|
@@ -3461,6 +3495,18 @@
|
|
|
3461
3495
|
border-left-style: var(--tw-border-style);
|
|
3462
3496
|
border-left-width: 1px;
|
|
3463
3497
|
}
|
|
3498
|
+
.lg\:bg-gradient-to-t {
|
|
3499
|
+
--tw-gradient-position: to top in oklab;
|
|
3500
|
+
background-image: linear-gradient(var(--tw-gradient-stops));
|
|
3501
|
+
}
|
|
3502
|
+
.lg\:from-background {
|
|
3503
|
+
--tw-gradient-from: var(--background);
|
|
3504
|
+
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
|
3505
|
+
}
|
|
3506
|
+
.lg\:to-transparent {
|
|
3507
|
+
--tw-gradient-to: transparent;
|
|
3508
|
+
--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
|
|
3509
|
+
}
|
|
3464
3510
|
.lg\:p-6 {
|
|
3465
3511
|
padding: var(--spacing-6);
|
|
3466
3512
|
}
|
|
@@ -3831,6 +3877,10 @@
|
|
|
3831
3877
|
.\[\&_ul\]\:pl-6 ul {
|
|
3832
3878
|
padding-left: var(--spacing-6);
|
|
3833
3879
|
}
|
|
3880
|
+
.\[\&\+\&\]\:border-t + .\[\&\+\&\]\:border-t {
|
|
3881
|
+
border-top-style: var(--tw-border-style);
|
|
3882
|
+
border-top-width: 1px;
|
|
3883
|
+
}
|
|
3834
3884
|
.\[\&\:\:-webkit-search-cancel-button\]\:appearance-none::-webkit-search-cancel-button {
|
|
3835
3885
|
appearance: none;
|
|
3836
3886
|
}
|
|
@@ -4576,6 +4626,11 @@
|
|
|
4576
4626
|
syntax: "*";
|
|
4577
4627
|
inherits: false;
|
|
4578
4628
|
}
|
|
4629
|
+
@property --tw-divide-y-reverse {
|
|
4630
|
+
syntax: "*";
|
|
4631
|
+
inherits: false;
|
|
4632
|
+
initial-value: 0;
|
|
4633
|
+
}
|
|
4579
4634
|
@property --tw-border-style {
|
|
4580
4635
|
syntax: "*";
|
|
4581
4636
|
inherits: false;
|
|
@@ -4863,6 +4918,7 @@
|
|
|
4863
4918
|
--tw-rotate-z: initial;
|
|
4864
4919
|
--tw-skew-x: initial;
|
|
4865
4920
|
--tw-skew-y: initial;
|
|
4921
|
+
--tw-divide-y-reverse: 0;
|
|
4866
4922
|
--tw-border-style: solid;
|
|
4867
4923
|
--tw-gradient-position: initial;
|
|
4868
4924
|
--tw-gradient-from: #0000;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nanisoft/prism-ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Prism's React component, block and page library.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -64,6 +64,10 @@
|
|
|
64
64
|
"types": "./dist/catalog.d.ts",
|
|
65
65
|
"default": "./dist/catalog.js"
|
|
66
66
|
},
|
|
67
|
+
"./spec": {
|
|
68
|
+
"types": "./dist/lib/spec.d.ts",
|
|
69
|
+
"default": "./dist/lib/spec.js"
|
|
70
|
+
},
|
|
67
71
|
"./styles.css": "./dist/styles.css",
|
|
68
72
|
"./gates": {
|
|
69
73
|
"default": "./gates/index.mjs"
|
|
@@ -124,7 +128,7 @@
|
|
|
124
128
|
"sync": "node scripts/sync-registry.mjs",
|
|
125
129
|
"validate": "node scripts/validate-registry.mjs",
|
|
126
130
|
"build": "node scripts/build.mjs && pnpm sync && pnpm validate && node scripts/check-catalogue.mjs && shadcn build && node scripts/check-surface.mjs && node scripts/check-focus-indicators.mjs && node scripts/check-item-docs.mjs && node scripts/check-block-copy.mjs && node scripts/check-item-category.mjs && node scripts/check-block-imports.mjs",
|
|
127
|
-
"check": "node scripts/validate-registry.mjs && node scripts/check-catalogue.mjs && node scripts/check-surface.mjs && node scripts/check-focus-indicators.mjs && node scripts/check-breakpoint-variants.mjs && node scripts/check-container-namespace.mjs && node scripts/check-pack-boundary.mjs && node scripts/check-vector-ink.mjs && node scripts/check-client-budget.mjs && node scripts/check-theme-resolution.mjs && node scripts/check-boot-budget.mjs && node scripts/check-item-docs.mjs && node scripts/check-block-copy.mjs && node scripts/check-item-category.mjs && node scripts/check-block-imports.mjs && node scripts/check-gate-kit.mjs && node scripts/check-typeface.mjs && node scripts/check-variant-ink.mjs",
|
|
131
|
+
"check": "node scripts/validate-registry.mjs && node scripts/check-catalogue.mjs && node scripts/check-surface.mjs && node scripts/check-focus-indicators.mjs && node scripts/check-breakpoint-variants.mjs && node scripts/check-container-namespace.mjs && node scripts/check-pack-boundary.mjs && node scripts/check-vector-ink.mjs && node scripts/check-client-budget.mjs && node scripts/check-theme-resolution.mjs && node scripts/check-boot-budget.mjs && node scripts/check-item-docs.mjs && node scripts/check-block-copy.mjs && node scripts/check-item-category.mjs && node scripts/check-block-imports.mjs && node scripts/check-spec-unions.mjs && node scripts/check-gate-kit.mjs && node scripts/check-typeface.mjs && node scripts/check-variant-ink.mjs",
|
|
128
132
|
"check:gate-kit": "node scripts/check-gate-kit.mjs",
|
|
129
133
|
"check:vector-ink": "node scripts/check-vector-ink.mjs",
|
|
130
134
|
"check:client-budget": "node scripts/check-client-budget.mjs",
|
|
@@ -139,6 +143,7 @@
|
|
|
139
143
|
"check:block-copy": "node scripts/check-block-copy.mjs",
|
|
140
144
|
"check:item-category": "node scripts/check-item-category.mjs",
|
|
141
145
|
"check:block-imports": "node scripts/check-block-imports.mjs",
|
|
146
|
+
"check:spec-unions": "node scripts/check-spec-unions.mjs",
|
|
142
147
|
"test": "vitest run",
|
|
143
148
|
"typecheck": "tsc --noEmit",
|
|
144
149
|
"check:typeface": "node scripts/check-typeface.mjs",
|