@danxbot/ui 20.23.3 → 21.1.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/index.js +23607 -22540
- package/dist/index.js.map +1 -1
- package/dist/pure.js +290 -210
- package/dist/pure.js.map +1 -1
- package/dist/types/components/AppShell.d.ts +1 -1
- package/dist/types/components/Board.d.ts +4 -6
- package/dist/types/components/Card.d.ts +25 -1
- package/dist/types/components/Combobox.d.ts +2 -1
- package/dist/types/components/CommandPalette.d.ts +2 -0
- package/dist/types/components/DateField.d.ts +2 -2
- package/dist/types/components/DragDrop.d.ts +2 -4
- package/dist/types/components/InlineEdit.d.ts +4 -4
- package/dist/types/components/InlineMarkdownEdit.d.ts +2 -2
- package/dist/types/components/PagedWindowList.d.ts +1 -9
- package/dist/types/components/Progress.d.ts +4 -4
- package/dist/types/components/ReadMore.d.ts +2 -2
- package/dist/types/components/SecretField.d.ts +1 -1
- package/dist/types/components/Slider.d.ts +1 -1
- package/dist/types/components/SortMenu.d.ts +1 -1
- package/dist/types/components/Stat.d.ts +1 -1
- package/dist/types/components/StatusSelect.d.ts +1 -1
- package/dist/types/components/TriStateSwitch.d.ts +1 -7
- package/dist/types/components/board/context.d.ts +2 -4
- package/dist/types/components/calendar/CalendarMonth.d.ts +2 -3
- package/dist/types/components/calendar/CalendarTimeGrid.d.ts +1 -2
- package/dist/types/components/calendar/EventActions.d.ts +1 -2
- package/dist/types/components/calendar/format.d.ts +10 -9
- package/dist/types/components/calendar/use-calendar-drag.d.ts +0 -1
- package/dist/types/components/calendar/use-event-keyboard.d.ts +0 -1
- package/dist/types/components/chart/BarList.d.ts +1 -1
- package/dist/types/components/chart/ShareBar.d.ts +1 -1
- package/dist/types/components/chart/TimeSeriesChart.d.ts +2 -4
- package/dist/types/components/chart/shared.d.ts +2 -2
- package/dist/types/components/chart/time-series-scale.d.ts +1 -1
- package/dist/types/components/chat/EffortControl.d.ts +2 -2
- package/dist/types/components/chat/MessageScroller.d.ts +1 -1
- package/dist/types/components/checklist/StatusChecklist.d.ts +1 -1
- package/dist/types/components/edit/outcome.d.ts +0 -12
- package/dist/types/components/file-viewer/frames.d.ts +2 -1
- package/dist/types/components/kanban/KanbanBoard.d.ts +2 -21
- package/dist/types/components/kanban/types.d.ts +1 -1
- package/dist/types/components/markdown/Affordances.d.ts +3 -1
- package/dist/types/components/openapi/resolve.d.ts +7 -3
- package/dist/types/components/openapi/types.d.ts +2 -1
- package/dist/types/components/provenance/ConfidenceBar.d.ts +1 -1
- package/dist/types/components/provenance/ConfidenceReadout.d.ts +2 -2
- package/dist/types/components/provenance/ProvenanceBadge.d.ts +4 -3
- package/dist/types/components/provenance/ProvenanceDetail.d.ts +4 -6
- package/dist/types/components/provenance/ProvenanceDisclosure.d.ts +1 -1
- package/dist/types/components/provenance/absence.d.ts +4 -3
- package/dist/types/components/rbac/RoleKeyPicker.d.ts +1 -1
- package/dist/types/components/rbac/permissionSections.d.ts +1 -1
- package/dist/types/components/rbac/stagedForm.d.ts +4 -4
- package/dist/types/components/roadmap/RoadmapItemCard.d.ts +0 -1
- package/dist/types/index.d.ts +9 -7
- package/dist/types/lib/board/index.d.ts +2 -1
- package/dist/types/lib/board/move.d.ts +2 -2
- package/dist/types/lib/board/rejection.d.ts +8 -0
- package/dist/types/lib/board/types.d.ts +46 -0
- package/dist/types/lib/board/use-board.d.ts +2 -2
- package/dist/types/lib/calendar/drag.d.ts +1 -1
- package/dist/types/lib/calendar/index.d.ts +1 -1
- package/dist/types/lib/calendar/types.d.ts +3 -3
- package/dist/types/lib/confidence.d.ts +5 -0
- package/dist/types/lib/dnd/announce.d.ts +5 -23
- package/dist/types/lib/dnd/index.d.ts +1 -1
- package/dist/types/lib/format.d.ts +19 -18
- package/dist/types/lib/i18n/areas/auth-provenance-flows.d.ts +258 -0
- package/dist/types/lib/i18n/areas/board.d.ts +51 -0
- package/dist/types/lib/i18n/areas/chat-chart.d.ts +164 -0
- package/dist/types/lib/i18n/areas/code-editor.d.ts +40 -0
- package/dist/types/lib/i18n/areas/dates.d.ts +103 -0
- package/dist/types/lib/i18n/areas/docs-views.d.ts +268 -0
- package/dist/types/lib/i18n/areas/feedback.d.ts +104 -0
- package/dist/types/lib/i18n/areas/formats.d.ts +30 -0
- package/dist/types/lib/i18n/areas/forms.d.ts +130 -0
- package/dist/types/lib/i18n/areas/markdown.d.ts +139 -0
- package/dist/types/lib/i18n/areas/move-rejected.d.ts +16 -0
- package/dist/types/lib/i18n/areas/navigation.d.ts +144 -0
- package/dist/types/lib/i18n/areas/rbac.d.ts +584 -0
- package/dist/types/lib/i18n/emphasis.d.ts +3 -0
- package/dist/types/lib/i18n/index.d.ts +8 -0
- package/dist/types/lib/i18n/number-format.d.ts +5 -0
- package/dist/types/lib/i18n/plural.d.ts +7 -0
- package/dist/types/lib/i18n/provider.d.ts +16 -0
- package/dist/types/lib/i18n/strings.d.ts +15 -0
- package/dist/types/lib/intl-cache.d.ts +31 -0
- package/dist/types/lib/markdown/commands.d.ts +4 -2
- package/dist/types/lib/markdown/dom.d.ts +27 -21
- package/dist/types/lib/markdown/hotkeys.d.ts +12 -5
- package/dist/types/lib/markdown/image-decoration.d.ts +22 -1
- package/dist/types/lib/markdown/image-pipeline.d.ts +2 -0
- package/dist/types/lib/markdown/images.d.ts +1 -1
- package/dist/types/lib/markdown/reconcile.d.ts +4 -2
- package/dist/types/lib/markdown/surface.d.ts +4 -2
- package/dist/types/lib/reduced-motion-help.d.ts +2 -1
- package/dist/types/lib/time/relativeAge.d.ts +3 -2
- package/dist/types/lib/time/zone.d.ts +9 -0
- package/dist/types/lib/values/boolean.d.ts +11 -10
- package/dist/types/lib/values/currency.d.ts +5 -5
- package/dist/types/lib/values/date.d.ts +4 -4
- package/dist/types/lib/values/datetime.d.ts +3 -3
- package/dist/types/lib/values/locale-date.d.ts +34 -0
- package/dist/types/lib/values/number.d.ts +5 -5
- package/dist/types/pure.d.ts +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,584 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import type { Emphasis } from "../emphasis";
|
|
3
|
+
export interface RbacStrings {
|
|
4
|
+
/** The pieces `AccessRequestPanel` and `PermissionRequestPanel` share (`approvalPanelParts.tsx`). */
|
|
5
|
+
approval: {
|
|
6
|
+
/** The badge in the request header, by request state. */
|
|
7
|
+
state: {
|
|
8
|
+
pending: string;
|
|
9
|
+
approved: string;
|
|
10
|
+
denied: string;
|
|
11
|
+
expired: string;
|
|
12
|
+
claimed: string;
|
|
13
|
+
};
|
|
14
|
+
/** The title of the readout for a settled request, by state. */
|
|
15
|
+
terminalTitle: {
|
|
16
|
+
approved: string;
|
|
17
|
+
claimed: string;
|
|
18
|
+
denied: string;
|
|
19
|
+
expired: string;
|
|
20
|
+
};
|
|
21
|
+
/** Title of the callout that shows the confirm code to compare. */
|
|
22
|
+
confirmCodeTitle: string;
|
|
23
|
+
/** Line under the shown confirm code. */
|
|
24
|
+
confirmCodeCompare: string;
|
|
25
|
+
/** Label of the field the approver types the confirm code into. */
|
|
26
|
+
confirmCodeLabel: string;
|
|
27
|
+
/** Help text under the confirm code field. */
|
|
28
|
+
confirmCodeEntryHint: string;
|
|
29
|
+
/** Error under the confirm code field when what was typed is wrong. */
|
|
30
|
+
confirmCodeMismatch: string;
|
|
31
|
+
/** Fallback error text when an approve / deny call rejects without a message, by action. */
|
|
32
|
+
failedMessage: {
|
|
33
|
+
approve: string;
|
|
34
|
+
deny: string;
|
|
35
|
+
};
|
|
36
|
+
/** Title of the error callout when an approve / deny call rejects, by action. */
|
|
37
|
+
failedTitle: {
|
|
38
|
+
approve: string;
|
|
39
|
+
deny: string;
|
|
40
|
+
};
|
|
41
|
+
/** The Deny button. */
|
|
42
|
+
deny: string;
|
|
43
|
+
/** The Approve button. */
|
|
44
|
+
approve: string;
|
|
45
|
+
/** Last line of the Expired readout when the consumer gave a note. */
|
|
46
|
+
expiredNothingGranted: string;
|
|
47
|
+
/** Term of the fact row naming when the request was made. */
|
|
48
|
+
requested: string;
|
|
49
|
+
/** Term of the fact row naming when a pending request expires. */
|
|
50
|
+
expires: string;
|
|
51
|
+
/** Title of the warning callout above a pending request's decision. */
|
|
52
|
+
approveOnlyTitle: string;
|
|
53
|
+
};
|
|
54
|
+
/** `AccessRequestPanel`. */
|
|
55
|
+
accessRequest: {
|
|
56
|
+
/** Heading of the panel. */
|
|
57
|
+
title: string;
|
|
58
|
+
/** Fact row "Kind" value for a request from an agent session. */
|
|
59
|
+
kindSession: string;
|
|
60
|
+
/** Fact row "Kind" value for a request from a worker. */
|
|
61
|
+
kindWorker: string;
|
|
62
|
+
/** Term of the fact row naming the kind of requester. */
|
|
63
|
+
kind: string;
|
|
64
|
+
/** Term of the fact row naming a worker requester. */
|
|
65
|
+
worker: string;
|
|
66
|
+
/** Term of the fact row naming a session requester. */
|
|
67
|
+
session: string;
|
|
68
|
+
/** Term of the fact row naming the repository. */
|
|
69
|
+
repository: string;
|
|
70
|
+
/** Term of the fact row naming the machine. */
|
|
71
|
+
machine: string;
|
|
72
|
+
/** Term of the fact row showing the requester's address. */
|
|
73
|
+
address: string;
|
|
74
|
+
/** Term of the fact row showing the requester's client version. */
|
|
75
|
+
clientVersion: string;
|
|
76
|
+
/** Readout for an approved request; `role` is the granted role's label, when known. */
|
|
77
|
+
approved: (role: string | undefined) => string;
|
|
78
|
+
/** Readout for a claimed request; `role` is the granted role's label, when known. */
|
|
79
|
+
claimed: (role: string | undefined) => string;
|
|
80
|
+
/** Readout for a denied request. */
|
|
81
|
+
denied: string;
|
|
82
|
+
/** Readout for an expired request when the consumer gave no note. */
|
|
83
|
+
expiredFallback: string;
|
|
84
|
+
/** Body of the "Approve only if you started this" callout. */
|
|
85
|
+
approveBody: (kind: "session" | "worker", typedCode: boolean) => string;
|
|
86
|
+
/** Title of the callout shown when no role can be granted. */
|
|
87
|
+
noRoleTitle: string;
|
|
88
|
+
/** Body of the callout shown when no role can be granted. */
|
|
89
|
+
noRoleBody: string;
|
|
90
|
+
/** Description under the role picker; `isDefault` is true when the consumer's default role was preselected. */
|
|
91
|
+
roleHint: (roleLabel: string, isDefault: boolean) => string;
|
|
92
|
+
};
|
|
93
|
+
/** `PermissionRequestPanel`. */
|
|
94
|
+
permissionRequest: {
|
|
95
|
+
/** Heading of the panel. */
|
|
96
|
+
title: string;
|
|
97
|
+
/** Note under a requested permission the approver does not hold. */
|
|
98
|
+
notHeld: string;
|
|
99
|
+
/** Term of the fact row naming the key that is asking. */
|
|
100
|
+
key: string;
|
|
101
|
+
/** Caption above the agent's stated reason. */
|
|
102
|
+
reasonGiven: string;
|
|
103
|
+
/** Readout for an approved request that lists what was granted. */
|
|
104
|
+
approvedWithList: string;
|
|
105
|
+
/** Readout for an approved request with no list of what was granted. */
|
|
106
|
+
approvedNoList: string;
|
|
107
|
+
/** Readout for a claimed request that lists what was granted. */
|
|
108
|
+
claimedWithList: string;
|
|
109
|
+
/** Readout for a claimed request with no list of what was granted. */
|
|
110
|
+
claimedNoList: string;
|
|
111
|
+
/** Readout for a denied request. */
|
|
112
|
+
denied: string;
|
|
113
|
+
/** Readout for an expired request when the consumer gave no note. */
|
|
114
|
+
expiredFallback: string;
|
|
115
|
+
/** Body of the "Approve only if you started this" callout. */
|
|
116
|
+
approveBody: string;
|
|
117
|
+
/** Title of the callout shown when the approver holds none of the requested permissions. */
|
|
118
|
+
emptyTitle: string;
|
|
119
|
+
/** Body of the callout shown when the approver holds none of the requested permissions. */
|
|
120
|
+
emptyDescription: string;
|
|
121
|
+
/** Section heading for requested permissions that carry no category, when others do. */
|
|
122
|
+
otherCategory: string;
|
|
123
|
+
/** Legend of the list of requested permissions. */
|
|
124
|
+
legend: string;
|
|
125
|
+
/** Description under the legend of the list of requested permissions. */
|
|
126
|
+
legendDescription: string;
|
|
127
|
+
};
|
|
128
|
+
/** `RoleKeyPicker`. */
|
|
129
|
+
roleKeyPicker: {
|
|
130
|
+
/** Default heading of the picker. */
|
|
131
|
+
label: string;
|
|
132
|
+
/** Default line under the heading. */
|
|
133
|
+
description: string;
|
|
134
|
+
/** Why a role cannot be chosen, naming the permissions the person lacks. */
|
|
135
|
+
unavailable: (permissionLabels: string[]) => string;
|
|
136
|
+
};
|
|
137
|
+
/** `ApiKeysPanel`. */
|
|
138
|
+
apiKeysPanel: {
|
|
139
|
+
/** Heading of the panel. */
|
|
140
|
+
title: string;
|
|
141
|
+
/** The button that opens the create dialog. */
|
|
142
|
+
createKey: string;
|
|
143
|
+
/** Title of the empty state. */
|
|
144
|
+
emptyTitle: string;
|
|
145
|
+
/** Description of the empty state. */
|
|
146
|
+
emptyDescription: string;
|
|
147
|
+
/** Title of the create dialog. */
|
|
148
|
+
dialogTitle: string;
|
|
149
|
+
/** Description of the create dialog. */
|
|
150
|
+
dialogDescription: string;
|
|
151
|
+
/** The create dialog's cancel button. */
|
|
152
|
+
cancel: string;
|
|
153
|
+
/** The create dialog's submit button. */
|
|
154
|
+
create: string;
|
|
155
|
+
/** Title of the error callout when creating fails. */
|
|
156
|
+
failedTitle: string;
|
|
157
|
+
/** Fallback error text when creating rejects without a message. */
|
|
158
|
+
failedMessage: string;
|
|
159
|
+
/** Label of the key name field. */
|
|
160
|
+
nameLabel: string;
|
|
161
|
+
/** Description of the key name field. */
|
|
162
|
+
nameDescription: string;
|
|
163
|
+
/** Placeholder of the key name field. */
|
|
164
|
+
namePlaceholder: string;
|
|
165
|
+
/** Label of the expiry days field. */
|
|
166
|
+
expiresLabel: string;
|
|
167
|
+
/** Description of the expiry days field. */
|
|
168
|
+
expiresDescription: string;
|
|
169
|
+
/** Placeholder of the expiry days field. */
|
|
170
|
+
expiresPlaceholder: string;
|
|
171
|
+
/** Title of the dialog that shows the new key once. */
|
|
172
|
+
revealedTitle: string;
|
|
173
|
+
/** Description of the dialog that shows the new key once. */
|
|
174
|
+
revealedDescription: string;
|
|
175
|
+
/** The button that closes the reveal dialog. */
|
|
176
|
+
done: string;
|
|
177
|
+
/** Label of the field showing the new key. */
|
|
178
|
+
revealedLabel: string;
|
|
179
|
+
/** Label of the button that copies the new key. */
|
|
180
|
+
copyKey: string;
|
|
181
|
+
};
|
|
182
|
+
/** `ApiKeysTable` (also `AgentKeysList`). */
|
|
183
|
+
apiKeysTable: {
|
|
184
|
+
/** Column header: the key's name. */
|
|
185
|
+
columnKey: string;
|
|
186
|
+
/** Column header: the key's role. */
|
|
187
|
+
columnRole: string;
|
|
188
|
+
/** Column header: when the key was last used. */
|
|
189
|
+
columnLastUsed: string;
|
|
190
|
+
/** Column header: when the key expires. */
|
|
191
|
+
columnExpires: string;
|
|
192
|
+
/** Cell text for a key never used or with no expiry. */
|
|
193
|
+
never: string;
|
|
194
|
+
/** Under a key's name: how long ago it was created; `age` is the formatted age. */
|
|
195
|
+
created: (age: string) => string;
|
|
196
|
+
/** Accessible name of a key's role selector. */
|
|
197
|
+
roleOf: (keyName: string) => string;
|
|
198
|
+
/** Refusal on a role the owner cannot assign. */
|
|
199
|
+
roleNotAssignable: string;
|
|
200
|
+
/** Accessible name of the revoke key button. */
|
|
201
|
+
revoke: (keyName: string) => string;
|
|
202
|
+
/** Tooltip on the revoke button while a revoke runs. */
|
|
203
|
+
revoking: string;
|
|
204
|
+
/** Title of the revoke key confirmation. */
|
|
205
|
+
revokeTitle: (keyName: string) => string;
|
|
206
|
+
/** Description of the revoke key confirmation. */
|
|
207
|
+
revokeDescription: string;
|
|
208
|
+
/** Confirm button of the revoke key confirmation. */
|
|
209
|
+
revokeConfirm: string;
|
|
210
|
+
/** Accessible name of the list of permissions added to a key. */
|
|
211
|
+
grantsOf: (keyName: string) => string;
|
|
212
|
+
/** Accessible name of the button that removes a granted permission. */
|
|
213
|
+
removeGrant: (permissionLabel: string, keyName: string) => string;
|
|
214
|
+
/** Tooltip on the remove-grant button while an update runs. */
|
|
215
|
+
updating: string;
|
|
216
|
+
/** Title of the remove-grant confirmation. */
|
|
217
|
+
removeGrantTitle: (permissionLabel: string) => string;
|
|
218
|
+
/** Description of the remove-grant confirmation. */
|
|
219
|
+
removeGrantDescription: string;
|
|
220
|
+
/** Confirm button of the remove-grant confirmation. */
|
|
221
|
+
removeGrantConfirm: string;
|
|
222
|
+
/** Line under a granted permission; `age` is the formatted age, `reason` the agent's reason when given. */
|
|
223
|
+
granted: (age: string, reason: string | undefined) => string;
|
|
224
|
+
};
|
|
225
|
+
/** `AgentKeysList`. */
|
|
226
|
+
agentKeysList: {
|
|
227
|
+
/** Title of the empty state. */
|
|
228
|
+
emptyTitle: string;
|
|
229
|
+
/** Description of the empty state. */
|
|
230
|
+
emptyDescription: string;
|
|
231
|
+
};
|
|
232
|
+
/** `DevToolsPopover`. */
|
|
233
|
+
devTools: {
|
|
234
|
+
/** Visible label of the trigger button (hidden below the sm breakpoint). */
|
|
235
|
+
trigger: string;
|
|
236
|
+
/** Accessible name of the trigger button. */
|
|
237
|
+
triggerLabel: string;
|
|
238
|
+
/** Heading of the "view as a role" section. */
|
|
239
|
+
viewAs: string;
|
|
240
|
+
/** Accessible name of the role select. */
|
|
241
|
+
viewAsLabel: string;
|
|
242
|
+
/** Placeholder of the role select while no role is impersonated. */
|
|
243
|
+
actualRole: string;
|
|
244
|
+
/** Name used for the impersonated role when it cannot be found. */
|
|
245
|
+
unknownRole: string;
|
|
246
|
+
/** The impersonation notice; `emphasis` wraps the role's name in the caller's emphasis markup. */
|
|
247
|
+
viewingAs: (role: string, emphasis: Emphasis) => ReactNode;
|
|
248
|
+
/** The button that stops impersonating. */
|
|
249
|
+
resetToActual: string;
|
|
250
|
+
/** Heading and accessible name of the data source section. */
|
|
251
|
+
dataSource: string;
|
|
252
|
+
/** Label of each data source option. */
|
|
253
|
+
dataSources: {
|
|
254
|
+
simulated: string;
|
|
255
|
+
live: string;
|
|
256
|
+
};
|
|
257
|
+
/** Note shown when the data source is set to live. */
|
|
258
|
+
liveNotConfigured: string;
|
|
259
|
+
/** Heading and accessible name of the network speed section. */
|
|
260
|
+
networkSpeed: string;
|
|
261
|
+
/** Label of each network speed option. */
|
|
262
|
+
networkSpeeds: {
|
|
263
|
+
instant: string;
|
|
264
|
+
fast: string;
|
|
265
|
+
typical: string;
|
|
266
|
+
flaky: string;
|
|
267
|
+
};
|
|
268
|
+
/** The button that opens the regenerate confirmation. */
|
|
269
|
+
regenerate: string;
|
|
270
|
+
/** Title of the regenerate confirmation. */
|
|
271
|
+
regenerateTitle: string;
|
|
272
|
+
/** Description of the regenerate confirmation. */
|
|
273
|
+
regenerateDescription: string;
|
|
274
|
+
/** Confirm button of the regenerate confirmation. */
|
|
275
|
+
regenerateConfirm: string;
|
|
276
|
+
/** The button that opens the use-case ledger. */
|
|
277
|
+
openLedger: string;
|
|
278
|
+
};
|
|
279
|
+
/** `InvitationsList`. */
|
|
280
|
+
invitationsList: {
|
|
281
|
+
/** Column header: who was invited. */
|
|
282
|
+
columnInvitee: string;
|
|
283
|
+
/** Column header: the invited role. */
|
|
284
|
+
columnRole: string;
|
|
285
|
+
/** Column header: the invitation's status. */
|
|
286
|
+
columnStatus: string;
|
|
287
|
+
/** Column header: how long ago the invitation was sent. */
|
|
288
|
+
columnSent: string;
|
|
289
|
+
/** Under the invitee's address: who sent the invitation. */
|
|
290
|
+
invitedBy: (name: string) => string;
|
|
291
|
+
/** Status badge by invitation status. */
|
|
292
|
+
status: {
|
|
293
|
+
pending: string;
|
|
294
|
+
accepted: string;
|
|
295
|
+
revoked: string;
|
|
296
|
+
expired: string;
|
|
297
|
+
};
|
|
298
|
+
/** Badge shown when the recipient complained about the email. */
|
|
299
|
+
complaint: string;
|
|
300
|
+
/** Badge shown when the email bounced. */
|
|
301
|
+
bounced: string;
|
|
302
|
+
/** Badge shown when sending the email failed or was suppressed. */
|
|
303
|
+
deliveryFailed: string;
|
|
304
|
+
/** Tooltip on a row's action buttons while that row is busy. */
|
|
305
|
+
working: string;
|
|
306
|
+
/** Accessible name of the copy-invite-link button. */
|
|
307
|
+
copyLink: (email: string) => string;
|
|
308
|
+
/** Accessible name of the resend button. */
|
|
309
|
+
resend: (email: string) => string;
|
|
310
|
+
/** Accessible name of the revoke button. */
|
|
311
|
+
revoke: (email: string) => string;
|
|
312
|
+
/** Title of the revoke confirmation. */
|
|
313
|
+
revokeTitle: (email: string) => string;
|
|
314
|
+
/** Description of the revoke confirmation. */
|
|
315
|
+
revokeDescription: string;
|
|
316
|
+
/** Confirm button of the revoke confirmation. */
|
|
317
|
+
revokeConfirm: string;
|
|
318
|
+
/** Title of the empty state. */
|
|
319
|
+
emptyTitle: string;
|
|
320
|
+
/** Description of the empty state. */
|
|
321
|
+
emptyDescription: string;
|
|
322
|
+
};
|
|
323
|
+
/** `InviteMembersDialog`. */
|
|
324
|
+
inviteMembersDialog: {
|
|
325
|
+
/** Title of the dialog. */
|
|
326
|
+
title: string;
|
|
327
|
+
/** Description of the dialog. */
|
|
328
|
+
description: string;
|
|
329
|
+
/** The cancel button. */
|
|
330
|
+
cancel: string;
|
|
331
|
+
/** The submit button; `count` is how many addresses will be invited. */
|
|
332
|
+
send: (count: number) => string;
|
|
333
|
+
/** Label of the email addresses field. */
|
|
334
|
+
emailsLabel: string;
|
|
335
|
+
/** Description of the email addresses field. */
|
|
336
|
+
emailsDescription: string;
|
|
337
|
+
/** Placeholder of the email input while no address has been added. */
|
|
338
|
+
emailPlaceholder: string;
|
|
339
|
+
/** Accessible name of the button that removes an added address. */
|
|
340
|
+
removeEmail: (email: string) => string;
|
|
341
|
+
/** Error under the field when what was typed is not an email address. */
|
|
342
|
+
invalidEmail: (typed: string) => string;
|
|
343
|
+
/** Label of the role select. */
|
|
344
|
+
roleLabel: string;
|
|
345
|
+
};
|
|
346
|
+
/** `MembersPanel`. */
|
|
347
|
+
membersPanel: {
|
|
348
|
+
/** Column header: the member. */
|
|
349
|
+
columnMember: string;
|
|
350
|
+
/** Column header: the member's role. */
|
|
351
|
+
columnRole: string;
|
|
352
|
+
/** Column header: how long ago the member joined. */
|
|
353
|
+
columnJoined: string;
|
|
354
|
+
/** Accessible name of a member's role select. */
|
|
355
|
+
roleFor: (name: string) => string;
|
|
356
|
+
/** Tooltip on the remove button while a removal runs. */
|
|
357
|
+
removing: string;
|
|
358
|
+
/** Accessible name of the remove button. */
|
|
359
|
+
remove: (name: string) => string;
|
|
360
|
+
/** Title of the remove confirmation. */
|
|
361
|
+
removeTitle: (name: string) => string;
|
|
362
|
+
/** Description of the remove confirmation. */
|
|
363
|
+
removeDescription: (name: string) => string;
|
|
364
|
+
/** Confirm button of the remove confirmation. */
|
|
365
|
+
removeConfirm: string;
|
|
366
|
+
/** Title of the empty state. */
|
|
367
|
+
emptyTitle: string;
|
|
368
|
+
/** Description of the empty state. */
|
|
369
|
+
emptyDescription: string;
|
|
370
|
+
};
|
|
371
|
+
/** The save / discard row and staged-image note `ProfileForm` and `TeamSettingsForm` share. */
|
|
372
|
+
stagedForm: {
|
|
373
|
+
/** Default Save button text. */
|
|
374
|
+
save: string;
|
|
375
|
+
/** Default Discard button text. */
|
|
376
|
+
discard: string;
|
|
377
|
+
/** The note under a staged image; `kind` says which image, `saveLabel` is the Save button's text. */
|
|
378
|
+
imageNote: (kind: "avatar" | "logo", saveLabel: string, removed: boolean) => string;
|
|
379
|
+
};
|
|
380
|
+
/** `ProfileForm`. */
|
|
381
|
+
profileForm: {
|
|
382
|
+
/** Callout shown after a successful save. */
|
|
383
|
+
saved: string;
|
|
384
|
+
/** Title of the error callout when saving fails. */
|
|
385
|
+
failedTitle: string;
|
|
386
|
+
/** Fallback error text when saving rejects without a message. */
|
|
387
|
+
failedMessage: string;
|
|
388
|
+
/** Label of the avatar field. */
|
|
389
|
+
avatar: string;
|
|
390
|
+
/** Label of the name field. */
|
|
391
|
+
name: string;
|
|
392
|
+
/** Label of the username field. */
|
|
393
|
+
username: string;
|
|
394
|
+
/** Label of the email field. */
|
|
395
|
+
email: string;
|
|
396
|
+
};
|
|
397
|
+
/** `TeamSettingsForm`. */
|
|
398
|
+
teamSettingsForm: {
|
|
399
|
+
/** Callout shown after a successful save. */
|
|
400
|
+
saved: string;
|
|
401
|
+
/** Title of the error callout when saving fails. */
|
|
402
|
+
failedTitle: string;
|
|
403
|
+
/** Fallback error text when saving rejects without a message. */
|
|
404
|
+
failedMessage: string;
|
|
405
|
+
/** Title of the callout shown to a viewer who cannot edit. */
|
|
406
|
+
readOnlyTitle: string;
|
|
407
|
+
/** Body of the callout shown to a viewer who cannot edit. */
|
|
408
|
+
readOnlyBody: string;
|
|
409
|
+
/** Label of the logo field. */
|
|
410
|
+
logo: string;
|
|
411
|
+
/** Label of the team name field. */
|
|
412
|
+
teamName: string;
|
|
413
|
+
};
|
|
414
|
+
/** `ProfilePage`. */
|
|
415
|
+
profilePage: {
|
|
416
|
+
/** The page heading. */
|
|
417
|
+
title: string;
|
|
418
|
+
/** Heading of the roles and permissions section. */
|
|
419
|
+
rolesHeading: string;
|
|
420
|
+
/** Notice while impersonating; `viewing` and `actual` are the two role names, each wrapped by `emphasis` (the caller's emphasis markup). */
|
|
421
|
+
viewingAs: (viewing: string, actual: string, emphasis: Emphasis) => ReactNode;
|
|
422
|
+
/** Sentence naming the person's role, wrapped by `emphasis`; `team` is the current team's name when there is one. */
|
|
423
|
+
holdsRole: (role: string, team: string | undefined, emphasis: Emphasis) => ReactNode;
|
|
424
|
+
/** Shown when the role grants no permissions. */
|
|
425
|
+
noPermissions: string;
|
|
426
|
+
/** Shown when no role is assigned for the team. */
|
|
427
|
+
noRole: string;
|
|
428
|
+
/** Label of the read-only identity's name field. */
|
|
429
|
+
name: string;
|
|
430
|
+
/** Label of the read-only identity's email field. */
|
|
431
|
+
email: string;
|
|
432
|
+
};
|
|
433
|
+
/** `ChangePasswordForm`. */
|
|
434
|
+
changePasswordForm: {
|
|
435
|
+
/** Title of the error callout when the change fails. */
|
|
436
|
+
failedTitle: string;
|
|
437
|
+
/** Fallback error text when the change rejects without a message. */
|
|
438
|
+
failedMessage: string;
|
|
439
|
+
/** Label of the current password field. */
|
|
440
|
+
current: string;
|
|
441
|
+
/** Label of the new password field. */
|
|
442
|
+
next: string;
|
|
443
|
+
/** Label of the confirm new password field. */
|
|
444
|
+
confirmPassword: string;
|
|
445
|
+
/** Error under the confirm field when it differs from the new password. */
|
|
446
|
+
mismatch: string;
|
|
447
|
+
/** Default submit button text. */
|
|
448
|
+
submit: string;
|
|
449
|
+
};
|
|
450
|
+
/** `DangerZone`. */
|
|
451
|
+
dangerZone: {
|
|
452
|
+
/** Default heading of the section. */
|
|
453
|
+
title: string;
|
|
454
|
+
};
|
|
455
|
+
/** `SessionsList`. */
|
|
456
|
+
sessionsList: {
|
|
457
|
+
/** Column header: the session. */
|
|
458
|
+
columnSession: string;
|
|
459
|
+
/** Column header: when the session was last used. */
|
|
460
|
+
columnLastUsed: string;
|
|
461
|
+
/** Column header: when the session was created. */
|
|
462
|
+
columnCreated: string;
|
|
463
|
+
/** Column header: when the session expires. */
|
|
464
|
+
columnExpires: string;
|
|
465
|
+
/** Badge beside the session this screen is running in. */
|
|
466
|
+
current: string;
|
|
467
|
+
/** Cell text for a session with no expiry. */
|
|
468
|
+
never: string;
|
|
469
|
+
/** Replaces the revoke control on the current session. */
|
|
470
|
+
thisSession: string;
|
|
471
|
+
/** Accessible name of the revoke button. */
|
|
472
|
+
revoke: (name: string) => string;
|
|
473
|
+
/** Tooltip on the revoke button while a revoke runs. */
|
|
474
|
+
revoking: string;
|
|
475
|
+
/** Title of the revoke confirmation. */
|
|
476
|
+
revokeTitle: (name: string) => string;
|
|
477
|
+
/** Description of the revoke confirmation. */
|
|
478
|
+
revokeDescription: string;
|
|
479
|
+
/** Confirm button of the revoke confirmation. */
|
|
480
|
+
revokeConfirm: string;
|
|
481
|
+
/** Title of the empty state. */
|
|
482
|
+
emptyTitle: string;
|
|
483
|
+
};
|
|
484
|
+
/** `TeamSwitcher`. */
|
|
485
|
+
teamSwitcher: {
|
|
486
|
+
/** Accessible name of the team shown when there is nothing to switch to. */
|
|
487
|
+
currentTeam: string;
|
|
488
|
+
/** Accessible name of the trigger that opens the team list. */
|
|
489
|
+
switchFrom: (currentTeamName: string) => string;
|
|
490
|
+
/** Heading of the team list. */
|
|
491
|
+
switchTeam: string;
|
|
492
|
+
};
|
|
493
|
+
/** `AccountMenu`. */
|
|
494
|
+
accountMenu: {
|
|
495
|
+
/** Accessible name of the avatar button that opens the menu. */
|
|
496
|
+
triggerLabel: (userName: string) => string;
|
|
497
|
+
/** Menu item that opens the profile. */
|
|
498
|
+
profile: string;
|
|
499
|
+
/** Menu item that opens roles and permissions. */
|
|
500
|
+
roles: string;
|
|
501
|
+
/** Heading of the access section. */
|
|
502
|
+
yourAccess: string;
|
|
503
|
+
/** Sentence naming the person's role; `emphasis` wraps the role's name in the caller's emphasis markup. */
|
|
504
|
+
hasRole: (role: string, emphasis: Emphasis) => ReactNode;
|
|
505
|
+
/** Shown when no role is assigned for the team. */
|
|
506
|
+
noRole: string;
|
|
507
|
+
/** Heading of the team list. */
|
|
508
|
+
switchTeam: string;
|
|
509
|
+
/** Menu item that signs out. */
|
|
510
|
+
signOut: string;
|
|
511
|
+
};
|
|
512
|
+
/** `RolePermissionMatrix`. */
|
|
513
|
+
rolePermissionMatrix: {
|
|
514
|
+
/** Screen-reader caption of the matrix. */
|
|
515
|
+
caption: string;
|
|
516
|
+
/** Header of the permission column. */
|
|
517
|
+
permission: string;
|
|
518
|
+
/** Section heading for permissions that carry no category, when others do. */
|
|
519
|
+
otherCategory: string;
|
|
520
|
+
/** Accessible name of the lock icon on a role column that cannot be edited. */
|
|
521
|
+
locked: (roleLabel: string) => string;
|
|
522
|
+
/** The sentence a screen reader gets for a cell, saying whether the role holds the permission. */
|
|
523
|
+
cell: (roleLabel: string, permissionLabel: string, granted: boolean) => string;
|
|
524
|
+
};
|
|
525
|
+
/** `RolesPermissionsPage`. */
|
|
526
|
+
rolesPermissionsPage: {
|
|
527
|
+
/** The page heading. */
|
|
528
|
+
title: string;
|
|
529
|
+
/** Line under the heading when roles can be edited. */
|
|
530
|
+
subtitleEditable: string;
|
|
531
|
+
/** Line under the heading when roles are read-only. */
|
|
532
|
+
subtitleReadOnly: string;
|
|
533
|
+
/** The button that opens the new role dialog. */
|
|
534
|
+
newRole: string;
|
|
535
|
+
/** Heading of the list of manageable roles. */
|
|
536
|
+
manageRoles: string;
|
|
537
|
+
/** Tooltip on a row's buttons while that role is busy. */
|
|
538
|
+
working: string;
|
|
539
|
+
/** Accessible name of the reset-to-defaults button. */
|
|
540
|
+
reset: (roleLabel: string) => string;
|
|
541
|
+
/** Accessible name of the edit button. */
|
|
542
|
+
edit: (roleLabel: string) => string;
|
|
543
|
+
/** Accessible name of the delete button. */
|
|
544
|
+
delete: (roleLabel: string) => string;
|
|
545
|
+
/** Title of the delete confirmation. */
|
|
546
|
+
deleteTitle: (roleLabel: string) => string;
|
|
547
|
+
/** Description of the delete confirmation. */
|
|
548
|
+
deleteDescription: string;
|
|
549
|
+
/** Confirm button of the delete confirmation. */
|
|
550
|
+
deleteConfirm: string;
|
|
551
|
+
};
|
|
552
|
+
/** `RoleEditorDialog`. */
|
|
553
|
+
roleEditorDialog: {
|
|
554
|
+
/** Title when creating a role. */
|
|
555
|
+
createTitle: string;
|
|
556
|
+
/** Title when editing a role. */
|
|
557
|
+
editTitle: string;
|
|
558
|
+
/** Description when creating a role. */
|
|
559
|
+
createDescription: string;
|
|
560
|
+
/** Description when editing a role. */
|
|
561
|
+
editDescription: string;
|
|
562
|
+
/** The cancel button. */
|
|
563
|
+
cancel: string;
|
|
564
|
+
/** The submit button when creating. */
|
|
565
|
+
create: string;
|
|
566
|
+
/** The submit button when editing. */
|
|
567
|
+
save: string;
|
|
568
|
+
/** Label of the role label field. */
|
|
569
|
+
label: string;
|
|
570
|
+
/** Placeholder of the role label field. */
|
|
571
|
+
labelPlaceholder: string;
|
|
572
|
+
/** Label of the description field. */
|
|
573
|
+
description: string;
|
|
574
|
+
/** Help text under the description field. */
|
|
575
|
+
descriptionHint: string;
|
|
576
|
+
/** Label of the clone-from select. */
|
|
577
|
+
cloneLabel: string;
|
|
578
|
+
/** Description of the clone-from select. */
|
|
579
|
+
cloneDescription: string;
|
|
580
|
+
/** The clone-from option that clones nothing. */
|
|
581
|
+
cloneNone: string;
|
|
582
|
+
};
|
|
583
|
+
}
|
|
584
|
+
export declare const rbacStrings: RbacStrings;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { emphasis, type Emphasis } from "./emphasis";
|
|
2
|
+
export { UiLocaleProvider, useUiLocale, useUiStrings } from "./provider";
|
|
3
|
+
export type { UiLocaleProviderProps, UiLocaleValue } from "./provider";
|
|
4
|
+
export { ENGLISH_UI_STRINGS } from "./strings";
|
|
5
|
+
export type { UiStrings } from "./strings";
|
|
6
|
+
export { useNumberFormat } from "./number-format";
|
|
7
|
+
export { plural } from "./plural";
|
|
8
|
+
export type { PluralForms } from "./plural";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import type { UiStrings } from "./strings";
|
|
3
|
+
export interface UiLocaleValue {
|
|
4
|
+
/** BCP-47 tag every library `Intl` formatter is built with ("en-US", "es-AR"). */
|
|
5
|
+
locale: string;
|
|
6
|
+
/** Every built-in string. Exhaustive: a missing entry fails the consumer's `tsc`. */
|
|
7
|
+
strings: UiStrings;
|
|
8
|
+
}
|
|
9
|
+
export interface UiLocaleProviderProps extends UiLocaleValue {
|
|
10
|
+
children: ReactNode;
|
|
11
|
+
}
|
|
12
|
+
export declare function UiLocaleProvider({ locale, strings, children }: UiLocaleProviderProps): import("react").JSX.Element;
|
|
13
|
+
/** The active BCP-47 locale. Throws outside a `UiLocaleProvider`. */
|
|
14
|
+
export declare function useUiLocale(): string;
|
|
15
|
+
/** The active built-in strings. Throws outside a `UiLocaleProvider`. */
|
|
16
|
+
export declare function useUiStrings(): UiStrings;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type AuthProvenanceFlowsStrings } from "./areas/auth-provenance-flows";
|
|
2
|
+
import { type BoardStrings } from "./areas/board";
|
|
3
|
+
import { type ChatChartStrings } from "./areas/chat-chart";
|
|
4
|
+
import { type CodeEditorStrings } from "./areas/code-editor";
|
|
5
|
+
import { type DatesStrings } from "./areas/dates";
|
|
6
|
+
import { type DocsViewsStrings } from "./areas/docs-views";
|
|
7
|
+
import { type FeedbackStrings } from "./areas/feedback";
|
|
8
|
+
import { type FormsStrings } from "./areas/forms";
|
|
9
|
+
import { type FormatsStrings } from "./areas/formats";
|
|
10
|
+
import { type MarkdownStrings } from "./areas/markdown";
|
|
11
|
+
import { type MoveRejectedStrings } from "./areas/move-rejected";
|
|
12
|
+
import { type NavigationStrings } from "./areas/navigation";
|
|
13
|
+
import { type RbacStrings } from "./areas/rbac";
|
|
14
|
+
export type UiStrings = AuthProvenanceFlowsStrings & BoardStrings & ChatChartStrings & CodeEditorStrings & DatesStrings & DocsViewsStrings & FeedbackStrings & FormsStrings & FormatsStrings & MarkdownStrings & MoveRejectedStrings & NavigationStrings & RbacStrings;
|
|
15
|
+
export declare const ENGLISH_UI_STRINGS: UiStrings;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export declare function numberFormat(locale: string, options: Intl.NumberFormatOptions): Intl.NumberFormat;
|
|
2
|
+
export declare function dateFormat(locale: string, options: Intl.DateTimeFormatOptions): Intl.DateTimeFormat;
|
|
3
|
+
export declare function listFormat(locale: string, options?: Intl.ListFormatOptions): Intl.ListFormat;
|
|
4
|
+
/** A cached `Intl.Collator`: sort names the way `locale` orders them (DX-4740), never by code point. */
|
|
5
|
+
export declare function collator(locale: string, options?: Intl.CollatorOptions): Intl.Collator;
|
|
6
|
+
/** A cached `Intl.PluralRules` (DX-4740): which plural category (`one`, `other`, ...) a count takes in `locale`. */
|
|
7
|
+
export declare function pluralRules(locale: string, options?: Intl.PluralRulesOptions): Intl.PluralRules;
|
|
8
|
+
/** The locale's digit-group and decimal separators ("," and "." in en-US, "." and "," in es-AR). */
|
|
9
|
+
export declare function numberSeparators(locale: string): {
|
|
10
|
+
group: string;
|
|
11
|
+
decimal: string;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Text a person typed in `locale`'s number convention → a finite `number`, or `null`.
|
|
15
|
+
* `strip` removes locale-specific decoration first (a currency symbol). Group
|
|
16
|
+
* separators are dropped and the decimal separator becomes ".", then the result
|
|
17
|
+
* must be a plain signed decimal — `"12abc"` is a typo, not twelve.
|
|
18
|
+
*/
|
|
19
|
+
export declare function parseLocalizedNumber(text: string, locale: string, strip?: readonly string[]): number | null;
|
|
20
|
+
/**
|
|
21
|
+
* Create a Date from year/month/day values, treating them as UTC (not local time).
|
|
22
|
+
* Used by date formatting and parsing to work in UTC consistently.
|
|
23
|
+
*/
|
|
24
|
+
export declare function asUtcDate(year: number, month: number, day: number): Date;
|
|
25
|
+
/**
|
|
26
|
+
* The locale's digit set as an array [0, 1, 2, ..., 9], for normalizing user input
|
|
27
|
+
* or parsing output of locale-specific formatters.
|
|
28
|
+
*/
|
|
29
|
+
export declare function localeDigits(locale: string): string[];
|
|
30
|
+
/** A percentage as the locale writes it. `percent` is on the 0-100 scale; it is rounded to `digits` decimals. */
|
|
31
|
+
export declare function formatPercent(percent: number, locale: string, digits?: number): string;
|