nmtjs 0.16.0-beta.9 → 0.16.1

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 (161) hide show
  1. package/dist/cli.js +2 -1
  2. package/dist/cli.js.map +1 -1
  3. package/dist/entrypoints/worker.js +9 -9
  4. package/dist/entrypoints/worker.js.map +1 -1
  5. package/dist/index.d.ts +58 -15
  6. package/dist/index.js +5 -2
  7. package/dist/index.js.map +1 -1
  8. package/dist/runtime/application/index.d.ts +1 -5
  9. package/dist/runtime/application/index.js +1 -5
  10. package/dist/runtime/application/index.js.map +1 -1
  11. package/dist/runtime/enums.d.ts +1 -12
  12. package/dist/runtime/enums.js +1 -14
  13. package/dist/runtime/enums.js.map +1 -1
  14. package/dist/runtime/hooks.d.ts +1 -4
  15. package/dist/runtime/hooks.js +1 -3
  16. package/dist/runtime/hooks.js.map +1 -1
  17. package/dist/runtime/index.d.ts +1 -3
  18. package/dist/runtime/index.js +1 -3
  19. package/dist/runtime/index.js.map +1 -1
  20. package/dist/runtime/injectables.d.ts +48 -7
  21. package/dist/runtime/injectables.js +19 -3
  22. package/dist/runtime/injectables.js.map +1 -1
  23. package/dist/runtime/jobs/job.d.ts +1 -2
  24. package/dist/runtime/jobs/job.js.map +1 -1
  25. package/dist/runtime/jobs/router.d.ts +2 -5
  26. package/dist/runtime/jobs/router.js +2 -3
  27. package/dist/runtime/jobs/router.js.map +1 -1
  28. package/dist/runtime/jobs/runner.d.ts +1 -1
  29. package/dist/runtime/jobs/runner.js +1 -1
  30. package/dist/runtime/jobs/runner.js.map +1 -1
  31. package/dist/runtime/jobs/types.d.ts +1 -1
  32. package/dist/runtime/metrics/metric.d.ts +2 -2
  33. package/dist/runtime/metrics/metric.js +1 -1
  34. package/dist/runtime/metrics/metric.js.map +1 -1
  35. package/dist/runtime/metrics/registry.d.ts +3 -3
  36. package/dist/runtime/metrics/registry.js +1 -1
  37. package/dist/runtime/metrics/registry.js.map +1 -1
  38. package/dist/runtime/metrics/server.js +1 -1
  39. package/dist/runtime/metrics/server.js.map +1 -1
  40. package/dist/runtime/plugin.d.ts +2 -8
  41. package/dist/runtime/plugin.js +1 -3
  42. package/dist/runtime/plugin.js.map +1 -1
  43. package/dist/runtime/runtime.d.ts +2 -2
  44. package/dist/runtime/runtime.js +1 -2
  45. package/dist/runtime/runtime.js.map +1 -1
  46. package/dist/runtime/server/applications.js +3 -0
  47. package/dist/runtime/server/applications.js.map +1 -1
  48. package/dist/runtime/server/config.d.ts +15 -12
  49. package/dist/runtime/server/config.js.map +1 -1
  50. package/dist/runtime/server/jobs.d.ts +6 -7
  51. package/dist/runtime/server/jobs.js +44 -30
  52. package/dist/runtime/server/jobs.js.map +1 -1
  53. package/dist/runtime/subscription/manager.d.ts +3 -3
  54. package/dist/runtime/subscription/manager.js +8 -8
  55. package/dist/runtime/subscription/manager.js.map +1 -1
  56. package/dist/runtime/subscription/redis.d.ts +1 -1
  57. package/dist/runtime/subscription/redis.js +16 -17
  58. package/dist/runtime/subscription/redis.js.map +1 -1
  59. package/dist/runtime/types.d.ts +3 -11
  60. package/dist/runtime/workers/application.d.ts +15 -33
  61. package/dist/runtime/workers/application.js +46 -139
  62. package/dist/runtime/workers/application.js.map +1 -1
  63. package/dist/runtime/workers/base.d.ts +0 -2
  64. package/dist/runtime/workers/base.js +3 -8
  65. package/dist/runtime/workers/base.js.map +1 -1
  66. package/dist/runtime/workers/job.js +2 -1
  67. package/dist/runtime/workers/job.js.map +1 -1
  68. package/dist/vite/server.js +1 -1
  69. package/dist/vite/server.js.map +1 -1
  70. package/package.json +19 -14
  71. package/src/cli.ts +2 -3
  72. package/src/entrypoints/worker.ts +11 -9
  73. package/src/index.ts +12 -5
  74. package/src/runtime/application/index.ts +1 -5
  75. package/src/runtime/enums.ts +2 -14
  76. package/src/runtime/hooks.ts +1 -5
  77. package/src/runtime/index.ts +2 -3
  78. package/src/runtime/injectables.ts +35 -6
  79. package/src/runtime/jobs/job.ts +1 -2
  80. package/src/runtime/jobs/router.ts +12 -15
  81. package/src/runtime/jobs/runner.ts +2 -2
  82. package/src/runtime/jobs/types.ts +1 -1
  83. package/src/runtime/metrics/metric.ts +2 -2
  84. package/src/runtime/metrics/registry.ts +5 -1
  85. package/src/runtime/metrics/server.ts +1 -1
  86. package/src/runtime/plugin.ts +2 -13
  87. package/src/runtime/runtime.ts +2 -4
  88. package/src/runtime/server/applications.ts +6 -0
  89. package/src/runtime/server/config.ts +27 -21
  90. package/src/runtime/server/jobs.ts +58 -34
  91. package/src/runtime/subscription/manager.ts +11 -14
  92. package/src/runtime/subscription/redis.ts +25 -23
  93. package/src/runtime/types.ts +3 -12
  94. package/src/runtime/workers/application.ts +76 -160
  95. package/src/runtime/workers/base.ts +9 -15
  96. package/src/runtime/workers/job.ts +3 -6
  97. package/src/vite/server.ts +1 -1
  98. package/dist/runtime/application/api/api.d.ts +0 -55
  99. package/dist/runtime/application/api/api.js +0 -252
  100. package/dist/runtime/application/api/api.js.map +0 -1
  101. package/dist/runtime/application/api/config.d.ts +0 -14
  102. package/dist/runtime/application/api/config.js +0 -6
  103. package/dist/runtime/application/api/config.js.map +0 -1
  104. package/dist/runtime/application/api/constants.d.ts +0 -14
  105. package/dist/runtime/application/api/constants.js +0 -8
  106. package/dist/runtime/application/api/constants.js.map +0 -1
  107. package/dist/runtime/application/api/filters.d.ts +0 -14
  108. package/dist/runtime/application/api/filters.js +0 -11
  109. package/dist/runtime/application/api/filters.js.map +0 -1
  110. package/dist/runtime/application/api/guards.d.ts +0 -15
  111. package/dist/runtime/application/api/guards.js +0 -8
  112. package/dist/runtime/application/api/guards.js.map +0 -1
  113. package/dist/runtime/application/api/index.d.ts +0 -23
  114. package/dist/runtime/application/api/index.js +0 -17
  115. package/dist/runtime/application/api/index.js.map +0 -1
  116. package/dist/runtime/application/api/logging.d.ts +0 -14
  117. package/dist/runtime/application/api/logging.js +0 -77
  118. package/dist/runtime/application/api/logging.js.map +0 -1
  119. package/dist/runtime/application/api/meta.d.ts +0 -21
  120. package/dist/runtime/application/api/meta.js +0 -2
  121. package/dist/runtime/application/api/meta.js.map +0 -1
  122. package/dist/runtime/application/api/middlewares.d.ts +0 -14
  123. package/dist/runtime/application/api/middlewares.js +0 -12
  124. package/dist/runtime/application/api/middlewares.js.map +0 -1
  125. package/dist/runtime/application/api/procedure.d.ts +0 -71
  126. package/dist/runtime/application/api/procedure.js +0 -41
  127. package/dist/runtime/application/api/procedure.js.map +0 -1
  128. package/dist/runtime/application/api/router.d.ts +0 -93
  129. package/dist/runtime/application/api/router.js +0 -55
  130. package/dist/runtime/application/api/router.js.map +0 -1
  131. package/dist/runtime/application/api/types.d.ts +0 -38
  132. package/dist/runtime/application/api/types.js +0 -2
  133. package/dist/runtime/application/api/types.js.map +0 -1
  134. package/dist/runtime/application/config.d.ts +0 -28
  135. package/dist/runtime/application/config.js +0 -25
  136. package/dist/runtime/application/config.js.map +0 -1
  137. package/dist/runtime/application/constants.d.ts +0 -2
  138. package/dist/runtime/application/constants.js +0 -2
  139. package/dist/runtime/application/constants.js.map +0 -1
  140. package/dist/runtime/application/hook.d.ts +0 -19
  141. package/dist/runtime/application/hook.js +0 -11
  142. package/dist/runtime/application/hook.js.map +0 -1
  143. package/dist/runtime/application/hooks.d.ts +0 -3
  144. package/dist/runtime/application/hooks.js +0 -4
  145. package/dist/runtime/application/hooks.js.map +0 -1
  146. package/src/runtime/application/api/api.ts +0 -406
  147. package/src/runtime/application/api/config.ts +0 -18
  148. package/src/runtime/application/api/constants.ts +0 -22
  149. package/src/runtime/application/api/filters.ts +0 -39
  150. package/src/runtime/application/api/guards.ts +0 -33
  151. package/src/runtime/application/api/index.ts +0 -69
  152. package/src/runtime/application/api/logging.ts +0 -110
  153. package/src/runtime/application/api/meta.ts +0 -37
  154. package/src/runtime/application/api/middlewares.ts +0 -37
  155. package/src/runtime/application/api/procedure.ts +0 -224
  156. package/src/runtime/application/api/router.ts +0 -247
  157. package/src/runtime/application/api/types.ts +0 -138
  158. package/src/runtime/application/config.ts +0 -82
  159. package/src/runtime/application/constants.ts +0 -4
  160. package/src/runtime/application/hook.ts +0 -51
  161. package/src/runtime/application/hooks.ts +0 -3
