@orion-js/components 4.2.5 → 4.2.7

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
@@ -36,6 +36,7 @@ var import_graphql = require("@orion-js/graphql");
36
36
  var import_http = require("@orion-js/http");
37
37
  var import_dogs = require("@orion-js/dogs");
38
38
  var import_helpers = require("@orion-js/helpers");
39
+ var import_trpc = require("@orion-js/trpc");
39
40
  function mergeComponentControllers(component2) {
40
41
  const echoes = {};
41
42
  if (component2.controllers.echoes) {
@@ -104,13 +105,24 @@ function mergeComponentControllers(component2) {
104
105
  }
105
106
  });
106
107
  }
108
+ const trpc = {};
109
+ if (component2.controllers.trpc) {
110
+ component2.controllers.trpc.forEach((Controller) => {
111
+ const serviceProcedures = (0, import_trpc.getTProcedures)(Controller);
112
+ for (const procedureName in serviceProcedures) {
113
+ const procedure = serviceProcedures[procedureName];
114
+ trpc[procedureName] = procedure;
115
+ }
116
+ });
117
+ }
107
118
  return {
108
119
  echoes,
109
120
  resolvers,
110
121
  modelResolvers,
111
122
  subscriptions,
112
123
  routes,
113
- jobs
124
+ jobs,
125
+ trpc
114
126
  };
115
127
  }
