@arcblock/did-connect-core 4.1.52 → 4.1.54
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/ui/design-tokens.js +4 -4
- package/dist/ui/i18n.d.ts +3 -1
- package/dist/ui/i18n.d.ts.map +1 -1
- package/dist/ui/i18n.js +120 -32
- package/dist/ui/i18n.js.map +1 -1
- package/dist/ui/index.bundle.js +1051 -191
- package/dist/ui/index.d.ts +2 -1
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +1 -0
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/login-dialog.d.ts +26 -0
- package/dist/ui/login-dialog.d.ts.map +1 -0
- package/dist/ui/login-dialog.js +210 -0
- package/dist/ui/login-dialog.js.map +1 -0
- package/dist/ui/login-page.d.ts +77 -2
- package/dist/ui/login-page.d.ts.map +1 -1
- package/dist/ui/login-page.js +572 -146
- package/dist/ui/login-page.js.map +1 -1
- package/dist/ui/qr-renderer.d.ts.map +1 -1
- package/dist/ui/qr-renderer.js +19 -3
- package/dist/ui/qr-renderer.js.map +1 -1
- package/dist/ui/styles.d.ts.map +1 -1
- package/dist/ui/styles.js +113 -22
- package/dist/ui/styles.js.map +1 -1
- package/dist/ui/webauthn-browser.d.ts +1 -0
- package/dist/ui/webauthn-browser.d.ts.map +1 -1
- package/dist/ui/webauthn-browser.js +19 -9
- package/dist/ui/webauthn-browser.js.map +1 -1
- package/package.json +1 -1
package/dist/ui/design-tokens.js
CHANGED
|
@@ -115,7 +115,7 @@ export const lightTokens = {
|
|
|
115
115
|
};
|
|
116
116
|
// ─── 2. CSS Custom Properties ────────────────────────────────────────────────
|
|
117
117
|
export const DESIGN_TOKENS_CSS = /* css */ `
|
|
118
|
-
:root {
|
|
118
|
+
:root, :host {
|
|
119
119
|
/* Backgrounds — layered depth */
|
|
120
120
|
--bg-root: ${tokens.bg.root};
|
|
121
121
|
--bg-surface: ${tokens.bg.surface};
|
|
@@ -171,7 +171,7 @@ export const DESIGN_TOKENS_CSS = /* css */ `
|
|
|
171
171
|
}
|
|
172
172
|
`;
|
|
173
173
|
export const DESIGN_TOKENS_LIGHT_CSS = /* css */ `
|
|
174
|
-
[data-theme="light"] {
|
|
174
|
+
[data-theme="light"], :host([data-theme="light"]) {
|
|
175
175
|
--bg-root: ${lightTokens.bg.root};
|
|
176
176
|
--bg-surface: ${lightTokens.bg.surface};
|
|
177
177
|
--bg-card: ${lightTokens.bg.card};
|
|
@@ -200,8 +200,8 @@ export const DESIGN_TOKENS_LIGHT_CSS = /* css */ `
|
|
|
200
200
|
// ─── 3. Global Reset + Base Typography ───────────────────────────────────────
|
|
201
201
|
export const DESIGN_RESET_CSS = /* css */ `
|
|
202
202
|
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
|
|
203
|
-
html { color-scheme: dark; }
|
|
204
|
-
html[data-theme="light"] { color-scheme: light; }
|
|
203
|
+
html, :host { color-scheme: dark; }
|
|
204
|
+
html[data-theme="light"], :host([data-theme="light"]) { color-scheme: light; }
|
|
205
205
|
body {
|
|
206
206
|
font-family: ${tokens.font.family};
|
|
207
207
|
background: var(--bg-root);
|
package/dist/ui/i18n.d.ts
CHANGED
|
@@ -8,9 +8,11 @@ export declare const SUPPORTED_LOCALES: Array<{
|
|
|
8
8
|
}>;
|
|
9
9
|
/**
|
|
10
10
|
* Get a translated message with optional interpolation.
|
|
11
|
-
* Supports `{param}` placeholders: `t('signInTo', 'en', { appName: 'MyApp' })` → "Sign in
|
|
11
|
+
* Supports `{param}` placeholders: `t('signInTo', 'en', { appName: 'MyApp' })` → "Sign in or join MyApp"
|
|
12
12
|
* Looks up the internal code exactly (`zh-TW` is not `zh`).
|
|
13
13
|
* Falls back to 'en' for an unknown locale, returns `key` if the key is unknown.
|
|
14
|
+
* A known locale with a missing key also uses the English sentence.
|
|
14
15
|
*/
|
|
16
|
+
export declare function hasOwnTranslation(locale: string, key: string): boolean;
|
|
15
17
|
export declare function t(key: string, locale?: string, params?: Record<string, string>): string;
|
|
16
18
|
//# sourceMappingURL=i18n.d.ts.map
|
package/dist/ui/i18n.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/ui/i18n.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/ui/i18n.ts"],"names":[],"mappings":"AAAA;;GAEG;AA+SH,4CAA4C;AAC5C,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAGpE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAEtE;AAED,wBAAgB,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CASvF"}
|
package/dist/ui/i18n.js
CHANGED
|
@@ -3,18 +3,39 @@
|
|
|
3
3
|
*/
|
|
4
4
|
const messages = {
|
|
5
5
|
en: {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
emailExplanation: 'We will send you a verification code. No password needed.',
|
|
7
|
+
otherMethods: 'Other ways to sign in',
|
|
8
|
+
passkeyCreateAccount: 'Create an account with Passkey',
|
|
9
|
+
lastUsed: 'Last used',
|
|
10
|
+
passkeyExplanation: 'Create a new account using your fingerprint, face, or device unlock. Your device will ask you to save a Passkey. Already have an account? Go back to sign in.',
|
|
11
|
+
continueWith: 'Continue with {provider}',
|
|
12
|
+
oauthWaiting: 'Continue in the {provider} window',
|
|
13
|
+
oauthIncomplete: 'Sign-in is not complete. Reopen the window or choose another method.',
|
|
14
|
+
oauthReopen: 'Reopen window',
|
|
15
|
+
oauthUnconfirmed: 'We could not confirm sign-in. Reload this page to check your session before trying again.',
|
|
16
|
+
oauthCheckSession: 'Reload and check sign-in',
|
|
17
|
+
oauthCancelled: 'Stopped waiting for sign-in. If the provider window is still open, close it before retrying.',
|
|
18
|
+
oauthDenied: 'Authorization was declined. Try again or choose another sign-in method.',
|
|
19
|
+
oauthBlocked: 'Your browser blocked the sign-in window. Reopen it or continue on this page.',
|
|
20
|
+
oauthTimedOut: 'Sign-in timed out. Reopen the window to start again.',
|
|
21
|
+
oauthFailed: 'We could not complete sign-in. Try again or choose another method.',
|
|
22
|
+
oauthFullPage: 'Continue on this page',
|
|
23
|
+
emailEdit: 'Change email',
|
|
24
|
+
emailCooldown: 'Resend in {seconds}s',
|
|
25
|
+
walletRetry: 'Wallet did not open? Try again or scan the QR code.',
|
|
26
|
+
tryAgain: 'Try again',
|
|
27
|
+
signIn: 'Sign in or create an account',
|
|
28
|
+
signInTo: 'Sign in or join {appName}',
|
|
8
29
|
passkeyButton: 'Continue with Passkey',
|
|
9
30
|
passkeySignIn: 'Sign in with Passkey',
|
|
10
31
|
passkeyCreate: 'Create Passkey',
|
|
11
|
-
passkeyFirstTime: 'First time? Create
|
|
32
|
+
passkeyFirstTime: 'First time? Create an account',
|
|
12
33
|
passkeyBackToSignIn: 'Back to sign in',
|
|
13
34
|
passkeyWaiting: 'Waiting for passkey…',
|
|
14
35
|
passkeyCreating: 'Creating your passkey…',
|
|
15
|
-
passkeyNoLocal: '
|
|
36
|
+
passkeyNoLocal: 'Passkey verification was not completed. Retry, use another device, or choose another method.',
|
|
16
37
|
passkeyUseAnotherDevice: 'Use another device',
|
|
17
|
-
passkeyCreateInstead: '
|
|
38
|
+
passkeyCreateInstead: 'First time? Create an account',
|
|
18
39
|
didWalletButton: 'Continue with DID Wallet',
|
|
19
40
|
didWalletButtonShort: 'DID Wallet',
|
|
20
41
|
scanWithWallet: 'Scan with your DID Wallet',
|
|
@@ -47,26 +68,47 @@ const messages = {
|
|
|
47
68
|
emailTitle: 'Continue with Email',
|
|
48
69
|
emailSubmit: 'Send Code',
|
|
49
70
|
emailSending: 'Sending code...',
|
|
50
|
-
emailSent: 'We sent
|
|
51
|
-
emailCodePlaceholder: '
|
|
71
|
+
emailSent: 'We sent an 8-digit code to {email}',
|
|
72
|
+
emailCodePlaceholder: '8-digit code',
|
|
52
73
|
emailVerify: 'Verify',
|
|
53
74
|
emailResend: 'Resend code',
|
|
54
75
|
emailInvalid: 'Please enter a valid email address.',
|
|
55
|
-
emailCodeInvalid: 'Please enter the
|
|
76
|
+
emailCodeInvalid: 'Please enter the 8-digit code.',
|
|
56
77
|
},
|
|
57
78
|
zh: {
|
|
58
|
-
|
|
59
|
-
|
|
79
|
+
emailExplanation: '我们会发送验证码,无需密码。',
|
|
80
|
+
otherMethods: '其他登录方式',
|
|
81
|
+
passkeyCreateAccount: '使用 Passkey 创建账户',
|
|
82
|
+
lastUsed: '上次使用',
|
|
83
|
+
passkeyExplanation: '使用指纹、面容或设备解锁方式创建新账户,无需密码。设备会提示保存 Passkey。已有账户?请返回登录。',
|
|
84
|
+
continueWith: '使用 {provider} 继续',
|
|
85
|
+
oauthWaiting: '请在 {provider} 窗口中继续',
|
|
86
|
+
oauthIncomplete: '登录尚未完成。您可以重新打开窗口或选择其他方式。',
|
|
87
|
+
oauthReopen: '重新打开窗口',
|
|
88
|
+
oauthUnconfirmed: '暂时无法确认登录结果。请先重新加载页面检查登录状态,再决定是否重试。',
|
|
89
|
+
oauthCheckSession: '重新加载并检查登录状态',
|
|
90
|
+
oauthCancelled: '已停止等待登录。若授权窗口仍然打开,请关闭后再重试。',
|
|
91
|
+
oauthDenied: '您未同意授权。可以重试或选择其他登录方式。',
|
|
92
|
+
oauthBlocked: '浏览器拦截了登录窗口。请重新打开,或在当前页面继续。',
|
|
93
|
+
oauthTimedOut: '登录等待已超时。请重新打开窗口再试。',
|
|
94
|
+
oauthFailed: '未能完成登录。请重试或选择其他方式。',
|
|
95
|
+
oauthFullPage: '在当前页面继续',
|
|
96
|
+
emailEdit: '修改邮箱',
|
|
97
|
+
emailCooldown: '{seconds} 秒后重发',
|
|
98
|
+
walletRetry: '钱包未打开?请重试或扫描二维码。',
|
|
99
|
+
tryAgain: '重试',
|
|
100
|
+
signIn: '登录或创建账户',
|
|
101
|
+
signInTo: '登录或加入 {appName}',
|
|
60
102
|
passkeyButton: '使用 Passkey 继续',
|
|
61
103
|
passkeySignIn: '使用 Passkey 登录',
|
|
62
104
|
passkeyCreate: '创建 Passkey',
|
|
63
|
-
passkeyFirstTime: '
|
|
105
|
+
passkeyFirstTime: '首次使用?创建账户',
|
|
64
106
|
passkeyBackToSignIn: '返回登录',
|
|
65
107
|
passkeyWaiting: '正在等待 Passkey…',
|
|
66
108
|
passkeyCreating: '正在创建 Passkey…',
|
|
67
|
-
passkeyNoLocal: '
|
|
109
|
+
passkeyNoLocal: '这次未完成 Passkey 验证。请重试、使用其他设备,或选择其他登录方式。',
|
|
68
110
|
passkeyUseAnotherDevice: '用其他设备登录',
|
|
69
|
-
passkeyCreateInstead: '
|
|
111
|
+
passkeyCreateInstead: '首次使用?创建账户',
|
|
70
112
|
didWalletButton: '使用 DID Wallet 继续',
|
|
71
113
|
didWalletButtonShort: 'DID Wallet',
|
|
72
114
|
scanWithWallet: '请使用 DID Wallet 扫码',
|
|
@@ -100,25 +142,46 @@ const messages = {
|
|
|
100
142
|
emailSubmit: '发送验证码',
|
|
101
143
|
emailSending: '正在发送验证码...',
|
|
102
144
|
emailSent: '验证码已发送至 {email}',
|
|
103
|
-
emailCodePlaceholder: '
|
|
145
|
+
emailCodePlaceholder: '8 位验证码',
|
|
104
146
|
emailVerify: '验证',
|
|
105
147
|
emailResend: '重新发送',
|
|
106
148
|
emailInvalid: '请输入有效的邮箱地址。',
|
|
107
|
-
emailCodeInvalid: '请输入
|
|
149
|
+
emailCodeInvalid: '请输入 8 位验证码。',
|
|
108
150
|
},
|
|
109
151
|
'zh-TW': {
|
|
110
|
-
|
|
111
|
-
|
|
152
|
+
emailExplanation: '我們會傳送驗證碼,無需密碼。',
|
|
153
|
+
otherMethods: '其他登入方式',
|
|
154
|
+
passkeyCreateAccount: '使用 Passkey 建立帳戶',
|
|
155
|
+
lastUsed: '上次使用',
|
|
156
|
+
passkeyExplanation: '使用指紋、面容或裝置解鎖方式建立新帳戶,無需密碼。裝置會提示儲存 Passkey。已有帳戶?請返回登入。',
|
|
157
|
+
continueWith: '使用 {provider} 繼續',
|
|
158
|
+
oauthWaiting: '請在 {provider} 視窗中繼續',
|
|
159
|
+
oauthIncomplete: '登入尚未完成。您可以重新開啟視窗或選擇其他方式。',
|
|
160
|
+
oauthReopen: '重新開啟視窗',
|
|
161
|
+
oauthUnconfirmed: '暫時無法確認登入結果。請先重新載入頁面檢查登入狀態,再決定是否重試。',
|
|
162
|
+
oauthCheckSession: '重新載入並檢查登入狀態',
|
|
163
|
+
oauthCancelled: '已停止等待登入。若授權視窗仍然開啟,請關閉後再重試。',
|
|
164
|
+
oauthDenied: '您未同意授權。可以重試或選擇其他登入方式。',
|
|
165
|
+
oauthBlocked: '瀏覽器封鎖了登入視窗。請重新開啟,或在目前頁面繼續。',
|
|
166
|
+
oauthTimedOut: '登入等待已逾時。請重新開啟視窗再試。',
|
|
167
|
+
oauthFailed: '未能完成登入。請重試或選擇其他方式。',
|
|
168
|
+
oauthFullPage: '在目前頁面繼續',
|
|
169
|
+
emailEdit: '修改電子郵件',
|
|
170
|
+
emailCooldown: '{seconds} 秒後重新傳送',
|
|
171
|
+
walletRetry: '錢包未開啟?請重試或掃碼。',
|
|
172
|
+
tryAgain: '重試',
|
|
173
|
+
signIn: '登入或建立帳戶',
|
|
174
|
+
signInTo: '登入或加入 {appName}',
|
|
112
175
|
passkeyButton: '使用 Passkey 繼續',
|
|
113
176
|
passkeySignIn: '使用 Passkey 登入',
|
|
114
177
|
passkeyCreate: '建立 Passkey',
|
|
115
|
-
passkeyFirstTime: '
|
|
178
|
+
passkeyFirstTime: '第一次使用?建立帳戶',
|
|
116
179
|
passkeyBackToSignIn: '返回登入',
|
|
117
180
|
passkeyWaiting: '正在等待 Passkey…',
|
|
118
181
|
passkeyCreating: '正在建立 Passkey…',
|
|
119
|
-
passkeyNoLocal: '
|
|
182
|
+
passkeyNoLocal: '這次未完成 Passkey 驗證。請重試、使用其他裝置,或選擇其他登入方式。',
|
|
120
183
|
passkeyUseAnotherDevice: '用其他裝置登入',
|
|
121
|
-
passkeyCreateInstead: '
|
|
184
|
+
passkeyCreateInstead: '第一次使用?建立帳戶',
|
|
122
185
|
didWalletButton: '使用 DID Wallet 繼續',
|
|
123
186
|
didWalletButtonShort: 'DID Wallet',
|
|
124
187
|
scanWithWallet: '請使用 DID Wallet 掃碼',
|
|
@@ -152,25 +215,46 @@ const messages = {
|
|
|
152
215
|
emailSubmit: '傳送驗證碼',
|
|
153
216
|
emailSending: '正在傳送驗證碼...',
|
|
154
217
|
emailSent: '驗證碼已傳送至 {email}',
|
|
155
|
-
emailCodePlaceholder: '
|
|
218
|
+
emailCodePlaceholder: '8 位數驗證碼',
|
|
156
219
|
emailVerify: '驗證',
|
|
157
220
|
emailResend: '重新傳送',
|
|
158
221
|
emailInvalid: '請輸入有效的電子郵件地址。',
|
|
159
|
-
emailCodeInvalid: '請輸入
|
|
222
|
+
emailCodeInvalid: '請輸入 8 位數驗證碼。',
|
|
160
223
|
},
|
|
161
224
|
ja: {
|
|
162
|
-
|
|
163
|
-
|
|
225
|
+
emailExplanation: '確認コードを送信します。パスワードは不要です。',
|
|
226
|
+
otherMethods: '他のログイン方法',
|
|
227
|
+
passkeyCreateAccount: 'Passkey でアカウントを作成',
|
|
228
|
+
lastUsed: '前回使用',
|
|
229
|
+
passkeyExplanation: '指紋、顔認証、またはデバイスのロック解除で新しいアカウントを作成します。パスワードは不要です。デバイスが Passkey の保存を求めます。アカウントをお持ちですか?ログインに戻ってください。',
|
|
230
|
+
continueWith: '{provider} で続ける',
|
|
231
|
+
oauthWaiting: '{provider} のウィンドウで続けてください',
|
|
232
|
+
oauthIncomplete: 'ログインはまだ完了していません。ウィンドウを開き直すか、別の方法を選んでください。',
|
|
233
|
+
oauthReopen: 'ウィンドウを開き直す',
|
|
234
|
+
oauthUnconfirmed: 'ログイン結果を確認できませんでした。再試行の前にページを再読み込みして状態を確認してください。',
|
|
235
|
+
oauthCheckSession: '再読み込みしてログインを確認',
|
|
236
|
+
oauthCancelled: 'ログインの待機を終了しました。認証ウィンドウが開いている場合は、閉じてから再試行してください。',
|
|
237
|
+
oauthDenied: '認証が許可されませんでした。再試行するか、別の方法を選んでください。',
|
|
238
|
+
oauthBlocked: 'ブラウザがログイン画面をブロックしました。開き直すか、このページで続けてください。',
|
|
239
|
+
oauthTimedOut: 'ログインがタイムアウトしました。ウィンドウを開き直してください。',
|
|
240
|
+
oauthFailed: 'ログインを完了できませんでした。再試行するか、別の方法を選んでください。',
|
|
241
|
+
oauthFullPage: 'このページで続ける',
|
|
242
|
+
emailEdit: 'メールアドレスを変更',
|
|
243
|
+
emailCooldown: '{seconds} 秒後に再送信',
|
|
244
|
+
walletRetry: 'ウォレットが開かない場合は、再試行するか QR コードをスキャンしてください。',
|
|
245
|
+
tryAgain: '再試行',
|
|
246
|
+
signIn: 'ログインまたはアカウント作成',
|
|
247
|
+
signInTo: '{appName} にログインまたは参加',
|
|
164
248
|
passkeyButton: 'Passkey で続ける',
|
|
165
249
|
passkeySignIn: 'Passkey でログイン',
|
|
166
250
|
passkeyCreate: 'Passkey を作成',
|
|
167
|
-
passkeyFirstTime: '
|
|
251
|
+
passkeyFirstTime: '初めてですか?アカウントを作成',
|
|
168
252
|
passkeyBackToSignIn: 'ログインに戻る',
|
|
169
253
|
passkeyWaiting: 'Passkey を待っています…',
|
|
170
254
|
passkeyCreating: 'Passkey を作成しています…',
|
|
171
|
-
passkeyNoLocal: '
|
|
255
|
+
passkeyNoLocal: '今回は Passkey の確認が完了しませんでした。再試行するか、別のデバイスを使うか、別の方法を選んでください。',
|
|
172
256
|
passkeyUseAnotherDevice: '別のデバイスを使用',
|
|
173
|
-
passkeyCreateInstead: '
|
|
257
|
+
passkeyCreateInstead: '初めてですか?アカウントを作成',
|
|
174
258
|
didWalletButton: 'DID Wallet で続ける',
|
|
175
259
|
didWalletButtonShort: 'DID Wallet',
|
|
176
260
|
scanWithWallet: 'DID Wallet でスキャンしてください',
|
|
@@ -203,12 +287,12 @@ const messages = {
|
|
|
203
287
|
emailTitle: 'メールで続ける',
|
|
204
288
|
emailSubmit: 'コードを送信',
|
|
205
289
|
emailSending: 'コードを送信しています...',
|
|
206
|
-
emailSent: '{email} に
|
|
207
|
-
emailCodePlaceholder: '
|
|
290
|
+
emailSent: '{email} に 8 桁のコードを送信しました',
|
|
291
|
+
emailCodePlaceholder: '8 桁のコード',
|
|
208
292
|
emailVerify: '確認',
|
|
209
293
|
emailResend: 'コードを再送信',
|
|
210
294
|
emailInvalid: '有効なメールアドレスを入力してください。',
|
|
211
|
-
emailCodeInvalid: '
|
|
295
|
+
emailCodeInvalid: '8 桁のコードを入力してください。',
|
|
212
296
|
},
|
|
213
297
|
};
|
|
214
298
|
/** Available locales with display names. */
|
|
@@ -218,13 +302,17 @@ export const SUPPORTED_LOCALES = [
|
|
|
218
302
|
];
|
|
219
303
|
/**
|
|
220
304
|
* Get a translated message with optional interpolation.
|
|
221
|
-
* Supports `{param}` placeholders: `t('signInTo', 'en', { appName: 'MyApp' })` → "Sign in
|
|
305
|
+
* Supports `{param}` placeholders: `t('signInTo', 'en', { appName: 'MyApp' })` → "Sign in or join MyApp"
|
|
222
306
|
* Looks up the internal code exactly (`zh-TW` is not `zh`).
|
|
223
307
|
* Falls back to 'en' for an unknown locale, returns `key` if the key is unknown.
|
|
308
|
+
* A known locale with a missing key also uses the English sentence.
|
|
224
309
|
*/
|
|
310
|
+
export function hasOwnTranslation(locale, key) {
|
|
311
|
+
return Object.hasOwn(messages[locale] ?? {}, key);
|
|
312
|
+
}
|
|
225
313
|
export function t(key, locale, params) {
|
|
226
314
|
const lang = locale && messages[locale] ? locale : 'en';
|
|
227
|
-
let msg = messages[lang][key] ?? key;
|
|
315
|
+
let msg = messages[lang][key] ?? messages.en[key] ?? key;
|
|
228
316
|
if (params) {
|
|
229
317
|
for (const [k, v] of Object.entries(params)) {
|
|
230
318
|
msg = msg.replace(new RegExp(`\\{${k}\\}`, 'g'), v);
|
package/dist/ui/i18n.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/ui/i18n.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,QAAQ,GAA2C;IACvD,EAAE,EAAE;QACF,
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/ui/i18n.ts"],"names":[],"mappings":"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"}
|