@livequery/nestjs 2.0.46 → 2.0.47

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.
@@ -1,16 +1,13 @@
1
1
  import { CallHandler, ExecutionContext, NestInterceptor } from '@nestjs/common';
2
- import { Observable } from 'rxjs';
3
- import { ModuleRef } from '@nestjs/core';
4
- import { LivequeryDatasource } from './helpers/createDatasourceMapper.js';
2
+ import { ModuleRef, Reflector } from '@nestjs/core';
5
3
  import { LivequeryBaseEntity } from '@livequery/types';
6
- export declare const LivequeryDatasourceList: Map<new (...args: any[]) => LivequeryDatasource, LivequeryDatasource>;
7
- export declare const $__datasource_factory_token: unique symbol;
8
4
  export declare class LivequeryItemMapper<T extends LivequeryBaseEntity> {
9
5
  readonly mapper: (item: T) => T;
10
6
  constructor(mapper: (item: T) => T);
11
7
  }
12
8
  export declare class LivequeryDatasourceInterceptors implements NestInterceptor {
13
9
  private moduleRef;
14
- constructor(moduleRef: ModuleRef);
15
- intercept(ctx: ExecutionContext, next: CallHandler): Promise<Observable<any>>;
10
+ private reflector;
11
+ constructor(moduleRef: ModuleRef, reflector: Reflector);
12
+ intercept(ctx: ExecutionContext, next: CallHandler): Promise<import("rxjs").Observable<any>>;
16
13
  }
@@ -1,27 +1,30 @@
1
+ var LivequeryDatasourceInterceptors_1;
1
2
  import { __decorate, __metadata } from "tslib";
2
3
  import { Injectable } from '@nestjs/common';
3
4
  import { map, mergeMap } from 'rxjs';
4
- import { ModuleRef } from '@nestjs/core';
5
+ import { ModuleRef, Reflector } from '@nestjs/core';
5
6
  import { hidePrivateFields } from './helpers/hidePrivateFields.js';
6
- export const LivequeryDatasourceList = new Map();
7
- export const $__datasource_factory_token = Symbol();
8
7
  export class LivequeryItemMapper {
9
8
  mapper;
10
9
  constructor(mapper) {
11
10
  this.mapper = mapper;
12
11
  }
13
12
  }