116
128
  function mergeComponents(components) {
@@ -120,7 +132,8 @@ function mergeComponents(components) {
120
132
  modelResolvers: {},
121
133
  subscriptions: {},
122
134
  routes: {},
123
- jobs: {}
135
+ jobs: {},
136
+ trpc: {}
124
137
  };
125
138
  components.forEach((component2) => {
126
139
  const componentControllers = mergeComponentControllers(component2);
@@ -148,6 +161,10 @@ function mergeComponents(components) {
148
161
  ...mergedControllers.jobs,
149
162
  ...componentControllers.jobs
150
163
  };
164
+ mergedControllers.trpc = {
165
+ ...mergedControllers.trpc,
166
+ ...componentControllers.trpc
167
+ };
151
168
  });
152
169
  return mergedControllers;
153
170
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/components/index.ts","../src/mergeComponents/index.ts"],"sourcesContent":["export * from './components'\nexport * from './mergeComponents'\n","export type EchoesController = {new (...args: any[]): any}\nexport type ResolversController = {new (...args: any[]): any}\nexport type SubscriptionsController = {new (...args: any[]): any}\nexport type JobsController = {new (...args: any[]): any}\nexport type RoutesController = {new (...args: any[]): any}\nexport type ModelResolversController = {new (...args: any[]): any}\n\nexport interface ComponentControllers {\n echoes?: EchoesController[]\n routes?: RoutesController[]\n jobs?: JobsController[]\n resolvers?: ResolversController[]\n subscriptions?: SubscriptionsController[]\n modelResolvers?: ModelResolversController[]\n}\n\nexport interface Component {\n controllers: ComponentControllers\n}\n\nexport function component(controllers: ComponentControllers): Component {\n return {controllers}\n}\n","import {Component} from '../components'\nimport {EchoesMap, getServiceEchoes} from '@orion-js/echoes'\nimport {\n getServiceModelResolvers,\n getServiceResolvers,\n getServiceSubscriptions,\n OrionSubscriptionsMap,\n ModelsResolversMap,\n} from '@orion-js/graphql'\nimport {getServiceRoutes, RoutesMap} from '@orion-js/http'\nimport {getServiceJobs, JobsDefinition} from '@orion-js/dogs'\nimport {GlobalResolversMap} from '@orion-js/models'\nimport {generateId} from '@orion-js/helpers'\n\nexport interface MergedComponentControllers {\n echoes: EchoesMap\n resolvers: GlobalResolversMap\n modelResolvers: ModelsResolversMap\n subscriptions: OrionSubscriptionsMap\n routes: RoutesMap\n jobs: JobsDefinition\n}\n\nexport function mergeComponentControllers(component: Component): MergedComponentControllers {\n const echoes: EchoesMap = {}\n\n if (component.controllers.echoes) {\n component.controllers.echoes.forEach(Controller => {\n const serviceEchoes = getServiceEchoes(Controller)\n for (const echoName in serviceEchoes) {\n const echo = serviceEchoes[echoName]\n echoes[echoName] = echo\n }\n })\n }\n\n const resolvers: GlobalResolversMap = {}\n\n if (component.controllers.resolvers) {\n component.controllers.resolvers.forEach(Controller => {\n const serviceResolvers = getServiceResolvers(Controller)\n for (const resolverName in serviceResolvers) {\n const resolver = serviceResolvers[resolverName]\n resolvers[resolverName] = resolver\n }\n })\n }\n\n const modelResolvers: ModelsResolversMap = {}\n\n if (component.controllers.modelResolvers) {\n component.controllers.modelResolvers.forEach(Controller => {\n const serviceModelResolvers = getServiceModelResolvers(Controller)\n for (const modelName in serviceModelResolvers) {\n const resolversForModel = serviceModelResolvers[modelName]\n modelResolvers[modelName] = modelResolvers[modelName] || {}\n for (const resolverName in resolversForModel) {\n modelResolvers[modelName][resolverName] = resolversForModel[resolverName]\n }\n }\n })\n }\n\n const subscriptions: OrionSubscriptionsMap = {}\n\n if (component.controllers.subscriptions) {\n component.controllers.subscriptions.forEach(Controller => {\n const serviceResolvers = getServiceSubscriptions(Controller)\n for (const subsrcriptionName in serviceResolvers) {\n const subsrcription = serviceResolvers[subsrcriptionName]\n subscriptions[subsrcriptionName] = subsrcription\n }\n })\n }\n\n const routes: RoutesMap = {}\n\n if (component.controllers.routes) {\n component.controllers.routes.forEach(Controller => {\n const serviceRoutes = getServiceRoutes(Controller)\n for (const routeName in serviceRoutes) {\n const resolver = serviceRoutes[routeName]\n if (routes[routeName]) {\n routes[routeName + generateId()] = resolver\n } else {\n routes[routeName] = resolver\n }\n }\n })\n }\n\n const jobs: JobsDefinition = {}\n\n if (component.controllers.jobs) {\n component.controllers.jobs.forEach(Controller => {\n const serviceJobs = getServiceJobs(Controller)\n for (const jobName in serviceJobs) {\n const resolver = serviceJobs[jobName]\n jobs[jobName] = resolver\n }\n })\n }\n\n return {\n echoes,\n resolvers,\n modelResolvers,\n subscriptions,\n routes,\n jobs,\n }\n}\n\nexport function mergeComponents(components: Component[]): MergedComponentControllers {\n const mergedControllers: MergedComponentControllers = {\n echoes: {},\n resolvers: {},\n modelResolvers: {},\n subscriptions: {},\n routes: {},\n jobs: {},\n }\n\n components.forEach(component => {\n const componentControllers = mergeComponentControllers(component)\n mergedControllers.echoes = {\n ...mergedControllers.echoes,\n ...componentControllers.echoes,\n }\n mergedControllers.resolvers = {\n ...mergedControllers.resolvers,\n ...componentControllers.resolvers,\n }\n mergedControllers.modelResolvers = {\n ...mergedControllers.modelResolvers,\n ...componentControllers.modelResolvers,\n }\n mergedControllers.subscriptions = {\n ...mergedControllers.subscriptions,\n ...componentControllers.subscriptions,\n }\n mergedControllers.routes = {\n ...mergedControllers.routes,\n ...componentControllers.routes,\n }\n mergedControllers.jobs = {\n ...mergedControllers.jobs,\n ...componentControllers.jobs,\n }\n })\n\n return mergedControllers\n}\n"],"mappings":"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","names":["component"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/components/index.ts","../src/mergeComponents/index.ts"],"sourcesContent":["export * from './components'\nexport * from './mergeComponents'\n","export type EchoesController = {new (...args: any[]): any}\nexport type ResolversController = {new (...args: any[]): any}\nexport type SubscriptionsController = {new (...args: any[]): any}\nexport type JobsController = {new (...args: any[]): any}\nexport type RoutesController = {new (...args: any[]): any}\nexport type ModelResolversController = {new (...args: any[]): any}\nexport type TrpcController = {new (...args: any[]): any}\n\nexport interface ComponentControllers {\n echoes?: EchoesController[]\n routes?: RoutesController[]\n jobs?: JobsController[]\n resolvers?: ResolversController[]\n subscriptions?: SubscriptionsController[]\n modelResolvers?: ModelResolversController[]\n trpc?: TrpcController[]\n}\n\nexport interface Component {\n controllers: ComponentControllers\n}\n\nexport function component(controllers: ComponentControllers): Component {\n return {controllers}\n}\n","import {Component} from '../components'\nimport {EchoesMap, getServiceEchoes} from '@orion-js/echoes'\nimport {\n getServiceModelResolvers,\n getServiceResolvers,\n getServiceSubscriptions,\n OrionSubscriptionsMap,\n ModelsResolversMap,\n} from '@orion-js/graphql'\nimport {getServiceRoutes, RoutesMap} from '@orion-js/http'\nimport {getServiceJobs, JobsDefinition} from '@orion-js/dogs'\nimport {GlobalResolversMap} from '@orion-js/models'\nimport {generateId} from '@orion-js/helpers'\nimport {getTProcedures} from '@orion-js/trpc'\nimport type {TRPCRouterRecord} from '@trpc/server'\n\nexport interface MergedComponentControllers {\n echoes: EchoesMap\n resolvers: GlobalResolversMap\n modelResolvers: ModelsResolversMap\n subscriptions: OrionSubscriptionsMap\n routes: RoutesMap\n jobs: JobsDefinition\n trpc: TRPCRouterRecord\n}\n\nexport function mergeComponentControllers(component: Component): MergedComponentControllers {\n const echoes: EchoesMap = {}\n\n if (component.controllers.echoes) {\n component.controllers.echoes.forEach(Controller => {\n const serviceEchoes = getServiceEchoes(Controller)\n for (const echoName in serviceEchoes) {\n const echo = serviceEchoes[echoName]\n echoes[echoName] = echo\n }\n })\n }\n\n const resolvers: GlobalResolversMap = {}\n\n if (component.controllers.resolvers) {\n component.controllers.resolvers.forEach(Controller => {\n const serviceResolvers = getServiceResolvers(Controller)\n for (const resolverName in serviceResolvers) {\n const resolver = serviceResolvers[resolverName]\n resolvers[resolverName] = resolver\n }\n })\n }\n\n const modelResolvers: ModelsResolversMap = {}\n\n if (component.controllers.modelResolvers) {\n component.controllers.modelResolvers.forEach(Controller => {\n const serviceModelResolvers = getServiceModelResolvers(Controller)\n for (const modelName in serviceModelResolvers) {\n const resolversForModel = serviceModelResolvers[modelName]\n modelResolvers[modelName] = modelResolvers[modelName] || {}\n for (const resolverName in resolversForModel) {\n modelResolvers[modelName][resolverName] = resolversForModel[resolverName]\n }\n }\n })\n }\n\n const subscriptions: OrionSubscriptionsMap = {}\n\n if (component.controllers.subscriptions) {\n component.controllers.subscriptions.forEach(Controller => {\n const serviceResolvers = getServiceSubscriptions(Controller)\n for (const subsrcriptionName in serviceResolvers) {\n const subsrcription = serviceResolvers[subsrcriptionName]\n subscriptions[subsrcriptionName] = subsrcription\n }\n })\n }\n\n const routes: RoutesMap = {}\n\n if (component.controllers.routes) {\n component.controllers.routes.forEach(Controller => {\n const serviceRoutes = getServiceRoutes(Controller)\n for (const routeName in serviceRoutes) {\n const resolver = serviceRoutes[routeName]\n if (routes[routeName]) {\n routes[routeName + generateId()] = resolver\n } else {\n routes[routeName] = resolver\n }\n }\n })\n }\n\n const jobs: JobsDefinition = {}\n\n if (component.controllers.jobs) {\n component.controllers.jobs.forEach(Controller => {\n const serviceJobs = getServiceJobs(Controller)\n for (const jobName in serviceJobs) {\n const resolver = serviceJobs[jobName]\n jobs[jobName] = resolver\n }\n })\n }\n\n const trpc: TRPCRouterRecord = {}\n\n if (component.controllers.trpc) {\n component.controllers.trpc.forEach(Controller => {\n const serviceProcedures = getTProcedures(Controller)\n for (const procedureName in serviceProcedures) {\n const procedure = serviceProcedures[procedureName]\n trpc[procedureName] = procedure\n }\n })\n }\n\n return {\n echoes,\n resolvers,\n modelResolvers,\n subscriptions,\n routes,\n jobs,\n trpc,\n }\n}\n\nexport function mergeComponents(components: Component[]): MergedComponentControllers {\n const mergedControllers: MergedComponentControllers = {\n echoes: {},\n resolvers: {},\n modelResolvers: {},\n subscriptions: {},\n routes: {},\n jobs: {},\n trpc: {},\n }\n\n components.forEach(component => {\n const componentControllers = mergeComponentControllers(component)\n mergedControllers.echoes = {\n ...mergedControllers.echoes,\n ...componentControllers.echoes,\n }\n mergedControllers.resolvers = {\n ...mergedControllers.resolvers,\n ...componentControllers.resolvers,\n }\n mergedControllers.modelResolvers = {\n ...mergedControllers.modelResolvers,\n ...componentControllers.modelResolvers,\n }\n mergedControllers.subscriptions = {\n ...mergedControllers.subscriptions,\n ...componentControllers.subscriptions,\n }\n mergedControllers.routes = {\n ...mergedControllers.routes,\n ...componentControllers.routes,\n }\n mergedControllers.jobs = {\n ...mergedControllers.jobs,\n ...componentControllers.jobs,\n }\n mergedControllers.trpc = {\n ...mergedControllers.trpc,\n ...componentControllers.trpc,\n }\n })\n\n return mergedControllers\n}\n"],"mappings":"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","names":["component"]}
package/dist/index.d.cts CHANGED
@@ -3,6 +3,7 @@ import { ModelsResolversMap, OrionSubscriptionsMap } from '@orion-js/graphql';
3
3
  import { RoutesMap } from '@orion-js/http';
