@better-i18n/server 0.3.1 → 0.3.2

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.
@@ -1,13 +1,4 @@
1
1
  import type { ServerI18n } from "../types.js";
2
- /** @internal Duck-typed subset of Better Auth's HookEndpointContext */
3
- interface HookContext {
4
- context: {
5
- returned?: unknown;
6
- responseHeaders?: Headers;
7
- };
8
- headers?: Headers;
9
- path?: string;
10
- }
11
2
  /**
12
3
  * Options for the Better Auth localization provider.
13
4
  */
@@ -77,8 +68,8 @@ export declare function createBetterAuthProvider(i18n: ServerI18n, options?: Bet
77
68
  id: "better-i18n";
78
69
  hooks: {
79
70
  after: {
80
- matcher: () => boolean;
81
- handler: (ctx: HookContext) => Promise<void>;
71
+ matcher: (_ctx?: unknown) => boolean;
72
+ handler: (ctx: unknown) => Promise<void>;
82
73
  }[];
83
74
  };
84
75
  };
@@ -97,5 +88,4 @@ export declare function createBetterAuthProvider(i18n: ServerI18n, options?: Bet
97
88
  * ```
98
89
  */
99
90
  export declare const DEFAULT_AUTH_KEYS: Record<string, string>;
100
- export {};
101
91
  //# sourceMappingURL=better-auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"better-auth.d.ts","sourceRoot":"","sources":["../../src/providers/better-auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQ9C,uEAAuE;AACvE,UAAU,WAAW;IACnB,OAAO,EAAE;QACP,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,CAAC;IACF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzE;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AA6BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,yBAAyB;;;;;2BAWN,WAAW;;;EAuDzC;AAaD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAuEpD,CAAC"}
1
+ {"version":3,"file":"better-auth.d.ts","sourceRoot":"","sources":["../../src/providers/better-auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAa9C;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzE;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AA6BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,yBAAyB;;;;6BAUV,OAAO;2BACH,OAAO;;;EAgErC;AAaD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAuEpD,CAAC"}
@@ -47,9 +47,13 @@ export function createBetterAuthProvider(i18n, options) {
47
47
  hooks: {
48
48
  after: [
49
49
  {
50
- matcher: () => true,
50
+ matcher: (_ctx) => true,
51
51
  handler: async (ctx) => {
52
- const returned = ctx.context.returned;
52
+ // Better Auth's hook runner injects context.returned at runtime,
53
+ // but the declared MiddlewareInputContext type doesn't include it.
54
+ // We use runtime guards instead of static types for safety.
55
+ const hookCtx = ctx;
56
+ const returned = hookCtx.context?.returned;
53
57
  // Only intercept APIError responses that carry an error code
54
58
  if (!isAPIErrorLike(returned))
55
59
  return;
@@ -59,10 +63,10 @@ export function createBetterAuthProvider(i18n, options) {
59
63
  let locale;
60
64
  try {
61
65
  if (options?.getLocale) {
62
- locale = await options.getLocale({ headers: ctx.headers });
66
+ locale = await options.getLocale({ headers: hookCtx.headers });
63
67
  }
64
- else if (ctx.headers) {
65
- locale = await i18n.detectLocaleFromHeaders(ctx.headers);
68
+ else if (hookCtx.headers) {
69
+ locale = await i18n.detectLocaleFromHeaders(hookCtx.headers);
66
70
  }
67
71
  else {
68
72
  locale = i18n.config.defaultLocale;
@@ -1 +1 @@
1
- {"version":3,"file":"better-auth.js","sourceRoot":"","sources":["../../src/providers/better-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"better-auth.js","sourceRoot":"","sources":["../../src/providers/better-auth.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@better-i18n/server",
3
- "version": "0.3.1",
3
+ "version": "0.3.2",
4
4
  "description": "Framework-agnostic server-side i18n for Better i18n (Hono, Express, Fastify)",
5
5
  "license": "MIT",
6
6
  "repository": {