@orion-js/components 4.0.0-alpha.3 → 4.0.0-next.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.cjs CHANGED
@@ -52,7 +52,7 @@ module.exports = __toCommonJS(exports_src);
52
52
  function component(controllers) {
53
53
  return { controllers };
54
54
  }
55
- // ../echoes/dist/index.js
55
+ // node_modules/@orion-js/echoes/dist/index.js
56
56
  var import_node_module = require("node:module");
57
57
  var import_node_module2 = require("node:module");
58
58
  var import_node_fs = __toESM(require("node:fs"));
@@ -73181,7 +73181,7 @@ function getServiceEchoes(target) {
73181
73181
  return target.prototype.echoes || {};
73182
73182
  }
73183
73183
 
73184
- // ../graphql/dist/index.js
73184
+ // node_modules/@orion-js/graphql/dist/index.js
73185
73185
  var import_node_module7 = require("node:module");
73186
73186
  var import_os = __toESM(require("os"));
73187
73187
  var import_zlib = require("zlib");
@@ -179986,7 +179986,7 @@ function getServiceSubscriptions(target) {
179986
179986
  return target.prototype.subscriptions || {};
179987
179987
  }
179988
179988
 
179989
- // ../http/dist/index.js
179989
+ // node_modules/@orion-js/http/dist/index.js
179990
179990
  var import_node_module13 = require("node:module");
179991
179991
  var import_crypto5 = __toESM(require("crypto"));
179992
179992
  var import_node_module14 = require("node:module");
@@ -217655,6 +217655,7 @@ function registerRoutes3(routesMap) {
217655
217655
  }
217656
217656
  }
217657
217657
  var import_body_parser3 = __toESM10(require_body_parser3(), 1);
217658
+ var import_express32 = __toESM10(require_express23(), 1);
217658
217659
  var __create43 = Object.create;
217659
217660
  var __getProtoOf43 = Object.getPrototypeOf;
217660
217661
  var __defProp43 = Object.defineProperty;
@@ -218949,8 +218950,10 @@ function getServiceRoutes3(target) {
218949
218950
  }
218950
218951
  var bodyParser23 = { json: import_body_parser3.json, raw: import_body_parser3.raw, text: import_body_parser3.text, urlencoded: import_body_parser3.urlencoded };
218951
218952
  var export_express3 = import_express23.default;
218953
+ var export_Response = import_express32.Response;
218954
+ var export_Request = import_express32.Request;
218952
218955
 
218953
- // ../dogs/dist/index.js
218956
+ // node_modules/@orion-js/dogs/dist/index.js
218954
218957
  var import_node_module16 = require("node:module");
218955
218958
  var import_node_util = __toESM(require("node:util"));
218956
218959
  var import_node_module17 = require("node:module");
@@ -332783,7 +332786,7 @@ var eventsService = getInstance6(EventsService);
332783
332786
  var jobsHistoryRepo = getInstance6(JobsHistoryRepo);
332784
332787
  var jobsRepo = getInstance6(JobsRepo);
332785
332788
 
332786
- // ../helpers/dist/index.js
332789
+ // node_modules/@orion-js/helpers/dist/index.js
332787
332790
  var import_node_module23 = require("node:module");
332788
332791
  var import_crypto9 = __toESM(require("crypto"));
332789
332792
  var __create13 = Object.create;
package/dist/index.d.ts CHANGED
@@ -1,7 +1,10 @@
1
1
  // Generated by dts-bundle-generator v9.5.1
2
2
 
3
- import express from 'express';
4
- import { EachMessagePayload } from 'kafkajs';
3
+ import { JobsDefinition } from '@orion-js/dogs';
4
+ import { EchoesMap } from '@orion-js/echoes';
5
+ import { ModelsResolversMap, OrionSubscriptionsMap } from '@orion-js/graphql';
6
+ import { RoutesMap } from '@orion-js/http';
7
+ import { GlobalResolversMap } from '@orion-js/models';
5
8
 
