@eifi1/ui-kit 0.28.1 → 0.30.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/README.md +44 -4
- package/dist/account/account-parts.d.ts +21 -0
- package/dist/account/account-parts.js +40 -0
- package/dist/account/account-parts.js.map +1 -0
- package/dist/account/data-export-setting.d.ts +73 -0
- package/dist/account/data-export-setting.js +113 -0
- package/dist/account/data-export-setting.js.map +1 -0
- package/dist/account/delete-account-setting.d.ts +91 -0
- package/dist/account/delete-account-setting.js +199 -0
- package/dist/account/delete-account-setting.js.map +1 -0
- package/dist/account/email-change-setting.d.ts +136 -0
- package/dist/account/email-change-setting.js +277 -0
- package/dist/account/email-change-setting.js.map +1 -0
- package/dist/account/sessions-setting.d.ts +110 -0
- package/dist/account/sessions-setting.js +146 -0
- package/dist/account/sessions-setting.js.map +1 -0
- package/dist/admin/admin-action-confirm.d.ts +91 -0
- package/dist/admin/admin-action-confirm.js +276 -0
- package/dist/admin/admin-action-confirm.js.map +1 -0
- package/dist/admin/admin-action-log.d.ts +105 -0
- package/dist/admin/admin-action-log.js +153 -0
- package/dist/admin/admin-action-log.js.map +1 -0
- package/dist/admin/admin-parts.d.ts +40 -0
- package/dist/admin/admin-parts.js +45 -0
- package/dist/admin/admin-parts.js.map +1 -0
- package/dist/admin/invitations-panel.d.ts +91 -0
- package/dist/admin/invitations-panel.js +289 -0
- package/dist/admin/invitations-panel.js.map +1 -0
- package/dist/admin/reviewer-scope-editor.d.ts +91 -0
- package/dist/admin/reviewer-scope-editor.js +134 -0
- package/dist/admin/reviewer-scope-editor.js.map +1 -0
- package/dist/admin/role-select.d.ts +91 -0
- package/dist/admin/role-select.js +128 -0
- package/dist/admin/role-select.js.map +1 -0
- package/dist/admin/transfer-ownership-dialog.d.ts +91 -0
- package/dist/admin/transfer-ownership-dialog.js +83 -0
- package/dist/admin/transfer-ownership-dialog.js.map +1 -0
- package/dist/admin/user-roster.d.ts +91 -0
- package/dist/admin/user-roster.js +285 -0
- package/dist/admin/user-roster.js.map +1 -0
- package/dist/auth/accept-invitation.d.ts +90 -0
- package/dist/auth/accept-invitation.js +117 -0
- package/dist/auth/accept-invitation.js.map +1 -0
- package/dist/auth/auth-errors.d.ts +139 -0
- package/dist/auth/auth-errors.js +92 -0
- package/dist/auth/auth-errors.js.map +1 -0
- package/dist/auth/complete-name-dialog.d.ts +71 -0
- package/dist/auth/complete-name-dialog.js +168 -0
- package/dist/auth/complete-name-dialog.js.map +1 -0
- package/dist/auth/email-tag.d.ts +60 -0
- package/dist/auth/email-tag.js +23 -0
- package/dist/auth/email-tag.js.map +1 -0
- package/dist/auth/forgot-password-form.d.ts +86 -0
- package/dist/auth/forgot-password-form.js +123 -0
- package/dist/auth/forgot-password-form.js.map +1 -0
- package/dist/auth/form-rules.d.ts +27 -0
- package/dist/auth/form-rules.js +23 -0
- package/dist/auth/form-rules.js.map +1 -0
- package/dist/auth/new-password-fields.d.ts +38 -0
- package/dist/auth/new-password-fields.js +54 -0
- package/dist/auth/new-password-fields.js.map +1 -0
- package/dist/auth/not-found-page.d.ts +57 -0
- package/dist/auth/not-found-page.js +40 -0
- package/dist/auth/not-found-page.js.map +1 -0
- package/dist/auth/register-form.d.ts +91 -0
- package/dist/auth/register-form.js +270 -0
- package/dist/auth/register-form.js.map +1 -0
- package/dist/auth/reset-password-form.d.ts +131 -0
- package/dist/auth/reset-password-form.js +167 -0
- package/dist/auth/reset-password-form.js.map +1 -0
- package/dist/auth/sign-in-form.d.ts +295 -0
- package/dist/auth/sign-in-form.js +426 -0
- package/dist/auth/sign-in-form.js.map +1 -0
- package/dist/auth/status-parts.d.ts +78 -0
- package/dist/auth/status-parts.js +83 -0
- package/dist/auth/status-parts.js.map +1 -0
- package/dist/auth/verify-email.d.ts +126 -0
- package/dist/auth/verify-email.js +243 -0
- package/dist/auth/verify-email.js.map +1 -0
- package/dist/chart.d.ts +25 -5
- package/dist/components/account-chips.d.ts +47 -7
- package/dist/components/account-chips.js +19 -3
- package/dist/components/account-chips.js.map +1 -1
- package/dist/components/account-settings-labels.d.ts +12 -1
- package/dist/components/account-settings-labels.js +4 -1
- package/dist/components/account-settings-labels.js.map +1 -1
- package/dist/components/account-settings.d.ts +61 -6
- package/dist/components/account-settings.js +115 -15
- package/dist/components/account-settings.js.map +1 -1
- package/dist/components/amount-input.d.ts +26 -5
- package/dist/components/button-group.d.ts +26 -5
- package/dist/components/calculator.d.ts +26 -5
- package/dist/components/confirm-dialog.d.ts +26 -5
- package/dist/components/copy-button.d.ts +23 -2
- package/dist/components/danger-confirm.d.ts +26 -5
- package/dist/components/facing-pair.d.ts +26 -5
- package/dist/components/file-button.d.ts +26 -5
- package/dist/components/file-dropzone.d.ts +26 -5
- package/dist/components/form-actions.d.ts +26 -5
- package/dist/components/iban-input.d.ts +26 -5
- package/dist/components/language-select.d.ts +26 -12
- package/dist/components/legal-page.d.ts +26 -5
- package/dist/components/legal.d.ts +26 -5
- package/dist/components/money-field.d.ts +26 -5
- package/dist/components/number-field.d.ts +26 -5
- package/dist/components/number-input.d.ts +26 -5
- package/dist/components/numpad-sheet.d.ts +26 -5
- package/dist/components/phone-input.d.ts +26 -5
- package/dist/components/series-chart.d.ts +26 -5
- package/dist/components/settings-fields.d.ts +25 -7
- package/dist/components/share-card.d.ts +25 -4
- package/dist/components/text-link.d.ts +26 -5
- package/dist/components/time-input.d.ts +26 -5
- package/dist/components/ui.d.ts +23 -2
- package/dist/components/user-avatar.d.ts +16 -2
- package/dist/components/user-avatar.js +7 -3
- package/dist/components/user-avatar.js.map +1 -1
- package/dist/{kit-labels-Du0uHBq4.d.ts → delete-account-setting-CGVMckMw.d.ts} +6654 -5302
- package/dist/feedback/feedback-attachment.d.ts +26 -5
- package/dist/feedback/feedback-context.d.ts +26 -5
- package/dist/feedback/feedback-crash.d.ts +26 -5
- package/dist/feedback/feedback-dialog.d.ts +26 -5
- package/dist/feedback/feedback-inbox.d.ts +26 -5
- package/dist/feedback/feedback-labels.d.ts +26 -5
- package/dist/feedback/feedback-menu.d.ts +26 -5
- package/dist/feedback/feedback-record.d.ts +26 -5
- package/dist/feedback/feedback-row-detail.d.ts +26 -5
- package/dist/feedback/feedback-status-undo.d.ts +26 -5
- package/dist/feedback/feedback-submit.d.ts +26 -5
- package/dist/feedback/feedback-swipe.d.ts +26 -5
- package/dist/feedback/feedback-table.d.ts +23 -2
- package/dist/feedback/feedback-thread.d.ts +26 -5
- package/dist/feedback.d.ts +26 -5
- package/dist/hooks/use-anchored-panel.d.ts +6 -2
- package/dist/hooks/use-anchored-panel.js +2 -1
- package/dist/hooks/use-anchored-panel.js.map +1 -1
- package/dist/hooks/use-file-drop.d.ts +26 -5
- package/dist/i18n/defaults.d.ts +26 -5
- package/dist/i18n/defaults.js +40 -0
- package/dist/i18n/defaults.js.map +1 -1
- package/dist/i18n/german.d.ts +26 -5
- package/dist/i18n/german.js +343 -2
- package/dist/i18n/german.js.map +1 -1
- package/dist/i18n/kit-labels.d.ts +23 -2
- package/dist/i18n/kit-labels.js.map +1 -1
- package/dist/i18n/languages.d.ts +21 -204
- package/dist/i18n/locales/de-CH.d.ts +26 -5
- package/dist/i18n/locales/en.d.ts +26 -5
- package/dist/i18n/locales/es.d.ts +26 -5
- package/dist/i18n/locales/es.js +337 -3
- package/dist/i18n/locales/es.js.map +1 -1
- package/dist/i18n/locales/fr.d.ts +26 -5
- package/dist/i18n/locales/fr.js +344 -2
- package/dist/i18n/locales/fr.js.map +1 -1
- package/dist/i18n/locales/hu.d.ts +26 -5
- package/dist/i18n/locales/hu.js +337 -3
- package/dist/i18n/locales/hu.js.map +1 -1
- package/dist/i18n/locales/it.d.ts +26 -5
- package/dist/i18n/locales/it.js +342 -2
- package/dist/i18n/locales/it.js.map +1 -1
- package/dist/i18n/locales/zh.d.ts +26 -5
- package/dist/i18n/locales/zh.js +333 -2
- package/dist/i18n/locales/zh.js.map +1 -1
- package/dist/i18n/review.d.ts +26 -5
- package/dist/i18n/review.js +45 -1
- package/dist/i18n/review.js.map +1 -1
- package/dist/index.d.ts +19 -3
- package/dist/index.js +89 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/person-name.d.ts +69 -0
- package/dist/lib/person-name.js +65 -0
- package/dist/lib/person-name.js.map +1 -0
- package/dist/rhf/fields.d.ts +26 -5
- package/dist/rhf/form.d.ts +26 -5
- package/dist/rhf.d.ts +26 -5
- package/dist/shell/app-shell.d.ts +26 -5
- package/dist/shell/company-switcher.d.ts +59 -0
- package/dist/shell/company-switcher.js +85 -0
- package/dist/shell/company-switcher.js.map +1 -0
- package/dist/shell/top-bar-brand.d.ts +26 -5
- package/dist/shell/topbar-action-menu.d.ts +1 -0
- package/dist/shell.d.ts +20 -5
- package/dist/wizard/stepper-nav.d.ts +26 -5
- package/dist/wizard.d.ts +26 -5
- package/package.json +1 -1
- package/src/account/account-parts.ts +67 -0
- package/src/account/data-export-setting.tsx +218 -0
- package/src/account/delete-account-setting.tsx +362 -0
- package/src/account/email-change-setting.tsx +457 -0
- package/src/account/sessions-setting.tsx +283 -0
- package/src/admin/admin-action-confirm.tsx +495 -0
- package/src/admin/admin-action-log.tsx +297 -0
- package/src/admin/admin-parts.ts +82 -0
- package/src/admin/invitations-panel.tsx +516 -0
- package/src/admin/reviewer-scope-editor.tsx +234 -0
- package/src/admin/role-select.tsx +286 -0
- package/src/admin/transfer-ownership-dialog.tsx +172 -0
- package/src/admin/user-roster.tsx +573 -0
- package/src/auth/accept-invitation.tsx +227 -0
- package/src/auth/auth-errors.ts +262 -0
- package/src/auth/complete-name-dialog.tsx +253 -0
- package/src/auth/email-tag.ts +75 -0
- package/src/auth/forgot-password-form.tsx +229 -0
- package/src/auth/form-rules.ts +40 -0
- package/src/auth/new-password-fields.tsx +85 -0
- package/src/auth/not-found-page.tsx +98 -0
- package/src/auth/register-form.tsx +477 -0
- package/src/auth/reset-password-form.tsx +351 -0
- package/src/auth/sign-in-form.tsx +859 -0
- package/src/auth/status-parts.tsx +138 -0
- package/src/auth/verify-email.tsx +409 -0
- package/src/components/account-chips.tsx +64 -7
- package/src/components/account-settings-labels.ts +15 -1
- package/src/components/account-settings.tsx +199 -23
- package/src/components/user-avatar.tsx +22 -4
- package/src/hooks/use-anchored-panel.ts +14 -3
- package/src/i18n/defaults.ts +40 -0
- package/src/i18n/german.ts +379 -0
- package/src/i18n/kit-labels.tsx +60 -0
- package/src/i18n/locales/es.ts +371 -1
- package/src/i18n/locales/fr.ts +379 -0
- package/src/i18n/locales/hu.ts +366 -1
- package/src/i18n/locales/it.ts +373 -0
- package/src/i18n/locales/zh.ts +343 -0
- package/src/i18n/review.ts +44 -0
- package/src/index.ts +146 -0
- package/src/lib/person-name.ts +157 -0
- package/src/shell/company-switcher.tsx +140 -0
package/src/i18n/locales/zh.ts
CHANGED
|
@@ -13,6 +13,13 @@ import type { UiKitLabels } from "../kit-labels";
|
|
|
13
13
|
export function uiKitLabelsZh(numberLocale = "zh-CN"): UiKitLabels {
|
|
14
14
|
const num = new Intl.NumberFormat(numberLocale);
|
|
15
15
|
const n = (value: number) => num.format(value);
|
|
16
|
+
// 0.30.0 — a throttled request (HTTP 429), as `englishRateLimited` in
|
|
17
|
+
// src/auth/auth-errors.ts: no wait → "稍候", under a minute → seconds, else minutes
|
|
18
|
+
// rounded up. The numeral has a space either side, as everywhere in this catalogue.
|
|
19
|
+
const wait = (seconds: number) =>
|
|
20
|
+
seconds < 60 ? `${n(Math.ceil(seconds))} 秒` : `${n(Math.ceil(seconds / 60))} 分钟`;
|
|
21
|
+
const rateLimited = (seconds?: number) =>
|
|
22
|
+
!seconds || seconds <= 0 ? "尝试次数过多,请稍候再试。" : `尝试次数过多,请 ${wait(seconds)}后重试。`;
|
|
16
23
|
|
|
17
24
|
return {
|
|
18
25
|
feedbackAttachment: {
|
|
@@ -146,6 +153,9 @@ export function uiKitLabelsZh(numberLocale = "zh-CN"): UiKitLabels {
|
|
|
146
153
|
memberSince: "注册时间",
|
|
147
154
|
displayName: "显示名称",
|
|
148
155
|
save: "保存",
|
|
156
|
+
firstName: "名字",
|
|
157
|
+
lastName: "姓氏",
|
|
158
|
+
nameRequired: "请同时填写名字和姓氏。",
|
|
149
159
|
},
|
|
150
160
|
password: {
|
|
151
161
|
title: "修改密码",
|
|
@@ -682,6 +692,8 @@ export function uiKitLabelsZh(numberLocale = "zh-CN"): UiKitLabels {
|
|
|
682
692
|
registered: "已注册",
|
|
683
693
|
unverified: "未验证",
|
|
684
694
|
passwordChange: "需修改密码",
|
|
695
|
+
deletion: "已申请删除",
|
|
696
|
+
deletionOn: (date) => `将于 ${date} 删除`,
|
|
685
697
|
},
|
|
686
698
|
shareCard: {
|
|
687
699
|
dialogTitle: "共享",
|
|
@@ -814,6 +826,337 @@ export function uiKitLabelsZh(numberLocale = "zh-CN"): UiKitLabels {
|
|
|
814
826
|
},
|
|
815
827
|
},
|
|
816
828
|
},
|
|
829
|
+
// 0.29.0 — docs/auth-harmonization.md: Kurvenschmiede's reviewed Chinese (auth.*,
|
|
830
|
+
// notfound) where it says the same, brought into line with the kit's English and this
|
|
831
|
+
// catalogue's words ("通行密钥", "双重验证"); written fresh where Kurvenschmiede has no
|
|
832
|
+
// such text yet. Full-width punctuation; an interpolated address or name gets a space
|
|
833
|
+
// either side, none before full-width punctuation. It goes back to Kurvenschmiede for
|
|
834
|
+
// review.
|
|
835
|
+
signIn: {
|
|
836
|
+
email: "电子邮箱",
|
|
837
|
+
password: "密码",
|
|
838
|
+
submit: "登录",
|
|
839
|
+
passkey: "使用通行密钥登录",
|
|
840
|
+
forgotPassword: "忘记密码?",
|
|
841
|
+
noAccount: "还没有账户?",
|
|
842
|
+
register: "创建账户",
|
|
843
|
+
invalidCredentials: "电子邮箱或密码不正确。",
|
|
844
|
+
failed: "登录失败,请重试。",
|
|
845
|
+
passkeyFailed: "通行密钥登录失败。",
|
|
846
|
+
deactivatedHint: "账户已停用?请联系 {contact}。",
|
|
847
|
+
tagHint: (taggedAddress) => `注册时用的是 ${taggedAddress} 吗?请使用该地址。`,
|
|
848
|
+
twoFactorTitle: "双重验证",
|
|
849
|
+
twoFactorIntro: "请输入身份验证器应用显示的验证码。",
|
|
850
|
+
code: "验证码",
|
|
851
|
+
verify: "验证",
|
|
852
|
+
codeInvalid: "验证码无效。",
|
|
853
|
+
setPasswordTitle: "设置新密码",
|
|
854
|
+
setPasswordIntro: "已要求为此账户设置新密码。设置之后即可直接继续使用。",
|
|
855
|
+
newPassword: "新密码",
|
|
856
|
+
confirmPassword: "再次输入新密码",
|
|
857
|
+
passwordMismatch: "两次输入的密码不一致。",
|
|
858
|
+
setPasswordSubmit: "设置密码并登录",
|
|
859
|
+
setPasswordFailed: "无法设置密码。",
|
|
860
|
+
expired: "本次登录已过期,请重新登录。",
|
|
861
|
+
backToSignIn: "返回登录",
|
|
862
|
+
useRecoveryCode: "使用备用码",
|
|
863
|
+
useAuthenticatorCode: "使用身份验证器应用",
|
|
864
|
+
recoveryCode: "备用码",
|
|
865
|
+
recoveryIntro: "请输入您在开启双重验证时保存的备用码之一。",
|
|
866
|
+
recoveryCodeHint: (length) => `共 ${n(length)} 位字母和数字,连字符和空格不影响。`,
|
|
867
|
+
recoveryCodeInvalid: "此备用码无效或已被使用。",
|
|
868
|
+
rateLimited,
|
|
869
|
+
},
|
|
870
|
+
register: {
|
|
871
|
+
firstName: "名字",
|
|
872
|
+
lastName: "姓氏",
|
|
873
|
+
email: "电子邮箱",
|
|
874
|
+
emailTagUse: (address) => `使用 ${address}`,
|
|
875
|
+
emailTagHint:
|
|
876
|
+
"许多邮件服务商会把发往 name+tag@… 的邮件投递到同一个收件箱,这样本应用发来的邮件便于筛选和追溯。请先确认您的服务商支持这一点再使用:之后您需要用带标签的地址登录。",
|
|
877
|
+
invitedEmailHint: "接收邀请的地址。",
|
|
878
|
+
invitedTagNote: "带标签的地址会单独收到一封确认邮件。",
|
|
879
|
+
password: "密码",
|
|
880
|
+
confirmPassword: "再次输入密码",
|
|
881
|
+
passwordMismatch: "两次输入的密码不一致。",
|
|
882
|
+
language: "语言",
|
|
883
|
+
submit: "创建账户",
|
|
884
|
+
haveAccount: "已有账户?",
|
|
885
|
+
signIn: "登录",
|
|
886
|
+
emailTaken: "该电子邮箱地址已有账户。",
|
|
887
|
+
registrationClosed: "新账户仅限受邀注册。请联系运营者,为您的电子邮箱地址发送邀请。",
|
|
888
|
+
invitationInvalid: "此邀请链接无效。",
|
|
889
|
+
invitationExpired: "此邀请已过期,请索取新的邀请。",
|
|
890
|
+
failed: "注册失败,请重试。",
|
|
891
|
+
rateLimited,
|
|
892
|
+
},
|
|
893
|
+
completeName: {
|
|
894
|
+
title: "完善您的姓名",
|
|
895
|
+
description: "现在需要分别填写名字和姓氏。请检查已填写的内容,并补充缺少的部分。",
|
|
896
|
+
firstName: "名字",
|
|
897
|
+
lastName: "姓氏",
|
|
898
|
+
save: "保存",
|
|
899
|
+
later: "稍后",
|
|
900
|
+
failed: "无法保存您的姓名,请重试。",
|
|
901
|
+
},
|
|
902
|
+
forgotPassword: {
|
|
903
|
+
title: "忘记密码",
|
|
904
|
+
intro: "请输入您账户的电子邮箱地址。我们会向您发送一个设置新密码的链接。",
|
|
905
|
+
email: "电子邮箱",
|
|
906
|
+
submit: "发送链接",
|
|
907
|
+
sent: (email) => `如果 ${email} 有账户,链接正在发送中。`,
|
|
908
|
+
sentHint: "该链接有效期一小时,且仅可使用一次。也请查看垃圾邮件文件夹。",
|
|
909
|
+
backToSignIn: "返回登录",
|
|
910
|
+
error: "请求失败,请稍后重试。",
|
|
911
|
+
rateLimited,
|
|
912
|
+
},
|
|
913
|
+
resetPassword: {
|
|
914
|
+
title: "设置新密码",
|
|
915
|
+
checking: "正在检查链接…",
|
|
916
|
+
intro: (email) => `您正在为 ${email} 设置新密码。`,
|
|
917
|
+
newPassword: "新密码",
|
|
918
|
+
confirmPassword: "再次输入新密码",
|
|
919
|
+
mismatch: "两次输入的密码不一致。",
|
|
920
|
+
submit: "保存密码",
|
|
921
|
+
failed: "无法修改密码。",
|
|
922
|
+
noToken: "此链接不完整。",
|
|
923
|
+
invalid: "此链接无效或已过期。",
|
|
924
|
+
invalidHint: "链接有效期一小时,且仅可使用一次。重新申请一个即可。",
|
|
925
|
+
requestNew: "申请新链接",
|
|
926
|
+
success: "您的密码已修改,现在可以用它登录了。",
|
|
927
|
+
sessionsEnded: "已登录的设备均已退出登录——您需要在这些设备上重新登录。",
|
|
928
|
+
signIn: "前往登录",
|
|
929
|
+
rateLimited,
|
|
930
|
+
},
|
|
931
|
+
verifyEmail: {
|
|
932
|
+
title: "确认您的电子邮箱地址",
|
|
933
|
+
verifying: "正在确认…",
|
|
934
|
+
verified: "您的电子邮箱地址已确认。",
|
|
935
|
+
continue: "继续",
|
|
936
|
+
invalid: "此确认链接无效",
|
|
937
|
+
expired: "此确认链接已过期",
|
|
938
|
+
noToken: "此链接缺少确认令牌。",
|
|
939
|
+
invalidHint: "该链接可能已过期或已被使用。",
|
|
940
|
+
requestInApp: "您可以在应用内申请新的链接。",
|
|
941
|
+
requestHere: "您可以在此申请新的链接。",
|
|
942
|
+
resend: "重新发送",
|
|
943
|
+
resendIn: (seconds) => `${n(seconds)} 秒后可重新发送`,
|
|
944
|
+
resent: "确认邮件已发送",
|
|
945
|
+
resendError: "无法发送确认邮件",
|
|
946
|
+
banner: "请确认您的电子邮箱地址。",
|
|
947
|
+
dismiss: "暂不",
|
|
948
|
+
},
|
|
949
|
+
notFound: {
|
|
950
|
+
title: "未找到页面",
|
|
951
|
+
body: "此地址不存在(或已不存在)。可能是输入有误,也可能是页面已被移动。",
|
|
952
|
+
home: "前往首页",
|
|
953
|
+
app: "返回应用",
|
|
954
|
+
},
|
|
955
|
+
acceptInvitation: {
|
|
956
|
+
title: "接受邀请",
|
|
957
|
+
accepting: "正在加入…",
|
|
958
|
+
accepted: "已接受邀请。",
|
|
959
|
+
joined: (name) => `您已加入 ${name}。`,
|
|
960
|
+
continue: "继续",
|
|
961
|
+
invalid: "无法通过此链接加入",
|
|
962
|
+
expired: "此邀请已过期",
|
|
963
|
+
noToken: "此链接缺少邀请令牌。",
|
|
964
|
+
askAgain: "请让邀请您的人重新发送一份邀请。",
|
|
965
|
+
signInFirst: "登录以接受此邀请",
|
|
966
|
+
signInHint: "请使用收到邀请的账户登录。",
|
|
967
|
+
signIn: "登录",
|
|
968
|
+
register: "创建账户",
|
|
969
|
+
},
|
|
970
|
+
companySwitcher: {
|
|
971
|
+
switchCompany: "切换公司",
|
|
972
|
+
heading: "公司",
|
|
973
|
+
current: (name) => `公司:${name}`,
|
|
974
|
+
currentMark: "(当前)",
|
|
975
|
+
switching: "正在切换公司…",
|
|
976
|
+
},
|
|
977
|
+
// 0.30.0 — docs/user-admin-harmonization.md: Kurvenschmiede's reviewed Chinese for the
|
|
978
|
+
// admin words (停用、角色、审校者), transfer (移交), invitations and sessions;
|
|
979
|
+
// written fresh where it had no sentence.
|
|
980
|
+
emailChange: {
|
|
981
|
+
title: "电子邮箱地址",
|
|
982
|
+
current: "当前地址",
|
|
983
|
+
newEmail: "新电子邮箱地址",
|
|
984
|
+
password: "当前密码",
|
|
985
|
+
passwordHint: "您使用此地址登录,因此更改它需要输入密码。",
|
|
986
|
+
emailTagUse: (address) => `使用 ${address}`,
|
|
987
|
+
emailTagHint:
|
|
988
|
+
"许多邮件服务商会把发往 name+tag@… 的邮件投递到同一个收件箱,这样本应用发来的邮件便于筛选和追溯。请先确认您的服务商支持这一点再使用:之后您需要用带标签的地址登录。",
|
|
989
|
+
submit: "更改电子邮箱地址",
|
|
990
|
+
sameAsCurrent: "这已经是您的地址。",
|
|
991
|
+
emailTaken: "该电子邮箱地址已有账户。",
|
|
992
|
+
wrongPassword: "密码不正确。",
|
|
993
|
+
pending: (newEmail) => `请点击我们发送到 ${newEmail} 的链接进行确认。`,
|
|
994
|
+
pendingHint: (currentEmail) => `在此之前,您仍使用 ${currentEmail} 登录。也请查看垃圾邮件文件夹。`,
|
|
995
|
+
resend: "重新发送链接",
|
|
996
|
+
resent: "链接已重新发送。",
|
|
997
|
+
cancel: "取消更改",
|
|
998
|
+
confirmed: (email) => `您的电子邮箱地址现在是 ${email}。`,
|
|
999
|
+
passkeyNote: "您的通行密钥仍可正常使用。您的设备可能仍以旧地址列出它们。",
|
|
1000
|
+
rateLimited,
|
|
1001
|
+
failed: "操作未成功,请重试。",
|
|
1002
|
+
},
|
|
1003
|
+
sessions: {
|
|
1004
|
+
title: "会话",
|
|
1005
|
+
description: "在不再使用或不信任的设备上登录过?请在所有设备上退出登录。",
|
|
1006
|
+
signOutEverywhere: "在所有设备上退出登录…",
|
|
1007
|
+
signOutEverywherePrompt: "这将结束所有会话,包括当前会话:此设备也会退出登录,您需要在这里重新登录。",
|
|
1008
|
+
confirmSignOutEverywhere: "在所有设备上退出登录",
|
|
1009
|
+
list: "您已登录的设备",
|
|
1010
|
+
loading: "正在加载会话…",
|
|
1011
|
+
empty: "没有可显示的会话。",
|
|
1012
|
+
current: "此设备",
|
|
1013
|
+
unknownDevice: "未知设备",
|
|
1014
|
+
lastActive: (when) => `上次活动:${when}`,
|
|
1015
|
+
ip: (address) => `IP:${address}`,
|
|
1016
|
+
revoke: "退出登录",
|
|
1017
|
+
// Starts with `revoke`, the button's visible text, for voice control.
|
|
1018
|
+
revokeItem: (device) => `退出登录:${device}`,
|
|
1019
|
+
failed: "操作未成功,请重试。",
|
|
1020
|
+
},
|
|
1021
|
+
deleteAccount: {
|
|
1022
|
+
title: "删除账户",
|
|
1023
|
+
afterDays: (days) => `您的账户将立即停用,并在 ${n(days)} 天后被永久删除。`,
|
|
1024
|
+
operator: "您的账户将立即停用,之后由运营者将其永久删除。",
|
|
1025
|
+
arm: "删除账户…",
|
|
1026
|
+
prompt: "您将在所有设备上退出登录,且无法再使用此账户。",
|
|
1027
|
+
handOver: (count) => `${n(count)} 项他人可见的内容将移交给一位管理员。`,
|
|
1028
|
+
confirm: "删除我的账户",
|
|
1029
|
+
done: "您的账户已停用,正在退出登录。",
|
|
1030
|
+
wrongPassword: "密码不正确。",
|
|
1031
|
+
confirmationMismatch: "这不是您账户的地址。",
|
|
1032
|
+
lastAdmin: "您是最后一位管理员。请先将其他人设为管理员。",
|
|
1033
|
+
lastAdminOf: (companies) => `您是 ${companies} 的最后一位管理员。请先在那里将其他人设为管理员。`,
|
|
1034
|
+
householdHasMembers: "您的家庭还有其他成员,因此无法在此删除账户。请联系运营者。",
|
|
1035
|
+
rateLimited,
|
|
1036
|
+
failed: "无法删除您的账户,请重试。",
|
|
1037
|
+
},
|
|
1038
|
+
dataExport: {
|
|
1039
|
+
title: "导出您的数据",
|
|
1040
|
+
description: "下载您账户数据的副本(JSON 文件)。",
|
|
1041
|
+
download: "下载我的数据",
|
|
1042
|
+
started: "下载已开始。",
|
|
1043
|
+
saveAgain: "没有开始?保存文件",
|
|
1044
|
+
rateLimited: (seconds) =>
|
|
1045
|
+
seconds && seconds > 0
|
|
1046
|
+
? `您刚刚导出过数据,请 ${wait(seconds)}后重试。`
|
|
1047
|
+
: "您刚刚导出过数据,请一分钟后重试。",
|
|
1048
|
+
failed: "导出失败,请重试。",
|
|
1049
|
+
},
|
|
1050
|
+
userRoster: {
|
|
1051
|
+
name: "姓名",
|
|
1052
|
+
email: "电子邮箱",
|
|
1053
|
+
role: "角色",
|
|
1054
|
+
state: "状态",
|
|
1055
|
+
created: "创建时间",
|
|
1056
|
+
lastLogin: "最后登录",
|
|
1057
|
+
never: "从未",
|
|
1058
|
+
actions: "操作",
|
|
1059
|
+
actionsFor: (name) => `${name} 的操作`,
|
|
1060
|
+
},
|
|
1061
|
+
roleSelect: {
|
|
1062
|
+
label: "角色",
|
|
1063
|
+
rolesLegend: "角色",
|
|
1064
|
+
roleOf: (name) => `${name} 的角色`,
|
|
1065
|
+
lockedLastAdmin: "最后一位活跃管理员必须保留此角色。",
|
|
1066
|
+
lockedSelf: "您不能更改自己的角色。",
|
|
1067
|
+
notForLastAdmin: "不适用于最后一位管理员",
|
|
1068
|
+
notForSelf: "不适用于您自己的账户",
|
|
1069
|
+
unavailable: (role, reason) => `${role}(${reason})`,
|
|
1070
|
+
},
|
|
1071
|
+
reviewerScope: {
|
|
1072
|
+
languages: "语言",
|
|
1073
|
+
hint: "勾选此人负责审校的语言。",
|
|
1074
|
+
none: "未选择语言:保存后将取消审校者角色。",
|
|
1075
|
+
areas: "仅限",
|
|
1076
|
+
legalOnly: "仅法律页面",
|
|
1077
|
+
legalOnlyHint: "运营者信息、隐私政策和使用条款——适合律师而非母语审校者。",
|
|
1078
|
+
failed: "无法保存审校范围,请重试。",
|
|
1079
|
+
},
|
|
1080
|
+
adminAction: {
|
|
1081
|
+
confirm: "确认",
|
|
1082
|
+
cancel: "取消",
|
|
1083
|
+
close: "关闭",
|
|
1084
|
+
lastAdmin: "这是最后一位活跃管理员。请先将其他人设为管理员。",
|
|
1085
|
+
self: "不能对您自己的账户执行此操作。",
|
|
1086
|
+
confirmationMismatch: "该地址与此账户不符。请检查您当前所在的账户。",
|
|
1087
|
+
otherCompanies:
|
|
1088
|
+
"此账户也属于其他公司,因此只有平台运营者才能执行此操作。您可以改为将其从本公司移除。",
|
|
1089
|
+
removeFromCompany: "从公司移除",
|
|
1090
|
+
failed: "操作未成功,请重试。",
|
|
1091
|
+
},
|
|
1092
|
+
adminActionLog: {
|
|
1093
|
+
title: "管理操作",
|
|
1094
|
+
empty: "暂无管理操作。",
|
|
1095
|
+
loading: "加载中…",
|
|
1096
|
+
by: (actor) => `操作者:${actor}`,
|
|
1097
|
+
bySelf: "用户本人",
|
|
1098
|
+
automatic: "自动执行",
|
|
1099
|
+
erased: "已删除的账户",
|
|
1100
|
+
filteredTo: (target) => `仅 ${target}`,
|
|
1101
|
+
showAll: "显示全部操作",
|
|
1102
|
+
filterBy: (target) => `仅显示针对 ${target} 的操作`,
|
|
1103
|
+
actions: {
|
|
1104
|
+
deactivate: "已停用",
|
|
1105
|
+
reactivate: "已重新激活",
|
|
1106
|
+
role: "角色已更改",
|
|
1107
|
+
membership_remove: "已从公司移除",
|
|
1108
|
+
password_change_require: "已要求设置新密码",
|
|
1109
|
+
password_change_withdraw: "已撤回新密码要求",
|
|
1110
|
+
mail_verification: "已发送确认邮件",
|
|
1111
|
+
mail_reset: "已发送密码重置邮件",
|
|
1112
|
+
reviewer: "审校范围已更改",
|
|
1113
|
+
invite: "已邀请",
|
|
1114
|
+
invite_resend: "已重新发送邀请",
|
|
1115
|
+
invite_revoke: "已撤回邀请",
|
|
1116
|
+
transfer: "工作已移交",
|
|
1117
|
+
deletion_request: "已申请删除",
|
|
1118
|
+
deletion_cancel: "已取消删除",
|
|
1119
|
+
erase: "账户已永久删除",
|
|
1120
|
+
},
|
|
1121
|
+
},
|
|
1122
|
+
transferOwnership: {
|
|
1123
|
+
title: (name) => `移交 ${name} 的工作`,
|
|
1124
|
+
body: "此账户拥有的全部内容将一次性转移到您选择的账户。",
|
|
1125
|
+
recipient: "移交给",
|
|
1126
|
+
choose: "选择账户…",
|
|
1127
|
+
chooseFirst: "请选择接收工作的人",
|
|
1128
|
+
confirm: "移交",
|
|
1129
|
+
customer: "客户",
|
|
1130
|
+
deactivated: "已停用",
|
|
1131
|
+
self: "同一账户",
|
|
1132
|
+
unavailable: (account, reason) => `${account}(${reason})`,
|
|
1133
|
+
noCandidates: "没有其他账户可以接收。",
|
|
1134
|
+
},
|
|
1135
|
+
invitations: {
|
|
1136
|
+
email: "电子邮箱地址",
|
|
1137
|
+
invalidEmail: "请输入完整的电子邮箱地址。",
|
|
1138
|
+
role: "角色",
|
|
1139
|
+
scope: "范围",
|
|
1140
|
+
scopeNone: "无",
|
|
1141
|
+
language: "邀请邮件语言",
|
|
1142
|
+
note: "备注",
|
|
1143
|
+
invite: "邀请",
|
|
1144
|
+
listTitle: "邀请",
|
|
1145
|
+
empty: "尚未邀请任何人。",
|
|
1146
|
+
loading: "加载中…",
|
|
1147
|
+
status: { open: "等待中", accepted: "已接受", expired: "已过期", revoked: "已撤回" },
|
|
1148
|
+
sent: (date) => `发送于 ${date}`,
|
|
1149
|
+
expires: (date) => `${date} 到期`,
|
|
1150
|
+
invitedBy: (name) => `邀请人:${name}`,
|
|
1151
|
+
resend: (email) => `向 ${email} 发送新链接`,
|
|
1152
|
+
copyLink: "复制邀请链接",
|
|
1153
|
+
revoke: (email) => `撤回对 ${email} 的邀请`,
|
|
1154
|
+
consoleHint:
|
|
1155
|
+
"此服务器不发送邮件——邮件会写入服务器日志。请在这里复制每个邀请链接并自行转交:链接只显示一次。",
|
|
1156
|
+
linkReady: (email) => `${email} 的邀请链接,仅显示这一次:`,
|
|
1157
|
+
notSent: (email) => `已邀请 ${email},但邮件未能发送。请重新发送。`,
|
|
1158
|
+
failed: "操作未成功,请重试。",
|
|
1159
|
+
},
|
|
817
1160
|
characterCount: {
|
|
818
1161
|
count: (used, max) => `已输入 ${n(used)}/${n(max)} 个字符`,
|
|
819
1162
|
remaining: (left) => `还可输入 ${n(left)} 个字符`,
|
package/src/i18n/review.ts
CHANGED
|
@@ -294,4 +294,48 @@ export const KIT_LABEL_SAMPLES: Readonly<Record<string, readonly (readonly unkno
|
|
|
294
294
|
"legal.sections.terms.language.body": operatorSample,
|
|
295
295
|
"legal.translation.note": operatorSample,
|
|
296
296
|
"legal.translation.show": operatorSample,
|
|
297
|
+
// 0.29.0: the sign-in and sign-up parts (docs/auth-harmonization.md).
|
|
298
|
+
"signIn.tagHint": [["{{taggedAddress}}"]],
|
|
299
|
+
"register.emailTagUse": [["{{address}}"]],
|
|
300
|
+
"forgotPassword.sent": [["{{email}}"]],
|
|
301
|
+
"resetPassword.intro": [["{{email}}"]],
|
|
302
|
+
"verifyEmail.resendIn": [[30]],
|
|
303
|
+
"acceptInvitation.joined": [["{{name}}"]],
|
|
304
|
+
"companySwitcher.current": [["{{name}}"]],
|
|
305
|
+
// 0.30.0: the user administration and the account's own settings
|
|
306
|
+
// (docs/user-admin-harmonization.md). `rateLimited` with and without a wait.
|
|
307
|
+
"signIn.recoveryCodeHint": [[16]],
|
|
308
|
+
"signIn.rateLimited": [[], [30], [300]],
|
|
309
|
+
"register.rateLimited": [[], [30], [300]],
|
|
310
|
+
"forgotPassword.rateLimited": [[], [30], [300]],
|
|
311
|
+
"resetPassword.rateLimited": [[], [30], [300]],
|
|
312
|
+
"emailChange.emailTagUse": [["{{address}}"]],
|
|
313
|
+
"emailChange.pending": [["{{newEmail}}"]],
|
|
314
|
+
"emailChange.pendingHint": [["{{currentEmail}}"]],
|
|
315
|
+
"emailChange.confirmed": [["{{email}}"]],
|
|
316
|
+
"emailChange.rateLimited": [[], [30], [300]],
|
|
317
|
+
"sessions.lastActive": [["{{when}}"]],
|
|
318
|
+
"sessions.ip": [["{{address}}"]],
|
|
319
|
+
"sessions.revokeItem": [["{{device}}"]],
|
|
320
|
+
"deleteAccount.afterDays": [[1], [30]],
|
|
321
|
+
"deleteAccount.handOver": [[1], [3]],
|
|
322
|
+
"deleteAccount.lastAdminOf": [["{{companies}}"]],
|
|
323
|
+
"deleteAccount.rateLimited": [[], [30], [300]],
|
|
324
|
+
"dataExport.rateLimited": [[], [30], [300]],
|
|
325
|
+
"userRoster.actionsFor": [["{{name}}"]],
|
|
326
|
+
"roleSelect.roleOf": [["{{name}}"]],
|
|
327
|
+
"roleSelect.unavailable": [["{{role}}", "{{reason}}"]],
|
|
328
|
+
"adminActionLog.by": [["{{actor}}"]],
|
|
329
|
+
"adminActionLog.filteredTo": [["{{target}}"]],
|
|
330
|
+
"adminActionLog.filterBy": [["{{target}}"]],
|
|
331
|
+
"transferOwnership.title": [["{{name}}"]],
|
|
332
|
+
"transferOwnership.unavailable": [["{{account}}", "{{reason}}"]],
|
|
333
|
+
"invitations.sent": [["{{date}}"]],
|
|
334
|
+
"invitations.expires": [["{{date}}"]],
|
|
335
|
+
"invitations.invitedBy": [["{{name}}"]],
|
|
336
|
+
"invitations.resend": [["{{email}}"]],
|
|
337
|
+
"invitations.revoke": [["{{email}}"]],
|
|
338
|
+
"invitations.linkReady": [["{{email}}"]],
|
|
339
|
+
"invitations.notSent": [["{{email}}"]],
|
|
340
|
+
"accountState.deletionOn": [["{{date}}"]],
|
|
297
341
|
};
|
package/src/index.ts
CHANGED
|
@@ -487,6 +487,152 @@ export type {
|
|
|
487
487
|
LegalFramedSectionLabels,
|
|
488
488
|
} from "./components/legal";
|
|
489
489
|
export { LegalPage, LegalKitSection, LegalAcceptCheckbox, LEGAL_SKELETON } from "./components/legal-page";
|
|
490
|
+
|
|
491
|
+
// 0.29.0 (docs/auth-harmonization.md): sign-in, sign-up and the signed-out pages — forms
|
|
492
|
+
// that take callbacks and never send a request themselves — the person-name order of each
|
|
493
|
+
// language, and kastlan's company switcher.
|
|
494
|
+
export { SignInForm, DEFAULT_SIGN_IN_LABELS } from "./auth/sign-in-form";
|
|
495
|
+
export type {
|
|
496
|
+
SignInFormProps,
|
|
497
|
+
SignInLabels,
|
|
498
|
+
SignInAnswer,
|
|
499
|
+
SignInStep,
|
|
500
|
+
SignInAction,
|
|
501
|
+
SignInCredentials,
|
|
502
|
+
SignInCodeValues,
|
|
503
|
+
SignInNewPasswordValues,
|
|
504
|
+
} from "./auth/sign-in-form";
|
|
505
|
+
export { RegisterForm, DEFAULT_REGISTER_LABELS } from "./auth/register-form";
|
|
506
|
+
export type { RegisterFormProps, RegisterLabels, RegisterValues } from "./auth/register-form";
|
|
507
|
+
export { CompleteNameDialog, DEFAULT_COMPLETE_NAME_LABELS } from "./auth/complete-name-dialog";
|
|
508
|
+
export type { CompleteNameDialogProps, CompleteNameLabels, CompleteNameValues } from "./auth/complete-name-dialog";
|
|
509
|
+
export { taggedEmail } from "./auth/email-tag";
|
|
510
|
+
export { isAuthError, authErrorCode } from "./auth/auth-errors";
|
|
511
|
+
export type { AuthErrorCode } from "./auth/auth-errors";
|
|
512
|
+
export { ForgotPasswordForm, DEFAULT_FORGOT_PASSWORD_LABELS } from "./auth/forgot-password-form";
|
|
513
|
+
export type { ForgotPasswordFormProps, ForgotPasswordLabels } from "./auth/forgot-password-form";
|
|
514
|
+
export { ResetPasswordForm, DEFAULT_RESET_PASSWORD_LABELS } from "./auth/reset-password-form";
|
|
515
|
+
export type {
|
|
516
|
+
ResetPasswordFormProps,
|
|
517
|
+
ResetPasswordLabels,
|
|
518
|
+
ResetPasswordCheck,
|
|
519
|
+
ResetPasswordValues,
|
|
520
|
+
ResetPasswordResult,
|
|
521
|
+
} from "./auth/reset-password-form";
|
|
522
|
+
export { VerifyEmailStatus, EmailVerificationBanner, DEFAULT_VERIFY_EMAIL_LABELS } from "./auth/verify-email";
|
|
523
|
+
export type {
|
|
524
|
+
VerifyEmailStatusProps,
|
|
525
|
+
EmailVerificationBannerProps,
|
|
526
|
+
VerifyEmailLabels,
|
|
527
|
+
VerifyEmailFailure,
|
|
528
|
+
} from "./auth/verify-email";
|
|
529
|
+
export { NotFoundPage, DEFAULT_NOT_FOUND_LABELS } from "./auth/not-found-page";
|
|
530
|
+
export type { NotFoundPageProps, NotFoundLabels } from "./auth/not-found-page";
|
|
531
|
+
export { AcceptInvitation, DEFAULT_ACCEPT_INVITATION_LABELS } from "./auth/accept-invitation";
|
|
532
|
+
export type {
|
|
533
|
+
AcceptInvitationProps,
|
|
534
|
+
AcceptInvitationLabels,
|
|
535
|
+
AcceptInvitationResult,
|
|
536
|
+
AcceptInvitationFailure,
|
|
537
|
+
} from "./auth/accept-invitation";
|
|
538
|
+
export type { AuthHeadingLevel } from "./auth/status-parts";
|
|
539
|
+
export { formatPersonName, personInitials } from "./lib/person-name";
|
|
540
|
+
export type { PersonName } from "./lib/person-name";
|
|
541
|
+
export { CompanySwitcher, DEFAULT_COMPANY_SWITCHER_LABELS } from "./shell/company-switcher";
|
|
542
|
+
export type { CompanySwitcherProps, CompanySwitcherLabels, CompanySwitcherCompany } from "./shell/company-switcher";
|
|
543
|
+
|
|
544
|
+
// 0.30.0 (docs/user-admin-harmonization.md): the admin user list and its actions, the
|
|
545
|
+
// invitations panel, and the account's own settings — email change, sessions, deletion,
|
|
546
|
+
// export. Callbacks only; the confirmation level is the server's.
|
|
547
|
+
export { isRateLimited, retryAfterSeconds } from "./auth/auth-errors";
|
|
548
|
+
export type { AccountErrorCode, KitErrorCode } from "./auth/auth-errors";
|
|
549
|
+
export { EmailChangeSetting, DEFAULT_EMAIL_CHANGE_LABELS } from "./account/email-change-setting";
|
|
550
|
+
export type {
|
|
551
|
+
EmailChangeSettingProps,
|
|
552
|
+
EmailChangeLabels,
|
|
553
|
+
EmailChangeValues,
|
|
554
|
+
EmailChangeAction,
|
|
555
|
+
} from "./account/email-change-setting";
|
|
556
|
+
export { SessionsSetting, DEFAULT_SESSIONS_LABELS } from "./account/sessions-setting";
|
|
557
|
+
export type { SessionsSettingProps, SessionsLabels, SessionItem, SessionId, SessionsAction } from "./account/sessions-setting";
|
|
558
|
+
export { DeleteAccountSetting, DEFAULT_DELETE_ACCOUNT_LABELS } from "./account/delete-account-setting";
|
|
559
|
+
export type {
|
|
560
|
+
DeleteAccountSettingProps,
|
|
561
|
+
DeleteAccountLabels,
|
|
562
|
+
DeleteAccountValues,
|
|
563
|
+
DeletionMode,
|
|
564
|
+
DeleteAccountConsequence,
|
|
565
|
+
} from "./account/delete-account-setting";
|
|
566
|
+
export { DataExportSetting, DEFAULT_DATA_EXPORT_LABELS } from "./account/data-export-setting";
|
|
567
|
+
export type { DataExportSettingProps, DataExportLabels, DataExportFile } from "./account/data-export-setting";
|
|
568
|
+
export {
|
|
569
|
+
userRosterColumns,
|
|
570
|
+
useUserRosterColumns,
|
|
571
|
+
UserIdentityCell,
|
|
572
|
+
UserRowActions,
|
|
573
|
+
adminUserStates,
|
|
574
|
+
userRosterSort,
|
|
575
|
+
USER_ROSTER_SORT_KEYS,
|
|
576
|
+
DEFAULT_USER_ROSTER_LABELS,
|
|
577
|
+
} from "./admin/user-roster";
|
|
578
|
+
export type {
|
|
579
|
+
UserRosterRow,
|
|
580
|
+
AdminUserStateFields,
|
|
581
|
+
RosterState,
|
|
582
|
+
UserRosterSortKey,
|
|
583
|
+
UserRosterLabels,
|
|
584
|
+
UserIdentityCellProps,
|
|
585
|
+
UserRowAction,
|
|
586
|
+
UserRowActionList,
|
|
587
|
+
UserRowActionsProps,
|
|
588
|
+
RoleEditing,
|
|
589
|
+
UserRosterColumnsOptions,
|
|
590
|
+
} from "./admin/user-roster";
|
|
591
|
+
export { RoleSelect, RolesEditor, DEFAULT_ROLE_SELECT_LABELS } from "./admin/role-select";
|
|
592
|
+
export type { RoleSelectProps, RolesEditorProps, RoleSelectLabels, RoleLock, RoleLockCode } from "./admin/role-select";
|
|
593
|
+
export { ReviewerScopeEditor, DEFAULT_REVIEWER_SCOPE_LABELS } from "./admin/reviewer-scope-editor";
|
|
594
|
+
export type {
|
|
595
|
+
ReviewerScope,
|
|
596
|
+
ReviewerScopeArea,
|
|
597
|
+
ReviewerScopeLanguage,
|
|
598
|
+
ReviewerScopeLabels,
|
|
599
|
+
ReviewerScopeEditorProps,
|
|
600
|
+
} from "./admin/reviewer-scope-editor";
|
|
601
|
+
export { AdminActionConfirm, DEFAULT_ADMIN_ACTION_LABELS } from "./admin/admin-action-confirm";
|
|
602
|
+
export type {
|
|
603
|
+
AdminConfirmLevel,
|
|
604
|
+
AdminActionConfirmValues,
|
|
605
|
+
AdminActionTarget,
|
|
606
|
+
AdminActionLabels,
|
|
607
|
+
AdminActionConfirmProps,
|
|
608
|
+
} from "./admin/admin-action-confirm";
|
|
609
|
+
export { AdminActionLog, ADMIN_ACTION_KINDS, DEFAULT_ADMIN_ACTION_LOG_LABELS } from "./admin/admin-action-log";
|
|
610
|
+
export type {
|
|
611
|
+
AdminActionKind,
|
|
612
|
+
AdminActionLogEntry,
|
|
613
|
+
AdminActionLogLabels,
|
|
614
|
+
AdminActionLogPaging,
|
|
615
|
+
AdminActionLogProps,
|
|
616
|
+
} from "./admin/admin-action-log";
|
|
617
|
+
export { TransferOwnershipDialog, DEFAULT_TRANSFER_OWNERSHIP_LABELS } from "./admin/transfer-ownership-dialog";
|
|
618
|
+
export type {
|
|
619
|
+
TransferCandidate,
|
|
620
|
+
TransferUnavailable,
|
|
621
|
+
TransferValues,
|
|
622
|
+
TransferOwnershipLabels,
|
|
623
|
+
TransferOwnershipDialogProps,
|
|
624
|
+
} from "./admin/transfer-ownership-dialog";
|
|
625
|
+
export { InvitationsPanel, DEFAULT_INVITATIONS_LABELS } from "./admin/invitations-panel";
|
|
626
|
+
export type {
|
|
627
|
+
InvitationStatus,
|
|
628
|
+
InvitationRow,
|
|
629
|
+
InvitationDraft,
|
|
630
|
+
InvitationSentAnswer,
|
|
631
|
+
InvitationScope,
|
|
632
|
+
InvitationsLabels,
|
|
633
|
+
InvitationsPanelProps,
|
|
634
|
+
} from "./admin/invitations-panel";
|
|
635
|
+
export type { AdminPerson } from "./admin/admin-parts";
|
|
490
636
|
export type {
|
|
491
637
|
LegalPageProps,
|
|
492
638
|
LegalKitSectionProps,
|