@venizia/ignis 0.0.5-21 → 0.0.5-23

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.
Files changed (61) hide show
  1. package/dist/base/controllers/abstract.d.ts +23 -4
  2. package/dist/base/controllers/abstract.d.ts.map +1 -1
  3. package/dist/base/controllers/abstract.js +9 -4
  4. package/dist/base/controllers/abstract.js.map +1 -1
  5. package/dist/base/controllers/base.d.ts +4 -2
  6. package/dist/base/controllers/base.d.ts.map +1 -1
  7. package/dist/base/controllers/base.js +1 -0
  8. package/dist/base/controllers/base.js.map +1 -1
  9. package/dist/base/controllers/common/types.d.ts +262 -7
  10. package/dist/base/controllers/common/types.d.ts.map +1 -1
  11. package/dist/base/controllers/factory/controller.d.ts +568 -351
  12. package/dist/base/controllers/factory/controller.d.ts.map +1 -1
  13. package/dist/base/controllers/factory/controller.js +25 -25
  14. package/dist/base/controllers/factory/controller.js.map +1 -1
  15. package/dist/base/controllers/factory/definition.d.ts +190 -430
  16. package/dist/base/controllers/factory/definition.d.ts.map +1 -1
  17. package/dist/base/controllers/factory/definition.js +300 -209
  18. package/dist/base/controllers/factory/definition.js.map +1 -1
  19. package/dist/components/auth/authenticate/common/constants.d.ts +4 -0
  20. package/dist/components/auth/authenticate/common/constants.d.ts.map +1 -1
  21. package/dist/components/auth/authenticate/common/constants.js +6 -1
  22. package/dist/components/auth/authenticate/common/constants.js.map +1 -1
  23. package/dist/components/auth/authenticate/common/keys.d.ts +1 -0
  24. package/dist/components/auth/authenticate/common/keys.d.ts.map +1 -1
  25. package/dist/components/auth/authenticate/common/keys.js +1 -0
  26. package/dist/components/auth/authenticate/common/keys.js.map +1 -1
  27. package/dist/components/auth/authenticate/common/types.d.ts +39 -4
  28. package/dist/components/auth/authenticate/common/types.d.ts.map +1 -1
  29. package/dist/components/auth/authenticate/component.d.ts +17 -1
  30. package/dist/components/auth/authenticate/component.d.ts.map +1 -1
  31. package/dist/components/auth/authenticate/component.js +87 -31
  32. package/dist/components/auth/authenticate/component.js.map +1 -1
  33. package/dist/components/auth/authenticate/controllers/factory.d.ts +3 -2
  34. package/dist/components/auth/authenticate/controllers/factory.d.ts.map +1 -1
  35. package/dist/components/auth/authenticate/services/basic-token.service.d.ts +59 -0
  36. package/dist/components/auth/authenticate/services/basic-token.service.d.ts.map +1 -0
  37. package/dist/components/auth/authenticate/services/basic-token.service.js +135 -0
  38. package/dist/components/auth/authenticate/services/basic-token.service.js.map +1 -0
  39. package/dist/components/auth/authenticate/services/index.d.ts +1 -0
  40. package/dist/components/auth/authenticate/services/index.d.ts.map +1 -1
  41. package/dist/components/auth/authenticate/services/index.js +1 -0
  42. package/dist/components/auth/authenticate/services/index.js.map +1 -1
  43. package/dist/components/auth/authenticate/strategies/basic.strategy.d.ts +33 -0
  44. package/dist/components/auth/authenticate/strategies/basic.strategy.d.ts.map +1 -0
  45. package/dist/components/auth/authenticate/strategies/basic.strategy.js +59 -0
  46. package/dist/components/auth/authenticate/strategies/basic.strategy.js.map +1 -0
  47. package/dist/components/auth/authenticate/strategies/index.d.ts +1 -0
  48. package/dist/components/auth/authenticate/strategies/index.d.ts.map +1 -1
  49. package/dist/components/auth/authenticate/strategies/index.js +1 -0
  50. package/dist/components/auth/authenticate/strategies/index.js.map +1 -1
  51. package/dist/components/auth/authenticate/strategies/strategy-registry.d.ts +10 -5
  52. package/dist/components/auth/authenticate/strategies/strategy-registry.d.ts.map +1 -1
  53. package/dist/components/auth/authenticate/strategies/strategy-registry.js +83 -44
  54. package/dist/components/auth/authenticate/strategies/strategy-registry.js.map +1 -1
  55. package/dist/components/static-asset/controller/factory.d.ts +3 -2
  56. package/dist/components/static-asset/controller/factory.d.ts.map +1 -1
  57. package/dist/helpers/inversion/common/types.d.ts +2 -1
  58. package/dist/helpers/inversion/common/types.d.ts.map +1 -1
  59. package/dist/utilities/schema.utility.d.ts +2 -0
  60. package/dist/utilities/schema.utility.d.ts.map +1 -1
  61. package/package.json +3 -3