14
- let LivequeryDatasourceInterceptors = class LivequeryDatasourceInterceptors {
13
+ let LivequeryDatasourceInterceptors = LivequeryDatasourceInterceptors_1 = class LivequeryDatasourceInterceptors {
15
14
  moduleRef;
16
- constructor(moduleRef) {
15
+ reflector;
16
+ constructor(moduleRef, reflector) {
17
17
  this.moduleRef = moduleRef;
18
+ this.reflector = reflector;
18
19
  }
19
20
  async intercept(ctx, next) {
20
- const token = Reflect.getMetadata($__datasource_factory_token, ctx.getHandler());
21
- const datasource = LivequeryDatasourceList.has(token) ? LivequeryDatasourceList.get(token) : this.moduleRef.get(token);
22
21
  return next.handle().pipe(mergeMap(async (rs) => {
23
22
  const req = ctx.switchToHttp().getRequest();
24
- const lrs = await datasource.query(req.livequery);
23
+ const { factory, options } = await this.reflector.get(LivequeryDatasourceInterceptors_1, ctx.getHandler());
24
+ const datasource = await this.moduleRef.get(factory);
25
+ const connection_token = typeof options.connection === 'function' ? await options.connection(req.livequery) : options.connection;
26
+ const connection = await this.moduleRef.get(connection_token, { strict: false });
27
+ const lrs = await datasource.query(req.livequery, options, connection);
25
28
  if (rs instanceof LivequeryItemMapper) {
26
29
  if (lrs.item) {
27
30
  return {
@@ -52,9 +55,10 @@ let LivequeryDatasourceInterceptors = class LivequeryDatasourceInterceptors {
52
55
  }));
53
56
  }
54
57
  };
55
- LivequeryDatasourceInterceptors = __decorate([
58
+ LivequeryDatasourceInterceptors = LivequeryDatasourceInterceptors_1 = __decorate([
56
59
  Injectable(),
57
- __metadata("design:paramtypes", [ModuleRef])
60
+ __metadata("design:paramtypes", [ModuleRef,
61
+ Reflector])
58
62
  ], LivequeryDatasourceInterceptors);
59
63
  export { LivequeryDatasourceInterceptors };
60
64
  //# sourceMappingURL=LivequeryDatasourceInterceptors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LivequeryDatasourceInterceptors.js","sourceRoot":"","sources":["../../src/LivequeryDatasourceInterceptors.ts"],"names":[],"mappings":";AAAA,OAAO,EAAiC,UAAU,EAAmB,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAc,MAAM,MAAM,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAGxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAInE,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAA8D,CAAA;AAC5G,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,EAAE,CAAA;AAEnD,MAAM,OAAO,mBAAmB;IACA;IAA5B,YAA4B,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAI,CAAC;CAC1D;AAGM,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IAEpB;IAApB,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAI,CAAC;IAE7C,KAAK,CAAC,SAAS,CAAC,GAAqB,EAAE,IAAiB;QAEpD,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,2BAA2B,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAA;QAChF,MAAM,UAAU,GAAG,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAGtH,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CACrB,QAAQ,CAAC,KAAK,EAAC,EAAE,EAAC,EAAE;YAChB,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAA;YAC3C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAEjD,IAAI,EAAE,YAAY,mBAAmB,EAAE,CAAC;gBACpC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;oBACX,OAAO;wBACH,GAAG,GAAG;wBACN,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;qBAC5B,CAAA;gBACL,CAAC;gBAED,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;oBACZ,OAAO;wBACH,GAAG,GAAG;wBACN,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;qBAChD,CAAA;gBACL,CAAC;gBACD,OAAO,GAAG,CAAA;YACd,CAAC;YAED,IAAI,OAAO,EAAE,IAAI,UAAU,EAAE,CAAC;gBAC1B,OAAO,MAAM,EAAE,CAAC,GAAG,CAAC,CAAA;YACxB,CAAC;YACD,OAAO,EAAE,IAAI,GAAG,CAAA;QACpB,CAAC,CAAC,EACF,GAAG,CAAC,IAAI,CAAC,EAAE;YACP,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,OAAO;oBACH,GAAG,IAAI;oBACP,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;iBACzD,CAAA;YACL,CAAC;YACD,OAAO,IAAI,CAAA;QACf,CAAC,CAAC,CACL,CAAA;IAEL,CAAC;CACJ,CAAA;AAjDY,+BAA+B;IAD3C,UAAU,EAAE;qCAGsB,SAAS;GAF/B,+BAA+B,CAiD3C"}
1
+ {"version":3,"file":"LivequeryDatasourceInterceptors.js","sourceRoot":"","sources":["../../src/LivequeryDatasourceInterceptors.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,10 @@
1
- import { Observable } from "rxjs";
2
- import { LivequeryRequest, WebsocketSyncPayload } from "@livequery/types";
3
- export type LivequeryDatasourceOptions<T> = Array<T & {
4
- refs: string[];
5
- }>;
6
- export type LivequeryDatasourceProps<OptionsType = {}, RawDataChangeType = {}, InjectType = any> = {
7
- routes: LivequeryDatasourceOptions<OptionsType>;
8
- deps: {
9
- [name: string]: InjectType;
10
- };
11
- rawChanges: Observable<RawDataChangeType>;
1
+ import { LivequeryRequest } from "@livequery/types";
2
+ export type DatatasourceConnectionMetadata = {
3
+ connection: string | symbol | ((req: LivequeryRequest) => symbol | string | Promise<symbol | string>);
12
4
  };
13
- export type LivequeryDatasource<OptionsType = {}, RawDataChangeType = {}, InjectType = any> = {
14
- init(props: LivequeryDatasourceProps<OptionsType, RawDataChangeType, InjectType>): any;
15
- query(query: LivequeryRequest): any;
16
- $: Observable<WebsocketSyncPayload>;
5
+ export type LivequeryDatasource<T> = {
6
+ query(query: LivequeryRequest, options: T, connection: any): any;
17
7
  };
18
- export declare const createDatasourceMapper: <OptionsType = {}, RawDataChangeType = {}, InjectType = any>(factory: {
19
- new (): LivequeryDatasource<OptionsType, RawDataChangeType, InjectType>;
20
- }, injectTokens: {
21
- [name: string]: any;
22
- }, rawChanges: Observable<RawDataChangeType>) => [(options: OptionsType) => <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void, import("@nestjs/common").FactoryProvider<any>];
8
+ export declare const createDatasourceMapper: <A>(factory: {
9
+ new (...args: any[]): LivequeryDatasource<A>;
10
+ }, defaultOptions: Partial<A> & DatatasourceConnectionMetadata) => (options: A) => <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
@@ -1,39 +1,11 @@
1
- import { applyDecorators, UseInterceptors } from "@nestjs/common";
2
- import { LivequeryDatasourceInterceptors, $__datasource_factory_token } from "../LivequeryDatasourceInterceptors.js";
1
+ import { applyDecorators, SetMetadata, UseInterceptors } from "@nestjs/common";
2
+ import { LivequeryDatasourceInterceptors } from "../LivequeryDatasourceInterceptors.js";
3
3
  import { UseLivequeryInterceptor } from "../LivequeryInterceptor.js";
4
- import { PathHelper } from "./PathHelper.js";
5
- import { LivequeryWebsocketSync } from "../LivequeryWebsocketSync.js";
6
- export const createDatasourceMapper = (factory, injectTokens, rawChanges) => {
7
- const RouteConfigList = [];
8
- const decorator = (options) => applyDecorators((target, method) => RouteConfigList.push({
9
- method,
10
- options,
11
- target
12
- }), UseLivequeryInterceptor(), UseInterceptors(LivequeryDatasourceInterceptors), (_target, _method, descriptor) => {
13
- Reflect.defineMetadata($__datasource_factory_token, factory, descriptor.value);
14
- });
15
- const provider = {
16
- provide: factory,
17
- inject: [{ token: LivequeryWebsocketSync, optional: true }, ...Object.values(injectTokens)],
18
- useFactory: async (ws, ...injects) => {
19
- const deps = Object.keys(injectTokens).reduce((acc, key, i) => ({ ...acc, [key]: injects[i] }), {});
20
- const ds = new factory();
21
- const routes = RouteConfigList.map(({ method, options, target }) => {
22
- const refs = PathHelper.join(Reflect.getMetadata('path', target.constructor), Reflect.getMetadata('path', target[method])).map(PathHelper.trimLivequeryHotkey);
23
- return {
24
- ...options,
25
- refs
26
- };
27
- });
28
- await ds.init({
29
- deps,
30
- rawChanges,
31
- routes
32
- });
33
- ds.$.subscribe(d => ws.broadcast(d));
34
- return ds;
35
- }
36
- };
37
- return [decorator, provider];
38
- };
4
+ export const createDatasourceMapper = (factory, defaultOptions) => (options) => applyDecorators(UseLivequeryInterceptor(), UseInterceptors(LivequeryDatasourceInterceptors), SetMetadata(LivequeryDatasourceInterceptors, {
5
+ factory,
6
+ options: {
7
+ ...defaultOptions,
8
+ ...options
9
+ }
10
+ }));
39
11
  //# sourceMappingURL=createDatasourceMapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createDatasourceMapper.js","sourceRoot":"","sources":["../../../src/helpers/createDatasourceMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAY,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AACrH,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAgBtE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAClC,OAAmF,EACnF,YAAqC,EACrC,UAAyC,EAC3C,EAAE;IAGA,MAAM,eAAe,GAIhB,EAAE,CAAC;IAER,MAAM,SAAS,GAAG,CAAC,OAAoB,EAAE,EAAE,CAAC,eAAe,CACvD,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;QACrC,MAAM;QACN,OAAO;QACP,MAAM;KACT,CAAC,EACF,uBAAuB,EAAE,EACzB,eAAe,CAAC,+BAA+B,CAAC,EAChD,CAAC,OAAO,EAAE,OAAO,EAAE,UAA8B,EAAE,EAAE;QACjD,OAAO,CAAC,cAAc,CAAC,2BAA2B,EAAE,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,CAAA;IAClF,CAAC,CACJ,CAAA;IAED,MAAM,QAAQ,GAAa;QACvB,OAAO,EAAE,OAAO;QAChB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC3F,UAAU,EAAE,KAAK,EAAE,EAA0B,EAAE,GAAG,OAAO,EAAE,EAAE;YACzD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;YACnG,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAA;YACxB,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;gBAC/D,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CACxB,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,EAC/C,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAC9C,CAAC,GAAG,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAA;gBACrC,OAAO;oBACH,GAAG,OAAO;oBACV,IAAI;iBACP,CAAA;YACL,CAAC,CAAC,CAAA;YACF,MAAM,EAAE,CAAC,IAAI,CAAC;gBACV,IAAI;gBACJ,UAAU;gBACV,MAAM;aACT,CAAC,CAAA;YACF,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;YACpC,OAAO,EAAE,CAAA;QACb,CAAC;KACJ,CAAA;IAGD,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAwC,CAAA;AACvE,CAAC,CAAA"}
1
+ {"version":3,"file":"createDatasourceMapper.js","sourceRoot":"","sources":["../../../src/helpers/createDatasourceMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAcrE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAClC,OAAwD,EACxD,cAA2D,EAC7D,EAAE,CAAC,CAAC,OAAU,EAAE,EAAE,CAAC,eAAe,CAChC,uBAAuB,EAAE,EACzB,eAAe,CAAC,+BAA+B,CAAC,EAChD,WAAW,CAAC,+BAA+B,EAAE;IACzC,OAAO;IACP,OAAO,EAAE;QACL,GAAG,cAAc;QACjB,GAAG,OAAO;KACb;CACJ,CAAC,CACL,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { NestInterceptor } from "@nestjs/common";
2
+ export declare const createRequestInterceptorHook: <T>(options: T, interceptor: {
3
+ new (): NestInterceptor;
4
+ }) => [(options: T) => <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void, import("@nestjs/common").Type<any>];
@@ -0,0 +1,7 @@
1
+ import { applyDecorators, SetMetadata, UseInterceptors } from "@nestjs/common";
2
+ export const createRequestInterceptorHook = (options, interceptor) => {
3
+ const decorator = (options) => applyDecorators(UseInterceptors(interceptor), SetMetadata(interceptor, options));
4
+ const provider = interceptor;
5
+ return [decorator, provider];
6
+ };
7
+ //# sourceMappingURL=createHook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createHook.js","sourceRoot":"","sources":["../../../src/helpers/createHook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAY,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAKxF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAI,OAAU,EAAE,WAAuC,EAAE,EAAE;IAEnG,MAAM,SAAS,GAAG,CAAC,OAAU,EAAE,EAAE,CAAC,eAAe,CAC7C,eAAe,CAAC,WAAW,CAAC,EAC5B,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,CACpC,CAAA;IAED,MAAM,QAAQ,GAAa,WAAW,CAAA;IAGtC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAwC,CAAA;AACvE,CAAC,CAAA"}
@@ -3,7 +3,7 @@ export { listPaths } from './helpers/listPaths.js';
3
3
  export { LivequeryRequest } from './LivequeryRequest.js';
4
4
  export { LivequeryInterceptor, type RealtimeSubscription, UseLivequeryInterceptor } from './LivequeryInterceptor.js';
5
5
  export { LivequeryWebsocketSync } from './LivequeryWebsocketSync.js';
6
- export { createDatasourceMapper, type LivequeryDatasourceOptions, type LivequeryDatasource } from './helpers/createDatasourceMapper.js';
6
+ export { createDatasourceMapper, type LivequeryDatasource } from './helpers/createDatasourceMapper.js';
7
7
  export { LivequeryDatasourceInterceptors, LivequeryItemMapper } from './LivequeryDatasourceInterceptors.js';
8
8
  export { ApiGateway } from './ApiGateway.js';
9
9
  export * from '@livequery/types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAA6B,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACpH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,sBAAsB,EAA6D,MAAM,qCAAqC,CAAA;AACvI,OAAO,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AAC3G,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAA6B,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACpH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,sBAAsB,EAA4B,MAAM,qCAAqC,CAAA;AACtG,OAAO,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AAC3G,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,cAAc,kBAAkB,CAAA"}
@@ -3,7 +3,6 @@ import { Logger, Module } from "@nestjs/common";
3
3
  import { ApiGateway } from "../src/ApiGateway.js";
4
4
  import { NestFactory } from "@nestjs/core";
5
5
  import { LivequeryWebsocketSync } from "../src/LivequeryWebsocketSync.js";
6
- import { WsAdapter } from '@nestjs/platform-ws';
7
6
  let AppModule = class AppModule {
8
7
  };
9
8
  AppModule = __decorate([
@@ -14,6 +13,5 @@ AppModule = __decorate([
14
13
  ], AppModule);
15
14
  export { AppModule };
16
15
  const app = await NestFactory.create(AppModule, { rawBody: true });
17
- app.useWebSocketAdapter(new WsAdapter(app));
18
16
  await app.listen(process.argv[2] || 8000);
19
17
  //# sourceMappingURL=gateway.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../tests/gateway.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAMxC,IAAM,SAAS,GAAf,MAAM,SAAS;CAAI,CAAA;AAAb,SAAS;IAJrB,MAAM,CAAC;QACJ,WAAW,EAAE,CAAC,UAAU,CAAC;QACzB,SAAS,EAAE,CAAC,sBAAsB,EAAC,MAAM,CAAC;KAC7C,CAAC;GACW,SAAS,CAAI;;AAG1B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;AAClE,GAAG,CAAC,mBAAmB,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;AAC3C,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../tests/gateway.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAOnE,IAAM,SAAS,GAAf,MAAM,SAAS;CAAI,CAAA;AAAb,SAAS;IAJrB,MAAM,CAAC;QACJ,WAAW,EAAE,CAAC,UAAU,CAAC;QACzB,SAAS,EAAE,CAAC,sBAAsB,EAAC,MAAM,CAAC;KAC7C,CAAC;GACW,SAAS,CAAI;;AAG1B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;AAElE,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../tests/service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAOpD,KAAK,UAAU,iBAAiB;IAC5B,OAAO;QACH,KAAK,CAAC,OAAO,CAAC,CAAS;YACnB,MAAM,QAAQ,GAAgC,CAAC;oBAC3C,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,EAAE,EAAE;oBACjF,GAAG,EAAE,MAAM;oBACX,IAAI,EAAE,OAAO;iBAChB,CAAC,CAAA;YACF,OAAO,QAAQ,CAAA;QACnB,CAAC;KACJ,CAAA;AACL,CAAC;AAGM,IAAM,aAAa,GAAnB,MAAM,aAAa;IAEF;IAApB,YAAoB,EAA0B;QAA1B,OAAE,GAAF,EAAE,CAAwB;IAAI,CAAC;IAKnD,IAAI,CAAqB,GAAqB;QAC1C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAEnB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAU,GAAG,CAAC,GAAG,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;YAIrC,IAAI,CAAC;gBAAE,OAAM;YAKb,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAA;YAGxC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CACtB,QAAQ,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;gBAEf,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;gBACxC,OAAO,QAAQ,CAAA;YACnB,CAAC,CAAC,EACF,QAAQ,EAAE,CACb,CAAA;QACL,CAAC,CAAC,CAAA;QAEF,OAAO;YACH,KAAK,EAAE;gBACH;oBACI,EAAE,EAAE,KAAK;oBACT,IAAI,EAAE,OAAO;iBAChB;aACJ;SACJ,CAAA;IACL,CAAC;CACJ,CAAA;AAlCG;IAFC,GAAG,EAAE;IACL,uBAAuB,EAAE;IACpB,WAAA,gBAAgB,EAAE,CAAA;;;;yCAiCvB;AAxCQ,aAAa;IADzB,UAAU,CAAC,oBAAoB,CAAC;qCAGL,sBAAsB;GAFrC,aAAa,CAyCzB;;AAOM,IAAM,SAAS,GAAf,MAAM,SAAS;CAAI,CAAA;AAAb,SAAS;IAJrB,MAAM,CAAC;QACJ,WAAW,EAAE,CAAC,gBAAgB,EAAE,aAAa,CAAC;QAC9C,SAAS,EAAE,CAAC,sBAAsB,CAAC;KACtC,CAAC;GACW,SAAS,CAAI;;AAE1B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AAC/C,GAAG,CAAC,mBAAmB,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;AAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAA;AAC5C,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AAGtB,gBAAgB,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../tests/service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAOpD,KAAK,UAAU,iBAAiB;IAC5B,OAAO;QACH,KAAK,CAAC,OAAO,CAAC,CAAS;YACnB,MAAM,QAAQ,GAAgC,CAAC;oBAC3C,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,EAAE,EAAE;oBACjF,GAAG,EAAE,MAAM;oBACX,IAAI,EAAE,OAAO;iBAChB,CAAC,CAAA;YACF,OAAO,QAAQ,CAAA;QACnB,CAAC;KACJ,CAAA;AACL,CAAC;AAGM,IAAM,aAAa,GAAnB,MAAM,aAAa;IAEF;IAApB,YAAoB,EAA0B;QAA1B,OAAE,GAAF,EAAE,CAAwB;IAAI,CAAC;IAKnD,IAAI,CAAqB,GAAqB;QAC1C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAEnB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAU,GAAG,CAAC,GAAG,EAAE,KAAK,EAAC,CAAC,EAAC,EAAE;YAIrC,IAAI,CAAC;gBAAE,OAAM;YAKb,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAA;YAGxC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CACtB,QAAQ,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;gBAEf,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;gBACxC,OAAO,QAAQ,CAAA;YACnB,CAAC,CAAC,EACF,QAAQ,EAAE,CACb,CAAA;QACL,CAAC,CAAC,CAAA;QAEF,OAAO;YACH,KAAK,EAAE;gBACH;oBACI,EAAE,EAAE,KAAK;oBACT,IAAI,EAAE,OAAO;iBAChB;aACJ;SACJ,CAAA;IACL,CAAC;CACJ,CAAA;AAlCG;IAFC,GAAG,EAAE;IACL,uBAAuB,EAAE;IACpB,WAAA,gBAAgB,EAAE,CAAA;;;;yCAiCvB;AAxCQ,aAAa;IADzB,UAAU,CAAC,oBAAoB,CAAC;qCAGL,sBAAsB;GAFrC,aAAa,CAyCzB;;AAOM,IAAM,SAAS,GAAf,MAAM,SAAS;CAAI,CAAA;AAAb,SAAS;IAJrB,MAAM,CAAC;QACJ,WAAW,EAAE,CAAC,gBAAgB,EAAE,aAAa,CAAC;QAC9C,SAAS,EAAE,CAAC,sBAAsB,CAAC;KACtC,CAAC;GACW,SAAS,CAAI;;AAE1B,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AAC/C,GAAG,CAAC,mBAAmB,CAAC,IAAI,SAAS,CAAC,GAAG,CAAQ,CAAE,CAAA;AACnD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAA;AAC5C,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AAGtB,gBAAgB,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA"}
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "repository": {
6
6
  "url": "git@github.com:livequery/nestjs.git"
7
7
  },
8
- "version": "2.0.46",
8
+ "version": "2.0.47",
9
9
  "description": "Nestjs decorators for @livequery ecosystem",
10
10
  "main": "./build/src/index.js",
11
11
  "types": "./build/src/index.d.ts",