@nodii/grpc-interceptors 0.6.1 → 0.7.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.d.ts CHANGED
@@ -7,7 +7,7 @@ export { tenantContext } from "./interceptors/tenant-context";
7
7
  export { auditContext } from "./interceptors/audit-context";
8
8
  export { deadlineGuard } from "./interceptors/deadline-guard";
9
9
  export { cancellationGuard } from "./interceptors/cancellation-guard";
10
- export { errorMap, STANDARD_ERROR_CATALOG, } from "./interceptors/error-map";
10
+ export { errorMap, type ErrorMapOptions, RETRYABLE_PG_SQLSTATES, STANDARD_ERROR_CATALOG, } from "./interceptors/error-map";
11
11
  export { withMfaRequiredUnary, createMfaPolicy, MFA_FRESHNESS_SECONDS, } from "./interceptors/mfa-required";
12
12
  export { withSagaEnvelopeUnary } from "./interceptors/saga-envelope";
13
13
  export type { CallWithSagaEnvelope } from "./interceptors/saga-envelope";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,QAAQ,sBAAsB,CAAC;AAC5C,eAAO,MAAM,OAAO,UAAU,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EACL,QAAQ,EACR,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACL,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,YAAY,EACZ,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAGrD,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,UAAU,EACV,aAAa,EACb,kBAAkB,GACnB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,gCAAgC,EAChC,0BAA0B,EAC1B,8BAA8B,GAC/B,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAI1B,cAAc,aAAa,CAAC;AAC5B,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGtE,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EACzB,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,YAAY,EACZ,gBAAgB,GACjB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,QAAQ,sBAAsB,CAAC;AAC5C,eAAO,MAAM,OAAO,UAAU,CAAC;AAG/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EACL,QAAQ,EACR,KAAK,eAAe,EACpB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EACL,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,YAAY,EACZ,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAGrD,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,UAAU,EACV,aAAa,EACb,kBAAkB,GACnB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,gCAAgC,EAChC,0BAA0B,EAC1B,8BAA8B,GAC/B,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAI1B,cAAc,aAAa,CAAC;AAC5B,YAAY,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGtE,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EACzB,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,YAAY,EACZ,gBAAgB,GACjB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -17,7 +17,7 @@ export { tenantContext } from "./interceptors/tenant-context";
17
17
  export { auditContext } from "./interceptors/audit-context";
18
18
  export { deadlineGuard } from "./interceptors/deadline-guard";
19
19
  export { cancellationGuard } from "./interceptors/cancellation-guard";
20
- export { errorMap, STANDARD_ERROR_CATALOG, } from "./interceptors/error-map";
20
+ export { errorMap, RETRYABLE_PG_SQLSTATES, STANDARD_ERROR_CATALOG, } from "./interceptors/error-map";
21
21
  // Billing/auth-specific interceptors (D423 / request 388ea83b) — the lib
22
22
  // equivalents of billing's hand-rolled MFA + saga-envelope + saga-idempotency
23
23
  // stack, gating the D399 createStandardServerStack migration.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,EAAE;AACF,gFAAgF;AAChF,EAAE;AACF,mEAAmE;AACnE,oEAAoE;AACpE,qEAAqE;AACrE,oEAAoE;AACpE,6DAA6D;AAE7D,MAAM,CAAC,MAAM,QAAQ,GAAG,mBAAmB,CAAC;AAC5C,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,sBAAsB;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EACL,QAAQ,EACR,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAElC,yEAAyE;AACzE,8EAA8E;AAC9E,8DAA8D;AAC9D,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAOzB,qCAAqC;AACrC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAErD,sEAAsE;AACtE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AAOnB,oCAAoC;AACpC,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AAOrB,0BAA0B;AAC1B,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAE1B,0EAA0E;AAC1E,mCAAmC;AACnC,cAAc,aAAa,CAAC;AA2B5B,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,EAAE;AACF,gFAAgF;AAChF,EAAE;AACF,mEAAmE;AACnE,oEAAoE;AACpE,qEAAqE;AACrE,oEAAoE;AACpE,6DAA6D;AAE7D,MAAM,CAAC,MAAM,QAAQ,GAAG,mBAAmB,CAAC;AAC5C,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,sBAAsB;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EACL,QAAQ,EAER,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAElC,yEAAyE;AACzE,8EAA8E;AAC9E,8DAA8D;AAC9D,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAOzB,qCAAqC;AACrC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAErD,sEAAsE;AACtE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AAOnB,oCAAoC;AACpC,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AAOrB,0BAA0B;AAC1B,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAE1B,0EAA0E;AAC1E,mCAAmC;AACnC,cAAc,aAAa,CAAC;AA2B5B,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