@@ -1,5 +1,6 @@
1
+ import { TAuthMode, TAuthStrategy } from '../../components/auth';
1
2
  import { Hook, OpenAPIHono, RouteConfig } from '@hono/zod-openapi';
2
- import { BaseHelper, TAuthStrategy, ValueOrPromise } from '@venizia/ignis-helpers';
3
+ import { BaseHelper, ValueOrPromise } from '@venizia/ignis-helpers';
3
4
  import { Env, Schema } from 'hono';
4
5
  import { IController, IControllerOptions, TAuthRouteConfig, TLazyRouteHandler, TRouteBindingOptions, TRouteDefinition } from './common/types';
5
6
  /**
@@ -17,6 +18,7 @@ import { IController, IControllerOptions, TAuthRouteConfig, TLazyRouteHandler, T
17
18
  * @typeParam RouteSchema - Combined schema type for all routes
18
19
  * @typeParam BasePath - Base path prefix for the router
19
20
  * @typeParam ConfigurableOptions - Options passed during configuration
21
+ * @typeParam Definitions - Route definitions map type for strongly-typed method overrides
20
22
  *
21
23
  * @example
22
24
  * ```typescript
@@ -33,11 +35,27 @@ import { IController, IControllerOptions, TAuthRouteConfig, TLazyRouteHandler, T
33
35
  * }
34
36
  * ```
35
37
  */