6
9
  export type EchoesController = {
7
10
  new (...args: any[]): any;
@@ -33,317 +36,6 @@ export interface Component {
33
36
  controllers: ComponentControllers;
34
37
  }
35
38
  export declare function component(controllers: ComponentControllers): Component;
36
- export interface EchoConfig {
37
- type: "event" | "request";
38
- resolve(params: any, context?: any): Promise<any>;
39
- attemptsBeforeDeadLetter?: number;
40
- }
41
- export interface EchoType extends EchoConfig {
42
- onMessage(messageData: EachMessagePayload): Promise<void>;
43
- onRequest(serializedParams: string): any;
44
- }
45
- export interface EchoesMap {
46
- [key: string]: EchoType;
47
- }
48
- export interface OrionSubscription<TParams = any, ReturnType = any> {
49
- name: string;
50
- params: object;
51
- subscribe: (callParams: object, viewer: object) => {};
52
- returns: ReturnType;
53
- publish: (params: TParams, data: ReturnType) => Promise<void>;
54
- }
55
- export interface OrionSubscriptionsMap {
56
- [key: string]: OrionSubscription;
57
- }
58
- export interface StoredCacheData$1 {
59
- value: any;
60
- expires?: Date;
61
- }
62
- export interface SetCacheOptions$1 {
63
- ttl?: number;
64
- }
65
- export interface GetCacheOptions$1 {
66
- ttl?: number;
67
- fallback?(): Promise<any>;
68
- }
69
- export interface OrionCache$1 {
70
- /**
71
- * Save data in the cache
72
- */
73
- set(key: string, value: any, options?: SetCacheOptions$1): Promise<void> | void;
74
- /**
75
- * Get data from the cache
76
- */
77
- get(key: string, options?: GetCacheOptions$1): Promise<StoredCacheData$1>;
78
- /**
79
- * Removes data from the cache
80
- */
81
- invalidate(key: string): Promise<void> | void;
82
- }
83
- export type Blackbox$1 = {
84
- [name: string]: any;
85
- };
86
- export type ModelResolverResolve$1 = (item: any, params: any, viewer: any, info?: any) => Promise<any>;
87
- export type GlobalCheckPermissions$1 = (params: any, viewer: any, info?: any) => Promise<string | void>;
88
- export type ModelCheckPermissions$1 = (parent: any, params: any, viewer: any, info?: any) => Promise<string | void>;
89
- export type GlobalGetCacheKey$1 = (params: any, viewer: any, info: any) => Promise<any>;
90
- export type ModelGetCacheKey$1 = (parent: any, params: any, viewer: any, info: any) => Promise<any>;
91
- export interface ExecuteOptions$1 {
92
- params: Blackbox$1;
93
- viewer: any;
94
- parent?: any;
95
- info?: any;
96
- options: ResolverOptions$1;
97
- }
98
- export type Parameters$1$1<T> = T extends (...args: infer P) => any ? P : never;
99
- export type ReturnType$1$1<T> = T extends (...args: any) => infer R ? R : any;
100
- export type ResolverParams$1<Resolve, IsModel> = IsModel extends undefined ? Parameters$1$1<Resolve>[0] : Parameters$1$1<Resolve>[1];
101
- export interface ExecuteParams$1<Resolve = Function, IsModel = undefined> {
102
- params?: ResolverParams$1<Resolve, IsModel>;
103
- viewer?: any;
104
- parent?: IsModel extends undefined ? undefined : Parameters$1$1<Resolve>[0];
105
- info?: any;
106
- }
107
- export type Execute$1<Resolve = Function, IsModel = undefined> = (executeOptions: ExecuteParams$1<Resolve, IsModel>) => ReturnType$1$1<Resolve>;
108
- export interface SharedResolverOptions$1 {
109
- resolverId?: string;
110
- params?: any;
111
- returns?: any;
112
- mutation?: boolean;
113
- private?: boolean;
114
- checkPermission?: GlobalCheckPermissions$1 | ModelCheckPermissions$1;
115
- getCacheKey?: GlobalGetCacheKey$1 | ModelGetCacheKey$1;
116
- cache?: number;
117
- cacheProvider?: OrionCache$1;
118
- permissionsOptions?: any;
119
- middlewares?: ResolverMiddleware$1[];
120
- }
121
- export interface ResolverOptions$1<Resolve = Function> extends SharedResolverOptions$1 {
122
- resolve: Resolve;
123
- }
124
- export type OmitFirstArg$1<F> = F extends (x: any, ...args: infer P) => infer R ? (...args: P) => R : never;
125
- export interface Resolver$1<Resolve = Function, IsModel = undefined> extends SharedResolverOptions$1 {
126
- execute: Execute$1<Resolve, IsModel>;
127
- resolve: Resolve;
128
- modelResolve: IsModel extends undefined ? undefined : OmitFirstArg$1<Resolve>;
129
- }
130
- export type ModelResolver$1<Resolve = Function> = Resolver$1<Resolve, true>;
131
- export type ResolverMiddleware$1 = (executeOptions: ExecuteOptions$1, next: () => Promise<any>) => Promise<any>;
132
- export interface ModelResolversMap {
133
- [key: string]: ModelResolver$1<ModelResolverResolve$1>;
134
- }
135
- export interface ModelsResolversMap {
136
- [key: string]: ModelResolversMap;
137
- }
138
- export interface RouteResponseObject {
139
- statusCode?: number;
140
- headers?: {
141
- [key: string]: string;
142
- };
143
- body: string | object;
144
- }
145
- export type RouteResponse = Promise<RouteResponseObject | void>;
146
- export type RouteResolve = (req: express.Request, res: express.Response, viewer: any) => RouteResponse;
147
- export interface OrionRouteOptions {
148
- /**
149
- * The http method of the requests to match.
150
- */
151
- method: "get" | "post" | "put" | "delete" | "all";
152
- /**
153
- * The path of the requests to match.
154
- */
155
- path: string;
156
- /**
157
- * Select the body parser to use for this route.
158
- */
159
- bodyParser?: "json" | "text" | "urlencoded";
160
- /**
161
- * Selected body parser options.
162
- */
163
- bodyParserOptions?: bodyParser.OptionsJson | bodyParser.OptionsText | bodyParser.OptionsUrlencoded;
164
- /**
165
- * Add a middleware to the route.
166
- * See https://expressjs.com/en/4x/api.html#middleware
167
- * for more information.
168
- */
169
- middlewares?: Array<express.RequestHandler>;
170
- resolve: RouteResolve;
171
- /**
172
- * Pass another express app
173
- */
174
- app?: express.Application;
175
- }
176
- export interface RouteType extends OrionRouteOptions {
177
- }
178
- export interface RoutesMap {
179
- [key: string]: RouteType;
180
- }
181
- export type Blackbox = {
182
- [name: string]: any;
183
- };
184
- export type LogFunction = (message: string, metadata?: any) => void;
185
- export interface OrionLogger {
186
- debug: LogFunction;
187
- info: LogFunction;
188
- warn: LogFunction;
189
- error: LogFunction;
190
- addContext: (module: NodeJS.Module) => OrionLogger;
191
- addMetadata: (metadata: any) => OrionLogger;
192
- }
193
- export interface JobToRun {
194
- jobId: string;
195
- executionId: string;
196
- name: string;
197
- type: "event" | "recurrent";
198
- params: Blackbox;
199
- tries: number;
200
- lockTime: number;
201
- priority: number;
202
- uniqueIdentifier?: string;
203
- }
204
- export interface ExecutionContext {
205
- record: JobToRun;
206
- definition: JobDefinition;
207
- tries: number;
208
- logger: OrionLogger;
209
- extendLockTime: (extraTime: number) => Promise<void>;
210
- clearStaleTimeout: () => void;
211
- }
212
- export interface JobRetryResultBase {
213
- action: "retry" | "dismiss";
214
- }
215
- export type JobRetryResultRunIn = JobRetryResultBase & {
216
- runIn: number;
217
- };
218
- export type JobRetryResultRunAt = JobRetryResultBase & {
219
- runAt: Date;
220
- };
221
- export type JobRetryResult = JobRetryResultRunIn | JobRetryResultRunAt | JobRetryResultBase;
222
- export interface BaseJobDefinition {
223
- /**
224
- * The function to execute when the job is executed.
225
- */
226
- resolve: (params: Blackbox, context: ExecutionContext) => Promise<Blackbox | void>;
227
- /**
228
- * Called if the job fails.
229
- */
230
- onError?: (error: Error, params: Blackbox, context: ExecutionContext) => Promise<JobRetryResult>;
231
- /**
232
- * Called if the job locktime is expired. The job will be executed again.
233
- */
234
- onStale?: (params: Blackbox, context: ExecutionContext) => Promise<void>;
235
- /**
236
- * Save the executions of the job time in milliseconds. Default is 1 week. Set to 0 to disable.
237
- */
238
- saveExecutionsFor?: number;
239
- }
240
- export interface RecurrentJobDefinition extends BaseJobDefinition {
241
- /**
242
- * Type of the job.
243
- */
244
- type: "recurrent";
245
- /**
246
- * A function executed after each execution that returns the date of the next run.
247
- */
248
- getNextRun?: () => Date;
249
- /**
250
- * Run every x milliseconds. This will be ignored if getNextRun is defined.
251
- */
252
- runEvery?: number;
253
- /**
254
- * The priority of the job. Higher is more priority. Default is 100.
255
- */
256
- priority?: number;
257
- }
258
- export interface EventJobDefinition extends BaseJobDefinition {
259
- /**
260
- * Type of the job.
261
- */
262
- type: "event";
263
- }
264
- export type JobDefinition = RecurrentJobDefinition | EventJobDefinition;
265
- export interface JobsDefinition {
266
- [jobName: string]: JobDefinition;
267
- }
268
- // Generated by dts-bundle-generator v9.5.1
269
- // Generated by dts-bundle-generator v9.5.1
270
- // Generated by dts-bundle-generator v9.5.1
271
- export interface StoredCacheData {
272
- value: any;
273
- expires?: Date;
274
- }
275
- export interface SetCacheOptions {
276
- ttl?: number;
277
- }
278
- export interface GetCacheOptions {
279
- ttl?: number;
280
- fallback?(): Promise<any>;
281
- }
282
- export interface OrionCache {
283
- /**
284
- * Save data in the cache
285
- */
286
- set(key: string, value: any, options?: SetCacheOptions): Promise<void> | void;
287
- /**
288
- * Get data from the cache
289
- */
290
- get(key: string, options?: GetCacheOptions): Promise<StoredCacheData>;
291
- /**
292
- * Removes data from the cache
293
- */
294
- invalidate(key: string): Promise<void> | void;
295
- }
296
- type Blackbox$1 = {
297
- [name: string]: any;
298
- };
299
- export type GlobalResolverResolve = (params: any, viewer: any, info?: any) => Promise<any>;
300
- export type GlobalCheckPermissions = (params: any, viewer: any, info?: any) => Promise<string | void>;
301
- export type ModelCheckPermissions = (parent: any, params: any, viewer: any, info?: any) => Promise<string | void>;
302
- export type GlobalGetCacheKey = (params: any, viewer: any, info: any) => Promise<any>;
303
- export type ModelGetCacheKey = (parent: any, params: any, viewer: any, info: any) => Promise<any>;
304
- export interface ExecuteOptions {
305
- params: Blackbox$1;
306
- viewer: any;
307
- parent?: any;
308
- info?: any;
309
- options: ResolverOptions;
310
- }
311
- export type Parameters$1<T> = T extends (...args: infer P) => any ? P : never;
312
- export type ReturnType$1<T> = T extends (...args: any) => infer R ? R : any;
313
- export type ResolverParams<Resolve, IsModel> = IsModel extends undefined ? Parameters$1<Resolve>[0] : Parameters$1<Resolve>[1];
314
- export interface ExecuteParams<Resolve = Function, IsModel = undefined> {
315
- params?: ResolverParams<Resolve, IsModel>;
316
- viewer?: any;
317
- parent?: IsModel extends undefined ? undefined : Parameters$1<Resolve>[0];
318
- info?: any;
319
- }
320
- export type Execute<Resolve = Function, IsModel = undefined> = (executeOptions: ExecuteParams<Resolve, IsModel>) => ReturnType$1<Resolve>;
321
- export interface SharedResolverOptions {
322
- resolverId?: string;
323
- params?: any;
324
- returns?: any;
325
- mutation?: boolean;
326
- private?: boolean;
327
- checkPermission?: GlobalCheckPermissions | ModelCheckPermissions;
328
- getCacheKey?: GlobalGetCacheKey | ModelGetCacheKey;
329
- cache?: number;
330
- cacheProvider?: OrionCache;
331
- permissionsOptions?: any;
332
- middlewares?: ResolverMiddleware[];
333
- }
334
- export interface ResolverOptions<Resolve = Function> extends SharedResolverOptions {
335
- resolve: Resolve;
336
- }
337
- export type OmitFirstArg<F> = F extends (x: any, ...args: infer P) => infer R ? (...args: P) => R : never;
338
- export interface Resolver<Resolve = Function, IsModel = undefined> extends SharedResolverOptions {
339
- execute: Execute<Resolve, IsModel>;
340
- resolve: Resolve;
341
- modelResolve: IsModel extends undefined ? undefined : OmitFirstArg<Resolve>;
342
- }
343
- export type ResolverMiddleware = (executeOptions: ExecuteOptions, next: () => Promise<any>) => Promise<any>;
344
- export interface GlobalResolversMap {
345
- [key: string]: Resolver<GlobalResolverResolve>;
346
- }
347
39
  export interface MergedComponentControllers {
348
40
  echoes: EchoesMap;
349
41
  resolvers: GlobalResolversMap;
package/dist/index.js CHANGED
@@ -21,7 +21,7 @@ var __require = /* @__PURE__ */ createRequire(import.meta.url);
21
21
  function component(controllers) {
22
22
  return { controllers };
23
23
  }
24
- // ../echoes/dist/index.js
24
+ // node_modules/@orion-js/echoes/dist/index.js
25
25
  import { createRequire as createRequire2 } from "node:module";
26
26
  import { createRequire as createRequire22 } from "node:module";
27
27
  import fs from "node:fs";
@@ -73150,7 +73150,7 @@ function getServiceEchoes(target) {
73150
73150
  return target.prototype.echoes || {};
73151
73151
  }
73152
73152
 
73153
- // ../graphql/dist/index.js
73153
+ // node_modules/@orion-js/graphql/dist/index.js
73154
73154
  import { createRequire as createRequire5 } from "node:module";
73155
73155
  import os from "os";
73156
73156
  import { gzip } from "zlib";
@@ -179955,7 +179955,7 @@ function getServiceSubscriptions(target) {
179955
179955
  return target.prototype.subscriptions || {};
179956
179956
  }
179957
179957
 
179958
- // ../http/dist/index.js
179958
+ // node_modules/@orion-js/http/dist/index.js
179959
179959
  import { createRequire as createRequire7 } from "node:module";
179960
179960
  import crypto23 from "crypto";
179961
179961
  import { createRequire as createRequire24 } from "node:module";
@@ -217624,6 +217624,7 @@ function registerRoutes3(routesMap) {
217624
217624
  }
217625
217625
  }
217626
217626
  var import_body_parser3 = __toESM10(require_body_parser3(), 1);
217627
+ var import_express32 = __toESM10(require_express23(), 1);
217627
217628
  var __create43 = Object.create;
217628
217629
  var __getProtoOf43 = Object.getPrototypeOf;
217629
217630
  var __defProp43 = Object.defineProperty;
@@ -218918,8 +218919,10 @@ function getServiceRoutes3(target) {
218918
218919
  }
218919
218920
  var bodyParser23 = { json: import_body_parser3.json, raw: import_body_parser3.raw, text: import_body_parser3.text, urlencoded: import_body_parser3.urlencoded };
218920
218921
  var export_express3 = import_express23.default;
218922
+ var export_Response = import_express32.Response;
218923
+ var export_Request = import_express32.Request;
218921
218924
 
218922
- // ../dogs/dist/index.js
218925
+ // node_modules/@orion-js/dogs/dist/index.js
218923
218926
  import { createRequire as createRequire25 } from "node:module";
218924
218927
  import util from "node:util";
218925
218928
  import { createRequire as createRequire36 } from "node:module";
@@ -332752,7 +332755,7 @@ var eventsService = getInstance6(EventsService);
332752
332755
  var jobsHistoryRepo = getInstance6(JobsHistoryRepo);
332753
332756
  var jobsRepo = getInstance6(JobsRepo);
332754
332757
 
332755
- // ../helpers/dist/index.js
332758
+ // node_modules/@orion-js/helpers/dist/index.js
332756
332759
  import { createRequire as createRequire8 } from "node:module";
332757
332760
  import crypto4 from "crypto";
332758
332761
  var __create13 = Object.create;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orion-js/components",
3
- "version": "4.0.0-alpha.3",
3
+ "version": "4.0.0-next.0",
4
4
  "main": "./dist/index.cjs",
5
5
  "author": "nicolaslopezj",
6
6
  "license": "MIT",
@@ -14,22 +14,22 @@
14
14
  "dev": "bun --watch src/index.ts"
15
15
  },
