@lokalise/fastify-extras 25.0.0 → 25.2.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.
@@ -3,7 +3,7 @@ import type { FastifyReply, FastifyRequest } from 'fastify';
3
3
  import type { ZodError } from 'zod';
4
4
  import type { AnyFastifyInstance } from '../plugins/pluginsCommon';
5
5
  export type FreeformRecord = Record<string, any>;
6
- type ErrorResponseObject = {
6
+ export type ErrorResponseObject = {
7
7
  statusCode: number;
8
8
  payload: {
9
9
  message: string;
@@ -18,4 +18,3 @@ export type ErrorHandlerParams = {
18
18
  resolveLogObject?: (error: unknown) => FreeformRecord | undefined;
19
19
  };
20
20
  export declare function createErrorHandler(params: ErrorHandlerParams): (this: AnyFastifyInstance, error: FreeformRecord, request: FastifyRequest, reply: FastifyReply) => void;
21
- export {};
package/dist/index.d.ts CHANGED
@@ -25,7 +25,7 @@ export { AmplitudeAdapter, AMPLITUDE_BASE_MESSAGE_SCHEMA, type AmplitudeMessage,
25
25
  export type { FastifyReplyWithPayload } from './types';
26
26
  export { unhandledExceptionPlugin, commonErrorObjectResolver, } from './plugins/unhandledExceptionPlugin';
27
27
  export type { UnhandledExceptionPluginOptions } from './plugins/unhandledExceptionPlugin';
28
- export { createErrorHandler, isZodError } from './errors/errorHandler';
28
+ export { createErrorHandler, isZodError, type ErrorResponseObject } from './errors/errorHandler';
29
29
  export type { ErrorHandlerParams, FreeformRecord } from './errors/errorHandler';
30
30
  export { generateJwtToken, decodeJwtToken } from './jwt-utils/tokenUtils';
31
31
  export { createStaticTokenAuthPreHandler } from './route-utils/authPreHandlers';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":";;;AAAA,yDAKgC;AAJ9B,8GAAA,aAAa,OAAA;AACb,qHAAA,oBAAoB,OAAA;AACpB,qHAAA,oBAAoB,OAAA;AACpB,+GAAA,cAAc,OAAA;AAIhB,uFAG+C;AAF7C,4IAAA,4BAA4B,OAAA;AAC5B,4IAAA,4BAA4B,OAAA;AAI9B,+FAGmD;AAFjD,oJAAA,gCAAgC,OAAA;AAChC,8IAAA,0BAA0B,OAAA;AAI5B,qFAG8C;AAF5C,0IAAA,2BAA2B,OAAA;AAC3B,oIAAA,qBAAqB,OAAA;AAIvB,2FAGuD;AAFrD,oIAAA,wBAAwB,OAAA;AACxB,wIAAA,4BAA4B,OAAA;AAQ9B,gHAA8G;AAArG,0JAAA,mCAAmC,OAAA;AAE5C,qEAAmE;AAA1D,0HAAA,mBAAmB,OAAA;AAE5B,+EAGmD;AAFjD,6HAAA,yBAAyB,OAAA;AACzB,sIAAA,kCAAkC,OAAA;AAIpC,yDAAuD;AAA9C,8GAAA,aAAa,OAAA;AAMtB,yFAAuF;AAA9E,kIAAA,uBAAuB,OAAA;AAOhC,+EAA0E;AAAjE,qHAAA,eAAe,OAAA;AAGxB,uEAI4C;AAH1C,kHAAA,eAAe,OAAA;AAIjB,2DAAyD;AAAhD,sGAAA,SAAS,OAAA;AAClB,yEAK6C;AAJ3C,oHAAA,gBAAgB,OAAA;AAChB,iIAAA,6BAA6B,OAAA;AAO/B,+EAG2C;AAFzC,oIAAA,wBAAwB,OAAA;AACxB,qIAAA,yBAAyB,OAAA;AAI3B,sDAAsE;AAA7D,kHAAA,kBAAkB,OAAA;AAAE,0GAAA,UAAU,OAAA;AAGvC,qDAAyE;AAAhE,8GAAA,gBAAgB,OAAA;AAAE,4GAAA,cAAc,OAAA;AAEzC,iEAA+E;AAAtE,kIAAA,+BAA+B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":";;;AAAA,yDAKgC;AAJ9B,8GAAA,aAAa,OAAA;AACb,qHAAA,oBAAoB,OAAA;AACpB,qHAAA,oBAAoB,OAAA;AACpB,+GAAA,cAAc,OAAA;AAIhB,uFAG+C;AAF7C,4IAAA,4BAA4B,OAAA;AAC5B,4IAAA,4BAA4B,OAAA;AAI9B,+FAGmD;AAFjD,oJAAA,gCAAgC,OAAA;AAChC,8IAAA,0BAA0B,OAAA;AAI5B,qFAG8C;AAF5C,0IAAA,2BAA2B,OAAA;AAC3B,oIAAA,qBAAqB,OAAA;AAIvB,2FAGuD;AAFrD,oIAAA,wBAAwB,OAAA;AACxB,wIAAA,4BAA4B,OAAA;AAQ9B,gHAA8G;AAArG,0JAAA,mCAAmC,OAAA;AAE5C,qEAAmE;AAA1D,0HAAA,mBAAmB,OAAA;AAE5B,+EAGmD;AAFjD,6HAAA,yBAAyB,OAAA;AACzB,sIAAA,kCAAkC,OAAA;AAIpC,yDAAuD;AAA9C,8GAAA,aAAa,OAAA;AAMtB,yFAAuF;AAA9E,kIAAA,uBAAuB,OAAA;AAOhC,+EAA0E;AAAjE,qHAAA,eAAe,OAAA;AAGxB,uEAI4C;AAH1C,kHAAA,eAAe,OAAA;AAIjB,2DAAyD;AAAhD,sGAAA,SAAS,OAAA;AAClB,yEAK6C;AAJ3C,oHAAA,gBAAgB,OAAA;AAChB,iIAAA,6BAA6B,OAAA;AAO/B,+EAG2C;AAFzC,oIAAA,wBAAwB,OAAA;AACxB,qIAAA,yBAAyB,OAAA;AAI3B,sDAAgG;AAAvF,kHAAA,kBAAkB,OAAA;AAAE,0GAAA,UAAU,OAAA;AAGvC,qDAAyE;AAAhE,8GAAA,gBAAgB,OAAA;AAAE,4GAAA,cAAc,OAAA;AAEzC,iEAA+E;AAAtE,kIAAA,+BAA+B,OAAA"}
@@ -4,14 +4,17 @@ export declare const AMPLITUDE_BASE_MESSAGE_SCHEMA: z.ZodObject<{
4
4
  event_type: z.ZodLiteral<string>;
5
5
  event_properties: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
6
6
  user_id: z.ZodUnion<[z.ZodString, z.ZodLiteral<"SYSTEM">]>;
7
+ groups: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
7
8
  }, "strip", z.ZodTypeAny, {
8
9
  event_type: string;
9
10
  event_properties: {};
10
11
  user_id: string;
12
+ groups?: Record<string, any> | undefined;
11
13
  }, {
12
14
  event_type: string;
13
15
  event_properties: {};
14
16
  user_id: string;
17
+ groups?: Record<string, any> | undefined;
15
18
  }>;
16
19
  export type AmplitudeAdapterDependencies = {
17
20
  amplitude: Amplitude;
@@ -8,6 +8,7 @@ exports.AMPLITUDE_BASE_MESSAGE_SCHEMA = zod_1.default
8
8
  event_type: zod_1.default.literal('<replace.me>'),
9
9
  event_properties: zod_1.default.object({}),
10
10
  user_id: zod_1.default.string().uuid().or(zod_1.default.literal('SYSTEM')),
11
+ groups: zod_1.default.record(zod_1.default.string(), zod_1.default.any()).optional(),
11
12
  })
12
13
  .strip();
13
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AmplitudeAdapter.js","sourceRoot":"","sources":["../../../lib/plugins/amplitude/AmplitudeAdapter.ts"],"names":[],"mappings":";;;;AAAA,sDAAuC;AAI1B,QAAA,6BAA6B,GAAG,aAAC;KAC3C,MAAM,CAAC;IACN,UAAU,EAAE,aAAC,CAAC,OAAO,CAAS,cAAc,CAAC;IAC7C,gBAAgB,EAAE,aAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IAC9B,OAAO,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,aAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;CACnD,CAAC;KACD,KAAK,EAAE,CAAA;AAWV;;GAEG;AACH,MAAa,gBAAgB;IACV,SAAS,CAAW;IAErC,YAAY,EAAE,SAAS,EAAgC;QACrD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CACV,gBAAyB,EACzB,IAA6D;QAE7D,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5C,UAAU,EAAE,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK;YAC1D,GAAG,IAAI;SACR,CAAC,CAAA;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC/B,CAAC;CACF;AAjBD,4CAiBC"}
1
+ {"version":3,"file":"AmplitudeAdapter.js","sourceRoot":"","sources":["../../../lib/plugins/amplitude/AmplitudeAdapter.ts"],"names":[],"mappings":";;;;AAAA,sDAAuC;AAI1B,QAAA,6BAA6B,GAAG,aAAC;KAC3C,MAAM,CAAC;IACN,UAAU,EAAE,aAAC,CAAC,OAAO,CAAS,cAAc,CAAC;IAC7C,gBAAgB,EAAE,aAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IAC9B,OAAO,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,aAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,EAAE,aAAC,CAAC,MAAM,CAAC,aAAC,CAAC,MAAM,EAAE,EAAE,aAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE;CACjD,CAAC;KACD,KAAK,EAAE,CAAA;AAWV;;GAEG;AACH,MAAa,gBAAgB;IACV,SAAS,CAAW;IAErC,YAAY,EAAE,SAAS,EAAgC;QACrD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CACV,gBAAyB,EACzB,IAA6D;QAE7D,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5C,UAAU,EAAE,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK;YAC1D,GAAG,IAAI;SACR,CAAC,CAAA;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC/B,CAAC;CACF;AAjBD,4CAiBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lokalise/fastify-extras",
3
- "version": "25.0.0",
3
+ "version": "25.2.0",
4
4
  "description": "Opinionated set of fastify plugins, commonly used in Lokalise",
5
5
  "author": {
6
6
  "name": "Lokalise",
@@ -33,9 +33,9 @@
33
33
  },
34
34
  "dependencies": {
35
35
  "@amplitude/analytics-node": "^1.3.6",
36
- "@bugsnag/js": "^8.0.0",
36
+ "@bugsnag/js": "^8.1.2",
37
37
  "@lokalise/background-jobs-common": "^8.0.0",
38
- "@lokalise/error-utils": "^2.0.0",
38
+ "@lokalise/error-utils": "^2.2.0",
39
39
  "@splitsoftware/splitio": "^10.28.0",
40
40
  "@supercharge/promise-pool": "^3.2.0",
41
41
  "fastify-metrics": "^12.1.0",
@@ -43,7 +43,7 @@
43
43
  "fastify-type-provider-zod": "^4.0.2",
44
44
  "prom-client": "^15.1.3",
45
45
  "toad-cache": "^3.7.0",
46
- "tslib": "^2.7.0"
46
+ "tslib": "^2.8.1"
47
47
  },
48
48
  "peerDependencies": {
49
49
  "@fastify/jwt": "^9.0.1",
@@ -56,25 +56,25 @@
56
56
  "zod": "^3.22.4"
57
57
  },
58
58
  "devDependencies": {
59
- "@amplitude/analytics-types": "^2.8.2",
60
- "@biomejs/biome": "^1.9.2",
61
- "@lokalise/backend-http-client": "^2.3.0",
62
- "@lokalise/biome-config": "^1.4.0",
63
- "@lokalise/node-core": "^13.0.1",
64
- "@types/newrelic": "^9.14.4",
65
- "@types/node": "^22.7.4",
66
- "@vitest/coverage-v8": "^2.1.1",
59
+ "@amplitude/analytics-types": "^2.8.4",
60
+ "@biomejs/biome": "^1.9.4",
61
+ "@lokalise/backend-http-client": "^2.4.0",
62
+ "@lokalise/biome-config": "^1.5.0",
63
+ "@lokalise/node-core": "^13.1.0",
64
+ "@types/newrelic": "^9.14.5",
65
+ "@types/node": "^22.9.0",
66
+ "@vitest/coverage-v8": "^2.1.4",
67
67
  "auto-changelog": "^2.4.0",
68
68
  "bullmq": "^5.21.1",
69
- "fastify": "^5.0.0",
70
- "fastify-type-provider-zod": "^4.0.1",
69
+ "fastify": "^5.1.0",
70
+ "fastify-type-provider-zod": "^4.0.2",
71
71
  "ioredis": "^5.4.1",
72
- "newrelic": "12.5.1",
72
+ "newrelic": "12.5.2",
73
73
  "pino": "^9.4.0",
74
74
  "pino-pretty": "^11.2.2",
75
75
  "shx": "^0.3.4",
76
- "typescript": "^5.6.2",
77
- "vitest": "^2.1.1",
76
+ "typescript": "^5.6.3",
77
+ "vitest": "^2.1.4",
78
78
  "zod": "^3.23.8"
79
79
  },
80
80
  "engines": {