36
- export declare abstract class AbstractController<RouteEnv extends Env = Env, RouteSchema extends Schema = {}, BasePath extends string = '/', ConfigurableOptions extends object = {}> extends BaseHelper implements IController<RouteEnv, RouteSchema, BasePath, ConfigurableOptions> {
38
+ export declare abstract class AbstractController<RouteEnv extends Env = Env, RouteSchema extends Schema = {}, BasePath extends string = '/', ConfigurableOptions extends object = {}, Definitions extends Record<string, TAuthRouteConfig<RouteConfig>> = Record<string, TAuthRouteConfig<RouteConfig>>> extends BaseHelper implements IController<RouteEnv, RouteSchema, BasePath, ConfigurableOptions> {
37
39
  /** The OpenAPIHono router instance managing all routes for this controller */
38
40
  router: OpenAPIHono<RouteEnv, RouteSchema, BasePath>;
39
- /** Route definitions map, keyed by route identifier (e.g., 'FIND', 'CREATE') */
40
- definitions: Record<string, TAuthRouteConfig<RouteConfig>>;
41
+ /**
42
+ * Route definitions map, keyed by route identifier (e.g., 'FIND', 'CREATE').
43
+ * Use with {@link THandlerContext} to type overridden handler methods.
44
+ *
45
+ * @example
46
+ * ```typescript
47
+ * // Extract definitions type from the controller class
48
+ * type TRouteDefinitions = InstanceType<typeof _Controller>['definitions'];
49
+ *
50
+ * // Override a CRUD method with proper typing:
51
+ * override async create(_opts: { context: THandlerContext<TRouteDefinitions, 'CREATE'> }) {
52
+ * const { context } = _opts;
53
+ * const data = context.req.valid('json'); // Properly typed!
54
+ * return super.create(_opts);
55
+ * }
56
+ * ```
57
+ */
58
+ definitions: Definitions;
41
59
  /** The base path for all routes in this controller */
42
60
  path: string;
43
61
  /**
@@ -100,6 +118,7 @@ export declare abstract class AbstractController<RouteEnv extends Env = Env, Rou
100
118
  */
101
119
  getJSXRouteConfigs<RC extends RouteConfig & {
102
120
  authStrategies?: Array<TAuthStrategy>;
121
+ authMode?: TAuthMode;
103
122
  }>(opts: {
104
123
  configs: RC;
105
124
  }): RC & {
@@ -1 +1 @@
1
- {"version":3,"file":"abstract.d.ts","sourceRoot":"","sources":["../../../src/base/controllers/abstract.ts"],"names":[],"mappings":"AAGA,OAAO,EAAe,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAY,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAIxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,8BAAsB,kBAAkB,CACtC,QAAQ,SAAS,GAAG,GAAG,GAAG,EAC1B,WAAW,SAAS,MAAM,GAAG,EAAE,EAC/B,QAAQ,SAAS,MAAM,GAAG,GAAG,EAC7B,mBAAmB,SAAS,MAAM,GAAG,EAAE,CAEvC,SAAQ,UACR,YAAW,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,mBAAmB,CAAC;IAE5E,8EAA8E;IAC9E,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAErD,gFAAgF;IAChF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC;IAE3D,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;OAKG;gBACS,IAAI,EAAE,kBAAkB;IA4BpC;;;;OAIG;IACH,SAAS;IAIT;;;;;OAKG;IACH,0BAA0B,IAAI,IAAI;IAiBlC;;;;;;;;OAQG;IACG,SAAS,CACb,IAAI,CAAC,EAAE,mBAAmB,GACzB,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAgBxD;;;;;;;;;;;;OAYG;IACH,eAAe,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,EAAE,CAAA;KAAE;;;IAiC/E;;;;;;;;;OASG;IACH,kBAAkB,CAAC,EAAE,SAAS,WAAW,GAAG;QAAE,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;KAAE,EAAE,IAAI,EAAE;QAC3F,OAAO,EAAE,EAAE,CAAC;KACb;;;IA+BD;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC;IAExC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QACjE,OAAO,EAAE,EAAE,CAAC;KACb,GAAG,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;IAE7D;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QACnE,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;KACzD,GAAG,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;CAC1D"}
1
+ {"version":3,"file":"abstract.d.ts","sourceRoot":"","sources":["../../../src/base/controllers/abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG3E,OAAO,EAAe,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAY,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAIxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,8BAAsB,kBAAkB,CACtC,QAAQ,SAAS,GAAG,GAAG,GAAG,EAC1B,WAAW,SAAS,MAAM,GAAG,EAAE,EAC/B,QAAQ,SAAS,MAAM,GAAG,GAAG,EAC7B,mBAAmB,SAAS,MAAM,GAAG,EAAE,EACvC,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC,GAAG,MAAM,CACxE,MAAM,EACN,gBAAgB,CAAC,WAAW,CAAC,CAC9B,CAED,SAAQ,UACR,YAAW,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,mBAAmB,CAAC;IAE5E,8EAA8E;IAC9E,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAErD;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,EAAE,WAAW,CAAC;IAEzB,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;OAKG;gBACS,IAAI,EAAE,kBAAkB;IA4BpC;;;;OAIG;IACH,SAAS;IAIT;;;;;OAKG;IACH,0BAA0B,IAAI,IAAI;IAiBlC;;;;;;;;OAQG;IACG,SAAS,CACb,IAAI,CAAC,EAAE,mBAAmB,GACzB,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAgBxD;;;;;;;;;;;;OAYG;IACH,eAAe,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QAAE,OAAO,EAAE,EAAE,CAAA;KAAE;;;IAoC/E;;;;;;;;;OASG;IACH,kBAAkB,CAChB,EAAE,SAAS,WAAW,GAAG;QAAE,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;QAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;KAAE,EACxF,IAAI,EAAE;QAAE,OAAO,EAAE,EAAE,CAAA;KAAE;;;IAkCvB;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC;IAExC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QACjE,OAAO,EAAE,EAAE,CAAC;KACb,GAAG,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;IAE7D;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QACnE,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;KACzD,GAAG,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;CAC1D"}
@@ -22,6 +22,7 @@ const ignis_helpers_1 = require("@venizia/ignis-helpers");
22
22
  * @typeParam RouteSchema - Combined schema type for all routes
23
23
  * @typeParam BasePath - Base path prefix for the router
24
24
  * @typeParam ConfigurableOptions - Options passed during configuration
25
+ * @typeParam Definitions - Route definitions map type for strongly-typed method overrides
25
26
  *
26
27
  * @example
27
28
  * ```typescript
@@ -129,9 +130,11 @@ class AbstractController extends ignis_helpers_1.BaseHelper {
129
130
  */
130
131
  getRouteConfigs(opts) {
131
132
  const { configs } = opts;
132
- const { authStrategies = [], ...restConfig } = configs;
133
+ const { authStrategies = [], authMode = 'any', ...restConfig } = configs;
133
134
  const security = authStrategies.map(strategy => ({ [strategy]: [] }));
134
- const mws = authStrategies?.map(strategy => (0, auth_1.authenticate)({ strategy })) ?? [];
135
+ const mws = authStrategies.length > 0
136
+ ? [(0, auth_1.authenticate)({ strategies: authStrategies, mode: authMode })]
137
+ : [];
135
138
  if (restConfig.middleware) {
136
139
  const extraMws = Array.isArray(restConfig.middleware)
137
140
  ? restConfig.middleware
@@ -162,9 +165,11 @@ class AbstractController extends ignis_helpers_1.BaseHelper {
162
165
  */
163
166
  getJSXRouteConfigs(opts) {
164
167
  const { configs } = opts;
165
- const { authStrategies = [], ...restConfig } = configs;
168
+ const { authStrategies = [], authMode = 'any', ...restConfig } = configs;
166
169
  const security = authStrategies.map(strategy => ({ [strategy]: [] }));
167
- const mws = authStrategies?.map(strategy => (0, auth_1.authenticate)({ strategy })) ?? [];
170
+ const mws = authStrategies.length > 0
171
+ ? [(0, auth_1.authenticate)({ strategies: authStrategies, mode: authMode })]
172
+ : [];
168
173
  const extraMws = restConfig.middleware && Array.isArray(restConfig.middleware)
169
174
  ? restConfig.middleware
170
175
  : [restConfig.middleware];
@@ -1 +1 @@
1
- {"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../src/base/controllers/abstract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../src/base/controllers/abstract.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Hook, RouteConfig } from '@hono/zod-openapi';
2
- import { TAuthStrategy, ValueOrPromise } from '@venizia/ignis-helpers';
2
+ import { ValueOrPromise } from '@venizia/ignis-helpers';
3
+ import { TAuthStrategy } from '../../components/auth/authenticate/common';
3
4
  import { Env, Schema } from 'hono';
4
5
  import { AbstractController } from './abstract';
5
6
  import { TAuthRouteConfig, TLazyRouteHandler, TRouteBindingOptions, TRouteDefinition } from './common/types';
@@ -14,6 +15,7 @@ import { TAuthRouteConfig, TLazyRouteHandler, TRouteBindingOptions, TRouteDefini
14
15
  * @typeParam RouteSchema - Combined schema type for all routes
15
16
  * @typeParam BasePath - Base path prefix for the router
16
17
  * @typeParam ConfigurableOptions - Options passed during configuration
18
+ * @typeParam Definitions - Route definitions map type for strongly-typed method overrides
17
19
  *
18
20
  * @example
19
21
  * ```typescript
@@ -43,7 +45,7 @@ import { TAuthRouteConfig, TLazyRouteHandler, TRouteBindingOptions, TRouteDefini
43
45
  * }
44
46
  * ```
45
47
  */
46
- export declare abstract class BaseController<RouteEnv extends Env = Env, RouteSchema extends Schema = {}, BasePath extends string = '/', ConfigurableOptions extends object = {}> extends AbstractController<RouteEnv, RouteSchema, BasePath, ConfigurableOptions> {
48
+ export declare abstract class BaseController<RouteEnv extends Env = Env, RouteSchema extends Schema = {}, BasePath extends string = '/', ConfigurableOptions extends object = {}, Definitions extends Record<string, TAuthRouteConfig<RouteConfig>> = Record<string, TAuthRouteConfig<RouteConfig>>> extends AbstractController<RouteEnv, RouteSchema, BasePath, ConfigurableOptions, Definitions> {
47
49
  /**
48
50
  * Creates a fluent binding for registering a route.
49
51
  *
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/base/controllers/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,8BAAsB,cAAc,CAClC,QAAQ,SAAS,GAAG,GAAG,GAAG,EAC1B,WAAW,SAAS,MAAM,GAAG,EAAE,EAC/B,QAAQ,SAAS,MAAM,GAAG,GAAG,EAC7B,mBAAmB,SAAS,MAAM,GAAG,EAAE,CACvC,SAAQ,kBAAkB,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,mBAAmB,CAAC;IAChF;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QACxD,OAAO,EAAE,EAAE,CAAC;KACb,GAAG,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;IAc7D;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,WAAW,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QAC1D,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;KACzD,GAAG,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;IASzD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,cAAc,CAAC,EAAE,SAAS,WAAW,GAAG;QAAE,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;KAAE,EAAE,IAAI,EAAE;QACvF,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;KACzD,GAAG,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;CAQ1D"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/base/controllers/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,8BAAsB,cAAc,CAClC,QAAQ,SAAS,GAAG,GAAG,GAAG,EAC1B,WAAW,SAAS,MAAM,GAAG,EAAE,EAC/B,QAAQ,SAAS,MAAM,GAAG,GAAG,EAC7B,mBAAmB,SAAS,MAAM,GAAG,EAAE,EACvC,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC,GAAG,MAAM,CACxE,MAAM,EACN,gBAAgB,CAAC,WAAW,CAAC,CAC9B,CACD,SAAQ,kBAAkB,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,mBAAmB,EAAE,WAAW,CAAC;IAC7F;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QACxD,OAAO,EAAE,EAAE,CAAC;KACb,GAAG,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;IAc7D;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,WAAW,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QAC1D,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;KACzD,GAAG,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;IASzD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,cAAc,CAAC,EAAE,SAAS,WAAW,GAAG;QAAE,cAAc,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;KAAE,EAAE,IAAI,EAAE;QACvF,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;KACzD,GAAG,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;CAQ1D"}
@@ -13,6 +13,7 @@ const abstract_1 = require("./abstract");
13
13
  * @typeParam RouteSchema - Combined schema type for all routes
14
14
  * @typeParam BasePath - Base path prefix for the router
15
15
  * @typeParam ConfigurableOptions - Options passed during configuration
16
+ * @typeParam Definitions - Route definitions map type for strongly-typed method overrides
16
17
  *
17
18
  * @example
18
19
  * ```typescript
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/base/controllers/base.ts"],"names":[],"mappings":";;;AAGA,yCAAgD;AAQhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAsB,cAKpB,SAAQ,6BAAwE;IAChF;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAA2C,IAEnD;QACC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEzE,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;gBAClB,OAAO;oBACL,OAAO,EAAE,YAAY;oBACrB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC;iBAClD,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,WAAW,CAA2C,IAIrD;QACC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEzE,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;SAClE,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,cAAc,CAAqE,IAIlF;QACC,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAE5E,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;SAClE,CAAC;IACJ,CAAC;CACF;AApHD,wCAoHC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/base/controllers/base.ts"],"names":[],"mappings":";;;AAIA,yCAAgD;AAQhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAsB,cASpB,SAAQ,6BAAqF;IAC7F;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAA2C,IAEnD;QACC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEzE,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;gBAClB,OAAO;oBACL,OAAO,EAAE,YAAY;oBACrB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC;iBAClD,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,WAAW,CAA2C,IAIrD;QACC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEzE,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;SAClE,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,cAAc,CAAqE,IAIlF;QACC,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAE5E,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;SAClE,CAAC;IACJ,CAAC;CACF;AAxHD,wCAwHC"}
@@ -1,6 +1,8 @@
1
+ import { TAuthMode, TAuthStrategy } from '../../../components/auth/authenticate/common';
2
+ import { TAnyObjectSchema } from '../../../utilities/schema.utility';
1
3
  import type { RouteConfig, RouteHandler } from '@hono/zod-openapi';
2
- import { createRoute, Hook, OpenAPIHono } from '@hono/zod-openapi';
3
- import { IConfigurable, TAuthStrategy, ValueOrPromise } from '@venizia/ignis-helpers';
4
+ import { createRoute, Hook, OpenAPIHono, z } from '@hono/zod-openapi';
5
+ import { IConfigurable, ValueOrPromise } from '@venizia/ignis-helpers';
4
6
  import { Env, Schema } from 'hono';
5
7
  /**
6
8
  * Lazy-evaluated route handler type that preserves type inference from route config.
@@ -24,9 +26,7 @@ export type TLazyRouteHandler<RC extends RouteConfig, RouteEnv extends Env = Env
24
26
  * @typeParam BasePath - Base path prefix for the router
25
27
  */
26
28
  export type TRouteDefinition<RC extends RouteConfig, RouteEnv extends Env = Env, RouteSchema extends Schema = {}, BasePath extends string = '/'> = {
27
- /** The created route configuration */
28
29
  configs: ReturnType<typeof createRoute<string, RC>>;
29
- /** The OpenAPIHono router instance with the route registered */
30
30
  route: OpenAPIHono<RouteEnv, RouteSchema, BasePath>;
31
31
  };
32
32
  /**
@@ -43,9 +43,7 @@ export type TRouteDefinition<RC extends RouteConfig, RouteEnv extends Env = Env,
43
43
  * @typeParam BasePath - Base path prefix
44
44
  */
45
45
  export type TRouteBindingOptions<RC extends RouteConfig, RouteEnv extends Env = Env, RouteSchema extends Schema = {}, BasePath extends string = '/'> = {
46
- /** The route configuration */
47
46
  configs: RC;
48
- /** Binds the handler and returns the route definition */
49
47
  to: (opts: {
50
48
  handler: TLazyRouteHandler<RC, RouteEnv>;
51
49
  }) => TRouteDefinition<RC, RouteEnv, RouteSchema, BasePath>;
@@ -63,13 +61,15 @@ export type TRouteBindingOptions<RC extends RouteConfig, RouteEnv extends Env =
63
61
  * const config: TAuthRouteConfig<RouteConfig> = {
64
62
  * path: '/protected',
65
63
  * method: 'get',
66
- * authStrategies: ['jwt', 'api-key'],
64
+ * authStrategies: ['jwt', 'basic'],
65
+ * authMode: 'any', // 'any' = fallback (default), 'all' = all must pass
67
66
  * responses: { 200: { ... } }
68
67
  * };
69
68
  * ```
70
69
  */
71
70
  export type TAuthRouteConfig<RC extends RouteConfig> = RC & {
72
71
  authStrategies?: readonly TAuthStrategy[];
72
+ authMode?: TAuthMode;
73
73
  };
74
74
  /**
75
75
  * Extract the context type from a route config for use in decorated handler methods
@@ -118,6 +118,44 @@ export type TRouteContext<RC extends TAuthRouteConfig<RouteConfig>, RouteEnv ext
118
118
  * ```
119
119
  */
120
120
  export type TRouteResponse<RC extends TAuthRouteConfig<RouteConfig>, RouteEnv extends Env = Env> = ReturnType<TLazyRouteHandler<RC, RouteEnv>>;
121
+ /**
122
+ * Extracts the context type for a specific route from a definitions object.
123
+ * Use this to properly type overridden CRUD methods.
124
+ *
125
+ * @typeParam D - The definitions object type
126
+ * @typeParam K - The route key (e.g., 'CREATE', 'FIND')
127
+ * @typeParam RouteEnv - Hono environment type
128
+ *
129
+ * @example
130
+ * ```typescript
131
+ * const _Controller = ControllerFactory.defineCrudController({
132
+ * entity: () => MyEntity,
133
+ * repository: { name: 'MyRepository' },
134
+ * controller: { name: 'MyController', basePath: '/my-path' },
135
+ * });
136
+ *
137
+ * // Extract definitions type from the generated controller
138
+ * type TRouteDefinitions = InstanceType<typeof _Controller>['definitions'];
139
+ *
140
+ * class MyController extends _Controller {
141
+ * override async create(opts: { context: THandlerContext<TRouteDefinitions, 'CREATE'> }) {
142
+ * const { context } = opts;
143
+ * const data = context.req.valid('json'); // Properly typed!
144
+ * // Custom logic here...
145
+ * return super.create(opts);
146
+ * }
147
+ * }
148
+ * ```
149
+ */
150
+ export type THandlerContext<RouteDefinition extends Record<string, TAuthRouteConfig<RouteConfig>>, Key extends keyof RouteDefinition, RouteEnv extends Env = Env> = TRouteContext<RouteDefinition[Key], RouteEnv>;
151
+ /**
152
+ * Extracts the return type for a specific route from a definitions object.
153
+ *
154
+ * @typeParam D - The definitions object type
155
+ * @typeParam K - The route key
156
+ * @typeParam RouteEnv - Hono environment type
157
+ */
158
+ export type THandlerResponse<RouteDefinition extends Record<string, TAuthRouteConfig<RouteConfig>>, Key extends keyof RouteDefinition, RouteEnv extends Env = Env> = TRouteResponse<RouteDefinition[Key], RouteEnv>;
121
159
  /**
122
160
  * Base controller interface defining the contract for all controllers.
123
161
  *
@@ -199,4 +237,221 @@ export interface IControllerOptions {
199
237
  */
200
238
  isStrict?: boolean;
201
239
  }
240
+ /**
241
+ * Per-route authentication configuration.
242
+ *
243
+ * Priority (endpoint config takes precedence over controller):
244
+ * 1. If endpoint has `skipAuth: true` -> no auth
245
+ * 2. If endpoint has `authStrategies` -> use these (overrides controller)
246
+ * 3. Otherwise -> use controller-level authStrategies
247
+ */
248
+ export type TRouteAuthConfig = {
249
+ skipAuth: true;
250
+ authStrategies?: never;
251
+ } | {
252
+ skipAuth?: false;
253
+ authStrategies?: Array<TAuthStrategy>;
254
+ };
255
+ /** OpenAPI response header object */
256
+ export type TResponseHeaderObject = {
257
+ description?: string;
258
+ schema: {
259
+ type: 'string';
260
+ examples?: string[];
261
+ };
262
+ };
263
+ /** OpenAPI response headers format */
264
+ export type TResponseHeaders = Record<string, TResponseHeaderObject>;
265
+ /** Request configuration for COUNT route */
266
+ export type TCountRequestConfig = {
267
+ query?: TAnyObjectSchema;
268
+ headers?: TAnyObjectSchema;
269
+ };
270
+ /** Response configuration for COUNT route */
271
+ export type TCountResponseConfig = {
272
+ schema?: z.ZodTypeAny;
273
+ headers?: TResponseHeaders;
274
+ };
275
+ /** Full configuration for COUNT route */
276
+ export type TCountRouteConfig = TRouteAuthConfig & {
277
+ request?: TCountRequestConfig;
278
+ response?: TCountResponseConfig;
279
+ };
280
+ /** Request configuration for FIND route */
281
+ export type TFindRequestConfig = {
282
+ query?: TAnyObjectSchema;
283
+ headers?: TAnyObjectSchema;
284
+ };
285
+ /** Response configuration for FIND route */
286
+ export type TFindResponseConfig = {
287
+ schema?: z.ZodTypeAny;
288
+ headers?: TResponseHeaders;
289
+ };
290
+ /** Full configuration for FIND route */
291
+ export type TFindRouteConfig = TRouteAuthConfig & {
292
+ request?: TFindRequestConfig;
293
+ response?: TFindResponseConfig;
294
+ };
295
+ /** Request configuration for FIND_BY_ID route */
296
+ export type TFindByIdRequestConfig = {
297
+ /** Note: params cannot be customized - id param is required */
298
+ query?: TAnyObjectSchema;
299
+ headers?: TAnyObjectSchema;
300
+ };
301
+ /** Response configuration for FIND_BY_ID route */
302
+ export type TFindByIdResponseConfig = {
303
+ schema?: z.ZodTypeAny;
304
+ headers?: TResponseHeaders;
305
+ };
306
+ /** Full configuration for FIND_BY_ID route */
307
+ export type TFindByIdRouteConfig = TRouteAuthConfig & {
308
+ request?: TFindByIdRequestConfig;
309
+ response?: TFindByIdResponseConfig;
310
+ };
311
+ /** Request configuration for FIND_ONE route */
312
+ export type TFindOneRequestConfig = {
313
+ query?: TAnyObjectSchema;
314
+ headers?: TAnyObjectSchema;
315
+ };
316
+ /** Response configuration for FIND_ONE route */
317
+ export type TFindOneResponseConfig = {
318
+ schema?: z.ZodTypeAny;
319
+ headers?: TResponseHeaders;
320
+ };
321
+ /** Full configuration for FIND_ONE route */
322
+ export type TFindOneRouteConfig = TRouteAuthConfig & {
323
+ request?: TFindOneRequestConfig;
324
+ response?: TFindOneResponseConfig;
325
+ };
326
+ /** Request configuration for CREATE route */
327
+ export type TCreateRequestConfig = {
328
+ body?: TAnyObjectSchema;
329
+ headers?: TAnyObjectSchema;
330
+ };
331
+ /** Response configuration for CREATE route */
332
+ export type TCreateResponseConfig = {
333
+ schema?: z.ZodTypeAny;
334
+ headers?: TResponseHeaders;
335
+ };
336
+ /** Full configuration for CREATE route */
337
+ export type TCreateRouteConfig = TRouteAuthConfig & {
338
+ request?: TCreateRequestConfig;
339
+ response?: TCreateResponseConfig;
340
+ };
341
+ /** Request configuration for UPDATE_BY_ID route */
342
+ export type TUpdateByIdRequestConfig = {
343
+ /** Note: params cannot be customized - id param is required */
344
+ body?: TAnyObjectSchema;
345
+ headers?: TAnyObjectSchema;
346
+ };
347
+ /** Response configuration for UPDATE_BY_ID route */
348
+ export type TUpdateByIdResponseConfig = {
349
+ schema?: z.ZodTypeAny;
350
+ headers?: TResponseHeaders;
351
+ };
352
+ /** Full configuration for UPDATE_BY_ID route */
353
+ export type TUpdateByIdRouteConfig = TRouteAuthConfig & {
354
+ request?: TUpdateByIdRequestConfig;
355
+ response?: TUpdateByIdResponseConfig;
356
+ };
357
+ /** Request configuration for UPDATE_BY route */
358
+ export type TUpdateByRequestConfig = {
359
+ query?: TAnyObjectSchema;
360
+ body?: TAnyObjectSchema;
361
+ headers?: TAnyObjectSchema;
362
+ };
363
+ /** Response configuration for UPDATE_BY route */
364
+ export type TUpdateByResponseConfig = {
365
+ schema?: z.ZodTypeAny;
366
+ headers?: TResponseHeaders;
367
+ };
368
+ /** Full configuration for UPDATE_BY route */
369
+ export type TUpdateByRouteConfig = TRouteAuthConfig & {
370
+ request?: TUpdateByRequestConfig;
371
+ response?: TUpdateByResponseConfig;
372
+ };
373
+ /** Request configuration for DELETE_BY_ID route */
374
+ export type TDeleteByIdRequestConfig = {
375
+ /** Note: params cannot be customized - id param is required */
376
+ headers?: TAnyObjectSchema;
377
+ };
378
+ /** Response configuration for DELETE_BY_ID route */
379
+ export type TDeleteByIdResponseConfig = {
380
+ schema?: z.ZodTypeAny;
381
+ headers?: TResponseHeaders;
382
+ };
383
+ /** Full configuration for DELETE_BY_ID route */
384
+ export type TDeleteByIdRouteConfig = TRouteAuthConfig & {
385
+ request?: TDeleteByIdRequestConfig;
386
+ response?: TDeleteByIdResponseConfig;
387
+ };
388
+ /** Request configuration for DELETE_BY route */
389
+ export type TDeleteByRequestConfig = {
390
+ query?: TAnyObjectSchema;
391
+ headers?: TAnyObjectSchema;
392
+ };
393
+ /** Response configuration for DELETE_BY route */
394
+ export type TDeleteByResponseConfig = {
395
+ schema?: z.ZodTypeAny;
396
+ headers?: TResponseHeaders;
397
+ };
398
+ /** Full configuration for DELETE_BY route */
399
+ export type TDeleteByRouteConfig = TRouteAuthConfig & {
400
+ request?: TDeleteByRequestConfig;
401
+ response?: TDeleteByResponseConfig;
402
+ };
403
+ /**
404
+ * Per-route configuration for CRUD controller endpoints.
405
+ *
406
+ * Each route supports full customization of:
407
+ * - Authentication (skipAuth, authStrategies)
408
+ * - Request (query, params, body, headers)
409
+ * - Response (schema, headers)
410
+ *
411
+ * @example
412
+ * ```typescript
413
+ * const routes: TRoutesConfig = {
414
+ * count: {
415
+ * skipAuth: true,
416
+ * request: {
417
+ * query: z.object({ where: CustomWhereSchema }),
418
+ * headers: z.object({ 'x-tenant-id': z.string() }),
419
+ * },
420
+ * response: {
421
+ * schema: z.object({ total: z.number() }),
422
+ * },
423
+ * },
424
+ * find: {
425
+ * request: {
426
+ * query: z.object({ filter: FilterSchema, search: z.string().optional() }),
427
+ * },
428
+ * response: {
429
+ * schema: CustomFindResponseSchema,
430
+ * },
431
+ * },
432
+ * create: {
433
+ * authStrategies: ['jwt'],
434
+ * request: {
435
+ * body: CreateUserSchema,
436
+ * headers: z.object({ 'x-idempotency-key': z.string().uuid() }),
437
+ * },
438
+ * response: {
439
+ * schema: UserResponseSchema,
440
+ * headers: { 'x-resource-id': { description: 'Created ID', schema: { type: 'string' } } },
441
+ * },
442
+ * },
443
+ * };
444
+ * ```
445
+ */
446
+ export type TRoutesConfig = {
447
+ count?: TCountRouteConfig;
448
+ find?: TFindRouteConfig;
449
+ findById?: TFindByIdRouteConfig;
450
+ findOne?: TFindOneRouteConfig;
451
+ create?: TCreateRouteConfig;
452
+ updateById?: TUpdateByIdRouteConfig;
453
+ updateBy?: TUpdateByRouteConfig;
454
+ deleteById?: TDeleteByIdRouteConfig;
455
+ deleteBy?: TDeleteByRouteConfig;
456
+ };
202
457
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/base/controllers/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,CAAC,EAAE,SAAS,WAAW,EAAE,QAAQ,SAAS,GAAG,GAAG,GAAG,IAAI,EAAE,SAAS,EAAE,GAC7F,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,GAC1B,KAAK,CAAC;AAEV;;;;;;;;;;GAUG;AACH,MAAM,MAAM,gBAAgB,CAC1B,EAAE,SAAS,WAAW,EACtB,QAAQ,SAAS,GAAG,GAAG,GAAG,EAC1B,WAAW,SAAS,MAAM,GAAG,EAAE,EAC/B,QAAQ,SAAS,MAAM,GAAG,GAAG,IAC3B;IACF,sCAAsC;IACtC,OAAO,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;IACpD,gEAAgE;IAChE,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;CACrD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,oBAAoB,CAC9B,EAAE,SAAS,WAAW,EACtB,QAAQ,SAAS,GAAG,GAAG,GAAG,EAC1B,WAAW,SAAS,MAAM,GAAG,EAAE,EAC/B,QAAQ,SAAS,MAAM,GAAG,GAAG,IAC3B;IACF,8BAA8B;IAC9B,OAAO,EAAE,EAAE,CAAC;IACZ,yDAAyD;IACzD,EAAE,EAAE,CAAC,IAAI,EAAE;QACT,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;KAC1C,KAAK,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;CAC7D,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,gBAAgB,CAAC,EAAE,SAAS,WAAW,IAAI,EAAE,GAAG;IAC1D,cAAc,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;CAC3C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,aAAa,CACvB,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EACxC,QAAQ,SAAS,GAAG,GAAG,GAAG,IACxB,UAAU,CAAC,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,cAAc,CACxB,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EACxC,QAAQ,SAAS,GAAG,GAAG,GAAG,IACxB,UAAU,CAAC,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;AAMhD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,WAAW,CAC1B,QAAQ,SAAS,GAAG,GAAG,GAAG,EAC1B,WAAW,SAAS,MAAM,GAAG,EAAE,EAC/B,QAAQ,SAAS,MAAM,GAAG,GAAG,EAC7B,mBAAmB,SAAS,MAAM,GAAG,EAAE,CACvC,SAAQ,aAAa,CAAC,mBAAmB,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACxF,0DAA0D;IAC1D,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAErD;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QACxD,OAAO,EAAE,EAAE,CAAC;KACb,GAAG,oBAAoB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAE9D;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,SAAS,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE;QAC1D,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,EAAE,iBAAiB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;KACzD,GAAG,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;CAC3D;AAID;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/base/controllers/common/types.ts"],"names":[],"mappings":"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"}