@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.
@@ -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 to MyApp"
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
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/ui/i18n.ts"],"names":[],"mappings":"AAAA;;GAEG;AAqNH,4CAA4C;AAC5C,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAGpE,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CASvF"}
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
- signIn: 'Sign in',
7
- signInTo: 'Sign in to {appName}',
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 a passkey',
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: 'No passkey found on this device.',
36
+ passkeyNoLocal: 'Passkey verification was not completed. Retry, use another device, or choose another method.',
16
37
  passkeyUseAnotherDevice: 'Use another device',
17
- passkeyCreateInstead: 'Create a new passkey instead',
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 a 6-digit code to {email}',
51
- emailCodePlaceholder: '6-digit code',
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 6-digit code.',
76
+ emailCodeInvalid: 'Please enter the 8-digit code.',
56
77
  },
57
78
  zh: {
58
- signIn: '登录',
59
- signInTo: '登录到 {appName}',
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: '第一次使用?创建 Passkey',
105
+ passkeyFirstTime: '首次使用?创建账户',
64
106
  passkeyBackToSignIn: '返回登录',
65
107
  passkeyWaiting: '正在等待 Passkey…',
66
108
  passkeyCreating: '正在创建 Passkey…',
67
- passkeyNoLocal: '此设备上没有找到 Passkey。',
109
+ passkeyNoLocal: '这次未完成 Passkey 验证。请重试、使用其他设备,或选择其他登录方式。',
68
110
  passkeyUseAnotherDevice: '用其他设备登录',
69
- passkeyCreateInstead: '改为创建新的 Passkey',
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: '6 位验证码',
145
+ emailCodePlaceholder: '8 位验证码',
104
146
  emailVerify: '验证',
105
147
  emailResend: '重新发送',
106
148
  emailInvalid: '请输入有效的邮箱地址。',
107
- emailCodeInvalid: '请输入 6 位验证码。',
149
+ emailCodeInvalid: '请输入 8 位验证码。',
108
150
  },
109
151
  'zh-TW': {
110
- signIn: '登入',
111
- signInTo: '登入至 {appName}',
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: '第一次使用?建立 Passkey',
178
+ passkeyFirstTime: '第一次使用?建立帳戶',
116
179
  passkeyBackToSignIn: '返回登入',
117
180
  passkeyWaiting: '正在等待 Passkey…',
118
181
  passkeyCreating: '正在建立 Passkey…',
119
- passkeyNoLocal: '此裝置上沒有找到 Passkey。',
182
+ passkeyNoLocal: '這次未完成 Passkey 驗證。請重試、使用其他裝置,或選擇其他登入方式。',
120
183
  passkeyUseAnotherDevice: '用其他裝置登入',
121
- passkeyCreateInstead: '改為建立新的 Passkey',
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: '6 位數驗證碼',
218
+ emailCodePlaceholder: '8 位數驗證碼',
156
219
  emailVerify: '驗證',
157
220
  emailResend: '重新傳送',
158
221
  emailInvalid: '請輸入有效的電子郵件地址。',
159
- emailCodeInvalid: '請輸入 6 位數驗證碼。',
222
+ emailCodeInvalid: '請輸入 8 位數驗證碼。',
160
223
  },
161
224
  ja: {
162
- signIn: 'ログイン',
163
- signInTo: '{appName} にログイン',
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: '初めてですか?Passkey を作成',
251
+ passkeyFirstTime: '初めてですか?アカウントを作成',
168
252
  passkeyBackToSignIn: 'ログインに戻る',
169
253
  passkeyWaiting: 'Passkey を待っています…',
170
254
  passkeyCreating: 'Passkey を作成しています…',
171
- passkeyNoLocal: 'このデバイスに Passkey が見つかりません。',
255
+ passkeyNoLocal: '今回は Passkey の確認が完了しませんでした。再試行するか、別のデバイスを使うか、別の方法を選んでください。',
172
256
  passkeyUseAnotherDevice: '別のデバイスを使用',
173
- passkeyCreateInstead: '代わりに新しい Passkey を作成',
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} に 6 桁のコードを送信しました',
207
- emailCodePlaceholder: '6 桁のコード',
290
+ emailSent: '{email} に 8 桁のコードを送信しました',
291
+ emailCodePlaceholder: '8 桁のコード',
208
292
  emailVerify: '確認',
209
293
  emailResend: 'コードを再送信',
210
294
  emailInvalid: '有効なメールアドレスを入力してください。',
211
- emailCodeInvalid: '6 桁のコードを入力してください。',
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 to MyApp"
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);
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/ui/i18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/ui/i18n.ts"],"names":[],"mappings":"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"}