@amerged/ohmyhost-auth 0.1.37 → 0.1.39

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # @amerged/ohmyhost-auth
2
2
 
3
- ohmyho.st auth client, version 0.1.37.
3
+ ohmyho.st auth client, version 0.1.39.
4
4
 
5
5
  ```sh
6
6
  npm install @amerged/ohmyhost-auth
@@ -9,5 +9,7 @@ export declare function createMailGatewayEmailSender(input: {
9
9
  readonly key: string;
10
10
  readonly fetch: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
11
11
  readonly crypto: Crypto;
12
+ /** Gateway header timeout: 100–30000 ms, default 8000 ms. */
13
+ readonly timeoutMilliseconds?: number;
12
14
  }): CustomerAuthEmailSender;
13
15
  //# sourceMappingURL=mail-gateway.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mail-gateway.d.ts","sourceRoot":"","sources":["../src/mail-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAI5D,qBAAa,8BAA+B,SAAQ,KAAK;IACvD,SAAgB,IAAI,yCAAyC;;CAK9D;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IAClD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,GAAG,uBAAuB,CA8D1B"}
1
+ {"version":3,"file":"mail-gateway.d.ts","sourceRoot":"","sources":["../src/mail-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAI5D,qBAAa,8BAA+B,SAAQ,KAAK;IACvD,SAAgB,IAAI,yCAAyC;;CAK9D;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IAClD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,6DAA6D;IAC7D,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC,GAAG,uBAAuB,CAmE1B"}
@@ -11,9 +11,14 @@ export function createMailGatewayEmailSender(input) {
11
11
  if (typeof projectId !== "string" || !ULID_PATTERN.test(projectId))
12
12
  throw new TypeError("Invalid canonical ULID");
13
13
  const gatewayOrigin = canonicalOrigin(input.gatewayOrigin);
14
+ const fetch = input.fetch;
15
+ const timeoutMilliseconds = input.timeoutMilliseconds ?? 8_000;
14
16
  if (!/^[A-Za-z0-9_-]{43}$/u.test(input.key) ||
15
17
  typeof input.fetch !== "function" ||
16
- typeof input.crypto?.subtle?.digest !== "function") {
18
+ typeof input.crypto?.subtle?.digest !== "function" ||
19
+ !Number.isSafeInteger(timeoutMilliseconds) ||
20
+ timeoutMilliseconds < 100 ||
21
+ timeoutMilliseconds > 30_000) {
17
22
  throw new TypeError("Mail gateway email sender input is invalid");
18
23
  }
19
24
  return Object.freeze({
@@ -35,7 +40,7 @@ export function createMailGatewayEmailSender(input) {
35
40
  const idempotencyKey = await sha256Hex(input.crypto, `${message.kind}\n${message.to}\n${message.url}`);
36
41
  let response;
37
42
  try {
38
- response = await input.fetch(`${gatewayOrigin}/v1/send`, {
43
+ response = await fetch(`${gatewayOrigin}/v1/send`, {
39
44
  method: "POST",
40
45
  headers: {
41
46
  Authorization: `Bearer ${input.key}`,
@@ -44,7 +49,7 @@ export function createMailGatewayEmailSender(input) {
44
49
  },
45
50
  body: JSON.stringify(body),
46
51
  redirect: "manual",
47
- signal: AbortSignal.timeout(8_000),
52
+ signal: AbortSignal.timeout(timeoutMilliseconds),
48
53
  });
49
54
  }
50
55
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"mail-gateway.js","sourceRoot":"","sources":["../src/mail-gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mail-gateway.js","sourceRoot":"","sources":["../src/mail-gateway.ts"],"names":[],"mappings":"AAEA,MAAM,YAAY,GAAG,gCAAgC,CAAC;AAEtD,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IACvC,IAAI,GAAG,qCAAqC,CAAC;IAC7D;QACE,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,UAAU,4BAA4B,CAAC,KAQ5C;IACC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC;QAChE,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,IAAI,KAAK,CAAC;IAC/D,IACE,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QACvC,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU;QACjC,OAAO,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,UAAU;QAClD,CAAC,MAAM,CAAC,aAAa,CAAC,mBAAmB,CAAC;QAC1C,mBAAmB,GAAG,GAAG;QACzB,mBAAmB,GAAG,MAAM,EAC5B,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,OAAuD;YAChE,eAAe,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM,OAAO,GACX,OAAO,CAAC,IAAI,KAAK,cAAc;gBAC7B,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,gBAAgB;oBACjC,CAAC,CAAC,qBAAqB;oBACvB,CAAC,CAAC,2BAA2B,CAAC;YACpC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAO,CAAC;YACrF,MAAM,IAAI,GAAG;gBACX,UAAU,EAAE,SAAS;gBACrB,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,OAAO;gBACP,IAAI,EAAE,GAAG,OAAO,KAAK,OAAO,CAAC,GAAG,EAAE;gBAClC,IAAI,EAAE,eAAe,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,UAAU;aAClE,CAAC;YACF,MAAM,cAAc,GAAG,MAAM,SAAS,CACpC,KAAK,CAAC,MAAM,EACZ,GAAG,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,GAAG,EAAE,CACjD,CAAC;YACF,IAAI,QAAkB,CAAC;YACvB,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,aAAa,UAAU,EAAE;oBACjD,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,KAAK,CAAC,GAAG,EAAE;wBACpC,cAAc,EAAE,kBAAkB;wBAClC,iBAAiB,EAAE,cAAc;qBAClC;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC1B,QAAQ,EAAE,QAAQ;oBAClB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC;iBACjD,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,8BAA8B,EAAE,CAAC;YAC7C,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACvC,IACE,QAAQ,CAAC,MAAM,KAAK,GAAG;gBACvB,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAChB,KAAK,CAAC,OAAO,CAAC,KAAK,UAAU;gBAC7B,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,QAAQ;gBACvC,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,QAAQ,EACvC,CAAC;gBACD,MAAM,IAAI,8BAA8B,EAAE,CAAC;YAC7C,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAC;QAC7F,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CAAC,OAAuD;IAC9E,IACE,CAAC,OAAO,CAAC,IAAI,KAAK,cAAc;QAC9B,OAAO,CAAC,IAAI,KAAK,gBAAgB;QACjC,OAAO,CAAC,IAAI,KAAK,kBAAkB,CAAC;QACtC,CAAC,oGAAoG,CAAC,IAAI,CACxG,OAAO,CAAC,EAAE,CACX;QACD,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,EAC1B,CAAC;QACD,MAAM,IAAI,8BAA8B,EAAE,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;IACxD,CAAC;IACD,IACE,GAAG,CAAC,QAAQ,KAAK,QAAQ;QACzB,GAAG,CAAC,QAAQ,KAAK,EAAE;QACnB,GAAG,CAAC,QAAQ,KAAK,EAAE;QACnB,GAAG,CAAC,QAAQ,KAAK,GAAG;QACpB,GAAG,CAAC,MAAM,KAAK,EAAE;QACjB,GAAG,CAAC,IAAI,KAAK,EAAE,EACf,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,MAAc,EAAE,KAAa;IACpD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACnF,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACnF,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,QAAkB;IACxC,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACxD,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;QACnF,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,IAAI,8BAA8B,EAAE,CAAC;IAC7C,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,IAAI,KAAK,CAAC,UAAU,GAAG,KAAK;QAAE,MAAM,IAAI,8BAA8B,EAAE,CAAC;IACzE,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,8BAA8B,EAAE,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK;SACT,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amerged/ohmyhost-auth",
3
- "version": "0.1.37",
3
+ "version": "0.1.39",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=22"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ohmyhost/customer-auth-better-auth",
3
- "version": "0.1.37",
3
+ "version": "0.1.39",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "exports": {
@@ -28,7 +28,7 @@
28
28
  "scripts": {
29
29
  "build": "tsc --project tsconfig.build.json",
30
30
  "test": "vitest run --root ../.. packages/customer-auth-better-auth/src",
31
- "typecheck": "tsc --project tsconfig.json --noEmit"
31
+ "typecheck": "tsc --project tsconfig.json --noEmit --incremental --tsBuildInfoFile typecheck.tsbuildinfo"
32
32
  },
33
33
  "dependencies": {
34
34
  "@better-fetch/fetch": "1.3.1",
@@ -16,15 +16,22 @@ export function createMailGatewayEmailSender(input: {
16
16
  readonly key: string;
17
17
  readonly fetch: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
18
18
  readonly crypto: Crypto;
19
+ /** Gateway header timeout: 100–30000 ms, default 8000 ms. */
20
+ readonly timeoutMilliseconds?: number;
19
21
  }): CustomerAuthEmailSender {
20
22
  const projectId = input.projectId;
21
23
  if (typeof projectId !== "string" || !ULID_PATTERN.test(projectId))
22
24
  throw new TypeError("Invalid canonical ULID");
23
25
  const gatewayOrigin = canonicalOrigin(input.gatewayOrigin);
26
+ const fetch = input.fetch;
27
+ const timeoutMilliseconds = input.timeoutMilliseconds ?? 8_000;
24
28
  if (
25
29
  !/^[A-Za-z0-9_-]{43}$/u.test(input.key) ||
26
30
  typeof input.fetch !== "function" ||
27
- typeof input.crypto?.subtle?.digest !== "function"
31
+ typeof input.crypto?.subtle?.digest !== "function" ||
32
+ !Number.isSafeInteger(timeoutMilliseconds) ||
33
+ timeoutMilliseconds < 100 ||
34
+ timeoutMilliseconds > 30_000
28
35
  ) {
29
36
  throw new TypeError("Mail gateway email sender input is invalid");
30
37
  }
@@ -51,7 +58,7 @@ export function createMailGatewayEmailSender(input: {
51
58
  );
52
59
  let response: Response;
53
60
  try {
54
- response = await input.fetch(`${gatewayOrigin}/v1/send`, {
61
+ response = await fetch(`${gatewayOrigin}/v1/send`, {
55
62
  method: "POST",
56
63
  headers: {
57
64
  Authorization: `Bearer ${input.key}`,
@@ -60,7 +67,7 @@ export function createMailGatewayEmailSender(input: {
60
67
  },
61
68
  body: JSON.stringify(body),
62
69
  redirect: "manual",
63
- signal: AbortSignal.timeout(8_000),
70
+ signal: AbortSignal.timeout(timeoutMilliseconds),
64
71
  });
65
72
  } catch {
66
73
  throw new CustomerAuthEmailDeliveryError();