4
4
  import { JobsDefinition } from '@orion-js/dogs';
5
5
  import { GlobalResolversMap } from '@orion-js/models';
6
+ import { TRPCRouterRecord } from '@trpc/server';
6
7
 
7
8
  type EchoesController = {
8
9
  new (...args: any[]): any;
@@ -22,6 +23,9 @@ type RoutesController = {
22
23
  type ModelResolversController = {
23
24
  new (...args: any[]): any;
24
25
  };
26
+ type TrpcController = {
27
+ new (...args: any[]): any;
28
+ };
25
29
  interface ComponentControllers {
26
30
  echoes?: EchoesController[];
27
31
  routes?: RoutesController[];
@@ -29,6 +33,7 @@ interface ComponentControllers {
29
33
  resolvers?: ResolversController[];
30
34
  subscriptions?: SubscriptionsController[];
31
35
  modelResolvers?: ModelResolversController[];
36
+ trpc?: TrpcController[];
32
37
  }
33
38
  interface Component {
34
39
  controllers: ComponentControllers;
@@ -42,8 +47,9 @@ interface MergedComponentControllers {
42
47
  subscriptions: OrionSubscriptionsMap;
43
48
  routes: RoutesMap;
44
49
  jobs: JobsDefinition;
50
+ trpc: TRPCRouterRecord;
45
51
  }
46
52
  declare function mergeComponentControllers(component: Component): MergedComponentControllers;
47
53
  declare function mergeComponents(components: Component[]): MergedComponentControllers;
48
54
 
49
- export { type Component, type ComponentControllers, type EchoesController, type JobsController, type MergedComponentControllers, type ModelResolversController, type ResolversController, type RoutesController, type SubscriptionsController, component, mergeComponentControllers, mergeComponents };
55
+ export { type Component, type ComponentControllers, type EchoesController, type JobsController, type MergedComponentControllers, type ModelResolversController, type ResolversController, type RoutesController, type SubscriptionsController, type TrpcController, component, mergeComponentControllers, mergeComponents };
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ import { ModelsResolversMap, OrionSubscriptionsMap } from '@orion-js/graphql';
3
3
  import { RoutesMap } from '@orion-js/http';
4
4
  import { JobsDefinition } from '@orion-js/dogs';
5
5
  import { GlobalResolversMap } from '@orion-js/models';
6
+ import { TRPCRouterRecord } from '@trpc/server';
6
7
 
7
8
  type EchoesController = {
8
9
  new (...args: any[]): any;
@@ -22,6 +23,9 @@ type RoutesController = {
22
23
  type ModelResolversController = {
23
24
  new (...args: any[]): any;
24
25
  };
26
+ type TrpcController = {
27
+ new (...args: any[]): any;
28
+ };
25
29
  interface ComponentControllers {
26
30
  echoes?: EchoesController[];
27
31
  routes?: RoutesController[];
@@ -29,6 +33,7 @@ interface ComponentControllers {
29
33
  resolvers?: ResolversController[];
30
34
  subscriptions?: SubscriptionsController[];
31
35
  modelResolvers?: ModelResolversController[];
36
+ trpc?: TrpcController[];
32
37
  }
33
38
  interface Component {
34
39
  controllers: ComponentControllers;
@@ -42,8 +47,9 @@ interface MergedComponentControllers {
42
47
  subscriptions: OrionSubscriptionsMap;
43
48
  routes: RoutesMap;
44
49
  jobs: JobsDefinition;
50
+ trpc: TRPCRouterRecord;
45
51
  }
46
52
  declare function mergeComponentControllers(component: Component): MergedComponentControllers;
47
53
  declare function mergeComponents(components: Component[]): MergedComponentControllers;
48
54
 
49
- export { type Component, type ComponentControllers, type EchoesController, type JobsController, type MergedComponentControllers, type ModelResolversController, type ResolversController, type RoutesController, type SubscriptionsController, component, mergeComponentControllers, mergeComponents };
55
+ export { type Component, type ComponentControllers, type EchoesController, type JobsController, type MergedComponentControllers, type ModelResolversController, type ResolversController, type RoutesController, type SubscriptionsController, type TrpcController, component, mergeComponentControllers, mergeComponents };
package/dist/index.js CHANGED
@@ -13,6 +13,7 @@ import {
13
13
  import { getServiceRoutes } from "@orion-js/http";
14
14
  import { getServiceJobs } from "@orion-js/dogs";
15
15
  import { generateId } from "@orion-js/helpers";
16
+ import { getTProcedures } from "@orion-js/trpc";
16
17
  function mergeComponentControllers(component2) {
17
18
  const echoes = {};
18
19
  if (component2.controllers.echoes) {
@@ -81,13 +82,24 @@ function mergeComponentControllers(component2) {
81
82
  }
82
83
  });
83
84
  }
85
+ const trpc = {};
86
+ if (component2.controllers.trpc) {
87
+ component2.controllers.trpc.forEach((Controller) => {
88
+ const serviceProcedures = getTProcedures(Controller);
89
+ for (const procedureName in serviceProcedures) {
90
+ const procedure = serviceProcedures[procedureName];
91
+ trpc[procedureName] = procedure;
92
+ }
93
+ });
94
+ }
84
95
  return {
85
96
  echoes,
86
97
  resolvers,
87
98
  modelResolvers,
88
99
  subscriptions,
89
100
  routes,
90
- jobs
101
+ jobs,
102
+ trpc
91
103
  };
92
104
  }
93
105
  function mergeComponents(components) {
@@ -97,7 +109,8 @@ function mergeComponents(components) {
97
109
  modelResolvers: {},
98
110
  subscriptions: {},
99
111
  routes: {},
100
- jobs: {}
112
+ jobs: {},
113
+ trpc: {}
101
114
  };
102
115
  components.forEach((component2) => {
103
116
  const componentControllers = mergeComponentControllers(component2);
@@ -125,6 +138,10 @@ function mergeComponents(components) {
125
138
  ...mergedControllers.jobs,
126
139
  ...componentControllers.jobs
127
140
  };
141
+ mergedControllers.trpc = {
142
+ ...mergedControllers.trpc,
143
+ ...componentControllers.trpc
144
+ };
128
145
  });
129
146
  return mergedControllers;
130
147
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/index.ts","../src/mergeComponents/index.ts"],"sourcesContent":["export type EchoesController = {new (...args: any[]): any}\nexport type ResolversController = {new (...args: any[]): any}\nexport type SubscriptionsController = {new (...args: any[]): any}\nexport type JobsController = {new (...args: any[]): any}\nexport type RoutesController = {new (...args: any[]): any}\nexport type ModelResolversController = {new (...args: any[]): any}\n\nexport interface ComponentControllers {\n echoes?: EchoesController[]\n routes?: RoutesController[]\n jobs?: JobsController[]\n resolvers?: ResolversController[]\n subscriptions?: SubscriptionsController[]\n modelResolvers?: ModelResolversController[]\n}\n\nexport interface Component {\n controllers: ComponentControllers\n}\n\nexport function component(controllers: ComponentControllers): Component {\n return {controllers}\n}\n","import {Component} from '../components'\nimport {EchoesMap, getServiceEchoes} from '@orion-js/echoes'\nimport {\n getServiceModelResolvers,\n getServiceResolvers,\n getServiceSubscriptions,\n OrionSubscriptionsMap,\n ModelsResolversMap,\n} from '@orion-js/graphql'\nimport {getServiceRoutes, RoutesMap} from '@orion-js/http'\nimport {getServiceJobs, JobsDefinition} from '@orion-js/dogs'\nimport {GlobalResolversMap} from '@orion-js/models'\nimport {generateId} from '@orion-js/helpers'\n\nexport interface MergedComponentControllers {\n echoes: EchoesMap\n resolvers: GlobalResolversMap\n modelResolvers: ModelsResolversMap\n subscriptions: OrionSubscriptionsMap\n routes: RoutesMap\n jobs: JobsDefinition\n}\n\nexport function mergeComponentControllers(component: Component): MergedComponentControllers {\n const echoes: EchoesMap = {}\n\n if (component.controllers.echoes) {\n component.controllers.echoes.forEach(Controller => {\n const serviceEchoes = getServiceEchoes(Controller)\n for (const echoName in serviceEchoes) {\n const echo = serviceEchoes[echoName]\n echoes[echoName] = echo\n }\n })\n }\n\n const resolvers: GlobalResolversMap = {}\n\n if (component.controllers.resolvers) {\n component.controllers.resolvers.forEach(Controller => {\n const serviceResolvers = getServiceResolvers(Controller)\n for (const resolverName in serviceResolvers) {\n const resolver = serviceResolvers[resolverName]\n resolvers[resolverName] = resolver\n }\n })\n }\n\n const modelResolvers: ModelsResolversMap = {}\n\n if (component.controllers.modelResolvers) {\n component.controllers.modelResolvers.forEach(Controller => {\n const serviceModelResolvers = getServiceModelResolvers(Controller)\n for (const modelName in serviceModelResolvers) {\n const resolversForModel = serviceModelResolvers[modelName]\n modelResolvers[modelName] = modelResolvers[modelName] || {}\n for (const resolverName in resolversForModel) {\n modelResolvers[modelName][resolverName] = resolversForModel[resolverName]\n }\n }\n })\n }\n\n const subscriptions: OrionSubscriptionsMap = {}\n\n if (component.controllers.subscriptions) {\n component.controllers.subscriptions.forEach(Controller => {\n const serviceResolvers = getServiceSubscriptions(Controller)\n for (const subsrcriptionName in serviceResolvers) {\n const subsrcription = serviceResolvers[subsrcriptionName]\n subscriptions[subsrcriptionName] = subsrcription\n }\n })\n }\n\n const routes: RoutesMap = {}\n\n if (component.controllers.routes) {\n component.controllers.routes.forEach(Controller => {\n const serviceRoutes = getServiceRoutes(Controller)\n for (const routeName in serviceRoutes) {\n const resolver = serviceRoutes[routeName]\n if (routes[routeName]) {\n routes[routeName + generateId()] = resolver\n } else {\n routes[routeName] = resolver\n }\n }\n })\n }\n\n const jobs: JobsDefinition = {}\n\n if (component.controllers.jobs) {\n component.controllers.jobs.forEach(Controller => {\n const serviceJobs = getServiceJobs(Controller)\n for (const jobName in serviceJobs) {\n const resolver = serviceJobs[jobName]\n jobs[jobName] = resolver\n }\n })\n }\n\n return {\n echoes,\n resolvers,\n modelResolvers,\n subscriptions,\n routes,\n jobs,\n }\n}\n\nexport function mergeComponents(components: Component[]): MergedComponentControllers {\n const mergedControllers: MergedComponentControllers = {\n echoes: {},\n resolvers: {},\n modelResolvers: {},\n subscriptions: {},\n routes: {},\n jobs: {},\n }\n\n components.forEach(component => {\n const componentControllers = mergeComponentControllers(component)\n mergedControllers.echoes = {\n ...mergedControllers.echoes,\n ...componentControllers.echoes,\n }\n mergedControllers.resolvers = {\n ...mergedControllers.resolvers,\n ...componentControllers.resolvers,\n }\n mergedControllers.modelResolvers = {\n ...mergedControllers.modelResolvers,\n ...componentControllers.modelResolvers,\n }\n mergedControllers.subscriptions = {\n ...mergedControllers.subscriptions,\n ...componentControllers.subscriptions,\n }\n mergedControllers.routes = {\n ...mergedControllers.routes,\n ...componentControllers.routes,\n }\n mergedControllers.jobs = {\n ...mergedControllers.jobs,\n ...componentControllers.jobs,\n }\n })\n\n return mergedControllers\n}\n"],"mappings":"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","names":["component"]}
1
+ {"version":3,"sources":["../src/components/index.ts","../src/mergeComponents/index.ts"],"sourcesContent":["export type EchoesController = {new (...args: any[]): any}\nexport type ResolversController = {new (...args: any[]): any}\nexport type SubscriptionsController = {new (...args: any[]): any}\nexport type JobsController = {new (...args: any[]): any}\nexport type RoutesController = {new (...args: any[]): any}\nexport type ModelResolversController = {new (...args: any[]): any}\nexport type TrpcController = {new (...args: any[]): any}\n\nexport interface ComponentControllers {\n echoes?: EchoesController[]\n routes?: RoutesController[]\n jobs?: JobsController[]\n resolvers?: ResolversController[]\n subscriptions?: SubscriptionsController[]\n modelResolvers?: ModelResolversController[]\n trpc?: TrpcController[]\n}\n\nexport interface Component {\n controllers: ComponentControllers\n}\n\nexport function component(controllers: ComponentControllers): Component {\n return {controllers}\n}\n","import {Component} from '../components'\nimport {EchoesMap, getServiceEchoes} from '@orion-js/echoes'\nimport {\n getServiceModelResolvers,\n getServiceResolvers,\n getServiceSubscriptions,\n OrionSubscriptionsMap,\n ModelsResolversMap,\n} from '@orion-js/graphql'\nimport {getServiceRoutes, RoutesMap} from '@orion-js/http'\nimport {getServiceJobs, JobsDefinition} from '@orion-js/dogs'\nimport {GlobalResolversMap} from '@orion-js/models'\nimport {generateId} from '@orion-js/helpers'\nimport {getTProcedures} from '@orion-js/trpc'\nimport type {TRPCRouterRecord} from '@trpc/server'\n\nexport interface MergedComponentControllers {\n echoes: EchoesMap\n resolvers: GlobalResolversMap\n modelResolvers: ModelsResolversMap\n subscriptions: OrionSubscriptionsMap\n routes: RoutesMap\n jobs: JobsDefinition\n trpc: TRPCRouterRecord\n}\n\nexport function mergeComponentControllers(component: Component): MergedComponentControllers {\n const echoes: EchoesMap = {}\n\n if (component.controllers.echoes) {\n component.controllers.echoes.forEach(Controller => {\n const serviceEchoes = getServiceEchoes(Controller)\n for (const echoName in serviceEchoes) {\n const echo = serviceEchoes[echoName]\n echoes[echoName] = echo\n }\n })\n }\n\n const resolvers: GlobalResolversMap = {}\n\n if (component.controllers.resolvers) {\n component.controllers.resolvers.forEach(Controller => {\n const serviceResolvers = getServiceResolvers(Controller)\n for (const resolverName in serviceResolvers) {\n const resolver = serviceResolvers[resolverName]\n resolvers[resolverName] = resolver\n }\n })\n }\n\n const modelResolvers: ModelsResolversMap = {}\n\n if (component.controllers.modelResolvers) {\n component.controllers.modelResolvers.forEach(Controller => {\n const serviceModelResolvers = getServiceModelResolvers(Controller)\n for (const modelName in serviceModelResolvers) {\n const resolversForModel = serviceModelResolvers[modelName]\n modelResolvers[modelName] = modelResolvers[modelName] || {}\n for (const resolverName in resolversForModel) {\n modelResolvers[modelName][resolverName] = resolversForModel[resolverName]\n }\n }\n })\n }\n\n const subscriptions: OrionSubscriptionsMap = {}\n\n if (component.controllers.subscriptions) {\n component.controllers.subscriptions.forEach(Controller => {\n const serviceResolvers = getServiceSubscriptions(Controller)\n for (const subsrcriptionName in serviceResolvers) {\n const subsrcription = serviceResolvers[subsrcriptionName]\n subscriptions[subsrcriptionName] = subsrcription\n }\n })\n }\n\n const routes: RoutesMap = {}\n\n if (component.controllers.routes) {\n component.controllers.routes.forEach(Controller => {\n const serviceRoutes = getServiceRoutes(Controller)\n for (const routeName in serviceRoutes) {\n const resolver = serviceRoutes[routeName]\n if (routes[routeName]) {\n routes[routeName + generateId()] = resolver\n } else {\n routes[routeName] = resolver\n }\n }\n })\n }\n\n const jobs: JobsDefinition = {}\n\n if (component.controllers.jobs) {\n component.controllers.jobs.forEach(Controller => {\n const serviceJobs = getServiceJobs(Controller)\n for (const jobName in serviceJobs) {\n const resolver = serviceJobs[jobName]\n jobs[jobName] = resolver\n }\n })\n }\n\n const trpc: TRPCRouterRecord = {}\n\n if (component.controllers.trpc) {\n component.controllers.trpc.forEach(Controller => {\n const serviceProcedures = getTProcedures(Controller)\n for (const procedureName in serviceProcedures) {\n const procedure = serviceProcedures[procedureName]\n trpc[procedureName] = procedure\n }\n })\n }\n\n return {\n echoes,\n resolvers,\n modelResolvers,\n subscriptions,\n routes,\n jobs,\n trpc,\n }\n}\n\nexport function mergeComponents(components: Component[]): MergedComponentControllers {\n const mergedControllers: MergedComponentControllers = {\n echoes: {},\n resolvers: {},\n modelResolvers: {},\n subscriptions: {},\n routes: {},\n jobs: {},\n trpc: {},\n }\n\n components.forEach(component => {\n const componentControllers = mergeComponentControllers(component)\n mergedControllers.echoes = {\n ...mergedControllers.echoes,\n ...componentControllers.echoes,\n }\n mergedControllers.resolvers = {\n ...mergedControllers.resolvers,\n ...componentControllers.resolvers,\n }\n mergedControllers.modelResolvers = {\n ...mergedControllers.modelResolvers,\n ...componentControllers.modelResolvers,\n }\n mergedControllers.subscriptions = {\n ...mergedControllers.subscriptions,\n ...componentControllers.subscriptions,\n }\n mergedControllers.routes = {\n ...mergedControllers.routes,\n ...componentControllers.routes,\n }\n mergedControllers.jobs = {\n ...mergedControllers.jobs,\n ...componentControllers.jobs,\n }\n mergedControllers.trpc = {\n ...mergedControllers.trpc,\n ...componentControllers.trpc,\n }\n })\n\n return mergedControllers\n}\n"],"mappings":"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","names":["component"]}
package/package.json CHANGED
@@ -1,32 +1,44 @@
1
1
  {
2
2
  "name": "@orion-js/components",
3
- "version": "4.2.5",
3
+ "version": "4.2.7",
4
4
  "main": "./dist/index.cjs",
5
5
  "author": "nicolaslopezj",
6
6
  "license": "MIT",
7
7
  "peerDependencies": {
8
- "@orion-js/graphql": "4.2.0",
9
- "@orion-js/logger": "4.2.0",
10
- "@orion-js/helpers": "4.2.0",
8
+ "@trpc/server": "^11.0.0",
11
9
  "@orion-js/echoes": "4.2.0",
12
- "@orion-js/mongodb": "4.2.5",
13
- "@orion-js/dogs": "4.2.5",
10
+ "@orion-js/helpers": "4.2.0",
14
11
  "@orion-js/models": "4.2.0",
12
+ "@orion-js/graphql": "4.2.0",
13
+ "@orion-js/logger": "4.2.0",
15
14
  "@orion-js/http": "4.2.0",
16
- "@orion-js/services": "4.2.0"
15
+ "@orion-js/dogs": "4.2.6",
16
+ "@orion-js/trpc": "4.0.1",
17
+ "@orion-js/services": "4.2.0",
18
+ "@orion-js/mongodb": "4.2.6"
19
+ },
20
+ "peerDependenciesMeta": {
21
+ "@orion-js/trpc": {
22
+ "optional": true
23
+ },
24
+ "@trpc/server": {
25
+ "optional": true
26
+ }
17
27
  },
18
28
  "devDependencies": {
29
+ "@trpc/server": "^11.0.0",
19
30
  "typescript": "^5.4.5",
20
31
  "@types/node": "^18.0.0",
21
32
  "tsup": "^8.0.1",
22
33
  "vitest": "^3.0.8",
23
- "@orion-js/dogs": "4.2.5",
24
34
  "@orion-js/echoes": "4.2.0",
25
- "@orion-js/helpers": "4.2.0",
35
+ "@orion-js/dogs": "4.2.6",
36
+ "@orion-js/http": "4.2.0",
26
37
  "@orion-js/models": "4.2.0",
27
- "@orion-js/graphql": "4.2.0",
28
38
  "@orion-js/services": "4.2.0",
29
- "@orion-js/http": "4.2.0"
39
+ "@orion-js/trpc": "4.0.1",
40
+ "@orion-js/helpers": "4.2.0",
41
+ "@orion-js/graphql": "4.2.0"
30
42
  },
31
43
  "publishConfig": {
32
44
  "access": "public"