@stealthscale/component-screen 0.2.1 → 0.2.3
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/cyclonedx/bom.json +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +1 -8216
- package/dist/pages/action-bar/action-bar.js +471 -0
- package/dist/pages/action-bar/action-bar.props.js +3 -0
- package/dist/pages/app-shell/app-shell.js +4899 -0
- package/dist/pages/app-shell/app-shell.props.js +3 -0
- package/dist/pages/floating-panel/floating-panel.js +995 -0
- package/dist/pages/floating-panel/floating-panel.props.js +3 -0
- package/dist/pages/locale-switcher/locale-switcher.js +180 -0
- package/dist/pages/locale-switcher/locale-switcher.props.js +3 -0
- package/dist/pages/page/page.js +2308 -0
- package/dist/pages/page/page.props.js +3 -0
- package/dist/pages/pages.json +123 -0
- package/dist/pages/section/section.js +1241 -0
- package/dist/pages/section/section.props.js +3 -0
- package/dist/pages/sidebar/sidebar.js +1743 -0
- package/dist/pages/sidebar/sidebar.props.js +3 -0
- package/dist/pages/splitter/splitter.js +1563 -0
- package/dist/pages/splitter/splitter.props.js +3 -0
- package/dist/pages/switcher/switcher.js +900 -0
- package/dist/pages/switcher/switcher.props.js +3 -0
- package/dist/pages/theme-switcher/theme-switcher.js +180 -0
- package/dist/pages/theme-switcher/theme-switcher.props.js +3 -0
- package/dist/pages/toolbar/toolbar.js +1045 -0
- package/dist/pages/toolbar/toolbar.props.js +3 -0
- package/dist/{recipe-sZAQY6Kq.js → recipes-Cmy1leBm.js} +312 -30
- package/dist/shared-DxlFabHA.js +9547 -0
- package/dist/shell.js +1 -165
- package/dist/theme.js +3 -4
- package/locales/en/specimen/action-bar.json +46 -0
- package/locales/en/specimen/app-shell.json +288 -0
- package/locales/en/specimen/floating-panel.json +70 -0
- package/locales/en/specimen/locale-switcher.json +15 -0
- package/locales/en/specimen/page.json +198 -0
- package/locales/en/specimen/section.json +91 -0
- package/locales/en/specimen/sidebar.json +87 -0
- package/locales/en/specimen/splitter.json +93 -0
- package/locales/en/specimen/switcher.json +61 -0
- package/locales/en/specimen/theme-switcher.json +15 -0
- package/locales/en/specimen/toolbar.json +80 -0
- package/package.json +25 -24
- package/dist/recipe-DRMsitrw.js +0 -283
- package/dist/root-qEh4u7y5.js +0 -1182
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
{
|
|
2
|
+
"about": "Lays a page out as a column of bands: a banner, a header, a navigation, a toolbar, a body with an optional aside, and a footer. The page measures its own width and folds below 40rem: the breadcrumbs become a link back, an action with an icon shows the icon alone, the other actions move into a menu, the tabs become a picker, and the title reads one size smaller.",
|
|
3
|
+
"align": {
|
|
4
|
+
"about": "Both alignments of a page at the narrow measure: the content at the gutter, and the content centred in the page.",
|
|
5
|
+
"title": "Alignment"
|
|
6
|
+
},
|
|
7
|
+
"aside": {
|
|
8
|
+
"about": "A column of the incident's details beside the body from the window's `lg` breakpoint, as wide as its content. `sticky` keeps the details in view while the box scrolls the body. Below the breakpoint the aside stacks under the body, which is the default `folds=\"under\"`. The aside in the bands scene states `folds=\"hide\"` and leaves the page instead.",
|
|
9
|
+
"title": "An aside beside the body"
|
|
10
|
+
},
|
|
11
|
+
"bands": {
|
|
12
|
+
"about": "The banner above the header, a sticky toolbar, the body with a sticky aside beside it from the `lg` breakpoint, and the footer. Below the breakpoint, this aside leaves the page.",
|
|
13
|
+
"title": "Bands"
|
|
14
|
+
},
|
|
15
|
+
"billing": "Billing",
|
|
16
|
+
"billingBody": "The plan, the invoices and the payment methods.",
|
|
17
|
+
"contents": "Workspace contents",
|
|
18
|
+
"approvals": {
|
|
19
|
+
"about": "The service did not respond within 10 seconds.",
|
|
20
|
+
"heading": "The approvals could not load",
|
|
21
|
+
"retry": "Try again",
|
|
22
|
+
"title": "Approvals"
|
|
23
|
+
},
|
|
24
|
+
"deployment": {
|
|
25
|
+
"body": "The build log, the environment variables and the domains of this deployment.",
|
|
26
|
+
"branch": "main",
|
|
27
|
+
"deploy": "Deploy",
|
|
28
|
+
"deployed": "Deployed 4 minutes ago by Mara",
|
|
29
|
+
"parent": "Deployments",
|
|
30
|
+
"public": "Public",
|
|
31
|
+
"ready": "Ready",
|
|
32
|
+
"rollBack": "Roll back",
|
|
33
|
+
"template": "Template",
|
|
34
|
+
"title": "ledger-web"
|
|
35
|
+
},
|
|
36
|
+
"divided": {
|
|
37
|
+
"about": "The bands with and without the hairline between them.",
|
|
38
|
+
"title": "Rules"
|
|
39
|
+
},
|
|
40
|
+
"failure": {
|
|
41
|
+
"about": "When the content fails to load, the body renders the feedback package's empty state with a control to try again. A route's error component renders this page.",
|
|
42
|
+
"title": "Failed to load"
|
|
43
|
+
},
|
|
44
|
+
"filter": "Filter",
|
|
45
|
+
"filterViews": "Filter views",
|
|
46
|
+
"folding": {
|
|
47
|
+
"about": "The same page at two widths. The page folds when its own width is under 40rem. The breadcrumbs then fold to a link back to the nearest page, the action with an icon shows the icon alone, the plain action moves into the menu, and the tabs fold to a picker that filters them. The count beside the title renders on the wide page alone, because the picker shows each tab's count.",
|
|
48
|
+
"title": "Wide and folded"
|
|
49
|
+
},
|
|
50
|
+
"general": "General",
|
|
51
|
+
"generalBody": "The workspace's name, region and time zone.",
|
|
52
|
+
"incident": {
|
|
53
|
+
"about": "Payouts to one partner bank were 42 minutes late.",
|
|
54
|
+
"details": "Details",
|
|
55
|
+
"events": {
|
|
56
|
+
"asked": "09:38 · We asked the partner bank to check its API.",
|
|
57
|
+
"closed": "10:05 · Support closed the notice on the status page.",
|
|
58
|
+
"detected": "09:12 · The queue alert reported payouts older than ten minutes.",
|
|
59
|
+
"drained": "09:54 · The queue drained, and payouts to every other bank ran on time again.",
|
|
60
|
+
"moved": "09:46 · We moved the partner's payouts to a queue of their own.",
|
|
61
|
+
"paged": "09:14 · Mara took the page and opened this incident.",
|
|
62
|
+
"posted": "09:24 · Support posted a notice on the status page.",
|
|
63
|
+
"queued": "09:20 · Payouts to the other banks waited in the queue behind the late ones.",
|
|
64
|
+
"recovered": "09:50 · The partner bank's API responded within a second again.",
|
|
65
|
+
"reviewed": "10:30 · We listed what to change before the next payday, starting with a queue per partner.",
|
|
66
|
+
"scoped": "09:16 · Mara found that only the payouts to one partner bank were late.",
|
|
67
|
+
"shared": "11:00 · We sent the timeline and the changes to the partner bank.",
|
|
68
|
+
"slowed": "09:31 · The partner bank took 30 seconds to respond to each request, and every worker waited on it."
|
|
69
|
+
},
|
|
70
|
+
"facts": {
|
|
71
|
+
"duration": { "label": "Duration", "value": "42 min" },
|
|
72
|
+
"owner": { "label": "Owner", "value": "Mara Okafor" },
|
|
73
|
+
"severity": { "label": "Severity", "value": "High" },
|
|
74
|
+
"started": { "label": "Started", "value": "09:12" }
|
|
75
|
+
},
|
|
76
|
+
"resolved": "Resolved",
|
|
77
|
+
"runbook": "The runbook for late payouts",
|
|
78
|
+
"status": "Status",
|
|
79
|
+
"title": "Incident 2318"
|
|
80
|
+
},
|
|
81
|
+
"gutter": {
|
|
82
|
+
"about": "Every gutter. Every band reads it.",
|
|
83
|
+
"title": "Gutters"
|
|
84
|
+
},
|
|
85
|
+
"header": {
|
|
86
|
+
"about": "The link back in the context row, the title, the badges beside it, the actions at the end of the title's row, and a row of facts under them. Each part takes its own area of the header's grid, so a part left out takes no room. A screen reader skips the marks between the facts.",
|
|
87
|
+
"title": "A header and its parts"
|
|
88
|
+
},
|
|
89
|
+
"ledger": "Ledger",
|
|
90
|
+
"limits": "Limits",
|
|
91
|
+
"loading": {
|
|
92
|
+
"about": "Skeletons fill the title and the description of a page whose content is loading, and skeleton lines fill its body, which is marked `aria-busy`. The heading's `aria-label` names the state for a screen reader. A route's pending component renders this page.",
|
|
93
|
+
"title": "Loading"
|
|
94
|
+
},
|
|
95
|
+
"measure": {
|
|
96
|
+
"about": "The narrow, the wide and the full measure. The content stops at the measure and every band runs edge to edge, so each hairline spans the page. A box narrower than 48rem renders the narrow and the full measure alike.",
|
|
97
|
+
"title": "Measures"
|
|
98
|
+
},
|
|
99
|
+
"measured": {
|
|
100
|
+
"about": "What changed in each release of the workspace.",
|
|
101
|
+
"body": "Version 4.2 adds audit logs and shortens every deploy by a third.",
|
|
102
|
+
"title": "Release notes",
|
|
103
|
+
"updated": "Updated 3 minutes ago."
|
|
104
|
+
},
|
|
105
|
+
"members": "Members",
|
|
106
|
+
"membersBody": "The people in the workspace and their roles.",
|
|
107
|
+
"navigation": {
|
|
108
|
+
"about": "A navigation band composed from `Page.When`: a row of links on a wide page, and a menu behind `Page.Picker` on a narrow one. Compose the band this way when its destinations are links to other pages.",
|
|
109
|
+
"title": "Links in the navigation"
|
|
110
|
+
},
|
|
111
|
+
"noView": "No view matches",
|
|
112
|
+
"pending": {
|
|
113
|
+
"about": "Loading the description of the page",
|
|
114
|
+
"label": "Loading the page",
|
|
115
|
+
"title": "Loading the title"
|
|
116
|
+
},
|
|
117
|
+
"notifications": {
|
|
118
|
+
"about": "Choose the events that send you a message on each channel.",
|
|
119
|
+
"cancel": "Cancel",
|
|
120
|
+
"channels": "Channels",
|
|
121
|
+
"digest": "Digest",
|
|
122
|
+
"email": "Email",
|
|
123
|
+
"events": {
|
|
124
|
+
"billed": "An invoice is issued",
|
|
125
|
+
"deployed": "A deploy succeeds",
|
|
126
|
+
"expired": "A token expires",
|
|
127
|
+
"failed": "A deploy fails",
|
|
128
|
+
"invited": "Someone invites you",
|
|
129
|
+
"joined": "A member joins",
|
|
130
|
+
"limited": "A usage limit is near",
|
|
131
|
+
"renewed": "A domain renews"
|
|
132
|
+
},
|
|
133
|
+
"push": "Push",
|
|
134
|
+
"reset": "Reset",
|
|
135
|
+
"save": "Save",
|
|
136
|
+
"title": "Notifications"
|
|
137
|
+
},
|
|
138
|
+
"resizeSections": "Resize the sections",
|
|
139
|
+
"seats": "Seats",
|
|
140
|
+
"sections": "Settings sections",
|
|
141
|
+
"settings": "Settings",
|
|
142
|
+
"sidebar": {
|
|
143
|
+
"about": "The page's own sections in a sidebar at the start of the body, a level below the shell's navigation. The page measures its own width: from the `md` breakpoint the sidebar is a column beside the body, which a person resizes by its edge, and on a narrower page it folds to a picker above the body. A press on a section in the picker's panel closes the panel.",
|
|
144
|
+
"title": "A sidebar of sections"
|
|
145
|
+
},
|
|
146
|
+
"size": {
|
|
147
|
+
"about": "Each size sets the title, the description, the breadcrumbs, the actions, the tabs and the padding of every band. The title reads one heading size larger than a section title of the same size.",
|
|
148
|
+
"title": "Sizes"
|
|
149
|
+
},
|
|
150
|
+
"sticking": {
|
|
151
|
+
"about": "The header and the navigation stick to the top of the box, the navigation under the header, and the footer sticks to the bottom. Scroll the box, then choose Push or Digest: the page is at least as tall as its box, so the footer renders at the bottom of a short tab too.",
|
|
152
|
+
"title": "Bands that stick"
|
|
153
|
+
},
|
|
154
|
+
"tabbed": {
|
|
155
|
+
"about": "The navigation band renders the tabs at its start and a toolbar at its end. The first tab's words start where the title starts, and the selected tab's indicator is on the band's hairline. The body is the panel of the selected tab. On a narrow page the picker takes the room the toolbar leaves, and the leading mark renders on the wide page alone.",
|
|
156
|
+
"title": "Tabs with a toolbar"
|
|
157
|
+
},
|
|
158
|
+
"title": "Page",
|
|
159
|
+
"tokens": {
|
|
160
|
+
"add": "Add token",
|
|
161
|
+
"automations": "Automations",
|
|
162
|
+
"bodies": {
|
|
163
|
+
"automations": "The automation that publishes the tokens on every merge.",
|
|
164
|
+
"tokens": "The four tokens of the brand palette."
|
|
165
|
+
},
|
|
166
|
+
"layout": "Layout",
|
|
167
|
+
"list": "As a list",
|
|
168
|
+
"lists": "Token lists",
|
|
169
|
+
"tiles": "As tiles",
|
|
170
|
+
"title": "Design tokens",
|
|
171
|
+
"tokens": "Tokens"
|
|
172
|
+
},
|
|
173
|
+
"trial": "The trial ends in 12 days.",
|
|
174
|
+
"updated": "Updated 3 minutes ago.",
|
|
175
|
+
"usage": "Usage",
|
|
176
|
+
"users": {
|
|
177
|
+
"about": "Everyone with a login, and everyone invited to one.",
|
|
178
|
+
"add": "New record",
|
|
179
|
+
"all": "All",
|
|
180
|
+
"bodies": {
|
|
181
|
+
"all": "All 412 users with a login.",
|
|
182
|
+
"invited": "The 9 invitations waiting for an answer.",
|
|
183
|
+
"suspended": "No user is suspended."
|
|
184
|
+
},
|
|
185
|
+
"invited": "Invited",
|
|
186
|
+
"lists": "User lists",
|
|
187
|
+
"more": "More user actions",
|
|
188
|
+
"parent": "Collections",
|
|
189
|
+
"preview": "API preview",
|
|
190
|
+
"settings": "Settings",
|
|
191
|
+
"suspended": "Suspended",
|
|
192
|
+
"title": "Users"
|
|
193
|
+
},
|
|
194
|
+
"views": "Views",
|
|
195
|
+
"workspace": "Northwind workspace",
|
|
196
|
+
"workspaceAbout": "The usage, the seats and the limits of the workspace.",
|
|
197
|
+
"workspaceBody": "Twelve of twenty seats are in use, and storage is at 40 percent."
|
|
198
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"about": "Groups one part of a page under its own heading, with the controls that act on that part. The section is a landmark named by its title. A section measures its own width and folds its actions below 40rem, or below 48rem when annotated.",
|
|
3
|
+
"annotated": {
|
|
4
|
+
"about": "The header renders in a column beside the card, as a settings page lays out a form beside its explanation. The body and the footer form the card, and the actions sit under the description. Below 48rem the header renders above the card, as the copy at a phone's width shows.",
|
|
5
|
+
"title": "Annotated, the header beside the body"
|
|
6
|
+
},
|
|
7
|
+
"billing": {
|
|
8
|
+
"about": "Where the invoices go, and what the next one is for.",
|
|
9
|
+
"download": "Download",
|
|
10
|
+
"facts": {
|
|
11
|
+
"next": { "label": "Next invoice", "value": "€1,240.00 on 1 October" },
|
|
12
|
+
"plan": { "label": "Plan", "value": "Team, billed yearly" },
|
|
13
|
+
"seats": { "label": "Seats", "value": "3 of 10" }
|
|
14
|
+
},
|
|
15
|
+
"pay": "Pay now",
|
|
16
|
+
"title": "Billing"
|
|
17
|
+
},
|
|
18
|
+
"channels": {
|
|
19
|
+
"deploys": { "about": "Every deploy, as it finishes.", "name": "Deploys" },
|
|
20
|
+
"digest": { "about": "Once a day, everything that happened.", "name": "Digest" },
|
|
21
|
+
"failures": { "about": "A run that fails, the moment it does.", "name": "Failures" }
|
|
22
|
+
},
|
|
23
|
+
"danger": {
|
|
24
|
+
"about": "Everything in it goes with it, and nothing comes back. Members lose their access at once.",
|
|
25
|
+
"delete": "Delete workspace",
|
|
26
|
+
"owner": "Only an owner can do this.",
|
|
27
|
+
"title": "Delete this workspace"
|
|
28
|
+
},
|
|
29
|
+
"edit": "Edit",
|
|
30
|
+
"facts": {
|
|
31
|
+
"name": { "label": "Name", "value": "Ledger" },
|
|
32
|
+
"plan": { "label": "Plan", "value": "Team, billed yearly" },
|
|
33
|
+
"region": { "label": "Region", "value": "eu-west-1" }
|
|
34
|
+
},
|
|
35
|
+
"folding": {
|
|
36
|
+
"about": "The same card at two widths. The section folds when its own width is under 40rem. An action with an icon then shows the icon alone, the primary action keeps its solid fill, and the plain action moves into the menu at the end of the row. The list in the body runs to the card's edges.",
|
|
37
|
+
"title": "Wide and folded"
|
|
38
|
+
},
|
|
39
|
+
"keys": {
|
|
40
|
+
"about": "What a script uses to sign in as this workspace.",
|
|
41
|
+
"add": "New key",
|
|
42
|
+
"none": "No keys yet.",
|
|
43
|
+
"title": "API keys"
|
|
44
|
+
},
|
|
45
|
+
"members": {
|
|
46
|
+
"about": "Everyone with a login, and what each of them may do. An owner can change any of it.",
|
|
47
|
+
"export": "Export",
|
|
48
|
+
"invite": "Invite",
|
|
49
|
+
"manage": "Manage seats",
|
|
50
|
+
"more": "More member actions",
|
|
51
|
+
"roles": "Edit roles",
|
|
52
|
+
"seats": "Three of ten seats taken.",
|
|
53
|
+
"title": "Members"
|
|
54
|
+
},
|
|
55
|
+
"notifications": {
|
|
56
|
+
"about": "Which of them reach you, and how.",
|
|
57
|
+
"title": "Notifications"
|
|
58
|
+
},
|
|
59
|
+
"profile": {
|
|
60
|
+
"about": "What the workspace is called and where it runs.",
|
|
61
|
+
"title": "Profile"
|
|
62
|
+
},
|
|
63
|
+
"rename": {
|
|
64
|
+
"about": "Shown in the sidebar, and on every invitation sent from here.",
|
|
65
|
+
"limit": "Up to 32 characters.",
|
|
66
|
+
"save": "Save",
|
|
67
|
+
"title": "Workspace name"
|
|
68
|
+
},
|
|
69
|
+
"roles": {
|
|
70
|
+
"admin": "Admin",
|
|
71
|
+
"member": "Member",
|
|
72
|
+
"owner": "Owner"
|
|
73
|
+
},
|
|
74
|
+
"settings": {
|
|
75
|
+
"about": "The page body stacks plain sections. Each section has a title, a line under it and its content, with its actions at the end of the title's row, and a hairline separates two plain sections. The last is a card, which raises the one thing on the page that should not be pressed by accident.",
|
|
76
|
+
"title": "A settings page"
|
|
77
|
+
},
|
|
78
|
+
"size": {
|
|
79
|
+
"about": "Each size sets the title and the description one size smaller than itself, the actions one button size smaller, and the gaps between the bands. A section takes the size of the page it is on unless it states its own.",
|
|
80
|
+
"title": "Sizes"
|
|
81
|
+
},
|
|
82
|
+
"title": "Section",
|
|
83
|
+
"variant": {
|
|
84
|
+
"about": "A section raised as a card pads its bands and separates its footer with a hairline. A body told to bleed drops its padding, so a list runs to the card's edges with its own rules between the rows.",
|
|
85
|
+
"title": "As cards"
|
|
86
|
+
},
|
|
87
|
+
"workspace": {
|
|
88
|
+
"about": "What it is called, who is in it, and what reaches you.",
|
|
89
|
+
"title": "Workspace"
|
|
90
|
+
}
|
|
91
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
{
|
|
2
|
+
"about": "Lays out the navigation of an application as a column: a header and a footer that keep their height, and content that scrolls between them. Each block of destinations is a navigation landmark named by its label, and a search filters the rows of its scope. Inside an app shell panel that closes to icons, the sidebar becomes a rail of icons.",
|
|
3
|
+
"account": "Account",
|
|
4
|
+
"acme": "Acme",
|
|
5
|
+
"active": "Active",
|
|
6
|
+
"approvals": "Approvals",
|
|
7
|
+
"archived": "Archived",
|
|
8
|
+
"billing": "Billing",
|
|
9
|
+
"button": "Button",
|
|
10
|
+
"card": "Card",
|
|
11
|
+
"catalog": "Catalog",
|
|
12
|
+
"checkout": "Checkout",
|
|
13
|
+
"clearFilter": "Clear the filter",
|
|
14
|
+
"components": "Components",
|
|
15
|
+
"customers": "Customers",
|
|
16
|
+
"documentation": "Documentation",
|
|
17
|
+
"expenses": "Expenses",
|
|
18
|
+
"filter": "Filter…",
|
|
19
|
+
"filterPages": "Filter pages",
|
|
20
|
+
"filterPlaceholder": "Filter…",
|
|
21
|
+
"filterProjects": "Filter projects",
|
|
22
|
+
"filterProjectsHint": "Filter projects…",
|
|
23
|
+
"filtering": {
|
|
24
|
+
"about": "A search inside a block filters that block's rows. The query matches no page, so the block shows its empty message, which a screen reader hears as a polite status.",
|
|
25
|
+
"title": "Filter"
|
|
26
|
+
},
|
|
27
|
+
"findPage": "Find a page",
|
|
28
|
+
"findPageIn": "Find a page in {{section}}",
|
|
29
|
+
"general": "General",
|
|
30
|
+
"guides": "Guides",
|
|
31
|
+
"handbook": "Acme handbook",
|
|
32
|
+
"headings": {
|
|
33
|
+
"about": "One nav block named by `aria-label`, with a heading over each list. Each list takes its name from its heading through `aria-labelledby`.",
|
|
34
|
+
"title": "Headings"
|
|
35
|
+
},
|
|
36
|
+
"invoices": "Invoices",
|
|
37
|
+
"ledger": "Ledger",
|
|
38
|
+
"navigation": "Navigation",
|
|
39
|
+
"newProject": "New project",
|
|
40
|
+
"noMatch": "No pages match",
|
|
41
|
+
"onboarding": "Onboarding",
|
|
42
|
+
"overview": "Overview",
|
|
43
|
+
"pages": "Pages",
|
|
44
|
+
"person": "Mara Lindqvist",
|
|
45
|
+
"phone": {
|
|
46
|
+
"about": "The same console at a phone's width. The panel leaves the body, and the menu button opens the sidebar over the page: focus moves into it, the rest of the shell is inert, and its rows grow to a touch size. Choosing a row closes the sheet. Along the bottom, a navigation list in the `dock` variant lists the four destinations, each an icon over its label, and the left and right arrow keys move between them. The bar renders only while the shell is narrow.",
|
|
47
|
+
"title": "On a phone: a sheet and a bar along the bottom"
|
|
48
|
+
},
|
|
49
|
+
"pipelines": "Pipelines",
|
|
50
|
+
"places": "Places",
|
|
51
|
+
"platform": "Platform",
|
|
52
|
+
"platformEmpty": "Nothing matches",
|
|
53
|
+
"production": "Production",
|
|
54
|
+
"projects": "Projects",
|
|
55
|
+
"projectsEmpty": "No project by that name",
|
|
56
|
+
"query": "Zebra",
|
|
57
|
+
"reports": "Reports",
|
|
58
|
+
"revenue": "Revenue",
|
|
59
|
+
"rail": {
|
|
60
|
+
"about": "The sidebar collapsed to a rail of icons. The labels and the words in the header are hidden visually and remain available to screen readers. Each link shows its words in a tooltip on hover and on focus. The block controls are removed, and a search outside an app shell panel is removed.",
|
|
61
|
+
"title": "Rail"
|
|
62
|
+
},
|
|
63
|
+
"runs": "Runs",
|
|
64
|
+
"runsAbout": "Every pipeline run in the last seven days.",
|
|
65
|
+
"shell": {
|
|
66
|
+
"about": "The console in an app shell panel that closes to icons. Press the menu button to close the panel: every row shows its icon, with its label in a tooltip and in its accessible name, the search becomes a button that opens the panel again and moves focus to the field, and the words in the header are hidden visually. Below the `sm` breakpoint the panel leaves the body, and the menu button opens it over the page.",
|
|
67
|
+
"title": "In a shell, closing to icons"
|
|
68
|
+
},
|
|
69
|
+
"settings": "Settings",
|
|
70
|
+
"size": {
|
|
71
|
+
"about": "The three sizes. The size sets the padding, the gaps, the words in the header, the search field and the rows of every navigation list inside the sidebar.",
|
|
72
|
+
"title": "Sizes"
|
|
73
|
+
},
|
|
74
|
+
"start": "Getting started",
|
|
75
|
+
"theming": "Theming",
|
|
76
|
+
"title": "Sidebar",
|
|
77
|
+
"variant": {
|
|
78
|
+
"about": "The four looks. `outline` has a hairline at the inline end, `plain` is transparent, `subtle` has a muted ground, and `surface` has the panel ground, a hairline on every side and a shadow. Each sidebar renders in a room the width of a sidebar.",
|
|
79
|
+
"title": "Looks"
|
|
80
|
+
},
|
|
81
|
+
"warehouse": "Warehouse",
|
|
82
|
+
"whole": {
|
|
83
|
+
"about": "The search in the header filters every row, and the search in the Projects block filters that block. Rows that do not contain the query are hidden. A block left without rows shows its message, which a screen reader hears as a polite status, and a block without a message is hidden. Each block is a navigation landmark named by its label, so a screen reader lists Platform, Projects and Account. ⌘K moves focus to the header's search, and the down arrow moves from the field to the first row.",
|
|
84
|
+
"title": "In full"
|
|
85
|
+
},
|
|
86
|
+
"workspace": "Workspace"
|
|
87
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
{
|
|
2
|
+
"about": "A splitter lays panels out in a row or a column, with a resize trigger between each two. Drag a trigger, or focus it and move it with the arrow keys, Home and End. Enter collapses a collapsible panel before the trigger and restores its size. The panels keep their shares of the splitter as the window resizes.",
|
|
3
|
+
"basic": {
|
|
4
|
+
"detail": "Detail",
|
|
5
|
+
"empty": "Nothing selected.",
|
|
6
|
+
"offers": "Offers",
|
|
7
|
+
"resize": "Resize the offers",
|
|
8
|
+
"waiting": "Four waiting for a reply."
|
|
9
|
+
},
|
|
10
|
+
"controlled": {
|
|
11
|
+
"about": "The application holds the sizes: it passes them as size and takes each resize from onResize, so the text above the button reports them. Reset and a double click on the trigger restore the first sizes.",
|
|
12
|
+
"chart": "Chart",
|
|
13
|
+
"hint": "Double-click the trigger to restore the first sizes.",
|
|
14
|
+
"reset": "Reset",
|
|
15
|
+
"resize": "Resize the chart",
|
|
16
|
+
"sizes": "Chart {{chart}}%, table {{table}}%",
|
|
17
|
+
"table": "Table",
|
|
18
|
+
"title": "Controlled sizes"
|
|
19
|
+
},
|
|
20
|
+
"locked": {
|
|
21
|
+
"about": "The trigger is disabled until the switch turns editing on. A disabled trigger keeps its line, hides its pill and leaves the tab order.",
|
|
22
|
+
"activity": "Activity",
|
|
23
|
+
"activityText": "Twelve invoices were paid this week.",
|
|
24
|
+
"edit": "Edit layout",
|
|
25
|
+
"resize": "Resize the revenue",
|
|
26
|
+
"revenue": "Revenue",
|
|
27
|
+
"title": "Disabled trigger"
|
|
28
|
+
},
|
|
29
|
+
"mail": {
|
|
30
|
+
"about": "Three panels with a trigger between each two. The folders are 160px wide, between 112px and 280px, and keep that width as the window resizes. The messages and the message share the rest.",
|
|
31
|
+
"body": "The invoice is due on Friday. Reply to ask for more time.",
|
|
32
|
+
"folder": "Folders",
|
|
33
|
+
"folders": {
|
|
34
|
+
"archive": "Archive",
|
|
35
|
+
"inbox": "Inbox",
|
|
36
|
+
"sent": "Sent"
|
|
37
|
+
},
|
|
38
|
+
"inbox": "Inbox",
|
|
39
|
+
"messages": {
|
|
40
|
+
"invoice": "Invoice 1042 is due",
|
|
41
|
+
"offsite": "Agenda for the offsite",
|
|
42
|
+
"standup": "Notes from the standup"
|
|
43
|
+
},
|
|
44
|
+
"resizeFolders": "Resize the folders",
|
|
45
|
+
"resizeMessages": "Resize the messages",
|
|
46
|
+
"subject": "Invoice 1042 is due",
|
|
47
|
+
"title": "Three panels"
|
|
48
|
+
},
|
|
49
|
+
"nested": {
|
|
50
|
+
"about": "A splitter in a column inside a panel of a splitter in a row. Each trigger resizes the two panels beside it.",
|
|
51
|
+
"editor": "Editor",
|
|
52
|
+
"editorText": "The file open for editing.",
|
|
53
|
+
"output": "Output",
|
|
54
|
+
"outputText": "The build finished in four seconds.",
|
|
55
|
+
"project": "Project",
|
|
56
|
+
"projectText": "Eleven files in three folders.",
|
|
57
|
+
"resizeOutput": "Resize the output",
|
|
58
|
+
"resizeProject": "Resize the project",
|
|
59
|
+
"title": "Nested splitters"
|
|
60
|
+
},
|
|
61
|
+
"notes": {
|
|
62
|
+
"about": "The list of notes collapses and expands from the button beside the note's title, and from Enter on the trigger, which restores the list to its width before it collapsed. The list is between a fifth and a half of the splitter wide.",
|
|
63
|
+
"body": "The launch moves to the first week of November. Marketing needs the final screenshots by the end of October.",
|
|
64
|
+
"list": "Notes list",
|
|
65
|
+
"resize": "Resize the notes list",
|
|
66
|
+
"title": "Collapsible panel",
|
|
67
|
+
"titles": {
|
|
68
|
+
"budget": "Budget",
|
|
69
|
+
"hiring": "Hiring",
|
|
70
|
+
"launch": "Launch plan",
|
|
71
|
+
"offsite": "Offsite"
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"palette": {
|
|
75
|
+
"about": "Palette colours the line and the pill while the pointer is over the trigger, while it has focus and while it drags, and colours the focus ring. Each trigger here has focus.",
|
|
76
|
+
"title": "Palettes"
|
|
77
|
+
},
|
|
78
|
+
"query": {
|
|
79
|
+
"about": "The panels sit in a column. The arrow keys move the trigger five percent at a time, and Enter collapses the query to give the results the whole height.",
|
|
80
|
+
"editor": "Query",
|
|
81
|
+
"resize": "Resize the query",
|
|
82
|
+
"results": "Results",
|
|
83
|
+
"rows": {
|
|
84
|
+
"ada": "Ada Lovelace",
|
|
85
|
+
"grace": "Grace Hopper",
|
|
86
|
+
"katherine": "Katherine Johnson",
|
|
87
|
+
"margaret": "Margaret Hamilton"
|
|
88
|
+
},
|
|
89
|
+
"statement": "select name from pioneers order by name",
|
|
90
|
+
"title": "Vertical"
|
|
91
|
+
},
|
|
92
|
+
"title": "Splitter"
|
|
93
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
{
|
|
2
|
+
"about": "Shows the current workspace, project or environment in a control that opens a menu of the others. Pass `items` and the switcher renders the control and the menu, with `Switcher.Action` rows after a separator. It takes its shape from where it renders: a row in a sidebar, its mark alone once the sidebar closes to icons, one of a toolbar's controls with its name hidden when the toolbar is narrow, and one line on its own. The control is a menu trigger, so the roles, the keys and the positioning are the menu's.",
|
|
3
|
+
"acme": "Acme Corp",
|
|
4
|
+
"alone": {
|
|
5
|
+
"about": "Anywhere else the switcher is one line: the mark, the name and the indicator. Each workspace has a page of its own, so each row is a link, and the current workspace is the page the reader is on. Open the menu from the keyboard and move through the rows with the arrow keys.",
|
|
6
|
+
"title": "On its own"
|
|
7
|
+
},
|
|
8
|
+
"application": "Application",
|
|
9
|
+
"composed": {
|
|
10
|
+
"about": "An environment switcher composed from the parts in a toolbar: `Switcher.Trigger` rendered through `Toolbar.Item`, so it is one of the row's arrow-key stops, and the menu's own rows. Its menu is as wide as its widest row.",
|
|
11
|
+
"title": "Composed from parts"
|
|
12
|
+
},
|
|
13
|
+
"deploy": "Deploy",
|
|
14
|
+
"deployments": "Deployments",
|
|
15
|
+
"enterprise": "Enterprise",
|
|
16
|
+
"environment": "Environment",
|
|
17
|
+
"filter": "Filter…",
|
|
18
|
+
"findPage": "Find a page",
|
|
19
|
+
"ledger": "Ledger",
|
|
20
|
+
"navigation": "Navigation",
|
|
21
|
+
"new": "New workspace",
|
|
22
|
+
"newRun": "New run",
|
|
23
|
+
"northwind": "Northwind",
|
|
24
|
+
"oldBooks": "Old Books",
|
|
25
|
+
"overview": "Overview",
|
|
26
|
+
"palette": {
|
|
27
|
+
"about": "The eight palettes on the subtle look. The palette colours the look and the mark.",
|
|
28
|
+
"title": "Palettes"
|
|
29
|
+
},
|
|
30
|
+
"pipelines": "Pipelines",
|
|
31
|
+
"placement": {
|
|
32
|
+
"about": "The three placements, which `Switcher.Root` reads from the sidebar or the toolbar around it. In a sidebar the control fills the column and shows the detail under the name. In a toolbar and on its own it is one line as wide as its words.",
|
|
33
|
+
"title": "Placements"
|
|
34
|
+
},
|
|
35
|
+
"platform": "Platform",
|
|
36
|
+
"preview": "Preview",
|
|
37
|
+
"production": "Production",
|
|
38
|
+
"runs": "Runs",
|
|
39
|
+
"settings": "Workspace settings",
|
|
40
|
+
"sidebar": {
|
|
41
|
+
"about": "At the head of a sidebar the switcher is a row as wide as the sidebar: the workspace's mark, its name over its plan, and the indicator. It takes the sidebar's size. Press the menu button to close the sidebar to icons: the row becomes the mark alone, square and in line with the rows under it, with the name in a tooltip and in its accessible name. The menu opens as wide as the row, with the current workspace checked and an action after a separator.",
|
|
42
|
+
"title": "In a sidebar"
|
|
43
|
+
},
|
|
44
|
+
"size": {
|
|
45
|
+
"about": "The three sizes in a sidebar. In an app shell the switcher takes the sidebar's size.",
|
|
46
|
+
"title": "Sizes"
|
|
47
|
+
},
|
|
48
|
+
"staging": "Staging",
|
|
49
|
+
"suspended": "Suspended",
|
|
50
|
+
"title": "Switcher",
|
|
51
|
+
"toolbar": {
|
|
52
|
+
"about": "In a toolbar the switcher is one of the row's controls at the toolbar's size, so the arrow keys reach it. The name is one line with no detail under it. At a phone's width the toolbar is narrow, the name is hidden visually, and the mark and the indicator remain.",
|
|
53
|
+
"title": "In a toolbar"
|
|
54
|
+
},
|
|
55
|
+
"trial": "Trial, 12 days left",
|
|
56
|
+
"variant": {
|
|
57
|
+
"about": "The button's six looks. `ghost`, the default, has no fill at rest and fills under the pointer. `outline` has the button's light edge.",
|
|
58
|
+
"title": "Looks"
|
|
59
|
+
},
|
|
60
|
+
"workspace": "Workspace"
|
|
61
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"about": "A theme switcher changes the theme an application wears. It renders `Switcher.Root` with a row per theme the shell offers, each with a swatch of that theme's primary colour, so a pick restyles the page, and the shell keeps the choice under the application's name. It renders nothing where the application offers one theme. Import it from `@stealthscale/component-screen/shell`. Every switcher on this page switches the catalogue itself.",
|
|
3
|
+
"application": "Application",
|
|
4
|
+
"label": "Theme",
|
|
5
|
+
"looks": {
|
|
6
|
+
"about": "The switcher takes the looks of `Switcher.Root`, so a bar sets the look it uses for its other controls. Each shows the swatch of the theme in force, its name and the indicator.",
|
|
7
|
+
"title": "Looks"
|
|
8
|
+
},
|
|
9
|
+
"product": "Ledger",
|
|
10
|
+
"title": "Theme switcher",
|
|
11
|
+
"toolbar": {
|
|
12
|
+
"about": "At the end of an application's bar the switcher is one of the toolbar's controls at the toolbar's size, so the arrow keys move focus to it.",
|
|
13
|
+
"title": "In a toolbar"
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
{
|
|
2
|
+
"about": "Renders a row of controls over a document, a table or a list, with one tab stop for the row. The arrow keys move between the controls. A row folds its actions, its links and its search on its own when it is narrower than the `sm` breakpoint, and while its controls need more room than it has.",
|
|
3
|
+
"april": "April",
|
|
4
|
+
"bold": "Bold",
|
|
5
|
+
"catalogue": "Catalogue",
|
|
6
|
+
"clearFind": "Clear the search",
|
|
7
|
+
"clearSearch": "Clear the search",
|
|
8
|
+
"closed": "Closed",
|
|
9
|
+
"columns": "Columns",
|
|
10
|
+
"crowded": {
|
|
11
|
+
"about": "The same toolbar at the card's width and in a room 42rem wide. In the room the row is wider than the `sm` breakpoint, but its controls need more room than it has, so it folds as a narrow row does. Export shows its icon alone, the links and the plain actions move into the menu at the end, and New order keeps its words. The row measures its controls again when its width or the window's width changes, and unfolds once they fit.",
|
|
12
|
+
"title": "Crowded"
|
|
13
|
+
},
|
|
14
|
+
"dark": "Dark",
|
|
15
|
+
"deploys": "Deploys",
|
|
16
|
+
"draft": "Untitled draft",
|
|
17
|
+
"drafts": "Drafts",
|
|
18
|
+
"duplicate": "Duplicate",
|
|
19
|
+
"editing": "Editing",
|
|
20
|
+
"export": "Export",
|
|
21
|
+
"filter": "Filter",
|
|
22
|
+
"find": "Find in draft",
|
|
23
|
+
"findPlaceholder": "Find…",
|
|
24
|
+
"folding": {
|
|
25
|
+
"about": "The same toolbar at the card's width and at a phone's width. The row measures itself. Narrow, the search folds to a button with its magnifier, and the button opens the field over the whole row. The action with an icon shows the icon alone, the links and the plain actions move into the menu at the end, the primary action keeps its words, and the title in the centre is cut short.",
|
|
26
|
+
"title": "Wide and folded for a phone"
|
|
27
|
+
},
|
|
28
|
+
"import": "Import",
|
|
29
|
+
"invoices": "Invoices",
|
|
30
|
+
"italic": "Italic",
|
|
31
|
+
"ledger": "Ledger",
|
|
32
|
+
"light": "Light",
|
|
33
|
+
"longTitle": "A title long enough to be cut short on a phone, which it is",
|
|
34
|
+
"loose": {
|
|
35
|
+
"about": "A control outside `Toolbar.Item`, `Toolbar.Action` and `Toolbar.Link` is a tab stop of its own, outside the arrow keys. The light and dark buttons are one such pair.",
|
|
36
|
+
"title": "Controls outside the arrow keys"
|
|
37
|
+
},
|
|
38
|
+
"menu": "Menu",
|
|
39
|
+
"more": "More invoice actions",
|
|
40
|
+
"moreLedger": "More of Ledger",
|
|
41
|
+
"moreOrders": "More order actions",
|
|
42
|
+
"morePublishing": "More publishing actions",
|
|
43
|
+
"newDeploy": "New deploy",
|
|
44
|
+
"newOrder": "New order",
|
|
45
|
+
"open": "Open",
|
|
46
|
+
"orders": "Orders",
|
|
47
|
+
"overview": "Overview",
|
|
48
|
+
"pages": "Pages",
|
|
49
|
+
"print": "Print",
|
|
50
|
+
"publish": "Publish",
|
|
51
|
+
"published": "Published",
|
|
52
|
+
"publishing": "Publishing",
|
|
53
|
+
"radius": {
|
|
54
|
+
"about": "Every corner of an outlined row.",
|
|
55
|
+
"title": "Corners"
|
|
56
|
+
},
|
|
57
|
+
"returned": "Returned",
|
|
58
|
+
"search": "Search invoices",
|
|
59
|
+
"settings": "Settings",
|
|
60
|
+
"share": "Share",
|
|
61
|
+
"shipped": "Shipped",
|
|
62
|
+
"size": {
|
|
63
|
+
"about": "The three sizes. The size sets the gaps, the separator and every button in the row.",
|
|
64
|
+
"title": "Sizes"
|
|
65
|
+
},
|
|
66
|
+
"title": "Toolbar",
|
|
67
|
+
"titled": {
|
|
68
|
+
"about": "`Toolbar.Title` is the row's title. It is semibold and leaves twice the row's gap after it, so the first link reads as one of the row's controls and not as part of the title. A narrow row keeps the title and moves the links into its menu.",
|
|
69
|
+
"title": "A title before the links"
|
|
70
|
+
},
|
|
71
|
+
"underline": "Underline",
|
|
72
|
+
"variant": {
|
|
73
|
+
"about": "The three looks: plain, outline and surface. An outlined or surface row pads its controls by its own gap.",
|
|
74
|
+
"title": "Looks"
|
|
75
|
+
},
|
|
76
|
+
"whole": {
|
|
77
|
+
"about": "The start band, the centre band and the end band. The row is one tab stop. The arrow keys move between its controls and continue at the other end, and Home and End move to its first and last control. The formatting controls are a group pressed together, and each one is a toggle with `aria-pressed`.",
|
|
78
|
+
"title": "Three bands"
|
|
79
|
+
}
|
|
80
|
+
}
|