@@ -1,4 +1,25 @@
1
1
  import type { ErrorMapEntry, UnaryInterceptor } from "../types";
2
2
  export declare const STANDARD_ERROR_CATALOG: Record<string, ErrorMapEntry>;
3
- export declare function errorMap(catalog: Record<string, ErrorMapEntry>): UnaryInterceptor;
3
+ /**
4
+ * pg SQLSTATE codes that are TRANSIENT — the whole tx (saga step / idempotent
5
+ * mutator) should be RETRIED rather than failed. Without this, a pg error
6
+ * bubbling through `errorMap` misses the name catalog and collapses to
7
+ * `INTERNAL`, discarding the retryable signal the saga-retry + idempotency layers
8
+ * depend on. D442 — pushed upstream from billing's hand-rolled classifier
9
+ * (req `ab3f454c`). Extend per-service via {@link ErrorMapOptions.retryableSqlStates}.
10
+ */
11
+ export declare const RETRYABLE_PG_SQLSTATES: Readonly<Record<string, string>>;
12
+ /** Options for {@link errorMap}. */
13
+ export interface ErrorMapOptions {
14
+ /**
15
+ * Extra retryable SQLSTATE → label mappings, merged over (and able to override)
16
+ * {@link RETRYABLE_PG_SQLSTATES}. A matched code is surfaced as
17
+ * `ABORTED retryable_<label>` (the original pg error — with its SQLSTATE on
18
+ * `.code` — is preserved as the gRPC error `cause`), so the saga-retry layer
19
+ * sees a RETRYABLE status instead of a terminal INTERNAL. Pass `{}` to keep the
20
+ * defaults; pass `{ "55P03": "lock_not_available" }` to add to them.
21
+ */
22
+ retryableSqlStates?: Record<string, string>;
23
+ }
24
+ export declare function errorMap(catalog: Record<string, ErrorMapEntry>, options?: ErrorMapOptions): UnaryInterceptor;
4
25
  //# sourceMappingURL=error-map.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-map.d.ts","sourceRoot":"","sources":["../../src/interceptors/error-map.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAgB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG9E,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAgDhE,CAAC;AAWF,wBAAgB,QAAQ,CACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GACrC,gBAAgB,CAgBlB"}
1
+ {"version":3,"file":"error-map.d.ts","sourceRoot":"","sources":["../../src/interceptors/error-map.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAgB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG9E,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAgDhE,CAAC;AAWF;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGnE,CAAC;AA2BF,oCAAoC;AACpC,MAAM,WAAW,eAAe;IAC9B;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7C;AAED,wBAAgB,QAAQ,CACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EACtC,OAAO,CAAC,EAAE,eAAe,GACxB,gBAAgB,CA8BlB"}
@@ -72,7 +72,45 @@ function nameOf(err) {
72
72
  }
73
73
  return undefined;
74
74
  }
