rxdb-server 15.7.0 → 15.13.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.
Files changed (55) hide show
  1. package/README.md +4 -0
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/plugins/adapter-express/index.js +122 -0
  4. package/dist/cjs/plugins/adapter-express/index.js.map +1 -0
  5. package/dist/cjs/plugins/client-rest/index.js.map +1 -1
  6. package/dist/cjs/plugins/client-rest/utils.js.map +1 -1
  7. package/dist/cjs/plugins/replication-server/helpers.js.map +1 -1
  8. package/dist/cjs/plugins/replication-server/index.js +1 -1
  9. package/dist/cjs/plugins/replication-server/index.js.map +1 -1
  10. package/dist/cjs/plugins/replication-server/types.js.map +1 -1
  11. package/dist/cjs/plugins/server/endpoint-replication.js +22 -20
  12. package/dist/cjs/plugins/server/endpoint-replication.js.map +1 -1
  13. package/dist/cjs/plugins/server/endpoint-rest.js +33 -31
  14. package/dist/cjs/plugins/server/endpoint-rest.js.map +1 -1
  15. package/dist/cjs/plugins/server/helper.js +6 -45
  16. package/dist/cjs/plugins/server/helper.js.map +1 -1
  17. package/dist/cjs/plugins/server/index.js +5 -15
  18. package/dist/cjs/plugins/server/index.js.map +1 -1
  19. package/dist/cjs/plugins/server/rx-server.js +25 -22
  20. package/dist/cjs/plugins/server/rx-server.js.map +1 -1
  21. package/dist/cjs/plugins/server/types.js.map +1 -1
  22. package/dist/esm/index.js.map +1 -1
  23. package/dist/esm/plugins/adapter-express/index.js +115 -0
  24. package/dist/esm/plugins/adapter-express/index.js.map +1 -0
  25. package/dist/esm/plugins/client-rest/index.js.map +1 -1
  26. package/dist/esm/plugins/client-rest/utils.js.map +1 -1
  27. package/dist/esm/plugins/replication-server/helpers.js.map +1 -1
  28. package/dist/esm/plugins/replication-server/index.js +1 -1
  29. package/dist/esm/plugins/replication-server/index.js.map +1 -1
  30. package/dist/esm/plugins/replication-server/types.js.map +1 -1
  31. package/dist/esm/plugins/server/endpoint-replication.js +23 -21
  32. package/dist/esm/plugins/server/endpoint-replication.js.map +1 -1
  33. package/dist/esm/plugins/server/endpoint-rest.js +34 -32
  34. package/dist/esm/plugins/server/endpoint-rest.js.map +1 -1
  35. package/dist/esm/plugins/server/helper.js +6 -42
  36. package/dist/esm/plugins/server/helper.js.map +1 -1
  37. package/dist/esm/plugins/server/index.js +3 -12
  38. package/dist/esm/plugins/server/index.js.map +1 -1
  39. package/dist/esm/plugins/server/rx-server.js +25 -22
  40. package/dist/esm/plugins/server/rx-server.js.map +1 -1
  41. package/dist/esm/plugins/server/types.js.map +1 -1
  42. package/dist/types/plugins/adapter-express/index.d.ts +7 -0
  43. package/dist/types/plugins/server/endpoint-replication.d.ts +3 -3
  44. package/dist/types/plugins/server/endpoint-rest.d.ts +3 -3
  45. package/dist/types/plugins/server/helper.d.ts +6 -8
  46. package/dist/types/plugins/server/index.d.ts +1 -1
  47. package/dist/types/plugins/server/rx-server.d.ts +12 -11
  48. package/dist/types/plugins/server/types.d.ts +26 -3
  49. package/package.json +33 -27
  50. package/plugins/adapter-express/index.cjs +2 -0
  51. package/plugins/adapter-express/index.d.cts +1 -0
  52. package/plugins/adapter-express/index.d.mts +1 -0
  53. package/plugins/adapter-express/index.mjs +1 -0
  54. package/plugins/adapter-express/index.ts +1 -0
  55. package/plugins/adapter-express/package.json +18 -0
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/plugins/server/types.ts"],"sourcesContent":["import type {\n FilledMangoQuery,\n RxDatabase,\n RxReplicationWriteToMasterRow,\n MaybePromise,\n RxCollection,\n WithDeleted\n} from 'rxdb/plugins/core';\nimport { IncomingHttpHeaders } from 'http';\nimport { Express } from 'express';\n\nexport type RxServerOptions<AuthType> = {\n database: RxDatabase;\n authHandler?: RxServerAuthHandler<AuthType>;\n serverApp?: Express;\n appOptions?: any;\n /**\n * [default=localhost]\n */\n hostname?: 'localhost' | '0.0.0.0' | string;\n port: number;\n /**\n * Set a origin for allowed CORS requests.\n * Can be overwritten by the cors option of the endpoints.\n * [default='*']\n */\n cors?: '*' | string;\n};\n\nexport type RxServerAuthData<AuthType> = {\n data: AuthType;\n validUntil: number;\n};\n\n/**\n * Returns the auth state by the given request headers.\n * Throws if auth not valid.\n */\nexport type RxServerAuthHandler<AuthType> =\n (headers: IncomingHttpHeaders) => MaybePromise<RxServerAuthData<AuthType>>;\n\n/**\n * Modifies a given query in a way to limit the results\n * to what the authenticated user is allowed to see.\n * For example the query selector\n * input: {\n * selector: {\n * myField: { $gt: 100 }\n * }\n * }\n * could be modified to restrict the results to only return\n * documents that are \"owned\" by the user\n * return: {\n * selector: {\n * myField: { $gt: 100 },\n * userId: { $eq: authData.userId }\n * }\n * }\n * \n * \n */\nexport type RxServerQueryModifier<AuthType, RxDocType> = (\n authData: RxServerAuthData<AuthType>,\n query: FilledMangoQuery<RxDocType>\n) => FilledMangoQuery<RxDocType>;\n\n/**\n * Validates if a given change is allowed to be performed on the server.\n * Returns true if allowed, false if not.\n * If a client tries to make a non-allowed change,\n * the client will be disconnected.\n */\nexport type RxServerChangeValidator<AuthType, RxDocType> = (\n authData: RxServerAuthData<AuthType>,\n change: RxReplicationWriteToMasterRow<RxDocType>\n) => boolean;\n\n\nexport interface RxServerEndpoint<AuthType, RxDocType> {\n collection: RxCollection<RxDocType>;\n name: string;\n type: 'replication' | 'rest' | string;\n urlPath: string;\n queryModifier?: RxServerQueryModifier<AuthType, RxDocType>;\n changeValidator?: RxServerChangeValidator<AuthType, RxDocType>;\n};\n"],"mappings":"AAkCA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA;;AAcC;AAAC;AAAA"}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/plugins/server/types.ts"],"sourcesContent":["import type {\n FilledMangoQuery,\n RxDatabase,\n RxReplicationWriteToMasterRow,\n MaybePromise,\n RxCollection\n} from 'rxdb/plugins/core';\nimport { IncomingHttpHeaders } from 'http';\n\nexport type RxServerOptions<ServerAppType, AuthType> = {\n database: RxDatabase;\n adapter: RxServerAdapter<ServerAppType, any, any>;\n serverApp?: ServerAppType;\n authHandler?: RxServerAuthHandler<AuthType>;\n appOptions?: any;\n /**\n * [default=localhost]\n */\n hostname?: 'localhost' | '0.0.0.0' | string;\n port: number;\n /**\n * Set a origin for allowed CORS requests.\n * Can be overwritten by the cors option of the endpoints.\n * [default='*']\n */\n cors?: '*' | string;\n};\n\n\nexport type RxServerRouteHandler<RequestType = any, ResponseType = any> = (req: RequestType, res: ResponseType, next?: any) => MaybePromise<void>;\n\nexport type RxServerAdapter<ServerAppType, RequestType = any, ResponseType = any> = {\n create(): Promise<ServerAppType>;\n\n get(app: ServerAppType, path: string, handler: RxServerRouteHandler<RequestType, ResponseType>): void;\n post(app: ServerAppType, path: string, handler: RxServerRouteHandler<RequestType, ResponseType>): void;\n all(app: ServerAppType, path: string, handler: RxServerRouteHandler<RequestType, ResponseType>): void;\n\n setCors(app: ServerAppType, path: string, cors: string): void;\n\n getRequestBody(req: RequestType): any;\n getRequestHeaders(req: RequestType): { [k: string]: string };\n getRequestQuery(req: RequestType): any;\n onRequestClose(req: RequestType, handler: () => void): void;\n\n setResponseHeader(res: ResponseType, name: string, value: string): void;\n endResponseJson(res: ResponseType, data: any): void;\n endResponse(res: ResponseType): void;\n responseWrite(res: ResponseType, data: string): void;\n setSSEHeaders(res: ResponseType): void;\n closeConnection(res: ResponseType, code: number, message: string): void;\n\n listen(app: ServerAppType, port: number, hostname: string): Promise<void>;\n closeAllConnections(app: ServerAppType): MaybePromise<any>;\n close(app: ServerAppType): Promise<void>;\n\n};\n\nexport type RxServerAuthData<AuthType> = {\n data: AuthType;\n validUntil: number;\n};\n\n/**\n * Returns the auth state by the given request headers.\n * Throws if auth not valid.\n */\nexport type RxServerAuthHandler<AuthType> =\n (headers: IncomingHttpHeaders) => MaybePromise<RxServerAuthData<AuthType>>;\n\n/**\n * Modifies a given query in a way to limit the results\n * to what the authenticated user is allowed to see.\n * For example the query selector\n * input: {\n * selector: {\n * myField: { $gt: 100 }\n * }\n * }\n * could be modified to restrict the results to only return\n * documents that are \"owned\" by the user\n * return: {\n * selector: {\n * myField: { $gt: 100 },\n * userId: { $eq: authData.userId }\n * }\n * }\n * \n * \n */\nexport type RxServerQueryModifier<AuthType, RxDocType> = (\n authData: RxServerAuthData<AuthType>,\n query: FilledMangoQuery<RxDocType>\n) => FilledMangoQuery<RxDocType>;\n\n/**\n * Validates if a given change is allowed to be performed on the server.\n * Returns true if allowed, false if not.\n * If a client tries to make a non-allowed change,\n * the client will be disconnected.\n */\nexport type RxServerChangeValidator<AuthType, RxDocType> = (\n authData: RxServerAuthData<AuthType>,\n change: RxReplicationWriteToMasterRow<RxDocType>\n) => boolean;\n\n\nexport interface RxServerEndpoint<AuthType, RxDocType> {\n collection: RxCollection<RxDocType>;\n name: string;\n type: 'replication' | 'rest' | string;\n urlPath: string;\n queryModifier?: RxServerQueryModifier<AuthType, RxDocType>;\n changeValidator?: RxServerChangeValidator<AuthType, RxDocType>;\n};\n"],"mappings":"AA+DA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA;;AAcC;AAAC;AAAA","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ /// <reference types="node" />
2
+ import type { RxServerAdapter } from '../server/types';
3
+ import type { Express } from 'express';
4
+ import { Request, Response } from 'express';
5
+ import { Server as HttpServer } from 'http';
6
+ export declare const HTTP_SERVER_BY_EXPRESS: WeakMap<Express, HttpServer<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>>;
7
+ export declare const RxServerAdapterExpress: RxServerAdapter<Express, Request, Response>;
@@ -6,8 +6,8 @@ export type RxReplicationEndpointMessageType = {
6
6
  method: StringKeys<RxReplicationHandler<any, any>> | 'auth';
7
7
  params: any[];
8
8
  };