@@ -1,82 +0,0 @@
1
- import type {
2
- ConnectionIdentity,
3
- GatewayOptions,
4
- Transport,
5
- } from '@nmtjs/gateway'
6
- import { assertUniqueMetaBindings } from '@nmtjs/core'
7
-
8
- import type { LifecycleHooks } from '../hooks.ts'
9
- import type { RuntimePlugin } from '../plugin.ts'
10
- import type { ApiOptions } from './api/api.ts'
11
- import type { AnyFilter } from './api/filters.ts'
12
- import type { AnyGuard } from './api/guards.ts'
13
- import type { AnyMiddleware } from './api/middlewares.ts'
14
- import type { AnyRootRouter, AnyRouterMetaBinding } from './api/router.ts'
15
- import type { AnyHook } from './hook.ts'
16
- import { kApplicationConfig } from './constants.ts'
17
-
18
- export type AnyApplicationConfig = ApplicationConfig<AnyRootRouter>
19
-
20
- export interface ApplicationConfig<
21
- Router extends AnyRootRouter = AnyRootRouter,
22
- Transports extends Record<string, Transport> = Record<string, Transport>,
23
- > {
24
- [kApplicationConfig]: any
25
- router: Router
26
- api: Pick<ApiOptions, 'timeout'>
27
- gateway: Pick<GatewayOptions, 'streamTimeouts' | 'heartbeat'>
28
- transports: Transports
29
- identity?: ConnectionIdentity
30
- plugins: RuntimePlugin[]
31
- filters: AnyFilter[]
32
- middlewares: AnyMiddleware[]
33
- guards: AnyGuard[]
34
- meta: AnyRouterMetaBinding[]
35
- hooks: AnyHook[]
36
- lifecycleHooks: LifecycleHooks['_']['config']
37
- }
38
-
39
- export function defineApplication<
40
- R extends AnyRootRouter,
41
- T extends Record<string, Transport> = Record<string, Transport>,
42
- >(
43
- options: Pick<ApplicationConfig<R, T>, 'router'> &
44
- Partial<Omit<ApplicationConfig<R, T>, 'router'>>,
45
- ) {
46
- const {
47
- router,
48
- transports = {},
49
- guards = [],
50
- middlewares = [],
51
- meta = [],
52
- plugins = [],
53
- api = {} as ApplicationConfig['api'],
54
- filters = [] as ApplicationConfig['filters'],
55
- hooks = [] as ApplicationConfig['hooks'],
56
- lifecycleHooks = {},
57
- gateway = {},
58
- identity: identityResolver,
59
- } = options
60
-
61
- assertUniqueMetaBindings(meta, 'application config')
62
-
63
- return Object.freeze({
64
- [kApplicationConfig]: true,
65
- router,
66
- transports,
67
- api,
68
- gateway,
69
- filters,
70
- plugins,
71
- guards,
72
- middlewares,
73
- meta,
74
- hooks,
75
- lifecycleHooks,
76
- identity: identityResolver,
77
- } satisfies AnyApplicationConfig) as ApplicationConfig<R, T>
78
- }
79
-
80
- export function isApplicationConfig(value: any): value is ApplicationConfig {
81
- return Boolean(value?.[kApplicationConfig])
82
- }
@@ -1,4 +0,0 @@
1
- export const kApplicationConfig: unique symbol = Symbol.for(
2
- 'neemata:ApplicationConfig',
3
- )
4
- export type kApplicationConfig = typeof kApplicationConfig
@@ -1,51 +0,0 @@
1
- import type { MaybePromise } from '@nmtjs/common'
2
- import type {
3
- Dependant,
4
- Dependencies,
5
- DependencyContext,
6
- HookTypes,
7
- } from '@nmtjs/core'
8
- import { kHook } from '@nmtjs/core'
9
-
10
- export type AnyHook = Hook<HookTypes, string, any>
11
-
12
- export interface Hook<
13
- T extends HookTypes = HookTypes,
14
- H extends string = string,
15
- Deps extends Dependencies = {},
16
- > extends Dependant<Deps> {
17
- [kHook]: any
18
- name: H
19
- handler: (
20
- ctx: DependencyContext<Deps>,
21
- ...args: H extends keyof T ? Parameters<T[H]> : unknown[]
22
- ) => MaybePromise<any>
23
- }
24
-
25
- export function createHook<
26
- Types extends HookTypes = HookTypes,
27
- Name extends Extract<keyof Types, string> | (object & string) = object &
28
- string,
29
- Deps extends Dependencies = {},
30
- >(params: {
31
- name: Name
32
- dependencies?: Deps
33
- handler: Hook<Types, Name, Deps>['handler']
34
- }): Hook<Types, Name, Deps> {
35
- const { name, handler, dependencies = {} as Deps } = params
36
- return Object.freeze({ [kHook]: true, name, handler, dependencies }) as any
37
- }
38
-
39
- export function createApplicationHookFactory<Types extends HookTypes>() {
40
- return <
41
- Name extends Extract<keyof Types, string> | (object & string) = object &
42
- string,
43
- Deps extends Dependencies = {},
44
- >(params: {
45
- name: Name
46
- dependencies?: Deps
47
- handler: Hook<Types, Name, Deps>['handler']
48
- }): Hook<Types, Name, Deps> => {
49
- return createHook<Types, Name, Deps>(params)
50
- }
51
- }
@@ -1,3 +0,0 @@
1
- import { Hooks } from '@nmtjs/core'
2
-
3
- export class ApplicationHooks extends Hooks {}