@fonderie/auth 7.21.1 → 7.22.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.cjs CHANGED
@@ -3865,7 +3865,7 @@ var AuthModule = class {
3865
3865
  name = "@fonderie/auth";
3866
3866
  // Baked in at build time by tsup.base, so the operator's Modules page can
3867
3867
  // say what is actually deployed rather than 'not reported'.
3868
- version = "7.21.1";
3868
+ version = "7.22.0";
3869
3869
  // Users, sessions, login history, suspend — only through @fonderie/admin.
3870
3870
  describeAdmin() {
3871
3871
  return { routes: describeAuthAdminRoutes(this.store, this.bus) };
@@ -4216,6 +4216,314 @@ Si c'est bien vous, tout est en ordre. Sinon, contactez imm\xE9diatement le supp
4216
4216
  }
4217
4217
  };
4218
4218
 
4219
+ // src/templates.zh-Hans.ts
4220
+ var ZH_HANS_TEMPLATES = {
4221
+ [MESSAGE_KEYS.emailRegistration]: {
4222
+ subject: "\u786E\u8BA4\u60A8\u7684\u8D26\u6237",
4223
+ html: `<h1>\u6B22\u8FCE\u52A0\u5165</h1>
4224
+ <p>{{firstName}}\uFF0C\u60A8\u597D\uFF1A</p>
4225
+ <p>\u611F\u8C22\u60A8\u7684\u6CE8\u518C\u3002\u8BF7\u4F7F\u7528\u4EE5\u4E0B\u9A8C\u8BC1\u7801\u786E\u8BA4\u60A8\u7684\u8D26\u6237\uFF1A</p>
4226
+ <p><span class="pin-code">{{pin}}</span></p>
4227
+ <p class="muted">\u6B64\u9A8C\u8BC1\u7801\u5C06\u5728 24 \u5C0F\u65F6\u540E\u5931\u6548\u3002\u5982\u679C\u60A8\u6CA1\u6709\u521B\u5EFA\u8D26\u6237\uFF0C\u8BF7\u5FFD\u7565\u6B64\u90AE\u4EF6\u3002</p>`,
4228
+ text: `\u6B22\u8FCE\u52A0\u5165
4229
+
4230
+ {{firstName}}\uFF0C\u60A8\u597D\uFF1A
4231
+
4232
+ \u611F\u8C22\u60A8\u7684\u6CE8\u518C\u3002\u8BF7\u4F7F\u7528\u4EE5\u4E0B\u9A8C\u8BC1\u7801\u786E\u8BA4\u60A8\u7684\u8D26\u6237\uFF1A{{pin}}
4233
+
4234
+ \u6B64\u9A8C\u8BC1\u7801\u5C06\u5728 24 \u5C0F\u65F6\u540E\u5931\u6548\u3002\u5982\u679C\u60A8\u6CA1\u6709\u521B\u5EFA\u8D26\u6237\uFF0C\u8BF7\u5FFD\u7565\u6B64\u90AE\u4EF6\u3002`
4235
+ },
4236
+ [MESSAGE_KEYS.emailVerification]: {
4237
+ subject: "\u60A8\u7684\u9A8C\u8BC1\u7801",
4238
+ html: `<h1>\u9A8C\u8BC1\u60A8\u7684\u7535\u5B50\u90AE\u7BB1</h1>
4239
+ <p>{{firstName}}\uFF0C\u60A8\u597D\uFF1A</p>
4240
+ <p>\u8BF7\u4F7F\u7528\u4EE5\u4E0B\u9A8C\u8BC1\u7801\u5B8C\u6210\u8D26\u6237\u8BBE\u7F6E\uFF1A</p>
4241
+ <p><span class="pin-code">{{pin}}</span></p>
4242
+ <p class="muted">\u6B64\u9A8C\u8BC1\u7801\u5C06\u5728 24 \u5C0F\u65F6\u540E\u5931\u6548\u3002\u5982\u679C\u60A8\u6CA1\u6709\u521B\u5EFA\u8D26\u6237\uFF0C\u8BF7\u5FFD\u7565\u6B64\u90AE\u4EF6\u3002</p>`,
4243
+ text: `\u9A8C\u8BC1\u60A8\u7684\u7535\u5B50\u90AE\u7BB1
4244
+
4245
+ {{firstName}}\uFF0C\u60A8\u597D\uFF1A
4246
+
4247
+ \u8BF7\u4F7F\u7528\u4EE5\u4E0B\u9A8C\u8BC1\u7801\u5B8C\u6210\u8D26\u6237\u8BBE\u7F6E\uFF1A{{pin}}
4248
+
4249
+ \u6B64\u9A8C\u8BC1\u7801\u5C06\u5728 24 \u5C0F\u65F6\u540E\u5931\u6548\u3002\u5982\u679C\u60A8\u6CA1\u6709\u521B\u5EFA\u8D26\u6237\uFF0C\u8BF7\u5FFD\u7565\u6B64\u90AE\u4EF6\u3002`
4250
+ },
4251
+ [MESSAGE_KEYS.passwordReset]: {
4252
+ subject: "\u91CD\u7F6E\u60A8\u7684\u5BC6\u7801",
4253
+ html: `<h1>\u91CD\u7F6E\u60A8\u7684\u5BC6\u7801</h1>
4254
+ <p>\u6211\u4EEC\u6536\u5230\u4E86\u91CD\u7F6E\u60A8\u5BC6\u7801\u7684\u8BF7\u6C42\u3002\u8BF7\u4F7F\u7528\u4EE5\u4E0B\u9A8C\u8BC1\u7801\u7EE7\u7EED\uFF1A</p>
4255
+ <p><span class="pin-code">{{pin}}</span></p>
4256
+ <p class="muted">\u6B64\u9A8C\u8BC1\u7801\u5F88\u5FEB\u5C31\u4F1A\u5931\u6548\u3002\u5982\u679C\u60A8\u6CA1\u6709\u7533\u8BF7\u91CD\u7F6E\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\uFF0C\u60A8\u7684\u5BC6\u7801\u4FDD\u6301\u4E0D\u53D8\u3002</p>`,
4257
+ text: `\u91CD\u7F6E\u60A8\u7684\u5BC6\u7801
4258
+
4259
+ \u6211\u4EEC\u6536\u5230\u4E86\u91CD\u7F6E\u60A8\u5BC6\u7801\u7684\u8BF7\u6C42\u3002\u8BF7\u4F7F\u7528\u4EE5\u4E0B\u9A8C\u8BC1\u7801\u7EE7\u7EED\uFF1A{{pin}}
4260
+
4261
+ \u6B64\u9A8C\u8BC1\u7801\u5F88\u5FEB\u5C31\u4F1A\u5931\u6548\u3002\u5982\u679C\u60A8\u6CA1\u6709\u7533\u8BF7\u91CD\u7F6E\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\uFF0C\u60A8\u7684\u5BC6\u7801\u4FDD\u6301\u4E0D\u53D8\u3002`
4262
+ },
4263
+ [MESSAGE_KEYS.phoneOtp]: {
4264
+ text: "\u60A8\u7684\u9A8C\u8BC1\u7801\u662F {{otp}}\uFF0C10 \u5206\u949F\u5185\u6709\u6548\u3002"
4265
+ },
4266
+ [MESSAGE_KEYS.mfaEnabled]: {
4267
+ subject: "\u53CC\u91CD\u9A8C\u8BC1\u5DF2\u5F00\u542F",
4268
+ html: `<h1>\u53CC\u91CD\u9A8C\u8BC1\u5DF2\u5F00\u542F</h1>
4269
+ <p>\u60A8\u7684\u8D26\u6237\u521A\u521A\u5F00\u542F\u4E86\u53CC\u91CD\u9A8C\u8BC1\u3002\u4ECA\u540E\u767B\u5F55\u65F6\uFF0C\u60A8\u9700\u8981\u8F93\u5165\u8EAB\u4EFD\u9A8C\u8BC1\u5668\u5E94\u7528\u4E2D\u7684\u9A8C\u8BC1\u7801\u3002</p>
4270
+ <p class="muted">\u5982\u679C\u8FD9\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002</p>`,
4271
+ text: `\u53CC\u91CD\u9A8C\u8BC1\u5DF2\u5F00\u542F
4272
+
4273
+ \u60A8\u7684\u8D26\u6237\u521A\u521A\u5F00\u542F\u4E86\u53CC\u91CD\u9A8C\u8BC1\u3002\u4ECA\u540E\u767B\u5F55\u65F6\uFF0C\u60A8\u9700\u8981\u8F93\u5165\u8EAB\u4EFD\u9A8C\u8BC1\u5668\u5E94\u7528\u4E2D\u7684\u9A8C\u8BC1\u7801\u3002
4274
+
4275
+ \u5982\u679C\u8FD9\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002`
4276
+ },
4277
+ [MESSAGE_KEYS.mfaDisabled]: {
4278
+ subject: "\u53CC\u91CD\u9A8C\u8BC1\u5DF2\u5173\u95ED",
4279
+ html: `<h1>\u53CC\u91CD\u9A8C\u8BC1\u5DF2\u5173\u95ED</h1>
4280
+ <p>\u60A8\u7684\u8D26\u6237\u521A\u521A\u5173\u95ED\u4E86\u53CC\u91CD\u9A8C\u8BC1\u3002\u73B0\u5728\u60A8\u7684\u8D26\u6237\u4EC5\u7531\u5BC6\u7801\u4FDD\u62A4\u3002</p>
4281
+ <p class="muted">\u5982\u679C\u8FD9\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\u5E76\u91CD\u65B0\u5F00\u542F\u53CC\u91CD\u9A8C\u8BC1\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002</p>`,
4282
+ text: `\u53CC\u91CD\u9A8C\u8BC1\u5DF2\u5173\u95ED
4283
+
4284
+ \u60A8\u7684\u8D26\u6237\u521A\u521A\u5173\u95ED\u4E86\u53CC\u91CD\u9A8C\u8BC1\u3002\u73B0\u5728\u60A8\u7684\u8D26\u6237\u4EC5\u7531\u5BC6\u7801\u4FDD\u62A4\u3002
4285
+
4286
+ \u5982\u679C\u8FD9\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\u5E76\u91CD\u65B0\u5F00\u542F\u53CC\u91CD\u9A8C\u8BC1\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002`
4287
+ },
4288
+ [MESSAGE_KEYS.mfaBackupCodesRegenerated]: {
4289
+ subject: "\u60A8\u7684\u5907\u7528\u9A8C\u8BC1\u7801\u5DF2\u91CD\u65B0\u751F\u6210",
4290
+ html: `<h1>\u5DF2\u751F\u6210\u65B0\u7684\u5907\u7528\u9A8C\u8BC1\u7801</h1>
4291
+ <p>\u60A8\u7684\u8D26\u6237\u521A\u521A\u751F\u6210\u4E86\u4E00\u7EC4\u65B0\u7684\u53CC\u91CD\u9A8C\u8BC1\u5907\u7528\u7801\u3002\u4E4B\u524D\u7684\u5907\u7528\u7801\u5DF2\u5168\u90E8\u5931\u6548\u3002</p>
4292
+ <p class="muted">\u5982\u679C\u8FD9\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002</p>`,
4293
+ text: `\u5DF2\u751F\u6210\u65B0\u7684\u5907\u7528\u9A8C\u8BC1\u7801
4294
+
4295
+ \u60A8\u7684\u8D26\u6237\u521A\u521A\u751F\u6210\u4E86\u4E00\u7EC4\u65B0\u7684\u53CC\u91CD\u9A8C\u8BC1\u5907\u7528\u7801\u3002\u4E4B\u524D\u7684\u5907\u7528\u7801\u5DF2\u5168\u90E8\u5931\u6548\u3002
4296
+
4297
+ \u5982\u679C\u8FD9\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002`
4298
+ },
4299
+ [MESSAGE_KEYS.emailChanged]: {
4300
+ subject: "\u60A8\u7684\u7535\u5B50\u90AE\u7BB1\u5730\u5740\u5DF2\u66F4\u6539",
4301
+ html: `<h1>\u60A8\u7684\u7535\u5B50\u90AE\u7BB1\u5DF2\u66F4\u6539</h1>
4302
+ <p>\u60A8\u8D26\u6237\u7684\u7535\u5B50\u90AE\u7BB1\u5730\u5740\u521A\u521A\u66F4\u6539\u4E3A <strong>{{newEmail}}</strong>\u3002</p>
4303
+ <p class="muted">\u5982\u679C\u662F\u60A8\u672C\u4EBA\u66F4\u6539\u7684\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002</p>`,
4304
+ text: `\u60A8\u7684\u7535\u5B50\u90AE\u7BB1\u5DF2\u66F4\u6539
4305
+
4306
+ \u60A8\u8D26\u6237\u7684\u7535\u5B50\u90AE\u7BB1\u5730\u5740\u521A\u521A\u66F4\u6539\u4E3A {{newEmail}}\u3002
4307
+
4308
+ \u5982\u679C\u662F\u60A8\u672C\u4EBA\u66F4\u6539\u7684\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002`
4309
+ },
4310
+ [MESSAGE_KEYS.phoneChanged]: {
4311
+ subject: "\u60A8\u7684\u624B\u673A\u53F7\u7801\u5DF2\u66F4\u6539",
4312
+ html: `<h1>\u60A8\u7684\u624B\u673A\u53F7\u7801\u5DF2\u66F4\u6539</h1>
4313
+ <p>\u60A8\u8D26\u6237\u7684\u624B\u673A\u53F7\u7801\u521A\u521A\u5B8C\u6210\u66F4\u65B0\u3002</p>
4314
+ <p class="muted">\u5982\u679C\u662F\u60A8\u672C\u4EBA\u66F4\u6539\u7684\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002</p>`,
4315
+ text: `\u60A8\u7684\u624B\u673A\u53F7\u7801\u5DF2\u66F4\u6539
4316
+
4317
+ \u60A8\u8D26\u6237\u7684\u624B\u673A\u53F7\u7801\u521A\u521A\u5B8C\u6210\u66F4\u65B0\u3002
4318
+
4319
+ \u5982\u679C\u662F\u60A8\u672C\u4EBA\u66F4\u6539\u7684\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u7ECF\u80FD\u591F\u8BBF\u95EE\u60A8\u7684\u8D26\u6237\u3002`
4320
+ },
4321
+ [MESSAGE_KEYS.passwordRevoked]: {
4322
+ subject: "\u60A8\u8D26\u6237\u7684\u5BC6\u7801\u5DF2\u88AB\u79FB\u9664",
4323
+ html: `<h1>\u60A8\u7684\u5BC6\u7801\u5DF2\u88AB\u79FB\u9664</h1>
4324
+ <p>\u60A8\u521A\u521A\u4F7F\u7528 <strong>{{provider}}</strong> \u767B\u5F55\u3002\u6B64\u8D26\u6237\u4E4B\u524D\u8BBE\u7F6E\u8FC7\u5BC6\u7801\uFF0C\u4F46\u8BE5\u7535\u5B50\u90AE\u7BB1\u5730\u5740\u4ECE\u672A\u7ECF\u8FC7\u786E\u8BA4\uFF0C\u56E0\u6B64\u6211\u4EEC\u65E0\u6CD5\u786E\u5B9A\u5BC6\u7801\u662F\u8C01\u8BBE\u7F6E\u7684\uFF0C\u5DF2\u5C06\u5176\u79FB\u9664\u3002</p>
4325
+ <p>\u4F7F\u7528 {{provider}} \u767B\u5F55\u4E0D\u53D7\u5F71\u54CD\u3002\u5982\u679C\u60A8\u8FD8\u60F3\u8BBE\u7F6E\u5BC6\u7801\uFF0C\u53EF\u4EE5\u5728\u8D26\u6237\u8BBE\u7F6E\u4E2D\u8FDB\u884C\u8BBE\u7F6E\u3002</p>
4326
+ <p class="muted">\u5982\u679C\u60A8\u4ECE\u672A\u5728\u6B64\u8BBE\u7F6E\u8FC7\u5BC6\u7801\uFF0C\u53EF\u80FD\u6709\u5176\u4ED6\u4EBA\u66FE\u8BD5\u56FE\u7528\u60A8\u7684\u5730\u5740\u6CE8\u518C\u3002\u60A8\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\uFF0C\u6B64\u8D26\u6237\u5C5E\u4E8E\u60A8\u3002</p>`,
4327
+ text: `\u60A8\u7684\u5BC6\u7801\u5DF2\u88AB\u79FB\u9664
4328
+
4329
+ \u60A8\u521A\u521A\u4F7F\u7528 {{provider}} \u767B\u5F55\u3002\u6B64\u8D26\u6237\u4E4B\u524D\u8BBE\u7F6E\u8FC7\u5BC6\u7801\uFF0C\u4F46\u8BE5\u7535\u5B50\u90AE\u7BB1\u5730\u5740\u4ECE\u672A\u7ECF\u8FC7\u786E\u8BA4\uFF0C
4330
+ \u56E0\u6B64\u6211\u4EEC\u65E0\u6CD5\u786E\u5B9A\u5BC6\u7801\u662F\u8C01\u8BBE\u7F6E\u7684\uFF0C\u5DF2\u5C06\u5176\u79FB\u9664\u3002
4331
+
4332
+ \u4F7F\u7528 {{provider}} \u767B\u5F55\u4E0D\u53D7\u5F71\u54CD\u3002\u5982\u679C\u60A8\u8FD8\u60F3\u8BBE\u7F6E\u5BC6\u7801\uFF0C\u53EF\u4EE5\u5728\u8D26\u6237\u8BBE\u7F6E\u4E2D\u8FDB\u884C\u8BBE\u7F6E\u3002
4333
+
4334
+ \u5982\u679C\u60A8\u4ECE\u672A\u5728\u6B64\u8BBE\u7F6E\u8FC7\u5BC6\u7801\uFF0C\u53EF\u80FD\u6709\u5176\u4ED6\u4EBA\u66FE\u8BD5\u56FE\u7528\u60A8\u7684\u5730\u5740\u6CE8\u518C\u3002\u60A8\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\uFF0C\u6B64\u8D26\u6237\u5C5E\u4E8E\u60A8\u3002`
4335
+ },
4336
+ [MESSAGE_KEYS.oauthRegistration]: {
4337
+ subject: "\u6B22\u8FCE\u4F7F\u7528 {{appName}}",
4338
+ html: `<h1>\u6B22\u8FCE\u4F7F\u7528 {{appName}}</h1>
4339
+ <p>\u60A8\u7684\u8D26\u6237\u5DF2\u901A\u8FC7 <strong>{{provider}}</strong> \u521B\u5EFA\u3002\u4ECA\u540E\u968F\u65F6\u53EF\u4EE5\u4F7F\u7528\u540C\u4E00\u4E2A {{provider}} \u8D26\u6237\u767B\u5F55\uFF0C\u65E0\u9700\u8BB0\u4F4F\u5BC6\u7801\u3002</p>
4340
+ <p class="muted">\u5982\u679C\u60A8\u6CA1\u6709\u521B\u5EFA\u6B64\u8D26\u6237\uFF0C\u8BF7\u8054\u7CFB\u5BA2\u670D\u3002</p>`,
4341
+ text: `\u6B22\u8FCE
4342
+
4343
+ \u60A8\u7684\u8D26\u6237\u5DF2\u901A\u8FC7 {{provider}} \u521B\u5EFA\u3002\u4ECA\u540E\u968F\u65F6\u53EF\u4EE5\u4F7F\u7528\u540C\u4E00\u4E2A
4344
+ {{provider}} \u8D26\u6237\u767B\u5F55\uFF0C\u65E0\u9700\u8BB0\u4F4F\u5BC6\u7801\u3002
4345
+
4346
+ \u5982\u679C\u60A8\u6CA1\u6709\u521B\u5EFA\u6B64\u8D26\u6237\uFF0C\u8BF7\u8054\u7CFB\u5BA2\u670D\u3002`
4347
+ },
4348
+ [MESSAGE_KEYS.oauthLinked]: {
4349
+ subject: "\u60A8\u7684\u8D26\u6237\u65B0\u589E\u4E86\u4E00\u79CD\u767B\u5F55\u65B9\u5F0F",
4350
+ html: `<h1>\u5DF2\u6DFB\u52A0 {{provider}} \u767B\u5F55</h1>
4351
+ <p>\u73B0\u5728\u4E5F\u53EF\u4EE5\u4F7F\u7528 <strong>{{provider}}</strong> \u767B\u5F55\u60A8\u7684\u8D26\u6237\u3002</p>
4352
+ <p class="muted">\u5982\u679C\u662F\u60A8\u672C\u4EBA\u6DFB\u52A0\u7684\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\u5E76\u66F4\u6539\u5BC6\u7801\uFF0C\u53EF\u80FD\u6709\u5176\u4ED6\u4EBA\u80FD\u591F\u4EE5\u60A8\u7684\u8EAB\u4EFD\u767B\u5F55\u3002</p>`,
4353
+ text: `\u5DF2\u6DFB\u52A0 {{provider}} \u767B\u5F55
4354
+
4355
+ \u73B0\u5728\u4E5F\u53EF\u4EE5\u4F7F\u7528 {{provider}} \u767B\u5F55\u60A8\u7684\u8D26\u6237\u3002
4356
+
4357
+ \u5982\u679C\u662F\u60A8\u672C\u4EBA\u6DFB\u52A0\u7684\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\u5E76\u66F4\u6539\u5BC6\u7801\uFF0C
4358
+ \u53EF\u80FD\u6709\u5176\u4ED6\u4EBA\u80FD\u591F\u4EE5\u60A8\u7684\u8EAB\u4EFD\u767B\u5F55\u3002`
4359
+ },
4360
+ [MESSAGE_KEYS.oauthUnlinked]: {
4361
+ subject: "\u60A8\u7684\u8D26\u6237\u79FB\u9664\u4E86\u4E00\u79CD\u767B\u5F55\u65B9\u5F0F",
4362
+ html: `<h1>\u5DF2\u79FB\u9664 {{provider}} \u767B\u5F55</h1>
4363
+ <p>\u5DF2\u65E0\u6CD5\u518D\u4F7F\u7528 <strong>{{provider}}</strong> \u767B\u5F55\u3002\u60A8\u7684\u7535\u5B50\u90AE\u7BB1\u548C\u5BC6\u7801\u4ECD\u7136\u53EF\u7528\u3002</p>
4364
+ <p class="muted">\u5982\u679C\u662F\u60A8\u672C\u4EBA\u79FB\u9664\u7684\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\u3002</p>`,
4365
+ text: `\u5DF2\u79FB\u9664 {{provider}} \u767B\u5F55
4366
+
4367
+ \u5DF2\u65E0\u6CD5\u518D\u4F7F\u7528 {{provider}} \u767B\u5F55\u3002\u60A8\u7684\u7535\u5B50\u90AE\u7BB1\u548C\u5BC6\u7801\u4ECD\u7136\u53EF\u7528\u3002
4368
+
4369
+ \u5982\u679C\u662F\u60A8\u672C\u4EBA\u79FB\u9664\u7684\uFF0C\u65E0\u9700\u4EFB\u4F55\u64CD\u4F5C\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8BF7\u7ACB\u5373\u8054\u7CFB\u5BA2\u670D\u3002`
4370
+ }
4371
+ };
4372
+
4373
+ // src/templates.zh-Hant.ts
4374
+ var ZH_HANT_TEMPLATES = {
4375
+ [MESSAGE_KEYS.emailRegistration]: {
4376
+ subject: "\u78BA\u8A8D\u60A8\u7684\u5E33\u6236",
4377
+ html: `<h1>\u6B61\u8FCE\u52A0\u5165</h1>
4378
+ <p>{{firstName}}\uFF0C\u60A8\u597D\uFF1A</p>
4379
+ <p>\u611F\u8B1D\u60A8\u7684\u8A3B\u518A\u3002\u8ACB\u4F7F\u7528\u4EE5\u4E0B\u9A57\u8B49\u78BC\u78BA\u8A8D\u60A8\u7684\u5E33\u6236\uFF1A</p>
4380
+ <p><span class="pin-code">{{pin}}</span></p>
4381
+ <p class="muted">\u6B64\u9A57\u8B49\u78BC\u5C07\u65BC 24 \u5C0F\u6642\u5F8C\u5931\u6548\u3002\u5982\u679C\u60A8\u6C92\u6709\u5EFA\u7ACB\u5E33\u6236\uFF0C\u8ACB\u7565\u904E\u9019\u5C01\u90F5\u4EF6\u3002</p>`,
4382
+ text: `\u6B61\u8FCE\u52A0\u5165
4383
+
4384
+ {{firstName}}\uFF0C\u60A8\u597D\uFF1A
4385
+
4386
+ \u611F\u8B1D\u60A8\u7684\u8A3B\u518A\u3002\u8ACB\u4F7F\u7528\u4EE5\u4E0B\u9A57\u8B49\u78BC\u78BA\u8A8D\u60A8\u7684\u5E33\u6236\uFF1A{{pin}}
4387
+
4388
+ \u6B64\u9A57\u8B49\u78BC\u5C07\u65BC 24 \u5C0F\u6642\u5F8C\u5931\u6548\u3002\u5982\u679C\u60A8\u6C92\u6709\u5EFA\u7ACB\u5E33\u6236\uFF0C\u8ACB\u7565\u904E\u9019\u5C01\u90F5\u4EF6\u3002`
4389
+ },
4390
+ [MESSAGE_KEYS.emailVerification]: {
4391
+ subject: "\u60A8\u7684\u9A57\u8B49\u78BC",
4392
+ html: `<h1>\u9A57\u8B49\u60A8\u7684\u96FB\u5B50\u90F5\u4EF6</h1>
4393
+ <p>{{firstName}}\uFF0C\u60A8\u597D\uFF1A</p>
4394
+ <p>\u8ACB\u4F7F\u7528\u4EE5\u4E0B\u9A57\u8B49\u78BC\u5B8C\u6210\u5E33\u6236\u8A2D\u5B9A\uFF1A</p>
4395
+ <p><span class="pin-code">{{pin}}</span></p>
4396
+ <p class="muted">\u6B64\u9A57\u8B49\u78BC\u5C07\u65BC 24 \u5C0F\u6642\u5F8C\u5931\u6548\u3002\u5982\u679C\u60A8\u6C92\u6709\u5EFA\u7ACB\u5E33\u6236\uFF0C\u8ACB\u7565\u904E\u9019\u5C01\u90F5\u4EF6\u3002</p>`,
4397
+ text: `\u9A57\u8B49\u60A8\u7684\u96FB\u5B50\u90F5\u4EF6
4398
+
4399
+ {{firstName}}\uFF0C\u60A8\u597D\uFF1A
4400
+
4401
+ \u8ACB\u4F7F\u7528\u4EE5\u4E0B\u9A57\u8B49\u78BC\u5B8C\u6210\u5E33\u6236\u8A2D\u5B9A\uFF1A{{pin}}
4402
+
4403
+ \u6B64\u9A57\u8B49\u78BC\u5C07\u65BC 24 \u5C0F\u6642\u5F8C\u5931\u6548\u3002\u5982\u679C\u60A8\u6C92\u6709\u5EFA\u7ACB\u5E33\u6236\uFF0C\u8ACB\u7565\u904E\u9019\u5C01\u90F5\u4EF6\u3002`
4404
+ },
4405
+ [MESSAGE_KEYS.passwordReset]: {
4406
+ subject: "\u91CD\u8A2D\u60A8\u7684\u5BC6\u78BC",
4407
+ html: `<h1>\u91CD\u8A2D\u60A8\u7684\u5BC6\u78BC</h1>
4408
+ <p>\u6211\u5011\u6536\u5230\u91CD\u8A2D\u60A8\u5BC6\u78BC\u7684\u8981\u6C42\u3002\u8ACB\u4F7F\u7528\u4EE5\u4E0B\u9A57\u8B49\u78BC\u7E7C\u7E8C\uFF1A</p>
4409
+ <p><span class="pin-code">{{pin}}</span></p>
4410
+ <p class="muted">\u6B64\u9A57\u8B49\u78BC\u5373\u5C07\u5931\u6548\u3002\u5982\u679C\u60A8\u6C92\u6709\u63D0\u51FA\u91CD\u8A2D\u8981\u6C42\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\uFF0C\u60A8\u7684\u5BC6\u78BC\u7DAD\u6301\u4E0D\u8B8A\u3002</p>`,
4411
+ text: `\u91CD\u8A2D\u60A8\u7684\u5BC6\u78BC
4412
+
4413
+ \u6211\u5011\u6536\u5230\u91CD\u8A2D\u60A8\u5BC6\u78BC\u7684\u8981\u6C42\u3002\u8ACB\u4F7F\u7528\u4EE5\u4E0B\u9A57\u8B49\u78BC\u7E7C\u7E8C\uFF1A{{pin}}
4414
+
4415
+ \u6B64\u9A57\u8B49\u78BC\u5373\u5C07\u5931\u6548\u3002\u5982\u679C\u60A8\u6C92\u6709\u63D0\u51FA\u91CD\u8A2D\u8981\u6C42\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\uFF0C\u60A8\u7684\u5BC6\u78BC\u7DAD\u6301\u4E0D\u8B8A\u3002`
4416
+ },
4417
+ [MESSAGE_KEYS.phoneOtp]: {
4418
+ text: "\u60A8\u7684\u9A57\u8B49\u78BC\u662F {{otp}}\uFF0C10 \u5206\u9418\u5167\u6709\u6548\u3002"
4419
+ },
4420
+ [MESSAGE_KEYS.mfaEnabled]: {
4421
+ subject: "\u96D9\u91CD\u9A57\u8B49\u5DF2\u555F\u7528",
4422
+ html: `<h1>\u96D9\u91CD\u9A57\u8B49\u5DF2\u555F\u7528</h1>
4423
+ <p>\u60A8\u7684\u5E33\u6236\u525B\u525B\u555F\u7528\u4E86\u96D9\u91CD\u9A57\u8B49\u3002\u5F80\u5F8C\u767B\u5165\u6642\uFF0C\u60A8\u9700\u8981\u8F38\u5165\u9A57\u8B49\u5668\u61C9\u7528\u7A0B\u5F0F\u4E2D\u7684\u9A57\u8B49\u78BC\u3002</p>
4424
+ <p class="muted">\u5982\u679C\u9019\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002</p>`,
4425
+ text: `\u96D9\u91CD\u9A57\u8B49\u5DF2\u555F\u7528
4426
+
4427
+ \u60A8\u7684\u5E33\u6236\u525B\u525B\u555F\u7528\u4E86\u96D9\u91CD\u9A57\u8B49\u3002\u5F80\u5F8C\u767B\u5165\u6642\uFF0C\u60A8\u9700\u8981\u8F38\u5165\u9A57\u8B49\u5668\u61C9\u7528\u7A0B\u5F0F\u4E2D\u7684\u9A57\u8B49\u78BC\u3002
4428
+
4429
+ \u5982\u679C\u9019\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002`
4430
+ },
4431
+ [MESSAGE_KEYS.mfaDisabled]: {
4432
+ subject: "\u96D9\u91CD\u9A57\u8B49\u5DF2\u505C\u7528",
4433
+ html: `<h1>\u96D9\u91CD\u9A57\u8B49\u5DF2\u505C\u7528</h1>
4434
+ <p>\u60A8\u7684\u5E33\u6236\u525B\u525B\u505C\u7528\u4E86\u96D9\u91CD\u9A57\u8B49\u3002\u73FE\u5728\u60A8\u7684\u5E33\u6236\u50C5\u53D7\u5BC6\u78BC\u4FDD\u8B77\u3002</p>
4435
+ <p class="muted">\u5982\u679C\u9019\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\u4E26\u91CD\u65B0\u555F\u7528\u96D9\u91CD\u9A57\u8B49\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002</p>`,
4436
+ text: `\u96D9\u91CD\u9A57\u8B49\u5DF2\u505C\u7528
4437
+
4438
+ \u60A8\u7684\u5E33\u6236\u525B\u525B\u505C\u7528\u4E86\u96D9\u91CD\u9A57\u8B49\u3002\u73FE\u5728\u60A8\u7684\u5E33\u6236\u50C5\u53D7\u5BC6\u78BC\u4FDD\u8B77\u3002
4439
+
4440
+ \u5982\u679C\u9019\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\u4E26\u91CD\u65B0\u555F\u7528\u96D9\u91CD\u9A57\u8B49\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002`
4441
+ },
4442
+ [MESSAGE_KEYS.mfaBackupCodesRegenerated]: {
4443
+ subject: "\u60A8\u7684\u5099\u7528\u9A57\u8B49\u78BC\u5DF2\u91CD\u65B0\u7522\u751F",
4444
+ html: `<h1>\u5DF2\u7522\u751F\u65B0\u7684\u5099\u7528\u9A57\u8B49\u78BC</h1>
4445
+ <p>\u60A8\u7684\u5E33\u6236\u525B\u525B\u7522\u751F\u4E86\u4E00\u7D44\u65B0\u7684\u96D9\u91CD\u9A57\u8B49\u5099\u7528\u78BC\u3002\u5148\u524D\u7684\u5099\u7528\u78BC\u5DF2\u5168\u90E8\u5931\u6548\u3002</p>
4446
+ <p class="muted">\u5982\u679C\u9019\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002</p>`,
4447
+ text: `\u5DF2\u7522\u751F\u65B0\u7684\u5099\u7528\u9A57\u8B49\u78BC
4448
+
4449
+ \u60A8\u7684\u5E33\u6236\u525B\u525B\u7522\u751F\u4E86\u4E00\u7D44\u65B0\u7684\u96D9\u91CD\u9A57\u8B49\u5099\u7528\u78BC\u3002\u5148\u524D\u7684\u5099\u7528\u78BC\u5DF2\u5168\u90E8\u5931\u6548\u3002
4450
+
4451
+ \u5982\u679C\u9019\u4E0D\u662F\u60A8\u672C\u4EBA\u7684\u64CD\u4F5C\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002`
4452
+ },
4453
+ [MESSAGE_KEYS.emailChanged]: {
4454
+ subject: "\u60A8\u7684\u96FB\u5B50\u90F5\u4EF6\u5730\u5740\u5DF2\u8B8A\u66F4",
4455
+ html: `<h1>\u60A8\u7684\u96FB\u5B50\u90F5\u4EF6\u5DF2\u8B8A\u66F4</h1>
4456
+ <p>\u60A8\u5E33\u6236\u7684\u96FB\u5B50\u90F5\u4EF6\u5730\u5740\u525B\u525B\u8B8A\u66F4\u70BA <strong>{{newEmail}}</strong>\u3002</p>
4457
+ <p class="muted">\u5982\u679C\u662F\u60A8\u672C\u4EBA\u8B8A\u66F4\u7684\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002</p>`,
4458
+ text: `\u60A8\u7684\u96FB\u5B50\u90F5\u4EF6\u5DF2\u8B8A\u66F4
4459
+
4460
+ \u60A8\u5E33\u6236\u7684\u96FB\u5B50\u90F5\u4EF6\u5730\u5740\u525B\u525B\u8B8A\u66F4\u70BA {{newEmail}}\u3002
4461
+
4462
+ \u5982\u679C\u662F\u60A8\u672C\u4EBA\u8B8A\u66F4\u7684\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002`
4463
+ },
4464
+ [MESSAGE_KEYS.phoneChanged]: {
4465
+ subject: "\u60A8\u7684\u96FB\u8A71\u865F\u78BC\u5DF2\u8B8A\u66F4",
4466
+ html: `<h1>\u60A8\u7684\u96FB\u8A71\u865F\u78BC\u5DF2\u8B8A\u66F4</h1>
4467
+ <p>\u60A8\u5E33\u6236\u7684\u96FB\u8A71\u865F\u78BC\u525B\u525B\u5B8C\u6210\u66F4\u65B0\u3002</p>
4468
+ <p class="muted">\u5982\u679C\u662F\u60A8\u672C\u4EBA\u8B8A\u66F4\u7684\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002</p>`,
4469
+ text: `\u60A8\u7684\u96FB\u8A71\u865F\u78BC\u5DF2\u8B8A\u66F4
4470
+
4471
+ \u60A8\u5E33\u6236\u7684\u96FB\u8A71\u865F\u78BC\u525B\u525B\u5B8C\u6210\u66F4\u65B0\u3002
4472
+
4473
+ \u5982\u679C\u662F\u60A8\u672C\u4EBA\u8B8A\u66F4\u7684\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\uFF0C\u53EF\u80FD\u6709\u4EBA\u5DF2\u80FD\u5B58\u53D6\u60A8\u7684\u5E33\u6236\u3002`
4474
+ },
4475
+ [MESSAGE_KEYS.passwordRevoked]: {
4476
+ subject: "\u60A8\u5E33\u6236\u7684\u5BC6\u78BC\u5DF2\u88AB\u79FB\u9664",
4477
+ html: `<h1>\u60A8\u7684\u5BC6\u78BC\u5DF2\u88AB\u79FB\u9664</h1>
4478
+ <p>\u60A8\u525B\u525B\u4F7F\u7528 <strong>{{provider}}</strong> \u767B\u5165\u3002\u6B64\u5E33\u6236\u5148\u524D\u8A2D\u5B9A\u904E\u5BC6\u78BC\uFF0C\u4F46\u9019\u500B\u96FB\u5B50\u90F5\u4EF6\u5730\u5740\u5F9E\u672A\u7D93\u904E\u78BA\u8A8D\uFF0C\u56E0\u6B64\u6211\u5011\u7121\u6CD5\u5224\u65B7\u5BC6\u78BC\u662F\u8AB0\u8A2D\u5B9A\u7684\uFF0C\u5DF2\u5C07\u5176\u79FB\u9664\u3002</p>
4479
+ <p>\u4F7F\u7528 {{provider}} \u767B\u5165\u4E0D\u53D7\u5F71\u97FF\u3002\u5982\u679C\u60A8\u4E5F\u60F3\u8A2D\u5B9A\u5BC6\u78BC\uFF0C\u53EF\u4EE5\u5728\u5E33\u6236\u8A2D\u5B9A\u4E2D\u9032\u884C\u8A2D\u5B9A\u3002</p>
4480
+ <p class="muted">\u5982\u679C\u60A8\u5F9E\u672A\u5728\u6B64\u8A2D\u5B9A\u904E\u5BC6\u78BC\uFF0C\u53EF\u80FD\u6709\u5176\u4ED6\u4EBA\u66FE\u8A66\u5716\u7528\u60A8\u7684\u5730\u5740\u8A3B\u518A\u3002\u60A8\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\uFF0C\u6B64\u5E33\u6236\u5C6C\u65BC\u60A8\u3002</p>`,
4481
+ text: `\u60A8\u7684\u5BC6\u78BC\u5DF2\u88AB\u79FB\u9664
4482
+
4483
+ \u60A8\u525B\u525B\u4F7F\u7528 {{provider}} \u767B\u5165\u3002\u6B64\u5E33\u6236\u5148\u524D\u8A2D\u5B9A\u904E\u5BC6\u78BC\uFF0C\u4F46\u9019\u500B\u96FB\u5B50\u90F5\u4EF6\u5730\u5740\u5F9E\u672A\u7D93\u904E\u78BA\u8A8D\uFF0C
4484
+ \u56E0\u6B64\u6211\u5011\u7121\u6CD5\u5224\u65B7\u5BC6\u78BC\u662F\u8AB0\u8A2D\u5B9A\u7684\uFF0C\u5DF2\u5C07\u5176\u79FB\u9664\u3002
4485
+
4486
+ \u4F7F\u7528 {{provider}} \u767B\u5165\u4E0D\u53D7\u5F71\u97FF\u3002\u5982\u679C\u60A8\u4E5F\u60F3\u8A2D\u5B9A\u5BC6\u78BC\uFF0C\u53EF\u4EE5\u5728\u5E33\u6236\u8A2D\u5B9A\u4E2D\u9032\u884C\u8A2D\u5B9A\u3002
4487
+
4488
+ \u5982\u679C\u60A8\u5F9E\u672A\u5728\u6B64\u8A2D\u5B9A\u904E\u5BC6\u78BC\uFF0C\u53EF\u80FD\u6709\u5176\u4ED6\u4EBA\u66FE\u8A66\u5716\u7528\u60A8\u7684\u5730\u5740\u8A3B\u518A\u3002\u60A8\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\uFF0C\u6B64\u5E33\u6236\u5C6C\u65BC\u60A8\u3002`
4489
+ },
4490
+ [MESSAGE_KEYS.oauthRegistration]: {
4491
+ subject: "\u6B61\u8FCE\u4F7F\u7528 {{appName}}",
4492
+ html: `<h1>\u6B61\u8FCE\u4F7F\u7528 {{appName}}</h1>
4493
+ <p>\u60A8\u7684\u5E33\u6236\u5DF2\u900F\u904E <strong>{{provider}}</strong> \u5EFA\u7ACB\u3002\u5F80\u5F8C\u96A8\u6642\u90FD\u80FD\u4F7F\u7528\u540C\u4E00\u500B {{provider}} \u5E33\u6236\u767B\u5165\uFF0C\u4E0D\u5FC5\u8A18\u4F4F\u5BC6\u78BC\u3002</p>
4494
+ <p class="muted">\u5982\u679C\u60A8\u6C92\u6709\u5EFA\u7ACB\u6B64\u5E33\u6236\uFF0C\u8ACB\u806F\u7D61\u5BA2\u670D\u3002</p>`,
4495
+ text: `\u6B61\u8FCE
4496
+
4497
+ \u60A8\u7684\u5E33\u6236\u5DF2\u900F\u904E {{provider}} \u5EFA\u7ACB\u3002\u5F80\u5F8C\u96A8\u6642\u90FD\u80FD\u4F7F\u7528\u540C\u4E00\u500B
4498
+ {{provider}} \u5E33\u6236\u767B\u5165\uFF0C\u4E0D\u5FC5\u8A18\u4F4F\u5BC6\u78BC\u3002
4499
+
4500
+ \u5982\u679C\u60A8\u6C92\u6709\u5EFA\u7ACB\u6B64\u5E33\u6236\uFF0C\u8ACB\u806F\u7D61\u5BA2\u670D\u3002`
4501
+ },
4502
+ [MESSAGE_KEYS.oauthLinked]: {
4503
+ subject: "\u60A8\u7684\u5E33\u6236\u65B0\u589E\u4E86\u4E00\u7A2E\u767B\u5165\u65B9\u5F0F",
4504
+ html: `<h1>\u5DF2\u65B0\u589E {{provider}} \u767B\u5165</h1>
4505
+ <p>\u73FE\u5728\u4E5F\u53EF\u4EE5\u4F7F\u7528 <strong>{{provider}}</strong> \u767B\u5165\u60A8\u7684\u5E33\u6236\u3002</p>
4506
+ <p class="muted">\u5982\u679C\u662F\u60A8\u672C\u4EBA\u65B0\u589E\u7684\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\u4E26\u8B8A\u66F4\u5BC6\u78BC\uFF0C\u53EF\u80FD\u6709\u5176\u4ED6\u4EBA\u80FD\u4EE5\u60A8\u7684\u8EAB\u5206\u767B\u5165\u3002</p>`,
4507
+ text: `\u5DF2\u65B0\u589E {{provider}} \u767B\u5165
4508
+
4509
+ \u73FE\u5728\u4E5F\u53EF\u4EE5\u4F7F\u7528 {{provider}} \u767B\u5165\u60A8\u7684\u5E33\u6236\u3002
4510
+
4511
+ \u5982\u679C\u662F\u60A8\u672C\u4EBA\u65B0\u589E\u7684\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\u4E26\u8B8A\u66F4\u5BC6\u78BC\uFF0C
4512
+ \u53EF\u80FD\u6709\u5176\u4ED6\u4EBA\u80FD\u4EE5\u60A8\u7684\u8EAB\u5206\u767B\u5165\u3002`
4513
+ },
4514
+ [MESSAGE_KEYS.oauthUnlinked]: {
4515
+ subject: "\u60A8\u7684\u5E33\u6236\u79FB\u9664\u4E86\u4E00\u7A2E\u767B\u5165\u65B9\u5F0F",
4516
+ html: `<h1>\u5DF2\u79FB\u9664 {{provider}} \u767B\u5165</h1>
4517
+ <p>\u5DF2\u7121\u6CD5\u518D\u4F7F\u7528 <strong>{{provider}}</strong> \u767B\u5165\u3002\u60A8\u7684\u96FB\u5B50\u90F5\u4EF6\u548C\u5BC6\u78BC\u4ECD\u53EF\u4F7F\u7528\u3002</p>
4518
+ <p class="muted">\u5982\u679C\u662F\u60A8\u672C\u4EBA\u79FB\u9664\u7684\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\u3002</p>`,
4519
+ text: `\u5DF2\u79FB\u9664 {{provider}} \u767B\u5165
4520
+
4521
+ \u5DF2\u7121\u6CD5\u518D\u4F7F\u7528 {{provider}} \u767B\u5165\u3002\u60A8\u7684\u96FB\u5B50\u90F5\u4EF6\u548C\u5BC6\u78BC\u4ECD\u53EF\u4F7F\u7528\u3002
4522
+
4523
+ \u5982\u679C\u662F\u60A8\u672C\u4EBA\u79FB\u9664\u7684\uFF0C\u7121\u9808\u63A1\u53D6\u4EFB\u4F55\u884C\u52D5\u3002\u5982\u679C\u4E0D\u662F\uFF0C\u8ACB\u7ACB\u5373\u806F\u7D61\u5BA2\u670D\u3002`
4524
+ }
4525
+ };
4526
+
4219
4527
  // src/templates.ts
4220
4528
  var EN_TEMPLATES = {
4221
4529
  [MESSAGE_KEYS.emailRegistration]: {
@@ -4373,7 +4681,12 @@ change your password \u2014 someone else may be able to sign in as you.`
4373
4681
  If you did this, you're all set. If not, contact support right away.`
4374
4682
  }
4375
4683
  };
4376
- var DEFAULT_TEMPLATES = (0, import_core14.withTranslations)(EN_TEMPLATES, { fr: FR_TEMPLATES, es: ES_TEMPLATES });
4684
+ var DEFAULT_TEMPLATES = (0, import_core14.withTranslations)(EN_TEMPLATES, {
4685
+ fr: FR_TEMPLATES,
4686
+ es: ES_TEMPLATES,
4687
+ "zh-Hans": ZH_HANS_TEMPLATES,
4688
+ "zh-Hant": ZH_HANT_TEMPLATES
4689
+ });
4377
4690
  var SAMPLE_PAYLOADS = {
4378
4691
  [MESSAGE_KEYS.passwordRevoked]: { provider: "Google" },
4379
4692
  [MESSAGE_KEYS.oauthRegistration]: { provider: "Google", appName: "Fonderie" },