opinionated-machine 4.0.0 → 5.0.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
@@ -1,7 +1,7 @@
1
1
  export { AbstractController, type BuildRoutesReturnType } from './lib/AbstractController.js';
2
2
  export { AbstractModule, type MandatoryNameAndRegistrationPair, type UnionToIntersection, } from './lib/AbstractModule.js';
3
3
  export { AbstractTestContextFactory, type CreateTestContextParams, } from './lib/AbstractTestContextFactory.js';
4
- export type { NestedPartial } from './lib/configUtils.ts';
4
+ export type { NestedPartial } from './lib/configUtils.js';
5
5
  export { type DependencyInjectionOptions, DIContext, type RegisterDependenciesParams, } from './lib/DIContext.js';
6
6
  export { ENABLE_ALL, isAnyMessageQueueConsumerEnabled, isEnqueuedJobWorkersEnabled, isJobQueueEnabled, isMessageQueueConsumerEnabled, isPeriodicJobEnabled, resolveJobQueuesEnabled, } from './lib/diConfigUtils.js';
7
7
  export type { EnqueuedJobWorkerModuleOptions, JobQueueModuleOptions, MessageQueueConsumerModuleOptions, PeriodicJobOptions, } from './lib/resolverFunctions.js';
@@ -3,10 +3,10 @@ import type { buildFastifyNoPayloadRoute, buildFastifyPayloadRoute } from '@loka
3
3
  import type { z } from 'zod/v4';
4
4
  type AnyCommonRouteDefinition = CommonRouteDefinition<any, any, any, any, any, any, any>;
5
5
  type OptionalZodSchema = z.Schema | undefined;
6
- type FastifyPayloadRouteReturnType<RequestBody extends OptionalZodSchema, ResponseBody extends OptionalZodSchema, Path extends OptionalZodSchema, Query extends OptionalZodSchema, Headers extends OptionalZodSchema, IsNonJSONResponseExpected extends boolean, IsEmptyResponseExpected extends boolean> = ReturnType<typeof buildFastifyPayloadRoute<RequestBody, ResponseBody, Path, Query, Headers, IsNonJSONResponseExpected, IsEmptyResponseExpected>>;
7
- type FastifyNoPayloadRouteReturnType<RequestBody extends OptionalZodSchema, Path extends OptionalZodSchema, Query extends OptionalZodSchema, Headers extends OptionalZodSchema> = ReturnType<typeof buildFastifyNoPayloadRoute<RequestBody, Path, Query, Headers>>;
6
+ type FastifyPayloadRouteReturnType<RequestBody extends OptionalZodSchema, ResponseBody extends OptionalZodSchema, Path extends OptionalZodSchema, Query extends OptionalZodSchema, Headers extends OptionalZodSchema, ResponseHeaders extends OptionalZodSchema, IsNonJSONResponseExpected extends boolean, IsEmptyResponseExpected extends boolean> = ReturnType<typeof buildFastifyPayloadRoute<RequestBody, ResponseBody, Path, Query, Headers, ResponseHeaders, IsNonJSONResponseExpected, IsEmptyResponseExpected>>;
7
+ type FastifyNoPayloadRouteReturnType<RequestBody extends OptionalZodSchema, Path extends OptionalZodSchema, Query extends OptionalZodSchema, Headers extends OptionalZodSchema, ResponseHeaders extends OptionalZodSchema> = ReturnType<typeof buildFastifyNoPayloadRoute<RequestBody, Path, Query, Headers, ResponseHeaders>>;
8
8
  export type BuildRoutesReturnType<APIContracts extends Record<string, AnyCommonRouteDefinition>> = {
9
- [K in keyof APIContracts]: APIContracts[K] extends PayloadRouteDefinition<infer RequestBody, infer ResponseBody, infer Path, infer Query, infer Headers, infer IsNonJSONResponseExpected, infer IsEmptyResponseExpected, infer _ResponseSchemasByStatusCode> ? FastifyPayloadRouteReturnType<RequestBody, ResponseBody, Path, Query, Headers, IsNonJSONResponseExpected, IsEmptyResponseExpected> : APIContracts[K] extends GetRouteDefinition<infer GetResponseBody, infer GetPath, infer GetQuery, infer GetHeaders, infer _GetIsNonJSONResponseExpected, infer _GetIsEmptyResponseExpected, infer _GetResponseSchemasByStatusCode> | DeleteRouteDefinition<infer DeleteResponseBody, infer DeletePath, infer DeleteQuery, infer DeleteHeaders, infer _DeleteIsNonJSONResponseExpected, infer _DeleteIsEmptyResponseExpected, infer _DeleteResponseSchemasByStatusCode> ? FastifyNoPayloadRouteReturnType<GetResponseBody | DeleteResponseBody, GetPath | DeletePath, GetQuery | DeleteQuery, GetHeaders | DeleteHeaders> : never;
9
+ [K in keyof APIContracts]: APIContracts[K] extends PayloadRouteDefinition<infer RequestBody, infer ResponseBody, infer Path, infer Query, infer Headers, infer ResponseHeaders, infer IsNonJSONResponseExpected, infer IsEmptyResponseExpected, infer _ResponseSchemasByStatusCode> ? FastifyPayloadRouteReturnType<RequestBody, ResponseBody, Path, Query, Headers, ResponseHeaders, IsNonJSONResponseExpected, IsEmptyResponseExpected> : APIContracts[K] extends GetRouteDefinition<infer GetResponseBody, infer GetPath, infer GetQuery, infer GetHeaders, infer GetResponseHeaders, infer _GetIsNonJSONResponseExpected, infer _GetIsEmptyResponseExpected, infer _GetResponseSchemasByStatusCode> | DeleteRouteDefinition<infer DeleteResponseBody, infer DeletePath, infer DeleteQuery, infer DeleteHeaders, infer DeleteResponseHeaders, infer _DeleteIsNonJSONResponseExpected, infer _DeleteIsEmptyResponseExpected, infer _DeleteResponseSchemasByStatusCode> ? FastifyNoPayloadRouteReturnType<GetResponseBody | DeleteResponseBody, GetPath | DeletePath, GetQuery | DeleteQuery, GetHeaders | DeleteHeaders, GetResponseHeaders | DeleteResponseHeaders> : never;
10
10
  };