16
16
  "peerDependencies": {
17
- "@orion-js/dogs": "^3.2.33",
18
- "@orion-js/echoes": "^3.2.33",
19
- "@orion-js/graphql": "^3.2.33",
20
- "@orion-js/helpers": "^3.2.21",
21
- "@orion-js/http": "^3.2.33",
22
- "@orion-js/models": "^3.2.33",
23
- "@orion-js/services": "^3.2.21"
17
+ "@orion-js/dogs": "^4.0.0-next.0",
18
+ "@orion-js/echoes": "^4.0.0-next.0",
19
+ "@orion-js/graphql": "^4.0.0-next.0",
20
+ "@orion-js/helpers": "^4.0.0-next.0",
21
+ "@orion-js/http": "^4.0.0-next.0",
22
+ "@orion-js/models": "^4.0.0-next.0",
23
+ "@orion-js/services": "^4.0.0-next.0"
24
24
  },
25
25
  "devDependencies": {
26
- "@orion-js/dogs": "^4.0.0-alpha.2",
27
- "@orion-js/echoes": "^4.0.0-alpha.2",
28
- "@orion-js/graphql": "^4.0.0-alpha.2",
29
- "@orion-js/helpers": "^4.0.0-alpha.2",
30
- "@orion-js/http": "^4.0.0-alpha.2",
31
- "@orion-js/models": "^4.0.0-alpha.2",
32
- "@orion-js/services": "^4.0.0-alpha.2",
26
+ "@orion-js/dogs": "^4.0.0-next.0",
27
+ "@orion-js/echoes": "^4.0.0-next.0",
28
+ "@orion-js/graphql": "^4.0.0-next.0",
29
+ "@orion-js/helpers": "^4.0.0-next.0",
30
+ "@orion-js/http": "^4.0.0-next.0",
31
+ "@orion-js/models": "^4.0.0-next.0",
32
+ "@orion-js/services": "^4.0.0-next.0",
33
33
  "reflect-metadata": "0.1.13",
34
34
  "typescript": "^5.4.5",
35
35
  "@types/bun": "^1.2.4"