9
- export declare class RxServerReplicationEndpoint<AuthType, RxDocType> implements RxServerEndpoint<AuthType, RxDocType> {
10
- readonly server: RxServer<AuthType>;
9
+ export declare class RxServerReplicationEndpoint<ServerAppType, AuthType, RxDocType> implements RxServerEndpoint<AuthType, RxDocType> {
10
+ readonly server: RxServer<ServerAppType, AuthType>;
11
11
  readonly name: string;
12
12
  readonly collection: RxCollection<RxDocType>;
13
13
  readonly serverOnlyFields: string[];
@@ -16,5 +16,5 @@ export declare class RxServerReplicationEndpoint<AuthType, RxDocType> implements
16
16
  readonly urlPath: string;
17
17
  readonly changeValidator: RxServerChangeValidator<AuthType, RxDocType>;
18
18
  readonly queryModifier: RxServerQueryModifier<AuthType, RxDocType>;
19
- constructor(server: RxServer<AuthType>, name: string, collection: RxCollection<RxDocType>, queryModifier: RxServerQueryModifier<AuthType, RxDocType>, changeValidator: RxServerChangeValidator<AuthType, RxDocType>, serverOnlyFields: string[], cors?: string | undefined);
19
+ constructor(server: RxServer<ServerAppType, AuthType>, name: string, collection: RxCollection<RxDocType>, queryModifier: RxServerQueryModifier<AuthType, RxDocType>, changeValidator: RxServerChangeValidator<AuthType, RxDocType>, serverOnlyFields: string[], cors?: string | undefined);
20
20
  }
@@ -2,8 +2,8 @@ import { RxCollection } from 'rxdb/plugins/core';
2
2
  import type { RxServer } from './rx-server.ts';
3
3
  import type { RxServerChangeValidator, RxServerEndpoint, RxServerQueryModifier } from './types.ts';
4
4
  export declare const REST_PATHS: readonly ["query", "query/observe", "get", "set", "delete"];
5
- export declare class RxServerRestEndpoint<AuthType, RxDocType> implements RxServerEndpoint<AuthType, RxDocType> {
6
- readonly server: RxServer<AuthType>;
5
+ export declare class RxServerRestEndpoint<ServerAppType, AuthType, RxDocType> implements RxServerEndpoint<AuthType, RxDocType> {
6
+ readonly server: RxServer<ServerAppType, AuthType>;
7
7
  readonly name: string;
8
8
  readonly collection: RxCollection<RxDocType>;
9
9
  readonly serverOnlyFields: string[];
@@ -12,5 +12,5 @@ export declare class RxServerRestEndpoint<AuthType, RxDocType> implements RxServ
12
12
  readonly urlPath: string;
13
13
  readonly changeValidator: RxServerChangeValidator<AuthType, RxDocType>;
14
14
  readonly queryModifier: RxServerQueryModifier<AuthType, RxDocType>;
15
- constructor(server: RxServer<AuthType>, name: string, collection: RxCollection<RxDocType>, queryModifier: RxServerQueryModifier<AuthType, RxDocType>, changeValidator: RxServerChangeValidator<AuthType, RxDocType>, serverOnlyFields: string[], cors?: string | undefined);
15
+ constructor(server: RxServer<ServerAppType, AuthType>, name: string, collection: RxCollection<RxDocType>, queryModifier: RxServerQueryModifier<AuthType, RxDocType>, changeValidator: RxServerChangeValidator<AuthType, RxDocType>, serverOnlyFields: string[], cors?: string | undefined);
16
16
  }
@@ -1,22 +1,20 @@
1
1
  import { RxServer } from './rx-server';
2
- import type { Request, Response } from 'express';
3
- import { RxServerAuthData, RxServerEndpoint } from './types';
2
+ import type { Request } from 'express';
3
+ import type { RxServerAuthData, RxServerEndpoint } from './types';
4
4
  import { MangoQuerySelector, RxDocumentData } from 'rxdb/plugins/core';
5
- export declare function setCors(server: RxServer<any>, path: string, cors?: string): void;
5
+ export declare function setCors(server: RxServer<any, any>, path: string, cors?: string): void;
6
6
  /**
7
7
  * "block" the previous version urls and send a 426 on them so that
8
8
  * the clients know they must update.
9
9
  */
10
- export declare function blockPreviousVersionPaths(server: RxServer<any>, path: string, currentVersion: number): void;
11
- export declare function closeConnection(response: Response, code: number, message: string): Promise<void>;
12
- export declare function addAuthMiddleware<AuthType>(server: RxServer<AuthType>, path: string): WeakMap<Request, RxServerAuthData<AuthType>>;
10
+ export declare function blockPreviousVersionPaths(server: RxServer<any, any>, path: string, currentVersion: number): void;
11
+ export declare function addAuthMiddleware<AuthType>(server: RxServer<any, AuthType>, path: string): WeakMap<Request, RxServerAuthData<AuthType>>;
13
12
  export declare function getDocAllowedMatcher<RxDocType, AuthType>(endpoint: RxServerEndpoint<AuthType, RxDocType>, authData: RxServerAuthData<AuthType>): import("rxdb/plugins/core").QueryMatcher<RxDocumentData<RxDocType>>;
14
- export declare function writeSSEHeaders(res: Response): void;
15
13
  export declare function docContainsServerOnlyFields(serverOnlyFields: string[], doc: any): string | undefined;
16
14
  export declare function removeServerOnlyFieldsMonad<RxDocType>(serverOnlyFields: string[]): (docData?: RxDocType | RxDocumentData<RxDocType>) => any;
17
15
  export declare function mergeServerDocumentFieldsMonad<RxDocType>(serverOnlyFields: string[]): (clientDoc: RxDocType | RxDocumentData<RxDocType>, serverDoc?: RxDocType | RxDocumentData<RxDocType>) => RxDocType | RxDocumentData<RxDocType>;
18
16
  /**
19
- * $regex queries are dangerous because they can dos-attach the
17
+ * $regex queries are dangerous because they can dos-attack the server.
20
18
  *
21
19
  * @param selector
22
20
  */
@@ -4,4 +4,4 @@ export * from './types.ts';
4
4
  export * from './endpoint-replication.ts';
5
5
  export * from './endpoint-rest.ts';
6
6
  export * from './helper.ts';
7
- export declare function startRxServer<AuthType>(options: RxServerOptions<AuthType>): Promise<RxServer<AuthType>>;
7
+ export declare function createRxServer<ServerAdapterType, AuthType>(options: RxServerOptions<ServerAdapterType, AuthType>): Promise<RxServer<ServerAdapterType, AuthType>>;
@@ -1,19 +1,19 @@
1
- /// <reference types="node" />
2
1
  import type { RxCollection, RxDatabase } from 'rxdb/plugins/core';
3
2
  import { RxServerReplicationEndpoint } from './endpoint-replication.ts';
4
- import type { RxServerAuthHandler, RxServerChangeValidator, RxServerEndpoint, RxServerQueryModifier } from './types.ts';
5
- import { Server as HttpServer } from 'http';
6
- import { Express } from 'express';
3
+ import type { RxServerAdapter, RxServerAuthHandler, RxServerChangeValidator, RxServerEndpoint, RxServerOptions, RxServerQueryModifier } from './types.ts';
7
4
  import { RxServerRestEndpoint } from './endpoint-rest.ts';
8
- export declare class RxServer<AuthType> {
9
- readonly database: RxDatabase;
5
+ export declare class RxServer<ServerAppType, AuthType> {
6
+ readonly options: RxServerOptions<ServerAppType, AuthType>;
10
7
  readonly authHandler: RxServerAuthHandler<AuthType>;
11
- readonly httpServer: HttpServer;
12
- readonly expressApp: Express;
8
+ readonly serverApp: ServerAppType;
13
9
  readonly cors: string;
14
10
  readonly endpoints: RxServerEndpoint<AuthType, any>[];
15
11
  private closeFn;
16
- constructor(database: RxDatabase, authHandler: RxServerAuthHandler<AuthType>, httpServer: HttpServer, expressApp: Express, cors?: string);
12
+ listenPromise?: Promise<void>;
13
+ readonly database: RxDatabase;
14
+ readonly adapter: RxServerAdapter<ServerAppType>;
15
+ constructor(options: RxServerOptions<ServerAppType, AuthType>, authHandler: RxServerAuthHandler<AuthType>, serverApp: ServerAppType, cors?: string);
16
+ private ensureNotStarted;
17
17
  addReplicationEndpoint<RxDocType>(opts: {
18
18
  name: string;
19
19
  collection: RxCollection<RxDocType>;
@@ -26,7 +26,7 @@ export declare class RxServer<AuthType> {
26
26
  */
27
27
  cors?: '*' | string;
28
28
  serverOnlyFields?: string[];
29
- }): Promise<RxServerReplicationEndpoint<AuthType, RxDocType>>;
29
+ }): RxServerReplicationEndpoint<ServerAppType, AuthType, RxDocType>;
30
30
  addRestEndpoint<RxDocType>(opts: {
31
31
  name: string;
32
32
  collection: RxCollection<RxDocType>;
@@ -39,6 +39,7 @@ export declare class RxServer<AuthType> {
39
39
  */
40
40
  cors?: '*' | string;
41
41
  serverOnlyFields?: string[];
42
- }): Promise<RxServerRestEndpoint<AuthType, RxDocType>>;
42
+ }): RxServerRestEndpoint<ServerAppType, AuthType, RxDocType>;
43
+ start(): Promise<void>;
43
44
  close(): Promise<void>;
44
45
  }
@@ -1,11 +1,11 @@
1
1
  /// <reference types="node" />
2
2
  import type { FilledMangoQuery, RxDatabase, RxReplicationWriteToMasterRow, MaybePromise, RxCollection } from 'rxdb/plugins/core';
3
3
  import { IncomingHttpHeaders } from 'http';
4
- import { Express } from 'express';
5
- export type RxServerOptions<AuthType> = {
4
+ export type RxServerOptions<ServerAppType, AuthType> = {
6
5
  database: RxDatabase;
6
+ adapter: RxServerAdapter<ServerAppType, any, any>;
7
+ serverApp?: ServerAppType;
7
8
  authHandler?: RxServerAuthHandler<AuthType>;
8
- serverApp?: Express;
9
9
  appOptions?: any;
10
10
  /**
11
11
  * [default=localhost]
@@ -19,6 +19,29 @@ export type RxServerOptions<AuthType> = {
19
19
  */
20
20
  cors?: '*' | string;
21
21
  };
22
+ export type RxServerRouteHandler<RequestType = any, ResponseType = any> = (req: RequestType, res: ResponseType, next?: any) => MaybePromise<void>;
23
+ export type RxServerAdapter<ServerAppType, RequestType = any, ResponseType = any> = {
24
+ create(): Promise<ServerAppType>;
25
+ get(app: ServerAppType, path: string, handler: RxServerRouteHandler<RequestType, ResponseType>): void;
26
+ post(app: ServerAppType, path: string, handler: RxServerRouteHandler<RequestType, ResponseType>): void;
27
+ all(app: ServerAppType, path: string, handler: RxServerRouteHandler<RequestType, ResponseType>): void;
28
+ setCors(app: ServerAppType, path: string, cors: string): void;
29
+ getRequestBody(req: RequestType): any;
30
+ getRequestHeaders(req: RequestType): {
31
+ [k: string]: string;
32
+ };
33
+ getRequestQuery(req: RequestType): any;
34
+ onRequestClose(req: RequestType, handler: () => void): void;
35
+ setResponseHeader(res: ResponseType, name: string, value: string): void;
36
+ endResponseJson(res: ResponseType, data: any): void;
37
+ endResponse(res: ResponseType): void;
38
+ responseWrite(res: ResponseType, data: string): void;
39
+ setSSEHeaders(res: ResponseType): void;
40
+ closeConnection(res: ResponseType, code: number, message: string): void;
41
+ listen(app: ServerAppType, port: number, hostname: string): Promise<void>;
42
+ closeAllConnections(app: ServerAppType): MaybePromise<any>;
43
+ close(app: ServerAppType): Promise<void>;
44
+ };
22
45
  export type RxServerAuthData<AuthType> = {
23
46
  data: AuthType;
24
47
  validUntil: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rxdb-server",
3
- "version": "15.7.0",
3
+ "version": "15.13.0",
4
4
  "description": "RxDB Server Plugin",
5
5
  "license": "SSPL",
6
6
  "author": "pubkey",
@@ -33,6 +33,12 @@
33
33
  "import": "./dist/esm/plugins/server/index.js",
34
34
  "default": "./dist/esm/plugins/server/index.js"
35
35
  },
36
+ "./plugins/adapter-express": {
37
+ "types": "./dist/types/plugins/adapter-express/index.d.ts",
38
+ "require": "./dist/cjs/plugins/adapter-express/index.js",
39
+ "import": "./dist/esm/plugins/adapter-express/index.js",
40
+ "default": "./dist/esm/plugins/adapter-express/index.js"
41
+ },
36
42
  "./plugins/replication-server": {
37
43
  "types": "./dist/types/plugins/replication-server/index.d.ts",
38
44
  "require": "./dist/cjs/plugins/replication-server/index.js",
@@ -74,7 +80,7 @@
74
80
  "@types/eventsource": "1.1.15",
75
81
  "@types/express": "4.17.21",
76
82
  "array-push-at-sort-position": "4.0.1",
77
- "async-test-util": "2.3.0",
83
+ "async-test-util": "2.4.0",
78
84
  "eth-crypto": "2.6.0",
79
85
  "eventsource": "2.0.2",
80
86
  "percom": "1.1.3",
@@ -82,26 +88,26 @@
82
88
  "web-worker": "1.3.0"
83
89
  },
84
90
  "devDependencies": {
85
- "@babel/cli": "7.23.9",
86
- "@babel/core": "7.23.9",
87
- "@babel/plugin-external-helpers": "7.23.3",
91
+ "@babel/cli": "7.24.1",
92
+ "@babel/core": "7.24.3",
93
+ "@babel/plugin-external-helpers": "7.24.1",
88
94
  "@babel/plugin-proposal-class-properties": "7.18.6",
89
95
  "@babel/plugin-proposal-object-rest-spread": "7.20.7",
90
- "@babel/plugin-transform-literals": "7.23.3",
91
- "@babel/plugin-transform-member-expression-literals": "7.23.3",
92
- "@babel/plugin-transform-modules-commonjs": "7.23.3",
93
- "@babel/plugin-transform-property-literals": "7.23.3",
94
- "@babel/plugin-transform-runtime": "7.23.9",
95
- "@babel/plugin-transform-spread": "7.23.3",
96
- "@babel/plugin-transform-template-literals": "7.23.3",
97
- "@babel/plugin-transform-typescript": "7.23.6",
96
+ "@babel/plugin-transform-literals": "7.24.1",
97
+ "@babel/plugin-transform-member-expression-literals": "7.24.1",
98
+ "@babel/plugin-transform-modules-commonjs": "7.24.1",
99
+ "@babel/plugin-transform-property-literals": "7.24.1",
100
+ "@babel/plugin-transform-runtime": "7.24.3",
101
+ "@babel/plugin-transform-spread": "7.24.1",
102
+ "@babel/plugin-transform-template-literals": "7.24.1",
103
+ "@babel/plugin-transform-typescript": "7.24.1",
98
104
  "@babel/polyfill": "7.12.1",
99
- "@babel/preset-env": "7.23.9",
100
- "@babel/preset-typescript": "7.23.3",
101
- "@babel/types": "7.23.9",
102
- "@faker-js/faker": "8.4.0",
105
+ "@babel/preset-env": "7.24.3",
106
+ "@babel/preset-typescript": "7.24.1",
107
+ "@babel/types": "7.24.0",
108
+ "@faker-js/faker": "8.4.1",
103
109
  "@types/mocha": "10.0.6",
104
- "@types/node": "20.11.16",
110
+ "@types/node": "20.11.30",
105
111
  "@types/sqlite3": "3.1.11",
106
112
  "@types/websql": "0.0.30",
107
113
  "babel-loader": "9.1.3",
@@ -109,31 +115,31 @@
109
115
  "concurrently": "8.2.2",
110
116
  "cross-env": "7.0.3",
111
117
  "detect-browser": "5.3.0",
112
- "express": "4.18.2",
118
+ "express": "4.19.1",
113
119
  "get-port": "5.1.1",
114
120
  "http-server": "14.1.1",
115
- "karma": "6.4.2",
121
+ "karma": "6.4.3",
116
122
  "karma-chrome-launcher": "3.2.0",
117
123
  "karma-detect-browsers": "2.3.3",
118
- "karma-firefox-launcher": "2.1.2",
124
+ "karma-firefox-launcher": "2.1.3",
119
125
  "karma-mocha": "2.0.1",
120
126
  "karma-sourcemap-loader": "0.4.0",
121
127
  "karma-spec-reporter": "0.0.36",
122
128
  "karma-typescript": "5.5.4",
123
129
  "karma-webpack": "5.0.1",
124
- "mini-css-extract-plugin": "2.8.0",
130
+ "mini-css-extract-plugin": "2.8.1",
125
131
  "minify-all-js": "0.1.9",
126
- "mocha": "10.2.0",
132
+ "mocha": "10.3.0",
127
133
  "rimraf": "5.0.5",
128
- "rxdb": "15.7.0",
134
+ "rxdb": "15.13.0",
129
135
  "rxjs": "7.8.1",
130
136
  "ts-loader": "9.5.1",
131
137
  "ts-mocha": "10.0.0",
132
138
  "ts-node": "10.9.2",
133
- "typescript": "5.3.3",
134
- "webpack": "5.90.1",
139
+ "typescript": "5.4.3",
140
+ "webpack": "5.90.3",
135
141
  "webpack-bundle-analyzer": "4.10.1",
136
142
  "webpack-cli": "5.1.4",
137
- "webpack-dev-server": "4.15.1"
143
+ "webpack-dev-server": "5.0.4"
138
144
  }
139
145
  }
@@ -0,0 +1,2 @@
1
+ const pkg = require('../../dist/cjs/plugins/adapter-express/index.js');
2
+ module.exports = pkg;
@@ -0,0 +1 @@
1
+ export * from '../../dist/types/plugins/adapter-express/index';
@@ -0,0 +1 @@
1
+ export * from '../../dist/types/plugins/adapter-express/index';
@@ -0,0 +1 @@
1
+ export * from '../../dist/esm/plugins/adapter-express/index.js';
@@ -0,0 +1 @@
1
+ export * from '../../dist/types/plugins/adapter-express/index';
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "rxdb-plugins-adapter-express",
3
+ "description": "This package.json file is generated by the \"npm run build:plugins\" script, do not edit it manually!",
4
+ "sideEffects": false,
5
+ "types": "../../dist/types/plugins/adapter-express/index.d.ts",
6
+ "exports": {
7
+ ".": {
8
+ "default": {
9
+ "types": "./index.d.ts",
10
+ "import": "./index.mjs",
11
+ "default": "./index.cjs"
12
+ }
13
+ },
14
+ "./package.json": "./package.json"
15
+ },
16
+ "main": "./index.cjs",
17
+ "module": "./index.mjs"
18
+ }