11
11
  export declare abstract class AbstractController<APIContracts extends Record<string, AnyCommonRouteDefinition>> {
12
12
  abstract buildRoutes(): BuildRoutesReturnType<APIContracts>;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractController.js","sourceRoot":"","sources":["../../lib/AbstractController.ts"],"names":[],"mappings":"AA0FA,MAAM,OAAgB,kBAAkB;CAIvC"}
1
+ {"version":3,"file":"AbstractController.js","sourceRoot":"","sources":["../../lib/AbstractController.ts"],"names":[],"mappings":"AAoGA,MAAM,OAAgB,kBAAkB;CAIvC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opinionated-machine",
3
- "version": "4.0.0",
3
+ "version": "5.0.0",
4
4
  "description": "Very opinionated DI framework for fastify, built on top of awilix ",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -29,33 +29,33 @@
29
29
  "url": "git+https://github.com/kibertoad/opinionated-machine.git"
30
30
  },
31
31
  "dependencies": {
32
- "ts-deepmerge": "^7.0.2"
32
+ "ts-deepmerge": "^7.0.3"
33
33
  },
34
34
  "peerDependencies": {
35
- "@lokalise/fastify-api-contracts": ">=2.0.0",
36
- "@lokalise/api-contracts": ">=4.3.0",
35
+ "@lokalise/fastify-api-contracts": ">=5.0.0",
36
+ "@lokalise/api-contracts": ">=6.0.0",
37
37
  "awilix": ">=12.0.0",
38
38
  "awilix-manager": ">=6.0.0",
39
39
  "fastify": ">=5.0.0",
40
- "fastify-type-provider-zod": ">=4.0.2",
41
- "zod": ">=3.24.0"
40
+ "fastify-type-provider-zod": ">=6.1.0",
41
+ "zod": ">=4.1.12"
42
42
  },
43
43
  "devDependencies": {
44
44
  "@types/node": "^22.13.13",
45
- "@biomejs/biome": "2.2.2",
45
+ "@biomejs/biome": "2.3.4",
46
46
  "@lokalise/biome-config": "^3.1.0",
47
- "@lokalise/fastify-api-contracts": "^4.1.0",
48
- "@lokalise/tsconfig": "^2.0.0",
49
- "@lokalise/api-contracts": "^5.2.0",
47
+ "@lokalise/fastify-api-contracts": "^5.0.0",
48
+ "@lokalise/tsconfig": "^3.0.0",
49
+ "@lokalise/api-contracts": "^6.0.0",
50
50
  "@vitest/coverage-v8": "^3.2.4",
51
51
  "awilix": "^12.0.5",
52
52
  "awilix-manager": "^6.1.0",
53
- "fastify": "^5.5.0",
54
- "fastify-type-provider-zod": "^5.0.0",
53
+ "fastify": "^5.6.1",
54
+ "fastify-type-provider-zod": "^6.1.0",
55
55
  "vitest": "^3.2.4",
56
- "rimraf": "^6.0.1",
57
- "typescript": "^5.9.2",
58
- "zod": "^3.25.76"
56
+ "rimraf": "^6.1.0",
57
+ "typescript": "^5.9.3",
58
+ "zod": "^4.1.12"
59
59
  },
60
60
  "private": false,
61
61
  "publishConfig": {