75
- export function errorMap(catalog) {
75
+ /**
76
+ * pg SQLSTATE codes that are TRANSIENT — the whole tx (saga step / idempotent
77
+ * mutator) should be RETRIED rather than failed. Without this, a pg error
78
+ * bubbling through `errorMap` misses the name catalog and collapses to
79
+ * `INTERNAL`, discarding the retryable signal the saga-retry + idempotency layers
80
+ * depend on. D442 — pushed upstream from billing's hand-rolled classifier
81
+ * (req `ab3f454c`). Extend per-service via {@link ErrorMapOptions.retryableSqlStates}.
82
+ */
83
+ export const RETRYABLE_PG_SQLSTATES = {
84
+ "40001": "serialization_failure",
85
+ "40P01": "deadlock_detected",
86
+ };
87
+ /**
88
+ * Walk the `.cause` chain for a pg error whose SQLSTATE (`err.code`) is in the
89
+ * `retryable` set, so a pg error WRAPPED by a repository / ORM layer
90
+ * (`new RepositoryError(msg, { cause: pgErr })`) is still classified — parity
91
+ * with Go's `errors.As` chain unwrap. Matching against the retryable set
92
+ * directly (via `Object.hasOwn`, so inherited keys like `toString`/`__proto__`
93
+ * never match) means a non-retryable `.code` on an outer wrapper (e.g. a Node
94
+ * `EPIPE`) does NOT shadow a deeper retryable pg code. Bounded at 16 to defuse
95
+ * cyclic causes.
96
+ */
97
+ function retryableSqlStateOf(err, retryable) {
98
+ let cur = err;
99
+ for (let depth = 0; depth < 16 && cur && typeof cur === "object"; depth++) {
100
+ if ("code" in cur) {
101
+ const v = cur.code;
102
+ if (typeof v === "string" && Object.hasOwn(retryable, v))
103
+ return v;
104
+ }
105
+ cur = cur.cause;
106
+ }
107
+ return undefined;
108
+ }
109
+ export function errorMap(catalog, options) {
110
+ const retryable = {
111
+ ...RETRYABLE_PG_SQLSTATES,
112
+ ...options?.retryableSqlStates,
113
+ };
76
114
  return (_methodName, handler) => {
77
115
  return async (call) => {
78
116
  try {
@@ -86,6 +124,12 @@ export function errorMap(catalog) {
86
124
  const entry = catalog[name];
87
125
  throw new GrpcStatusError(entry.code, entry.detail, err);
88
126
  }
127
+ // A retryable pg SQLSTATE must NOT collapse to INTERNAL — surface ABORTED
128
+ // (retryable) with the SQLSTATE label, preserving the original error.
129
+ const sqlState = retryableSqlStateOf(err, retryable);
130
+ if (sqlState) {
131
+ throw new GrpcStatusError("ABORTED", `retryable_${retryable[sqlState]}`, err);
132
+ }
89
133
  throw new GrpcStatusError("INTERNAL", "internal_error", err);
90
134
  }
91
135
  };
@@ -1 +1 @@
1
- {"version":3,"file":"error-map.js","sourceRoot":"","sources":["../../src/interceptors/error-map.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,EAAE;AACF,yEAAyE;AACzE,sBAAsB;AACtB,oEAAoE;AACpE,0EAA0E;AAC1E,kDAAkD;AAClD,wEAAwE;AACxE,iEAAiE;AACjE,EAAE;AACF,mEAAmE;AACnE,4DAA4D;AAC5D,sEAAsE;AACtE,+DAA+D;AAG/D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,CAAC,MAAM,sBAAsB,GAAkC;IACnE,0BAA0B,EAAE;QAC1B,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,yBAAyB;KAClC;IACD,0BAA0B,EAAE;QAC1B,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,yBAAyB;KAClC;IACD,2EAA2E;IAC3E,kCAAkC;IAClC,mBAAmB,EAAE;QACnB,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,uBAAuB;KAChC;IACD,wBAAwB,EAAE;QACxB,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,uBAAuB;KAChC;IACD,wEAAwE;IACxE,yEAAyE;IACzE,wEAAwE;IACxE,wEAAwE;IACxE,sDAAsD;IACtD,uBAAuB,EAAE;QACvB,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,uBAAuB;KAChC;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,cAAc;KACvB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,WAAW;KACpB;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,oBAAoB;KAC7B;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,oBAAoB;KAC7B;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,oBAAoB;KAC7B;CACF,CAAC;AAEF,SAAS,MAAM,CAAC,GAAY;IAC1B,IAAI,GAAG,YAAY,KAAK;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC;IAC1C,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;QACpD,MAAM,CAAC,GAAI,GAA0B,CAAC,IAAI,CAAC;QAC3C,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,QAAQ,CACtB,OAAsC;IAEtC,OAAO,CAAC,WAAmB,EAAE,OAAqB,EAAgB,EAAE;QAClE,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE;YACpB,IAAI,CAAC;gBACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,eAAe;oBAAE,MAAM,GAAG,CAAC;gBAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1B,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;oBAC5B,MAAM,IAAI,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC3D,CAAC;gBACD,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,gBAAgB,EAAE,GAAG,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"error-map.js","sourceRoot":"","sources":["../../src/interceptors/error-map.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nodii/grpc-interceptors",
3
- "version": "0.6.1",
3
+ "version": "0.7.0",
4
4
  "description": "Substrate gRPC interceptor library for the Nodii microservice stack — 8 cross-cutting interceptors (logging, audit, enrichAuthContext, tenantContext, auditContext, deadlineGuard, cancellationGuard, errorMap) + re-export façade over @nodii/grpc-auth/saga/idempotency + locked-order createStandardServerStack factory. Spec: planning hub docKey=grpc-interceptors.",
5
5
  "license": "MIT",
6
6
  "type": "module",